Come le criptovalute utilizzano la crittografia?

La guida per principianti alla crittografia
Quando il protocollo Bitcoin è stato lanciato nel 2009, al mondo è stato presentato un nuovo tipo di sistema valutario, protetto ed emesso in un modo completamente diverso rispetto al denaro tradizionale.
Le valute fiat come il dollaro statunitense o lo yen giapponese sono garantite dalla fiducia nel sistema bancario tradizionale ed emesse dalla rispettiva banca centrale di ciascun paese. Ogni nuova valuta entra in circolazione in base a una politica monetaria flessibile decisa da ciascun governo nazionale. In un certo senso, le valute fiat sono sostenute dalla fiducia nella potenza finanziaria dei singoli paesi e dagli eserciti che proteggono tale potenza.
Bitcoin, d'altra parte, e successivamente tutte le criptovalute create sulla scia del lancio di Bitcoin, sono protette ed emesse utilizzando la pratica scientifica della "crittografia".
In definitiva, Bitcoin opera su una politica monetaria predeterminata e controllata da computer che nessuna singola persona, azienda o governo può modificare. Anziché riporre fiducia nel governo o nelle istituzioni, gli utenti Bitcoin ripongono fiducia nella crittografia e nel set trasparente di regole del protocollo che gli consentono di operare in modo affidabile indipendentemente dal suo prezzo di mercato o dal sentiment del mercato.

Cos'è la crittografia?
La crittografia è lo studio della cifratura e decifratura delle informazioni. In breve, è la pratica di alterare un messaggio in modo che solo il mittente e il destinatario o i destinatari previsti possano comprenderlo.
Se un messaggio crittografato dovesse essere intercettato da qualcuno diverso dal destinatario previsto, la crittografia renderebbe quasi impossibile per l'intercettatore comprendere le informazioni che conteneva.
Uno dei primi esempi di crittografia risale al VII secolo a.C., quando gli antichi Greci avvolgevano strisce di cuoio con messaggi segreti scritti su di esse attorno a bastoni – un metodo di crittografia noto come scytale. Una volta srotolata, la striscia di cuoio presentava una serie di lettere che solo una persona con un bastone simile di uguale diametro poteva decifrare.
Durante la guerra, la crittografia ha svolto un ruolo vitale nella sicurezza delle comunicazioni che potevano essere intercettate tra forze distribuite. Nella Seconda Guerra Mondiale, l'uso della crittografia per decifrare le trasmissioni radio naziste crittografate dalla macchina cifratrice Enigma si rivelò fondamentale per porre fine all'invasione in Europa.
Avanti veloce fino ad oggi, la crittografia svolge ora un ruolo fondamentale nella sicurezza e nell'emissione di criptovalute come Bitcoin.
La crittografia è un componente importante delle criptovalute, utilizzata per:
- Creare coppie di chiavi per wallet crypto
- Emettere nuovi Bitcoin tramite il processo di mining
- Firmare digitalmente i messaggi di transazione
Come Bitcoin usa la crittografia?
Sicurezza della rete
La somma totale delle risorse computazionali dirette al mining di Bitcoin è ciò che aiuta a proteggere la rete dagli attacchi informatici. Questo è noto collettivamente come "hash rate" di una rete. Più miner ci sono sulla rete, maggiore è l'hash rate e maggiore è la quantità di potenza computazionale necessaria per sopraffare la rete con una maggioranza del 51%.
Un attacco del 51% è una delle maggiori minacce per le reti blockchain pubbliche. Gli agenti malintenzionati che sono in grado di raggruppare risorse sufficienti per controllare almeno il 51% dell'hash rate di una blockchain ottengono la capacità di bloccare le transazioni in entrata, modificare l'ordine delle transazioni e spendere due volte i fondi. Tuttavia, rendendo il processo computazionalmente difficile, la rete Bitcoin impedisce agli attori malintenzionati di prendere il controllo della rete.
Immutabilità
L'hashing SHA-256 è anche responsabile di rendere immutabili le transazioni basate su blockchain.
Una volta che le transazioni sono raggruppate in nuovi blocchi e verificate da tutti gli altri volontari della rete, ogni messaggio di transazione viene sottoposto a hashing utilizzando l'algoritmo crittografico SHA-256.
Queste transazioni già hashate vengono quindi sistematicamente hashate a coppie per creare qualcosa noto come "Merkle Tree". Le coppie di transazioni vengono hashate insieme fino a quando, alla fine, tutte le transazioni all'interno del blocco sono rappresentate da un singolo valore hash. Questo singolo valore diventa la Merkle Root e viene memorizzato nell'intestazione del blocco.
Poiché gli hash sono deterministici – il che significa che lo stesso input creerà sempre lo stesso valore di output unico – qualsiasi tentativo da parte di attori malintenzionati di alterare un blocco di transazioni si tradurrà in un valore Merkle Root interamente nuovo. Altri volontari nel sistema sarebbero in grado di vedere la Merkle Root alterata rispetto al blocco valido e rifiutarla, impedendo unanimemente la corruzione.
Operazione senza fiducia
La natura deterministica degli algoritmi crittografici consente agli utenti della rete di effettuare transazioni Bitcoin senza la necessità di un intermediario fidato per verificare ed elaborare i pagamenti.
Mantenendo la decentralizzazione e rimuovendo l'intervento umano, le transazioni possono essere elaborate in modo significativamente più rapido e le commissioni sono spesso molto più economiche rispetto alle soluzioni bancarie tradizionali.
Quale crittografia usa Bitcoin?
Generazione di chiavi private e pubbliche
Bitcoin utilizza la crittografia a curva ellittica (ECC) e l'algoritmo di hash sicuro 256 (SHA-256) per generare chiavi pubbliche dalle rispettive chiavi private.
Una chiave pubblica viene utilizzata per creare un indirizzo di wallet crypto per ricevere transazioni in entrata, mentre la chiave privata è necessaria per firmare le transazioni e dimostrare la proprietà dei fondi.
Puoi pensare alla chiave privata come al tuo PIN bancario e alla chiave pubblica come al tuo numero di conto bancario. Un hacker ha bisogno di entrambi per fare qualcosa di spiacevole alle tue finanze.
La chiave privata è la parte cruciale della coppia di chiavi ed è memorizzata in un wallet crypto. Tecnicamente, un wallet crypto memorizza l'accesso di una persona ai propri fondi crypto – non la criptovaluta stessa. I fondi stessi sono semplicemente voci di dati registrate sulla blockchain e possono essere identificati e sbloccati utilizzando le chiavi memorizzate nel tuo wallet.
Crittografia a curva ellittica
L'ECC è l'uso di una speciale curva matematica orizzontalmente simmetrica. Se si traccia una linea attraverso questa curva, essa intersecherà la forma fino a un massimo di tre volte. L'ECC è una parte importante della criptovaluta ed è ciò che consente agli utenti di generare una chiave pubblica.
Per generare una coppia di chiavi Bitcoin, è necessario prima creare una chiave privata.
Una chiave privata Bitcoin è un numero a 256 bit generato casualmente (tra 1 e 2²⁵⁶, ovvero due elevato alla potenza di duecentocinquantasei – un numero incredibilmente grande!). Su servizi come Kraken, questo numero viene creato automaticamente quando si configura un nuovo wallet crypto.
La chiave pubblica viene quindi generata da questo numero utilizzando la moltiplicazione a curva ellittica. Ciò comporta la presa di un punto di partenza su una curva ellittica (noto come punto generatore) e la sua moltiplicazione per il numero casuale della chiave privata per produrre un nuovo punto sulla curva.
Questo nuovo punto diventa la chiave pubblica con coordinate x e y specifiche. Trovare la chiave privata conoscendo la chiave pubblica è quasi impossibile a causa della difficoltà di indovinare un numero casuale a 256 bit. C'è circa una possibilità su 150.000 miliardi di miliardi di miliardi di miliardi di miliardi di miliardi di miliardi di miliardi di indovinare correttamente.
Teoricamente parlando, ci vorrebbe un computer quantistico con più di 13.000.000 di qubit fisici per trovare questo numero in un giorno. Ad oggi, uno dei computer quantistici più avanzati al mondo, il processore IBM Eagle, possiede solo 127 qubit (o lo 0,00097% della quantità di qubit richiesti).
In altre parole, i sistemi utilizzati dalle criptovalute sono, almeno per ora, completamente sicuri.
SHA-256
Per creare un indirizzo di wallet Bitcoin, le coordinate x e y vengono elaborate tramite l'algoritmo SHA-256.
Questa funzione di hash crittografico è stata sviluppata e pubblicata dalla National Security Agency (NSA) degli Stati Uniti nel 2001, e essenzialmente trasforma qualsiasi input (in questo caso, le coordinate della chiave pubblica) in un codice unico a 256 bit di lunghezza fissa.
Questo codice è presentato in formato esadecimale a 64 caratteri, contenente una miscela di numeri da 0 a 9 e lettere A-F.
Le funzioni crittografiche ECC e SHA-256 sono note come funzioni "a trappola" o "deterministiche". Ciò significa che funzionano solo in un senso e non possono essere invertite per rivelare gli input originali.
Mentre è possibile creare una chiave pubblica da una chiave privata, è impossibile invertire il processo e rivelare la chiave privata. Lo stesso vale per il tentativo di scoprire quale chiave pubblica è stata utilizzata per creare un indirizzo di wallet Bitcoin. Solo il titolare della chiave pubblica ha tali informazioni e può usarle per dimostrare la proprietà dell'indirizzo di wallet Bitcoin.
Hai bisogno di un modo migliore per capirlo? Immagina che qualcuno abbia mescolato una varietà di vernici di diversi colori da una selezione di, come abbiamo notato prima, 150.000 miliardi di miliardi di miliardi di miliardi di miliardi di miliardi di miliardi di miliardi di opzioni per creare un colore unico.
Se conoscessi le quantità esatte delle vernici giuste, saresti in grado di riprodurre esattamente lo stesso colore. Ma se non lo sapessi? Tentare di invertire il processo sarebbe quasi impossibile.
Questo è, in sostanza, come funzionano queste funzioni crittografiche a trappola e ciò che consente ai loro input di essere irriconoscibili rispetto all'output.
Emissione di nuovi Bitcoin
Nuove unità di Bitcoin entrano in circolazione attraverso un processo chiamato mining.
Il mining fa parte del meccanismo di consenso proof-of-work impiegato dalla blockchain di Bitcoin per selezionare partecipanti onesti che aggiungano nuovi blocchi di dati.
Questo avviene tramite l'uso dell'hashing SHA-256. Migliaia di volontari della rete – noti come nodi di mining – competono tra loro utilizzando computer appositamente costruiti per generare trilioni di hash al secondo.
I miner prendono prima l'intestazione del blocco – la parte che contiene tutte le informazioni di alto livello sul blocco, inclusi il suo timestamp, il valore target che i miner devono superare e altri componenti chiave – dal blocco più recente della catena e regolano il numero di qualcosa chiamato nonce.
Nonce è un acronimo che rappresenta un numero usato solo una volta. È la parte di un'intestazione di blocco che può essere modificata per creare un nuovo valore hash.
L'obiettivo della competizione di mining basata sulla crittografia è semplice. I miner usano le loro macchine per regolare automaticamente il numero nonce nell'intestazione del blocco e lo eseguono attraverso l'algoritmo di hashing SHA-256 per produrre un valore.
Qualunque miner produca un valore che abbia lo stesso numero o più zeri all'inizio rispetto al valore target vince la competizione. Se il valore non supera il valore target, i miner regolano nuovamente il numero nonce, ri-hashano l'intestazione del blocco e producono un nuovo valore.
Questo processo si ripete finché qualcuno non ha successo.
I Bitcoin appena coniati vengono assegnati a ogni miner di successo in base a un programma di emissione fisso pre-programmato nel codice sorgente di Bitcoin dal suo creatore, Satoshi Nakamoto.
La crittografia svolge un ruolo vitale nell'elaborazione delle transazioni Bitcoin e nel mantenimento della sicurezza della rete attraverso il processo di mining. Puoi consultare l'articolo del Kraken Learn Center Cos'è il mining di Bitcoin? per saperne di più.
Firme digitali
Le firme digitali sono fondamentali per consentire ai mittenti di dimostrare di possedere la chiave privata corrispondente a una specifica chiave pubblica senza dover rivelare la propria chiave privata a nessuno.
Bitcoin utilizza un algoritmo di firma digitale a curva ellittica (ECDSA) per approvare e inviare crittograficamente le transazioni da un wallet crypto.
Ciò implica che il mittente prenda un messaggio di transazione con hash – che comprende l'indirizzo del wallet del destinatario, l'importo di BTC inviato, eventuali commissioni allegate e la provenienza originale del bitcoin – aggiunga la propria chiave privata e crei una firma digitale utilizzando un altro processo matematico unidirezionale.
Più specificamente, si tratta di un processo simile alla suddetta creazione di una chiave pubblica da una chiave privata, con l'aggiunta di alcuni passaggi extra.
Viene creato un numero casuale (simile a una chiave privata), che viene poi moltiplicato per lo stesso punto generatore utilizzato per creare la chiave pubblica del wallet, per creare un nuovo punto su una curva ellittica. Chiamiamo questo Punto A.
La coordinata X del Punto A viene quindi moltiplicata per la chiave privata del mittente e aggiunta al messaggio di transazione con hash. Tutto questo viene poi diviso per il numero casuale generato all'inizio per produrre un nuovo valore. Questo valore funge da firma digitale.
Per verificare la firma digitale, il destinatario ricava due punti su una curva ellittica. Innanzitutto, il messaggio viene diviso per il valore della firma digitale per ottenere il punto generatore. Quindi, la coordinata X del punto generatore viene divisa per il valore della firma digitale per rivelare il secondo punto sulla curva.
Infine, tracciando una linea attraverso questi due punti si produce un terzo e ultimo punto sulla curva ellittica. Questo punto finale dovrebbe avere esattamente la stessa coordinata X del Punto A, dimostrando così che la firma digitale è stata creata utilizzando la chiave privata corrispondente corretta.
Fortunatamente, un wallet crypto digitale esegue automaticamente tutto questo processo di verifica, senza alcun input da parte dell'utente.
Perché la crittografia è importante?
La crittografia svolge un ruolo essenziale non solo nel proteggere le reti di criptovalute dalla corruzione, ma anche nel fornire un mezzo irrefutabile per dimostrare la proprietà dei fondi senza costringere gli utenti a rinunciare alle loro informazioni sensibili sulla chiave privata.
Senza di essa, le reti di criptovalute sarebbero probabilmente costrette a fare affidamento su intermediari centralizzati e fidati per proteggere le proprie informazioni e facilitare i pagamenti — qualcosa che contraddice completamente la natura decentralizzata delle criptovalute basate su blockchain pubbliche.
Ora che hai compreso la tecnologia alla base delle criptovalute, è il momento di iniziare con l'exchange di asset digitali più trasparente e affidabile.
Inizia con Kraken
Pronto a fare il prossimo passo nel tuo percorso crypto con l'exchange affidabile e trasparente? Clicca il pulsante qui sotto per iniziare con Kraken oggi stesso!