The Quantum Issue: cosa potrebbe significare il computing quantistico per Bitcoin
Punti chiave
- •Il possesso di bitcoin poggia sull'assunzione che nessuno possa spendere le monete senza detenere la chiave privata, e il computing quantistico mette in discussione questa premessa fondamentale.
- •Un computer classico non può realisticamente sottoporre a brute-force una chiave privata, poiché le 2^256 chiavi possibili superano le capacità di calcolo di ogni computer sulla Terra.
- •I computer quantistici si differenziano radicalmente dalle macchine classiche perché usano qubit, sovrapposizione di stato ed entanglement per alterare le probabilità degli esiti, anziché verificare stati discreti passo per passo.
- •Un computer quantistico funzionante potrebbe minare la crittografia a curve ellittiche, arrivando alla chiave privata corretta in un numero limitato di esecuzioni dell'algoritmo.
- •La minaccia quantistica per Bitcoin è riconosciuta all'interno della comunità, e numerose soluzioni potenziali che affrontano i diversi aspetti del problema sono in fase di sviluppo.

The Quantum Issue: cosa potrebbe significare il computing quantistico per Bitcoin
Che cos'è il computing quantistico? In che modo un computer quantistico si differenzia da un computer classico e che rilevanza questa tecnologia potrebbe avere per Bitcoin?
Sono domande che i nuovi Bitcoiner incontrano inevitabilmente, quando considerano l'esposizione di Bitcoin a quella che potrebbe diventare una minaccia esistenziale, qualora venisse sviluppato un computer quantistico funzionante. La possibilità di possedere bitcoin poggia su un'assunzione fondamentale: senza ottenere direttamente una copia della chiave privata, nessuno altro oltre al detentore di quella chiave può firmare una transazione che spenda le monete che essa protegge. Il computing quantistico mette in discussione proprio questa assunzione.
I computer quantistici non sono semplicemente “computer, ma più veloci”. Funzionano in un modo radicalmente diverso dai computer classici e sono di conseguenza molto più efficienti in alcuni tipi specifici di calcolo. Questo articolo non si propone di spiegare il computing quantistico in modo tecnicamente esaustivo. Fornisce invece una spiegazione intuitiva di come differiscono i computer classici e quelli quantistici, in particolare per quanto riguarda il modo in cui gestiscono spazi di chiavi crittografiche di grandi dimensioni.
I computer classici
Tutto ciò che è memorizzato in un computer classico è rappresentato come una serie di 1 e 0. Ogni bit è precisamente un 1 o uno 0, senza ambiguità. I dati vengono memorizzati come 1 e 0 e, quando tali dati vengono manipolati o modificati, le operazioni vengono eseguite bit per bit, passo per passo.
Un computer classico modifica quindi porzioni di dati discrete e non ambigue in una sequenza lineare. Non può saltare avanti né prendere scorciatoie nella sequenza di passi richiesti da un calcolo: deve eseguire quei passi uno dopo l'altro, anche se metodi matematici più efficienti possono ridurre il lavoro complessivo.
Quando una chiave privata viene generata su un computer, il dispositivo ottiene un valore casuale. Quel valore può provenire da dadi lanciati dall'utente, da generici input dell'utente o da casualità generata dall'hardware del dispositivo. Il computer memorizza il valore in memoria come 1 e 0. Moltiplica quindi il valore della chiave privata per il punto generatore della curva ellittica per ottenere una chiave pubblica.
Al livello più elementare, questo processo consiste in istruzioni algoritmiche che specificano quali bit utilizzare, come modificarli e quali circuiti fisici debbano elaborarli. Il valore risultante viene quindi ricollocato in memoria dopo essere stato modificato bit per bit. Servono ulteriori passi per arrivare a un indirizzo valido, ma anche quei passi seguono lo stesso schema generale di istruzioni sequenziali che modificano gli 1 e gli 0 in memoria.
Cosa succederebbe se qualcuno provasse a usare un computer classico per indovinare la chiave privata di un'altra persona?
Le chiavi private possibili sono 2^256. Ovvero 115,792,089,237,316,195,423,570,985,008,687,907,853,269,984,665,640,564,039,457,584,007,913,129,639,936 chiavi possibili.
Un computer dovrebbe provare quelle chiavi private una dopo l'altra, oppure verificarne quante più può elaborare in parallelo, seguendo passo per passo le stesse istruzioni usate per generare le chiavi pubbliche. Più chiavi si verificano simultaneamente, più potenza di calcolo serve, e non esiste alcun modo di aggirare quel costo con scorciatoie.
Usare meno potenza di calcolo richiede più tempo; ridurre il tempo richiede più potenza di calcolo. Con il computing classico, il compito è di fatto impossibile: il costo di calcolo richiesto supera le capacità di ogni computer sulla Terra, mentre il tempo necessario è così lungo che ogni stella dell'universo si spegnerebbe prima che tutte le chiavi possibili fossero verificate.
Per raggiungere davvero l'obiettivo serve un'alternativa alla verifica delle chiavi in modo sequenziale o parallelo. È qui che entra in gioco il computing quantistico.
I computer quantistici
I computer quantistici non lavorano con stati discreti nello stesso modo dei computer classici. La loro unità di informazione di base è il qubit, l'equivalente quantistico del bit. A differenza di un bit classico, che è un 1 oppure uno 0, un qubit esiste in una sovrapposizione di stato, in cui può essere insieme 1 e 0. Si assesta in uno di questi stati discreti solo quando viene osservato.
La sovrapposizione è uno degli elementi costitutivi chiave che permettono ai computer quantistici di calcolare in modo diverso. L'altro è l'entanglement. I qubit non sono necessariamente conservati in isolamento: gli atomi fisici che li rappresentano possono risultare intrecciati tra loro, il che significa che quando atomi entangled vengono osservati e collassano in un unico stato, gli atomi intrecciati collassano nello stesso stato, per quanto distanti possano essere.
La distinzione può essere compresa in modo intuitivo confrontando gli algoritmi. Su un computer classico, un algoritmo è un insieme di istruzioni che prende una specifica configurazione di bit e la modifica passo per passo fino a produrre una configurazione finale di bit. L'algoritmo trasforma così uno stato discreto in un altro attraverso una sequenza di operazioni.
I qubit non conservano stati discreti finché l'osservazione non li fa collassare in uno di essi: conservano probabilità. Per un insieme di qubit intrecciati di una data dimensione — 2^256 nel caso ipotetico qui considerato — ogni stato possibile ha una specifica probabilità di essere lo stato in cui il sistema collassa.
Gli algoritmi quantistici non sono quindi semplicemente istruzioni passo per passo per operare su stati discreti e fissi: sono un insieme di istruzioni su come operare su quei qubit intrecciati in modo da alterare le probabilità dei diversi esiti. L'interferenza costruttiva viene usata per aumentare la probabilità di un esito corretto, e l'interferenza distruttiva per ridurre la probabilità di esiti errati (da notare che questa NON è la rumore o l'interferenza che rende difficile per i computer quantistici fisici funzionare con accuratezza: si tratta di un concetto diverso).
Mentre un computer classico dovrebbe verificare le singole chiavi private una per una per trovare quella corrispondente a una specifica chiave pubblica, un computer quantistico può semplicemente eseguire qualche volta l'algoritmo adatto e arrivare alla risposta corretta. Non lo fa “verificando tutte le possibilità in una volta”: si limita a modificare le probabilità degli esiti in cui la sovrapposizione può collassare.
Ecco perché un computer quantistico potrebbe minare le assunzioni alla base della crittografia a curve ellittiche, cosa che un computer classico non può fare (ed è anche il motivo per cui i computer quantistici sono utili solo per certi tipi di calcolo, quelli che implicano uno spazio enorme di possibili risposte da verificare).
Non fatevi prendere dal panico
Questa differenza fondamentale tra calcolo classico e calcolo quantistico significa che, sì, se venisse realmente prodotto un computer quantistico funzionante e corretto nel suo operare, l'assunzione di base che protegge il bitcoin dei singoli Bitcoiner verrebbe meno. Tutti quei fondi sarebbero insicuri.
Sì, è un rischio serio se un simile dispositivo venisse effettivamente costruito e funzionasse, ma non siamo del tutto impreparati. Comprendiamo il problema, comprendiamo l'esposizione, e un buon numero di possibili soluzioni per i molteplici aspetti della questione sta prendendo forma.
Respirate e rilassatevi. Nel resto di questo numero vi guideremo attraverso l'intero problema.
Questo contributo è incluso nell'ultima edizione cartacea di Bitcoin Magazine, The Quantum Issue. Lo condividiamo qui come un'anteprima delle idee esplorate nell'intero numero.
Questo articolo è apparso per la prima volta su Bitcoin Magazine ed è stato scritto da Shinobi.