Algorithme de minage du Bitcoin : Comprendre les bases du SHA-256
Au-delà de sa caractéristique d’actif numérique, le Bitcoin représente surtout et avant tout une nouvelle technologie. Propulsé par la blockchain, l’écosystème Bitcoin fait appel à des notions complexes de mathématiques et plus spécifiquement de cryptographie. Aujourd’hui nous vous présentons l’algorithme de consensus du Bitcoin appelé SHA-256. Il permet notamment le minage de Bitcoin.
Les bases du minage de Bitcoin
Le minage est l’activité qui permet de créer de nouveaux bitcoins. Pour rappel, la quantité maximum de bitcoins qui pourront (à terme) être mis en circulation est plafonnée à 21 millions. Les personnes qui s’attellent à cette tâche sont appelés les mineurs.
Le minage permet aussi le traitement de votre transaction. Les mineurs se chargent en effet de valider le traitement numérique de la transaction afin de l’enregistrer sur la blockchain.
Le minage peut être vu comme une compétition entre les différents mineurs du réseau. Le premier qui trouve la solution mathématique « remporte la mise » et valide le bloc en question. Mais de quelle solution mathématique parle-t-on ? C’est là qu’intervient l’algorithme SHA-256.
Qu’est-ce que la fonction mathématique hash ?
Pour faire simple, la fonction de hashage permet de « condenser » tout type de fichier (image, texte, etc.) en une série de caractères.
Lorsque vous regardez votre passe sanitaire, vous observez un QR code. En fait, le QR code résulte d’un hashage de votre certification (test ou vaccination). La différence est simplement visuelle. Au lieu de vous montrer une suite de caractères, vous voyez des carrés noirs et blancs.
Il existe différentes fonction de hashage comme SHA-1, SHA-224, SHA-256, SHA-512, etc. Concrètement, le principe de toutes ces fonctions est similaire, seule change la longueur de la série de caractères en sortie. Sur le Bitcoin, la fonction SHA-256 est utilisée.
A moins d’avoir une appétence pour les mathématiques, il vaut mieux ne pas regarder sous le capot d’une fonction de hashage ! Mais si jamais la curiosité vous y pousse, vous y verrez une succession d’opérateurs logiques du type « AND », « OR », « NOT », etc. Au niveau macro, que donne une fonction de hashage ?
Vous trouverez ci-dessous des exemples concrets de hashage :
Donnée d’entrée : texte ou image | Donnée de sortie : Résultat du hashage avec la fonction SHA-256 |
Le cours du Bitcoin est en baisse de 5 % | 91d7f62e9b24e9a6bfc101c63c3af200870081dd5bb18b5ae39df8805b74e254 |
Le cours du Bitcoin est en baisse de 5 % ? | 6c145527b63b0853cbc8b93a8a5ff007af47d33d1ab764d410582e2ed7ed9f01 |
0d9624f1c94f771c5e1f500e795b47f233e1e67493e0bfde0e7c2508df72ea80 |
Ces exemples permettent d’illustrer plusieurs aspects particuliers du hashage :
- Flexibilité : Tout peut être converti en hash, que ce soit une photo, un texte, un document…
- Longueur : La fonction SHA-256 renvoie un résultat sous la forme de chaînes de 64 caractères en langage hexadécimal. Mais pourquoi la dénomination « 256 » alors ? Pour être précis, SHA-256 produit une série de 256 caractères binaires, c’est-à-dire une suite de 256 digits « 0 » ou « 1 ». Pour raccourcir ce résultat, il est transformé en langage hexadécimal. Le langage hexadécimal se compose de lettres et de chiffres. Chaque caractère en hexadécimal correspond à 4 digits en binaire. Par exemple, « a » (hexadécimal) équivaut à « 1010 » en binaire. Avec cette conversion, le résultat passe de 256 caractères à 64.
- Unicité : Chaque mot, phrase, document, fichier, etc possède un hash qui lui est propre. Pour illustrer cet aspect, on peut comparer le hash à l’empreinte ADN d’un individu.
- Non prédictibilité : Le moindre changement dans le fichier source (comme l’ajout d’un « ? » dans nos exemples) renvoie un hash complètement différent.
Les avantages de la fonction de hashage pour le Bitcoin
La fonction de hashage mathématique présente plusieurs avantages dans le cadre du Bitcoin tels que :
- Sens unique. N’importe quel fichier peut être réduit sous la forme d’un hash. Par contre, comme vu ci-dessus, à partir du hash, il est impossible de revenir aux données sources.
- Compression. En réduisant une transaction sous forme de hash, cela permet de stocker beaucoup de données sans prendre beaucoup de place sur la blockchain.
- Facilité. Le calcul du hash est facile à faire. Dans le contexte du minage, le hash est donc pertinent à utiliser. Sa facilité de calcul permet au mineur de faire plusieurs itérations afin de trouver la solution mathématique dans un temps raisonnable. Pour rappel, il en va du temps de la validation d’un bloc et donc des transactions des utilisateurs. Sur le Bitcoin, un bloc est validé toutes les 10 minutes.
- Forte résistance aux collisions. On parle de collision lorsque l’on peut trouver un même hash pour deux fichiers différents. Or, comme expliqué ci-dessus, cela est très hautement improbable. En fait, du point de vue mathématique, il existe 1 chance sur … 2 puissance 64 (soit 1 suivi de 64 zéros…) !
A ce stade, vous avez compris l’intérêt de la fonction mathématique de hashage. Mais que vient faire le calcul du hash dans toute la séquence du minage de Bitcoin ?
Découvrez cela dans la 2ème partie de cet article sur le hashage et le minage !
_______________________
Suivez nos liens d’affiliés:
Pour acheter des cryptomonnaies en Zone SEPA, Europe et citoyens français, visitez Coinhouse
Pour acheter des cryptomonnaies au Canada, visitez Bitbuy
Pour générer des intérêts grâce à vos bitcoins, allez sur le site de BlockFi
Pour sécuriser ou stocker vos cryptomonnaies, procurez-vous les portefeuilles Ledger ou Trezor
Pour transiger vos cryptos de façon anonyme, installez l’application NordVPN
Pour investir dans le minage ou les masternodes :
- Sur Feel Mining
- Sur Just Mining
Pour accumuler des cryptos en jouant :
________________
Voici les sources d’informations qu’on vous propose:
Notre newsletter hebdomadaire gratuite: https://www.getrevue.co/profile/CryptonewsFR
Twitter: https://twitter.com/cryptonews_FR
Telegram: https://t.me/cryptonews_FR