Skip to content
BlockchainSign
fr

Comment vérifier un hash soi-même

Par Publié le

Comment vérifier un hash soi-même
Photo: Al Nahian

Vérifier un hash est une opération de trente secondes avec les outils déjà présents sur votre ordinateur. C'est aussi l'étape qui transforme « on m'a dit que ça correspond » en « j'ai vérifié ».

Les commandes

macOS et Linux

shasum -a 256 nom_du_fichier

ou, sur la plupart des distributions Linux :

sha256sum nom_du_fichier

Windows

certutil -hashfile nom_du_fichier SHA256

PowerShell

Get-FileHash nom_du_fichier -Algorithm SHA256

Dans un navigateur — le générateur de hash SHA-256 gratuit de ce site. Il utilise l'API Web Crypto, s'exécute entièrement sur votre machine et fonctionne même sans connexion. Cette dernière propriété est essentielle : vous pouvez confirmer qu'aucune donnée n'est envoyée en débranchant le câble.

Tous ces outils produisent la même chaîne hexadécimale de 64 caractères pour les mêmes octets. Si deux outils divergent, l'un d'eux hache quelque chose de différent.

Comparer sans s'y perdre

Une chaîne de 64 caractères est facile à survoler et à lire incorrectement. Voici quelques habitudes plus sûres :

  • Comparez les six premiers et les six derniers caractères pour une vérification rapide, puis collez les deux chaînes dans un éditeur de texte pour une comparaison complète lorsque c'est important.

  • Laissez la machine faire le travail. Sur macOS ou Linux :

    [ "$(shasum -a 256 fichier.pdf | cut -d' ' -f1)" = "hash_attendu_ici" ] && echo MATCH || echo DIFFERENT
    
  • Attention à la casse. La sortie hexadécimale est insensible à la casse sémantiquement, mais les outils diffèrent dans ce qu'ils affichent. Mettez tout en minuscules avant de comparer.

Quand le hash ne correspond pas

Une divergence signifie que les octets sont différents. C'est tout ce que cela signifie, et les causes habituelles sont banales.

Le fichier a été réenregistré. Ouvrir un document et le sauvegarder à nouveau le réécrit — souvent avec une nouvelle date de modification intégrée, ou une passe de compression différente. Le contenu semble identique, mais les octets ne le sont pas.

Il a été exporté plutôt que copié. Un PDF exporté deux fois depuis la même source est généralement deux fichiers différents.

Le transfert l'a modifié. Certains outils « corrigent » utilement les fins de ligne dans les fichiers texte, convertissant entre LF et CRLF. Cela change chaque ligne.

Vous avez haché la mauvaise chose. Hacher un dossier, un alias, ou une archive zip que vous avez reconstruite au lieu de l'original. Reconstruire une archive zip reproduit presque jamais les octets originaux, car les horodatages et l'ordre sont stockés à l'intérieur.

Quelque chose est vraiment erroné. Rare, mais c'est la raison d'être du contrôle.

La leçon à retenir : archivez le fichier exact que vous avez certifié et travaillez sur une copie. Un horodatage couvre des octets, pas du sens.

Pourquoi « vérifiez-le vous-même » n'est pas un slogan

Il y a une raison spécifique à insister là-dessus plutôt que d'accepter une coche verte sur un site web.

Une page de vérification que vous n'avez pas écrite, s'exécutant sur un serveur que vous ne contrôlez pas, affichant un résultat que vous ne pouvez pas reproduire, est une affirmation. Elle est vraie dans la plupart des cas, mais elle reste une affirmation. Lorsque le registre compte — un litige, un audit, une réclamation — vous voulez un contrôle qui ne passe pas par la partie ayant un intérêt dans la réponse.

C'est aussi la norme que nous nous fixons. Notre page de vérification explique chaque contrôle avec une note « comment faire ceci vous-même » à côté, car un outil de vérification qui ne peut pas être remplacé par trois commandes shell fait quelque chose qu'il n'a pas besoin de faire.

Ce qu'un hash correspondant prouve

Que deux fichiers sont byte-identiques. Rien de plus, et c'est déjà beaucoup.

Cela ne vous dit pas d'où vient l'un ou l'autre fichier, qui l'a créé, ou quand — ces éléments proviennent des preuves environnantes. Dans un certificat d'horodatage, le hash est le lien entre votre fichier et un registre public daté ; seul, il est une empreinte numérique sans date attachée.

Pour savoir ce qu'est un hash et pourquoi il fonctionne, voir qu'est-ce qu'un hash SHA-256.

Questions fréquentes

Comment vérifier un hash SHA-256 sur Windows ?
Utilisez certutil -hashfile nom_du_fichier SHA256 dans une invite de commande, ou Get-FileHash nom_du_fichier -Algorithm SHA256 dans PowerShell. Les deux produisent la même valeur de 64 caractères que shasum -a 256 donne sur macOS et Linux, car ils calculent la même fonction sur les mêmes octets.
Pourquoi mon hash ne correspond-il pas au certificat ?
Presque toujours parce que le fichier a changé. Réenregistrer un document, l'exporter à nouveau, reconstruire une archive zip, ou un transfert qui a converti les fins de ligne produisent tous des octets différents tout en semblant identiques. Archivez le fichier exact que vous avez certifié et travaillez sur une copie.
Le hachage dans un navigateur est-il aussi fiable que la ligne de commande ?
Oui, lorsqu'il utilise l'API Web Crypto, qui est la même implémentation standard que fournit la plateforme. Notre outil produit une sortie byte-identique à shasum -a 256, et il fonctionne sans connexion — ce qui est un moyen pratique de confirmer qu'aucune donnée n'est envoyée.

Prouvez dès aujourd’hui que votre travail existait

Horodatez n’importe quel fichier sur la blockchain Ethereum et recevez un certificat infalsifiable, valable à vie. Votre fichier ne quitte jamais votre navigateur.