I portafogli software utilizzano numeri casuali per generare Principalechiave privata.
Allora passa Algoritmo deterministico e irreversibile, può ricavarne un numero illimitato di subchiave privata.
Perché abbiamo bisogno di algoritmi deterministici e irreversibili?
perché certezza significa che tutti gli chiave privata secondari possono sempre essere generati dallo stesso chiave privata principale, mentre Irreversibile Ciò significa che il master chiave privata non può essere ricostruito da nessun chiave privata figlio.
è per questo che si chiama Portafoglio gerarchico deterministico (HD).. La struttura di derivazione di chiave privata è simile a un albero: una chiave principale può derivare più chiavi secondarie, ciascuna chiave secondaria può derivare più chiavi secondarie e questo processo può continuare indefinitamente.
Quando crei un portafoglio HD o un portafoglio backup per la prima volta, verrà generato frase seme. frase seme è costituito da un insieme di parole inglesi in sequenza. Questa sequenza verrà utilizzata per generare semi, quindi generare tutti gli chiave privata nel portafoglio dal seed. In altre parole, frase seme è il portafoglio backup, che può essere utilizzato nel portafoglio ripristinare; e il seme corrisponde al numero casuale originale dietro il portafoglio deterministico.
Uno dei grandi vantaggi del portafoglio HD è che richiede solo Principalechiave pubblica può generare un numero qualsiasi di subchiave pubblica. Cioè, è possibile creare nuovi indirizzi pubblici dall'chiave pubblica principale senza accedere all'chiave privata principale o al sub-chiave privata. Tuttavia, questi indirizzi generati sono in definitiva controllati dall'chiave privata principale.
Naturalmente, ci sono dei rischi con questo design. Se frase seme viene esposto, essenzialmente espone tutti gli chiave privata. Una volta che ciò accade, la sicurezza delle risorse digitali nel portafoglio viene effettivamente persa.
Perché hai bisogno di così tanti chiave privata?
Perché gli utenti hanno bisogno di così tanto chiave privata? Ciò può essere ottenuto attraverso transazioni Bitcoin meccanismo di cambiamento per capire.
Il trading di Bitcoin è un ingresso e uscita La struttura dati contiene anche le informazioni sullo script necessarie per trasferire il valore dalla sorgente (input) all'indirizzo di destinazione (output).
Per comprendere gli input e gli output di Bitcoin, devi prima capire UTXO(Output della transazione non spesa). UTXO è l'unità di base delle transazioni Bitcoin e rappresenta l'output della transazione che non è stato ancora speso. Un singolo Bitcoin può effettivamente essere distribuito come UTXO su più transazioni e più blocchi. Bitcoin non ha un saldo del conto semplice registrato centralmente; sulla catena ha invece solo UTXO decentralizzati, controllati dai rispettivi proprietari.
Un UTXO può rappresentare qualsiasi importo di valore, ma una volta creato è indivisibile, proprio come una moneta fisica non può essere divisa a metà. Se il valore degli UTXO è superiore all'importo richiesto per la transazione, l'intero UTXO dovrà essere comunque speso e l'eccedenza verrà restituita in resto.
Ad esempio, supponiamo che tu abbia un UTXO del valore di 20 unità e desideri pagare 1 unità. La transazione deve consumare ben 20 unità UTXO e creare due output: uno che invia 1 unità al destinatario e un altro che invia 19 unità al tuo portafoglio come resto. Pertanto, la maggior parte delle transazioni Bitcoin generano cambiamento.
Ciò porta a un'altra domanda: la modifica dovrebbe essere rispedita all'indirizzo originale o a un indirizzo appena generato?
Quando Satoshi Nakamoto ha progettato Bitcoin, ha introdotto Meccanismo di cambio indirizzo: in genere viene creato un nuovo indirizzo per ricevere il resto per ogni transazione. Ciò aiuta a proteggere la privacy degli utenti e mitiga alcuni rischi per la sicurezza.
Nella vita reale, questo è simile all'apertura di più conti bancari con nomi e identità diversi presso banche diverse. Anche se qualcuno potesse osservare il flusso di fondi in ciascun conto, avrebbe difficoltà a risalire a tutti i fondi fino al vero proprietario della risorsa digitale. Questo è uno dei motivi del relativo anonimato di Bitcoin.
Questo è il motivo per cui gli utenti del portafoglio necessitano di grandi quantità di chiave privata. Poiché chiave pubblica e chiave privata esistono sempre in coppia e ogni transazione può generare un nuovo indirizzo di modifica, memorizzare uno per uno gli chiave privata corrispondenti a questi indirizzi di backup comporterà elevati costi di gestione. Il portafoglio HD risolve questo problema derivando un numero qualsiasi di sub-chiave pubblica e sub-chiave privata da una chiave root e migliora significativamente l'usabilità dei portafogli digitali.
