Nov 22 2004

Crittografia Quantistica


by tonycrypt

Verso la meta’ degli anni ’80 un fisico inglese, David Deutsch, durante una conferenza sulla fisica quantistica, ebbe l’idea di creare un calcolatore quantistico. Questa e’ una idea rivoluzionaria, in quanto i calcolatori tradizionali si comportano secondo le leggi della fisica classica, e quindi con le limitazioni che noi tutti conosciamo. Ma un calcolatore quantistico avrebbe una potenza di calcolo teoricamente infinita, tale da poter invertire un algoritmo a fattorizzazione, come l’RSA, pressoche’ istantaneamente, rendendo quindi assolutamente inutili i sistemi di crittografia algoritmica. La spiegazione del funzionamento di un calcolatore quantistico e’ cosa assai complessa, e non e’ detto che si possa realizzare in pratica, almeno in tempi brevi (anche se si sospetta che gli USA ne abbiano già realizzato 5 esemplari), ma anche solo l’ipotesi di una sua futura realizzazione pone dei seri interrogativi sull’utilizzo della crittografia algoritmica, specialmente per quei documenti che devono rimanere riservati per un periodo di tempo abbastanza lungo. Quindi, alla luce di questo fatto, si impone un radicale cambiamento di strategia nella crittografia attuale: non basta piu’ aumentare la lunghezza delle chiavi per rendere sicuro un documento per i prossimi anni (sempre nell’ipotesi di avvento del calcolatore quantistico) ma bisogna ricorrere a qualcosa di completamente nuovo.
L’idea, in verita’, non e’ poi cosi’ recente. Essa risale alla fine degli anni ’60, quando uno studente di dottorato della Columbia University, Stephen Wiesner, ebbe per primo l’intuizione della crittografia quantistica. Essa era un’idea talmente avanzata per quei tempi che quasi non fu presa in considerazione. Wiesner ne parlo’ ad un suo amico, Charles Bennett, che trovo’ l’intuizione geniale, ma non era in grado di tradurla in pratica. Per dieci anni, circa, Bennett continuo’ a rimuginare sul problema, fin che’ divenne ricercatore presso i laboratori Watson dell’IBM. Li incontro’ Gilles Brassard, un informatico dell’universita’ di Montreal. Bennett illustro’ le teorie di Wiesner a Brassard ed insieme riuscirono a risolvere il problema.

La crittografia quantistica si fonda sul principio di indeterminazione di Werner Heisenberg e sulla particolare interpretazione che di quel principio fanno i fotoni, i quanti di luce. Il principio di Heisenberg sostiene che non è possibile conoscere, simultaneamente e con precisione assoluta, alcune caratteristiche fondamentali di un oggetto quantistico. Per esempio, non posso conoscere simultaneamente e con precisione assoluta dove sta un elettrone e con che velocità si muove. Se cerco di stabilire dove si trova esattamente, perdo la capacità di verificare con che velocità si muove. Se cerco di verificare con precisione la velocità, perdo informazioni sul luogo dove l’elettrone si trova. I fotoni, che sono appunto oggetti quantistici, approfittano del principio di Heisenberg per mischiare le carte quando li costringiamo a passare attraverso una fenditura. In particolare io non ho mai la possibilità di sapere, esattamente, quali fotoni, interpretando correttamente il principio di Heisenberg, attraverseranno quelle particolari fenditure che vengono chiamate “filtri di polarizzazione”.
Le leggi della meccanica quantistica dicono infatti che se si prova a guardare un oggetto microscopico, lo si disturba irrimediabilmente. E’ come se rimanesse sempre una traccia del nostro intervento. Se una spia provasse a decifrare la chiave quantistica, da una parte la modificherebbe rendendola inutilizzabile per aprire il messaggio, dall’altra verrebbe certamente smascherata. La principale differenza tra bit classici e quantistici sta nel fatto che mentre nel primo caso si hanno oggetti fissi e manipolabili, nel secondo ogni tentativo di azione esterna distrugge inevitabilmente i bit stessi. L’inviolabilità di un codice quantistico non dipende quindi dall’abilità della spia, ma risiede nelle leggi della natura.

Occorre ora che io vi introduca ad Alice e Bob, due personaggi di grido nelle strane storie scientifiche che narrano i fisici quantistici. Immaginiamo che Alice voglia mandare un messaggio segreto a Bob, ipotizzano Bennett e Brassard. E immaginiamo che Alice e Bob decidano di usare fotoni polarizzati e canali quantistici (per esempio una fibra ottica) per la loro comunicazione in codice. Per scrivere il messaggio cifrato e il codice per decifrarlo, Alice sceglie fotoni polarizzati in quattro direzioni diverse: orizzontale (A), verticale (B), a +45° (C) e a -45° (D). Alice e Bob possono comunicare inoltre anche attraverso un canale pubblico (il telefono, Internet).
– Alice sceglie una serie casuale di fotoni polarizzati (per esempio la serie AADCCDBBADCDBA…) e la registra, prima di inviarla. Bob ha due analizzatori disponibili. Uno (chiamiamolo 1) gli consente di distinguere tra i fotoni A e B (polarizzati in direzione orizzontale e verticale) e l’altro (chiamiamolo 2) gli consente di distinguere tra i fotoni C e D (diagonali opposti). Bob effettua la lettura, utilizzando un analizzatore a caso per ogni fotone e avendo anche cura di registrare la successione degli analizzatori usati (per esempio, 122111212221…). Ogni volta che Bob utilizza il primo analizzatore, legge correttamente le A e le B di Alice, ma commette un errore del 50% sulle C e le D. Viceversa, quando impiega il secondo analizzatore, individua al 100% la giusta sequenza di C e D, mentre una volta su due sbaglia le A e le B.
– Dopo avere analizzato una serie abbastanza lunga di fotoni, Bob chiama al telefono Alice e le comunica la successione di analizzatori usata (nel nostro caso, 122111212221…), ma non i risultati ottenuti. Alice verifica la sequenza e, sempre al telefono, dice a Bob per quali fotoni la serie risulta compatibile (nel nostro caso la serie è compatibile per i fotoni 1, 3, 7, 9…), tuttavia non gli dice in quale stato di polarizzazione ha inviato i fotoni 1, 3, 7, 9. A questo punto Bob e Alice si concentrano su tali fotoni e trascurano gli altri.
– A questo punto i nostri Alice e Bob scelgono un piccolo insieme della serie compatibile di fotoni e verificano, sempre per mezzo del telefono, se c’è la dovuta corrispondenza tra gli input iniziali inviati da Alice e i risultati ottenuti da Bob. Se tale corrispondenza c’è, Alice e Bob possono trarne la conseguenza che nessuno ha cercato di leggere il messaggio. Se invece è intervenuto il terzo personaggio della nostra storia, lo spione a cui la letteratura scientifica attribuisce in genere il nome di Eva, avrà necessariamente utilizzato la medesima procedura di Bob, avrà effettuato la lettura e poi avrà inviato a Bob una nuova serie di fotoni. Una breve analisi statistica dimostra che nella fase di lettura Eva utilizza necessariamente un analizzatore sbagliato nel 50% dei casi e nella fase di scrittura per Bob elabora necessariamente una serie sbagliata pure nel 50% dei casi. In altri termini, Bob legge alla fine una sequenza che, per almeno il 25%, sarà differente da quella che gli aveva inviato Alice. Questo errore è sufficiente a fargli comprendere senza alcun dubbio che qualcuno ha cercato di leggere il messaggio.

Anche senza l’intervento di Eva, la comunicazione tra Alice e Bob sarà macchiata da errori. Tuttavia questi errori possono essere minimizzati a piacere. Cosicché, una volta certi che nessuna Eva ha disturbato la loro comunicazione, Alice e Bob possono scambiarsi il resto del cifrario. E, infine, decrittare il messaggio. Con la certezza assoluta non solo che nessuno lo ha letto. Ma che nessuno ha cercato di leggerlo. Alice e Bob possono essere contenti: hanno realizzato una comunicazione crittografica perfetta.
Se desideri approfondire l’argomento, scarica il file quantum.ps.