nonce

Leestijd: 2 minuti

Un nuntius verwijst naar een getal of waarde die maar één keer kan worden gebruikt.

Nonces worden vaak gebruikt in authenticatieprotocollen en in cryptografische hash-functies. In de context van technologie blockchainverwijst een nonce naar een pseudo-willekeurig getal dat tijdens het extractieproces als teller wordt gebruikt.

Bitcoin-mijnwerkers moeten bijvoorbeeld proberen een geldige nonce te raden terwijl ze meerdere pogingen doen om een ​​blokhash te berekenen die aan bepaalde vereisten voldoet (d.w.z. begint met een bepaald aantal nullen). Bij het concurreren om een ​​nieuw blok te minen, heeft de eerste mijnwerker die een nonce vindt die resulteert in een geldige blokhash het recht om het volgende blok in de blockchain toe te voegen - en wordt hiervoor beloond.

Met andere woorden, het mijnbouwproces bestaat uit miners die een groot aantal hash-functies uitvoeren met veel verschillende nonce-waarden totdat geldige uitvoer wordt geproduceerd. Als de hashing-output van een mijnwerker onder de vooraf bepaalde drempel komt, wordt het blok als geldig beschouwd en aan de blockchain toegevoegd. Als de uitvoer ongeldig is, blijft de mijnwerker proberen met verschillende nonce-waarden. Wanneer een nieuw blok met succes is geëxtraheerd en gevalideerd, begint het proces opnieuw.

In Bitcoin - en in de meeste Proof of Work-systemen - is de nonce slechts een willekeurig getal dat miners gebruiken om de uitvoer van hun hash-berekeningen te herhalen. Mijnwerkers hanteren een aanpak met vallen en opstaan, waarbij elke berekening een nieuwe nonce-waarde krijgt. Ze doen dit omdat de kans op het nauwkeurig raden van een geldige nonce bijna nul is.

Het gemiddelde aantal hashing-pogingen wordt automatisch aangepast door het protocol om ervoor te zorgen dat elk nieuw blok - gemiddeld - elke 10 minuten wordt gegenereerd. Dit proces staat bekend als moeilijkheidsgraad aanpassing en het is wat de extractiedrempel bepaalt (d.w.z. hoeveel nullen de blokhash moet als geldig worden beschouwd). De moeilijkheid om een ​​nieuw blok te extraheren is gerelateerd aan de hoeveelheid hashkracht (hash-snelheid of hashrate) die zich bezighouden met een blockchain-systeem. Hoe meer hash-kracht er aan het netwerk wordt toegewezen, hoe hoger de drempel zal zijn, wat betekent dat er meer rekenkracht nodig zal zijn om een ​​competitieve en succesvolle mijnwerker te zijn. Omgekeerd, als miners besluiten om te stoppen met minen, wordt de moeilijkheidsgraad aangepast en zal de drempel dalen, zodat er minder rekenkracht nodig is om te minen, maar het protocol zorgt ervoor dat de blokgeneratie een schema van 10 minuten volgt, hoe dan ook.