45
Kryptologie Kryptologie Klaus Becker (2002)

Kryptologie Klaus Becker (2002). KB Kryptologie 2 E-mail an K. Becker An: [email protected] Von: [email protected] Betrifft: Kontoeröffnung

Embed Size (px)

Citation preview

Page 1: Kryptologie Klaus Becker (2002). KB Kryptologie 2 E-mail an K. Becker An: KlausBecker@aol.de Von: DieBilligeBank@t-online.de Betrifft: Kontoeröffnung

KryptologieKryptologie

Klaus Becker(2002)

Page 2: Kryptologie Klaus Becker (2002). KB Kryptologie 2 E-mail an K. Becker An: KlausBecker@aol.de Von: DieBilligeBank@t-online.de Betrifft: Kontoeröffnung

2

KB

Kry

pto

log

ieE-mail an K. BeckerE-mail an K. Becker

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

Sehr geehrte Herr Becker,

Sie haben mit Ihrer Mail vom 1.8.2002 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 (PIN 9138). Für die Einrichtung des Kontos sind wir leider gezwungen, 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 3: Kryptologie Klaus Becker (2002). KB Kryptologie 2 E-mail an K. Becker An: KlausBecker@aol.de Von: DieBilligeBank@t-online.de Betrifft: Kontoeröffnung

3

KB

Kry

pto

log

ieSicherheitsproblemeSicherheitsprobleme

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

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

Verbindlichkeit: Die Bank behauptet, die Nachricht so nicht verschickt zu haben. Stimmt das?

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

Page 4: Kryptologie Klaus Becker (2002). KB Kryptologie 2 E-mail an K. Becker An: KlausBecker@aol.de Von: DieBilligeBank@t-online.de Betrifft: Kontoeröffnung

4

KB

Kry

pto

log

ieSicherheitsanforderungenSicherheitsanforderungen

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

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

Verbindlichkeit: Der Urheber kann nachträglich nicht bestreiten, die Nachricht verfasst zu haben.

Vertraulichkeit: Die Nachricht kann nicht von dritten Personen gelesen werden.

Page 5: Kryptologie Klaus Becker (2002). KB Kryptologie 2 E-mail an K. Becker An: KlausBecker@aol.de Von: DieBilligeBank@t-online.de Betrifft: Kontoeröffnung

5

KB

Kry

pto

log

ieTeil 1Teil 1

Verschlüsselung

Page 6: Kryptologie Klaus Becker (2002). KB Kryptologie 2 E-mail an K. Becker An: KlausBecker@aol.de Von: DieBilligeBank@t-online.de Betrifft: Kontoeröffnung

6

KB

Kry

pto

log

ieKommunikationssituationKommunikationssituation

Liebe ...

Angreifer

Sender Empfänger

Nachricht

Page 7: Kryptologie Klaus Becker (2002). KB Kryptologie 2 E-mail an K. Becker An: KlausBecker@aol.de Von: DieBilligeBank@t-online.de Betrifft: Kontoeröffnung

7

KB

Kry

pto

log

ieChiffriersystemeChiffriersysteme

xKlartext

yGeheimtext

Schlüssel

f

Verschlüsselungs-funktion

xKlartext

Schlüssel

f*

Entschlüsselungs-funktion

Beachte: Chiffriersysteme dienen der Ver- und Entschlüsselung von Nachrichten. Sie sollen Vertraulichkeit gewähren.

Page 8: Kryptologie Klaus Becker (2002). KB Kryptologie 2 E-mail an K. Becker An: KlausBecker@aol.de Von: DieBilligeBank@t-online.de Betrifft: Kontoeröffnung

8

KB

Kry

pto

log

ieSicherheit bei ChiffriersystemenSicherheit bei Chiffriersystemen

Prinzip von Kerckhoff: Die Sicherheit eines Chiffriersystems darf nicht von der Geheimhaltung der Ver- und Entschlüsselungsalgorithmen abhängen. Sie darf sich nur auf die Geheimhaltung der Schlüssel gründen.D.h.: Es sollte praktisch nicht möglich sein, Schlüssel aus Klartext-Geheimtext-Paaren (x,y) zu erschließen.

Page 9: Kryptologie Klaus Becker (2002). KB Kryptologie 2 E-mail an K. Becker An: KlausBecker@aol.de Von: DieBilligeBank@t-online.de Betrifft: Kontoeröffnung

9

KB

Kry

pto

log

ieSymmetrische ChiffriersystemeSymmetrische Chiffriersysteme

xKlartext

Beispiele: • Caesar-Chiffriersystem• Vigenere-Chiffriersystem

s

yGeheimtext

Schlüssel

f

Verschlüsselungs-funktion

s

xKlartext

Schlüssel

f*

Entschlüsselungs-funktion

Page 10: Kryptologie Klaus Becker (2002). KB Kryptologie 2 E-mail an K. Becker An: KlausBecker@aol.de Von: DieBilligeBank@t-online.de Betrifft: Kontoeröffnung

10

KB

Kry

pto

log

ieSymmetrische ChiffriersystemeSymmetrische Chiffriersysteme

Aufgabe:

Beurteile symmetrische Chiffriersysteme hinsichtlich des Aufwands

für die Erzeugung von Schlüsseln,

für den Austausch von Schlüsseln.

Betrachte den Fall, dass bereits n Teilnehmer sich auf das Chiffriersystem geeinigt haben und dass ein neuer Teilnehmer hinzukommt.

Page 11: Kryptologie Klaus Becker (2002). KB Kryptologie 2 E-mail an K. Becker An: KlausBecker@aol.de Von: DieBilligeBank@t-online.de Betrifft: Kontoeröffnung

11

KB

Kry

pto

log

ie

Asymmetrische Asymmetrische ChiffriersystemeChiffriersysteme

cB

f f*

dB

x xyKlartext

Verschlüsselungs-funktion

Entschlüsselungs-funktion

KlartextGeheimtext

c: öffentlicher Schlüsseld: privater Schlüssel

BA

Jeder Teilnehmer verfügt über zwei Schlüssel:

Page 12: Kryptologie Klaus Becker (2002). KB Kryptologie 2 E-mail an K. Becker An: KlausBecker@aol.de Von: DieBilligeBank@t-online.de Betrifft: Kontoeröffnung

12

KB

Kry

pto

log

ie

Asymmetrische Asymmetrische ChiffriersystemeChiffriersysteme

cB

f f*

dB

x xyKlartext KlartextGeheimtext

BA

Kommunikationsprotokoll:

A verschlüsselt x mit dem öffentlichen Schlüssel von B: y = f(cB,x).

A sendet y an B.

B entschlüsselt y mit seinem privaten Schlüssel: x = f*(dB,y).

Page 13: Kryptologie Klaus Becker (2002). KB Kryptologie 2 E-mail an K. Becker An: KlausBecker@aol.de Von: DieBilligeBank@t-online.de Betrifft: Kontoeröffnung

13

KB

Kry

pto

log

ie

Asymmetrische Asymmetrische ChiffriersystemeChiffriersysteme

(c,d)

A: dA

A: cA

Die Schlüssel werden von einer Schlüsselvergabestelle erzeugt.

Die öffentlichen Schlüssel werden in einer öffentlichen Datenbank bereitgestellt.

Die Übermittlung des privaten Schlüssels an den Teilnehmer muss sicher sein.

Die privaten Schlüssel werden von den Teilnehmern geheim gehalten.

B: cB

...

dA A

Page 14: Kryptologie Klaus Becker (2002). KB Kryptologie 2 E-mail an K. Becker An: KlausBecker@aol.de Von: DieBilligeBank@t-online.de Betrifft: Kontoeröffnung

14

KB

Kry

pto

log

ie

Asymmetrische Asymmetrische ChiffriersystemeChiffriersysteme

Sicherheitsanforderungen:

Es ist praktisch unmöglich, aus dem öffentlichen Schlüssel cT den privaten Schlüssel dT zu erschließen.

Es ist praktisch unmöglich, den privaten Schlüssel dT aus Klartext-Geheimtextpaaren (x,y) zu erschließen.

Page 15: Kryptologie Klaus Becker (2002). KB Kryptologie 2 E-mail an K. Becker An: KlausBecker@aol.de Von: DieBilligeBank@t-online.de Betrifft: Kontoeröffnung

15

KB

Kry

pto

log

ieRSA-VerfahrenRSA-Verfahren

RSA: Rivest, Shamir, Adleman (1977)

Schlüsselerzeugung:

Wähle zwei Primzahlen p und q.Bsp.: p = 7; q = 11

Berechne n = pq und = (p-1)(q-1).Bsp.: n = 77; = 60

Bestimme c < mit ggT(c,) = 1. Günstig: c Primzahl mit p,q < c <

Bsp.: c = 13

Bestimme d mit mod(cd,) = 1. Bsp.: d = 37 (1337 = 481 = 860 + 1)

Öffentl. Schlüssel: (c,n) Bsp.: (13,77)

Privater Schlüssel: (d,n) Bsp.: (37,77)

Page 16: Kryptologie Klaus Becker (2002). KB Kryptologie 2 E-mail an K. Becker An: KlausBecker@aol.de Von: DieBilligeBank@t-online.de Betrifft: Kontoeröffnung

16

KB

Kry

pto

log

ieRSA-VerfahrenRSA-Verfahren

Schlüssel:

Öffentl. Schlüssel: (c,n) Bsp.: (13,77)

Privater Schlüssel: (d,n) Bsp.: (37,77)

Verschlüsselung:

y = mod(xc,n) Bsp.: x = 6; y = mod(613,77) =

62Entschlüsselung:

x = mod(yd,n) Bsp.: y = 62; x = mod(6237,77) =

6

Bedingung: x < p,q

Page 17: Kryptologie Klaus Becker (2002). KB Kryptologie 2 E-mail an K. Becker An: KlausBecker@aol.de Von: DieBilligeBank@t-online.de Betrifft: Kontoeröffnung

17

KB

Kry

pto

log

ie

RSA - mathematische RSA - mathematische GrundlagenGrundlagen

Mathematische Grundlage: Satz von Euler

Für zwei teilerfremde natürliche Zahlen a und m gilt:

a (m) mod m = 1 bzw. mod(a(m), m) = 1Eulersche -Funktion:

(m): Anzahl der zu m teilerfremden Zahlen, die < m sindBsp. für die Aussage des Satzes von Euler:

m = 5: (5) = 4, da 1, 2, 3, 4 zu 5 teilerfremd sind.

mögliche Werte für a: 1, 2, 3, 4, 6, ... (alle teilerfremd zu m = 5)

Satz liefert: 14 mod 5 = 1 bzw. 5 | 14 1 24 mod 5 = 1 bzw. 5 | 24 144 mod 5 = 1 bzw. 5 | 34 1 44 mod 5 = 1 bzw. 5 | 44 164 mod 5 = 1 bzw. 5 | 64 1 74 mod 5 = 1 bzw. 5 | 74 1...

Page 18: Kryptologie Klaus Becker (2002). KB Kryptologie 2 E-mail an K. Becker An: KlausBecker@aol.de Von: DieBilligeBank@t-online.de Betrifft: Kontoeröffnung

18

KB

Kry

pto

log

ieRSA - KorrektheitRSA - Korrektheit

Zu zeigen: mod(mod(xc ,n)d ,n) = x bzw. mod(xc)d ,n) = x Es gilt: x und n sind teilerfremd, da x < p, q und n = pq.

Setze: = (p-1)(q-1). Dann ist = (n).

Satz von Euler liefert: mod(x, n) = 1 (*)

Konstruktion von c und d liefert: mod(cd,) = 1

Also: Es gibt k mit cd = k + 1

Folglich: (xc)d = xcd = xk + 1 = xxk

Mit (*) gilt: mod(xc)d ,n) = mod(x(x)k ,n) = mod(x,n) = x

Page 19: Kryptologie Klaus Becker (2002). KB Kryptologie 2 E-mail an K. Becker An: KlausBecker@aol.de Von: DieBilligeBank@t-online.de Betrifft: Kontoeröffnung

19

KB

Kry

pto

log

ieRSA-Verfahren mit DERIVERSA-Verfahren mit DERIVE

Hilfsfunktionen:

MODINV

MODPOT

dient zur Bestimmung von d mit mod(cd,) = 1

Aufruf:

MODINV(c, )

dient zur Bestimmung der modularen Potenz

Aufrufe:

mod(xc,n): MODPOT(x, c, n)

mod(yd,n): MODPOT(y, d, n)

c

d

xcn

y

MODPOT

ydn

x

Page 20: Kryptologie Klaus Becker (2002). KB Kryptologie 2 E-mail an K. Becker An: KlausBecker@aol.de Von: DieBilligeBank@t-online.de Betrifft: Kontoeröffnung

20

KB

Kry

pto

log

ieRSA-Verfahren mit DERIVERSA-Verfahren mit DERIVE

Erzeugung der Schlüssel:

DERIVE-Protokoll:p := NEXT_PRIME(1000)1009q := NEXT_PRIME(2000)2003n := p·q2021027 := (p - 1)·(q - 1)2018016c := NEXT_PRIME(2500)2503d := MODINV(c, )1454455

Ergebnis:

Öffentl. Schlüssel: (c,n) Bsp.: (2503, 2021027)

Privater Schlüssel: (d,n) Bsp.: (1454455, 2021027)

Page 21: Kryptologie Klaus Becker (2002). KB Kryptologie 2 E-mail an K. Becker An: KlausBecker@aol.de Von: DieBilligeBank@t-online.de Betrifft: Kontoeröffnung

21

KB

Kry

pto

log

ieRSA-Verfahren mit DERIVERSA-Verfahren mit DERIVE

Verschlüsselung der Nachricht „HALLO“:

Vorbereitung: KodierungHALLO 08.01.12.12.15 801|121|215beachte: benutzte Zahlen < p,q

DERIVE-ProtokollMODPOT(801, c, n)234247MODPOT(121, c, n)1436140MODPOT(215, c, n)697452

Ergebnis:verschlüsselte Nachricht: 234247|1436140|697452

Öffentl. Schlüssel: (c,n) = (2503, 2021027)

Privater Schlüssel: (d,n) = (1454455, 2021027)

Page 22: Kryptologie Klaus Becker (2002). KB Kryptologie 2 E-mail an K. Becker An: KlausBecker@aol.de Von: DieBilligeBank@t-online.de Betrifft: Kontoeröffnung

22

KB

Kry

pto

log

ieRSA-Verfahren mit DERIVERSA-Verfahren mit DERIVE

Entschlüsselung:

Nachbereitung: Dekodierung801|121|215 08.01.12.12.15 HALLO

DERIVE-ProtokollMODPOT(234247, d, n)801MODPOT(1436140, d, n)121MODPOT(697452, d, n)215

Ergebnis:entschlüsselte Nachricht: HALLO

Öffentl. Schlüssel: (c,n) = (2503, 2021027)

Privater Schlüssel: (d,n) = (1454455, 2021027)

Page 23: Kryptologie Klaus Becker (2002). KB Kryptologie 2 E-mail an K. Becker An: KlausBecker@aol.de Von: DieBilligeBank@t-online.de Betrifft: Kontoeröffnung

23

KB

Kry

pto

log

ieÜbungÜbung

Erzeugen Sie sich mit Derive zunächst ein Schlüsselpaar. Verschlüsseln Sie anschließend mit Derive eine (nicht zu lange) Nachricht. Testen Sie, ob beim Entschlüsseln die ursprüngliche Nachricht wieder entsteht.

(Sie können auch eine Nachricht mit ihrem Nachbarn verschlüsselt austauschen.)

Page 24: Kryptologie Klaus Becker (2002). KB Kryptologie 2 E-mail an K. Becker An: KlausBecker@aol.de Von: DieBilligeBank@t-online.de Betrifft: Kontoeröffnung

24

KB

Kry

pto

log

ieRSA-Verfahren knackenRSA-Verfahren knacken

RSA knacken:

1. Mögl.: (c,n) (d,n)

2. Mögl.: (x,y), (c,n) (d,n)

Strategie 1. Mögl.: Strategie 2. Mögl.:

n (p,q) x = mod(yd,n)

(p,q) (x,y,n) d

(c,) d

Schwierigkeit:

Primfaktorzerlegung von n diskreter Logarithmus

Page 25: Kryptologie Klaus Becker (2002). KB Kryptologie 2 E-mail an K. Becker An: KlausBecker@aol.de Von: DieBilligeBank@t-online.de Betrifft: Kontoeröffnung

25

KB

Kry

pto

log

ieEinwegfunktionenEinwegfunktionen

Einwegfunktion:

f ist eine umkehrbare Funktion mit Umkehrfunktion f*.

f kann mit geringem Aufwand berechnet werden.

f* kann nur mit sehr hohem Aufwand (praktisch nicht)

berechnet werden.Beispiel 1: Telefonbuch

f : Name Telefonnummerf*: Telefonnummer Name

f

f*

Beispiel 2: RSA

f : (p,q) n = pq Produkt von zwei Primzahlenf*: n (p,q) Primfaktorzerlegung

Bed.: n hat mehr als 155 Stell. (512 Bit)

Page 26: Kryptologie Klaus Becker (2002). KB Kryptologie 2 E-mail an K. Becker An: KlausBecker@aol.de Von: DieBilligeBank@t-online.de Betrifft: Kontoeröffnung

26

KB

Kry

pto

log

ieÜbungÜbung

NEXT_PRIME(10^10)

10000000019

NEXT_PRIME(10^11)

100000000003

10000000019·100000000003

1000000001930000000057

FACTOR(1000000001930000000057)

10000000019·100000000003

Untersuchen Sie mit Derive, wie lang eine Produktberechnung und die zugehörige Berechnung der Primfaktorzerlegung dauert. Gehen Sie hierzu wie im unten abgebildeten Derive-Protokoll vor. Vergrößern Sie schrittweise die benutzten Primzahlen. Was fällt auf?

Page 27: Kryptologie Klaus Becker (2002). KB Kryptologie 2 E-mail an K. Becker An: KlausBecker@aol.de Von: DieBilligeBank@t-online.de Betrifft: Kontoeröffnung

27

KB

Kry

pto

log

ieTeil 2Teil 2

Digitale Signatur

Page 28: Kryptologie Klaus Becker (2002). KB Kryptologie 2 E-mail an K. Becker An: KlausBecker@aol.de Von: DieBilligeBank@t-online.de Betrifft: Kontoeröffnung

28

KB

Kry

pto

log

ieProbleme mit der UrheberschaftProbleme mit der Urheberschaft

Nachrichtenauthentisierung:

Gewährleistung der Integrität (Nachricht wurde nicht von Dritten verändert).

Gewährleistung der Authentizität (Nachricht stammt vom Absender)

Probleme:

Empfänger ändert die Nachricht ab (z. B.: erhöht den Überweisungsbetrag).

Absender streitet ab, die Nachricht verschickt zu haben (z. B.: streitet Börsentransaktion ab)

Page 29: Kryptologie Klaus Becker (2002). KB Kryptologie 2 E-mail an K. Becker An: KlausBecker@aol.de Von: DieBilligeBank@t-online.de Betrifft: Kontoeröffnung

29

KB

Kry

pto

log

ieDigitale SignaturDigitale Signatur

Anforderungen an eine digitale Signatur

Authentizität: Nur der Urheber des Dokuments kann die Signatur erzeugen.

Nichtübertragbarkeit: Die Signatur kann nicht auf andere Dokumente übertragen werden.

Verbindlichkeit: Der Absender kann die Urheberschaft nicht abstreiten.

Verifizierbarkeit: Der Empfänger kann die Signatur zweifelsfrei prüfen.

Page 30: Kryptologie Klaus Becker (2002). KB Kryptologie 2 E-mail an K. Becker An: KlausBecker@aol.de Von: DieBilligeBank@t-online.de Betrifft: Kontoeröffnung

30

KB

Kry

pto

log

ie

Erzeugung einer digitalen Erzeugung einer digitalen SignaturSignatur

dA

f f*

cA

x xyKlartext KlartextGeheimtext

BA

Grundidee

A verschlüsselt x mit seinem privaten Schlüssel.

Page 31: Kryptologie Klaus Becker (2002). KB Kryptologie 2 E-mail an K. Becker An: KlausBecker@aol.de Von: DieBilligeBank@t-online.de Betrifft: Kontoeröffnung

31

KB

Kry

pto

log

ieDigitale SignaturDigitale Signatur

dA

f f*

cA

x xyKlartext KlartextGeheimtext

BA

Zu den Anforderungen an eine digitale Signatur:

Authentizität: nur A verfügt über dA.

Nichtübertragbarkeit: anderes x, anderes y

Verbindlichkeit: nur A kann x in y umgewandelt haben

Verifizierbarkeit: B kann y nur mit cA in ein sinnv. x umwandeln

Page 32: Kryptologie Klaus Becker (2002). KB Kryptologie 2 E-mail an K. Becker An: KlausBecker@aol.de Von: DieBilligeBank@t-online.de Betrifft: Kontoeröffnung

32

KB

Kry

pto

log

ieDigitale SignaturDigitale Signatur

dA

f f*

cA

x xyKlartext KlartextGeheimtext

BA

Nachteile

Das signierte Dok. ist erst nach dem Entschlüsseln lesbar.

Es ist sehr aufwendig, das gesamte Dok. zu verschlüsseln.Ausweg

Erzeugung eines „digitalen Fingerabdrucks“

Page 33: Kryptologie Klaus Becker (2002). KB Kryptologie 2 E-mail an K. Becker An: KlausBecker@aol.de Von: DieBilligeBank@t-online.de Betrifft: Kontoeröffnung

33

KB

Kry

pto

log

ieDigitaler FingerabdruckDigitaler Fingerabdruck

Grundidee:

Es wird eine geeignet komprimierte Form des Klartextes x ermittelt.

Beispiel: vereinfachte XOR-Kompression

Vorbereitung: binäre Kodierung gemäß ASCII-CodeUTA 85 | 84 | 65 01010101 | 01010100 | 01000001 = X1 | X2 | X3XOR-Kompression:Y1 = 00000000Y2 = Y1 XOR X1 = 00000000 XOR 01010101 = 01010101Y3 = Y2 XOR X2 = 01010101 XOR 01010100 = 00000001Y4 = Y3 XOR X3 = 00000001 XOR 01000001 = 01000000Nachbereitung: 01000000 0*1+0*2+0*4+0*8+0*16+0*32+1*64+0*128 = 64Ergebnis:85 | 84 | 65 64

Page 34: Kryptologie Klaus Becker (2002). KB Kryptologie 2 E-mail an K. Becker An: KlausBecker@aol.de Von: DieBilligeBank@t-online.de Betrifft: Kontoeröffnung

34

KB

Kry

pto

log

ieHash-FunktionHash-Funktion

Hash-Funktionen

Funktion h, die jeder Nachricht x einen Prüfwert h(x) zuordnet (digitaler Fingerabdruck).

Beispiel:

x: UTA 85 | 84 | 65 h(x): 64

Einweg-Hash-Funktionen

Hashfunktion mit folgender Eigenschaft:Es gibt einen effizienten Algorithmus zur Berechnung von h(x) aus x, aber keinen effizienten Algorithmus zur Berechnung von x aus h(x) (d. h.: es ist praktisch unmöglich zu einem Hashwert eine passende Nachricht zu konstruieren).

Page 35: Kryptologie Klaus Becker (2002). KB Kryptologie 2 E-mail an K. Becker An: KlausBecker@aol.de Von: DieBilligeBank@t-online.de Betrifft: Kontoeröffnung

35

KB

Kry

pto

log

ieDigitale SignaturDigitale Signatur

Signierprotokoll:

A bestimmt zur Nachricht x den Hash-Wert h(x) mit der vereinbarten Hash-Funktion h.

A erzeugt die digitale Signatur für x: u = f(dA,h(x)).

A sendet (x,u) an B.

B entschlüsselt u mit dem öffentlichen Schlüssel von A: v = f*(dB,u).

B erzeugt den Hash-Wert h(x) und prüft, ob h(x) = v.

Page 36: Kryptologie Klaus Becker (2002). KB Kryptologie 2 E-mail an K. Becker An: KlausBecker@aol.de Von: DieBilligeBank@t-online.de Betrifft: Kontoeröffnung

36

KB

Kry

pto

log

ie

Anforderungen an Hash-Anforderungen an Hash-FunktionenFunktionen

Anforderungen an gute Hash-Funktionen

Es ist praktisch unmöglich, aus dem Hashwert h(x) die Nachricht x zu erschließen. (Einweg-Hash-Funktion)

Es ist praktisch unmöglich, eine von x verschiedene Nachricht z mit h(x) = h(z) zu erzeugen. (Kollisionsresistenz)

Kollisionen

Eine Einweg-Hash-Funktion heißt kollisionsresistent, wenn es keinen effizienten Algorithmus gibt, um ein Paar (x, z) mit der Eigenschaft h(x) = h(z) zu finden.

Page 37: Kryptologie Klaus Becker (2002). KB Kryptologie 2 E-mail an K. Becker An: KlausBecker@aol.de Von: DieBilligeBank@t-online.de Betrifft: Kontoeröffnung

37

KB

Kry

pto

log

ieRechtslageRechtslage

Gesetz über Rahmenbedingungen für elektronische Signaturen (Signaturgesetz – SigG) (16.05.2001)

„Zweck des Gesetzes ist es, Rahmenbedingungen für elektronische Signaturen zu schaffen.“

Page 38: Kryptologie Klaus Becker (2002). KB Kryptologie 2 E-mail an K. Becker An: KlausBecker@aol.de Von: DieBilligeBank@t-online.de Betrifft: Kontoeröffnung

38

KB

Kry

pto

log

ieÜbungÜbung

Eine verbesserte Hash-Funktion arbeitet wie folgt:

Vorbereitung: binäre Kodierung gemäß ASCII-Code

UTA 85 | 84 | 65 01010101 | 01010100 | 01000001 = X1 | X2 | X3

XOR-Kompression:

Y1 = 00000000Y2 = Y1 XOR X1 = 00000000 XOR 01010101 = 01010101 10101010Y3 = Y2 XOR X2 = 10101010 XOR 01010100 = 11111110 11111101 Y4 = Y3 XOR X3 = 11111101 XOR 01000001 = 10111010 01110101

Nachbereitung: 01110101 1 + 4 + 16 + 32 + 64 = 117

Ergebnis:

85 | 84 | 65 117

Erzeugen Sie analog den Hash-Wert von ‚HALLO‘.

Page 39: Kryptologie Klaus Becker (2002). KB Kryptologie 2 E-mail an K. Becker An: KlausBecker@aol.de Von: DieBilligeBank@t-online.de Betrifft: Kontoeröffnung

39

KB

Kry

pto

log

ieTeil 3Teil 3

Sicherheitsinfrastruktur

Page 40: Kryptologie Klaus Becker (2002). KB Kryptologie 2 E-mail an K. Becker An: KlausBecker@aol.de Von: DieBilligeBank@t-online.de Betrifft: Kontoeröffnung

40

KB

Kry

pto

log

iePGPPGP

PGP - Pretty Good Privacy

Hybridverfahren: PGP kombiniert

symmetrisches Verfahren (z. B. IDEA – Intern. Data Encryption Algorithm)

asymmetrisches Verfahren (z. B. RSA)

Lit.: www.sicherheit-im-internet.de

Page 41: Kryptologie Klaus Becker (2002). KB Kryptologie 2 E-mail an K. Becker An: KlausBecker@aol.de Von: DieBilligeBank@t-online.de Betrifft: Kontoeröffnung

41

KB

Kry

pto

log

iePGPPGP

Vorbereitung

PGP erzeugt mit RSA das Schlüsselpaar (c,d) des Teilnehmes T und speichert es in einer Datei (auf Diskette) ab. Um an (c,d) heranzukommen, muss T ein vorher festgelegtes Password eingeben.

T verschickt seinen öffentlichen Schlüssel an alle Personen, mit denen er korrespondieren will / legt ihn auf einen Schlüsselserver.

Verschlüsselung: A will x an B schicken.

PGP (von A) erzeugt einen Sessionkey s.

PGP (von A) verschlüsselt die Nachricht x mit IDEA: y = g(s,x)

PGP (von A) verschlüsselt den Sessionkey s mit RSA: u = f(cB,s)

A sendet (y,u) an B.

PGP (von B) entschlüsselt u: s = f*(dB,u)

PGP (von B) entschlüsselt y: x = g*(s,y)

Page 42: Kryptologie Klaus Becker (2002). KB Kryptologie 2 E-mail an K. Becker An: KlausBecker@aol.de Von: DieBilligeBank@t-online.de Betrifft: Kontoeröffnung

42

KB

Kry

pto

log

ieVertauen zu SchlüsselnVertauen zu Schlüsseln

Situation:

A sendet seinen öffentlichen Schlüssel cA an B.

X fängt die Nachricht ab, erzeugt ein neues Schlüsselpaar (cX, dX), ersetzt cA durch cx und schickt die Nachricht an B.

B glaubt nun, der öffentliche Schlüssel von A sei cx. Grundproblem:

Wie kann gewährleistet werden, dass ein öffentlicher Schlüssel authentisch ist, also demjenigen gehört, der sich als Eigentümer ausgibt?

Page 43: Kryptologie Klaus Becker (2002). KB Kryptologie 2 E-mail an K. Becker An: KlausBecker@aol.de Von: DieBilligeBank@t-online.de Betrifft: Kontoeröffnung

43

KB

Kry

pto

log

ieZertifizierungZertifizierung

Zertifizierungsstelle (Trusted Third Party; kurz TTP):

A erzeugt ein neues Schlüsselpaar (cA, dA).

A weist sich gegenüber TTP aus (ID-Nachweis).

A hinterlegt eine Kopie seines öffentlichen Schlüssels cA bei TTP.

TTP erstellt ein Zertifikat Z mit (u. a.) ID und cA. D.h.: TTP verschlüsselt (ID, cA) mit seinem geheimen Schlüssel Z.

Signieren:

A signiert Nachricht mit dA und schickt sie an B.

B testet, ob cA wirklich A gehört. D.h.: B entschlüsselt Z mit dem öffentl. Schlüssel von TTP / entnimmt ID und cA dem Zertifikat Z.

B entschlüsselt die Signatur mit cA.

B erzeugt den Hash-Wert der Nachricht und testet die Signatur.

Page 44: Kryptologie Klaus Becker (2002). KB Kryptologie 2 E-mail an K. Becker An: KlausBecker@aol.de Von: DieBilligeBank@t-online.de Betrifft: Kontoeröffnung

44

KB

Kry

pto

log

ieLiteraturLiteratur

A. Beutelspacher: Kryptologie. Vieweg 1995.

S. Singh: Codes. Hanser 2002.

LOG IN 5/6 1996: Themenheft Kryptologie.

R. Baumann: Digitale Unterschrift. In: LOG IN 2/99 und 3-4/99.

H. Witten, I. Letzner, R.-H. Schulz: RSA & Co in der Schule. Serie in LOG IN ab 3-4/99.

Page 45: Kryptologie Klaus Becker (2002). KB Kryptologie 2 E-mail an K. Becker An: KlausBecker@aol.de Von: DieBilligeBank@t-online.de Betrifft: Kontoeröffnung

45

KB

Kry

pto

log

ieLiteraturLiteratur

www.foebud.org/pgp/html/node36.htmlGlossar mit zentralen Begriffen der Kryptologie

www.sicherheit-im-internet.de/home.htmlInitiative des Bundes

www.educeth.ch/informatik/lernaufg/twokeys/docUnterrichtseinheit zur Einführung asymmetrischer Verfahren

...