Eine Nonce ist ein Wert für einen bestimmten Protokollzweck, häufig als einmal verwendete Zahl beschrieben. Ihre Anforderungen hängen vom Kontext ab: Sie muss weder zufällig noch geheim oder weltweit eindeutig sein. Beim Bitcoin-Mining und bei Ethereum-Transaktionen bezeichnet das Wort unterschiedliche Mechanismen.
Bitcoins Miningfeld
Ein Bitcoin-Blockheader enthält eine 32-Bit-Nonce. Miner verändern sie, um einen Headerhash zu finden, der höchstens dem Zielwert entspricht. Das Testen aller Nonces garantiert keinen Erfolg. Durch andere erlaubte Änderungen, etwa an Coinbase-Daten und damit der Merkle-Wurzel, entstehen zusätzliche Kandidaten.
Ethereums Kontosequenz
Eine gewöhnliche Ethereum-Transaktion enthält die erforderliche Nonce des Absenderkontos. Angenommene Transaktionen erhöhen diese Sequenz und verhindern eine wiederholte Ausführung derselben Transaktion bei unveränderter Sequenz. Eine fehlende frühere Nonce kann spätere Transaktionen aufhalten. Unterschiedliche ausstehende Transaktionen mit gleichem Absender und gleicher Nonce konkurrieren nach den Ersetzungsregeln um dieselbe Position.
Weitere Regeln beachten
Ethereum-Konto-Nonces können auch durch Mechanismen wie EIP-7702-Autorisierungen steigen; sie zählen daher nicht immer nur ausgehende Transaktionen. Eine Nonce allein schützt nicht über verschiedene Chains hinweg. Auch Chain-IDs und Signaturregeln zählen. Mining-Nonces und Konto-Nonces sind entsprechend unterschiedlich zu interpretieren.