Blatt 4

Werbung
Universität Duisburg-Essen
Ingenieurwissenschaften/Informatik
Prof. Barbara König
Sebastian Küpper
SS 2015
Aufgabenblatt 4
22. Mai 2015
Übung zu “Formale Aspekte der Software-Sicherheit und
Kryptographie”
Dieses Übungsblatt wird am Montag, den 01. Juni, von 10:15–11:45 Uhr im Raum LE 120
besprochen. Es handelt sich um ein Testatblatt, die Abgabe der Lösungen erfolgt in
der Übung.
Aufgabe 13
Miller-Rabin-Primzahltest (5 Punkte)
(a) 15 ist eine zusammengesetzte Zahl. Ermitteln Sie alle ihre Fermat-Zeugen.
(b) Wir betrachten die Carmichael-Zahl n = 561. Führen Sie den Primzahltest entsprechend dem Algorithmus auf den Folien für a = 2, a = 9 und a = 101 durch.
Aufgabe 14
Angriffe auf das RSA-Signaturschema (5 Punkte)
Wir betrachten digitale Signaturen mit Hilfe von RSA, wie sie in der Vorlesung beschrieben wurden. Gegeben sei ein öffentlicher Schlüssel (e, n), der dazugehörige private
Schlüssel (d, n) ist unbekannt.
(a) Beschreiben Sie, wie ein Angreifer auf einfache Weise eine Nachricht und eine
dazugehörige Signatur erzeugen kann.
Bemerkung: Der Angreifer muss hier nicht in der Lage sein, jede beliebige Nachricht
zu signieren, aber er sollte ein beliebiges Paar von Nachricht und dazugehöriger
korrekter Signatur ermitteln können. Insbesondere muss der Angreifer nicht in der
Lage sein, sich den Inhalt der signierten Nachricht beliebig auszusuchen.
(b) Beschreiben Sie, wie ein Angreifer in der Lage ist, eine gegebene Nachricht m
korrekt zu signieren, wenn Alice für ihn beliebige Nachrichten m0 6= m signiert.
Bemerkung: Das ist in der Praxis durchaus möglich, da der Angreifer die Nachrichten m0 wie Zufallsstrings aussehen lassen kann. Alice signiert dann einfach nur
einen Nonce.
Aufgabe 15
Das Millionärsproblem (5 Punkte)
Dagobert Duck und Mac Moneysac streiten sich alljährlich darum, wer denn die reichste Ente der Welt sei. Nachdem in der Vergangenheit verschiedene Vergleichsmethoden
kriminellen Elementen Tür und Tor geöffnet haben, den beiden hart arbeitenden Enten
ihr Vermögen zu entwenden, wollen sie in diesem Jahr auf eine andere Weise feststellen,
wer von beiden die reichste Ente ist. Der Clou bei der Sache ist, dass beide nicht wollen,
dass der jeweils andere erfährt, wie viel Geld die jeweils andere Ente besitzt. Glücklicherweise hat Dagoberts Forschungsabteilung kürzlich eine Falltürfunktion f : N0 → N0
gefunden, so dass ein anonymer Vergleich möglich ist. In Anbetracht ihres Reichtums
einigen sich Dagobert und Mac Moneysac, nur die Stelle der Fantastilliarden zu vergleichen, jeder von ihnen besitzt nämlich sicher zwischen einer und neun Fantastilliarden
Taler. Die Falltürfunktion f gibt Dagobert seinem Konkurrenten bekannt, die inverse
Funktion f −1 behält er jedoch geheim. Die beiden einigen sich auf folgendes Vorgehen:
• Dagobert besitzt A Fantastilliarden Taler, Moneysac besitzt B Fantastilliarden
Taler.
• Mac Moneysac wählt eine zufällige Zahl X mit einer Binärdarstellung von der
Länge n Bit aus und sendet s = f (X) − B an Dagobert.
• Dagobert berechnet nun für i = 1, ..., 10 die Zahl Yi = f −1 (s + i).
• Dagobert wählt eine Primzahl P von mindestens
i = 1, ..., 10 Zi = Yi mod P .
n
2
Bit aus und berechnet für
• Dagobert sendet an Mac Moneysac die Zahlen Z1 , Z2 , ..., ZA , ZA+1 +1 mod P, ..., Z10 +
1 mod P
• Mac Moneysac erhält die Zahlen U1 , U2 , ..., U10 und überprüft ob UB = X mod P .
Falls ja, so ist Dagobert reicher oder gleich reich wie Mac Moneysac, falls nein, ist
Mac Moneysac reicher.
(a) Zeigen Sie, dass das obige Verfahren korrekt ist, das heißt, dass die ermittelte
Antwort von Mac Moneysac immer korrekt ist.
(b) Sicherheitshalber wollen Dagobert und Mac Moneysac einander doch ein wenig
kontrollieren und bitten Klaas Klever, ihnen zu helfen, das Verfahren zu kontrollieren. Gleichzeitig soll aber auch Klever, der seinerseits ja ein Konkurrent der
beiden um den Titel Reichste Ente der Welt“ ist, nicht erfahren, wie viel Geld die
”
beiden genau besitzen. Nun möchte Mac Moneysac seinem Rivalen aber B nicht
zusenden. Welche Nachrichten müssen Dagobert und Mac Moneysac an Klaas Klever senden, damit dieser entscheiden kann, welcher der beiden reicher ist, ohne zu
erfahren, wie viel Geld Dagobert oder Mac Moneysac genau besitzen? Gesucht ist
eine Variation des obigen Verfahrens, bei der sämtliche Kommunikation über Klaas
Klever läuft und Mac Moneysac nur erfährt, welche der beiden Enten reicher ist,
nicht jedoch, wie viel Geld sie besitzt. Sie müssen sich also kein vollständig neues
Verfahren überlegen.
Um die Sicherheit des Verfahrens zu garantieren, das heißt, sicherzustellen, dass weder
Dagobert noch Mac Moneysac auf Grund der gewonnenen Informationen Rückschlüsse
auf das Vermögen des jeweils anderen machen können, verlangt man üblicherweise, dass
für alle Zi , Zj mit i 6= j gilt |Zi −Zj | ≥ 2. Gilt dies nicht, wählt man eine andere Primzahl
P , solange bis diese Zusatzbedingung sichergestellt ist. Zur Lösung der Aufgabe (b)
sollten Sie annehmen, dass diese Bedingung erfüllt ist.
Aufgabe 16
Abgeschlossenheit von RP unter Schnitt (5 Punkte)
Ist die Komplexitätsklasse RP abgeschlossen unter Schnitt? Beweisen Sie die Korrektheit
Ihrer Antwort. Antworten ohne Beweis erhalten keine Punkte.
2
Herunterladen