• Keine Ergebnisse gefunden

Blatt 1 / 16. Oktober 2012 / Abgabe bis sp¨ atestens 23. Oktober 2012, 8:30 Uhr in dem Kasten auf NA 02

N/A
N/A
Protected

Academic year: 2022

Aktie "Blatt 1 / 16. Oktober 2012 / Abgabe bis sp¨ atestens 23. Oktober 2012, 8:30 Uhr in dem Kasten auf NA 02"

Copied!
2
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Lehrstuhl f¨ur Kryptologie und IT-Sicherheit Prof. Dr. Alexander May

Gottfried Herold, Philipp Wagner

Haus¨ubungen zur Vorlesung

Kryptanalyse

WS 2012/2013

Blatt 1 / 16. Oktober 2012 / Abgabe bis sp¨ atestens 23. Oktober 2012, 8:30 Uhr in dem Kasten auf NA 02

AUFGABE 1 (5 Punkte):

Seien a, b, k, n, p, q ∈N, p, q prim.

Zeigen Sie die folgenden Eigenschaften der Eulerschen ϕ-Funktion:

(a) ϕ(pk) =pk(1−1p)

(b) ϕ(ab) = ϕ(a)ϕ(b), falls gcd(a, b) = 1.

Hinweis: Benutzen Sie den chinesischen Restesatz.

(c) ϕ(n) =nQ

p|n(1− 1p), falls n=Q

p|npkp die Primfaktorzerlegung von n ist.

(d) ϕ(n) = (p−1)(q−1) f¨urn=pq mit p6=q.

AUFGABE 2 (5 Punkte):

Sei Geine zyklische Gruppe. Zeigen Sie, dass es ϕ(ord(G)) viele Generatoren in G gibt.

AUFGABE 3 (5 Punkte):

Zeigen Sie den verallgemeinerten Chinesischen Restsatz:

Seien m1, m2, . . . , mn teilerfremde nat¨urliche Zahlen. Es existiert genau eine L¨osung xmodm1m2. . . mn des Gleichungssystems

x = a1 modm1 x = a2 modm2

...

x = anmodmn .

Hinweis: Es gibt eine konstruktive L¨osung in Analogie zu Satz 16 aus der Vorlesung.

(2)

Im Laufe des ¨Ubungsbetriebs werden regelm¨aßig praktische Aufgaben zur Implementierung von diversen Algorithmen und Angriffen gestellt. Dazu wird die kostenlos zur Verf¨ugung stehende Mathematiksoftwaresage verwendet (www.sagemath.org). Die Software l¨auft unter Unix-basierten Betriebssystemen oder unter Windows mit Hilfe von cygwin oder VirtualBox bzw. VMWare Player. Alternativ steht unter www.sagenb.org eine online-Version bereit.

Sagean sich ist in python implementiert und verwendet die python Syntax. D.h. beispielsweise sind Code-Bl¨ocke nicht wie in C durch geschweifte Klammern gekapselt, sondern durch ein gewisses Einr¨uckungsniveau. Eine Funktionsdefinition sieht dann folgendermaßen aus:

def foo(bar):

print bar return

AUFGABE 4 (5 Punkte):

1. Implementieren Sie in sage eine Methode mygcd die den gr¨oßten gemeinsamen Teiler von zwei Parametern a und b mit Hilfe des euklidischen Algorithmus berechnet.

2. Schreiben Sie eine Methodemytest. Diese Methode erh¨alt zwei Parameterbitsizeund iter. Zun¨achst sollen innerhalb der Methode zwei zuf¨allige bitsize-bit große Zahlen generiert werden (z.B. mit der Funktion randint()). Dann wird iter-mal der gcd dieser beiden Zahlen mit der Funktion mygcd berechnet.

3. Ver¨andern Sie die Methode mytest so dass sie als R¨uckgabewert die Zeit f¨ur dieiter- malige Wiederholung der gcd-Berechnung liefert1. Dazu ben¨otigen Sie das zus¨atzliche Modul time. Dieses kann hinzugef¨ugt werden durch den Befehl import time. Danach liefert die Funktion time.time() die (abh¨angig vom Betriebssystem) die vergangenen Sekunden seit einem fixen Datum.

4. Erzeugen Sie eine Liste von Datenpunkten der Form [Bitgr¨oße,Zeit], indem Sie die Methode mytest wiederholt mit steigenden Bitgr¨oßen von 10 bis 1500 und einer Wie- derholungszahl von 500 aufrufen(Eine Schrittweite von 10 ist ausreichend. Wenn die Berechnung zu lange dauern sollte, k¨onnen Sie die Wiederholungszahl oder die maxi- male Bitgr¨oße etwas verringern.). Betrachten Sie mit der Funktion list_plot einen Plot der Datenpunkte. Entspricht dieses Bild dem was Sie von der Laufzeit des eukli- dischen Algorithmus erwarten?

1Dies soll einfach nur die gemessene Zeit in einen vern¨unftigen Bereich bringen

Referenzen

ÄHNLICHE DOKUMENTE

Anmerkung: Wenn bei den Operationen auf der Kurve eine Division durch Null stattfindet, wirft sage eine Fehlermeldung in der bereits der Wert N faktorisiert ist, insofern muss der

Wenn man I 0 als das Bild von I unter zyklischer Permuation w¨ ahlt, wie ver¨ andert sich ∆, wenn man k um 1 vergr¨ ossert. Wie ver¨ andert sich ∆, wenn man k um n 2

Zeigen Sie, dass kein Public-Key Kryptosystem mit deterministischer Verschl¨ usselungsfunk- tion semantisch sicher ist.

Alice feiert eine weitere Party und schickt eine Einladung m an Bob und Berta (Birte ist im Urlaub).. Helfen Sie Eve auch diesmal und zeigen Sie, dass man aus den Chiffretexten

Berechnen Sie die durchschnittliche Anzahl von Schritten al- ler Durchl¨ aufe, die min(p, q) ausgegeben haben (Sie werden beobachten, dass in einigen Durchl¨ aufen der gr¨

Die ersten n Koordinaten des letzte Basisvektors der reduzierten Basis liefern eine L¨ osung x f¨ ur das Subset-Sum Probelm a, S. , 1) aus der Reduktion, denn die Eingabeinstanz

Be- nutzen Sie hierzu auch Aufgabe 2 aus Pr¨ asenz¨

Zeigen Sie mit Hilfe von Satz 59 aus der Vorlesung, dass Eve unter Ausnutzung der Paddingstruktur aus dieser einzigen Nachricht den Schl¨ ussel k extrahieren kann. (b)