Principale » attività commerciale » In che modo una catena di blocchi impedisce la doppia spesa di Bitcoin?

In che modo una catena di blocchi impedisce la doppia spesa di Bitcoin?

attività commerciale : In che modo una catena di blocchi impedisce la doppia spesa di Bitcoin?

Una delle preoccupazioni principali di qualsiasi sviluppatore di criptovaluta è il problema della doppia spesa. Ciò si riferisce all'incidenza di un individuo che spende più di una volta un saldo di quella criptovaluta, creando effettivamente una disparità tra il record di spesa e la quantità di quella criptovaluta disponibile, nonché il modo in cui è distribuita.

La questione della doppia spesa è un problema che il denaro non ha; se paghi un sandwich con una fattura di $ 10, consegnando quella fattura al produttore del sandwich, non puoi voltarti e spendere lo stesso $ 10 altrove. Una transazione che utilizza una valuta digitale come bitcoin, tuttavia, avviene interamente in modo digitale. Ciò significa che è possibile copiare i dettagli della transazione e ritrasmetterli in modo tale che lo stesso BTC possa essere speso più volte da un singolo proprietario. Di seguito, esamineremo come gli sviluppatori di criptovaluta hanno assicurato che la doppia spesa non può avvenire.

Key Takeaways

  • Un problema tecnico che nasce dall'idea di una valuta digitale è la capacità di qualcuno di duplicare il denaro digitale e spenderlo simultaneamente in due o più posti.
  • Questo problema di "doppia spesa" è evitato nelle criptovalute basate su blockchain come Bitcoin utilizzando un meccanismo di consenso noto come proof-of-work (PoW).
  • Questo PoW è realizzato da una rete decentralizzata di "minatori" che non solo garantisce la fedeltà delle transazioni passate sul libro mastro della blockchain, ma rileva e previene anche la doppia spesa.

Comprensione della Blockchain

La blockchain che sta alla base di una valuta digitale come il bitcoin non è in grado di prevenire da sola la doppia spesa. Piuttosto, tutte le diverse transazioni che coinvolgono la criptovaluta rilevante vengono registrate nella blockchain, dove vengono verificate e protette separatamente da un processo di conferma. Nel caso del bitcoin e di molte altre criptovalute, le transazioni che sono state confermate in questo modo diventano irreversibili; sono pubblicati pubblicamente e mantenuti per sempre.

Bitcoin è stata la prima grande valuta digitale a risolvere il problema della doppia spesa. Lo ha fatto implementando questo meccanismo di conferma e mantenendo un sistema di contabilità generale universale. In questo modo, la blockchain bitcoin conserva i record delle transazioni timestamp risalenti alla fondazione della criptovaluta nel 2009.

In termini di Bitcoin, un "blocco" è un file di dati registrati in modo permanente. Tutte le transazioni recenti sono scritte in blocchi, proprio come un registro delle transazioni di borsa in una borsa. Le informazioni dai blocchi vengono aggiunte al libro mastro ogni pochi minuti; tutti i nodi della rete mantengono una copia del libro mastro blockchain. Gli utenti sono in grado di navigare nella blockchain per bitcoin e rivedere le transazioni solo in termini di quantità. I dettagli sulle identità dell'acquirente e del venditore in qualsiasi transazione sono protetti da una crittografia di alto livello, che protegge anche il libro mastro dalla manomissione da parte di fonti esterne. Quando il libro mastro blockchain viene aggiornato, lo sono anche tutti i portafogli bitcoin.

Gestire la doppia spesa

Immagina di avere 1 BTC e di tentare di spenderlo due volte in due transazioni separate. Puoi provare a farlo inviando lo stesso BTC a due indirizzi di portafogli bitcoin separati. Entrambe queste transazioni andranno quindi nel pool di transazioni non confermate. La prima transazione verrebbe approvata tramite il meccanismo di conferma e quindi verificata nel blocco successivo. Tuttavia, la seconda transazione verrebbe riconosciuta non valida dal processo di conferma e non verrebbe verificata. Se entrambe le transazioni vengono estratte dal pool per la conferma contemporaneamente, la transazione con il maggior numero di conferme verrà inclusa nella blockchain, mentre l'altra verrà scartata.

Mentre questo affronta efficacemente il problema della doppia spesa, non è privo di problemi. Ad esempio, il destinatario previsto della seconda transazione (non riuscita) non avrebbe fallito la parte della transazione stessa, eppure quella persona non avrebbe ricevuto il bitcoin che aveva previsto. Molti commercianti attendono almeno 6 conferme di una transazione (il che significa che 6 blocchi successivi di transazioni sono stati aggiunti alla blockchain dopo la transazione in questione). A questo punto, il commerciante può tranquillamente presumere che la transazione sia valida.

Rimangono altre vulnerabilità in questo sistema che potrebbero consentire attacchi a doppia spesa. Ad esempio, se un attaccante è in qualche modo in grado di controllare almeno il 51% della potenza della rete, può impegnare una doppia spesa. Se un attaccante fosse in qualche modo in grado di ottenere il controllo di questo potere computazionale, potrebbe invertire le transazioni e creare una blockchain separata e privata. Tuttavia, la rapida crescita del bitcoin ha praticamente assicurato che questo tipo di attacco è impossibile. (Per ulteriori informazioni, vedi Attenzione a queste cinque truffe Bitcoin)

Spiegazione di Proof of Work & 'Mining'

Ora diventiamo un po 'più tecnici. Il modo in cui gli utenti rilevano manomissioni come un tentativo di doppio spendere in pratica è attraverso hash, lunghe stringhe di numeri che servono come prova del lavoro (PoW). Inserisci un determinato set di dati attraverso una funzione hash (bitcoin usa SHA-256) e genererà sempre e solo un hash. A causa dell '"effetto valanga", tuttavia, anche una piccola modifica a qualsiasi porzione dei dati originali comporterà un hash totalmente irriconoscibile. Qualunque sia la dimensione del set di dati originale, l'hash generato da una determinata funzione avrà la stessa lunghezza. L'hash è una funzione unidirezionale: non può essere utilizzato per ottenere i dati originali, solo per verificare che i dati che hanno generato l'hash corrispondano ai dati originali.

Generare qualsiasi hash per un insieme di transazioni bitcoin sarebbe banale per un computer moderno, quindi per trasformare il processo in "lavoro", la rete bitcoin pone un certo livello di "difficoltà". Questa impostazione viene regolata in modo che un nuovo blocco venga "estratto" - aggiunto alla blockchain generando un hash valido - circa ogni 10 minuti. L'impostazione della difficoltà si ottiene stabilendo un "target" per l'hash: più basso è il target, più piccolo è l'insieme di hash validi e più difficile è generarne uno. In pratica, questo significa un hash che inizia con una lunga stringa di zeri: l'hash per il blocco # 429818, ad esempio, è 000000000000000004dd3426129639082239efd583b5273b1bd75e8d78ff2e8d. Quel blocco contiene 2.012 transazioni che coinvolgono poco più di 1.000 bitcoin, nonché l'intestazione del blocco precedente. Se un utente modificasse un importo della transazione di 0, 0001 bitcoin, l'hash risultante sarebbe irriconoscibile e la rete respingerebbe la frode.

Dato che un determinato set di dati può generare solo un hash, in che modo i minatori si assicurano che generino un hash al di sotto del target? Modificano l'input aggiungendo un numero intero, chiamato nonce ("numero usato una volta"). Una volta trovato un hash valido, viene trasmesso alla rete e il blocco viene aggiunto alla blockchain.

L'estrazione mineraria è un processo competitivo, ma è più una lotteria che una gara. In media, qualcuno genererà una prova accettabile del lavoro ogni dieci minuti, ma chi sarà sarà la supposizione di chiunque. I minatori si riuniscono per aumentare le possibilità di blocchi di mining, che generano commissioni di transazione e, per un tempo limitato, una ricompensa di bitcoin di nuova creazione.

La prova del lavoro rende estremamente difficile modificare qualsiasi aspetto della blockchain, poiché una tale modifica richiederebbe il re-mining di tutti i blocchi successivi. Inoltre, è difficile per un utente o un pool di utenti monopolizzare la potenza di calcolo della rete, poiché i macchinari e la potenza necessari per completare le funzioni di hash sono costosi.

Confronta i conti di investimento Nome del fornitore Descrizione Descrizione dell'inserzionista × Le offerte che compaiono in questa tabella provengono da società di persone da cui Investopedia riceve un compenso.
Raccomandato
Lascia Il Tuo Commento