La sfida della Quantum Key Distribution (QKD)
Il progetto Quantum-Secure Net (Q-Secure Net) è un progetto finanziato dell’European Institute of Technology Digital (EIT Digital) il cui scopo è sviluppare e portare sul mercato un prodotto di rete di nuova concezione e generazione completamente Europeo, basato su tecnologia Quantum Key Distribution (QKD), che sia sostenibile in termini di costi e interoperabile con gli altri sistemi esistenti. Lo scopo del progetto è fornire una soluzione pronta per le telecomunicazioni, integrata nel funzionamento e nella gestione della rete, per garantire comunicazioni end-to-end (E2E) sicure a livello quantistico in contesti di alta sicurezza.
Proposta già nei primi anni 1980, la QKD è una tecnologia imparentata con il quantum computing per via del fatto che usa la stessa “terminologia” matematica: si può dire che in questo caso si parla di “quantum” senza l’attributo “computing”. La tecnologia ha impiegato quasi 40 anni per evolversi, tuttavia, ora è una delle principali aree di competizione tecnologica fra le nazioni, oltre al 5G, tra cui Cina, Corea e Stati Uniti. La QKD in particolare utilizza le proprietà quantistiche dei fotoni per effettuare lo scambio di una chiave crittografica simmetrica, che può essere utilizzata per criptare i messaggi che poi vengono scambiati tramite un canale “tradizionale”. La sicurezza di QKD si basa su fondamentali leggi della natura, che sono insensibili all’aumentare della potenza di calcolo, di nuovi algoritmi di attacco o di computer quantistici. Tale sistema permette, una volta introdotto, di dotare le infrastrutture di rete ad altissima sicurezza di comunicazioni incondizionatamente sicure.
Il progetto Q-Secure net
Il progetto Q-Secure Net ha l'obiettivo di fornire una soluzione economica e flessibile per servizi di comunicazione incondizionatamente sicuri basati sulla QKD, che funzioni con le attuali reti metropolitane in fibra ottica. Il capofila del progetto è Italtel. Fra i partner, Cefriel ha seguito due degli scenari applicativi, Politecnico di Milano e CNR hanno sviluppato la tecnologia QKD e i protocolli di correzione degli errori, Università Politecnica di Madrid e Telefonica hanno partecipato alla definizione del prodotto ed i test su rete metropolitana in fibra ottica.
Durante il progetto sono state sviluppate due applicazioni prototipali, aventi lo scopo di dimostrarne l’utilizzo nel contesto Blockchain e SSL, mostrando come la tecnologia QKD possa essere applicata sia al mercato finanziario che per rendere sicure le comunicazioni IoT (Internet of Things) e IIoT (Industrial IoT). Il prodotto è adatto a qualsiasi servizio che necessiti di una chiave di cifratura simmetrica, e si apre ad innumerevoli applicazioni e casi d’uso.
Lo Scenario SSL+PSK
La prima applicazione sviluppata è legata al protocollo SSL/TLS. Questi protocolli permettono una comunicazione sicura tra due entità operando al di sopra del livello di trasporto. Di solito, SSL utilizza certificati a chiave pubblica per l'autenticazione. In particolare, però, lo standard prevede già una speciale configurazione (SSL+PSK Pre-Shared Keys) che utilizza chiavi simmetriche, pre-condivise in anticipo tra le parti comunicanti, per stabilire una connessione SSL. Una configurazione implementata ad esempio, per supportare i casi in cui le parti comunicanti non possano usare la cifratura asimmetrica perché onerosa in termini di connettività o calcolo (es. IoT) o perché le parti sono già “accreditate” (es. ambito militare).
I passi dettagliati della comunicazione per SSL+PSK sono i seguenti, direttamente ispirati allo schema proposto Diffie-Hellman per le PKI.
Alice e Bob ricevono su un collegamento QKD la stessa chiave crittografica (simmetrica)
Alice usa la chiave simmetrica QKD per criptare una chiave temporanea di sessione, generata in modo casuale, che ha una durata di vita limitata e la invia a Bob, su un canale non sicuro (ethernet)
Bob riceve il messaggio e lo decripta per ottenere la chiave temporanea di sessione.
Alice e Bob usano la chiave temporanea di sessione con AES per crittografare i loro messaggi su ethernet fino alla scadenza della stessa (poi si ripete il passo 2). In caso di attacco attraverso il link QKD, Alice e Bob possono richiedere un'altra chiave QKD sicura.
Lo scenario è abilitante per i servizi VPN e IPSEC con QKD.
Lo scenario Decentralised Finance
Le tecnologie blockchain nascono a finire del 2009 con l’avvento del protocollo Bitcoin e si evolvono fino ai giorni nostri in una famiglia di protocolli e sistemi SW essenzialmente con l’obiettivo di creare una rete (network peer to peer) di “pari” in grado di scambiarsi un valore transazionale (valuta, asset con valore, certificazione) in maniera diretta, senza una terza parte fiduciaria. Eliminando così, attraverso il meccanismo del consenso condiviso, il bisogno di avere terze parti e attivando lo scambio diretto di beni, servizi. Questi sistemi hanno una applicazione in campo finanziario, sia nei processi interbancari, per esempio in scenari di tracciamento e ciclo di vita degli asset come le fatture (es., sconto fattura) sia nei processi e servizi che si possono creare a partire dai token (dando origine al fenomeno della finanza decentralizzata).
In particolare, nella Decentralised Finance (Defi), uno degli aspetti chiave è la interoperabilità dei sistemi e lo scambio di token e cripto valute, soggetto a sfide di sicurezza note e non indifferenti. Oggi i token derivati di Ethereum sono decine di migliaia, e sono “tecnicamente” interoperabili tra di loro, il che significa che applicazioni diverse possono scambiarsi questi token proprio come ci si scambiano delle valute o delle azioni nelle borse commerciali. Queste operazioni oggi sono affidate a Exchange centralizzati che sono spesso soggetti a problemi di sicurezza e rappresentano l’unico elemento ancora centralizzato in sistemi peraltro totalmente peer-to-peer.
In questo contesto “finanziario”, c’è sempre, un “nodo” della rete, detto in gergo tecnico portafoglio (wallet) che è abilitato a scambiare il valore, ossia il token. Tale nodo possiede delle informazioni specifiche che gli permettono di eseguire la transazione.
Inoltre, negli scenari Fintech attuali, ci sono molteplici cripto-valute e reti, un elemento di debolezza riconosciuto. Il “passaggio” da una criptovaluta ad un’altra, da un token ad un altro, tra due sistemi e due wallet, richiede il passaggio da una terza parte fidata, contraddicendo il paradigma della decentralizzazione. Questa situazione, per esempio nel contesto Ethereum, viene risolta passando, in alcuni casi, come recentemente proposto, attraverso il meccanismo dell’Atomic Swap. L’Atomic Swap è una delle possibili soluzioni proposte per far interagire differenti reti blockchain, ed è un “sistema” per il passaggio sicuro direttamente tra nodi partecipanti a diverse reti blockchain, di una informazione (hashlock o timelock1) necessaria a sbloccare il cambio di valuta.
Questa informazione simmetrica, permette di accoppiare reti diverse, ed è quindi importante, in ottica di evoluzione delle reti blockchain in contesti finanziari, mantenerla sicura.
Nella configurazione sperimentale oggetto del progetto, l’Atomic Swap avviene non più su una rete di telecomunicazione “comune”, ma si avvale di un QKD Link, che permette di trasferire in modo sicuro il parametro di hashlock/timelock fra due nodi di una rete Algorand (si noti che nel gergo Algorand viene usato il termine Atomic Transfers). Questa soluzione comporta un aumento della sicurezza intrinseca dello scambio e quindi, rende possibile usare gli Atomic Swap anche con le criptovalute.
Sviluppi previsti
In un anno il progetto Q-Secure Net ha portato alla realizzazione di un prodotto pronto per le prime applicazioni di mercato, ma che ha le potenzialità per cogliere le opportunità da un mercato in fortissima crescita. Nell’articolo è stato citato un primo naturale scenario di utilizzo della QKD, per connessioni con elevati requisiti di sicurezza o dove è importante la everlasting security.
Sono interessanti anche le reti di dispositivi dotati di QKD Link. Una prima architettura di reti "hop-by-hop" è stata dimostrata in Europa nel 2008 dal progetto SECOQC; in tali reti i messaggi passano tramite differenti nodi relay collegati da QKD Link. In questo caso la decrittazione / ricodifica e rilancio del messaggio viene effettuata ad ogni nodo intermedio con differenti chiavi QKD (si veda Figura 1).
* CEFRIEL Politecnico di Milano, Viale Sarca 226 – 20126 Milano
+ Italtel, Via Reiss Romoli – loc. Castelletto – 20019 Settimo Milanese (Mi)
[1] |
Digital Tech, “Q-Secure Net Factsheet,” 2019. [Online]. Available: https://www.eitdigital.eu/fileadmin/files/2020/factsheets/digital-tech/EIT-Digital-Factsheet-Q-Secure-net.pdf. |
[2] |
R. Alléaume, C. Branciard, J. Bouda, T. Debuisschert, M. Dianati, N. Gisin, M. Godfrey, P. Grangier, T. Länger, N. Lütkenhaus, C. Monyk, P. Painchault, M. Peev, A. Poppe, T. Pornin, J. Rarity, R. Renner, G. Ribordy, M. Riguidel, L. Salvail, A. Shields, H. Weinfurter and A. Zeilinger, “Using quantum key distribution for cryptographic purposes: A survey,” Theoretical Computer Science, vol. 560, pp. 62-81, 2014. |
[3] |
W. Diffie and M. Hellman, “New directions in cryptography,” IEEE Transactions on Information Theory, vol. 22, pp. 644-654, 1976. |
[4] |
M. Herlihy, “Atomic Cross-Chain Swaps,” in ACM Symposium on Principles of Distributed Computing, 2018. |
[5] |
S. Micali, “Algorand’s Forthcoming Technology,” 26 5 2019. [Online]. Available: https://medium.com/algorand/algorands-forthcoming-technology-bcd17989c874. |
[6] |
CORDIS, “Development of a Global Network for Secure Communication based on Quantum Cryptography,” 2008. [Online]. Available: https://cordis.europa.eu/project/id/506813. |
1 Il servizio di Atomic Swap può essere configurato in due modi: hashlock o timelock. Hashlock è una funzione che limita la spesa dei fondi fino a quando un certo dato non viene reso pubblico (come prova crittografica. Timelock limita la spesa dei fondi fino a un determinato momento futuro.