DÉFINITION de Target Hash
Un hachage cible est un nombre auquel un en-tête de bloc haché doit être inférieur ou égal pour qu'un nouveau bloc soit attribué. Le hachage cible est utilisé pour déterminer la difficulté de l'entrée et peut être ajusté pour garantir un traitement efficace des blocs.
RÉPARTITION du hachage cible
Les crypto-monnaies reposent sur l'utilisation de chaînes de blocs qui contiennent les historiques des transactions et sont «hachées» ou encodées en une série de chiffres et de lettres. Le hachage implique de prendre une chaîne de données de n'importe quelle longueur et de l'exécuter via un algorithme pour produire une sortie avec une longueur fixe. La sortie aura toujours la même longueur, quelle que soit la taille de l'entrée. L'utilisation du hachage signifie que toute personne traitant d'une chaîne de blocs doit se souvenir du hachage plutôt que de l'entrée elle-même. Chaque bloc contiendra le hachage de l'en-tête de bloc précédent.
Le décodage et l'encodage de la blockchain sont appelés minage. L'exploitation minière implique l'utilisation d'ordinateurs pour exécuter des algorithmes de hachage pour traiter le bloc le plus récent, avec les informations nécessaires à l'exploitation minière trouvées dans l'en-tête du bloc. Le réseau de crypto-monnaie définit une valeur cible pour ce hachage - le hachage cible - et les mineurs tentent de déterminer quelle est cette valeur en testant toutes les valeurs possibles.
L'en-tête du bloc contient le numéro de version du bloc, un horodatage, le hachage utilisé dans le bloc précédent, le hachage de la racine Merkle, le nonce et le hachage cible. Le bloc est généré en prenant le hachage du contenu du bloc, en ajoutant une chaîne aléatoire de nombres (le nonce) et en hachant à nouveau le bloc. Si le hachage répond aux exigences de la cible, le bloc est ajouté à la blockchain. Faire défiler les solutions afin de deviner le nonce est appelé preuve de travail, et le mineur qui est capable de trouver la valeur reçoit le bloc et est payé en crypto-monnaie.
Le hachage cible pour Bitcoin est un nombre de 256 bits, et peut être trouvé dans l'en-tête du bloc. L'extraction d'un bloc nécessite que le mineur produise une valeur (un nonce) qui, après avoir été hachée, est inférieure ou égale à celle utilisée dans le bloc le plus récent accepté par le réseau Bitcoin. Ce nombre est compris entre 0 (la plus petite option) et 256 bits (la plus grande option), mais il est peu probable qu'il soit le nombre maximal. Étant donné que le hachage cible peut être un nombre énorme, le mineur peut avoir à tester un grand nombre de valeurs avant de réussir. Un mineur qui échoue doit attendre le prochain bloc, ce qui conduit les mineurs à comparer la recherche d'une solution de hachage à la victoire à une course ou à la loterie.
Le hachage cible est ajusté périodiquement. Les fonctions de hachage utilisées pour générer la nouvelle cible ont des propriétés spécifiques conçues pour sécuriser la blockchain (et la crypto-monnaie). Il est déterministe, ce qui signifie qu'il produira le même résultat chaque fois que la même entrée est utilisée. Il est assez rapide pour ne pas mettre trop de temps à renvoyer un hachage pour l'entrée. Cela rend également la détermination de l'entrée très difficile, en particulier pour les grands nombres, et apporte de petites modifications au résultat d'entrée dans une sortie de hachage très différente.
