Académique Documents
Professionnel Documents
Culture Documents
Ces données sont passées dans une fonction de hachage. Nous obtenons alors un
hash, qui doit remplir la condition suivante : le hash obtenu doit être inférieur à la
cible. Plus la cible est petite, plus il va être difficile d’avoir un hash encore plus petit
que la cible. Ainsi la difficulté ajuste la valeur de la cible telle qu’une augmentation de
la difficulté provoque une diminution de la cible.
Un peu perdu ? Ne vous inquiétez pas, il est plus facile de comprendre avec un
exemple :
Imaginons que nous voulons valider le bloc 128 à exactement 12h pour enregistrer la
transaction “Bob donne 1 bitcoin à Alice”, avec une cible de 001
Les informations à inclure sont donc :
Bloc 128, 0004aeD4b8ac (hash du bloc précédent) Bob donne 1 bitcoin à Alice
12h00m00s 001
Ou 1280004aeD4b8acBobdonne1bitcoinàAlice12h00m00s001
Lorsque l’on passe cette entrée dans une fonction de hachage, cela nous donne :
=> 8b5Aad3f1de2
Or, il faut que cela soit inférieure à 001 (la cible) pour pouvoir être validé. En
hexadécimal, 8b5Aad3f1de2 est supérieur à 001.
Le problème étant de trouver un hash inférieur à la cible, nous allons donc ajouter un
nombre, la nonce, en espérant que cela va permettre d’avoir un hash inférieur à 001.
1280004aeD4b8acBobdonne1bitcoinàAlice12h00m00s0019999
=> 9e45dfb14ab6 Raté, c’est encore supérieur à 001
1280004aeD4b8acBobdonne1bitcoinàAlice12h00m00s0010505050
=> f48Ed77a0c6e C’est toujours supérieur à 001
1280004aeD4b8acBobdonne1bitcoinàAlice12h00m00s00125478754585
=> 0002de3cf8f4 C’est inférieur à 001 !!
0002de3cf8f4 est inférieur à 001. La solution est trouvée, nous proposons cette
solution au réseau et quand elle est acceptée nous validons le bloc (et toucherons
la récompense !).