CoderTools

Calculateur CRC

Calculez divers checksums CRC avec support d'entrée texte, hexadécimal et fichier

Entrez du texte UTF-8, sera converti en octets

À propos de l'algorithme CRC

Le contrôle de redondance cyclique (CRC) est un code de détection d'erreurs robuste couramment utilisé dans les réseaux numériques et les dispositifs de stockage pour détecter les modifications accidentelles des données brutes.

Lors de la récupération, le calcul est répété et si les valeurs ne correspondent pas, des mesures correctives peuvent être prises. Le CRC est conçu pour être facile à implémenter matériellement et excellent pour détecter les erreurs de bruit de transmission.

Profils CRC supportés

Cet outil implémente une large gamme d'algorithmes CRC standard utilisés dans les protocoles industriels et réseaux.

Algorithme Largeur Polynôme Utilisation
CRC-88 bit0x07Vérification de données simple, capteurs
CRC-16/Modbus16 bit0x8005Protocole Modbus, industriel
CRC-16/CCITT16 bit0x1021X.25, HDLC, Bluetooth
CRC-3232 bit0x04C11DB7ZIP, Ethernet, PNG
CRC-32C32 bit0x1EDC6F41iSCSI, SCTP, Btrfs
CRC-64/ECMA64 bit0x42F0E1EBA9EA3693ECMA-182, compression XZ

Cas d'utilisation courants

Vérification des paquets réseau (trames Ethernet)
Vérification de l'intégrité des fichiers (archives ZIP)
Protocoles de communication industrielle (Modbus RTU)
Vérification des données des systèmes de stockage
Transmission de données systèmes embarqués
Vérification du firmware et du bootloader

Questions fréquentes

Qu'est-ce que le CRC et en quoi diffère-t-il d'un hash cryptographique ?

Le CRC (Contrôle de Redondance Cyclique) est un algorithme de somme de contrôle conçu pour détecter les erreurs de bits accidentelles lors de la transmission ou du stockage de données. Contrairement aux hash cryptographiques comme SHA-256, le CRC n'est pas conçu pour résister aux falsifications intentionnelles. Utilisez le CRC pour la détection d'erreurs dans les protocoles de communication, et un hash cryptographique pour la vérification d'intégrité sécurisée.

Quel variant CRC choisir selon mon cas d'utilisation ?

CRC-32 (ISO 3309) est largement utilisé dans Ethernet, ZIP et PNG. CRC-16/MODBUS est standard pour les protocoles industriels. CRC-16/CCITT convient aux communications série. CRC-8 est adapté aux messages courts dans les systèmes embarqués. Si une spécification de protocole définit un polynôme et une valeur initiale précis, respectez-les exactement.

Pourquoi mon résultat CRC diffère-t-il de la valeur attendue ?

Les résultats CRC dépendent de quatre paramètres : le polynôme, la valeur initiale, le reflet des entrées/sorties et le XOR final. Un désaccord sur l'un d'eux produit un résultat différent. Vérifiez aussi si l'entrée est encodée en UTF-8, ASCII ou en octets bruts — la même chaîne de texte peut produire des séquences d'octets différentes et donc des valeurs CRC différentes.

Quelle est la différence entre CRC-16/MODBUS et CRC-16/CCITT ?

Ces deux variantes utilisent des CRC 16 bits avec des polynômes et valeurs initiales différents. CRC-16/MODBUS utilise le polynôme 0x8005, la valeur initiale 0xFFFF, avec réflexion en entrée et sortie. CRC-16/CCITT (aussi appelé CRC-CCITT ou CRC-16-IBM) utilise le polynôme 0x1021, valeur initiale 0xFFFF. Ils produisent des résultats complètement différents pour les mêmes données.

Puis-je calculer le CRC d'un fichier binaire et pas seulement du texte ?

Oui — collez les octets hexadécimaux de vos données binaires en utilisant le format d'entrée hexadécimal. L'outil traite les valeurs d'octets bruts, qu'ils représentent des caractères imprimables ou non. Pour les très grands fichiers binaires, des outils en ligne de commande comme cksum ou binascii.crc32() de Python sont plus pratiques.

Menu Rapide

Aucun outil récent