Calculadora de código hash CRC-32B
Publicado: 17 de fevereiro de 2025 às 18:29:36 UTC
Última atualização: 12 de janeiro de 2026 às 09:15:58 UTC
CRC-32B Hash Code Calculator
A Verificação de Redundância Cíclica (CRC) é um código de detecção de erros comumente usado para detectar alterações acidentais em dados brutos. Embora tecnicamente não seja uma função hash criptográfica, o CRC-32 é frequentemente chamado de hash devido à sua capacidade de produzir uma saída de tamanho fixo (32 bits) a partir de uma entrada de comprimento variável. A versão apresentada nesta página é a variante CRC-32B, que na verdade é apenas uma peculiaridade da linguagem PHP que inverte a ordem dos bits (little-endian em vez de big-endian no CRC-32 original).
Divulgação completa: não escrevi a implementação específica da função hash usada nesta página. Ela é uma função padrão incluída na linguagem de programação PHP. Apenas criei a interface da Web para disponibilizá-la publicamente aqui por conveniência.
Sobre o algoritmo de hash CRC-32B
Não sou matemático, mas vou tentar explicar essa função hash com uma analogia simples. Ao contrário de muitas funções hash criptográficas, não é um algoritmo particularmente complicado, então provavelmente não haverá problemas ;-)
Imagine que você está enviando uma carta pelo correio, mas está preocupado que ela possa ser danificada antes de chegar ao destinatário. Com base no conteúdo da carta, você calcula um checksum CRC-32 e o anota no envelope. Quando o destinatário receber a carta, ele também poderá calcular o checksum e verificar se corresponde ao que você anotou. Se corresponder, significa que a carta não foi danificada nem alterada durante o transporte.
O CRC-32 realiza isso por meio de um processo de quatro etapas:
Passo 1: Adicione um pouco de espaço extra (margem de segurança)
- O CRC adiciona um pouco de espaço extra no final da mensagem (como flocos de isopor em uma caixa).
- Isso ajuda a detectar erros com mais facilidade.
Passo 2: A Régua Mágica (O Polinômio)
- CRC-32 usa uma "régua mágica" especial para medir os dados. Imagine essa régua como um padrão de saliências e sulcos (este é o polinômio, mas não se preocupe com esse termo). A "régua" mais comum para o CRC-32 é um padrão fixo.
Etapa 3: Deslizando a régua (Processo de divisão)
- Agora, o CRC desliza a régua pela mensagem. Em cada ponto, ele verifica se as saliências e ranhuras se alinham. Se não se alinharem, o CRC faz uma anotação (isso é feito usando um XOR simples, como ligar ou desligar interruptores). Ele continua deslizando e ligando interruptores até chegar ao final.
Etapa 4: O Resultado Final (O Checksum)
- Após deslizar a régua por toda a mensagem, você obtém um pequeno número (com 32 bits) que representa os dados originais. Esse número é como uma impressão digital única para a mensagem. Esse é o checksum CRC-32.
Versão apresentada na página é a variante CRC-32B, que é principalmente uma peculiaridade do PHP que inverte a ordem dos bits (little-endian vs big-endian). Você provavelmente só deve usar esta versão se precisar especificamente de compatibilidade com outro aplicativo PHP que a utilize.
Eu também tenho calculadoras para as outras variantes:
- Link
- Link
Leitura adicional
Se você gostou deste post, você também pode gostar destas sugestões:
- Calculadora de código de hash SHA-512
- Calculadora de código hash Adler-32
- Calculadora de código hash HAVAL-128/3
