IT-Sicherheit Kapitel 3 - Public Key Kryptographie Prof. Dr. Michael Braun Wintersemester 2010/2011.

33
IT-Sicherheit Kapitel 3 - Public Key Kryptographie Prof. Dr. Michael Braun Wintersemester 2010/2011

Transcript of IT-Sicherheit Kapitel 3 - Public Key Kryptographie Prof. Dr. Michael Braun Wintersemester 2010/2011.

Page 1: IT-Sicherheit Kapitel 3 - Public Key Kryptographie Prof. Dr. Michael Braun Wintersemester 2010/2011.

IT-SicherheitKapitel 3 - Public Key

Kryptographie

Prof. Dr. Michael Braun

Wintersemester 2010/2011

Page 2: IT-Sicherheit Kapitel 3 - Public Key Kryptographie Prof. Dr. Michael Braun Wintersemester 2010/2011.

Einführung

Page 3: IT-Sicherheit Kapitel 3 - Public Key Kryptographie Prof. Dr. Michael Braun Wintersemester 2010/2011.

Symmetrische Kryptographie

Sender und Empfänger verwenden denselben Schlüssel.

Die Teilnehmer müssen sich voll vertrauen.

Bei N Teilnehmern muss jeder Teilnehmer N-1 Schlüssel geheim halten.

Bei Hinzukommen eines neuen Teilnehmers müssen alle Teilnehmer ihre Schlüsseldatei aktualisieren.

Es sind hohe Sicherheitsanforderung für den Schlüsseltransport notwendig.

Page 4: IT-Sicherheit Kapitel 3 - Public Key Kryptographie Prof. Dr. Michael Braun Wintersemester 2010/2011.

Asymmetrische Kryptographie

Es gibt ein Schlüsselpaar bestehend aus einem privaten und einem dazugehörigen öffentlichen Schlüssel.

Es besteht eine mathematische Beziehung zwischen dem privaten und dem öffentlichen Schlüssel.

Der private Schlüssel soll nicht aus dem öffentlichen Schlüssel ableitbar sein.

Der öffentliche Schlüssel kann beliebig über einen nicht vertraulichen Kanal verteilt werden.

Page 5: IT-Sicherheit Kapitel 3 - Public Key Kryptographie Prof. Dr. Michael Braun Wintersemester 2010/2011.

Schlüsselmanagement

Jeder Teilnehmer besitzt ein asymmetrisches Schlüsselpaar.

Jeder Teilnehmer hält seinen privaten Schlüssel geheim.

Die öffentlichen Schlüssel sind jeweils allen Teilnehmern bekannt (z.B. über ein öffentliches Verzeichnis).

Bei N Nutzern sind nur noch N Schlüsselpaare nötig.

Page 6: IT-Sicherheit Kapitel 3 - Public Key Kryptographie Prof. Dr. Michael Braun Wintersemester 2010/2011.

Vertrauliche Kommunikation (Forts.)

Mike‘s public key

Ted‘spublic key

Alice‘spublic key

Bob‘spublic key

Joy‘s public key

plain text

ciphertext

Bob‘spublic key

cipher text

plaintext

Bob‘sprivate

key

Öffentliches Verzeichnis

asymmetric

encryption

asymmetric

decryption

Page 7: IT-Sicherheit Kapitel 3 - Public Key Kryptographie Prof. Dr. Michael Braun Wintersemester 2010/2011.

Geschichte

Anfang der 1970er erfinden Mathematiker beim britischen Geheimdienst (angeblich) „Non-Secret Cryptography“.

1976 publizieren Whitfield Diffie und Martin Hellman ihren richtungsweisenden Artikel.

1978 veröffentlichen Ron Rivest, Adi Shamir und Leonard Adleman das RSA-Verfahren.

1985 publiziert Taher ElGamal ein Verschlüsselungs- und Signaturverfahren auf Basis von Diffie-Hellman.

Page 8: IT-Sicherheit Kapitel 3 - Public Key Kryptographie Prof. Dr. Michael Braun Wintersemester 2010/2011.

Falltürfunktionen

Page 9: IT-Sicherheit Kapitel 3 - Public Key Kryptographie Prof. Dr. Michael Braun Wintersemester 2010/2011.

Laufzeit

Eine Funktion f heißt genau dann Laufzeit eines Algorithmus, wenn für alle Eingabelängen n der Algorithmus höchstens f(n) Schritte benötigt.

Ein Schritt ist eine einfache Operation auf einer Turing-Maschine, eine Maschineninstruktion oder ein Hochsprachenbefehl. Die verschiedenen Definitionen von „Schritt“ sollen bis auf multiplikative Konstanten gleich sein.

f(n) wird nicht exakt über eine Formel bestimmt, sondern für große Werte von n approximiert.

Page 10: IT-Sicherheit Kapitel 3 - Public Key Kryptographie Prof. Dr. Michael Braun Wintersemester 2010/2011.

O-Notation• Es gilt genau dann f = O(g), wenn es zwei Zahlen c

und N gibt, so dass f(n) ≤ c * g(n) gilt für alle n ≥ N.

c * g(n)

f(n)

g(n)

Nn

Page 11: IT-Sicherheit Kapitel 3 - Public Key Kryptographie Prof. Dr. Michael Braun Wintersemester 2010/2011.

Laufzeit (Forts.)

Ein Algorithmus mit Eingabelänge n hat genau dann

lineare Laufzeit, wenn die Laufzeit O(n) beträgt.

polynomielle Laufzeit, wenn die Laufzeit O(na) für eine natürliche Zahl a > 1 beträgt.

exponentielle Laufzeit, wenn die Laufzeit O(cn) für ein c > 1 beträgt.

Eine lineare und polynomielle Laufzeit ist effizient.

Page 12: IT-Sicherheit Kapitel 3 - Public Key Kryptographie Prof. Dr. Michael Braun Wintersemester 2010/2011.

Komplexitätsklassen

Die Komplexitätsklasse P beschreibt diejenigen Probleme zu deren Lösung es einen Algorithmus mit polynomieller Laufzeit gibt.

Die Komplexitätsklasse NP beschreibt diejenigen Probleme, bei denen die Verifikation einer Lösung eine polynomielle Laufzeit besitzt.

Page 13: IT-Sicherheit Kapitel 3 - Public Key Kryptographie Prof. Dr. Michael Braun Wintersemester 2010/2011.

P versus NP

P ist eine Teilmenge von NP.

Offen ist die Frage P = NP?

•Ist jedes Problem, deren Lösung in polynomieller Laufzeit verifizierbar ist auch in polynomieller Laufzeit lösbar?

• Im August wurde ein 103 Seiten langer Beweis eingereicht mit der Behauptung P ≠ NP (wird derzeit von den Experten geprüft).

Page 14: IT-Sicherheit Kapitel 3 - Public Key Kryptographie Prof. Dr. Michael Braun Wintersemester 2010/2011.

Einweg- und Falltürfunktionen

Eine Abbildung f heißt Einwegfunktion, falls gilt:

y = f(x) ist effizient berechenbar.

x = f-1(y) ist nicht effizient berechenbar.

Eine Abbildung f heißt Falltürfunktion, falls gilt:

f ist eine Einwegfunktion.

x = f-1(y) ist effizient berechenbar mit Hilfe einer Zusatzinformation.

Page 15: IT-Sicherheit Kapitel 3 - Public Key Kryptographie Prof. Dr. Michael Braun Wintersemester 2010/2011.

Kryptographie mit Falltürfunktionen

Ein Teilnehmer A wählt eine Falltürfunktion f, bei der nur er die Zusatzinformation kennt.

Der Teilnehmer B wendet die Falltürfunktion f auf seine Nachricht x an und sendet das Ergebnis y = f(x) an A.

Unter der Annahme, dass nur A die Zusatzinformation kennt, kann A die Funktion f umkehren und die Nachricht x = f-1(y) entschlüsseln.

Page 16: IT-Sicherheit Kapitel 3 - Public Key Kryptographie Prof. Dr. Michael Braun Wintersemester 2010/2011.

Kandidaten für Falltürfunktionen

Faktorisierung ganzer Zahlen

Diskreter Logarithmus

Elliptische Kurven

Page 17: IT-Sicherheit Kapitel 3 - Public Key Kryptographie Prof. Dr. Michael Braun Wintersemester 2010/2011.

Digitale Signaturen

Page 18: IT-Sicherheit Kapitel 3 - Public Key Kryptographie Prof. Dr. Michael Braun Wintersemester 2010/2011.

Digitale Signatur

Mit Public Key Kryptographie kann man mittels digitaler Signatur die folgende Schutzziele realisieren:

Integrität

Nachrichtenauthentizität

Verbindlichkeit

Integrität und Nachrichtenauthentizität können auch mit Message Authentication Codes realisiert werden, aber die Verbindlichkeit gewährleistet ausschließlich die digitale Signatur.

Page 19: IT-Sicherheit Kapitel 3 - Public Key Kryptographie Prof. Dr. Michael Braun Wintersemester 2010/2011.

Digitale Signatur (Forts.)

Mike‘s Mike‘s public keypublic key

Ted‘sTed‘spublic keypublic key

Alice‘sAlice‘spublic keypublic key

Bob‘sBob‘spublic keypublic key

Joy‘s Joy‘s public keypublic key

plain plain texttext

signatursignaturee

Alice‘sAlice‘spublic keypublic key

true/true/falsefalse

plainplaintexttext

Alice‘sAlice‘sprivate private

keykey

Alice Bob

signatursignaturee

signaturesignaturegenerationgeneration signaturesignature

verificationverification

Page 20: IT-Sicherheit Kapitel 3 - Public Key Kryptographie Prof. Dr. Michael Braun Wintersemester 2010/2011.

Digitale Signatur (Forts.)

Ein Teilnehmer A kann eine gültige digitale Signatur mit einem privaten Schlüssel erzeugen.

Jeder andere Teilnehmer B kann die Echtheit der digitalen Signatur von A mit dem öffentlichen Schlüssel von A verifizieren.

Es wird dabei gefordert, dass es praktisch unmöglich sein muss, ohne den privaten Schlüssel eine gültige digitale Signatur erzeugen zu können.

Page 21: IT-Sicherheit Kapitel 3 - Public Key Kryptographie Prof. Dr. Michael Braun Wintersemester 2010/2011.

Hash & Sign• Problem:

Public-Key-Verfahren sind sehr langsam.

Die digitale Signatur ist ebenso lang wie die Nachricht.

• Lösung:

Hashen der Nachricht und Signieren des Hashwertes.

Die Fälschungssicherheit, die Verifizierbarkeit und die Verbindlichkeit gelten zunächst für den Hashwert.

Durch eine kollisionsresistente Hashfunktion übertragen sich die Eigenschaften auch auf die Nachricht.

Page 22: IT-Sicherheit Kapitel 3 - Public Key Kryptographie Prof. Dr. Michael Braun Wintersemester 2010/2011.

Hash & Sign (Forts.)

Mike‘s Mike‘s public keypublic key

Ted‘sTed‘spublic keypublic key

Alice‘sAlice‘spublic keypublic key

Bob‘sBob‘spublic keypublic key

Joy‘s Joy‘s public keypublic key

hash hash valuevalue

signatursignaturee

Alice‘sAlice‘spublic keypublic key

true/true/falsefalse

hashhashvaluevalue

Alice‘sAlice‘sprivate private

keykey

Alice Bob

signatursignaturee

plain plain texttext

signaturesignaturegenerationgeneration signaturesignature

verificationverification

hashhashfunctionfunction

hashhashfunctionfunction

Page 23: IT-Sicherheit Kapitel 3 - Public Key Kryptographie Prof. Dr. Michael Braun Wintersemester 2010/2011.

Kryptographischer Umschlag

Verschlüsselung gewährleistet Vertraulichkeit.

Digitale Signaturen gewährleisten Authentizität.

Ein kryptographischer Umschlag gewährleistet beides:

Nachricht signieren.

Nachricht und Signatur verschlüsseln.

Page 24: IT-Sicherheit Kapitel 3 - Public Key Kryptographie Prof. Dr. Michael Braun Wintersemester 2010/2011.

Kryptographischer Umschlag (Forts.)

Mike‘s Mike‘s public keypublic key

Ted‘sTed‘spublic keypublic key

Bob‘sBob‘spublic keypublic key

Alice‘sAlice‘spublic keypublic key

Joy‘s Joy‘s public keypublic key

Bob‘sBob‘spublic keypublic key

Alice‘sAlice‘sprivate private

keykey

signaturesignaturegenerationgeneration

concatenatconcatenatee

asymmetriasymmetricc

encryptionencryption

signaturesignature plain textplain text

cipher cipher texttext

cipher cipher texttext

asymmetriasymmetricc

decryptiondecryption

Bob‘sBob‘sprivate private

keykey

Alice‘sAlice‘spublic keypublic key

signaturesignatureverificationverification

plain textplain textsignaturesignature

true/falsetrue/false

BobAlice

Page 25: IT-Sicherheit Kapitel 3 - Public Key Kryptographie Prof. Dr. Michael Braun Wintersemester 2010/2011.

Hybridverfahren

Page 26: IT-Sicherheit Kapitel 3 - Public Key Kryptographie Prof. Dr. Michael Braun Wintersemester 2010/2011.

Symmetrisch vs. asymmetrisch

Asymmetrische Verfahren haben gegenüber den symmetrischen Verfahren den Vorteil, dass nicht ein gemeinsamer Schlüssel über einen vertraulichen Kanal ausgetauscht werden muss.

Symmetrische Verfahren lassen sich gegenüber asymmetrischen Verfahren sehr effizient implementieren (ca. 1000 mal schneller).

Da es meist mathematische Angriffe auf asymmetrische Verfahren gibt, ist die Schlüssellänge weitaus größer als bei symmetrischen Verfahren.

Page 27: IT-Sicherheit Kapitel 3 - Public Key Kryptographie Prof. Dr. Michael Braun Wintersemester 2010/2011.

Symmetrisch vs. asymmetrisch (Forts.)

Ziel ist es die Vorteile von asymmetrischen und symmetrischen Verfahren zu nutzen.

Hybride Verfahren verschlüsseln die eigentliche Nachricht symmetrisch, wobei mittels asymmetrischer Verschlüsselung ein symmetrischer Schlüssel vertraulich transportiert wird.

Page 28: IT-Sicherheit Kapitel 3 - Public Key Kryptographie Prof. Dr. Michael Braun Wintersemester 2010/2011.

Hybride Verschlüsselung

Mike‘s Mike‘s public keypublic key

Ted‘sTed‘spublic keypublic key

Alice‘sAlice‘spublic keypublic key

Bob‘sBob‘spublic keypublic key

Joy‘s Joy‘s public keypublic key

keykey encryptedencryptedkeykey

Bob‘sBob‘spublic keypublic key

keykey

Bob‘sBob‘sprivate private

keykey

Alice Bob

asymmetriasymmetricc

encryptionencryption

asymmetriasymmetricc

decryptiondecryption

encryptedencryptedkeykey

plain plain texttext

cipherciphertexttext

symmetricsymmetricencryptionencryption

plainplaintexttext

symmetricsymmetricdecryptiondecryption

cipherciphertexttext

Page 29: IT-Sicherheit Kapitel 3 - Public Key Kryptographie Prof. Dr. Michael Braun Wintersemester 2010/2011.

Standards

Page 30: IT-Sicherheit Kapitel 3 - Public Key Kryptographie Prof. Dr. Michael Braun Wintersemester 2010/2011.

IEEE P1363

Schlüsselvereinbarungsprotokolle

Schlüsseltransportprotokolle

Signaturalgorithmen

Der Standard empfiehlt keine Schlüssellängen

Page 31: IT-Sicherheit Kapitel 3 - Public Key Kryptographie Prof. Dr. Michael Braun Wintersemester 2010/2011.

ANSI

X9.30-1 Digital Signature Algorithm (DSA)

X9.30-2 Hashing Algorithms for DSA

X9.31-1 RSA Signature Algorithm

X9.31-2 Hashing Algorithms for RSA

X9.42 Key Management using Diffie-Hellman

X9.62 Elliptic Curve Digital Signature Algorithm (ECDSA)

X9.63 Elliptic Curve Key Agreement and Transport

Page 32: IT-Sicherheit Kapitel 3 - Public Key Kryptographie Prof. Dr. Michael Braun Wintersemester 2010/2011.

Public Key Crypto Standards

PKCS#1 RSA Cryptography

PKCS#3 Diffie-Hellman Key Agreement

PKCS#5 Password Based Cryptography

PKCS#6 Extended Certificate Syntax

PKCS#7 Cryptographic Message Syntax

PKCS#8 Private Key Information Syntax

Page 33: IT-Sicherheit Kapitel 3 - Public Key Kryptographie Prof. Dr. Michael Braun Wintersemester 2010/2011.

Public Key Crypto Standards (Forts.)

PKCS#9 Selected Attribute Types

PKCS#10 Certification Request Syntax

PKCS#11 Cryptographic Token Interface

PKCS#12 Personal Information Exchange Syntax

PKCS#13 Elliptic Curve Cryptography

PKCS#15 Cryptographic Token Information Format