Fakultät für Informatik Professur Theoretische Informatik und Informationssicherheit Sommersemester 2007 Prof. Dr. Hanno Lefmann Datensicherheit und Kryptographie II 12. Übung Aufgabe 1 Zeigen Sie: Für natürliche Zahlen a, b, n und die Primfaktorzerlegung n = pl11 · pl22 · . . . · plkk , d. h. n hat k paarweise verschiedene Primfaktoren pi , die jeweils zur li -ten Potenz erhoben vorkommen, gilt: a ≡ b mod n ⇔ ∀i = 1, . . . , k : a ≡ b mod plii . Wir können also entscheiden, ob eine Zahl u ∈ Z∗n ein quadratischer Rest modulo n ist, d. h. ob die Gleichung x2 ≡ u mod n lösbar ist mit x ∈ Z∗n , indem wir bestimmen, ob die Gleichung x2 ≡ u mod plii für alle Primfaktorpotenzen plii lösbar ist. Aufgabe 2 Wir betrachten das in der Vorlesung vorgestellte Interaktive Beweissystem für das Problem Quadratische Reste”: Seien verschiedene Primzahlen p, q ” (geheim), das öffentliche Produkt n = pq und ein öffentlicher quadratischer Rest x ∈ Z∗n gegeben. Die Zahl u ∈ Z∗n mit x ≡ u2 mod n ist geheim. 1. Wiederhole die Schritte 2-5 m oft: 2. Peggy wählt zufällig v ∈ Z∗n , berechnet y = v 2 mod n und sendet y an Vic. 3. Vic wählt zufällig i ∈ {0, 1} und sendet dieses i an Peggy. 4. Peggy berechnet z = ui · v mod n und sendet z an Vic. 5. Vic prüft, ob gilt: z 2 ≡ xi · y mod n. 6. Vic akzeptiert, wenn die Identität in Schritt 5 jedes mal gilt. Zeigen Sie, dass Vic mit Wahrscheinlichkeit mindestens 1/2 verwirft, wenn x ∈ Z∗n kein quadratischer Rest modulo n ist, und Peggy nur in Schritt 4 betrügen kann, d. h. nur in diesem Schritt kann sie vom Protokoll abweichen und eine beliebige Zahl z senden. Aufgabe 3 Wir betrachten wieder das Beweissystem für Quadratische Reste aus Aufgabe 2. Wenn sich Peggy und Vic an das Protokoll halten, wird in jeder Runde ein Tripel (y, i, z) erzeugt, wobei y = v 2 mod n ist für ein zufälliges v ∈ Z∗n , i = 1 oder i = 0 jeweils mit Wahrscheinlichkeit 1/2 gilt, und z = ui · v mod n gilt. Ein Tripel dieser Art sei ein gültiges Tripel. 1. Zeigen Sie, dass es 2(p − 1) · (q − 1) viele gültige Tripel gibt, und dass jedes dieser Tripel in einer Runde mit gleicher Wahrscheinlichkeit generiert wird, wenn Peggy und Vic dem Protokoll folgen. 2. Zeigen Sie, dass Vic ohne Hilfe von Peggy Tripel erzeugen kann, die die gleiche Wahrscheinlichkeitsverteilung haben wie die bei Ausführung des Protokolls entstehende, ohne dass er die geheimen Parameter des Systems kennt (p, q und u). 3. Zeigen Sie, dass das Protokoll für Vic perfekt zero-knowlegde ist, d. h. er kann für gegebene Rundenzahl m dieselbe Wahrscheinlichkeitsverteilung von m Tripeln erzeugen, wie diejenige, die bei Ausführung des Protokolls mit m Runden entsteht. Aufgabe 4 Sei n = pq für verschiedene Primzahlen p und q mit p ≡ q ≡ 3 mod 4. Seien x, y ∈ Z so gewählt, dass x · p + y · q = 1 gilt (dies ist möglich, da p und q teilerfremd sind). Für quadratische Reste a ∈ Z∗n modulo n betrachten wir die vier Zahlen z = ±x · p · a(q+1)/4 ± y · q · a(p+1)/4 . 1. Zeigen Sie, dass für jeden quadratischen Rest a ∈ Z∗n alle vier Werte z Quadratwurzeln von a sind, d. h. z 2 ≡ a mod n. 2. Zeigen Sie, dass für jeden quadratischen Rest a ∈ Z∗n alle vier Werte z invertierbar sind, d. h. aus Z∗n stammen. Zeigen Sie, dass die vier z paarweise nicht kongruent modulo n sind, d. h. verschiedene Elemente aus Z∗n darstellen. 3. Zeigen Sie, dass es für die quadratischen Reste a ∈ Z∗n keine anderen Quadratwurzeln modulo n als die vier angegebenen z geben kann, d. h. jeder solche quadratische Rest hat genau vier Quadratwurzeln modulo n. Hinweis: Für n = pq mit verschiedenen Primzahlen p und q gilt, dass es in Z∗n genau (p − 1)(q − 1)/4 viele quadratische Reste modulo n gibt. Desweiteren gilt für Elemente x ∈ Z∗n , dass x genau dann quadratischer Rest modulo n ist, wenn x(p−1)/2 ≡ 1 mod p und x(q−1)/2 ≡ 1 mod q ist.