Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/06 21.11.

Ähnliche Präsentationen


Präsentation zum Thema: "Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/06 21.11."—  Präsentation transkript:

1 Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/06 21.11.

2 Bestimmen der Ordnung über Z N Gegeben seien natürliche Zahlen x, N, x<N Ordnung r(x) von x in Z N : min. r 0: x r =1 mod N Periode der Potenzen von x

3 Bestimmen der Ordnung über Z N Quantenalgorithmus, um r(x) zu bestimmen? Algorithmus von Shor findet r(x) in Zeit poly(log N) trivialer klassischer Ansatz: berechne x i für i=1,...,r(x) ist ineffizient, da r(x)=N-1 möglich

4 Anwendung eines solchen Algorithmus Faktorisierungsproblem: Gegeben natürliche, zusammengesetzte Zahl N finde einen nichttrivialen Faktor Kann durch einen Algorithmus zur Ordnungsbestimmung gelöst werden !

5 Faktorisierung Wenn ein nichttrivialer Faktor in polynomieller Zeit gefunden werden kann, kann die komplette Primfaktorisierung in polynomieller Zeit gefunden werden, da es zu N höchstens log N Primfaktoren gibt polynomieller Zeit: in der Länge von N, d.h. log N Naiver Algorithmus: teste alle Faktoren <N 1/2, d.h. exponentielle Zeit Bester bekannter klassischer Algo: Zeit exp( O ( log 1/3 N loglog 2.3 N ) )

6 Warum Faktorisierung? Das Problem [...] zusammengesetzte Zahlen in ihre Primfaktoren zu zerlegen ist eines der wichtigsten und nützlichsten in der ganzen Arithmetik. Die Würde der Wissenschaft verlangt, dass jedes Hilfsmittel zur Lösung solch eines eleganten Problems kultiviert wird.

7 Warum Faktorisierung? RSA-Verfahren [Z. Bsp. SSL im Internet] [Rivest Shamir Adleman] Alice möchte verschlüsselte Nachrichten empfangen Alice veröffentlicht einen öffentlichen Schlüssel, behält für sich einen privaten Schlüssel Mit dem öffentlichen Schlüssel kann man Nachrichten verschlüsseln, mit dem privaten entschlüsseln Es scheint schwer zu sein, verschlüsselte Nachrichten ohne den privaten Schlüssel zu öffnen RSA wird durch Faktorisierung gebrochen

8 RSA Alice zieht zwei grosse Primzahlen p,q, berechnet N=pq Alice wählt e, teilerfremd zu φ(N)=(p-1)(q-1) Z * N : Gruppe der y aus [1,...,N-1] die teilerfremd zu N sind, mit Multiplikation Alice berechnet d, das Inverse von e in Z * N [das ist einfach, weil Faktorisierung von N bekannt] Öffentlicher Schlüssel: (e,N) Geheimer Schlüssel: d

9 RSA Öffentlicher Schlüssel: (e,N) Bobs Nachricht sei x<N Verschlüsselte Nachricht: y=x e mod N Alices Dekodierung: y d =x ed mod N ed=1 mod N, also ed=1+ kφ(N) Ergebnis also x 1+kφ(N) =x ¢ x kφ(N) mod N x 2 Z * N, dann x kφ(N) =1 mod N, und daher y d =x mod N Sonst: OBDA p teilt x, q nicht x=0 mod p, also x ed = 0 mod p, x q-1 =1 mod q x φ(N) =1 mod N und x ed =x mod q und mit chin. Restsatz auch x ed =x mod N Wenn ein Angreifer (Eve) faktorisieren kann, kann N in pq zerlegt werden, und d wäre nicht mehr geheim

10 Reduktion Faktorisierung auf Ordnungsfinden Eingabe natürliche Zahl N 1. Test ob N Primzahl, Ausgabe N 2. Test ob N= a b für nat. Zahlen a,b>1, Ausgabe a 3. Test ob N gerade, Ausgabe 2 4. Wenn nein: N=p 1 (1) p m (m) mit m>1, (j) ¸ 1

11 Reduktion Faktorisierung auf Ordnungsfinden N=p 1 (1) p m (m) mit m>1, (j) ¸ 1 Ansatz: Wenn man eine nichttriviale Lösung zu x 2 =1 mod N finden kann, dann kann ein Faktor von N berechnet werden Wenn y aus [1,...,N-1] gezogen wird und teilerfremd zu N ist, dann ist die Ordnung r von y mit hoher Ws. gerade und y r/2 -1 mod N y r/2 1 mod N Dann erfüllt x=y r/2 die Gleichung x 2 =1 mod N und x ist nichttrivial

12 Reduktion Faktorisierung auf Ordnungsfinden Theorem V.1: Sei N eine zusammengesetzte Zahl und x eine Lösung von x 2 =1 mod N mit 1 < x < N-1. Dann sind nichttriviale Teiler von N: ggt(x-1,N) ggt(x+1,N) Theorem V.2: Wenn N=p 1 (1) p m (m) Primfaktorisierung, und x uniform aus Z * N gezogen wird, dann ist Prob[r(x) ist gerade und x r/2 -1 mod N] ¸ 1-1/2 m-1 ¸ 1/2

13 Reduktion Faktorisierung auf Ordnungsfinden Eingabe natürliche Zahl N 1. Test ob N Primzahl, Ausgabe N 2. Test ob N= a b für nat. Zahlen a,b>1, Ausgabe a 3. Test ob N gerade, Ausgabe 2 4. Wenn nein: N=p 1 (1) p m (m) mit m>1, (j) ¸ 1

14 Reduktion Faktorisierung auf Ordnungsfinden 4.N=p 1 (1) p m (m) mit m>1, (j) ¸ 1 5.Bestimme zufälliges x aus [1,...,N-1]. Wenn ggt(x,N) 1, dann Ausgabe ggt(x,N) 6.Bestimme Ordnung r von x in Z N 7.Wenn r gerade ist, und x r/2 -1 mod N, dann berechne ggt(x-1,N) und ggt(x+1,N) 8.Wenn nicht, dann wiederhole 5.-7.

15 Analyse: Schritt 1 [Primzahltest] deterministisch in Zeit poly(log N) [AKS02] [Test, ob a b für nat. Zahlen a,b; Test ob Primzahl] Schritt 5: ggt(y,N) kann in Zeit O(L 3 ) berechnet werden, Euklidischer Algorithmus Schritt 6: per Reduktion Schritt 7: mit Wahrscheinlichkeit 1/2 Schritt 8: erwartet O(1) Wiederholungen

16 Bemerkung Finden der Ordnung von x in Z N ist tatsächlich per Polynomialzeit-Reduktionen äquivalent zum Faktorisierungsproblem Shors Algorithmus löst Ordnungsfinden bezüglich einer als Black Box gegebenen Potenzierungsfunktion

17 Theorem V.1 Theorem V.1: Sei N eine zusammengesetzte Zahl und x eine Lösung von x 2 =1 mod N mit 1 < x < N-1. Dann sind nichttriviale Teiler von N: ggt(x-1,N) ggt(x+1,N) Beweis: x 2 =1 mod N ) (x-1)(x+1)=0 mod N N teilt (x-1)(x+1), x-1<x+1<N, daher 1<ggt(x-1,N)<N und 1<ggt(x-1,N)<N

18 Theorem V.2 Theorem V.2: Wenn N=p 1 (1) p m (m) Primfaktorisierung [alle p j 2] und x uniform aus Z * N gezogen wird, dann ist Prob[r=r(x) ist gerade und x r/2 -1 mod N] ¸ 1-1/2 m-1

19 Hilfsmittel Sei φ(N)=| Z * N |. Für jedes x 2 Z * N gilt x φ(N) =1 mod N [Euler] φ(p ) ist gerade, wenn p prim Chinesischer Restsatz Sei N=p 1 (1) p m (m) Für x 1,...,x m gibt es genau eine Lösung x zu x=x i mod p i i) für alle i x zufällig ziehen entpricht x 1,...,x m ziehen x 2 Z * N, x i 2 Z * N(i) für alle i [N(i)=p i (i) ] r i sei Ordnung von x i in N i r i teilt r [Ordnung von x in Z N ]: x r =1 mod N ) x i r =x r =1 mod N i

20 Theorem V.2 Lemma 1: Sei N=p, p 2 prim. Sei φ(N)=| Z * N |. D sei maximal so dass 2 D Teiler von φ(N). Mit Wahrscheinlichkeit =1/2 teilt 2 D die Ordnung r(x) eines zufälligen Elementes von Z * N. Beweis: Z * N zyklisch [weil p 2], d.h. es gibt 1<g<N, so dass {g j mod N, j=1,..., φ(N)}= Z * N Jedes x 0 ist g k mod für ein k x zufällig ) k zufällig, gerade/ungerade mit Wahrscheinlichkeit 1/2 k ungerade: g kr(x) =x r(x) = 1 mod N ) φ(N) teilt kr(x), 2 D teilt kr(x), teilt r(x) k gerade: x φ(N)/2 =g kφ(N)/2 =(g φ(N) ) k/2 =1 k/2 =1 mod N [Euler] ) r(x) teilt φ(N)/2 und somit teilt 2 D nicht r(x)

21 Theorem V.2 N=p 1 (1) p m (m) Primfaktorisierung. Mit Chinesischem Restsatz ist Wahl von x äquivalent zu Wahl von x 1,...,x m aus Z * N(i) für N(i)=p i (i) x=x i mod p i (i) Ordnung r i =r(x i ) in Z N(i) teilt r d maximal so dass 2 d Teiler von r, analog d i für r i Lemma 2: Wenn r=r(x) ungerade oder r gerade und x r/2 =-1 mod N, dann d i =d für alle i. Beweis: I) r ungerade nur, wenn alle r i ungerade, d.h. alle d i =0 II) r gerade, aber x r/2 = -1 mod N ) x i r/2 = -1 mod N i d.h. r i kein Teiler von r/2, r i Teiler von r, d.h. 2 d teilt r i, somit d i =d D.h. 2 d grösster Zweierpotenzteiler von r(x i ) für alle i

22 Theorem V.2 Theorem V.2: Wenn N=p 1 (1) p m (m) Primfaktorisierung [alle p j 2], und x uniform aus Z * N gezogen wird, dann ist Prob[r=r(x) ist gerade und x r/2 -1 mod N] ¸ 1-1/2 m-1 Beweis: Mit Chinesischem Restsatz ist Wahl von x äquivalent zu Wahl von x 1,...,x m aus Z * N(i) für N(i)=p i (i) x=x i mod p i (i) Ordnung r i =r(x i ) in Z N(i) teilt r d i maximal so dass 2 d i Teiler von r i Berechne Gegenwahrscheinlichkeit. Mit Lemma 2 sind alle d i gleich Wahrscheinlichkeit · 1/2 m-1 nach Lemma 1: Setze d=d 1. Für alle i=2,...,m sei D i max Zweierpotenzteiler von φ(N i ) Drei Fälle: D i >d, dann d i =D i mit Ws. 1/2 und dann auch d i d D i =d, dann d i = d mit Ws. 1/2 D i <d, dann d i = d niemals Jedesmal [2,...,m] ein Faktor · 1/2 zur Gesamtwahrscheinlichkeit


Herunterladen ppt "Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/06 21.11."

Ähnliche Präsentationen


Google-Anzeigen