Un exemple concret
Une clé privée volée peut permettre de signer un transfert techniquement valide.
Dans son contexte
Hacher n’est pas chiffrer. Le chiffrement vise à rendre un message illisible sans une clé ; le hash sert notamment à vérifier l’intégrité. Une empreinte ne prouve pas à elle seule qu’un contenu est vrai, seulement qu’il correspond à une donnée déterminée.
Le mécanisme associé, en image
- 01Message + contexte
- 02Signature privée
- 03Vérification publique
- 04Autorisation, pas vérité
Ces repères représentent des notions liées, pas nécessairement des étapes successives.
Lire l’explication
Une clé privée sert à produire des signatures ; la clé publique correspondante permet de les vérifier. La vérification lie une signature à un message précis. Ce message doit aussi indiquer son contexte, par exemple réseau et contrat, pour éviter qu’une autorisation soit acceptée ailleurs. La protection contre le rejouement repose sur les règles de l’application, souvent un nonce ; un affichage lisible ne suffit pas. Un wallet peut demander un transfert, un appel de contrat ou un message structuré. Lisez cette demande, pas seulement la description du site.
Replacez le mécanisme dans son contexte
Dans ce transfert direct fictif, le message signé précise réseau, destinataire et montant : « envoyer 25 unités à Bob ». Après signature, quelqu’un remplace Bob par Chloé en conservant montant et signature. Comparez les deux messages avant de décider si la vérification peut réussir.
Appliquer dans l’atelier →Ce que ce mécanisme ne garantit pas
Une phrase de récupération peut dériver de nombreuses clés. Ce n’est pas un mot de passe qu’un support client peut réinitialiser. Un hash n’est pas un chiffrement : aucune clé de déchiffrement ne restitue normalement son entrée. Un attaquant peut essayer des entrées prévisibles et comparer leurs empreintes. Hasher un numéro de téléphone ne le rend donc pas automatiquement anonyme. Une signature vérifiée ne dit pas non plus si la clé a été volée ou si son détenteur a compris la demande.
Explorer l’explication complète
Hash, clés et signatures
Une fonction de hachage transforme une donnée de taille quelconque en une empreinte de taille fixe.