Nonce
Cos’è Nonce?
Un nonce è l’abbreviazione di “numero usato una sola volta”, che è un numero aggiunto a un blocco con hash o crittografato in una blockchain che, quando modificato, soddisfa le restrizioni del livello di difficoltà. Il nonce è il numero per cui i minatori blockchain stanno risolvendo. Quando viene trovata la soluzione, ai miner di blockchain viene offerta in cambio criptovaluta.
Punti chiave
- Nonce, o un “numero usato solo una volta”, si riferisce al primo numero che un minatore di blockchain deve scoprire prima di risolvere per un blocco nella blockchain.
- Una volta che i calcoli matematici sono stati risolti dal minatore, vengono dotati di criptovaluta per il loro tempo e le loro abilità.
- Nonce è difficile da trovare ed è considerato un modo per eliminare i minatori crittografici meno talentuosi.
- Il mondo del mining di criptovalute è impegnativo e spesso è necessaria un’eccellente potenza di calcolo per iniziare a provare a risolvere il nonce.
Capire Nonce
La blockchain è la pietra angolare della criptovaluta. Al fine di mantenere la blockchain sicura, i dati dei blocchi precedenti vengono crittografati o “sottoposti ad hashing” in una serie di numeri e lettere. Questo viene fatto elaborando l’ingresso del blocco tramite una funzione, che produce un’uscita di lunghezza fissa.
La funzione utilizzata per generare l’ hash è deterministica, il che significa che produrrà lo stesso risultato ogni volta che viene utilizzato lo stesso input. Significa anche che la funzione può generare un input con hash in modo efficiente, rende difficile determinare l’input (che porta al mining ) e apporta piccole modifiche al risultato dell’input in un hash molto diverso. Questo complesso sistema crea la rete della privacy della blockchain.
Considerazioni speciali: Alla scoperta del Nonce
L’aggiunta di transazioni alla blockchain richiede una notevole potenza di elaborazione del computer. Le persone e le aziende che elaborano i blocchi sono chiamate minatori. I miner vengono compensati solo se sono i primi a creare un hash che soddisfa un certo insieme di requisiti, chiamato hash target.
Il processo di indovinare l’hash inizia nell’intestazione del blocco. Contiene il numero di versione del blocco, un timestamp, l’hash utilizzato nel blocco precedente, l’hash di Merkle Root, il nonce e l’hash di destinazione.
Il mining di un blocco richiede che un miner sia il primo a indovinare il nonce, che è una stringa casuale di numeri aggiunti al contenuto hash del blocco e quindi rehash.
Se l’hash soddisfa i requisiti stabiliti nel target, il blocco viene aggiunto alla blockchain. Il ciclo tra le soluzioni per indovinare il nonce viene indicato come prova del lavoro e il minatore che è in grado di trovare il valore riceve il blocco e pagato in criptovaluta.
Determinare quale stringa utilizzare come nonce richiede una quantità significativa di tentativi ed errori, poiché è una stringa casuale. Un miner deve indovinare un nonce, aggiungerlo all’hash dell’intestazione corrente, ripetere il valore e confrontarlo con l’hash di destinazione. Se il valore hash risultante soddisfa i requisiti, il miner ha creato una soluzione e si aggiudica il blocco.
È altamente improbabile che un minatore indovini con successo il nonce al primo tentativo, il che significa che il minatore potrebbe potenzialmente testare un gran numero di opzioni nonce prima di farlo bene. Maggiore è la difficoltà, una misura di quanto sia difficile creare un hash inferiore al target, maggiore è il tempo necessario per generare una soluzione.
La difficoltà di blocco è mantenuta la stessa su tutta la rete, il che significa che tutti i minatori hanno le stesse possibilità di capire l’hash corretto. Le reti di criptovaluta in genere stabiliscono un numero target di blocchi che desiderano elaborare durante un periodo di tempo specifico e regolano periodicamente la difficoltà per garantire che questo obiettivo venga raggiunto. Se il numero di blocchi elaborati non soddisfa questo obiettivo, la difficoltà verrà ridotta, con la riduzione della difficoltà impostata sulla quantità di tempo oltre il limite del tempo di elaborazione.