Hash & Crypto Helpers

Calculadora CRCConfira os bytes e o modelo

Escolha o formato de entrada e o modelo exato antes de calcular. O resultado mantém os parâmetros usados e a ordem dos bytes.

Calculadora CRC

Texto ou bytes

Resultado do checksum

Calcule para ver o checksum. Texto vazio também é válido.

O texto e os arquivos são processados no navegador.

Opções
Largura (bits)
32
Polinômio (hex)
04C11DB7
Valor inicial (hex)
FFFFFFFF
Refletir bits de entrada
Sim
Refletir bits de saída
Sim
XOR final (hex)
FFFFFFFF

O CRC personalizado usa o polinômio normal/MSB sem o termo de maior grau. Adler-32 tem parâmetros fixos.

Digite um número com 4 ou 8 dígitos hex. Espaços externos e 0x são aceitos; não interpretamos como bytes little-endian.

Texto: 1.000.000 de unidades UTF-16 e 1 MiB decodificado. Um arquivo: 2 GiB, lido em blocos de 1 MiB.

Calcule para ver o checksum. Texto vazio também é válido.

A Calculadora CRC ajuda quando a resposta de um dispositivo não bate com os dados de teste. CRC16 não identifica um modelo único: polinômio, valor inicial, reflexões e XOR final também determinam a soma de verificação.

Comece com uma mensagem conhecida antes de investigar um quadro real. Uma quebra de linha extra ou outra codificação altera os bytes, mesmo quando o texto parece igual na tela.

O que a Calculadora CRC deixa visível

O resultado leva os parâmetros junto

A Calculadora CRC registra o modelo completo ao lado do checksum. ARC e MODBUS usam o mesmo polinômio, mas começam com registradores diferentes. Guardar essas condições permite reproduzir uma divergência sem adivinhar a configuração anterior.

Uma sequência de bytes segue por dois modelos com parâmetros diferentes e gera checksums distintos.

Um estado contínuo para o arquivo

Os blocos atualizam o mesmo acumulador na ordem original. Assim, o resultado final não depende da divisão da leitura. Não há XOR de checksums independentes por bloco; você acompanha o progresso e pode cancelar.

Blocos consecutivos de um arquivo atualizam um único acumulador até o checksum final.

Três pontos para conferir antes da comparação

01

Identifique o modelo completo

Para o checksum CRC32 comum em ZIP, escolha CRC-32/ISO-HDLC. CRC-32C e MPEG-2 são modelos distintos. Para uma variante própria, copie polinômio normal, Init, RefIn, RefOut e XorOut da especificação.

02

Separe caracteres de bytes

31 32 33 representa três bytes no modo hex. No modo texto, os números e espaços são todos codificados em UTF-8. Para conferir outra codificação, use o arquivo original ou seus bytes exatos em hexadecimal.

03

Confira o número antes da ordem

O exemplo 123456789 permite comparar o valor Check. CRC-16 Modbus gera o número 4B37, transmitido como 37 4B em little-endian. Informe 4B37 no campo esperado. Ctrl/Cmd+Enter refaz o cálculo após mudanças.

Modelos explícitos e resultados reproduzíveis

Oito opções e modelos próprios

ARC, MODBUS, IBM-3740 e XMODEM cobrem quatro modelos de 16 bits. ISO-HDLC, CRC-32C e MPEG-2 oferecem três variantes de 32 bits. Também é possível definir parâmetros personalizados de 16 ou 32 bits.

Reflexões independentes

RefIn inverte os bits de cada byte de entrada; RefOut inverte os do registrador final. As representações big-endian e little-endian apenas ordenam os bytes do mesmo número, sem alterar o algoritmo.

Adler-32 tem outra definição

S1 começa em 1 e S2 em 0; as duas somas são reduzidas módulo 65521. A entrada vazia resulta em 00000001. O polinômio e o XOR próprios de CRC não são aplicados ao Adler-32.

Relatório JSON com contexto

O relatório registra modelo, parâmetros numéricos, modo de entrada, quantidade de bytes, valor esperado e comparação. Inclui hex, decimal, binário e as duas ordens dos bytes, sem guardar o conteúdo de origem.

Limites e interpretação da entrada

Sem ajuste automático dos bytes
O modo hex aceita pares completos e espaços ASCII. Rejeita 0x, vírgulas, comentários, espaços não ASCII e grupos ímpares. Não preenche meio byte com zero nem remove ou acrescenta o campo CRC de um quadro.
Tamanhos limitados por tipo
Texto e fonte hex aceitam até 1.000.000 de unidades UTF-16 e 1 MiB após decodificar. Um arquivo pode ter até 2 GiB e é lido em blocos de 1 MiB. Entradas vazias são válidas; pastas e listas de verificação não são processadas em lote.
O texto não é normalizado
UTF-8 é a única codificação de texto. Espaços, caracteres BOM e quebras de linha são preservados; substitutos sem par causam erro. Arquivos são lidos como bytes brutos, sem descompactar ou converter caracteres.
Você precisa escolher o modelo
Não há detecção de algoritmo, recuperação de polinômio, CRC8/64, geração de código ou bytes de correção. Alterar a entrada ou qualquer opção cancela o trabalho em andamento e bloqueia a exportação até recalcular.
Coincidência não prova a origem
CRC e Adler detectam muitas alterações acidentais, mas podem ter colisões e mudanças deliberadas com o mesmo resultado. Uma soma de verificação igual não identifica o remetente nem recupera um arquivo danificado.

Dúvidas sobre a Calculadora CRC

Por que duas calculadoras CRC geram resultados diferentes?

Compare os bytes exatos e depois largura, polinômio, Init, RefIn, RefOut e XorOut. Confira também se a outra ferramenta mostra o número ou os bytes invertidos. Uma quebra de linha no final pode ser a causa da diferença.

CRC-32 e CRC-32C são iguais?

Não. ISO-HDLC usa 04C11DB7; CRC-32C usa 1EDC6F41. Para 123456789, os resultados são CBF43926 e E3069283. Ter a mesma largura de 32 bits não torna os modelos intercambiáveis.

CRC-32 é o mesmo que MD5 ou SHA-256?

Não. CRC foi pensado para erros acidentais de transmissão ou armazenamento. MD5 e SHA-256 pertencem a famílias de hash criptográfico; MD5 não serve para usos modernos que exijam resistência a colisões. Um hash simples também não autentica o remetente.

Qual variante de CRC-32 esta ferramenta usa?

O padrão é CRC-32/ISO-HDLC, com polinômio 04C11DB7, início e XorOut FFFFFFFF e ambas as reflexões ativas. A Calculadora CRC também oferece CRC-32C, MPEG-2 e parâmetros próprios de 32 bits.

Qual é a diferença entre CRC-16/CCITT-FALSE e CRC-16/MODBUS?

CCITT-FALSE também se chama IBM-3740: polinômio 1021, início FFFF e sem reflexão. MODBUS usa 8005, FFFF e ambas as reflexões. XMODEM usa 1021 com início 0000; portanto, é diferente de CCITT-FALSE.

Ainda tem uma dúvida?

Voltar à Calculadora CRC

Use a Calculadora CRC com uma amostra conhecida, altere um parâmetro por vez e guarde o relatório do resultado conferido.