94
Kryptologie Klaus Becker 2014

Kryptologie Klaus Becker 2014. 2 Kryptologie An: [email protected] Von: [email protected] Hallo Bob!

Embed Size (px)

Citation preview

Page 1: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

Kryptologie

Klaus Becker

2014

Page 2: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

2 Kryptologie

An: [email protected]

Von: [email protected]

Hallo Bob!

Page 3: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

3 Teil 1

Einführung

Page 4: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

4 Big brother liest mit!

Spätestens seit der NSA-Affäre weiß jeder, dass Kommunikationsvorgänge von Nachrichtendiensten weltweit überwacht werden. Die digitale Übertragung von Nachrichten macht es recht einfach, diese abzufangen und automatisiert auszuwerten.

Page 5: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

5 Wer kommuniziert mit mir?

Des öfteren erhält man freundliche E-Mails, die einem dabei behilflich sein wollen, ein Problem, das sich irgenwo ergeben hat, zu beheben. Man muss nur dem Link folgen.

Page 6: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

6 Sicherheitsprobleme

Aufgabe: Beurteile diese (fiktive) E-Mail unter Sicherheitsaspekten. Welche Fragen ergeben sich hier?

An: [email protected]: [email protected]: Kontoeröffnung

Sehr geehrte Herr Becker,

Sie haben mit Ihrer Mail vom 1.1.2014 ein Konto bei unserer Bank beantragt. Wir danken Ihnen für das Vertrauen in unsere Bank. Selbstverständlich können wir Ihnen ein Konto einrichten. Die Kontonummer lautet: 314 216. Sie erhalten demnächst per Post eine Kreditkarte (Geheimzahl 9138). Für die Einrichtung des Kontos müssenwir Ihnen einen Unkostenbetrag von 50 Euro in Rechnung zu stellen. Wir haben diesen Betrag bereits von Ihrem Konto abgebucht. Bitte zahlen Sie diesen Betrag schnellstmöglich auf Ihr Konto ein.

Mit freundlichen Grüßen

P. Theuerkauf(Leiter der Service-Abteilung)

Page 7: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

7 SicherheitsproblemeAn: [email protected]: [email protected]: Kontoeröffnung

Sehr geehrte Herr Becker,

Sie haben mit Ihrer Mail vom 1.1.2014 ein Konto bei unserer Bank beantragt. Wir danken Ihnen für das Vertrauen in unsere Bank. Selbstverständlich können wir Ihnen ein Konto einrichten. Die Kontonummer lautet: 314 216. Sie erhalten demnächst per Post eine Kreditkarte (Geheimzahl 9138). Für die Einrichtung des Kontos müssenwir Ihnen einen Unkostenbetrag von 50 Euro in Rechnung zu stellen. Wir haben diesen Betrag bereits von Ihrem Konto abgebucht. Bitte zahlen Sie diesen Betrag schnellstmöglich auf Ihr Konto ein.

Mit freundlichen Grüßen

P. Theuerkauf(Leiter der Service-Abteilung)

Authentizität: Stammt die Nachricht wirklich von der BilligenBank, oder erlaubt sich hier jemand einen Scherz?

Integrität: Hat jemand die Nachricht manipuliert (z.B. die PIN geändert)?

Verbindlichkeit: Die Bank behauptet, die PIN nicht mitverschickt zu haben.Stimmt das?

Vertraulichkeit: Wurde die Nachricht abgefangen und von einer unbekannten Person gelesen?

Page 8: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

8 Sicherheitsziele

Vertraulichkeit:

Die Nachricht, die man erhält, ist nicht von dritten Personen gelesen worden.

Integrität:

Die Nachricht, die man erhält, ist von keiner dritten Person manipuliert worden.

Authentizität:

Die Nachricht, die man erhält, stammt von der Person, die als Absender angegeben ist.Verbindlichkeit:

Der Absender kann nachträglich nicht bestreiten, die Nachricht verfasst zu haben.

Page 9: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

9 Teil 2

Klassische Chiffrierverfahren

Page 10: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

10 Das Caesar-Verfahren

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

D E F G H I J K L M N O P Q R S T U V W X Y Z A B C

Schlüssel: DQuelltext:

SALVEASTERIX

Geheimtext:VDOYHDVWHULA

Page 11: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

11 Das Vigenère-Verfahren

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

K L M N O P Q R S T U V W X Y Z A B C D E F G H I J

Schlüssel: KUHQuelltext:

VIG ENE RE

Geheimtext:FCN OHL BY

K

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

U V W X Y Z A B C D E F G H I J K L M N O P Q R S T U

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

H I J K L M N O P Q R S T U V W X Y Z A B C D E F G H

Page 12: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

12 Das Vigenère-Verfahren

V I G E N E R E

Schlüssel, Klartext

K U H K U H K U

F C N O H L B Y

Geheimtext

ABCDEFGHIJKLMNOPQRSTUVWXYZ

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z B C D E F G H I J K L M N O P Q R S T U V W X Y Z A C D E F G H I J K L M N O P Q R S T U V W X Y Z A B D E F G H I J K L M N O P Q R S T U V W X Y Z A B C E F G H I J K L M N O P Q R S T U V W X Y Z A B C D F G H I J K L M N O P Q R S T U V W X Y Z A B C D E G H I J K L M N O P Q R S T U V W X Y Z A B C D E F H I J K L M N O P Q R S T U V W X Y Z A B C D E F G I J K L M N O P Q R S T U V W X Y Z A B C D E F G H J K L M N O P Q R S T U V W X Y Z A B C D E F G H I K L M N O P Q R S T U V W X Y Z A B C D E F G H I J L M N O P Q R S T U V W X Y Z A B C D E F G H I J K M N O P Q R S T U V W X Y Z A B C D E F G H I J K L N O P Q R S T U V W X Y Z A B C D E F G H I J K L M O P Q R S T U V W X Y Z A B C D E F G H I J K L M N P Q R S T U V W X Y Z A B C D E F G H I J K L M N O Q R S T U V W X Y Z A B C D E F G H I J K L M N O P R S T U V W X Y Z A B C D E F G H I J K L M N O P Q S T U V W X Y Z A B C D E F G H I J K L M N O P Q R T U V W X Y Z A B C D E F G H I J K L M N O P Q R S U V W X Y Z A B C D E F G H I J K L M N O P Q R S T V W X Y Z A B C D E F G H I J K L M N O P Q R S T U W X Y Z A B C D E F G H I J K L M N O P Q R S T U V X Y Z A B C D E F G H I J K L M N O P Q R S T U V WY Z A B C D E F G H I J K L M N O P Q R S T U V W X Z A B C D E F G H I J K L M N O P Q R S T U V W X Y

Schlüsselbuchstabe

Klartextbuchstabe

Page 13: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

13 Das Vigenère-Verfahren

Aufgabe:

Verschlüssele den Klartext 'HALLOWIEGEHTS' mit dem Schlüssel 'ESEL'.

Aufgabe:

Entschlüssele den Geheimtext 'LMSXEGXTXUS'. Der Schlüssel lautet 'ZEBRA'.

Aufgabe:

Wähle selbst einen Schlüssel. Verschlüssele einen Text mit dem Schlüssel. Gib den Geheimtext und den Schlüssel an deine Nachbarin / deinen Nachbarn zum Entschlüsseln weiter.

Page 14: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

14

Kryptoanalyse beim Vigenère-Verfahren

HGINEHWTEIBLUNARWPCLDWCVDDYUVNCETJIBLTFTQEVIIFFJEEHRNREQGIVNZYTLRZPUVNYIJKEMHBJKNQNKMHVOZCGXBLSCINJIMREZEKYGKIRXLLEGPVEDDWELNJIMKUMHSLHHKGCIDWTKDDVSYEHREVRFMQWEKHFJBDVHVSEYOBEKXJDAAIOUSNROVNRGIVIMHJVSBLPVNRXFAUMKGIATWJKZDXEFRSSCVNVYOUEQFBIIGVHFLCRFJGDWDYMDMEVBKMUQESWJVKZINDTHLSXOKHFEERLBRRRMFBADQNKERQJKGNPEVNDQLRMLIVEDRMOXTDMOCIDHERBDMERSGEUVIMIXLNCISJALIHVWZPUXELIMFDDMEVNRGIZFEISZMJPFZNDRTTHHJGVEQKSVIEXFJMHXXZLCINNEGISJCGEVKNHGIKDHIGVLRIOIIEJFVRRGIRUSRVIHHRBLFHREZEGSFYIBLHCATFFUIDAFCLDRWVRRGICIMKFEALIOUERGIZFEISLNCOBYNTREUARLBKMHXJYRDQTZNFIOUIDPPIEKIZXESEO

Ziel: Schlüssel aus einem Geheimtext rekonstruieren

Grundidee des Kasiski-Verfahrens:

Schritt 1: Bestimme die Länge des Schlüsselwortes.

Schritt 2: Ermittle den Schlüssel mit einer Häufigkeitsanalyse.

Page 15: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

15 Bestimmung der Schlüssellänge

S: W O I N W O I N W O I N W O I N W O I N W O I N W O I N W O I N W O

K: H A B E E I N E N K L E I N E N E S E L I M S T A L L G E S E H E N

| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |

G: D O J R A W V R J Y T R E B M A A G M Y E A A G W Z T T A G M U A B

Aufgabe: Begründe folgende Zusammenhänge:

Dopplungen im Klartext führen nicht unbedingt zu Dopplungen im Geheimtext.

Beispiel: EIN

Wenn Dopplungen im Geheimtext aus Dopplungen im Klartext resultieren, dann ist der Abstand der Buchstabenfolgen ein Vielfaches der Schlüssellänge.

Beispiel: AMG

Dopplungen im Geheimtext resultieren aber nicht unbedingt aus Dopplungen im Klartext. Sie können auch "zufällig" entstehen.

Beispiel: AAG

Page 16: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

16 Bestimmung der Schlüssellänge

HGINEHWTEIBLUNARWPCLDWCVDDYUVNCETJIBLTFTQEVIIFFJEEHRNREQGIVNZYTLRZPUVNYIJKEMHBJKNQNKMHVOZCGXBLSCINJIMREZEKYGKIRXLLEGPVEDDWELNJIMKUMHSLHHKGCIDWTKDDVSYEHREVRFMQWEKHFJBDVHVSEYOBEKXJDAAIOUSNROVNRGIVIMHJVSBLPVNRXFAUMKGIATWJKZDXEFRSSCVNVYOUEQFBIIGVHFLCRFJGDWDYMDMEVBKMUQESWJVKZINDTHLSXOKHFEERLBRRRMFBADQNKERQJKGNPEVNDQLRMLIVEDRMOXTDMOCIDHERBDMERSGEUVIMIXLNCISJALIHVWZPUXELIMFDDMEVNRGIZFEISZMJPFZNDRTTHHJGVEQKSVIEXFJMHXXZLCINNEGISJCGEVKNHGIKDHIGVLRIOIIEJFVRRGIRUSRVIHHRBLFHREZEGSFYIBLHCATFFUIDAFCLDRWVRRGICIMKFEALIOUERGIZFEISLNCOBYNTREUARLBKMHXJYRDQTZNFIOUIDPPIEKIZXESEO

HGI at index 0 and 430 - difference = 430IBL at index 9 and 34 - difference = 25CLD at index 18 and 488 - difference = 470UVN at index 27 and 67 - difference = 40IBL at index 34 and 474 - difference = 440EHR at index 49 and 149 - difference = 100GIV at index 56 and 191 - difference = 135ZPU at index 65 and 360 - difference = 295QNK at index 81 and 296 - difference = 215KMH at index 83 and 533 - difference = 450CIN at index 95 and 415 - difference = 320NJI at index 97 and 124 - difference = 27JIM at index 98 and 125 - difference = 27REZ at index 101 and 466 - difference = 365EZE at index 102 and 467 - difference = 365VED at index 117 and 317 - difference = 200…

Kasiski search for repeated substrings:

http://www.staff.uni-mainz.de/pommeren/Kryptologie/Klassisch/2_Polyalph/kasiski1.html

Aufgabe: Begründe folgende Vermutung.

Die Schlüssellänge beträgt 5.

Page 17: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

17 Bestimmung des Schlüssels

Schlüssel: W O I N

Klartext: H A B E E I N E N K L E I N E N E S E L I M S T A L L G E S E H E N

E N E E

Geheimtext: D O J R A W V R J Y T R E B M A A G M Y E A A G W Z T T A G M U A B

A B M RHäufigster Buchstabe in der Kolonne

A B C D E F G H I J K L …

W X Y Z A B C D E F G HW

A B C D E F G H I J K L …

X Y Z A B C D E F G H I

A B C D E F G H I J K L …

I J K L M N O P Q R S TI

A B C D E F G H I J K L …

N O P Q R S T U V W X YN

X

Page 18: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

18 Bestimmung des Schlüssels

HGINEHWTEIBLUNARWPCLDWCVDDYUVNCETJIBLTFTQEVIIFFJEEHRNREQGIVNZYTLRZPUVNYIJKEMHBJKNQNKMHVOZCGXBLSCINJIMREZEKYGKIRXLLEGPVEDDWELNJIMKUMHSLHHKGCIDWTKDDVSYEHREVRFMQWEKHFJBDVHVSEYOBEKXJDAAIOUSNROVNRGIVIMHJVSBLPVNRXFAUMKGIATWJKZDXEFRSSCVNVYOUEQFBIIGVHFLCRFJGDWDYMDMEVBKMUQESWJVKZINDTHLSXOKHFEERLBRRRMFBADQNKERQJKGNPEVNDQLRMLIVEDRMOXTDMOCIDHERBDMERSGEUVIMIXLNCISJALIHVWZPUXELIMFDDMEVNRGIZFEISZMJPFZNDRTTHHJGVEQKSVIEXFJMHXXZLCINNEGISJCGEVKNHGIKDHIGVLRIOIIEJFVRRGIRUSRVIHHRBLFHREZEGSFYIBLHCATFFUIDAFCLDRWVRRGICIMKFEALIOUERGIZFEISLNCOBYNTREUARLBKMHXJYRDQTZNFIOUIDPPIEKIZXESEO

>>>

Schlüssellänge: 5

Häufigster Buchstabe:

Kolonne 0 : D

Kolonne 1 : I

Kolonne 2 : F

Kolonne 3 : V

Kolonne 4 : E

Aufgabe: Begründe folgende Vermutung.

Der Schlüssel lautet ZEBRA.

Aufgabe:

Benutze das Programm haeufigkeitsanalyse.py (siehe inf-schule), um den häufigsten Buchstaben in den Kolonnen zu bestimmen.

Page 19: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

19

Zur Sicherheit beim Vigenère-Verfahren

. . . . .

. . . . .

T S B A CGeheimtext

Klartext

Schlüssel

Aufgabe:

Welcher der folgenden Klartexte könnte hier in verschlüsselter Form vorliegen?

KATZE, PFERD, TIGER

Page 20: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

20

Zur Sicherheit beim Vigenère-Verfahren

K A T Z E

. . . . .

T S B A CGeheimtext

Klartext

Schlüssel

Aufgabe:

Rekonstruiere jeweils den verwendeten Schlüssel. Welche Folgerungen kannst du hieraus ziehen?

P F E R D

. . . . .

T S B A C

T I G E R

. . . . .

T S B A C

Page 21: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

21 One-Time-Pad

Wenn der Schlüssel keine statistischen Auffälligkeiten aufweist, kann ein Angreifer, der nur den Geheimtext kennt, den Schlüssel und den Klartext nicht rekonstruieren.

Beim One-Time-Pad handelt es sich also um ein sicheres Chiffrierverfahren.

SUMMSUMMSUMMBIENCHENSUMMHERUM

HGGHFDDSABSHDGEURTTZHRJKHVFJU

ZASTXXPESVETEOIHTAXMZLVWOZWDGGeheimtext

Klartext

Schlüssel

Beim One-Time-Pad (deutsch: Verfahren mit Einmalschlüssel) benutzt man ein polyalphabetisches Ersetzungsverfahren (wie z.B. das Vigenère-Verfahren), bei dem der Schlüssel (mindestens) so lang ist wie der Klartext.

Page 22: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

22 One-Time-Pad

Im praktischen Einsatz hat das One-Time-Pad aber einige gewaltige Nachteile:

Man darf den Schlüssel nur einmal zum Verschlüsseln eines Textes benutzen. Wenn man ihn mehrfach benutzt, liefert man dem Angreifer Möglichkeiten zu einem erfolgreichen Angriff.

Man kann sich den Schlüssel nicht merken. Er muss auf einem Medium festgehalten werden und auf sicherem Weg zwischen den Kommunikationspartnern überbracht werden.

Beim One-Time-Pad (deutsch: Verfahren mit Einmalschlüssel) benutzt man ein polyalphabetisches Ersetzungsverfahren (wie z.B. das Vigenère-Verfahren), bei dem der Schlüssel (mindestens) so lang ist wie der Klartext.

Quelle: http://www.cryptomuseum.com/crypto/otp.htm

Page 23: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

23 Teil 3

Moderne Chiffriersysteme

Page 24: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

24 Symmetrische Chiffriersysteme

Beispiele: Vigenère-Chiffriersystem

KUH KUH

VIGENERE

A(lice)

Klartext

Schlüssel

VIGENERE

Klartext

FCNOHLBY

Geheimtext

Verschlüsselungsverfahren Entschlüsselungsverfahren

B(ob)

Schlüssel

Page 25: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

25 Symmetrische Chiffriersysteme

s

f(x, s)

s

x0, x1, x2, ...

A(lice)

Klartext

f*(y, s)

Schlüssel

x0, x1, x2, ...

Klartext

y0, y1, y2, ...

Geheimtext

Verschlüsselungsfunktion Entschlüsselungsfunktion

B(ob)

Schlüssel

Ein symmetrisches Chiffriersystem ist ein System zum Ver- und Entschlüsseln von Nachrichten, bei dem derselbe Schlüssel zum Ver- und Entschlüsseln benutzt wird.

Page 26: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

26 Symmetrische Chiffriersysteme

A(lice)

Hallo Bob,

...

Alice

B(ob)

Hallo Bob,

...

Alice

Page 27: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

27 SchlüsselverwaltungB(ob)

C(lara)

Alice

Bob

Clara

A(lice)

Bob

David

David

D(avid)

Alice

Clara

Aufgabe: Wer kann mit wem sicher kommunizieren? Welche Schloss-Schlüsselpaare fehlen noch?

Page 28: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

28 Schlüsselverwaltung

B(ob)

E(ve)

A(lice)

F(elix)

Aufgabe: Eve und Felix werden in den Geheimbund mit aufgenommen. Wie viele verschiedene Schloss-Schlüssel-Paare werden jetzt benötigt, um Geheimnisse zwischen allen Mitgliedern des Geheimbundes austauschen zu können?

C(lara) D(avid)

Page 29: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

29 Schwierigkeit - Schlüsselaustausch

Wer ein symmetrisches Chiffriersystem benutzen möchte, steht vor der Schwierigkeit, den gemeinsamen Schlüssel vorab sicher auszutauschen, bevor eine Nachricht verschlüsselt verschickt werden kann.

A(lice) B(ob)

Page 30: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

30 Schwierigkeit - Schlüsselinflation

Bei symmetrischen Chiffriersystemen müssen je zwei Kommunikationspartner einen gemeinsamen Schlüssel vereinbaren. Wenn n Personen alle miteinander kommunizieren möchten, benötigt man insgesamt (n*(n-1))/2 Schlüssel. Bei größeren Gruppen führt das leicht zu einer Schlüsselinflation.

B(ob)A(lice)

C(lara) D(avid)

Page 31: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

31 Asymmetrische Chiffriersysteme

A(lice)

Hallo Bob,

...

Alice

B(ob)

Hallo Bob,

...

Alice

public key private key

Page 32: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

32 Asymmetrische Chiffriersysteme

Aufgabe:

(a) Warum kann Bob das gleiche Vorhängeschloss (bzw. Kopien dieses Schlosses) zu seinem Schlüssel für alle Kommunikationspartner bereitstellt?

(b) Warum benötigt Alice ein anderes Vorhängeschloss mit Schlüssel, wenn Bob eine Antwortnachricht an Alice schicken möchte?

(c) Wie viele verschiedene Vorhängeschloss-Schlüssel-Paare werden benötigt, wenn Alice, Bob, Clara und David Geheimnisse austauschen wollen?

A(lice) B(ob)

public key private keypublic key private key

C(lara) D(avid)

Page 33: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

33 Asymmetrische Chiffriersysteme

Ein asymmetrisches Chiffriersystem ist ein System zum Ver- und Entschlüsseln von Nachrichten, bei dem ein öffentlich bereitgestellter Schlüssel (public key) zum Verschlüsseln und ein privater Schlüssel (private key) zum Entschlüsseln benutzt wird.

e

f(x, e)

d

x0, x1, x2, ...

A(lice)

Klartext

f*(y, d)

öffentlicher Schlüsselvon Bob

x0, x1, x2, ...

Klartext

y0, y1, y2, ...

Geheimtext

Verschlüsselungsfunktion Entschlüsselungsfunktion

B(ob)

privater Schlüsselvon Bob

Page 34: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

34 Asymmetrische Chiffriersysteme

e

f(x, e)

d

x0, x1, x2, ...

A(lice)

Klartext

f*(y, d)

öffentlicher Schlüsselvon Bob

x0, x1, x2, ...

Klartext

y0, y1, y2, ...

Geheimtext

Verschlüsselungsfunktion Entschlüsselungsfunktion

B(ob)

privater Schlüsselvon Bob

Schlüsselaustausch:

Der Schlüsselaustausch ist bei asymmetrischen Chiffriersystemen unproblematisch. Der Besitzer eines Schlüsselpaares kann seinen öffentlichen Schlüssel an alle Personen weitergeben, die ihm verschlüsselte Nachrichten zukommen lassen sollen. Der Besitzer kann sogar den öffentlichen Schlüssel öffentlich bekannt machen, so dass jeder ihn benutzen kann. Schlüsselanzahl:

Wenn mehrere Personen verschlüsselte Nachrichten austauschen wollen, dann reicht es, wenn jede Person ein Schlüsselpaar aus öffentlichem und privatem Schlüssel besitzt.

Page 35: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

35 Schwierigkeit - Rechenaufwand

e

f(x, e)

d

x0, x1, x2, ...

A(lice)

Klartext

f*(y, d)

öffentlicher Schlüsselvon Bob

x0, x1, x2, ...

Klartext

y0, y1, y2, ...

Geheimtext

Verschlüsselungsfunktion Entschlüsselungsfunktion

B(ob)

privater Schlüsselvon Bob

Bei langen Klartexten ist der Rechenaufwand bei den derzeit benutzten Verfahren recht hoch.

Page 36: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

36 Hybridsysteme

s

f(x, e)

s

x0, x1, x2, ...

A(lice)

Klartext

f*(y, d)

erzeugterSession Key

x0, x1, x2, ...

Klartext

y0, y1, y2, ...Geheimtext

B(ob)

empfangenerSession Key

g(s, e)s

Session Key

g*(t, d) s

Session Key

tverschlüsselter Session

Key

e

öffentlicher Schlüsselvon Bob

t; y0, y1, y2, ...y0, y1, y2, ...

t

d

privater Schlüsselvon Bob

Geheimtext

verschlüsselter Session Key

Einfaches asymmetrisches

Schlüsselmanagement

Schnelles symmetrisches

Chiffrierverfahren

Page 37: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

37

AES - ein modernes symmetrisches Ch.

Page 38: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

38

RSA - ein modernes asymetrisches Ch.

Page 39: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

39 Entwicklung neuer Verfahren

Am 2. Januar 1997 wurde die Entwicklung eines neuen Chiffriersystems vom amerikanische Handelsministerium ausgeschrieben. Insgesamt wurden bis zum Abgabeschluss am 15. Juni 1998 fünfzehn Vorschläge aus aller Welt eingereicht. Auf einer Konferenz wurden die Chiffrierverfahren dann vorgestellt und öffentlich diskutiert. Fünf der Kandidaten (MARS, RC6, Rijndael, Serpent, Twofish) kamen in die nächste Runde. Weitere Analysen führten dazu, dass der Rijndael-Algorithmus zum Sieger erklärt wurde und heute im AES-Verfahren benutzt wird.

Interessant ist hier, dass man bei der Entwicklung neuer Verfahren gar nicht erst versucht, die Verfahren selbst geheim zu halten. Im Gegenteil, die Verfahren werden zur öffentlichen Diskussion allen Experten zur Verfügung gestellt. Nur die Verfahren, die eine solche Prüfung bestehen, haben eine Chance, in moderen Chiffriersystemen verwendet zu werden.

Page 40: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

40 Das Prinzip von Kerckhoff

Kerckhoff:

Die Sicherheit beruht auf der Geheimhaltung des Schlüssels, nicht des Verschlüsselungsverfahrens

Das Prinzip von Kerckhoff ist ein grundlegendes Prinzip, das bei der Entwicklung moderner Chiffriersysteme benutzt wird. Es besagt: Die Sicherheit eines Chiffriersystems darf nicht davon abhängen, ob das benutzte Verfahren zum Ver- und Entschlüsseln bekannt ist. Die Sicherheit soll nur auf der Geheimhaltung von Schlüsseln beruhen.

„security by obscurity“:

Die Sicherheit beruht auf der Geheimhaltung des verwendeten Verschlüsselungsverfahrens

Kriterien für gute Chiffrierverfahren:

Sie beruhen auf dem Kerckhoffs-Prinzip.

Sie werden von Kryptologen (bzw. -analytikern) weltweit untersucht.

Sie durchlaufen erfolgreich alle möglichen Angriffszenarien.

Page 41: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

41 Teil 4

Experimente mit GnuPG

Page 42: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

42 GnuPG

„GnuPG ist derzeit eine der sichersten Anwendungen zum Verschlüsseln und Signieren von Daten. Bei sorgfältiger Anwendung ist eine Verschlüsselung mit GnuPG auch in absehbarer Zukunft nicht zu knacken. Im Gegensatz zu anderen Verschlüsselungsprogrammen wie beispielsweise PGP von der Firma NAI ist GnuPG freie Software. Das bedeutet unter anderem, daß der Programm-Quellcode frei verfügbar, frei von Patenten und frei von einschränkenden Lizenzbedingungen ist. Jeder Anwender kann so das Programm auf seine Integrität hin prüfen. Das heißt beispielsweise, daß sich Hintertüren (Key Recovery) oder 'Generalschlüssel' (Key Escrow) nicht versteckt einbauen lassen und jeder Anwender die Möglichkeit hat, Fehler zu beseitigen, das Programm zu verbessern oder nach seinen Vorstellungen zu verändern. Darüberhinaus ist GnuPG nicht - wie beispielsweise amerikanische Verschlüsselungsprogramme - durch Ausfuhrbestimmungen künstlich in seiner Funktionalität und Sicherheit beschränkt.“Quelle: http://www.gnupg.de/gph/de/manual/x54.html

GnuPG gibt es für verschiedene Betriebssysteme. Gpg4win ist ein Windows-Installationspaket für die Verschlüsselungssoftware GnuPG sowie zugehörige Anwendungen und Dokumentation. Wenn man das Windows-Installationspaket Gpg4win ausführt, wird neben GnuPG auch eine Programm mit dem Namen Kleopatra installiert. Dieses Programm stellt dem Benutzer eine grafische Oberfläche zur Ausführung von GnuPG-Befehlen zur Verfügung und erleichert so den Umgang mit GnuPG. Wir werden im Folgenden dieses Programm benutzen.

Page 43: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

43 Zielsetzung

Hallo Bob,

können wir uns heute Abend um 8 Uhr treffen?

LG Alice

A(lice)

Klartext

öffentlicher Schlüsselvon Bob

Klartext

GeheimtextVerschlüsselungsfunktion Entschlüsselungsfunktion

B(ob)

privater Schlüsselvon Bob

Hallo Bob,

können wir uns heute Abend um 8 Uhr treffen?

LG Alice

Wir benutzen ein modernes asymmetrisches Chiffriersystem, um verschlüsselte Nachrichten (wie in der Abbildung gezeigt) auszutauschen.

Page 44: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

44 Schlüssel erzeugen

Mit den Menüpunkten [Datei][Neues Zertifikat...][Persönliches OpenPGP-Schlüsselpaar erzeugen] wird man aufgefordert, Namen und E-Mail-Adresse einzugeben.

Gib den Namen in der Form Vorname Name (z.B. Alice Schwarz) ein.

Page 45: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

45 Schlüssel erzeugen

Mit den Menüpunkten [Weiter][Schlüssel erzeugen] wird man aufgefordert, eine Passphrase festzulegen.

Damit der geheime Schlüssel nicht von anderen missbraucht werden kann, wird er von GnuPG mit einem symmetrischen Verfahren verschlüsselt. Den Schlüssel gibt man als Passphrase selbst ein.

z.B.

I.d.M.g.e.h.K!In der Mensa gibt es heute Kartoffelbrei.

Page 46: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

46 Schlüssel erzeugen

Nach Eingabe der Passphrase werden die Schlüssel erzeugt. Genau genommen werden hier Zertifikate erstellt. Jetzt sollte man eine Sicherheitskopie des geheimen Zertifikats (mit dem geheimen Schlüssel) anfertigen. Damit er nicht in falsche Hände gerät, sollte man diese Sicherheitskopie auf einem externen Datenträger speichern.

Page 47: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

47 Öffentlichen Schlüssel exportieren

Mit [Zertifikate exportieren …] kann Bob jetzt seinen öffentlichen Schlüssel exportieren und ihn an Alice weitergeben oder an einem vereinbarten Ort hinterlegen.

Page 48: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

48 Schlüssel anschauen

Mit einem Texteditor kann man sich den öffentlichen Schlüssel anschauen.

-----BEGIN PGP PUBLIC KEY BLOCK-----Version: GnuPG v2.0.22 (MingW32)

mQENBFK1RQ8BCADB5rL1lniAC7LeQ+4u31rGk5+EtpY1izBOqu9+HLqKxFivgm+XCZddL6UjCb+3rtVlAm+66qfvkJatm34eAypasy0xMF8QrA1EpM6Uw0ewwM0k/JVM2tSv/RgX/IQdHowIphN8TVP4rGwd/tJrU7c/vitytS4ohWxOqvW4oaRj8nOicNuS04cDBUEg8BzGasLS7SjSTrJH/zKjAzCkjsZw8HWcB7NJ/Q5RouGmngsfQM9njbhm9fySmz+hBPpY6cwPXjBNt5H6U42Rig0z5EjZS8TUQhKPuZetzi9Uyv3FwdOAl9oOBJ9Mzy+CcOeEo3/6Mt3ebUxKKd34c4aBIXrDABEBAAG0EUJvYiBELiA8Ym9iQGQuZGU+iQE5BBMBAgAjBQJStUUPAhsPBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQbyilC9+xbYuYnwf/bLouQ2gAdSmP2EWgrXVeZff88k8f4+CXQ3vX+bKJHqx8HRtY/IDY1Xjk73Ow5qkbHs3ZvJ8rGBSDBWVCSZXRe3DDptEDsnkLhOxvJ1YCYPSoYmmmydkVbg6Zz/IeJQcBMcuiIIybvAEVlzx46ABrYbMB8RcwjUQcPRvLNZdVwg54t8P/CrUDQMTyGWx/L9LCI+FsET9HHb56DWQQsaYGJizgtFOUWL46dqdB2ln8eR5k06zYsadrPm8dtAIPWgZS5wz/IT5cdgkmJe5LZeyFBQ68U1c/3CBDFdJP1ia6rWXwYsM6NRq9lqtHDXjSC10nxq0EFpmNzgKldt3uaWsFKQ===0HQt-----END PGP PUBLIC KEY BLOCK-----

Page 49: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

49 Öffentlichen Schlüssel importieren

Mit [Datei] [Zertifikate importieren …] kann der Alice jetzt den öffentlichen Schlüssel von Bob importieren.

Page 50: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

50 Nachricht schreiben

Mit einem Texteditor erstellt Alice die Nachricht und speichert sie in einer Textdatei ab.Hallo Bob,

können wir uns heute Abend um 8 Uhr treffen?

LG Alice

Page 51: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

51 Datei verschlüsseln

Mit [Dateien signieren/verschlüsseln …] verschlüsselt Alice die Datei mit der Nachricht.

Page 52: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

52 Verschlüsselte Datei anschauen

Mit einem Texteditor kann man sich die verschlüsselte Nachricht anschauen. Alles klar?-----BEGIN PGP MESSAGE-----Version: GnuPG v2.0.22 (MingW32)

hQEMA28opQvfsW2LAQf+Pux1E0rWVzCx4TlWBYJuZLMYzgX1l1SAYs9ax0IAJAZUwh3v9K+JY94N+uHg68RE3y/KJ/NnFHT6wkZTMBvP3cUtRZRZOgTazrb2ecuXEErYKw4aJU+6FgFdeh38hfdf5+Dx2twfE+C5Y2jw2b2IPozreoItxPr7Tu+DN0pjaDDq7YjbKQuyMvPBmpA4m4VeqLBP9fyhMPkq0QbDHvGljmFxhZfI40NaDQakU+jlIYtmMzyuR1MUUI5W22YLWpkzsCp1YYFExXSMH0htJCM8TXdJ7zc1ot3GahipLtwTlvAyheeocqnBLTrX9TH9+iNjJhUiKNpzKcYr4sS0/A6oQdJ9AVBuKj/TavBZwy02yGvCpnC9+GVVL5mY4O7rn81XK7VAbB+3i6KQfoGLe68OpSa6EmdkBt1xBe+x1MNZ7GH0SLgNpxL9s3IYOOvUX1vK2UAcgYn1fxrAKw/vKQ1gegXJ1hbhPy1gnXWAdjdyihheq3LGTopRiLvrHB1SXwA==HrgW-----END PGP MESSAGE-----

Page 53: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

53 Datei entschlüsseln

Mit [Dateien entschlüsseln/überprüfen …] kann Bob die von Alice verschlüsselte und an Bob geschickte Nachricht entschlüsseln.

Page 54: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

54 Nachricht anschauen

Mit einem Texteditor kann Bob sich die Nachricht von Alice anschauen.

Hallo Bob,

können wir uns heute Abend um 8 Uhr treffen?

LG Alice

Page 55: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

55 Teil 5

Digitale Signatur

Page 56: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

56 SicherheitsproblemeAn: [email protected]: [email protected]: Kontoeröffnung

Sehr geehrte Herr Becker,

Sie haben mit Ihrer Mail vom 1.1.2014 ein Konto bei unserer Bank beantragt. Wir danken Ihnen für das Vertrauen in unsere Bank. Selbstverständlich können wir Ihnen ein Konto einrichten. Die Kontonummer lautet: 314 216. Sie erhalten demnächst per Post eine Kreditkarte (Geheimzahl 9138). Für die Einrichtung des Kontos müssenwir Ihnen einen Unkostenbetrag von 50 Euro in Rechnung zu stellen. Wir haben diesen Betrag bereits von Ihrem Konto abgebucht. Bitte zahlen Sie diesen Betrag schnellstmöglich auf Ihr Konto ein.

Mit freundlichen Grüßen

P. Theuerkauf(Leiter der Service-Abteilung)

Authentizität: Stammt die Nachricht wirklich von der BilligenBank, oder erlaubt sich hier jemand einen Scherz?

Integrität: Hat jemand die Nachricht manipuliert (z.B. die PIN geändert)?

Verbindlichkeit: Die Bank behauptet, die PIN nicht mitverschickt zu haben.Stimmt das?

Vertraulichkeit: Wurde die Nachricht abgefangen und von einer unbekannten Person gelesen?

Page 57: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

57 Ein einfaches Signiersystem

x0, x1, ...

A(lice)

Text

B(ob)

f* dprivater Schlüsselvon Alice

feöffentlicher

Schlüsselvon Alice

x0, x1, ...

y0, y1, y2, ...

verschlüsselter Text

y0, y1, ...

y0, y1, ...

x0, x1, ...

Aufgabe:

(a) Wie kann Bob jetzt feststellen, ob jemand die Nachricht (bestehend aus den beiden Textteilen) verändert hat?

(b) Kann Bob auch feststellen, ob die Nachricht von Alice stammt?

Page 58: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

58 Ein verbessertes Signiersystem

x0, x1, ...

A(lice)

Text

B(ob)

feöffentlicher

Schlüsselvon Alice

x0, x1, ... z

z

f*

Fingerabdruck des Textesy

h

zverschlüsselt

erFingerabdruc

k

dprivater Schlüsselvon Alice

y

Aufgabe:

Muss Alice wirklich den gesamten Text verschlüsseln? Würde es nicht reichen, wenn Alice eine Art Fingerabdruck des Textes erzeugen würde und diesen Fingerabdruck in verschlüsselter Form mitverschicken würde?

Page 59: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

59 Signiersysteme

x0, x1, ...

A(lice)

Text

Hash-Funktion

B(ob)

f*

Hash-Wert als

Fingerabdruck des Textes

y

h

zverschlüsselt

erHash-Wert

als Signatur

dprivater Schlüsselvon Alice

x0', x1', ...

Mr(s) X

f

y'

h

y''

Überprüfung des berechneten und entschlüsselten

Hash-Werts

e

öffentlicher Schlüsselvon Alice

z'

Hash-Funktion

?=

x0, x1, ... z x0', x1', ... z'

Page 60: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

60 Signiersysteme

Ein Signiersystem ist ein System zur Erzeugung einer digitalen Signatur. Mit deren Hilfe kann ein Empfänger feststellen, ob eine Nachricht tatsächlich vom angegebenen Absender stammt und ob sie unverändert beim Empfänger angekommen ist. Alice will eine signierte Nachricht an Bob senden. In einem ersten Schritt erzeugt sie mit Hilfe einer Hash-Funktion einen Fingerabdruck des zu versendenden Textes. Bei dem Fingerabdruck handelt es sich um ein Bitmuster, das dem Text zugeordnet wird. Diesen Fingerabdruck verschlüsselt Alice mit ihrem privaten Schlüssel. Das Ergebnis ist ein Bitmuster, das die digitale Signatur zum vorgegebenen Text bildet. Alice sendet jetzt den Text mit der digitalen Signatur an Bob. Wie überprüft Bob die Authentizität und Integrität der erhaltenen Nachricht? Bob benutzt dieselbe Hash-Funktion wie Alice, um einen Fingerabdruck zum übermittelten Text zu erzeugen. Bob ist im Besitz des öffentlichen Schlüssels von Alice und benutzt ihn, um die übermittelte Signatur zu entschlüsseln. Wenn die Nachricht nicht verändert wurde, dann erhält Bob durch die Entschlüsselung der Signatur den von Alice erzeugten Fingerabdruck zum versendeten Text. Dieser ist dann identisch mit dem von Bob bestimmten Fingerabdruck zum empfangenen Text. Wenn die Nachricht in Teilen verändert wurde, dann müsste das Bob beim Vergleich der Fingerabdrücke auffallen. Wenn X. z.B. den Text abändert, dann ändert sich auch der Fingerabdruck zum Text. X. kann zwar einen Fingerabdruck zum veränderten Text erzeugen, X. kann ihn aber nicht passend verschlüsseln, da X. keinen Zugang zum privaten Schlüssel von Alice hat (davon gehen wir hier natürlich aus). X. ist demnach nicht in der Lage, ein stimmiges Paar bestehend aus einem veränderten Text und einer hierzu passenden mit dem privaten schlüssel von Alice erzeugten Signatur zu erzeugen.

Page 61: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

61 Fingerabdruck im Alltag

Fingerabdrücke werden benutzt, um Personen mit wenigen Eigenschaften zu identifizieren.

Wenn zwei Fingerabdrücke identisch sind, dann geht man davon aus, dass sie von derselben Person stammen.

Page 62: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

62 Digitaler Fingerabdruck

„Digitale Fingerabdrücke“ werden benutzt, um Nachrichten (elektronische Dokumente) mit wenigen Bits zu identifizieren.

Wenn zwei digitale Fingerabdrücke identisch sind, dann geht man davon aus, dass sie von derselben Nachricht stammen.

Hallo Bob,können wir uns heute Abend um 8 Uhr treffen? LG Alice

7F E0 6F BF 68 34 F4 14 A6 08 EA D4 C0 B3 6E 42 A3 FD F1 28

Page 63: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

63 Experimente mit CrypTool

Gib in der Datei „startbeispiel-de.txt“ den gewünschten Originaltext ein.

Öffne mit [Einzelverfahren] [Hashverfahren] [Hash-Demo …] [SHA-1 …] das Experimentierfenster.

Page 64: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

64 Experimente mit CrypTool

Aufgaben:

(a) Erzeuge entsprechend einen digitalen Fingerabdruck zu verschiedenen vorgegebenen Texten. Überzeuge dich, dass der erzeugte Fingerabdruck immer dieselbe Größe hat.

(b) Ändere den vorgegebenen Text geringfügig ab (z.B. durch Einfügen eines Leerzeichens) und beobachte, wie sich der digitale Fingerabdruck verändert.

(c) Hier ein digitaler Fingerabdruck zum Antworttext von Alice:

38 8C D5 4E B5 59 99 60 95 13 48 74 17 78 C3 04 68 5A 64 0D

Kannst du den Text zu diesem Fingerabdruck rekonstruieren

(d) Versuche einmal, noch einen Text zu erzeugen, der den oben gezeigten Fingerabdruck hat.

7F E0 6F BF 68 34 F4 14 A6 08 EA D4 C0 B3 6E 42 A3 FD F1 28

(e) Begründe: Es muss verschiedene Texte geben, die den gleichen digitalen Fingerabdruck haben.

Page 65: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

65 Hash-Funktion

Eine Hash-Funktion ist eine Funktion, die Zeichenketten neue Zeichenketten einer fest vorgegebenen Länge zuordnet.

Hallo Bob,können wir uns heute Abend um 8 Uhr treffen? LG Alice

SHA-1

7F E0 6F BF 68 34 F4 14 A6 08 EA D4 C0 B3 6E 42 A3 FD F1 28

Beispiel:

Die Hash-Funktion SHA-1 ordnet jeder Zeichenkette (jedem Text) ein Bitmuster bestehend aus 160 Bit (hier dargestellt als Hedadezimalzahl) als Hash-Wert zu.

Hash-Funktionen reduzieren in der Regel eine größere Datenmenge (wie einen Text) auf einen kleineren Datensatz mit vorgegebener Größe (wie ein 160-Bit-Muster).

Page 66: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

66 Anforderungen an Hash-Funktionen

Eine Hash-Funktion sollte eine Einwegfunktion sein.Bei einer Einwegfunktion ist es praktisch unmöglich, aus einem möglichen Zielwert einen Ausgangswert so zu bestimmen, dass der Zielwert Funktionswert zum Ausgangswert ist.

Eine Hash-Funktion sollte kollisionsresistent sein. Eine Funktion ist kollisionsresistent, wenn es praktisch unmöglich ist, zwei verschiedene Ausgangswerte zu finden, die denselben Funktionswert haben.

Page 67: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

67 Teil 6

Experimente zum sicheren E-Mail-Austausch

Page 68: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

68 Thunderbird

Wir benutzen hier das E-Mail-Programm Thunderbird (in einer Portable-Version) mit den Erweiterungen GnuPG und Enigmail (siehe http://www.thunderbird-mail.de/wiki/Enigmail_OpenPGP).

Page 69: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

69 Konto einrichten

In einem ersten Schritt musst du ein E-Mail-Konto einrichten.

Page 70: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

70 Schlüssel erzeugen

Mit der integrierten GnuPG-Software kannst du jetzt ein neues Schlüsselpaar erzeugen (oder ein bereits vorhandenes Schlüsselpaar inegrieren). Benutze z.B. [OpenPGP] [OpenPGP-Assistent] .

Page 71: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

71 Einstellungen vornehmen

Der OpenPGP-Assistent unterstützt dich bei der Wahl der Einstellungen.

Page 72: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

72 Schlüssel exportieren

Rufe [Schlüssel verwalten …] auf und wähle deinen Schlüssel aus. Mit der rechten Maustaste die Menupunkte [in Datei exportieren] [Nur öffentlichen Schlüssel exportieren] auswählen. Veröffentliche deinen öffentlichen Schlüssel an einem vereinbarten Ort.

Page 73: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

73 E-Mails versenden

Jetzt kann es losgehen. Du kannst jetzt signierte E-Mails verschicken, die dann vom Empfänger mit deinem öffentlichen überprüft werden.

-----BEGIN PGP SIGNED MESSAGE-----Hash: SHA1

Hallo KB,

die E-Mails von inf-schule sind jetzt signiert.

Ein Gruß vom inf-schule-Team-----BEGIN PGP SIGNATURE-----Version: GnuPG v1.4.11 (MingW32)Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iQEcBAEBAgAGBQJStp29AAoJEBAfzzKi+1n17GAH/2OXcWepQPK3rKKuA5ZnlIavqXqB6rA4uZBN/eZPnlxbkeP974UloEINylByNGp9yRdvVxrvujssCTuMwmfpXecmg4QY/09MP39aYdKIS4qNDsqFYodeT6NIm/e9c7igh1Twlp8cE1UZnlMu8XN6AUj1b5DbG/Nnl44E+dvus7oOFmUr9K84OXTDanSgoCKetTP8txkq+h4KKZbpQrJDqjLMmPfjkHp5Zyb0KK0S7ihu/YyndgcwTlX9I1Xj9WRAAZiRy9xCNcm0VpqkYDvb4sl/+s0xZLNMZFQLMcGR4e27gSQYwMzQtc4xQTYEdNrhFdYKU8eKoKmO1av+qW+D1H4==bNOY-----END PGP SIGNATURE-----

Page 74: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

74 Aufgaben

Erzeuge zunächst ein E-Mail-Konto. Verwende als Benutzernamen den Nachnamen. Erzeuge ein Schlüsselpaar und veröffentliche den öffentlichen Schlüssel im Verzeichnis ….

Teste das E-Mail-Programm. Schicke hierzu dem Nachbarn eine signierte Nachricht. Schicke dem Nachbarn auch eine verschlüsselte Nachricht.

Page 75: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

75 Teil 7

Sicherheitsinfrastruktur

Page 76: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

76 Vertrauen in Schlüssel

Andreas, Annika, Jens, Katharina, Malte und Tanja haben ihre öffentlichen Schlüssel in ein gemeinsam zugängliches Verzeichnis kopiert, so dass jeder sich die benötigten öffentlichen Schlüssel kopieren kann. Irgendetwas stimmt hier aber nicht!

Page 77: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

77 Öffentliche Schlüsselserver

Öffentliche Schlüssel von Kommunikationspartnern kann man sich auch auf Schlüsselservern wie z.B. sks-keyservers.net besorgen.

Page 78: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

78 Vertrauen in Schlüssel

Auch hier tritt das Problem auf, dass man nicht weiß, ob der veröffentlichte Schlüssel tatsächlich zu der angegebenen Person gehört.

Page 79: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

79 Schlüssel überprüfen

Wenn der öffentliche Schlüssel dir direkt von einem (vertrauenswürdigen) Bekannten übergeben wird, dann kannst du (in der Regel) von einem echten Schlüssel ausgehen.

Wenn du einen öffentliche Schlüssel über ein unsicheres Kommunikationsmedium (z.B. per E-Mail) erhalten hast oder von einem Schlüsselserver heruntergeladen hast, dann solltest du dich vergewissern, ob die Angaben zum Eigentümer stimmen. Du kannst dich z.B. mit der Person treffen (oder - wenn du die Stimme eindeutig erkennst - mit der Person telefonieren) und einen Datenabgleich machen.Beim Datenabgleich solltest du folgende Schlüsselangaben genauestens überprüfen:

Schlüssel-ID

Fingerabdruck des Schlüssels

evtl. Erstellungsdatum und Gültigkeitsdauer

Page 80: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

80 Schlüssel zertifizieren

Erst wenn du die Echtheit eines Schlüssels genauestens geprüft hast bzw. wenn du ganz sicher bist, dass ein Schlüssel zu einer bestimmten Person gehört, dann solltest du den betreffenden Schlüssel zertifizieren. Einen Schlüssel zertifiziert man, indem man ihn mit einer digitalen Signatur versieht.

Page 81: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

81 Web of Trust

Durch das Zertifizieren von Schlüsseln lässt sich ein Vertrauensnetz aufbauen.

Page 82: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

82 Übungen

Im E-Mail-Programm lässt sich die Vertrauenswürdigkeit von Schlüsseln festlegen. Experimentiere mit den Möglichkeiten, die das E-Mail-Programm bietet.

Page 83: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

83 (wo)man-in-the-middle-Angriff

A(lice) B(ob)

Hallo Bob! Wie lautet dein öffentlicher Schlüssel? Alice

B-public-key

Meine Kreditkartennummer lautet: 2101

Vielen Dank! Bob

Mr(s) X

B-public-key

private-key-B

B-public-key private-key-B

B-public-key private-key-B

Bob hat sich ein Schlüsselpaar bestehend aus einem öffentlichen und einem privaten Schlüssel erzeugt. Bob schickt seinen öffentlichen Schlüssel auf Anfrage an Alice. Alice benutzt nun diesen Schlüssel, um ihre Kreditkartennummer an Bob zu verschicken. Bob bestätigt den Erhalt der Kreditkartennummer mit einer signierten Nachricht.

Aufgabe:Beurteile die Sicherheit des beschriebenen Szenarios: Kann sich Alice sicher sein, dass sie wirklich Bobs öffentlichen Schlüssel erhält?

Page 84: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

84 (wo)man-in-the-middle-Angriff

Aufgabe:Warum merkt Alice hier nichts vom (Wo)Man in the middle Angriff? Worin besteht die Schwierigkeit? Siehst du Lösungsansätze?

A(lice) B(ob)

Hallo Bob! Wie lau-tet dein öffentlicher Schlüssel? Alice

Mr(s) X

Hallo Bob! Wie lau-tet dein öffentlicher Schlüssel? Alice

B-public-keyX-public-key

Meine Kreditkarten-

nummer lautet2101. Alice

Meine Kreditkarten-

nummer lautet 2101. Alice

Vielen Dank!

Bob

Danke!

Bob

B-public-key

private-key-B

private-key-X

X-public-key

X-public-key

X-public-key

private-key-X

private-key-X

B-public-key

B-public-key

private-key-B

private-key-B

Page 85: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

85 Lösung mit Zertifizierungsinstanz

Kannst du mir deinen öffentlichen Schlüssel schicken. Alice

Benutze den symmetrischen Schlüssel ZEBRA. Alice

Habe den Schlüssel erhalten! Bob

Meine Kreditkartennummer lautet 2101. Alice

Vielen Dank! Bob

CA(rl) Bob

B-public-key

private-key-B

CA-public-key

private-key-CA

B-public-keyprivate-key-CA

Bob B-public-keyprivate-key-CA

CA-public-key

Bob B-public-keyprivate-key-CACA-public-key

private-key-BB-public-key

symmetric-keysymmetric-key

symmetric-key

symmetric-key

symmetric-key

symmetric-key

A(lice) B(ob)

Mr(s) X

Page 86: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

86 Lösung mit Zertifizierungsinstanz

Aufgabe:Alice und Bob benutzen hier ein symmetrisches Chiffrierverfahren, um ihre geheimen Nachrichten vor Mr(s) X zu verbergen. Hat Mr(s) X eine Chance, die Nachrichten mitzulesen?

Page 87: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

87 Zertifikate

Ein Public-Key-Zertifikat dient dazu, die Zugehörigkeit eines öffentlichen Schlüssels zu einem bestimmten Eigentümer zu bestätigen.

Ein Public-Key-Zertifikat enthält in der Regel eine ganze Reihe von Informationen, u a.:

den zu bestätigenden öffentlichen Schlüssel

den Eigentümer des Schlüssels

den Aussteller des Zertifikats

die benutzten kryptografischen Verfahren

die Gültigkeitsdauer des Zertifikats

...

eine digitale Signatur des Ausstellers zur Bestätigung aller Informationen

Page 88: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

88 Zertifikate

Ein Public-Key-Zertifikat dient dazu, die Zugehörigkeit eines öffentlichen Schlüssels zu einem bestimmten Eigentümer zu bestätigen.

Certificate: Data: Version: 3 (0x2) Serial Number: 27:d6:e5:a2:94:e6:a7:b2:65:0a:18:ad:3a:0a:5e:7d Signature Algorithm: sha1WithRSAEncryption Issuer: C=US, O=Thawte, Inc., CN=Thawte SSL CA Validity Not Before: Oct 27 00:00:00 2010 GMT Not After : Oct 27 23:59:59 2011 GMT Subject: C=DE, ST=Rheinland-Pfalz, L=Montabaur, O=1&1 Mail & Media GmbH, OU=GMX, CN=service.gmx.net Subject Public Key Info: Public Key Algorithm: rsaEncryption RSA Public Key: (2048 bit) Modulus (2048 bit): 00:ca:6e:7c:8f:8f:a9:49:cf:d0:02:8f:c2:ee:01: ... Exponent: 65537 (0x10001)…

Page 89: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

89 Weitergabe von Schlüsseln

Kannst du mir deinen öffentlichen Schlüssel schicken. Alice

B-public-key

Ist das wirklich Bobs Schlüssel?

A(lice) B(ob)

Bei dieser (unpersönlichen) Weitergabe des öffentlichen Schlüssels muss dann sichergestellt werden, dass der übergebene öffentliche Schlüssel tatsächlich zu der Person gehört, die sich als Eigentümer ausgibt.

Page 90: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

90 Weitergabe von Schlüsseln

Kannst du mir deinen öffentlichen Schlüssel schicken. Alice

A(lice) B(ob)

Bob B-public-keyprivate-key-CACA-public-key

Hierzu benutzt man Zertifikate. Mit einem (Public Key) Zertifikat wird die Authentizität eines öffentlichen Schlüssels gewährleistet. Eine vertauenswürdige Instanz beglaubigt mit ihrer digitalen Signatur, dass der öffentliche Schlüssel tatsächlich zur Person gehört, die sich als Eigentümer ausgibt.

Der Empfänger eines Zertifikats hat jetzt die Möglichkeit, den signierten Schlüssel (mit Angabe des Eigentümers) zu überprüfen.

Page 91: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

91 Ausstellen von Zertifikaten

Zertifikate werden von sogenannten Zertifizierungsstellen (engl. certification authority, kurz CA) ausgestellt. Das sind vertrauenswürdige Organisationen, die gegen eine Gebühr vorgelegte öffentliche Schlüssel überprüfen und signieren.

Hi! Ich bin Bob. Hier ist mein öffentlicher Schlüssel. Können Sie sich

ausweisen?

Klar. Hier ist mein Ausweis.

Ok! Unsere Zertifizierungsstelle

erstellt dann ein Zertifikat.

B-public-key

private-key-B

B-public-key

Bob

CA-public-key

private-key-CA

Bob B-public-keyprivate-key-CA

Bob B-public-keyprivate-key-CA Hier das gewünsch-te

Zertifikat!

B(ob) CA:Zertifizierungs-

instanz

Page 92: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

92 Überprüfen von Zertifikaten

Zertifikate werden überprüft, indem man die digitale Signatur der Zertifizierungsstelle überprüft. Hierzu benötigt man den öffentlichen Schlüssel der Zertifizierungsstelle.

Kannst du mir deinen öffentlichen Schlüssel schicken. Alice

Zum Überprüfen benötige ich ihren öffentlichen Schlüssel. Alice

Ok!

A(lice) B(ob)

CA:Zertifizierungs-

instanz

Bob B-public-keyprivate-key-CA

CA-public-key

Bob B-public-keyprivate-key-CACA-public-key

Page 93: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

93 Zertifizierungskette

Kannst du mir deinen öffentlichen Schlüssel schicken. Alice

Zum Überprüfen benötige ich ihren öffentlichen Schlüssel. Alice

Zum Überprüfen benötige ich ihren öffentlichen Schlüssel. Alice

Zum Überprüfen benötige ich ihren öffentlichen Schlüssel. Alice

A(lice) B(ob)

CA1

Bob B-public-keyprivate-key-CA1

CA1 CA!-public-keyprivate-key-CA2

CA2

CA2 CA2-public-keyprivate-key-CA3

CA3

CA3 CA3-public-keyprivate-key-CA3

Page 94: Kryptologie Klaus Becker 2014. 2 Kryptologie An: b@ob.de Von: a@lice.de Hallo Bob!

94 Browser-Experimente