Pour connaître les principes et les applications du CRC, veuillez consulter le guide complet sur le contrôle de redondance cyclique.
Paramètres personnalisés
CRC calculé
Le résultat apparaît ci-dessous
Un contrôle de redondance cyclique (CRC) est un code de détection d'erreurs couramment utilisé dans les réseaux numériques et les périphériques de stockage pour détecter les modifications accidentelles des données brutes. Son fonctionnement consiste à traiter le message comme un grand nombre binaire et à le diviser par un nombre binaire fixe, appelé « polynôme ». Le reste de cette division constitue la somme de contrôle CRC.
Visualiser le processus
L'animation ci-dessous simplifie le processus de division euclidienne, qui est au cœur du calcul du CRC. Vous pouvez suivre les étapes du processus pour observer comment le reste (la valeur du CRC) est généré. Il s'agit d'un modèle conceptuel ; les implémentations réelles sont hautement optimisées au niveau matériel et logiciel.
Explorez les algorithmes CRC courants. Cliquez sur une ligne pour charger ses paramètres dans le calculateur.
| Nom | Largeur | Polynôme | Valeur initiale | Réfléchissez | Réfléchissez vers l'extérieur | XOR final |
|---|
Bien utiliser le calculateur CRC
Le calculateur traite des octets. Il faut donc d’abord choisir comment convertir les données source. Chaîne (UTF-8) encode les caractères saisis. Hexadécimal utilise directement la suite d’octets et convient mieux à une capture de paquets, une image mémoire ou une trame série.
- Polynôme : polynôme générateur.
- Valeur initiale : contenu du registre avant le premier octet.
- RefIn / RefOut : réflexion des bits des octets d’entrée et du résultat.
- XOR final : valeur appliquée après le dernier octet.
Le polynôme seul ne définit pas une variante CRC : la valeur initiale, les réflexions et le XOR final doivent également correspondre au protocole.
Exemples d’entrée et de sortie
Saisissez 123456789 en Chaîne (UTF-8). Le résultat attendu est 0x4B37 avec CRC-16/MODBUS et 0xCBF43926 avec CRC-32.
L’entrée hexadécimale 31 32 33 34 35 36 37 38 39 représente les mêmes neuf octets ASCII et doit produire le même checksum. Ce test permet de repérer une différence d’encodage.
Comment interpréter un résultat CRC
Un checksum identique confirme que les octets et les paramètres CRC correspondent à la référence. En cas d’écart, vérifiez :
- Les espaces, fins de ligne, séparateurs ou un octet nul final.
- Le format d’entrée : texte, octets hexadécimaux ou valeur numérique affichée.
- La valeur initiale, les réflexions entrée/sortie et le XOR final.
- L’ordre little-endian ou big-endian des octets CRC transmis.
Références techniques
Les paramètres et valeurs de contrôle peuvent être vérifiés dans la spécification AUTOSAR des routines CRC, la spécification USB 2.0 et le catalogue CRC RevEng avec références traçables.
Le CRC détecte les erreurs accidentelles ; il ne prouve pas l’authenticité et ne remplace pas un hachage cryptographique ni un code d’authentification.







