LA CRITTOGRAFIA QUANTISTICA
La Fisica a Servizio Della Matematica
prof. Sandro Pistori
CRITTOGRAFIA QUANTISTICA
Il problema crittografico
Un mittente vuole comunicare un messaggio ad un destinatario senza che una
terza persona venga a conoscenza del contenuto del messaggio ANCHE SE
DOVESSE ENTRARE IN POSSESSO DELLO STESSO
ALICE
M
BOB
EVA
Alice codifica il messaggio in base a regole concordate solo tra Alice e Bob e
spedisce il messaggio a Bob che conoscendo le regole di cifratura , e’ in grado
di decodificare il messaggio e risalire all’originale. Se Eva viene in possesso
del messaggio cifrato ma non conosce le regole di cifratura, non `e in grado di
risalire al messaggio originale.
prof. Sandro Pistori
CRITTOGRAFIA QUANTISTICA
Definizioni e lessico
CRITTOGRAFIA 1: arte di rendere un messaggio inintelligibile a qualsiasi persona
non autorizzata a leggerlo
CRITTOGRAFIA 2: studio delle tecniche matematiche connesse agli aspetti della
sicurezza delle informazioni quali:
Autenticità – Integrità – Confidenzialità
PROTOCOLLO CRITTOGRAFICO: insieme di procedure che portano il messaggio
dal mittente al ricevente
ALGORITMO CRITTOGRAFICO: insieme di regole matematiche per cifrare e
decifrare il messaggio da comunicare
CHIAVE CRITTOGRAFICA oggetto (numerico) segreto con il quale si può codificare
e decodificare il messaggio
prof. Sandro Pistori
CRITTOGRAFIA QUANTISTICA
Osservazioni
La crittografia non vuol dire SICUREZZA
Un sistema crittografico è sicuro quanto il suo punto più debole
La crittografia è DIFFICILE
1. Da un punto di vista teorico: Si basa su tecniche matematiche avanzate
perché offrono delle possibilità superiori. Per poter avere un algoritmo sicuro
occorre dimostrare matematicamente quale è l’attacco più efficiente contro
l’algoritmo e che questo non è praticabile
2. Da un punto di vista implementativo : Occorre trovare il modo corretto per
implementare gli algoritmi matematici con il massimo delle prestazioni ed il
minimo utilizzo di risorse. Al momento dell’implementazione sorgono problemi
non presenti nella formulazione dell’algoritmo: la sicurezza del codice in
esecuzione, la possibilità che qualcuno legga i dati …
3. Da un punto di vista esecutivo: l’utilizzatore è veramente capace di
utilizzare il programma o l’hardware che implementa un algoritmo crittografico?
prof. Sandro Pistori
CRITTOGRAFIA QUANTISTICA
Esempio: Cifrario di CESARE
ALGORITMO: sostituire ogni lettera con N-esima
nell’alfabeto ricominciando da capo quando si arriva alla Z
lettera
successiva
F(x)=(x+N) mod 21 con 0  N  20
Essendo x il valore numerico assegnato alla lettera in base al posto occupato
nell’alfabeto (a 21 lettere nel caso in questione)
CHIAVI: chiave di cifratura N e chiave di decifratura –N
Chiavi possibili: 21.
Esempio: N = 7
ABCDEFGHILMNOPQRSTUVZ
HILMNOPQRSTUVZABCDEFG
GIULIO CESARE
PRESRV LNCHBN
prof. Sandro Pistori
CRITTOGRAFIA QUANTISTICA
Esempio: cifratura MONOALFABETICA
Consideriamo un qualsiasi riordinamento dell’alfabeto fissato, e si sostituisca
ogni lettera con la lettera corrispondente.
Chiavi possibili:
21!
Esempio:
ABCDEFGHILMNOPQRSTUVZ
Q E RTU I O PAS D F G H LZ C V B N M
GALILEI
OQSASUA
prof. Sandro Pistori
CRITTOGRAFIA QUANTISTICA
Esempio: Cifrario di VIGENERE
prof. Sandro Pistori
CRITTOGRAFIA QUANTISTICA
Il cifrario perfetto - OTP
Un cifrario perfetto è un sistema che non può essere decifrato non
possedendo la chiave anche in un tempo infinito e facendo uso di computer di
potenza infinita.
L’esempio più conosciuto di sistema perfetto è costituito dal cifrario di
Vernam (1926), altrimenti noto con il nome di blocco monouso (One Time PadOTP)
Algoritmo OTP:
Il messaggio da cifrare viene trasformato in bit
Viene scelta casualmente una chiave: numero binario lungo quanto il testo da
cifrare
Viene fatto XOR di ogni bit del messaggio con il corrispondente bit della chiave
e questo sarà il messaggio cifrato
Bob decifra il messaggio facendo l’ XOR con la chiave
prof. Sandro Pistori
CRITTOGRAFIA QUANTISTICA
L’operatore XOR
Operatore logico binario (OR esclusivo) definito seconda la seguente
tabella:
Restituisce
XOR
0
1
0
0
1
1
1
0
1 quando opero tra valori binari diversi
0 quando opero tra valori uguali
prof. Sandro Pistori
CRITTOGRAFIA QUANTISTICA
Il cifrario perfetto - OTP
Alla base dell’impossibilità di violare OTP ci sta:
A.
la casualità della chiave
B.
il monouso della chiave
C.
la lunghezza della chiave (almeno quanto il testo da cifrare)
Supponiamo sia N il numero di bit del messaggio in chiaro e Alice abbia
cifrato il testo utilizzando OTP con una chiave random.
Se Eva intercetta il messaggio cifrato per decodificarlo non ha altra scelta
che provare tutte le 2N possibili chiavi
Anche se Eva avesse a disposizione un computer infinitamente potente
che le permettesse di decodificare tutti i possibili messaggi in un tempo
ragionevole, non potrebbe scegliere quello giusto perché si troverebbe
davanti tutti i possibili risultati
prof. Sandro Pistori
CRITTOGRAFIA QUANTISTICA
Il cifrario perfetto - Problemi
Come posso generare chiavi che siano veramente casuali ?
Il generare grandi numeri casuali (random) è un problema di
programmazione molto complesso che viene comunque risolto mediante
difficili algoritmi matematici e l’intervento umano (molti di questi sistemi
richiedono all’utente di digitare a caso sulla tastiera o di muovere il mouse
casualmente)
Come fa Alice a trasmettere la chiave se il canale di comunicazione non
è sicuro?
Crittografia a chiave pubblica e Crittografia quantistica
prof. Sandro Pistori
CRITTOGRAFIA QUANTISTICA
Crittografia a CHIAVE PUBBLICA
Alice fornisce Bob di un lucchetto del quale solo lei ha la chiave:
Il lucchetto è la chiave pubblica mediante la quale con un algoritmo noto
viene cifrato il messaggio.
Il messaggio cifrato da Bob e spedito da Alice può essere decodificato
solo con la chiave privata di Alice
Alice mediante la chiave privata decodifica il messaggio
È praticamente impossibile ricavare la chiave privata in possesso solo di
Alice dalla conoscenza della chiave pubblica usata per cifrare il messaggio
prof. Sandro Pistori
CRITTOGRAFIA QUANTISTICA
Crittografia a CHIAVE PUBBLICA
Algoritmi asimmetrici: procedure che sono matematicamente impossibili da
invertire in tempi ragionevoli per la validità del messaggio comunicato
Si basano sull’esistenza di One Way trapdoor function, vale a dire funzioni
matematiche f:
1. Facili da calcolare
2. In pratica impossibili da invertire
3. Facili da invertire solo in presenza di un’ulteriore informazione: la chiave
privata segreta (trapdoor)
Esempio di tale tipo di funzione è la fattorizzazione di un intero n = pq
primi
prof. Sandro Pistori
CRITTOGRAFIA QUANTISTICA
p,q
RSA: Rivest, Shamir e Adleman
Si scelgano due numeri primi p , q molto grandi
Si scelga un numero casuale e tale che 1<e<r=(p-1)(q-1) ed MCD(e;r)=1
Sia n=pq
Si calcoli d l’unico intero tale che ed  1 mod(r)
La chiave Pubblica C è la coppia (e,n)
La chiave Privata K è la coppia (d,n)
Data la chiave C ed il messaggio m viene cifrato con la formula c  me mod(n)
Data la chiave K ed il messaggio c viene decifrato con la formula m  cd mod(n)
prof. Sandro Pistori
CRITTOGRAFIA QUANTISTICA
Crittografia a CHIAVE PUBBLICA
Il principale problema è la lentezza a causa dell’impiego di risorse: LE
CHIAVI SONO MOLTO LUNGHE PER GARANTIRE LA DIFFICOLTA’
NECESSARIA AD ESEMPIO NELLA FATTORIAZZAZIONE
La crittografia a Chiave Pubblica risolve il problema principale della
crittografia simmetrica, vale a dire lo scambio delle chiavi
La sicurezza è basata su problemi matematici difficili da risolvere per i
quali non è stata ancora dimostrata l’impossibilità dell’esistenza di algoritmi
veloci che li risolvono. Nulla vieta quindi che in un futuro anche non lontano tali
algoritmi non vengano scoperti
prof. Sandro Pistori
CRITTOGRAFIA QUANTISTICA
La polarizzazione della luce
MAXWELL: la luce è un’onda elettromagnetica, risultato in ogni punto della sua
propagazione della composizione di un campo elettrico e di un campo magnetico
che vibrano su direzioni variabili ma sempre tra esse perpendicolari
prof. Sandro Pistori
CRITTOGRAFIA QUANTISTICA
La polarizzazione della luce
Facendo passare l’onda elettromagnetica attraverso delle sostanze
particolari o strumenti specifici chiamati analizzatori posso ottenere un’onda
che vibra solo su un determinato piano di oscillazione: ONDA POLARIZZATA
Vi sono direzioni di polarizzazione privilegiate, tra loro ortogonali:


Orizzontale / Verticale
Diagonale a 45° / Diagonale a 135°
Quando un’onda passa attraverso un analizzatore la componente dell’onda
parallela alla direzione dell’analizzatore passa mentre quella perpendicolare
viene assorbita
$1$
45°
prof. Sandro Pistori
CRITTOGRAFIA QUANTISTICA
Meccanica Quantistica
È una disciplina della fisica ed una teoria formale nata agli inizi del ‘900
Formula le leggi fondamentali delle particelle elementari (atomiche e
sub-atomiche)
Le leggi che regolano il mondo delle particelle elementari sono spesso in
contrasto con la nostra intuizione legato ad un macrocosmo
Tre concetti principali:
1. La MQ è molto spesso statistica, nel senso che spesso non può predire con
certezza il risultato di un esperimento ma solo la probabilità di riuscita
2. La natura è quantizzata e gli scambi di energia non avvengono in modo
continuo ma discreto
3. Non è possibile duplicare uno stato conosciuto, cioè non esiste una
fotocopiatrice quantistica perché ogni misura perturba il sistema
misurato
prof. Sandro Pistori
CRITTOGRAFIA QUANTISTICA
Il principio di indeterminazione di HEINSEMBERG
È impossibile misurare contemporaneamente la posizione e la velocità
di una particella elementare
La misura esatta di una delle due grandezze perturba irrimediabilmente
l’altra
Se si vuole misurare la posizione di un elettrone occorre usare strumenti
che lavorano con lunghezze d’onda molto piccole il che comporta
frequenze elevate e quindi quantità di energia che produrrà aumento di
velocità della particella
Se si vuole misurare la velocità si dovrà operare con strumenti a frequenze
molto basse e quindi lunghezze d’onda molto grandi con le quali quindi non
si riuscirà a vedere la particella
prof. Sandro Pistori
CRITTOGRAFIA QUANTISTICA
I fotoni
Unità fondamentale della quantizzazione dell’energia della luce. Può essere
visto come un microscopico campo elettrico oscillante, la cui direzione di
oscillazione rappresenta la sua polarizzazione
Un raggio di luce è quindi un insieme di fotoni (massa nulla) che si muovono
Un fotone è polarizzato verticalmente se dopo esser passato da un
analizzatore verticale è fermato da un analizzatore orizzontale e viceversa
Un fotone è polarizzato a 45° se dopo esser passato attraverso un
analizzatore diagonale è fermato da un analizzatore a 135° e viceversa
E NEL CASO IBRIDO VERTICALE (ORIZZONTALE) + DIAGONALE, come
spiegare l’assorbimento del 50% di energia che si ha nell’interpretazione
ondulatoria della luce?
prof. Sandro Pistori
CRITTOGRAFIA QUANTISTICA
LA CRITTOGRAFIA QUANTISTICA
Teniamo presente che:
Gli elaboratori sono costituiti da circuiti stampati sempre più piccoli
Le informazioni vengono sempre più spesso trasmesse attraverso onde
elettromagnetiche e fotoni ed inviate mediante fibre ottiche
Si stanno costruendo prototipi sempre migliori di elaboratori quantistici
capaci di risolvere, grazie ad un modo di calcolare completamente diverso
dagli elaboratori moderni, problemi matematicamente difficili in breve tempo
(ad esempio la fattorizzazione)
La CRITTOGRAFIA PROVA AD
APPOGGIO ALLA MATEMATICA
prof. Sandro Pistori
UTILIZZARE
LA FISICA IN
CRITTOGRAFIA QUANTISTICA
QKD: Quantum Key Distribution
DEFINIZIONE: Protocollo per generare e scambiare in assoluta sicurezza
chiavi segrete tra due corrispondenti per usi crittografici, mediante particelle
elementari e sfruttando le leggi della meccanica quantistica
OCCORRENTE
CANALE DI COMUNICAZIONE QUANTISTICO attraverso il quale avviene
lo scambio di fotoni (FIBRE OTTICHE – SPAZIO LIBERO)
CANALE DI COMUNICAZIONE CLASSICO attraverso il quale avviene la
comunicazione completa in modo autenticato ed integro
RICETTA: Alice e Bob creano una chiave segreta in modo casuale usando
principi quantistici e poi usando ad esempio OTP scambiano in maniera
matematicamente sicura messaggi
prof. Sandro Pistori
CRITTOGRAFIA QUANTISTICA
IL PROTOCOLLO BB84: proposto da Bennett e Bressard nel 1984
Usando un canale di comunicazione quantistico ALICE prepara un fotone
con una delle quattro polarizzazioni scelta casualmente, lo spedisce a
BOB annotandosi la scelta fatta
BOB sceglie in modo casuale ed indipendente da ALICE un filtro di
polarizzazioni orizzontale/verticale o diagonale, misura la polarizzazione
del fotone ricevuto e si annota il risultato tenendolo segreto
ALICE e BOB ripetono i punti 1 e 2 un numero sufficiente di volte: questo
numero dipende dalla lunghezza della chiave che si vuole generare (di
norma più del doppio dei bit che compongono la chiave stessa)
Usando il canale di comunicazione classico BOB informa ALICE della
scelta di direzione (orizzontale/verticale o diagonale) che ha fatto per
misurare la polarizzazione di ciascun fotone ma non dice il risultato della
misura
Alice comunica pubblicamente se per ciascun fotone Bob ha fatto la scelta
di direzione corretta. ALICE e BOB scartano tutte le misure per cui BOB
aveva scelto la direzione sbagliata ed i bit che rimangono formano
nell’ordine la sifted key, ovvero la prima proposta di chiave
prof. Sandro Pistori
CRITTOGRAFIA QUANTISTICA
Un esempio…
prof. Sandro Pistori
CRITTOGRAFIA QUANTISTICA
Osservazioni
Dopo i punti 1 e 2 del protocollo Bob ha il 25% di probabilità di avere il
risultato sbagliato: nel 50% dei casi scegli la direzione sbagliata di misura e
quando sceglie la direzione sbagliata nel 50% dei casi ottiene il risultato
errato
Nei punti 4 e 5 Alice e Bob eliminano i fotoni per i quali Bob ha sbagliato la
direzione e quindi sono in media la metà di quelli inviati da Alice
La Chiave segreta è indipendente dalle scelte fatte da Alice e Bob ma è una
combinazione delle scelte casuali di entrambi
Se tutto fosse perfetto ora avrebbero una chiave segreta pronta all’uso. Ma
Eva?…
prof. Sandro Pistori
CRITTOGRAFIA QUANTISTICA
Man in the middle: EVA all’attacco
Eva si inserisce nel canale di comunicazione quantistico intercettando e
rispedendo i fotoni inviati da Alice a Bob
Eva come Bob non sa quale polarizzazione scegliere per misurare il fotone e
quindi commette errori con la stessa percentuale di Bob
Eva qualunque cosa faccia modificherà irrimediabilmente lo stato dei
fotoni inviati da Alice
Nel caso del semplice attacco diretto in media il 25% dei bit della sifted-key di
Bob saranno diversi da quelli di Alice
Quindi è possibile capire se vi è stato un attacco controllando se la sifted-key
di Bob è diversa da quella di Alice
A questo punto o Alice e Bob
escogitano un modo per neutralizzare l’attacco di Eva modificando
ulteriormente la loro key in modo da rendere inefficaci le informazioni
raccolte da Eva
interrompono la comunicazione e vanno a caccia di Eva
prof. Sandro Pistori
CRITTOGRAFIA QUANTISTICA
I fotoni sentinelle
Eva e Bob si accordano di dire pubblicamente i risultati delle misure di
alcuni fotoni per controllare la sicurezza del canale
In caso di attacco si possono avere quattro casi:
Filtro di Alice = Filtro di Eva = Filtro di Bob
Filtro di Alice  Filtro di Eva = Filtro di Bob
Filtro di Alice = Filtro di Eva  Filtro di Bob
Filtro di Alice  Filtro di Eva  Filtro di Bob
prof. Sandro Pistori
CRITTOGRAFIA QUANTISTICA
I fotoni sentinelle
I casi in cui il filtro di Alice è diverso da quello di Bob vengono scartati dal
protocollo e quindi ogni risultato di Eva è inutile (secondo e terzo caso)
Nel primo caso Eva è stata particolarmente fortunata e quindi è riuscita ad
avere il bit esatto della sifted-key
Nel quarto caso al contrario non solo ha usato il filtro sbagliato ma questo
suo errore può rivelare la sua presenza nel caso in cui Alice e Bob abbiano
deciso di usare quel fotone come sentinella perché il risultato ottenuto da
Bob sarà diverso da Alice contrariamente a quanto sarebbe dovuto
accadere.
prof. Sandro Pistori
CRITTOGRAFIA QUANTISTICA
Error Correction e Privacy Amplification
E se gli errori introdotti fossero errori strumentali o accidentali ?
Come distinguere errori strumentali da attacchi di Eva?
RISPOSTA: non si può !!!
C’e sempre un errore e quindi dato che è impossibile distinguere
l’errore accidentale dall’attacco di Eva butto sempre via la chiave?
RISPOSTA: ovviamente NO !!!
prof. Sandro Pistori
CRITTOGRAFIA QUANTISTICA
Error Correction e Privacy Amplification
Si assume che tutti gli errori siano dovuti ad attacchi di Eva
Alice e Bob applicano alla sifded-key ottenuta altre due fasi:
1.
Error correction: permette di eliminare gli errori nella key e stimare la
percentuale degli stessi. Se questa è > 11% la chiave viene gettata
2.
Privacy Amplification: la chiave viene ulteriormente modificata in modo tale
che l’informazione in possesso di Eva (<11%) viene ridotta a zero
Queste due fasi possono avvenire anche pubblicamente
Alla fine il numero dei bit di cui è composta la chiave può arrivare fino ad
1/8 dei fotoni utilizzati inizialmente da Alice
prof. Sandro Pistori
CRITTOGRAFIA QUANTISTICA
Error Correction
Alice sceglie due bit della sua chiave ed esegue XOR
Alice dice a Bob i bit scelti ed il risultato dell’XOR, ma non il valore dei singoli
bit
Bob calcola l’XOR degli stessi due bit della sua sifdet-key e dice ad Alice se il
risultato è lo stesso o no
Se il risultato è lo stesso tengono il primo bit e scartano il secondo
Se il risultato è diverso scartano tutti e due i bit e calcolano un errore
DOMANDA: Quando questa procedura non funziona?
Se, rispetto ad Alice, entrambi i bit di Bob sono errati XOR restituirà gli
stessi risultati, e quindi Alice e Bob non si accorgeranno dell’errore
Esistono procedure più complesse che annullano questo rischio
prof. Sandro Pistori
CRITTOGRAFIA QUANTISTICA
Privacy Amplification
Alice sceglie a caso due bit e ne segue l’XOR
Alice comunica a Bob i due bit scelti ma non il risultato
Bob esegue l’XOR dei due bit e mantiene segreto il risultato
Sia Alice che Bob sostituiscono i bit con il risultato dell’XOR
Se anche Eva decidesse di procedere visto che la sua sifdet-key è diversa
qualche volta opererebbe con un bit giusto ed uno sbagliato e e lo
sostituirebbe con il risultato dell’XOR ovviamente errato e quindi alla fine il
numero di errori nella chiave di Eva teoricamente aumenterebbe
prof. Sandro Pistori
CRITTOGRAFIA QUANTISTICA
Esempio
ALICE : 0 1 1 0 1 0 1 1 1
BOB: 0 1 0 0 1 1 0 1 1
1) XOR
1
1
1
ALICE : 0 1 0 1 1
1
0
1
BOB: 0 1 1 1 1
2) XOR
0
ALICE : 0 1 0 0
prof. Sandro Pistori
0
BOB: 0 1 1 0
CRITTOGRAFIA QUANTISTICA
A confronto…
QKD
Chiave pubblica/privata
CON
Richiede linee dedicate e È molto portabile e può essere PRO
necessita di Hardware specifici
implementato in software
PRO
Assolutamente sicuro
PRO
La sicurezza è basata su principi La sicurezza è basata sulla CON
generali che non si modificano in lunghezza delle chiavi in base
futuro
alla potenza degli elaboratori
PRO
È
sicura
anche
elaboratori quantistici
CON
Oggi molto costoso
CON
Molto nuovo
sviluppo
ed
prof. Sandro Pistori
Matematicamente non deciso CON
perché basato su problemi
matematici dei quali non è nota
pubblicamente una soluzione
semplice
con
gli Gli
elaboratori
quantistici CON
sapranno romperla sicuramente
A portata economica di chiunque
in
PRO
grande Ben sperimentato e di grande PRO
distribuzione
CRITTOGRAFIA QUANTISTICA
A confronto…
QKD
Chiave pubblica/privata
CON
Ad oggi funziona solo a distanze Funziona a qualsiasi distanza e PRO
limitate con connessioni a fibre con qualunque network
ottiche dirette
PRO
Può essere utilizzato facilmente Non può essere
assieme
al
OTP,
l’unico facilmente con il OTP
algoritmo
matematicamente
sicuro
CON
La velocità di creazione della Richiede
molte
risorse CON
chiave segreta è ancora molto computazionali quando le chiavi
bassa
sono molto lunghe
prof. Sandro Pistori
utilizzato CON
CRITTOGRAFIA QUANTISTICA
Scarica

Crittografia quantistica