01.03.2014 Aufrufe

Ferienübung - CDC - Technische Universität Darmstadt

Ferienübung - CDC - Technische Universität Darmstadt

Ferienübung - CDC - Technische Universität Darmstadt

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

TECHNISCHE UNIVERSITÄT DARMSTADT<br />

FACHGEBIET THEORETISCHE INFORMATIK<br />

PROF. JOHANNES BUCHMANN<br />

FATEME SHIRAZI<br />

NABIL ALKEILANI ALKADRI<br />

Einführung in die<br />

Kryptographie<br />

WS 2013/2014<br />

<strong>Ferienübung</strong> — 20.12.2013<br />

Erstellen Sie zunächst aus Ihrer Matrikelnummer Ihr privates Codewort k. Bei jeder Übung werden Sie ein zu diesem<br />

Codewort passendes Lösungswort suchen. Das Codewort berechnet sich wie folgt:<br />

Prosa<br />

Beispiel<br />

Ihre Matrikelnummer ist µ µ = 1371853<br />

Die letzten 6 Ziffern von µ sind ˆµ ˆµ = 371853<br />

Nehmen Sie ⌊ ˆµ ⌋ 2 ⌊ ˆµ ⌋ = 185926<br />

2<br />

Schließlich ist k = 2 19 + ⌊ ˆµ 2 ⌋ k = 710214<br />

Wir bezeichnen mit k 19 k 18 .....k 1 k 0 die 20-stellige Binärdarstellung vom Codewort k. Im Beispiel oben ist<br />

k 19 k 18 .....k 1 k 0 = 10101101011001000110<br />

Personalia (ausfüllen) Lösungsworte (ausfüllen) Erreichte Punkte<br />

F1:<br />

Name:<br />

Matrikelnummer:<br />

Codewort in Dezimal:<br />

F2:<br />

F3:<br />

F4:<br />

F5:<br />

Bonuspunkte:<br />

Für jede gelöste Aufgabe gibt es maximal 1 Bonuspunkt für die Klausur. Sie können bis zu 5 Bonuspunkte erreichen.<br />

Geben Sie in der ersten Woche nach den Ferien Ihren handgeschriebenen vollständigen Rechenweg sowie dieses Deckblatt<br />

ausgefüllt und zusammengeheftet in einer Übung oder Sprechstunde ab. Ansonsten elektronisch schicken an:<br />

fshirazi@cdc.informatik.tu-darmstadt.de<br />

Alle Übungen, die bis Freitag, den 17.01.2014 nicht abgegeben werden, sind automatisch ungültig.<br />

F1 Blockchiffrenmodi<br />

Verschlüsseln Sie den 20-stelligen Bitstring k 19 k 18 .....k 1 k 0 in den Blockchiffrenmodi ECB, CBC, CFB und OFB. Verwenden<br />

Sie dazu die affin lineare Blockchiffre mit Klar- und Schlüsseltextraum 5 2<br />

, Blocklänge n = 5 und dem Schlüssel (A, b),<br />

wobei ⎛<br />

A = ⎝<br />

⎞<br />

k 15 1 0 0 1<br />

0 0 1 0 0<br />

1 0 0 1 0<br />

0 0 0 0 1<br />

1 0 1 0 k 19<br />

⎠ und b = (k 0 k 1 k 2 k 3 k 4 ) T ist. Benutzen Sie den Initialisierungsvektor IV = 10011 und die verkürzte<br />

Blocklänge r = 4.<br />

Das Lösungswort l 1 lässt sich wie folgt berechnen:<br />

• Wenden Sie die bitweise XOR-Verknüpfung auf Ihre Schlüsseltexte an, d.h. C = C ECB<br />

⊕<br />

CCBC<br />

⊕<br />

CC F B<br />

⊕<br />

COF B<br />

• Identifizieren Sie jeweils einen Block der Länge 4 des Bitstrings C mit einer Hexadezimalzahl. Das Lösungswort l 1<br />

ist also eine 5-stellige Hexadezimalzahl.


F2 Erweiterter Euklidischer Algorithmus<br />

Sei 7 = /7 der endliche Körper mit 7 Elementen und sei p(x) = x 7 + 5x 6 + 3x 5 + 3x 3 + 4x 2 + x + 3 ∈ 7 [x].<br />

Identifizieren Sie den 7-stelligen Bitvektor (k 19 k 18 k 17 k 16 k 15 k 14 k 13 ) mit einem Polynom k(x) ∈ 7 [x] vom Grad ≤ 6<br />

mit dem Leitkoeffizienten k 19 . Mit dem Beispiel-Codewort ist k(x) = x 6 + x 4 + x 2 + x.<br />

Finden Sie nun zwei Polynome f (x) und g(x) in 7 [x] mit<br />

Das Lösungswort ist l 2 = f (x) + g(x) ∈ 7 [x].<br />

p(x) · f (x) + k(x) · g(x) = 1.<br />

F3 Chinesischer Restsatz<br />

Berechnen Sie das Inverse M −1 der folgenden Matrix M modulo 1111 mit dem Chinesischen Restsatz.<br />

⎛<br />

⎞<br />

311 19 a<br />

⎜<br />

⎟<br />

M = ⎝ 0 149 0 ⎠<br />

0 83 151<br />

Dabei ist a der Rest modulo 1111 der Zahl, die aus den ersten 3 Ziffern Ihres Codewortes k besteht. Mit dem Beispiel-<br />

Codewort ist a = 710.<br />

Das Lösungswort l 3 ist die Summe der Einträge von M −1 modulo 1111.<br />

F4 Elementordnungen<br />

Sei a die Zahl, die aus den ersten 3 Ziffern Ihres Codewortes besteht. Mit dem Beispiel-Codewort ist a = 710.<br />

Bestimmen Sie die Ordnung von a modulo 1009. Verwenden Sie das in der Vorlesung eingeführte Verfahren und die<br />

schnelle Exponentation.<br />

Das Lösungswort ist l 4 = order(a + 1009).<br />

F5 RSA<br />

Seien p = 1009 und a die Zahl, die aus den ersten 3 Ziffern Ihres Codewortes besteht. Sei weiterhin q die größte Primzahl,<br />

die kleiner gleich a ist. Mit dem Beispiel-Codewort ist a = 710, und q = 709.<br />

Sei nun n = pq Ihr RSA Modul. Ihr öffentlicher RSA Exponent e ist die größte Zahl kleiner gleich 2 7 −1, welche teilerfremd<br />

zu ϕ(n) = (p − 1)(q − 1) ist. Berechnen Sie den passenden privaten RSA Schlüssel d und entschlüsseln Sie den Ciffretext<br />

c = a + c 0 zum Klartext m, wobei c 0 die Dezimalzahl ist, die dem Bitstirng (k 1 k 3 k 5 k 7 k 9 k 11 k 13 k 15 k 17 k 19 ) entspricht.<br />

Das Lösungswort l 5 ist d + m mod n.<br />

2

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!