SHA-256 est la fonction de hachage qui alimente Bitcoin. Vous avez déjà vu ce que fait une fonction de hachage. Examinons maintenant spécifiquement SHA-256 : pourquoi Satoshi l'a choisi, comment il traite les données en interne et pourquoi il est toujours considéré comme sécurisé alors que des algorithmes plus anciens comme MD5 et SHA-1 ont été brisés.
Tapez n'importe quoi ci-dessous et regardez la mise à jour du résumé SHA-256 en temps réel. Notez que la sortie comporte toujours exactement 64 caractères hexadécimaux, soit 256 bits, que vous tapiez un mot ou un paragraphe entier.
Toutes les fonctions de hachage ne sont pas égales. MD5 et SHA-1 étaient autrefois la norme de l'industrie, jusqu'à ce que les chercheurs trouvent des moyens de créer des collisions (deux entrées différentes avec le même hachage). Une fois qu’une fonction de hachage est rompue, elle ne peut plus être utilisée pour sécuriser l’historique financier. Satoshi a choisi SHA-256 car il s'agissait de l'option standardisée la plus puissante disponible en 2008, et elle reste ininterrompue aujourd'hui.
Vous n'avez pas besoin d'implémenter SHA-256 vous-même : vous utiliserez toujours une bibliothèque auditée. Mais comprendre le modèle de traitement vous aide à raisonner sur les performances et les choix de protocole : pourquoi les entrées sont complétées, pourquoi le traitement s'effectue par blocs de 512 bits et d'où vient cette sortie de 256 bits.