12
UNIVERZA V LJUBLJANI FAKULTETA ZA MATEMATIKO IN FIZIKO Fizika kondenzirane snovi – 2. stopnja Luka Černe Kvantna kriptografija Seminar 1b Mentor: prof. dr. Marko Žnidarič Ljubljana, 2014

UNIVERZAVLJUBLJANI …mafija.fmf.uni-lj.si/.../seminar_LCerne_MZnidaric_kriptografija.pdf · 1 Uvod Potrebapokodiranjusporočilježezelostara. Šeposebejjebilokodiranjesporočil pomembnovvojnemčasu

Embed Size (px)

Citation preview

UNIVERZA V LJUBLJANIFAKULTETA ZA MATEMATIKO IN FIZIKO

Fizika kondenzirane snovi – 2. stopnja

Luka ČerneKvantna kriptografija

Seminar 1b

Mentor: prof. dr. Marko Žnidarič

Ljubljana, 2014

Kazalo1 Uvod 3

2 Klasična kriptografija 42.1 Algoritem RSA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

3 Kvantna kriptografija 63.1 Izrek o ne kloniranju kvantnih stanj . . . . . . . . . . . . . . . . . . . . . . 63.2 Protokol BB84 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

3.2.1 Teorija . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73.2.2 Eksperiment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

4 Prisluškovanje 10

5 Zaključek 11

Kvantna kriptografija

Povzetek

V seminarju je predstavljena ideja kvantne kriptografije in njene prednosti pred klasičnokriptografijo. Kot primer klasične kriptografije je podan protokol RSA, katerega varnosttemelji na računski zahtevnosti razcepa števil na prafakorje. Kot primer kvantnega protokolaje izbran protokol BB84, ki je bil prvi tovrstni protokol. Predstavljene so tudi nekateretežave pri eksperimentalni realizaciji tega protokola. Na koncu je predstavljenih še nekajnačinov prisluškovanja komunikaciji preko kvantnega kanala.

Quantum cryptography

Abstract

This paper introduces basic principles of quantum cryptography and its advantages toclassical cryptography. As an example of classical cryptography the RSA algorithm ispresented. Its safety is based on algorithmic difficulties of factorization of large numbers.As an example of quantum algorithem the BB84 protocol is explained. BB84 protocol wasthe first quantum key distribution protocol. Some difficulties in experimental realizationof the BB84 protocol are also presented. Finally, some methods of eavesdropping arementioned.

Ključne besede: kriptografija, kvantna kriptografija, protokol BB84, algoritem RSAKeywords: cryptography, quantum cryptography, BB84 protocol, RSA algorithm

1 UvodPotreba po kodiranju sporočil je že zelo stara. Še posebej je bilo kodiranje sporočil

pomembno v vojnem času. Takrat je bilo zelo pomembno, da sovražnik ni pridobil kakšnihzaupnih informacij o nasprotni strani, saj bi ji s tem lahko močno škodoval.

Za potrebe skrivnega pošiljanja sporočil so se skozi zgodovino uporabljale različnemetode in tehnike. Morda eden najbolj znanih načinov kodiranja je kodirni stroj enigma(slika 1), ki ga je uporabljala nemška vojska med drugo svetovno vojno. V splošnem

Slika 1: Kodirni stroj enigma. [1]

pošiljatelj sporočila uporabi neki skriven predpis (ključ), s katerim naredi sporočilo nera-zumljivo nepovabljenim bralcem [2]. Prejemnik nato s poznavanjem tega predpisa lahkosporočilo prevede nazaj in ga prebere. Glede na to, kakšen ključ se uporabi za kodiranjein dekodiranje sporočila, lahko kriptografske postopke razdelimo v dve skupini. V prvemprimeru tako pošiljatelj kot prejemnik uporabita isti ključ, v drugem pa se ključ pošiljateljarazlikuje od ključa prejemnika. Prvemu primeru tako pravimo simetrična kriptografija,drugemu pa asimetrična kriptografija [2]. Glavna težava skrivnega pošiljanja sporočil je,kako naj si pošiljatelj in prejemnik izmenjata ključ na način, da le-ta ne bi prišel v napačneroke. Pri klasični kriptografiji ne obstaja povsem varen način, medtem ko lahko s pomočjokvantne fizike (vsaj v teoriji) ključ izmenjamo povsem varno.

Varnost kodiranega sporočila pa ne temelji zgolj na varni izmenjavi ključa. V kolikor seza kodiranje ne uporablja ključ, ki je enake dolžine kot sporočilo, oz. se en ključ uporabivečkrat, je varnost takega sporočila omejena. Kvantna kriptografija zagotavlja samo varnoizmenjavo ključa, varnost sporočila pa je nato odvisna od rabe tega ključa. Poudariti jemorda treba, da je sporočilo nemogoče razvozlati, če se za šifriranje sporočila uporabinaključno generiran ključ enake dolžine kot sporočilo, in da se vsak ključ uporabi samoenkrat (one-time pad) [3]. Edina možnost, da se tako sporočilo razvozla je bodisi, da sesporočilo ugane, bodisi, da se preizkusi vse možne kombinacije, česar pa ni mogoče dosečiv realnem času. V praksi se pogosto ne uporablja ključev enake dolžine kot sporočilo, saj

3

je treba, za tako kodirano sporočilo, poslati dvakrat več podatkov in je zato tako kodiranjeiz tega vidika nepraktično. V praksi velja, da naj bi se, pri asimetrični kriptografiji,uporabljali ključi dolžine vsaj 3072 bitov, medtem ko je minimalna priporočena dolžinaključa pri simetrični kriptografiji 130 bitov [4].

V nadaljevanju si bomo ogledali primer klasične kriptografije, natančneje asimetričnekriptografije, ki se danes večinoma uporablja. Nato bomo prešli na kvantno kriptografijo,kjer si bomo ogledali enega izmed načinov pošiljanja ključa preko t.i. kvantnega kanala,ki je najpogosteje kar optično vlakno, lahko pa tudi zrak ali kaj drugega. Na koncu pabom predstavil še nekaj načinov prisluškovanja kvantnemu kanalu. Za pošiljatelja bomouporabljali ime Ana, za prejemnika Bob, morebitnemu napadalcu pa bo ime Eva.

2 Klasična kriptografijaKot je omenjeno v uvodu, je največja težava pri varnem pošiljanju sporočil med Ano

in Bobom ta, da si morata med seboj na kar se da varen način sporočiti, kakšen ključsta uporabila za kodiranje sporočila. Če bi ključ prišel v roke Evi, bi ta lahko prebralasporočilo, ki bi bilo s tem ključem zakodirano.

W. Diffie in M. Hellman sta leta 1970 predstavila zanimivo rešitev problema izmenjaveključa [5]. Gre za primer asimetrične kriptografije, ki temelji na uporabi dveh različnihključev za kodiranje in dekodiranje. Za kodiranje se uporablja t.i. javni ključ, za dekodiranjepa t.i. privatni ključ. Vsak od udeležencev ima tako dva ključa, enega skrivnega, ki gapozna samo on (privatni ključ), in enega, ki je znan vsem udeležencem (javni ključ). Javniključ ni skriven in je lahko javno oznanjen. Prednost takega načina izmenjave ključaje v tem, da ni potrebe, da si uporabniki izmenjajo privatne ključe, s čimer se izognejonevarnosti, da ključ pride v napačne roke. Dandanes se princip javnega in privatnegaključa uporablja za večino kodiranih sporočil. Ta princip se uporablja med drugim tudiza elektronsko pošto. Poznanih je več algoritmov, ki temeljijo na principu javnega inprivatnega ključa. Mi si bomo ogledali algoritem RSA, ki je najpogosteje uporabljan.

2.1 Algoritem RSA

RSA algoritem je eden prvih algoritmov, ki temeljijo na javnem in privatnem ključu.Leta 1977 so ga objavili R. Rivest, A. Shamir in L. Adleman [6]. Njegova varnost temeljina veliki časovni zahtevnosti algoritma za razcep nekega števila na prafaktorje.

Časovno zahtevnost algoritma, v računalništvu označimo, kot funkcijo O(f(n)), kjerje f(n) neka funkcija parametra n, n pa predstavlja velikost sistema (npr. dolžino tabele,velikost števila, ki ga razstavljamo...). Časovna zahtevnost algoritma nam pove, kako čas,ki je potreben za rešitev problema narašča z velikostjo sistema n. Npr. za algoritem sčasovno zahtevnostjo O(log(n)) velja, da čas, ki je potreben za rešitev problema naraščalogaritemsko z n.

Denimo, da želi Ana Bobu nekaj sporočiti s pomočjo RSA algoritma. V tem primeruBob zgenerira dva ključa na sledeči način [6]:

• Bob naključno izbere dve veliki praštevili p in q.

• Bob izračuna n = pq.

• Bob izračuna Φ = (p− 1)(q − 1).

• Bob naključno izbere celo število e, tako da je 1 < e < Φ. Veljati mora tudi, da sta ein Φ tuji števili (največji skupni delitelj je 1). Naključno izbiro ponovi tolikokrat,dokler za niso, za nek e, vsi zahtevani pogoji izpolnjeni.

4

• Bob izračuna število d iz enačbe de ≡ 1 mod (Φ)

Enačba a ≡ b mod (c) pomeni, da sta a in b taki števili, da velja a − b = kc, kjer je knaravno število.

Javni ključ tvorita števili n in e, privatnega pa d. Bob javni ključ (števili n in e) sporočiAni, privatni ključ pa obdrži pri sebi. Ana nato s pomočjo teh dveh števil zakodira svojesporočilo na naslednji način [6]:

• Ana svoje sporočiloM spremeni v številom (npr. zamenjava črke z zaporedno številkočrke v abecedi). Veljati mora 0 ≤ m < n. V kolikor to ne velja, Ana svoje sporočilorazdeli na bloke mi, za katere velja 0 ≤ mi < n.

• Ana zakodira sporočilo: c ≡ me mod (n) (oz. vsak blok posebejci ≡ me

i mod (n)).

Svoje kodirano sporočilo c nato preko nekega javnega kanala (npr. internet) pošlje Bobu.Bob mora le še prebrati sporočilo s pomočjo svojega privatnega ključa. Originalno sporočilom izračuna po enačbi m ≡ cd mod (n). Oglejmo si primer [6]:

• Bob izbere p = 61 in q = 53.

• Bob izračuna n = pq = 3233.

• Bob izračuna Φ = (p− 1)(q − 1) = 3120.

• Bob izbere e, tako da 1 < e < Φ in da sta e in Φ tuji števili. Denimo e = 17.

• Bob izračuna d iz enačbe 17d ≡ 1 mod (3120) in dobimo: d = 2753.

• Bob po javnem kanalu Ani sporoči (3233,17).

• Denimo, da Ana želi poslati sporočilo m = 65. Kodirano sporočilo je torej:c ≡ 6517 mod (3233) = 2790.

• Bob iz c s privatnim ključem izračuna nazaj prvotno sporočilo. Prvotno sporočiloizračuna z enačbo m ≡ cd mod (n). Tako dobi:m ≡ 27902753 mod (3233) = 65.

Privatni ključ d lahko enostavno izračunamo s pomočjo razširjenega Evklidovega algoritma[7], ki rešuje enačbo

ax+ by = gcd(a, b),

kjer je gcd(a, b) največji skupni delitelj števil a in b. Algoritem za dani števili a in bizračuna in vrne števila x,y in gcd(a, b). Da bi izračunali d, tako preoblikujemo enačboed ≡ 1 mod (Φ) v enačbo

ed− kΦ = 1.

S pomočjo razširjenega Evklidovega algoritma nato dobimo vrednosti d in k, medtem kovemo, da velja gcd(e,Φ) = 1, saj smo tako izbrali e. Časovna zahtevnost takega algoritma jeO((log(Φ))2). Če pa števil p in q ne poznamo, ne poznamo niti števila Φ in zato privatnegaključa d ne moremo kar izračunati. Da bi izračunali d moramo najprej razstaviti število nna prafaktorje, kar pa je časovno zelo potratno. Klasično zaenkrat ne obstaja algoritem, kibi to nalogo opravil s polinomsko časovno zahtevnostjo. Varnost RSA algoritma temeljiravno na tej računski zahtevnosti. Težava je, da ni dokaza, da tak polinomski algoritem zafaktorizacijo ne obstaja, hkrati pa je poznan kvantni algoritem, ki ima polinomsko časovnozahtevnost, a na srečo klasične kriptografije, kvantni računalniki zaenkrat še niso dovoljsposobni, da bi lahko razstavljali velika števila.

5

3 Kvantna kriptografijaZa razliko od klasične kriptografije se kvantna kriptografija za svojo varnost ne zanaša

na računsko zahtevnost algoritmov, temveč temelji na principih kvantne mehanike. Glavnaideja je, da kvantnega stanja ne moremo izmeriti tako, da ne bi vplivali na samo stanje.Vemo namreč, da po meritvi valovna funkcija preide v eno izmed lastnih stanj pomerjenegaoperatorja. Če bi tako nekdo hotel pridobiti informacije o ključu, ki si ga Ana in Bob želitaizmenjati, bi s svojo meritvijo močno vplival na sistem, in bi tako Ana in Bob izvedela, daje prišlo do poskusa prisluškovanja [2].

Izmenjava ključa pri kvantni kriptografiji poteka preko t.i. kvantnega kanala. To jenajpogosteje kar optično vlakno. Za pošiljanje informacij se najpogosteje uporabljajokubiti. Kubiti so kvantni ekvivalenti klasičnim bitom in so vektorji stanja dvonivojskegakvantnega sistema. Zapišemo jih lahko kot

|ψ〉 = α |0〉+ β |1〉 ,

kjer sta α in β kompleksni števili, za kateri velja |α|2 + |β|2 = 1, |0〉 in |1〉 pa predstavljatastanji v dvonivojskem sistemu (npr. spin 1/2 in -1/2). Za razliko od klasičnih bitov, ki lahkozavzamejo bodisi vrednost 0 bodisi 1, je za kubite značilno, da so lahko v superpozicijistanj |0〉 in |1〉. Ko kubit pomerimo, dobimo za rezultat z verjetnostjo |α|2 stanje |0〉 in zverjetnostjo |β|2 stanje |1〉 [12].

Poznanih je mnogo algoritmov za kvantno izmenjavo ključa. V nadaljevanju si bomoogledali prvi tak algoritem, ki sta ga predstavila C.H. Bennett in G. Brassard leta 1984, inse imenuje protokol BB84 [2].

3.1 Izrek o ne kloniranju kvantnih stanj

Ena glavnih lastnosti kvantne mehanike, ki zagotavlja varnost kvantne kriptografijeje izrek o ne kloniranju kvantnih stanj (no cloning theorem). Zakaj je ta lastnost takopomembna bo razvidno v nadaljevanju seminarja.

Kloniranje pomeni, da lahko neko neznano kvantno stanje, s pomočjo unitarnih trans-formacij, spravimo v enako stanje kot sistem, ki ga želimo klonirati. Na koncu dobimo dveločeni stanji z enakimi lastnostmi [8].

Dokažimo zgornji izrek s protislovjem. Denimo, da je kloniranje mogoče. Imejmo takodve stanji sistema A, |ψ〉A in |φ〉A, ki ju želimo klonirati. Imejmo še neko stanje sistemaB, |e〉B, ki bo služilo kot stanje, v katerega bi radi |ψ〉A in |φ〉A skopirali. Sestavljensistem lahko zapišemo s produktnim stanjem |ψ〉A |e〉B oz. |φ〉A |e〉B. Naj bo U unitarnatransformacija, ki bo stanji |ψ〉A in |φ〉A prekopirala v |e〉B. U je unitarna transformacija,saj je to operator časovnega razvoja, ki ga v kvantni mehaniki zapišemo kot

U = exp(−iHt/~),

kjer je H Hamiltonjan našega sistema [9]. Z delovanjem operatorja U na produktni stanjitako dobimo:

U |ψ〉A |e〉B = |ψ〉A |ψ〉B in U |φ〉A |e〉B = |φ〉A |φ〉B . (1)

Napravimo sedaj sledeči skalarni produkt:

〈e|B 〈ψ|A U†U |φ〉A |e〉B = 〈ψ|B 〈ψ|A |φ〉A |φ〉B . (2)

Ker je U unitaren, velja U†U = 1, in ker lahko stanja sistema normiramo, velja tudi〈e|B |e〉B = 1. Tako iz enačbe (2) dobimo naslednjo zvezo:

〈ψ|A |φ〉A = 〈ψ|B |φ〉B 〈ψ|A |φ〉A ⇒ 〈ψ |φ〉 = 〈ψ |φ〉2 . (3)

6

Da bo enačba (3) izpolnjena, morata biti stanji |ψ〉 in |φ〉 bodisi enaki bodisi ortogonalni.Ker pa sta to poljubni stanji, v splošnem enačba (3) ne velja in potemtakem kvantnih stanjni mogoče klonirati.

3.2 Protokol BB84

3.2.1 Teorija

Protokol BB84 temelji na izmenjavi polariziranih fotonov, ki si jih Ana in Bob pošiljatabodisi preko optičnega vlakna bodisi po praznem prostoru (lahko tudi zraku). Ker gre zaizmenjavo posameznih fotonov, ni med fotoni nobene fazne povezave. Za varno komunikacijopotrebujemo dve ortogonalni, med seboj konjugirani polarizacijski bazi [2]. Taki bazi lahkonpr. dobimo iz štirih polarizatorjev. Eno bazo tvorita vertikalni in horizontalni polarizator,drugo pa polarizatorja pod kotom 45◦ in −45◦. Prvo lahko označimo s +, drugo pa z ×.Treba se je še dogovoriti, katera polarizacija v vsaki bazi bo predstavljala katero baznostanje kubita. Denimo, da velja:

polarizacija vrednost v bazi + vrednost v bazi ×l |1〉 1√

2(|1〉+ |0〉)↔ |0〉 1√

2(|1〉 − |0〉)↗ 1√

2(|1〉+ |0〉) |1〉↖ 1√

2(|1〉 − |0〉) |0〉

Tabela 1: Vrednosti kubitov, ki jih predstavljajo polarizacije v dvehkonjugiranih bazah.

Poglejmo sedaj, kako v teoriji poteka izmenjava ključa. Zaenkrat bomo predpostaviliidealnost vseh naprav. To pomeni, da na fotone vpliva samo meritev, zaradi principovkvantne mehanike. Denimo, da želi Ana, Bobu, poslati skrivni ključ, ki je niz naključnihbitov. Zato naključno izbere polarizacijsko bazo in polarizacijo znotraj baze ter pošlje takopolariziran foton, po optičnem vlaknu, Bobu. Zapomniti si mora, v kateri bazi in kakopolariziran foton je poslala. Ker Bob ne ve ničesar o Anini izbiri baze, mora tudi samnaključno izbrati bazo, v kateri bo meril polarizacijo. Ob vsaki meritvi si mora tudi onzapomniti bazo, v kateri je meril, in vrednost, ki jo je izmeril. Ko Ana pošlje vse svojefotone, lahko preideta na komunikacijo po klasičnem kanalu (npr. internet). Najprej Anain Bob primerjata bazo, v kateri je bil posamezni foton poslan, in tisto, v kateri je bilizmerjen. Vse meritve, pri katerih se bazi nista ujemali, takoj zavržeta. To pomeni, da vpovprečju ohranita le polovico vseh meritev, saj je Bob z verjetnostjo 50% izbral enakobazo kot Ana. Po tej primerjavi baz, bi se morale obdržane meritve povsem ujemati zvrednostmi, ki jih je poslala Ana. Denimo, da je Ana poslala vertikalno polariziran foton v+ bazi in je Bob hkrati tudi meril v + bazi. Če je Bob meril z vertikalnim polarizatorjem,je moral zaznati foton, torej dobiti |1〉, sicer pa ni zaznal fotona in tako dobil |0〉.

Kaj pa se zgodi v primeru, ko je prisotna še prisluškovalka Eva? Eva bi rada prisluškovalatako, da je Ana in Bob ne bi odkrila. Kot je bilo pokazano v razdelku (3.1), se v kvantnimehaniki stanj ne da klonirati, zato Evi ne preostane drugega, kot da prestrežen fotonpomeri in izmerjeno stanje pošlje naprej Bobu. Videli pa bomo, da na ta način Eva vkončen niz vnese napake in ujemanje med Aninim in Bobovim nizom bitov po primerjavibaz ne bo 100%. V kolikor bi bilo kloniranje kvantnih stanj dovoljeno, bi lahko Eva predmeritvijo stanje prestreženega fotona skopirala in meritev polarizacije opravila na tej kopiji.

7

Prvotni foton pa bi nespremenjen poslala naprej Bobu in njena prisotnost bi tako ostalaskrita.

Ker Eva tudi ne ve ničesar o tem, kakšno bazo je izbrala Ana, mora tudi ona naključnoizbrati svojo bazo, v kateri bo merila. V primeru, ko Eva zadene z izbiro baze, bo Bobuposlala naprej pravilno polariziran foton. V kolikor pa je izbira baze napačna, bo Bobz verjetnostjo 50% izmeril pravi rezultat in enako z verjetnostjo 50% napačen rezultat.Poglejmo si to na primeru, ko Ana izbere bazo +, Eva pa meri v bazi ×. Eva bo Bobuposlala tisto vrednost, ki jo je izmerila, a ne v bazi +, ampak v bazi ×. Denimo, da Evaizmeri in pošlje naprej stanje |1〉. To v njeni bazi ustreza polarizaciji fotona pod kotom45◦. V bazi + se ta polarizacija zapiše kot 1√

2(|1〉+ |0〉). Bob bo torej z verjetnostjo 50%dobil rezultat |1〉 in z verjetnostjo 50% rezultat |0〉. Eva, tako kot Bob, v povprečju vpolovici primerov zadene bazo Ane. V tisti polovici primerov, ko ji to ne uspe, Bob vseenov povprečju v polovici teh primerov dobi pravilen rezultat in samo v polovici napačnega(tabela 2). To pomeni, da je ujemanje ob prisotnosti prisluškovalke Eve, če ta preseže vseposlane fotone, namesto 100%, samo še 75%. Če Ana in Bob tako primerjata n izmerjenihin poslanih vrednosti polarizacije, lahko prisluškovalko Evo odkrijeta z verjetnostjo

P = 1−(3

4

)n

.

Ker primerjavo opravita po nezavarovanem kanalu, morata bite, ki sta jih primerjala natozavreči.

V kolikor Ana in Bob ugotovita, da je do prisluškovanja prišlo, lahko ključ bodisi zavržetain poskusita znova bodisi lahko uporabita nekatere klasične algoritme, ki zmanjšajo Evinoinformacijo o ključu. Takim postopkom pravimo varnostna ojačitev ključa. Pred varnostnoojačitvijo ključa pa morata Ana in Bob odpraviti še napake v ključu, ki jih je povzročilaEva. Eden izmed postopkov, s katerim Ana in Bob dobita varen ključ brez napak, je sledeč[2]:

• Ana naključno izbere pare bitov in objavi njihovo XOR vrednost (ostanek vsotevrednosti bitov pri deljenju z 2).

• Bob bodisi sprejme vrednost, če dobi isto XOR vrednost, bodisi jo zavrne, če dobidrugačno.

• V prvem primeru, Ana in Bob obdržita prvi bit, drugega pa zavržeta (tako Eva nepridobi preveč informacije o ključu), v drugem primeru pa zavržeta oba bita.

• Po nekaj ponovitvah tega postopka imata Ana in Bob ključ brez napak.

Sedaj sledi še varnostna ojačitev ključa [2]:

• Ana zopet naključno izbere pare bitov in izračuna njihovo XOR vrednost, a tokratdobljene XOR vrednosti ne sporoči Bobu. Sporoči samo, katere bite je izbrala.

• Ana in Bob nato zamenjata izbrana bita z njuno XOR vrednostjo.

Ker ima Eva samo delno informacijo o ključu, je njena informacija o XOR vrednosti šetoliko manjša. Če npr. Eva pozna samo prvi bit, ne more vedeti ničesar o XOR vrednosti.Dobljeni ključ je tako varnejši od prvotnega.

8

Anina naključni niz bitov 0 1 1 0 1 0 0 1Anina naključna baza + + × + × × × +

polarizacija poslanega fotona ↔ l ↗ ↔ ↗ ↖ ↖ lEvina naključna baza + × + + × + × +

Evina izmerjena in poslana polarizacija ↔ ↗ ↔ ↔ ↗ l ↖ lBobova naključna baza + × × × + × + +

Bobova izmerjena polarizacija ↔ ↗ ↖ ↖ l ↖ ↔ lskrivni ključ 0 0 0 1

ujemanje ključa X X X X

Tabela 2: Ilustracija protokola BB84 v prisotnosti prisluškovalke napreprostem primeru. Bob je v polovici primerov zadel izbiro Aninebaze. Vse ostale meritve sta takoj zavrgla. Izmed ohranjenih meritev,pa je ena vseeno napačna, zaradi prisotnosti Eve [10].

3.2.2 Eksperiment

Kakor se zdi v teoriji vse preprosto, v realnosti to ni čisto tako. Največji problemje, da se napake v ključu ne pojavljajo samo zaradi prisotnosti Eve, ampak tudi zaradidekoherence v optičnem vlaknu (koherenčna razdalja v optičnem vlaknu, za polarizacijotipično od nekaj metrov do nekaj 100m [2]), neidealnosti detektorja, ki lahko foton zazna,čeprav ga Ana ni poslala, ali pa ga tudi ne zazna, ko ga je Ana poslala. Napake sepojavijo lahko tudi zaradi neidealnosti izvora fotonov, ki ne more pošiljati posameznihfotonov, ampak jih tipično pošlje več hkrati. Zaradi dodatnih napak v končnem nizu jetežje ugotoviti, kdaj je do prisluškovanja resnično prišlo. Da bi Ana in Bob dobila varenključ, nato izvedeta prej omenjene klasične postopke, ki odpravijo napake v ključu in ključvarnostno ojačajo [2].

Prva eksperimentalna implementacija kvantne izmenjave ključa je bila opravljena leta1989 in objavljena leta 1992 s strani C. Bennetta in sodelavcev [2]. V eksperimentu souporabili zgoraj opisan postopek kodiranja s polarizacijo. Uspelo jim je narediti sistem, kije varno poslal ključ na razdalji 30cm v zraku. Omeniti je treba, da kodiranje s polarizacijofotonov ni edini način za izmenjavo ključa. Poleg kodiranja s polarizacijo obstaja tudifazno kodiranje, kjer Ana in Bob namesto polarizacije naključno zamikata fazo fotonov innato z interferometrom primerjata rezultat [2]. Poznano pa je tudi frekvenčno kodiranje[2]. V tem seminarju se bom omejil na polarizacijsko kodiranje, saj je bila na ta načinnarejena prva implementacija kvantne izmenjave ključa.

Shemo eksperimenta za polarizacijsko kodiranje prikazuje slika 2. Anin sistem (na slikiAlice) sestoji iz štirih laserskih diod, ki izdajajo kratke fotonske pulze (≈ 1ns). Pulzi sonato poslani skozi filtre, ki zreducirajo povprečno število fotonov v pulzu na mnogo manjkot 1 [2]. Fotoni so nato preko kvantnega kanala (zrak, optično vlakno) poslani k Bobu.Ko fotoni prispejo do Boba, potujejo preko seta valovnih ploščic, ki kompenzirajo napake vpolarizaciji, ki so nastale v kvantnem kanalu, tako da je po prehodu teh ploščic polarizacijafotonov enaka kot pri vstopu v kvantni kanal. Fotoni nato prispejo do simetričnegapolprepustnega zrcala, ki predstavlja izbiro baze. Prepuščeni fotoni so analizirani v +bazi (baza 2) s pomočjo polprepustnega zrcala, ki je občutljivo na polarizacijo vstopnegavalovanja, in dveh detektorjev. Odbiti fotoni, analizirani v × bazi, pa gredo najprejskozi λ/2 ploščico, ki zavrti polarizacijo fotonov za 45◦, nato pa so analizirani z enakimdetektorjem kot prepuščeni. Za primer si oglejmo pot fotona, ki je polariziran pod kotom45◦. Ko foton pride preko kvantnega kanala do Boba, mu valovne ploščice najprej popravijo

9

Slika 2: Shema eksperimenta za kvantno izmenjavo ključa z uporabopolarizacijskega kodiranja fotonov. LD - laserska dioda, BS - pol-prepustno zrcalo, F - filter, PBS - polprepustno zrcalo, občutljivona polarizacijo svetlobe, λ/2 - ploščica, ki vrti polarizacijo, APD -plazovna fotodioda. [2]

polarizacijo, tako da je le ta zopet polariziran pod kotom 45◦. Denimo, da foton nato izberebazo 2 (je prepuščen skozi polprepustno zrcalo). Ker je polariziran pod kotom 45◦, se bona polarizacijsko občutljivem polprepustnem zrcalu z verjetnostjo 50% odbil, z verjetnostjo50% pa bo prepuščen. Če pa se bo na polprepustnem zrcalu odbil, mu bo λ/2 ploščicaobrnila polarizacijo. Postal bo vertikalno polariziran. Sedaj pa verjetnost za prepustnostin odboj na polarizacijsko občutljivem polprepustnem zrcalu ne bo enaka in foton bo zverjetnostjo 1 prepuščen.

4 PrisluškovanjeV prejšnjih razdelkih smo že videli primer napada na kvantni kanal. Tam je Eva

izmerila polarizacijo fotona in potem izmerjeno polarizacijo posredovala naprej. V resniciobstaja mnogo različnih načinov napadov na kvantni kanal. V osnovi jih lahko razdelimona individualne napade, ko Eva na vsakem kubitu takoj opravi meritev, ter na koherentnenapade, ko Eva hkrati analizira več kubitov koherentno (npr. najprej shrani nekaj poslanihfotonov in jih hkrati analizira) [2]. V nadaljevanju si bomo pogledali nekaj izbranihprimerov napadov na kvantni kanal.

Najprej si oglejmo t.i. napad moža v sredini. Napad moža v sredini temelji na tem, dase Eva Ani predstavlja kot Bob, Bobu pa kot Ana. Če Evi to uspe, ne da bi jo Ana inBob odkrila, lahko brez težav pridobi tako ključ kot sporočilo. Eva lahko namreč ločenokomunicira z Ano in Bobom. Najprej z Ano izvedeta enak postopek, kot bi ga Ana inBob. Tako Eva pridobi ključ in kasneje še sporočilo. Eva lahko nato postopek ponoviz Bobom in mu tako posreduje sporočilo. Za preprečitev takih napadov se uporabljajorazlične avtentikacijske metode, kot je npr. digitalni podpis ([2], [11]). Za digitalni podpis,se največkrat uporabi kar del ključa, ki sta ga Ana in Bob uporabila za kodiranje sporočilav enem izmed njunih prejšnjih pogovorov. Zaradi skrivnosti tega ključa, lahko Ana in Bobpotrdita identiteto eden drugega.

Poglejmo si še napad, ki temelji na tem, da Ana ne uspe poslati vedno točno enegafotona. Takim napadom pravimo napadi z ločitvijo žarka. Eva lahko brez vpliva na kubite,s t.i. kvantno ne-destruktivno meritvijo, ugotovi kolikšno je število fotonov v vsakem pulzu.To je mogoče, ker Eva ve, da Ana pošilja mešanico stanj z dobro definiranim številom

10

fotonov. Če je to število večje od 1, en foton obdrži, ostale pa pošlje naprej [2]. Težava,s katero se mora soočiti Eva, je, da je porazdelitev po številu fotonov večinoma znanafunkcija in bi Bob lahko zaznal napake v tej porazdelitvi, če bi nekaj fotonov Eva zadržalazase. Zato mora Eva čim bolj zmanjšati izgube pri svojem postopku merjenja.

Še ena možnost napadov so t.i. napadi s trojanskim konjem. Pri teh napadih Evapošilja svetlobne signale proti Ani in Bobu ter analizira odbito svetlobo. Na ta način lahkoEva ugotovi, kako so bili nastavljeni polarizatorji in posledično polarizacijo fotona brezdejanske meritve polarizacije na fotonu [2]. Ana in Bob bi se lahko, pred takim napadom,obranila tako, da bi merila intenziteto svetlobe, ki pride do njiju, in bi v primeru Evineprisotnosti opazila povišanje v tej intenziteti. Pod te napade bi lahko šteli tudi napade,kjer napadalec poizkuša vplivati na naključno izbiro baze in polarizacije pri pošiljanjufotonov. Če bi Evi uspelo pokvariti naključen proces generiranja pulzov, Ana in Bob patega ne bi opazila, bi ji to omogočilo zmanjšanje napake v nizu in s tem boljšo možnost,da ostane skrita [12].

Na koncu si oglejmo še možnost t.i. spektralnih napadov. V prejšnjem razdelku smo siogledali shemo eksperimenta za BB84 protokol. Videli smo, da se za generator polariziranihfotonov uporabljajo laserske fotodiode. V realnosti te fotodiode niso povsem enake. Njihovispektri se lahko nekoliko razlikujejo. Če torej Eva ne meri polarizacije fotonov temvečnjihov spekter, lahko brez vpliva na fotone pridobi informacijo o tem, iz katere diode fotoniizvirajo in posledično ugotovi, kakšna je njihova polarizacija [12].

5 ZaključekV seminarju sem predstavil kvantno kriptografijo na primeru prvega protokola BB84, ki

je nastal leta 1984. Videli smo, da je v idealnem primeru kvantna izmenjava ključa resničnovarna, saj je mogoče odkriti prisotnost napadalca. Prisotnost napadalca je mogoče odkriti,ker velja, da stanje po meritvi preide v eno izmed lastnih stanj sistema in s tem neobrnljivovpliva na sistem. Prav tako je za varnost kvantne izmenjave ključa pomemben izrek o nekloniranju kvantnih stanj. V kolikor bi bilo kloniranje mogoče, bi lahko napadalec zgoljnaredil kopijo stanja, na kopiji izvedel meritev, prvotno stanje pa poslal naprej. V temprimeru bi ostal neopažen. Kot rečeno, kvantna izmenjava ključa temelji na principihkvantne mehanike, za razliko od klasične kriptografije, ki se dandanes zanaša na računskozahtevnost nekaterih operacij, ki se uporabljajo za generiranje privatnih ključev. Medslednje sodi predvsem razcep na prafaktorje. Težava klasične kriptografije je, da nekočmorda odkrijemo hitrejše algoritme za te operacije. Še več, takšni algoritmi že obstajajo zakvantne računalnike a zaenkrat še ni dovolj sposobnih kvantnih računalnikov, ki bi ogrozilivarnost ključev.

Kljub temu, da je kvantna izmenjava ključa v teoriji povsem varna, pa to v realnosti ničisto tako. Napadalci lahko namreč izkoristijo neidealnost merilnih inštrumentov in napravter tako neopaženo pridobijo zadosten del informacije o ključu in posledično preberejosporočilo. Da bi se takim napadom izognili, moramo uporabljati čim boljšo opremo, hkratipa še nekatere druge klasične postopke, ki odpravijo napake v ključu in ključ varnostnoojačajo.

11

Literatura[1] Wikipedia, Enigma(naprava), [ogled 20. 4. 2014], dostopno na http://sl.wikipedia.

org/wiki/Enigma_(naprava)

[2] N. Gisin, G. Ribordy, W Tittel in H Zbinden Quantum cryptography, quant-ph/0101098(2005).

[3] Wikipedia, One-time pad, [ogled 20. 4. 2014], dostopno na http://en.wikipedia.org/wiki/One-time_pad

[4] Wikipedia, Key size), [ogled 24. 5. 2014], dostopno na http://en.wikipedia.org/wiki/Key_size

[5] J. Katz, Y Lindell Introduction to Modern Cryptography, CRC Press, 2007.

[6] Wikipedia, RSA(cryptosystem), [ogled 20. 4. 2014], dostopno na http://en.wikipedia.org/wiki/RSA_(cryptosystem)

[7] Wikipedia, Extended Euclidean algorithm, [ogled 20. 4. 2014], dostopno na http://en.wikipedia.org/wiki/Extended_Euclidean_algorithm

[8] Wikipedia, No-cloning theorem, [ogled 8. 5. 2014], dostopno na http://en.wikipedia.org/wiki/No-cloning_theorem

[9] F. Schwabl, Quantum Mechanics, Advanced Texts in Physics, Springer, 2007.

[10] C. Bennett, G. Brassard Quantum cryptography: public key distribution and coin tos-sing, International Conference on Computers, Systems & Signal Procesing, Bangalore,India (1984).

[11] M. Peev, M. Nölle, O. Maurhardt, T. Lorünser, M. Suda, A. Poppe, R. Ursin, A.Fedrizzi, A. Zeilinger A Novel Protocol-Authentication Algorithm Ruling Out a Man-in-the-Middle Attack in Quantum Cryptography, quant-ph/0407131 (2004).

[12] E. Ilievski, Kvantna kriptografija, Seminar (2009).

12