Lösung P 01 - CDC - Technische Universität Darmstadt
Lösung P 01 - CDC - Technische Universität Darmstadt
Lösung P 01 - CDC - Technische Universität Darmstadt
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 />
Einführung in die<br />
Kryptographie<br />
WS 2<strong>01</strong>3/2<strong>01</strong>4<br />
1. <strong>Lösung</strong>sblatt — 18.10.2<strong>01</strong>3<br />
Übung Organization<br />
Die Aufgaben sind jeweils Freitagabend im Netz verfügbar. Die P-Aufgaben sind Präsenzaufgaben und werden während<br />
der Übungsstunde gelöst und die H-Aufgaben sind Hausaufgaben, die abgegeben werden können. Die <strong>Lösung</strong>en von<br />
P-Aufgaben werden am nächsten Freitag und die <strong>Lösung</strong>en von H-Aufgaben werden dann am übernächsten Freitag im<br />
Netz verfügbar sein. Lesen Sie bitte regelmäßig die Webseite<br />
https://www.cdc.informatik.tu-darmstadt.de/studium-und-lehre/lehre/ws-13-14/vorlesung/einfuehrung-in-die-kryptographie/<br />
um informiert zu sein.<br />
P1 Schutzziele<br />
(a) Nennen und beschreiben Sie mindestens vier Schutzziele, die man mit Kryptographie erreichen kann. Wie kann man<br />
sie erreichen?<br />
<strong>Lösung</strong>.<br />
• Vertraulichkeit: Information wird nur Berechtigten zugänglich gemacht, z.B. durch Verschlüsselung.<br />
• Integrität: Bei Transport und Speicherung werden Daten nicht verändert, z.B. durch Verschlüsselung und MAC.<br />
• Authentizität (ist Teil von Integrität): Herkunft ist verifizierbar, z.B. durch MAC.<br />
• Identifikation: Identität des Kommunikationspartner ist verifizierbar, z.B. durch Digitale Signaturen.<br />
• Nichtabstreitbarkeit: Integrität und Authentizität sind Dritten gegenüber nachweisbar, z.B. durch Digitale Signaturen.<br />
(b) Beschreiben Sie ein persönliches Erlebnis in dem mindestens zwei Schutzziele eine Rolle spielen.<br />
<strong>Lösung</strong>. Beispiel Online Banking:<br />
• Vertraulichkeit: Meine Zugangsdaten werden nicht abgehört,<br />
• Integrität: Das Zielkonto meiner Überweisung wird nicht verändert,<br />
• Identifikation: Ich rede mit meiner Bank.<br />
P2 Größter gemeinsamer Teiler und der erweiterter Euklidischer Algorithmus<br />
Seien a, b, n ganze Zahlen. Betrachten Sie die diophantische Gleichung<br />
"Diophantische Gleichung” bedeutet, dass wir nur ganzzahlige <strong>Lösung</strong>en suchen.<br />
ax + b y = n (1)<br />
(a) Zeigen Sie, dass die Gleichung 1 genau dann eine <strong>Lösung</strong> (x, y) ∈ 2 hat, wenn ggT(a, b) ein Teiler von n ist.<br />
<strong>Lösung</strong>. Ist ggT(a, b) = d. Dann gibt es r, s ∈ , sodass ggT(r, s) = 1 und a = r · d, b = s · d.<br />
⇒ Sei x 0 , y 0 eine <strong>Lösung</strong>. Dann<br />
ax 0 + b y 0 = n = rd x 0 + sd y 0 = (r x 0 + s y 0 )d → d | n<br />
⇐ Sei d | n. Dann gibt es ein t ∈ mit: n = t · d.<br />
Da ggT(a, b) = d → ∃ a 0 , b 0 ∈ mit: aa 0 + bb 0 = d. Dann gilt:<br />
t · aa 0 + t · bb 0 = t · d<br />
d.h. ∃x 0 = a 0 t, y 0 = b 0 t mit ax 0 + b y 0 = t · d = n.<br />
1
(b) Angenommen Gleichung 1 hat eine <strong>Lösung</strong>. Bestimmen Sie die <strong>Lösung</strong>smenge der Gleichung.<br />
<strong>Lösung</strong>. Sei (x 0 , y 0 ) eine <strong>Lösung</strong>. Wir bestimmen alle x, y ∈ mit ax + b y = n. Wir schreiben<br />
ax 0 + b y 0 = n = ax + b y ⇒ a(x − x 0 ) = b(y − y 0 )<br />
ggT(a, b) = d ⇒ ∃a 0 , b 0 : ggT(a 0 , b 0 ) = 1 und a = a 0 d, b = b 0 d . Dann gilt<br />
Da ggT(a 0 , b 0 ) = 1, gilt a 0 | y − y 0 ⇒ ∃t ∈ mit<br />
Aus Gleichung (2) gilt außerdem a 0 (x − x 0 ) = b 0 a 0 t<br />
a 0 d(x − x 0 ) = b 0 d(y − y 0 ) ⇒ a 0 (x − x 0 ) = b 0 (y − y 0 ) (2)<br />
y − y 0 = a 0 t ⇒ y = y 0 − a 0 t ⇒ y = y 0 − a d t (3)<br />
x = x 0 + b 0 t ⇒ x = x 0 + b d t (4)<br />
Es bleibt zu zeigen, dass alle x, y die Gleichung (3) und (4) genügen, die diophantische Gleichung erfüllen, und<br />
zwar für alle t ∈ .<br />
ax + b y = a(x 0 + b d )t + b(y 0 − a d t) =<br />
ax 0 + ab<br />
d t + b y 0 − ba<br />
d t = ax 0 + b y 0 = n<br />
(c) Angenommen Gleichung 1 hat eine <strong>Lösung</strong>. Geben Sie einen Algorithmus an, der die <strong>Lösung</strong>smenge bestimmt.<br />
Verwenden Sie dabei den erweiterten euklidischen Algorithmus.<br />
<strong>Lösung</strong>.<br />
-Wir verwenden den euklidischen Algorithmus um ggT(a, b) = d als Linearkombination von a und b zu schreiben:<br />
ar + bs = d; r, s ∈ (5)<br />
-Da Gleichung (1) eine <strong>Lösung</strong> hat wissen wir das d | n teilt.<br />
-Wir berechnen k ∈ : n = kd<br />
-Wir multiplizieren die Geichung (5) mit k<br />
ark + bsk = dk = n, d.h. ax 0 + b y 0 = n mit x 0 = rk und y 0 = sk.<br />
Aus (3) und (4) können wir die <strong>Lösung</strong>smenge wie folgt bestimmen:<br />
L = {(x, y) : x = x 0 + b d t, y = y 0 − a t, t ∈ }<br />
d<br />
(d) Bestimmen Sie mit dem Algorithmus aus c) die <strong>Lösung</strong>smenge der Gleichung 128x − 162y = −264.<br />
<strong>Lösung</strong>. Der erweiterte euklidische Algorithmus ergibt:<br />
128(19) − 162(15) = 2<br />
d.h. ggT(128, −162) = 2 und 2 | −264. Somit ist die Gleichung lösbar und −264 = 2 × (−132):<br />
128(19(−132)) − 162(15(−132)) = 2(−132)<br />
128(−2508) − 162(−1980) = −264<br />
Also ist x 0 = −2508 und y 0 = −1980 eine <strong>Lösung</strong>. Die <strong>Lösung</strong>smenge ergibt sich aus (3) und (4) wie folgt:<br />
L = {(x, y) : x = −2508 − 81t, y = −1980 − 64t, t ∈ }<br />
H1 Größter gemeinsamer Teiler<br />
(a) Finden Sie eine Folge positiver ganzer Zahlen (a i ) i≥1 ⊆ , so dass die Berechnung von ggT(a i+1 , a i ) mit dem<br />
Euklidischen Algorithmus genau i Iterationen benötigt. Begründen Sie Ihr Ergebnis. Wie heißt diese berühmte<br />
Folge, die in internationalen Bestsellern wie "The Da Vinci Code” Erwähnung findet?<br />
(b) Seien a, b, g ganze Zahlen und gelte a + b = g. Zeigen Sie dass g =ggT(a, b) gilt.<br />
H2 Aufwand von Division mit Rest<br />
Seien a und b ganze Zahlen und sei b positiv. Zeigen Sie, dass die Bestimmung ganzer Zahlen a = qb + r, 0 ≤ r < 1, die<br />
Komplexität O(size(b)size(q)) hat, wenn man die Schulbuchmethode verwendet.<br />
2