idee principali

  • Proof of Work (PoW) è un meccanismo di consenso progettato per prevenire la doppia spesa nei sistemi di pagamento digitale.

  • La Proof of Work (PoW) è una parte fondamentale del processo di mining, che prevede l'aggiunta di nuovi blocchi di transazioni alla blockchain e la creazione di nuove unità di criptovaluta.

  • Bitcoin e molte altre criptovalute utilizzano la Proof of Work (PoW) come un modo per proteggere la propria rete e i propri dati blockchain.

l'introduzione

In breve, Proof of Work (PoW) è un meccanismo progettato per prevenire la doppia spesa nei sistemi di pagamento digitale. Bitcoin e molte altre criptovalute utilizzano Proof of Work (PoW) come un modo per proteggere la propria rete blockchain e i suoi dati. Questi meccanismi sono spesso definiti algoritmi di consenso o meccanismi di consenso, perché coinvolgono più parti che raggiungono il consenso senza doversi fidare l’una dell’altra.

Proof of Work è stato il primo algoritmo di consenso ad apparire e rimane uno dei più importanti insieme a Proof of Stake (PoS), poiché è stato introdotto da Satoshi Nakamoto nel Manuale tecnico Bitcoin nel 2008, ma la tecnologia stessa è stata inventata molto prima quella data.

L'algoritmo HashCash di Adam Back è un primo esempio di algoritmo Proof of Work (PoW) pre-criptovaluta, in cui il destinatario poteva limitare lo spam richiedendo una piccola quantità di elaborazione da parte del mittente prima di inviare un'e-mail. L'elaborazione non costa nulla al mittente medio. ma il costo è più alto per chi invia email di massa.

Cos’è la doppia spesa?

La doppia spesa si verifica quando la stessa somma viene spesa più di una volta. Questo termine viene spesso utilizzato esclusivamente nel contesto della moneta digitale: sarebbe infatti difficile spendere due volte la stessa moneta fisica. 

Quando paghi per una tazza di caffè, dai i soldi al cassiere, che li mette nella cassa, quindi non puoi andare in un altro bar sul lato della strada e pagare la stessa banconota per prendere una tazza di caffè caffè. Ma nei sistemi di moneta digitale esiste la possibilità di farlo. 

Probabilmente hai copiato un file sul tuo computer prima di utilizzare i comandi copia e incolla ed è facile inviare lo stesso file via email a decine di persone. Poiché la moneta digitale è costituita solo da dati, sarà necessario impedire alle persone di effettuare una doppia spesa, ovvero di copiare e spendere le stesse unità in luoghi diversi, e un sistema di pagamento digitale che non riesce a prevenire la doppia spesa collasserà in breve tempo.

Per informazioni più dettagliate sulla doppia spesa, puoi leggere la spiegazione della doppia spesa.

Perché la Proof of Work (PoW) è importante?

Se hai letto il nostro articolo sulla tecnologia blockchain, saprai che gli utenti di valute digitali trasmettono costantemente transazioni sulla rete, tuttavia, queste transazioni non sono considerate valide immediatamente, solo dopo essere state confermate e aggiunte sulla blockchain.

La blockchain di Bitcoin, ad esempio, funge da database pubblico (record pubblico) di transazioni che ogni utente può vedere. Immaginatelo in questo modo: tu e tre dei vostri amici avete un taccuino per tenere traccia delle vostre transazioni Bitcoin e ogni volta che uno di voi desidera trasferire valore, lo scrivete in questo modo:

Alice paga Bob 5 BTC, Bob paga Carol 2 BTC, ecc.

Tuttavia, ogni volta che effettui una transazione, devi fare riferimento alla transazione che mostra da dove provengono i fondi, quindi, se Bob paga a Carol 2 BTC, le voci sarebbero effettivamente: 

Bob paga a Carol 2 BTC dalla transazione precedentemente effettuata con Alice.

Quindi abbiamo un modo per tracciare la fonte delle unità BTC, quindi se Bob tenta di effettuare un'altra transazione utilizzando gli stessi 2 BTC che ha inviato a Carol, tutti lo sapranno immediatamente e il gruppo non consentirà che questa transazione venga aggiunta a il taccuino perché quella cifra è già stata spesa.

Questo può funzionare bene in piccoli gruppi in cui tutti si conoscono, poiché concordano su quali amici dovrebbero aggiungere transazioni al taccuino. Ma come sarebbe con un gruppo di 10.000 iscritti? La faccenda del diario non funzionerà, perché nessuno si fida che gli estranei lo facciano.

È qui che entra in gioco il meccanismo Proof of Work (PoW), che garantisce che gli utenti non spendano soldi che non hanno il diritto di spendere. Utilizzando la teoria dei giochi con la crittografia, l'algoritmo Proof of Work (PoW) lo consente a chiunque aggiornare la blockchain secondo le regole del sistema.

Come funziona la Proof of Work (PoW)?

Immagina che il nostro taccuino dell'esempio sopra sia una blockchain, ma non aggiungiamo le transazioni una per una: le raccogliamo tutte in una volta in blocchi, annunciamo le transazioni alla rete e quindi gli utenti che creano i blocchi le uniscono in un candidato blocco e le transazioni saranno valide solo una volta convertite. Il blocco nominato viene convertito in un blocco confermato, il che significa che è stato aggiunto alla blockchain.

Il processo di controllo delle transazioni e di aggiunta di nuovi blocchi si chiama mining ed è un processo costoso e difficile, ma anche gratificante. I premi in blocco vengono assegnati dalle commissioni di transazione pagate dagli utenti e dai nuovi bitcoin generati dal protocollo. 

Il meccanismo Proof of Work (PoW) richiede che il miner (l'utente che crea il blocco) utilizzi alcune delle proprie risorse come elettricità e potenza di calcolo per eseguire l'hashing dei dati del blocco candidato fino a quando non viene trovata una soluzione al puzzle.

L'hashing dei dati del blocco si riferisce al passaggio attraverso una funzione hash per generare il valore hash del blocco. L'hash del blocco agisce come un'"impronta digitale": rappresenta l'identità dei dati di input e ogni blocco ha un valore hash univoco.

In altre parole, il miner deve controllare e raccogliere le transazioni in sospeso, organizzarle in un blocco candidato e passare i dati del blocco attraverso la funzione hash per generare un valore hash corretto. Se riesce a trovare un valore hash corretto per il blocco candidato, lo trasmette alla rete, aggiungendo il blocco alla blockchain e raccoglie i premi minerari.

Quando il minatore trasmette il blocco e l'hash nominati alla rete, gli altri partecipanti alla rete ripeteranno l'hash per verificare che l'output sia effettivamente valido. 

Sebbene siano necessari innumerevoli tentativi di hash per trovare un valore hash corretto, è facile per chiunque verificare che il valore hash generato sia corretto, deve solo fornire lo stesso input (dati del blocco) tramite la funzione hash e verificare la corrispondenza Output .

Per una directory di lavoro, è necessario fornire dati i cui hash soddisfano condizioni specifiche. Ma non sai come farlo. L'unica opzione che ti rimane è passare i tuoi dati attraverso una funzione hash e verificare che soddisfino le condizioni. Se non corrispondono, dovrai modificare i tuoi dati proporzionalmente per ottenere un valore hash diverso. La modifica di una lettera nei dati otterrà un risultato diverso, quindi non è possibile prevedere l'output.

Di conseguenza, se vuoi creare un blocco, stai giocando a un gioco d'ipotesi, in genere, prenderai tutte le informazioni sulle transazioni che desideri aggiungere e alcuni altri dati importanti, e poi li unirai insieme, ma da allora. il set di dati non cambierà, dovrai aggiungere una variabile, altrimenti otterrai lo stesso valore hash dell'output. Chiamiamo queste informazioni variabili codice privato, che è un numero che cambierai ad ogni tentativo, per ottenere ogni volta un valore hash diverso.

In breve, il mining è il processo di raccolta dei dati blockchain e di hash con il codice privato fino a trovare un valore hash specifico. Se trovi un valore hash che soddisfa le condizioni specificate nel protocollo, otterrai il diritto di trasmettere il nuovo blocco sulla rete. A questo punto, gli altri partecipanti alla rete aggiornano le loro blockchain per aggiungere il nuovo blocco.

Per le principali criptovalute in questo momento, le condizioni sono incredibilmente difficili da soddisfare. Maggiore è l’hash rate sulla rete, più difficile sarà trovare un valore hash corretto. Questo viene fatto per garantire che i blocchi non vengano trovati rapidamente.

Come puoi immaginare, indovinare un numero elevato di valori hash può essere molto costoso per il tuo computer. Poiché sprecherai cicli di calcolo ed elettricità. Ma il protocollo ti ricompenserà con una valuta digitale se trovi un valore hash corretto.

Riassumiamo ciò che sappiamo finora:

  • Il mining è difficile e costoso, ma fornisce sicurezza alla rete.

  • I minatori che riescono a produrre un blocco sano ricevono ricompense in criptovalute di nuova emissione e commissioni di transazione.

  • La generazione di un valore hash corretto richiede tempo, ma altri utenti possono facilmente verificarne la validità ripetendo il processo di hashing.

Sembra buono finora. Ma cosa succede se vuoi imbrogliare? Cosa ti impedirà di mettere un mucchio di transazioni fraudolente in un blocco e di produrre un valore hash valido?

Ecco il ruolo della crittografia a chiave pubblica Non discuteremo questo argomento in dettaglio in questo articolo, ma puoi fare riferimento a Che cos'è la crittografia a chiave pubblica? Per uno sguardo completo. In breve, ci sono alcuni ottimi trucchi crittografici che consentono a qualsiasi utente di verificare se una persona ha o meno il diritto di trasferire il denaro che sta cercando di spendere.

Quando crei una transazione, la firmi e chiunque sulla rete può confrontare la tua firma con la tua chiave pubblica, verificare che corrispondano e controllerà anche la tua capacità di spendere i tuoi soldi e assicurarsi che il tuo input totale sia superiore al tuo produzione totale (vale a dire che non stai spendendo più di quanto hai).

La rete rifiuterà automaticamente qualsiasi blocco che contenga una transazione non valida. Cercare di imbrogliare ti costerà caro. Sprecherai le tue risorse senza ottenere alcuna ricompensa.

Ecco il fascino della Proof of Work (PoW): rende la frode costosa e l'agire con integrità redditizio. Qualsiasi minatore coscienzioso cerca un ritorno sul suo investimento, quindi ci si aspetta che agisca in modo da garantire molto probabilmente le entrate.

Proof of Work (PoW) e Proof of Stake (PoS)

Esistono molti algoritmi di consenso oltre al Proof of Work (PoW), il più famoso dei quali è Proof of Stake (PoS). Il concetto risale al 2011 ed è stato implementato in Ethereum e in molti altri protocolli.

Nei sistemi proof of stake, i miner vengono sostituiti dai validatori. Non è previsto alcun mining né competizione per indovinare i valori dell'hash. Invece, gli utenti vengono selezionati in modo casuale: se selezionati, devono proporre (o “formare”) un blocco. Se il blocco è corretto, ricevono una ricompensa composta da commissioni sulle transazioni del blocco.

Tuttavia non è possibile scegliere nessun utente, bensì il protocollo seleziona gli utenti in base a diversi fattori. Per qualificarsi, i partecipanti devono riservare una quota, ovvero un importo predeterminato della valuta nativa della blockchain. Una quota funge da garanzia: proprio come gli imputati pagano una grossa somma di denaro per impedire loro di saltare un processo, i revisori dei conti riservano una quota per prevenire le frodi. Se tentano di imbrogliare, la loro puntata verrà persa (o parte di essa verrà detratta).

Una directory di collegamento di palo offre più vantaggi di una directory di lavoro. Il più notevole di questi vantaggi è la ridotta impronta di carbonio, poiché nel PSI non sono necessarie fattorie minerarie ad alta energia, poiché l’elettricità consumata rappresenta solo una piccola frazione di quella consumata dal meccanismo PSI. 

Tuttavia, la Proof of Stake (PoS) non ha la stessa reputazione e prestigio della Proof of Work (PoW) e, sebbene possa essere considerato uno spreco, il mining è l’unico algoritmo di consenso dimostrato nella pratica da oltre un decennio, con il meccanismo Proof of Stake che contribuisce al PoW di Bitcoin ha assicurato transazioni per trilioni di dollari sin dal suo lancio e lo stoccaggio deve essere sottoposto ad adeguati test a lungo termine per garantire che il PoS possa competere con il PoS in termini di funzionalità di sicurezza.

Considerazioni conclusive

La Proof of Action è stata la soluzione originale al problema della doppia spesa e si è dimostrata affidabile e sicura. Bitcoin ha dimostrato che non abbiamo bisogno delle autorità centrali per impedire che il denaro venga speso due volte. Con un uso intelligente della crittografia, delle funzioni hash e della teoria dei giochi, gli utenti possono concordare lo stato di un database finanziario in un ambiente decentralizzato.

Articoli correlati

  • Cos’è il mining di valuta digitale? Qual è il meccanismo del suo lavoro?

  • Cos’è la crittografia a chiave pubblica?

  • Qual è l'algoritmo di consenso nella blockchain?

Dichiarazione di non responsabilità: questo contenuto viene fornito "così com'è" solo per informazioni generali e scopi didattici, senza alcuna dichiarazione o garanzia di alcun tipo. Non deve essere interpretato come consulenza finanziaria, legale o di altro tipo, né è inteso come una raccomandazione all'acquisto di un particolare prodotto o servizio. È necessario cercare l'aiuto di consulenti specializzati per fornire consulenze. Se l'articolo è fornito da una terza parte, tieni presente che le opinioni espresse sono quelle di tale terza parte e non riflettono necessariamente le opinioni di Binance Academy. Si prega di leggere il nostro disclaimer completo qui per maggiori dettagli. Le risorse digitali possono essere soggette a fluttuazioni di prezzo, il valore del tuo investimento può aumentare o diminuire e potresti non recuperare l'importo investito. Sei l'unico responsabile delle tue decisioni di investimento e Binance Academy non è responsabile per eventuali perdite che potresti subire. Questo articolo non deve essere interpretato come una consulenza finanziaria, legale o professionale. Per ulteriori informazioni, consultare i nostri Termini di utilizzo e Avvertenza sui rischi.