CRC32
CRC32 est un contrôle de redondance cyclique de 32 bits fondé sur la division polynomiale sur GF(2), utilisé pour détecter les erreurs de transmission — pas un hachage cryptographique.
Objectif
Détecte efficacement les erreurs en rafale pour l'intégrité des données — pas pour l'authentification de sécurité.
Mécanisme
Le flux de bits d'entrée est traité comme un polynôme sur GF(2) et divisé par un polynôme générateur (ex. 0x04C11DB7) ; le reste est le CRC de 32 bits. Différents polynômes (IEEE, Castagnoli, etc.) ont des propriétés de détection différentes. CRC32C (Castagnoli) offre de meilleures performances et détection.
Cas d’usage
- Vérification de fichiers ZIP/GZIP
- FCS des trames Ethernet
- Checksums accélérés SSE/AVX
- Intégrité des données iSCSI
Exemples
- entrée
helloOutput0x3610a686IEEE 802.3 polynomial
Erreurs courantes
- Using CRC32 for cryptographic authentication (not collision resistant)
- Use HMAC-SHA256 for authentication
Termes associés
Adler-32
Adler-32 est une somme de contrôle de 32 bits conçue par Mark Adler, plus rapide que CRC32 mais avec une capacité de détection légèrement inférieure, utilisée pour vérifier les flux compressés zlib. GLOSSAIRE
MD5
MD5 est une fonction de hachage cryptographique de 128 bits conçue par Ronald Rivest ; prouvée non sûre par des attaques par collision, elle ne sert plus aujourd'hui qu'à des usages sans exigence de sécurité comme les sommes de contrôle. GLOSSAIRE
SHA-256
SHA-256 est le membre de la famille SHA-2 à sortie de 256 bits, très utilisé dans TLS, les blockchains et les applications cryptographiques, sans attaque pratique connue. GLOSSAIRE