Il progetto Quantum-Secure Net (parte 2/3): prodotto Europeo di Quantum Key Distribution

01/03/21

Nel primo articolo abbiamo introdotto quali siano i principali problemi della crittografia moderna, o meglio, quali siano le limitazioni matematiche che vengono esposta dal mondo del quantum computing. Il problema è complesso e negli ultimi anni la ricerca ha tentato di risolvere il dilemma definendo metodi crittografici che offrissero una sorta di resistenza quantistica.

Questa seconda parte approfondisce proprio questi aspetti, introducendo il tema della crittografia quantistica e post-quantistica e in particolare la tecnologia della Quantum Key Distribution (QKD) che rappresenta una tecnologia particolare in questo contesto, in grado di offrire la cosiddetta perfect secrecy.

Crittografia quantistica

La crittografia quantistica funziona su computer quantistici ed è “sicura” sia contro gli attacchi classici che quantistici, nel senso di attacchi condotti tramite computer quantistici. Questa forma di crittografia è sicura sulla base delle leggi della fisica quantistica. Ciò significa che, i computer quantistici sono sia il problema (cioè possono essere usati per “rompere” la crittografia), sia la soluzione (cioè possono essere usati per "fare" la crittografia). Tuttavia, ci sono degli aspetti problematici nell'uso della crittografia quantistica, se paragonati alla crittografia “classica” a chiave pubblica. La crittografia quantistica richiede che entrambe le parti abbiano accesso a un computer quantico e può essere al momento molto costosa, poco praticabile e quindi inefficiente.

La crittografia quantistica è già in fase di sviluppo e di utilizzo, tuttavia, dati gli attuali costi, è improbabile che possa sostituire tutti gli attuali casi di utilizzo della crittografia, soprattutto nel prossimo futuro.

Crittografia post-quantistica

La crittografia post-quantistica è una forma di crittografia classica (cioè che non necessita di computer quantistici) che si basa su fondamenta matematiche a resistenza quantistica e funziona sugli attuali computer. In sostanza, la crittografia post-quantistica è un sistema che si basa su computer non quantistici, proprio come la attuale crittografia a chiave pubblica, ma su principi matematici differenti, non facilmente risolvibili nemmeno da un computer quantico. È importante rimarcare la distinzione perché spesso si usa il termine "post-quantum" intendendo invece "quantistico" e viceversa. La differenza è che la crittografia quantistica usa un computer quantistico, e la crittografia post-quantistica non lo fa. Tuttavia, nonostante i ricercatori abbiano sviluppato cifrari che sono resistenti all’algoritmo di Shor la crittografia post-quantistica però non è altrettanto robusta rispetto alla crittografia quantistica (non ha l’attributo di unconditional computational security): non è possibile dimostrare che gli algoritmi sviluppati non sono attaccabili in un tempo polinomiale. Questo comporta che non ci siano ancora prove formali sulla reale sicurezza di questi metodi, similmente a quanto accade per la attuale crittografia a chiave pubblica.

Vista la complessità della crittografia quantistica è comunque di grande interesse studiare anche altre soluzioni, non basate su tecnologie quantistiche, che aumentino il grado di sicurezza rispetto all’attuale crittografia a chiave pubblica. Questo rende necessario avere sistemi di crittografia resistenti agli attacchi, condotti da computer quantistici, che possano funzionare su computer non quantistici (i.e., il caso peggiore in cui l’attaccante ha a disposizione un computer quantistico è l’attaccato no). 

Quantum computing ed applicazioni alla crittografia simmetrica

È fondamentale sottolineare che, quanto detto fino ad ora, parlando degli attacchi alle forme di crittografia asimmetriche, a chiave pubblica e privata, non si applica alla crittografia simmetrica (che fa uso della stessa chiave condivisa fra le parti comunicanti). Shannon nel 1949 ha dimostrato che con la crittografia simmetrica esistono le condizioni per ottenere la sicurezza perfetta (perfect secrecy) o incondizionata.

Prima di tutto un breve riepilogo. La crittografia a chiave pubblica, o crittografia asimmetrica, garantisce la riservatezza. Supponiamo che una parte (Alice) voglia inviare ad un'altra parte (Bob) un messaggio segreto. Alice cripta il suo messaggio con la chiave pubblica di Bob, creando un testo cifrato incomprensibile, che invia a Bob. Bob decifra il testo cifrato per scoprire il messaggio originale. Si noti che la comunicazione è unidirezionale o "asimmetrica"; Alice non può decifrare i messaggi di Bob poiché non possiede la chiave privata. La cifratura a chiave pubblica è asimmetrica ed è generalmente più lenta rispetto agli schemi di cifratura simmetrica come l'AES. Per questo motivo, la cifratura a chiave pubblica è principalmente utilizzata per stabilire una chiave segreta condivisa tra le parti. Cioè, il messaggio segreto inviato da Alice a Bob è una chiave segreta, e questa chiave segreta viene poi utilizzata per cifrare e decifrare i dati in modo efficiente utilizzando la cifratura simmetrica.

Alice e Bob hanno bisogno di un metodo sicuro per condividere la loro chiave simmetrica, questa fase prende il nome di Key Establishment Mechanism (KEM). La cifratura a chiavi asimmetriche viene quindi utilizzata nella fase di inizializzazione del canale di comunicazione, per permettere ad Alice e Bob di condividere una chiave simmetrica senza interferenze (questo schema, inizialmente proposto da Diffie-Hellman, è poi diventato la base del protocollo di comunicazione SSL).

Cos'è la Quantum Key Distribution?

Come detto nel paragrafo precedente, esistono le condizioni per rendere la crittografia simmetrica un metodo di cifratura incondizionatamente sicuro, sempre nell’ipotesi che un attaccante non venga a conoscenza della chiave. Il problema è quindi quello di distribuire le chiavi senza che vengano intercettate. Questo problema porta alla nascita della Quantum Key Distribution (QKD), che è un sistema basato su un “canale quantistico” (fibre ottiche oppure tratte “free space” satellitari) per distribuire chiavi simmetriche in modo non intercettabile. Come già anticipato ad inizio articolo, 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 QKD in particolare utilizza le proprietà quantistiche dei fotoni (i.e., scarsa interazione con la materia e capacità di mantenere il proprio stato quantico in un mezzo adeguato, ad esempio una fibra ottica, per qualche microsecondo, sotto forma di fase o momento angolare) 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.

La sicurezza della QKD si basa su una caratteristica fondamentale della meccanica quantistica: a causa del principio di indeterminazione di Heisenberg, a seguito del quale non si può misurare una quantità fisica senza interferire con essa, l'atto di misurare lo stato di un quanto di luce lo distrugge. Con questo tipo di sistemi, la sicurezza deriva proprio dal fatto che un eventuale attore malevolo, che cerchi di intercettare uno scambio di informazioni, lascerà inevitabilmente tracce rilevabili sotto forma di errori della chiave trasmessa. A questo punto le due parti Alice e Bob possono decidere di usare una nuova chiave simmetrica o interrompere la trasmissione.

La QKD formalmente ha anche un secondo vantaggio, essendo possibile dimostrare che è un sistema sicuro dal punto di vista della teoria dell'informazione (information-theoretically secure). La sua sicurezza deriva esclusivamente dalla teoria dell'informazione, cioè, non si basa sulla presunta difficoltà dei problemi matematici usati, ed è quindi sicuro anche quando l'avversario ha una potenza di calcolo illimitata.

Un’altra importante caratteristica operativa della QKD, quando viene utilizzata in sequenza per produrre chiavi di cifratura successive, è la proprietà chiamata "forward-secrecy" delle chiavi: le chiavi successivamente scambiate su un QKD link, sono indipendenti l'una dall'altra. Pertanto, la potenziale compromissione di una di esse non può portare alla compromissione delle altre. Questa è una caratteristica particolarmente apprezzabile sia per le reti ad elevata sicurezza, che per la memorizzazione a lungo termine dei dati (everlasting security).

Un'implementazione QKD include tipicamente i seguenti componenti:

Figura - Alice e Bob sono collegati attraverso un QKD Link (composto dalla coppia di connessioni Ethernet e su fibra ottica) e si scambiano chiavi crittografiche simmetriche, per poi instaurare una connessione sicura cifrata simmetricamente. Eve è in ascolto sul QKD link e cerca di intercettare la chiave o il flusso cifrato

Un canale di trasmissione su fibra ottica per inviare quanti di informazione (qubit) tra il trasmettitore (Alice) e il ricevitore (Bob).

Un collegamento di comunicazione tradizionale e pubblico ma autenticato tra le due parti per eseguire le fasi di post-scambio-chiave

Un protocollo di scambio chiave che sfrutta le proprietà quantistiche per garantire la sicurezza, rilevando le intercettazioni o gli errori, e calcolando la quantità di informazioni che sono state intercettate o perse.

Enrico Frumento*, Nadia Fabrizio*, Paolo Maria Comi+

* CEFRIEL Politecnico di Milano, Viale Sarca 226 – 20126 Milano

+ Italtel, Via Reiss Romoli – loc. Castelletto – 20019 Settimo Milanese (Mi)

Per approfondire:

CSO Insiders, “What is quantum cryptography? It’s no silver bullet, but could improve security,” 12 3 2019. [Online]. Available: https://www.csoonline.com/article/3235970/what-is-quantum-cryptography-i....

T. Laarhoven, M. Mosca and J. v. d. Pol, “Solving the Shortest Vector Problem in Lattices Faster Using Quantum Search,” Post-Quantum Cryptography, pp. 83-101, 2013.

O. Regev, “Quantum Computation and Lattice Problems,” SIAM Journal on Computing, vol. 33, no. 3, pp. 738-760, 2004.

Research Institute, “A Guide to Post-Quantum Cryptography,” 16 5 2019. [Online]. Available: https://medium.com/hackernoon/a-guide-to-post-quantum-cryptography-d785a....

C. Shannon, “Communication Theory of Secrecy Systems,” Bell System Technical Journal, vol. 28, no. 4, pp. 656-715, 1949.

W. Diffie and M. Hellman, “New directions in cryptography,” IEEE Transactions on Information Theory, vol. 22, pp. 644-654, 1976.

Akamai, “Enterprise Security - SSL/TLS Primer Part 1 - Data Encryption,” 2016. [Online]. Available: https://blogs.akamai.com/2016/03/enterprise-security---ssltls-primer-par....

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.

W. Diffie, P. v. Oorschot and M. Wiener, “Authentication and Authenticated Key Exchanges,” in Designs, Codes and Cryptography 2, Kluwer Academic, 1992, pp. 107-125.

CSA Cloud Security Alliance, “What is Quantum Key Distribution?,” in Quantum-Safe Security Working Group.