Vorlesung Risikomanagement in der IT 06 –Kryptographie ... file4 Kryptographie und PKI...

Preview:

Citation preview

Vorlesung

Risikomanagement in der IT06 – Kryptographie

Sommersemester 2015

Dr. Rupert Lipowsky

2 Kryptographie und PKI

Definitionen

Kryptologie:Als Kryptologie (von gr. κρυπτός „versteckt, verborgen, geheim“) bezeichnet man die Wissenschaft, die sich mit technischen Verfahren für die Informations-sicherheit beschäftigt. Dabei wird unterschieden zwischen: Kryptographie Kryptoanalyse

Kryptographie:Als Kryptographie bezeichnet man die Wissenschaft der Verschlüsselung von Informationen. Heute beinhaltet der Begriff Verfahren sowohl gegen unbefugtes Lesen als auch gegen unbefugtes Verändern von Informationen.

Steganographie:Als Steganographie (von gr. στεγανός „bedeckt“) bezeichnet die Kunst oder Wissen-schaft der verborgenen Speicherung oder Übermittlung von Informationen

Quelle: Wikipedia

3 Kryptographie und PKI

Einsatz von Kryptographie im Alltag

Quelle: CrypTool

4 Kryptographie und PKI

Geschichtliche Entwicklung der Kryptographie

Kryptographie vor 1975 („klassische Kryptographie“) Caesar-Code Vigenère-Verschlüsselung „One Time Pad“

Kryptographie nach 1975(basierend auf mathematischen Verfahren) Diffie-Hellman(-Merkle) Schlüsselaustausch RSA-Verfahren (RSA = Rivest, Shamir, Adleman) Hashfunktionen (MD-5, SHA-1) PKI (Public Key Infrastructure)

Symmetrische Verfahren (DES, 3DES, AES)

5 Kryptographie und PKI

Grundlagen (1): Ver- und Entschlüsselung

Quelle: CrypTool

Verschlüsselungsverfahren: Bei der Verschlüsselung wird ein Originaltext (Klartext) mit Hilfe eines geheimen Schlüssels in

einen Geheimtext (Chiffretext) umgewandelt. Umgekehrt wird bei der Entschlüsselung mit der Kenntnis des geheimen Schlüssels der

Chiffretext in den Klartext zurückgewandelt. Verschlüsselungsverfahren nutzen Ersetzen von Buchstaben des Alphabets, Veränderung der

Anordnung des Texts, mathematische Funktionen und Berechnungen u.v.m. Schlüssel sind z.B. Buchstaben, Wörter, Zahlen, Zeichen

Arten von Verschlüsselungsverfahren: symmetrische Verfahren asymmetrische Verfahren

6 Kryptographie und PKI

Grundlagen (2): Symmetrische Verfahren

Symmetrische Verschlüsselung:Zur Ver- und Entschlüsselung wird derselbe Schlüssel s verwendet. Es kann sein, dass bei symmetrischen Verfahren der Schlüssel zur Verschlüsselung nicht

völlig identisch ist mit dem Schlüssel zur Entschlüsselung. In diesen Fällen kann aber der eine Schlüssel mit der Kenntnis des anderen leicht ermittelt werden.

Der symmetrische Schlüssel s ist sowohl dem Absender, als auch dem Empfänger bekannt und muss vor Dritten geheim gehalten werden.

Quelle: CrypTool

7 Kryptographie und PKI

Caesar-Verschlüsselung

Ver- und Entschlüsselung durch Verschiebung von Buchstaben Beispiel für Verschlüsselung: „3 Zeichen nach links“ Beispiel für Entschlüsselung: „3 Zeichen nach rechts“ Sonderfall: „ROT13“

Beispiel:Verschlüsselter Text: YHQL YLGL YLFL

Quelle: CrypTool

8 Kryptographie und PKI

Kryptoanalyse der Caesar-Verschlüsselung

Gegenüberstellung der Häufigkeitsverteilungen von einzelnen Buch-staben in einem mit ROT13 verschlüsselten Text und einem (deutschen) Klartext

Quelle: CrypTool

9 Kryptographie und PKI

Vigenère-Verschlüsselung

Beispiel: Schlüsselwort: CHIFFRE

zu verschlüsselnder Text:VIGENERE

Chiffrierter Text:XPOJSVVG

Angriff:Häufigkeitsanalyse bei bekannter Länge des Schlüsselwortes oder Ausprobieren verschiedener Schlüssellängen

10 Kryptographie und PKI

Verschlüsselung mit „One-Time-Pad“

Weiterentwicklung des Vigenère-Verfahrens:Wahl eines (zufälligen) Schlüssels, der genauso lang ist, wie der zu verschlüsselnde Text

Beispiel:

Schlüssel: QXVHCAMDMZSJECBYDPMKlartext: DIESERSATZISTGEHEIMGeheimtext: TFZZGREDFYABXIFFHXY

Zum selben obigen Geheimtext führt:

Schlüssel: HFGSCFEBYFFTMXNQHFGKlartext: MATHEMACHTVIELSPASS

Quelle: Beutelsbacher

11 Kryptographie und PKI

Problem: Verteilung von Schlüsseln

Die Anzahl der (über einen sicherenKanal, z.B. Kurier oder persönlicheÜbergabe) zu verteilenden Schlüssel steigt mit der Anzahl derKommunikationspartner sehrstark an

zusätzliche Nachteile des „One-Time-Pads“: Der Schlüssel muss genauso lang

sein wie die Nachricht selbst Jeder Schlüssel kann nur ein einziges

Mal verwendet werden

Quelle: CrypTool

12 Kryptographie und PKI

Diffie-Hellman-Schlüsselaustausch (1)

Austausch oder Berechnung eines gemein-samen Geheimnisses ohne die Nutzung eines vertrauenswürdigen Kanals: Alice und Bob einigen sich auf eine gemeinsame

Ausgangsfarbe (gelb) Sowohl Alice als auch Bob wählen jeweils eine

eigene „geheime“ Farbe, z.B. rot (Alice) und grün (Bob)

Beide stellen aus der Ausgangsfarbe und der jeweiligen eigenen „geheimen“ Farbe eine Farb-mischung her, z.B. orange (Alice) und cyan (Bob)

Diese Farbmischung wird jeweils an den anderen gesendet

Die eigene „geheime“ Farbe wird der empfangenen Farbmischung hinzugefügt

Die resultierende Mischung ist bei beiden gleich!

Quelle: Wikipedia

13 Kryptographie und PKI

Exkurs: Primzahlen und die Modulo-Funktion

Definition Primzahl:Eine Primzahl ist eine natürliche Zahl, die größer als eins und nur durch sich selbst und durch eins teilbar ist Beispiele für Primzahlen: 3, 5, 7, 11, 13, 17, 19, 23, …

Definition der Modulo-Funktion (vereinfacht):Die Modulo-Funktion berechnet den Rest bei der Division zweier natürlicher Zahlen Beispiele: 5 mod 2 = 1

21 mod 20 = 17 mod 5 = 213 mod 5 = 3

Sonderfälle: 0 mod x = 0 (für alle x > 0)1 mod x = 1 (für alle x > 1)

Quelle: Wikipedia

14 Kryptographie und PKI

Diffie-Hellman-Schlüsselaustausch (2): Verfahren

Wähle eine Primzahl p und eine Zahl g, wobei gelten soll: g größer oder gleich 2 und g kleiner oder gleich p-2

Wähle zwei (Zufalls-) Zahlen a und b (kleiner oder gleich p-2)

Berechne zwei Zahlen A und B wie folgt: A = ga mod p B = gb mod p

Berechne das gemeinsame Geheimnis wie folgt: K = Ba mod p K = Ab mod p

Beide Werte von K sind gleich!

Quelle: Wikipedia

15 Kryptographie und PKI

Diffie-Hellman-Schlüsselaustausch (3): Beispiel

Alice und Bob einigen sich (in öffentlicher Kommunikation) auf die folgenden Zahlen: p = 23 g = 5

Alice und Bob wählen jeweils für sich eine Zufallszahl aus (diese wird nicht übermittelt!): Alice: a = 6 Bob: b = 15

Alice berechnet A und schickt das Ergebnis (öffentlich) an Bob: A = 56 mod 23 = 8

Bob berechnet B und schickt das Ergebnis (öffentlich) an Alice: B = 515 mod 23 = 19

Alice berechnet das gemeinsame Geheimnis wie folgt: K = 196 mod 23 = 2

Bob berechnet das gemeinsame Geheimnis wie folgt: K = 815 mod 23 = 2

Quelle: Wikipedia

16 Kryptographie und PKI

Symmetrische und asymmetrische Verschlüsselung

Quelle: CrypTool

17 Kryptographie und PKI

Grundlagen (3): Asymmetrische Verfahren

Asymmetrische oder „Public Key“ VerschlüsselungZur Ver- und Entschlüsselung werden verschiedene Schlüssel verwendet Es gibt einen geheimen Schlüssel d und einen öffentlichen Schlüssel e Auch mit Kenntnis von e kann d ohne weitere Information praktisch nicht berechnet werden

Quelle: CrypTool

18 Kryptographie und PKI

Der RSA-Algorithmus (1): Verfahren

Wähle zwei (große) Primzahlen p, q und berechne n = p*q Berechne φ(n) = (p-1)*(q-1) Wähle eine Zahl e, die teilerfremd zu φ(n) und kleiner als φ(n) ist

Wähle eine Zahl d, die kleiner als φ(n) ist und

die Bedingung e*d mod φ(n) = 1 erfüllt

Aus den obigen Zahlen werden der öffentliche und der private Schlüssel zusammengesetzt: Öffentlicher Schlüssel: (e, n) Privater Schlüssel: (d, n)

19 Kryptographie und PKI

Der RSA-Algorithmus (2): Beispiel

Verschlüsselung: c = me mod n Entschlüsselung: m = cd mod n

Beispiel:p=17, q=11n = p*q = 187φ(n) = (p-1)*(q-1) = 160e = 7d = 23da: e * d = 161

Verschlüsselung von „Z“ bzw „26“:c = 267mod 187 = 104

Entschlüsselung von „104“:m = 10423mod 187 = 26

20 Kryptographie und PKI

Übung/Aufgabe

Gegeben sei der folgende mit dem RSA-Verfahren verschlüsselte Text:28 21 26 00 28 14 07 01 09 02 26Dieser wurde mit dem öffentlichen Schlüssel (e, n) = (7, 33) verschlüsselt.

Betätigen Sie sich als „Kryptoanalytiker“ und entschlüsseln Sie die Nachricht!Gehen Sie dabei wie folgt vor: Machen Sie eine „Primzahlenzerlegung“ von n

und ermitteln Sie dadurch p und q (da n = p*q) Berechnen Sie φ(n) = (p-1)*(q-1) Finden Sie (durch Probieren) das d des privaten

Schlüssels, welches die folgende Bedingung erfüllt:e*d mod φ(n) = 1

Zur Erinnerung noch die Entschlüsselungsvorschrift:m = cd mod n

Welche Schwächen hat diese Implementierungdes RSA-Algorithmus bzw. welche andere Möglichkeiten zur „Entschlüsselung“ gäbe es?

21 Kryptographie und PKI

Der RSA-Algorithmus (4): Sicherheit

Quelle: CrypTool

Verschlüsselung: Verwendung des öffentlichen Schlüssels (e, n)Entschlüsselung: Verwendung des privaten Schlüssels (d, n)

Quintessenz: Die Sicherheit des RSA-Verfahren beruht auf der Schwierigkeit das Produkt zweier großer Primzahlen (n) zu faktorieren!

22 Kryptographie und PKI

Der RSA-Algorithmus (5): Digitale Signatur

Das RSA-Verfahren kann auch für eine elektronische Signatur verwendet werden!

Quelle: CrypTool

Signatur: Verwendung des privaten Schlüssels (d, n)Verifizierung: Verwendung des öffentlichen Schlüssels (e, n)

Nachteil: Die Signatur wäre genauso lang wie das zu signierende Dokument!

Verschlüsselung:JEDER soll verschlüsselnkönnen, aber nurEINER soll die verschlüsselteNachricht lesenkönnen!

Signatur:Nur EINER soll signieren können, aber JEDER soll die Signaturüberprüfen bzw.verifizierenkönnen!

23 Kryptographie und PKI

Exkurs: Hash-Funktionen (digitaler „Fingerabdruck“)

Definition:Eine Hashfunktion eine (Einweg-) Funktion, die einer Datei oder einem String von nahezu beliebiger Länge einen Wert fester Länge (den Hashwert) zuordnet. Hashfunktionen sind in der Regel nicht umkehrbar. Eine kleine Änderung des Ausgangswertes führt in der Regel zu einer großen Änderung des

Hashwerts

Gebräuchliche Hashfunktionen: MD-5 (message digest algorithm 5, entwickelt 1991 von R.L. Rivest) SHA-1 (secure hash algorithm, vom NIST 1994 spezifiziert)

Beispiel für MD5-Hash:Text: Franz jagt im komplett verwahrlosten Taxi quer durch Bayern

Hash: a3cca2b2aa1e3b5b3b5aad99a8529074Text: Frank jagt im komplett verwahrlosten Taxi quer durch Bayern

Hash: 7e716d0e702df0505fc72e2b89467910

Quelle: Wikipedia

24 Kryptographie und PKI

Digitale Signatur mit RSA (1): Erstellung

Bei der Erstellung einer digitalen Signatur wird: ein Hashwert des zu signierenden Dokuments, Codes o.ä. gebildet, der erzeugte Hashwert mit dem privaten Schlüssel (auch Signaturschlüssel genannt)

„verschlüsselt“ und somit eine „Signatur“ erzeugt und diese Signatur dem Dokument hinzugefügt

Quelle: CrypTool

25 Kryptographie und PKI

Digitale Signatur mit RSA (2): Überprüfung

Quelle: CrypTool

Bei der Überprüfung einer digitalen Signatur wird: ebenfalls ein Hashwert des zu überprüfenden Dokuments, Codes o.ä. gebildet, die Signatur (d.h. der verschlüsselte Hashwert) aus dem signierten Dokument extrahiert

und mit dem öffentlichen Schlüssel des Signierers „entschlüsselt“ der aktuell berechnete Hashwert wird mit dem entschlüsselten Hashwert verglichen und Wenn diese beiden Werte übereinstimmen ist die Signatur verifiziert

26 Kryptographie und PKI

Public Key Infrastructure (PKI): Aufbau

Eine zusätzliche Anforderung (besonders bei der elektronischen Signatur) ist die Authentizität von öffentlichen Schlüsseln, d.h. es muss gewähr-leistet werden, dass ein Schlüssel einer Person zugeordnet werden kann

Erfüllung dieser Anforderung durch „(elektronische) Zertifikate“, welche einen Namen untrennbar mit einem öffentlichen Schlüssel verbinden

Dazu signiert eine „Zertifizierungsstelle“ (Certificate Authority = CA) den öffentlichen Schlüssel eines Antragstellers mit ihrem eigenen privaten Schlüssel

Ein System, welches digitale Zertifikate ausstellt, wird als „Public Key Infrastructure (PKI)“ bezeichnet

Quelle: CrypTool

27 Kryptographie und PKI

Digitale (X.509) Zertifikate

Inhalte eines X.509-Zertifikats: Version Seriennummer Signaturalgorithmus Aussteller Gültigkeit (von, bis) Zertifikatinhaber Zertifikatinhaber-Schlüssel-

informationen:Public-Key-AlgorithmusPublic Key des Zertifikatinhabers

Erweiterungen (optional) Zertifikat-Signaturalgorithmus Zertifikat-Signatur

Quelle: CrypTool

28 Kryptographie und PKI

PKI (1): Beispiel „CAcert.org“

Registrierung und Validierung: Einrichten eines Kontos bei CAcert.org

(gültige Email-Adresse erforderlich) (persönliche) Validierung durch sogenannte CAcert-“Assurer“

Erklärung auf Papierformular und Prüfung eines amtlichen Ausweises des Neumitglieds durch (mindestens drei) CAcert-Assurer (falls der Antragsteller den Assurern nicht persönlich bekannt ist) z.B. im Rahmen einer „Crypto-Party“

„Certificate Request“ und Zertifizierung: Erzeugung eines Zertifikatantrags („Certificate Request“) innerhalb des CAcert-Kontos Signieren des Antrags durch die „CAcert-CA“ und Erzeugung eines Zertifikats

Import der Zertifikate in den Browser/Zertifikatsspeicher des Benutzers Import des generierten persönlichen Zertifikats (und ggf. des privaten Schlüssels) Import der Zertifikate der (ausstellenden) CAs von CAcert (zur Prüfung der Zertifikatskette)

29 Kryptographie und PKI

PKI (2): Überprüfung einer signierten Mail

30 Kryptographie und PKI

Hybride Verfahren (1): Verschlüsselung

Ein Nachteil von asymmetrischen Verschlüsselungsverfahren ist ihre geringe Geschwindigkeit gegenüber symmetrischen Verfahren

Aus diesem Grund werden symmetrische und asymmetrische Verfahren oft wie folgt kombiniert: Es wird ein (oft zufälliger) symmetrischer Sitzungsschlüssel („Session Key“) erzeugt Mit dem symmetrischen Schlüssel werden die zu schützenden Klartextdaten verschlüsselt Der symmetrische Schlüssel wird

mit dem (asymmetrischen) öffent-lichen Schlüssel des Empfängers verschlüsselt

Der verschlüsselte Session Keywird dem verschlüsselten Textbeigelegt und beide Teile werdenan den Empfänger geschickt

Quelle: CrypTool

31 Kryptographie und PKI

Hybride Verfahren (2): Entschlüsselung

Die (hybride) Entschlüsselung erfolgt in umgekehrter Reihenfolge zur Verschlüsselung: Der verschlüsselte symmetrische Session Key wird mit Hilfe des privaten asymmetrischen

Schlüssels entschlüsselt Mit dem entschlüsselten Session Key kann nunmehr die eigentliche Nachricht entschlüsselt

werden

Quelle: CrypTool

32 Kryptographie und PKI

Handout (1): Ver- und Entschlüsselung

Quelle: CrypTool

Verschlüsselungsverfahren: Bei der Verschlüsselung wird ein Originaltext (Klartext) mit Hilfe eines geheimen Schlüssels in

einen Geheimtext (Chiffretext) umgewandelt. Umgekehrt wird bei der Entschlüsselung mit der Kenntnis des geheimen Schlüssels der

Chiffretext in den Klartext zurückgewandelt. Verschlüsselungsverfahren nutzen Ersetzen von Buchstaben des Alphabets, Veränderung der

Anordnung des Texts, mathematische Funktionen und Berechnungen u.v.m. Schlüssel sind z.B. Buchstaben, Wörter, Zahlen, Zeichen

Arten von Verschlüsselungsverfahren: symmetrische Verfahren asymmetrische Verfahren

33 Kryptographie und PKI

Handout (2): Symmetrische Verfahren

Symmetrische Verschlüsselung:Zur Ver- und Entschlüsselung wird derselbe Schlüssel s verwendet. Es kann sein, dass bei symmetrischen Verfahren der Schlüssel zur Verschlüsselung nicht

völlig identisch ist mit dem Schlüssel zur Entschlüsselung. In diesen Fällen kann aber der eine Schlüssel mit der Kenntnis des anderen leicht ermittelt werden.

Der symmetrische Schlüssel s ist sowohl dem Absender, als auch dem Empfänger bekannt und muss vor Dritten geheim gehalten werden.

Quelle: CrypTool

34 Kryptographie und PKI

Handout (3): Asymmetrische Verfahren

Asymmetrische oder „Public Key“ VerschlüsselungZur Ver- und Entschlüsselung werden verschiedene Schlüssel verwendet Es gibt einen geheimen Schlüssel d und einen öffentlichen Schlüssel e Auch mit Kenntnis von e kann d ohne weitere Information praktisch nicht berechnet werden

Quelle: CrypTool

35 Kryptographie und PKI

Handout (4): Übung/Aufgabe

Gegeben sei der folgende mit dem RSA-Verfahren verschlüsselte Text:28 21 26 00 28 14 07 01 09 02 26Dieser wurde mit dem öffentlichen Schlüssel (e, n) = (7, 33) verschlüsselt.

Betätigen Sie sich als „Kryptoanalytiker“ und entschlüsseln Sie die Nachricht!Gehen Sie dabei wie folgt vor: Machen Sie eine „Primzahlenzerlegung“ von n

und ermitteln Sie dadurch p und q (da n = p*q) Berechnen Sie φ(n) = (p-1)*(q-1) Finden Sie (durch Probieren) das d des privaten

Schlüssels, welches die folgende Bedingung erfüllt:e*d mod φ(n) = 1

Zur Erinnerung noch die Entschlüsselungsvorschrift:m = cd mod n

Welche Schwächen hat diese Implementierungdes RSA-Algorithmus bzw. welche andere Möglichkeiten zur „Entschlüsselung“ gäbe es?

36 Kryptographie und PKI

Handout (5): RSA-Ver- und Entschlüsselung

Quelle: CrypTool

Verschlüsselung: Verwendung des öffentlichen Schlüssels (e, n)Entschlüsselung: Verwendung des privaten Schlüssels (d, n)

Quintessenz: Die Sicherheit des RSA-Verfahren beruht auf der Schwierigkeit das Produkt zweier großer Primzahlen (n) zu faktorieren!

37 Kryptographie und PKI

Handout (6): Digitale Signatur

Das RSA-Verfahren kann auch für eine elektronische Signatur verwendet werden!

Quelle: CrypTool

Signatur: Verwendung des privaten Schlüssels (d, n)Verifizierung: Verwendung des öffentlichen Schlüssels (e, n)

Nachteil: Die Signatur wäre genauso lang wie das zu signierende Dokument!

Verschlüsselung:JEDER soll verschlüsselnkönnen, aber nurEINER soll die verschlüsselteNachricht lesenkönnen!

Signatur:Nur EINER soll signieren können, aber JEDER soll die Signaturüberprüfen bzw.verifizierenkönnen!

38 Kryptographie und PKI

Handout (7): Hash-Funktionen

Definition:Eine Hashfunktion eine (Einweg-) Funktion, die einer Datei oder einem String von nahezu beliebiger Länge einen Wert fester Länge (den Hashwert) zuordnet. Hashfunktionen sind in der Regel nicht umkehrbar. Eine kleine Änderung des Ausgangswertes führt in der Regel zu einer großen Änderung des

Hashwerts

Gebräuchliche Hashfunktionen: MD-5 (message digest algorithm 5, entwickelt 1991 von R.L. Rivest) SHA-1 (secure hash algorithm, vom NIST 1994 spezifiziert)

Beispiel für MD5-Hash:Text: Franz jagt im komplett verwahrlosten Taxi quer durch Bayern

Hash: a3cca2b2aa1e3b5b3b5aad99a8529074Text: Frank jagt im komplett verwahrlosten Taxi quer durch Bayern

Hash: 7e716d0e702df0505fc72e2b89467910

Quelle: Wikipedia

39 Kryptographie und PKI

Handout (8): Erstellung einer digitalen Signatur

Bei der Erstellung einer digitalen Signatur wird: ein Hashwert des zu signierenden Dokuments, Codes o.ä. gebildet, der erzeugte Hashwert mit dem privaten Schlüssel (auch Signaturschlüssel genannt)

„verschlüsselt“ und somit eine „Signatur“ erzeugt und diese Signatur dem Dokument hinzugefügt

Quelle: CrypTool

40 Kryptographie und PKI

Handout (9): Überprüfung einer digitalen Signatur

Quelle: CrypTool

Bei der Überprüfung einer digitalen Signatur wird: ebenfalls ein Hashwert des zu überprüfenden Dokuments, Codes o.ä. gebildet, die Signatur (d.h. der verschlüsselte Hashwert) aus dem signierten Dokument extrahiert

und mit dem öffentlichen Schlüssel des Signierers „entschlüsselt“ der aktuell berechnete Hashwert wird mit dem entschlüsselten Hashwert verglichen und Wenn diese beiden Werte übereinstimmen ist die Signatur verifiziert

41 Kryptographie und PKI

Handout (10): Public Key Infrastructure (PKI)

Eine zusätzliche Anforderung (besonders bei der elektronischen Signatur) ist die Authentizität von öffentlichen Schlüsseln, d.h. es muss gewährleistet werden, dass ein Schlüssel einer Person zugeordnet werden kann

Erfüllung dieser Anforderung durch „(elektronische) Zertifikate“, welche einen Namen untrennbar mit einem öffentlichen Schlüssel verbinden

Dazu signiert eine „Zertifizierungsstelle“ (Certificate Authority = CA) den öffentlichen Schlüssel eines Antragstellers mit ihrem eigenen privaten Schlüssel

Ein System, welches digitale Zertifikate ausstellt, wird als „Public Key Infrastructure (PKI)“ bezeichnet

Quelle: CrypTool

42 Kryptographie und PKI

Handout (11): Hybrid-Verschlüsselung

Ein Nachteil von asymmetrischen Verschlüsselungsverfahren ist ihre geringe Geschwindigkeit gegenüber symmetrischen Verfahren

Aus diesem Grund werden symmetrische und asymmetrische Verfahren oft wie folgt kombiniert: Es wird ein (oft zufälliger) symmetrischer Sitzungsschlüssel („Session Key“) erzeugt Mit dem symmetrischen Schlüssel werden die zu schützenden Klartextdaten verschlüsselt Der symmetrische Schlüssel wird

mit dem (asymmetrischen) öffent-lichen Schlüssel des Empfängers verschlüsselt

Der verschlüsselte Session Keywird dem verschlüsselten Textbeigelegt und beide Teile werdenan den Empfänger geschickt

Quelle: CrypTool

43 Kryptographie und PKI

Handout (12): Hybrid-Entschlüsselung

Die (hybride) Entschlüsselung erfolgt in umgekehrter Reihenfolge zur Verschlüsselung: Der verschlüsselte symmetrische Session Key wird mit Hilfe des privaten asymmetrischen

Schlüssels entschlüsselt Mit dem entschlüsselten Session Key kann nunmehr die eigentliche Nachricht entschlüsselt

werden

Quelle: CrypTool

44 Kryptographie und PKI

Ergänzung (1): Diffie-Hellman-Schlüsselaustausch

Wähle eine Primzahl p und eine Zahl g, wobei gelten soll: g größer oder gleich 2 und g kleiner oder gleich p-2

Wähle zwei (Zufalls-) Zahlen a und b (kleiner oder gleich p-2)

Berechne zwei Zahlen A und B wie folgt: A = ga mod p B = gb mod p

Berechne das gemeinsame Geheimnis wie folgt: K = Ba mod p K = Ab mod p

Beide Werte von K sind gleich!

Quelle: Wikipedia

45 Kryptographie und PKI

Ergänzung (2): Beispiel für DH-Schlüsselaustausch

Alice und Bob einigen sich (in öffentlicher Kommunikation) auf die folgenden Zahlen: p = 23 g = 5

Alice und Bob wählen jeweils für sich eine Zufallszahl aus (diese wird nicht übermittelt!): Alice: a = 6 Bob: b = 15

Alice berechnet A und schickt das Ergebnis (öffentlich) an Bob: A = 56 mod 23 = 8

Bob berechnet B und schickt das Ergebnis (öffentlich) an Alice: B = 515 mod 23 = 19

Alice berechnet das gemeinsame Geheimnis wie folgt: K = 196 mod 23 = 2

Bob berechnet das gemeinsame Geheimnis wie folgt: K = 815 mod 23 = 2

Quelle: Wikipedia

46 Kryptographie und PKI

Ergänzung (3): RSA-Verfahren und Schlüssel

Wähle zwei (große) Primzahlen p, q und berechne n = p*q Berechne φ(n) = (p-1)*(q-1) Wähle eine Zahl e, die teilerfremd zu φ(n) und kleiner als φ(n) ist

Wähle eine Zahl d, die kleiner als φ(n) ist und

die Bedingung e*d mod φ(n) = 1 erfüllt

Aus den obigen Zahlen werden der öffentliche und der private Schlüssel zusammengesetzt: Öffentlicher Schlüssel: (e, n) Privater Schlüssel: (d, n)

47 Kryptographie und PKI

Ergänzung (4): Beispiel für RSA-Verfahren

Verschlüsselung: c = me mod n Entschlüsselung: m = cd mod n

Beispiel:p=17, q=11n = p*q = 187φ(n) = (p-1)*(q-1) = 160e = 7d = 23da: e * d = 161

Verschlüsselung von „Z“ bzw „26“:c = 267mod 187 = 104

Entschlüsselung von „104“:m = 10423mod 187 = 26

Recommended