Vorlesung Sicherheit Dennis Hofheinz IKS, KIT 13.05.2013 1 / 16
Überblick 1 Asymmetrische Verschlüsselung Erinnerung Andere Verfahren Demonstration Zusammenfassung 2 Symmetrische Authentifikation von Nachrichten Ziel Sicherheit Konstruktionen 2 / 16
Erinnerung Asymmetrische (Public-Key-)Verschlüsselung: Alice sk C:=Enc(pk,M) Bob pk RSA: Enc(pk, M) = M e mod N Dec(sk, C) = C d mod N Homomorphie von RSA, Notwendigkeit Padding Unsicherheit naives Padding RSA-OAEP 3 / 16
ElGamal (1985) Szenario: zyklische Gruppe G = g pk = (G, g, g x ), sk = (G, g, x) (mit x zufällig) Enc(pk, M) = (g y, g xy M) (mit y zufällig) Dec(sk, (Y, Z)) = Z/Y x (= (g xy M)/(g y ) x = M) Beobachtung: Verschlüsselung probabilistisch Aber: ElGamal wie RSA homomorph Enc(pk, M) Enc(pk, M ) = (g y, g xy M) (g y, g xy M ) = (g y+y, g x(y+y ) M M ) = Enc(pk, M M ) 4 / 16
Mehr über ElGamal ElGamal unter naheliegender Annahme semantisch sicher Nicht-homomorphe Varianten von ElGamal existieren Kandidaten für geeignete Gruppen G: (Echte) Untergruppen von Z P (mit P prim) Allgemeiner: Untergruppen von F q (mit q Primpotenz) Effizienter: (Untergruppen von) elliptischer Kurve E(F q ) Realistische Gruppengröße: G 2 2048 (für G Z P, F q) G 2 200 (für G E(F q )) 5 / 16
Demonstration Demonstration: Geschwindigkeitsvergleich RSA/elliptische Kurven 6 / 16
Zusammenfassung asymmetrische Verschlüsselung Public-Key-Verschlüsselung löst Schlüsselverteilungsproblem RSA wichtig, aber ohne Padding problematisch RSA-OAEP ElGamal in kleineren Gruppen möglich (Effizienz) Beide Verfahren (ungepadded) homomorph (Vorteil/Nachteil) 7 / 16
Aktuelle Forschung Mehr/andere Funktionalität Identitätsbasierte Verschlüsselung (löst Zertifizierungsproblem) Vollhomomorphe Verschlüsselung (Berechnungen delegieren 1 ) Broadcast-Verschlüsselung (Beispielanwendung: Pay-TV) Andere Probleme, alternative mathematische Strukturen Public-Key-Verschlüsselung so sicher wie Faktorisierung Gitterbasierte Verschlüsselung 1 momentan noch um Größenordnungen zu ineffizient 8 / 16
Überblick 1 Asymmetrische Verschlüsselung Erinnerung Andere Verfahren Demonstration Zusammenfassung 2 Symmetrische Authentifikation von Nachrichten Ziel Sicherheit Konstruktionen 9 / 16
Ziel Authentifizierte Übermittlung auf unauthentifiziertem Kanal: Alice (M,σ) Bob Nachricht M soll vor Veränderungen geschützt werden Idee: Sende Unterschrift σ mit Nachricht Anforderungen: Bob muss σ (aus/für Nachricht M) berechnen können Alice muss σ (zusammen mit M) verifizieren können Außenseiter soll kein gültiges σ für neues M erzeugen können 10 / 16
Grundidee MACs Annahme: Alice und Bob besitzen gemeinsames Geheimnis K Alice K (M,σ) Bob K Signieren: σ Sig(K, M) Verifizieren: Ver(K, M, σ) {0, 1} Korrektheit: Ver(K, σ) = 1 für alle K, M und σ Sig(K, M) Wird MAC (Message Authentication Code) genannt 11 / 16
Sicherheitsmodell Diskussion: Wünschenswerte Sicherheitseigenschaften? 12 / 16
Sicherheitsdefinition Schema EUF-CMA-sicher kein PPT-Angreifer A gewinnt folgendes Spiel nicht-vernachlässigbar oft: 1 A erhält Zugriff auf ein Sig(K, )-Orakel 2 A gibt Ausgabe (M, σ ) 3 A gewinnt, wenn Ver(K, M, σ ) = 1 und M frisch Modelliert passive Angriffe (A erhält keinen Ver-Zugriff) Für viele Verfahren (z.b. bei eindeutigem σ) äquivalent zu Definition mit Ver-Orakel für A Intuition: wenn A Ver-Anfrage mit Ver(K, M, σ) = 1 und frischem (also nicht schon von Sig erzeugtem) σ generiert, ist das schon eine gefälschte Signatur 13 / 16
Hash-Then-Sign-Paradigma Problem: viele Verfahren signieren nur kurze Bitstrings Lösung: signiere H(M) {0, 1} k anstelle von M {0, 1} Theorem (Sicherheit des Hash-Then-Sign-Paradigmas) Sei (Sig, Ver) EUF-CMA-sicher und H eine kollisionsresistente Hashfunktion. Dann ist der durch Sig (K, M) = Sig(K, H(M)), Ver (K, M, σ) = Ver(K, H(M), σ) erklärte MAC EUF-CMA-sicher. Beweis. Beweisstrategie: ein EUF-CMA-Angreifer A muss entweder eine H-Kollision oder eine Signatur σ für einen frischen Hashwert H(M) finden, um das EUF-CMA-Spiel zu gewinnen. 14 / 16
Pseudorandom Functions Nützlicher theoretischer Baustein: Pseudorandom Functions Definition (Pseudorandom Function, PRF) Sei PRF : {0, 1} k {0, 1} k {0, 1} k eine über k N parametrisierte Funktion. PRF heißt Pseudorandom Function (PRF), falls für jeden PPT-Algorithmus A die Funktion ] Adv prf PRF,A [A (k) := Pr PRF(K, ) (1 k ) = 1 Pr [ ] A R( ) (1 k ) = 1 vernachlässigbar ist, wobei R : {0, 1} k {0, 1} k eine echt zufällige Funktion ist. 15 / 16
Kandidat für eine Pseudorandom Function PRF-Kandidat, ausgehend von Hashfunktion H: PRF(K, X ) := H(K, X ) Vorsicht: diese Konstruktion hat ihre Tücken Manchmal (Merkle-Damgård) lässt sich Hashwert erweitern : H(K, X ) kann zu H(K, X, X ) erweitert werden Bricht PRF-Eigenschaft für Eingaben unterschiedlicher Länge 16 / 16