Calculadora de código hash CRC-32B
Publicado: 17 de fevereiro de 2025 às 18:29:38 UTC
Última atualização: 12 de janeiro de 2026 às 09:16:01 UTC
CRC-32B Hash Code Calculator
A Verificação de Redundância Cíclica (CRC) é um código detetor de erros frequentemente utilizado para detetar alterações acidentais em dados brutos. Embora tecnicamente não seja uma função de hash criptográfica, o CRC-32 é frequentemente referido como hash devido à sua capacidade de produzir uma saída de tamanho fixo (32 bits) a partir de entrada de comprimento variável. A versão apresentada nesta página é a variante CRC-32B, que na verdade é apenas uma peculiaridade na linguagem PHP que inverte os bits (little-endian vs big-endian no CRC-32 original).
Divulgação completa: eu não escrevi a implementação específica da função hash usada nesta página. Trata-se de uma função padrão incluída na linguagem de programação PHP. Apenas criei a interface Web para a tornar publicamente disponível aqui por conveniência.
Sobre o Algoritmo de Hash CRC-32B
Não sou matemático, mas vou tentar explicar esta função de hash com uma analogia simples. Ao contrário de muitas das funções hash criptográficas, não é um algoritmo particularmente complicado, por isso provavelmente vai correr bem ;-)
Imagine que está a enviar uma carta pelo correio, mas está preocupado que possa danificá-la antes de chegar ao destinatário. Com base no conteúdo da carta, calcula um checksum CRC-32 e escreve isso no envelope. Quando o destinatário recebe a carta, pode também calcular o checkamount e verificar se corresponde ao que escreveu. Se isso acontecer, a carta não foi danificada nem alterada pelo caminho.
A forma como o CRC-32 faz isto é um processo de quatro etapas:
Passo 1: Adicione algum espaço extra (almofadamento)
- O CRC adiciona um pouco mais de espaço no final da mensagem (como embalar amendoins numa caixa).
- Isto ajuda a identificar erros mais facilmente.
Passo 2: O Governante Mágico (O Polinómio)
- O CRC-32 utiliza uma "régua mágica" especial para medir os dados. Pensa nesta régua como um padrão de saliências e sulcos (este é o polinómio, mas não te preocupes com essa palavra). A "régua" mais comum para CRC-32 é um padrão fixo.
Passo 3: Deslizar a Régua (Processo de Divisão)
- Agora o CRC desliza a régua pela mensagem. Em cada ponto, verifica se as saliências e sulcos coincidem. Se não coincidirem, o CRC faz uma nota (isto é feito usando XOR simples, como ligar ou desligar interruptores). Continua a deslizar e a ligar interruptores até chegar ao fim.
Passo 4: O Resultado Final (O Checksum)
- Depois de deslizar a régua por toda a mensagem, fica com um pequeno número (32 bits de comprimento) que representa os dados originais. Este número é como uma impressão digital única para a mensagem. Este é o checksum CRC-32.
A versão apresentada na página é a variante CRC-32B, que é maioritariamente uma peculiaridade PHP que altera a ordem dos bits (little-endian vs big-endian). Provavelmente só deves usar esta versão se precisares especificamente de compatibilidade com outra aplicação PHP que a utilize.
Também tenho calculadoras para as outras variantes:
- Link
- Link
Leitura adicional
Se gostou deste post, também pode gostar destas sugestões:
- Calculadora de código hash HAVAL-256/4
- Calculadora de código hash Whirlpool
- Calculadora de código de hash SHA3-256
