Dictionnaire

Qu'est-ce que le CRC ZIP ?

Le CRC, ou CRC ZIP, est une valeur de métadonnées que l'on trouve souvent dans les fichiers d'archive. Découvrez ce que signifie le CRC et ce que cette valeur vous indique sur votre propre fichier.

zip-crc

Le CRC est un nombre court calculé à partir du contenu d'un fichier au moment où il est ajouté à une archive. Il agit comme une empreinte, afin que le fichier puisse ensuite être contrôlé pour confirmer qu'il est ressorti de l'archive exactement comme il y est entré. CRC est l'abréviation de cyclic redundancy check (contrôle de redondance cyclique).

D'où il vient et quels fichiers en ont

Les archives l’incluent. Cela concerne les fichiers ZIP et les nombreux formats basés sur ZIP, y compris .docx, .xlsx, .epub, .jar et .apk, tandis que RAR, 7z et d’autres formats conservent leurs propres sommes de contrôle. Un rapport peut ne pas l’indiquer pour les fichiers .epub, même si le fichier la contient.

Le programme de compression calcule la valeur à partir du contenu original non compressé du fichier et la stocke à côté de cette entrée, de sorte que chaque élément d'une archive possède son propre CRC. Vous ne pouvez pas le choisir ni le saisir, et ce n'est pas une information sur vous ou votre ordinateur. Il est dérivé uniquement des octets du fichier.

L'objectif de l'enregistrer est de permettre la comparaison qui a lieu ensuite. Lorsque l'archive est décompressée, le programme recalcule le CRC à partir de ce qu'il vient d'extraire et compare les deux valeurs. Si elles diffèrent, vous obtenez le message d'erreur CRC habituel dans WinZip, 7-Zip ou unzip, ce qui signifie que le fichier extrait ne correspond pas à celui qui avait été ajouté à l'origine. Cela indique un dommage survenu en cours de route : un téléchargement interrompu, un disque défaillant, une copie interrompue. Un seul élément endommagé suffit à produire ce message, même si tout le reste de l'archive est intact.

À quoi ressemble la valeur

ZIP utilise une variante appelée CRC-32, qui produit un nombre de 32 bits. Il est généralement affiché sous forme de huit chiffres hexadécimaux, par exemple 0x8f3d2b1c, et certains outils affichent exactement la même valeur sous forme de nombre décimal long. Il n'y a ni unité ni échelle sur laquelle une valeur serait meilleure ou pire. Un fichier vide, et une entrée de dossier qui ne contient aucune donnée, affichent 0x00000000.

Pourquoi c'est important

Il s'agit d'un champ d'intégrité, et c'est la preuve intégrée à l'archive que le contenu a bien survécu au stockage et au transfert. Trouver un CRC dans un rapport de métadonnées ne signifie pas que quelque chose ne va pas avec votre archive. C'est simplement la valeur qui a été enregistrée lors de la création de l'archive ; la vérification réelle a lieu au moment de l'extraction, pas au moment de la consultation.

Il a un usage secondaire pratique. Un contenu identique produit toujours le même CRC, donc deux entrées avec le même CRC et la même taille sont presque certainement le même fichier, ce qui en fait un moyen rapide de repérer les doublons dans une grande archive.

Ce qu'il n'est pas, en revanche, c'est une fonction de sécurité. Un CRC est conçu pour détecter les dommages accidentels, et il est suffisamment court pour qu'une valeur identique puisse être produite volontairement. Un CRC valide ne prouve donc pas que personne n'a modifié un fichier. Des fonctions de hachage cryptographique comme SHA-256 existent pour cela. Comme la valeur est dérivée du contenu, elle peut aussi servir à vérifier si deux archives différentes contiennent le même fichier, ce qui est parfois utile et bon à garder en tête avant de transmettre une archive.