Aller au contenu principal
Minage

Nonce

Le nonce est le champ de 32 bits que le mineur fait varier pour trouver un hash valide. Il est complété par l'extra-nonce et le coinbase pour un espace de recherche suffisant. Un nonce trouvé = un bloc miné. C'est la pièce centrale de la PoW.

Le compteur magique

Le nonce (number used once) est un champ de 32 bits dans l'en-tête d'un bloc Bitcoin que le mineur fait varier pour tenter de produire un hash valide. Tout le minage se résume à : itérer le nonce de 0 à 2³² - 1, hasher, comparer à la cible. Si aucune valeur ne donne un hash sous la cible, le mineur change autre chose (l'extra-nonce, la racine de Merkle, le timestamp) et recommence.

L'arithmétique du minage

2³² ≈ 4 milliards. Un ASIC moderne fait ~200 TH/s, soit 200 000 milliards de hashs par seconde. Il épuise un nonce complet en moins de 25 microsecondes. C'est pour cela que le nonce seul ne suffit plus : on a besoin du champ extra-nonce (dans la coinbase) pour étendre l'espace de recherche.

Pourquoi 32 bits seulement ?

Le nonce de 32 bits est un héritage du design original de Satoshi, alors qu'il minait sur CPU et qu'un nonce de 32 bits était largement suffisant. Aujourd'hui, c'est devenu une limite serrée — d'où l'introduction de l'extra-nonce et de divers schémas (ASICBoost, etc.) pour optimiser la recherche.

Le nonce, photo de hash

Quand un bloc est trouvé, son hash final dépend du nonce gagnant. Les hashs valides commencent par de longues séquences de zéros (en hex). C'est cette propriété qu'on regarde pour vérifier visuellement la difficulté actuelle : les blocs récents commencent par 19 ou 20 zéros, signe d'une difficulté astronomique.

Pas que pour le minage

Le terme nonce existe aussi en cryptographie générale : valeur arbitraire utilisée une seule fois (par exemple dans une signature ECDSA, où la fuite d'un nonce permet de retrouver la clé privée — l'incident PlayStation 3 de 2010 en est un exemple célèbre).

Termes lies

← Retour au glossaire complet

Glossaire inspire du dictionnaire de Loic Morel sur Pandul.fr.