Nonce: cos’è questo numero e perchè è fondamentale per Bitcoin e la Blockchain

La parola nonce è l’abbreviazione di “numero usato una sola volta”. Può sembrare un concetto semplice, ma i suoi casi d’uso vanno da piccole transazioni a stazioni spaziali.

In finanza e crittografia, un nonce si riferisce a un numero generato casualmente e viene utilizzato per verificare le transazioni o eseguire controlli di sicurezza.

Tre cose rendono uniche le criptovalute: decentralizzazione, scalabilità e sicurezza. In primo luogo, le criptovalute possono funzionare senza un organo di governo centrale. Possono anche scalare abbastanza per sfidare le valute legali.

nonce blockchain hash
Adobe Stock

Infine, utilizzano una delle più alte forme di sicurezza disponibili per l’umanità: la crittografia crittografica. In questo articolo impareremo un concetto alla base della sicurezza blockchain: il nonce, cos’è e come viene utilizzato nelle criptovalute.

Cos’è un nonce e a cosa serve

La parola nonce è l’abbreviazione di “numero usato una sola volta”. Può sembrare un concetto semplice, ma i suoi casi d’uso vanno da piccole transazioni a stazioni spaziali. In finanza e crittografia, un nonce indicca un numero generato in modo randomico ed è in genere usato per verificare una transazione o eseguire controlli di sicurezza.

Ad esempio, i captcha che incontriamo frequentemente sui siti Web sono nonce (anche se contengono lettere), poiché vengono utilizzati solo una volta. In uno scenario molto più semplice, anche le password monouso (OTP) utilizzate per convalidare le transazioni sono nonce con l’unico scopo di convalidare brevemente qualcosa.

Quale funzione ha un nonce in una blockchain

Un nonce è un numero casuale a 32 bit che i miner in diversi blockchain proof of work, incluso Bitcoin, usano come base per i loro calcoli hash. Per calcolare un block hash, i miner competono tra loro tentando di indovinare un nonce valido.

Un hash di blocco funziona come una sorta di numero di riferimento del blocco blockchain. Questo numero di riferimento deve rispettare determinate specifiche, come iniziare con un certo numero di zeri. Prima di produrre un output valido, i miner bitcoin devono eseguire un numero assurdamente elevato di funzioni hash con numerosi valori nonce diversi.

Il blocco successivo viene aggiunto alla blockchain e premiato al primo miner che trova un nonce che genera un hash di blocco legittimo.

I miner utilizzano un metodo per tentativi ed errori in cui ogni calcolo utilizza un valore nonce diverso. Le blockchain usano questa tecnica perché non c’è quasi nessuna possibilità di indovinare un nonce valido. Pertanto, per calcolare un block hash valido, i miner devono disporre di sofisticati sistemi informatici in grado di testare ed eliminare milioni di diverse possibilità nonce. Un golden nonce è un nonce che produce un hash di blocco valido.

Tieni presente che un nonce può verificarsi più di 4 miliardi di volte perché è un numero a 32 bit. Inoltre, la presenza di un “extra nonce” fa spazio a un numero molto più grande con decine di miliardi di combinazioni possibili.

Naturalmente, essendoci più miner, capiterà più frequentemente di calcolare un block hash valido e trovare un nonce. Di conseguenza, la difficoltà di mining viene modificata per mantenere il tempo di blocco Bitcoin, che è di circa 10 minuti.

Per raggiungere questo obiettivo, il protocollo modificherà la quantità di zeri nell’hash del blocco, alterando le specifiche del nonce e mantenendo l’attrezzatura mineraria all’erta. Il “lavoro” nel meccanismo del consenso proof of work è il processo di provare vari nonce fino a quando non viene scoperto un hash valido.

Conclusioni

Di conseguenza, un nonce è fondamentale per il meccanismo di consenso del PoW, come è evidente. È impossibile aggiungere nuovi blocchi alla blockchain senza aver trovato il giusto nonce. È anche un modo fantastico per proteggere la rete e aumentare la fiducia degli utenti.

Impostazioni privacy