Fonctionnement du hachage cible
Pour comprendre comment le hachage cible marche, il faut connaître le fonctionnement de l’extraction de cryptomonnaie ou minage. Il s’agit d’un processus de collecte de nouveaux jetons en récompense d’un travail effectué. La nature de celui-ci repose sur la vérification de la légitimité des transactions d’une crypto donnée. Lorsqu’on fait du minage, on peut ainsi gagner des jetons sans pour autant déposer d’argent en contrepartie. Le hachage cible s’utilise dans l’objectif de déterminer la difficulté de l’entrée et celui-ci peut être ajusté pour garantir que les blocs soient traités efficacement. C’est dans le mécanisme de consensus PoW (proof of work ou preuve de travail en français) que cette valeur numérique est mise en place.
Toutes les cryptomonnaies reposent sur l’utilisation d’une chaîne de blocs contenant l’historique de leurs transactions. Ces dernières sont encodées cryptographiquement en une série de caractères alphanumériques complexes. Le hachage repose sur l’utilisation d’une chaîne de données de n’importe quelle longueur puis faire passer celle-ci par un algorithme afin de produire une sortie de longueur fixe – même longueur, peu importe la taille de l’entrée. Chacun des blocs contiendra alors le hachage de l’en-tête du bloc précédent. L’extraction de cryptomonnaie repose sur l’ajout d’un nouveau jeton au réseau, d’un côté, et de l’autre la validation et l’encodage de la blockchain. Ce sont ses opérations qui sont appelées minage et cela implique l’utilisation d’ordinateurs ayant une grande puissance de calcul pour exécuter des algorithmes de hachage pour traiter le bloc le plus récent. Toutes les informations dont l’utilisateur a besoin pour extraire se situent dans l’en-tête du bloc. La blockchain définit alors une valeur cible pour ce hachage et c’est celle-ci que l’on appelle hachage cible. Les mineurs tentent alors de la déterminer en effectuant des tests sur toutes les valeurs possibles.
Il faut savoir que l’en-tête du bloc contient différents éléments : horodatage, numéro de version, hachage utilisé dans le bloc précédent, hachage de l’arbre Merkle, nonce et hachage cible. Un bloc est généré en prenant le hachage de son contenu puis en ajoutant un nonce qui est une chaîne aléatoire de nombres, et en hachant à nouveau le bloc. Si le hachage répond aux exigences de la cible alors, le bloc est ajouté à la blockchain, ce qui donne naissance à un nouveau token.
Le hachage cible pour le Bitcoin (BTC)
Cas particulier de hachage cible pour Bitcoin. Sa blockchain éponyme utilise un algorithme de hachage SHA-256 générant des nombres aléatoires vérifiables d’une manière nécessitant une quantité prévisible de puissance de traitement informatique. L’extraction d’un bloc nécessite qu’un mineur produise un nonce qui après avoir été encodé cryptographiquement a une valeur inférieure ou égale à la valeur utilisée dans le bloc le plus récent accepté par le réseau. Ce nombre est compris entre 0 et 256, mais il est peu probable que ce soit le nombre maximum.
Dans la mesure où le hachage peut être un nombre conséquent, le mineur peut être amené à tester un grand nombre de valeurs avant de réussir. S’il échoue, il devra alors attendre le bloc suivant. Le hachage cible est ajusté de manière périodique. Les fonctions utilisées dans la génération de la nouvelle cible ont des propriétés spécifiques mises au point pour sécuriser au maximum la blockchain, et bien évidemment sa cryptomonnaie. Ce procédé produira alors le même résultat chaque fois que la même entrée est utilisée, et il est suffisamment rapide afin de ne pas prendre trop de temps pour renvoyer un hachage pour l’entrée. Du coup, cela rend la détermination de l’entrée très difficile et cela en particulier pour les grands nombres, mais également de petites modifications à l’entrée qui résulte en une sortie de hachage très différente.
Laisser un commentaire