Che cos'è Nonce?
Un nonce è un'abbreviazione per "numero usato solo una volta", che è un numero aggiunto a un blocco con hash o crittografato in una blockchain che, quando viene ridisegnato, soddisfa le restrizioni del livello di difficoltà. Il nonce è il numero per cui i minatori blockchain stanno risolvendo. Quando viene trovata la soluzione, ai minatori blockchain viene offerta la criptovaluta in cambio.
Key Takeaways
- Nonce, o "numero usato una sola volta", si riferisce al primo numero che un minatore di blockchain deve scoprire prima di risolvere un blocco nella blockchain. Una volta che i calcoli matematici sono risolti dal minatore, sono dotati di criptovaluta per il loro tempo e abilità.Nonce è difficile da trovare ed è considerato un modo per estirpare i minatori di criptovalute meno talentuosi.Il mondo del cripto-mining è impegnativo e spesso è necessario un eccellente potere computazionale per iniziare a provare a risolvere il nonce.
Capire Nonce
La blockchain è la pietra angolare della criptovaluta. Per proteggere la blockchain, i dati dei blocchi precedenti vengono crittografati o "hash" in una serie di numeri e lettere. Questo viene fatto elaborando l'ingresso del blocco attraverso una funzione, che produce un output di lunghezza fissa.
La funzione utilizzata per generare l'hash è deterministica, nel senso 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 (portando al mining) e apporta piccole modifiche al risultato di input in un hash molto diverso. Questo complesso sistema crea la rete di privacy della blockchain.
Considerazioni speciali: Alla scoperta del Nonce
L'aggiunta di transazioni alla blockchain richiede una notevole potenza di elaborazione del computer. Gli individui e le aziende che elaborano i blocchi sono chiamati minatori. I minatori vengono compensati solo se sono i primi a creare un hash che soddisfa un determinato insieme di requisiti, chiamato hash di destinazione.
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 della radice Merkle, il nonce e l'hash di destinazione.
Il mining con successo di un blocco richiede che un minatore sia il primo a indovinare il nonce, che è una stringa casuale di numeri aggiunta al contenuto con hash del blocco e quindi ripassata.
Se l'hash soddisfa i requisiti stabiliti nella destinazione, il blocco viene aggiunto alla blockchain. Scorrere le soluzioni per indovinare il nonce viene indicato come prova del lavoro e il minatore che è in grado di trovare il valore viene assegnato il blocco e pagato in criptovaluta.
Determinare quale stringa utilizzare come nonce richiede una quantità significativa di tentativi ed errori, poiché si tratta di una stringa casuale. Un minatore deve indovinare un nonce, aggiungerlo all'hash dell'intestazione corrente, ridisegnare il valore e confrontarlo con l'hash di destinazione. Se il valore hash risultante soddisfa i requisiti, il minatore ha creato una soluzione e gli viene assegnato il blocco.
È altamente improbabile che un minatore indovini con successo il nonce al primo tentativo, il che significa che il minatore può 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 viene mantenuta invariata 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 vogliono elaborare durante un periodo di tempo specifico e regolano periodicamente la difficoltà al fine di garantire il raggiungimento di questo obiettivo. Se il numero di blocchi elaborati non raggiunge questo obiettivo, la difficoltà verrà ridotta, con la riduzione della difficoltà impostata sulla quantità di tempo oltre il limite del tempo di elaborazione.
