L’avvento dei computer quantistici, sta portando ad un drastico cambio di paradigma nel lavoro computazionale, guardando e risolvendo i problemi in una maniera completamente differente da come un computer tradizionale è abituato a fare.
Quando l’informatica quantistica, sarà in grado di operare su larga scala, modificando l’economia tecnologica mondiale, le tecniche crittografiche e gli algoritmi utilizzate dalla blockchain saranno a rischio.
Ma come vedremo il mondo cripto, non si sta facendo cogliere impreparato e non sarà indifeso contro questa nuova minaccia.
La crittografia nella blockchain
Le due principali tecniche crittografiche che trovano applicazione nella blockchain sono:
- L’algortimo di hash, ovvero un sistema di cifratura, per cui da un documento elettronico di dimensioni generiche, avremo come risultato sempre un insieme di bit di lunghezza fissa. Questo sistema trae origine da formule matematiche conosciute come funzione di hash (otterremo un output di dimensioni fisse, partendo da un input di di dimensioni variabili). La particolarità degli algoritmi di hash è data dall’impossibilità di effettuare una ricerca inversa (dall’hash al documento originale) garantendo così l’integrità del documento. Nella blockchain, garantisce che ogni blocco non possa essere modificato, senza essere segnalato a tutti i partecipanti alla rete.
- La firma digitale è un meccanismo di crittografia che serve per autenticare la provenienza e la veridicità di un dato. Nella Blockchain garantisce la sicurezza di una transazione tra due parti. L’algoritmo utilizzato si basa su una funzione di doppia chiave pubblica, il mittente tramite la sua chiave privata (che resta segreta) firma una transazione, il destinatario utilizza la chiave pubblica rilasciata dal mittente, per verificare la veridicità della firma (la chiave pubblica deve combaciare con la privata) al fine di garantire la provenienza della transazione e la prova che non sia stata alterata. La firma digitale è fondamentale, perchè garantisce l’integrità e il non ripudio della transazione all’interno della blockchain.
Il processo per l’utente avviene in maniera trasparente ed allo stesso tempo veloce ed efficiente. L’indirizzo del wallet è associato alla chiave pubblica e la chiave privata viene associata ad una password, con la quale il proprietario certifica la propria identità e autentifica la firma. La perdita della chiave privata dunque equivale alla perdita dell’accesso ai propri dati presenti sulla blockchain.
Il quantum computing dalla nascita ai primi successi
Nel 1981 il Nobel per la fisica Richard Feynman, elaborò teoricamente un sistema basato su una serie di bit quantistici, chiamati qubit, capaci a differenza dei bit tradizionali di avere in uno stesso istante, multipli stati, fenomeno conosciuto come sovrapposizione coerente di stati.
Il quantum computing negli anni è stato confermato da numerose sperimentazioni e verifiche pratiche, in continua evoluzione, promette in futuro di raggiungere potenze di calcolo inimmaginabili.
Numerose società e organizzazioni, tra le quali NASA, IBM e Google, stanno lavorando su progetti di computer quantistici, progetti tuttavia caratterizzati ancora da scarsità di potenza e limitato numero di modelli. Bassa potenza di calcolo in relazione ai qubit, ma soprattutto un’instabilità nella gestione, rendono ancora troppo distante la realtà secondo cui, il quantum computing può rappresentare una concreta minaccia per blockchain.
Tuttavia in futuro, aumentando il numero dei qubit ed elaborando modelli più stabili, il quantum computing potrebbe raggiungere livelli di potenza tali, da risolvere problemi con complessità esponenziale e di spezzare algoritmi di crittografia alla base della blockchain.
Algoritmi di Shor e Grover e i rischi per la blockchain
Problemi computazionali intrattabili oggi, potrebbero diventare domani di facile soluzione da parte di computer quantistici. Gli algoritmi a chiave pubblica garantiscono la sicurezza, grazie alla loro funzione unidirezionale, caratterizzati dall’impossibilità di risoluzione inversa. Come vedremo l’avvento del computer quantistici permetterà tale risoluzione in tempi e modi immediati, rendendo gli algoritmi a chiave pubblica inefficaci e relegandoli così alla storia della crittografia.
L’algoritmo di Shor
Ideato nel 1994 da Peter Shor, risolve il problema della fattorizzazione di grandi numeri primi, difficoltà su cui gli algoritmi a chiave pubblica si basano (difficoltà di scomposizione in prodotto di grandi numeri primi).L’utilizzo degli algoritmi di Shor, eliminerebbero così la sicurezza degli algoritmi a chiave pubblica, rendendo possibile, conoscendo la cifratura della chiave pubblica, risalire a quella privata. Permettendo il furto di critpovalute, la creazione di transazioni fasulle e l’alterazione nella gestione degli smart contract. Scomposizioni che richiederebbero migliaia di anni per i computer tradizionali, sarebbero risolti in pochi secondi da un computer quantistico che utilizza l’algoritmo di Shor, ciò nonostante va ricordato che per effettuare un tale attacco servirebbe un computer quantistico con una potenza pari almeno a 5000 qubit, rapportati ai progetti quantistici di Google e IBM che sono rispettivamente sui 72 e 50 qubit, capiamo come sia una tecnologia ancora lontana.
L’algoritmo di Grover
Ideato da Lov Grover nel 1996, è un algoritmo di ricerca che sfrutta la sovrapposizione dei qubit, in grado di pervenire a risposte di ricerca molto più velocemente. Tecnica crittografica in grado di scardinare sistemi di cifratura simmetrica, in grado di risolvere gli algoritmi di hash e di dimezzare i tempi di tentativi di tipo “brute force”.
Tuttavia Gruver risulta meno pericolo di Shor, nella misura per cui, potrebbe essere contrastato aumentando la lunghezza della chiave di cifratura ed elevando il lavoro computazionale dei miner.
Quali possibili soluzioni
Se consideriamo che buona parte dei nostri protocolli di comunicazione, si basa su: crittografia a chiave pubblica, firma digitale e scambio di chiavi, comprenderemo che la blockchian non sarebbe che la punta dell’iceberg, i rischi riguarderebbero la maggior parte dei sistemi che regolano la nostra vita economica e sociale: banche on line, e-commerce e social network, solo per citare alcuni esempi.
Una soluzione può essere data dalla codificazione di standard crittografici “post quantum”, proposte in tal senso sono state avanzate dal National Institute of Standards and Technology (NIST), nel 2016 ha iniziato un progetto di selezione arrivando nel 2019 a 29 algoritmi, l’obiettivo è quello di chiudere la competizione entro il 2024.
Tuttavia molti sono i limiti e le difficoltà, ogni algoritmo possiede vantaggi e svantaggi, una standardizzazione degli algoritmi resta complicata, potrebbe essere necessario individuare più algoritmi per ciascuna funzione crittografica.
Altre soluzioni sono date da progetti come i Quantum Resisten Ledger (sistema che utilizza per la firma digitale l’algoritmo di Merkle), EnQlave “quantum safe per cripto asset”, questa soluzione si presenta come un portafoglio post quantico per Ethereum, viene offerta la possibilità di difendere i propri ether e token ERC20 da furti quantici. Il codice sarà open source e depositato su Github. Per ora è un prototipo, non ancora pronto per la produzione.
Conclusioni
Nell’articolo abbiamo avuto modo di constatare come il quantum computing trasformerà in maniera radicale tecnologie alla base della nostra società digitale, spazzando via concetti, assunti e metodi della crittografia contemporanea.
Abbiamo anche visto come, il mondo cripto e non solo, sta reagendo per evitare che questa nuova fase, non si trasformi in un attacco alla decentralizzazione a favore di una centralizzazione di pochi grandi colossi dell’informatica.
Concludo con due interventi a riguardo, da parte di due astri della decentralizzazione:
” Il dispositivo quantistico di Google, sta ad un vero computer quantico, quanto una bomba ad idrogeno, sta alla fusione nucleare. Il fenomeno esiste ed è possibile, ma siamo lontani anni luce da una reale minaccia”.
Vitalik Buterin
“La supremazia quantica, descritta da Google, non rappresenta altro che la risoluzione di una determinata classe di problemi. Problemi ben diversi da quelli che bisogna risolvere per distruggere gli algoritmi crittografici”.
Andreas Antonopoulos
Spero questo articolo ti sia stato utile, se hai dubbi o domande lascia pure un commento, e se ti fa piacere, condividi l’articolo e aiutaci a diffondere il progetto.
Commenti