Qu'est-ce que la difficulté de crypto-monnaie?
La difficulté est un paramètre que le bitcoin et d'autres crypto-monnaies utilisent pour maintenir le temps moyen entre les blocs stable à mesure que la puissance de hachage du réseau change.
Explication de la difficulté de la crypto-monnaie
Le Bitcoin et d'autres crypto-monnaies qui utilisent des chaînes de blocs de preuve de travail sont maintenus via un processus appelé minage. Dans ce système, les mineurs - les ordinateurs exécutant le client logiciel de la crypto-monnaie - rivalisent pour trouver un nouveau bloc, ajoutant le plus récent lot de données de transaction à la chaîne. Ils reçoivent des frais et (dans certains cas) une récompense de nouveaux jetons en retour.
Le temps qu'il faut pour trouver un nouveau bloc est soumis à deux facteurs: le hasard et la difficulté. Commencez par hasard. Les mineurs prennent un lot de données de transaction et l'exécutent via un algorithme de hachage, une fonction unidirectionnelle qui - compte tenu d'un ensemble de données particulier - produira toujours la même sortie, mais dont la sortie ne peut pas être inversée pour afficher les données d'origine. Il n'y a aucun moyen de prédire ce que sera un hachage. Un nouveau bloc est trouvé lorsque le hachage répond à une certaine exigence. Étant donné que chaque ensemble de données n'a qu'une seule sortie pour une fonction de hachage donnée, les mineurs doivent ajouter un nonce - un "nombre utilisé une fois" - aux données pour obtenir un nouveau hachage. Si le résultat ne répond toujours pas à l'exigence, le mineur essaie à nouveau avec un nouveau nonce.
L'exigence à laquelle un hachage doit répondre correspond à la difficulté: un hachage valide doit être inférieur à une certaine valeur cible définie automatiquement (et périodiquement ajustée) par le protocole de la crypto-monnaie. Plus la valeur cible est basse, plus le mineur doit répéter la fonction de hachage pour obtenir un résultat acceptable - en d'autres termes, plus la difficulté est élevée. Un mineur peut, en théorie, avoir de la chance et obtenir un hachage valide pour un bloc donné du premier coup: au fil du temps, cependant, une difficulté plus élevée signifie que les mineurs doivent brancher plus de nonces par bloc en moyenne.
À quoi sert la difficulté?
Pourquoi fixer une difficulté plus élevée, si le seul résultat pratique est que les mineurs doivent répéter davantage la même fonction? Le livre blanc Bitcoin explique:
"Pour compenser l'augmentation de la vitesse matérielle et l'intérêt variable pour l'exécution des nœuds au fil du temps, la difficulté de preuve de travail est déterminée par une moyenne mobile ciblant un nombre moyen de blocs par heure. S'ils sont générés trop rapidement, la difficulté augmente. "
Le Bitcoin est conçu pour ajouter un nouveau bloc à la blockchain toutes les 10 minutes en moyenne. (D'autres crypto-monnaies visent des blocs plus fréquents; le litecoin, par exemple, vise 2, 5 minutes.) Le problème est que la quantité de puissance de calcul que les mineurs du réseau contrôlent collectivement peut varier énormément. Lorsque Satoshi Nakamoto a extrait le premier bloc, il n'y avait qu'une seule machine sur le réseau - probablement un simple ordinateur portable ou de bureau. Aujourd'hui, il existe un certain nombre de fermes ASIC étendues de la taille d'un entrepôt (les ASIC sont des machines conçues spécifiquement pour labourer les fonctions de hachage aussi rapidement que possible).
Afin de garantir que le réseau produit un nouveau bloc à un taux moyen constant, le logiciel est réglé pour ajuster automatiquement le hachage cible vers le haut ou vers le bas, ce qui entraîne respectivement une difficulté inférieure ou supérieure. Lorsque Nakamoto a miné le bloc de genèse, la difficulté du bitcoin était de 1.
Pour vérifier la difficulté du bitcoin en temps réel, vous pouvez consulter ce tableau.
Fin juillet 2019, la difficulté était de 9 013 000 milliards de dollars. Le graphique ci-dessous montre l'évolution du niveau de difficulté du bitcoin au fil du temps:
