Gerador de Hash CRC-32
Controlo de redundância cíclica padrão para integridade de dados
CRC-32 é a função checksum não criptográfica mais usada no mundo. Produz um hash de 32 bits (8 caracteres hex) por divisão polinomial. CRC-32 está em todo o lado: formatos ZIP e PNG, redes Ethernet, protocolos USB e sistemas de ficheiros.
O que é CRC-32?
CRC-32 trata os dados de entrada como um polinómio e calcula o resto da divisão por um polinómio gerador fixo.
✅ Vantagens
- • Aceleração hardware: Instruções Intel CRC32 calculam à velocidade da memória
- • Deteção robusta: Deteta todos os erros de 1, 2 bits e ímpares
- • Padrão universal: Ethernet, USB, ZIP, PNG, MPEG-2
- • Simples e rápido: Tabelas de pesquisa para cálculo veloz
📊 Casos de uso
- • Arquivamento: Verificação de integridade ZIP e gzip
- • Redes: Verificação de frames Ethernet
- • Armazenamento: Integridade do sistema de ficheiros
- • Formatos multimédia: Integridade de ficheiros PNG e MPEG
⚠️ Nota de segurança
CRC-32 não é uma função hash criptográfica. Foi concebida para detetar erros aleatórios, não para proteger contra manipulação intencional.
🔄 Comparação CRC-32
CRC-32
32 bits, polinomial
Deteção de erros, não cripto
Adler-32
32 bits, aritmético
Mais rápido, deteção mais fraca
MD5
128 bits, criptográfico
Muito mais lento, mas seguro
❓ Perguntas frequentes
Diferença entre CRC-32 e CRC-32B?
Usam polinómios geradores diferentes. CRC-32B é a variante que o PHP calcula por defeito.
Porque é que CRC-32 não é usado para segurança?
CRC-32 é linear e reversível. Um atacante pode facilmente criar colisões.
CRC-32 deteta todos os erros?
Não. CRC-32 deteta 100% dos erros de 1 e 2 bits mas pode falhar certos padrões de erros.