Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

1 Kryptographische Verfahren Maxim Mariach Eugen Hofmann Ira Tsalman Seminar: Sicherheit in vernetzten Systemen. WS 2002/2003.

Ähnliche Präsentationen


Präsentation zum Thema: "1 Kryptographische Verfahren Maxim Mariach Eugen Hofmann Ira Tsalman Seminar: Sicherheit in vernetzten Systemen. WS 2002/2003."—  Präsentation transkript:

1 1 Kryptographische Verfahren Maxim Mariach Eugen Hofmann Ira Tsalman Seminar: Sicherheit in vernetzten Systemen. WS 2002/2003

2 2 Begriffe Die Begriffe Kryptographie und -logie sind ursprünglich aus den griechischen Wörtern kryptos (geheim) und logos (Wort, Kunde) bzw. graphien (schreiben) abgeleitet. Die grundlegende Aufgabe der Kryptographie besteht in der Geheimhaltung von übertragenen oder gespeicherten Informationen und Schutz vor dem unbefugten Gebrauch.

3 3 Begriffe Kryptologie: mathematische Disziplin, die sowohl die Kryptographie als auch die Kryptoanalyse umfasst. Kryptoanalyse: Lehre von der Entschlüsselung geheimer Texte. Kryptographie: Wissenschaft zur Entwicklung von Kryptosystemen bzw. den Maßnahmen zur Ver- und Entschlüsselung von Daten.

4 4 Begriffe Sei n ein Klartext (Plaintext). Um die Datensicherheit zu vergrößern, verschlüsselt (encrypts) der Absender den Text und schickt das Resultat, den verschlüsselten Text (Cryptotext), durch einen Kanal. Der Empfänger (Benutzer) entschlüsselt den Kryptotext um den Plaintext zu bekommen.

5 5 Begriffe Die Verschlüsselung (Encryption) und Entschlüsselung (Decryption) findet im Rahmen eines bestimmten Kryptosystems statt. Jedes Kryptosystem besitzt einige Schlüssel (Keys). Jeder dieser Schlüssel bestimmt eine Verschlüsselungsfunktion e k und eine Entschlüssungsfunktion d k. e k ( n ) = c und umgekehrt gilt d k ( c ) = n Deshalb ist d k ( e k ( n ) )= n

6 6 Kryptosystem Ein gutes Kryptosystem sollte folgende Eigenschaften besitzen: 1. Gegeben e k und n, soll es einfach sein c = e k (n) zu berechnen. 2. Gegeben d k und c, soll es einfach sein n = d k (c) zu berechnen. 3. Der Kryptotext e k ( n ) soll nicht viel länger sein als der Plaintext n. 4. Es soll sehr schwer oder nahezu unmöglich sein den Plaintext n aus dem Kryptotext e k ( n ) zu bestimmen ohne d k zu kennen.

7 7 Kryptoanalyse Eine Verschlüsselung ist brechbar, falls Klartext oder Schlüssel aus dem Schlüsseltext abgeleitet werden können Schlüssel für Klartext-Schlüsseltext- Paare gefunden werden können

8 8 Kryptoanalyse Grundlegende Angriffsarten: 1. Ciphertext only attack: (Angriff nur auf Schlüsseltext) Schlüssel wird nur aufgrund des abgehörten Schlüsseltextes bestimmt durch: - (bekannte) Verschlüsselungsmethode - Thema des Textes - wahrscheinliche Worte

9 9 Kryptoanalyse 2.Known-plaintext only attack: ( Angriff mit bekanntem Klartext) Angreifer kennt einige Klartext- Schlüsseltext Paare, z.B.: - Angreifer fängt Nachricht vom Benutzerterminal zum Zentralrechner ab und weiß, dass diese mit Standard-Header Login beginnt. - Wahrscheinliche Wörter der Nachricht sind bekannt.

10 10 Kryptoanalyse 3. Chosen-plaintext attack: ( Angriff mit ausgewähltem Klartext ) - Angreifer kann Schlüsseltext zu ausgewähltem Klartext ableiten, z.B.: - Angriff auf verschlüsselte DB: Angreifer fügt Elemente in DB ein und beobachtet Veränderungen.

11 11 Kryptoanalyse 4. Chosen-ciphertext attack: ( Angriff mit ausgewähltem Schlüsseltext ) Angreifer kennt Verschlüsselungsalgorithmus und Verschlüsselungstext.

12 12 Kryptographie Es gibt zwei grundlegende Verschlüsselungsmethoden: 1. Transpositionsverschlüsselung: Umordnen der Bits/Zeichen des Klartextes (Permutation). 2. Substitutionsverschlüsselung: ersetzen von Bits, Zeichen oder Zeichenblocks.

13 13 Einfache Substitutionsverschlüsselungen Monoalphabetische Verschlüsselung: - Ersetzen jedes Zeichens des Klartext-Alphabets durch entsprechendes Zeichen des Schlüsseltext- Alphabets Beispiel: Ω = { A,B,…Z } Ω = ABCDEFGHIJKLMNOPQRSTUVWXYZ Σ = HARPSICODBEFGJKLMNQTXYZUVW n = SPACE e k (n) = QMHRS

14 14 Einfache Substitutionsverschlüsselungen Verschlüsselungen basierend auf Verschiebungen im Alphabet: z.B.: Cäsar – Verschlüsselung: Jedes Zeichen wird um k Positionen ( mod n) nach rechts verschoben: f(a) = (a + k) mod n (z.B. A + 4 = E oder Y + 4 = C, bei k = 4 und n = 26 )

15 15 Einfache Substitutionsverschlüsselungen Kryptoanalyse Durch Vergleich der Zeichenhäufigkeiten des Schlüsseltextes mit der erwarteten Häufigkeitsverteilung ( Ciphertext only attack - Angriff nur auf Schlüsseltext) BuchstabeEnglisch (%)Pascal (%) A 7,49 4,7 I 6,658,6 L 3,57 5,11

16 16 Homophone Substitutionen Abbildung des Klartext-Alphabets auf Schlüsseltext- Alphabet Beispiel: Σ = Englisches Alphabet Ω = {0,…99} - Anzahl der Zahlen, die einem Zeichen zugeordnet werden können (Relative Häufigkeit des Buchtabens im englischen Alphabet) - Keine Zahl wird mehr als einem Zeichen zugeordnet ( So kann L z.B. mit Hilfe von 22, 12 oder 43 abgebildet werden )

17 17 Homophone Substitutionen Kryptoanalyse Kein Brechen möglich durch Häufigkeitsanalyse einzelner Zeichen, jedoch Angriff mit Häufigkeitsverteilung von Zeichenfolgen möglich.

18 18 Kodierungsbeispiel Was meint ihr, welches Wort ist hier verschlüsselt? Dojrulwkpxv Algorithmus

19 19 Polyalphabetische Substitutionsverschlüsselungen Die Blöcke vom Klartext werden mit Blöcken vom Schlüsseltext ersetzt

20 20 Substitutions- und Transpositionsverschlüsselungen Transpositions- und Substitutionsverschlüsselungen halten nicht modernen kryptoanalytischen Verfahren stand. Moderne Verschlüsselungen sind i.A. eine Kombination von mehreren Funktionen, die jeweils entweder Substitutions- oder Transpositions-Operatoren durchführen. Sie arbeiten auf Bit-Ebene.

21 21 Symmetrische und Asymmetrische Kryptosysteme Symmetrische Kryptosysteme DES AES Asymmetrische Kryptosysteme Hybride Verschlüsselungsverfahren

22 22 Symmetrische Kryptosysteme Für Entschlüsselung und Verschlüsselung wird derselbe Schlüssel verwendet Schlüsselaustausch erfolgt über einen sicheren Kanal Beispiele: DES, IDEA, AES

23 23 Vor- und Nachteile (+) symmetrische Verfahren beruhen auf relativ einfacher Mathematik wie Addition, Multiplikation und Komplementbildung Die Ver- und Entschlüsselung sind sehr schnell sind relativ leicht in Hardware implementierbar (-) Der Schlüssel zur Ver- und Entschlüsselung ist gleich Sicherheitsrisiko Schlüsselaustausch Spontane Kommunikation ?

24 24 DES (Data Encryption Standard) basiert auf dem zu Anfang der 70er Jahre von IBM entwickeltem Verschlüsselungsverfahren Lucifer Verkürzung des ursprünglich 128-Bit langen Schlüssels auf 64 Bit wurde erstmals 1974 von der US Regierung veröffentlicht und ist als ANSI-Standard normiert (ANSI X ) Entwurfskriterien: leicht verständlich, preiswert umsetzbar, effizient berechenbar, öffentlich verfügbar Blockalgorithmus, welcher 64 Bits Klartext in 64 Bits Schlüsseltext und umgekehrt überführt Die Schlüssellänge beträgt 64 Bits, von denen aber nur 56 Bits signifikant sind

25 25 Arbeitsweise P IP L0L0 R0R0 L1L1 R1R1 + f(R 0,K 0 ) L 16 R IP -1 C Initiale Permutation 1 Bit2 Bit … 5852 Aufteilung Der Block wird in zwei 32- Bit Blöcke zerlegt R i-1 E E(R i-1 )KiKi + S1S1 S2S2 S3S3 S4S4 S5S5 S6S6 S7S7 S8S8 P F(R i-1,K i )

26 26 ECB-Modus (Electronic Code Book) DES wird blockweise auf jeweils 64 Bit lange Klartextblöcke angewandt Problem: Angreifer kann innerhalb einer Schlüsselperiode Chiffretexte abhören, zwischenspeichern und später wieder in den Kanal einspielen. Die Reihenfolge der Blöcken kann auch verändert werden, ohne dass dies vom Empfänger erkannt werden könnte

27 27 CBC-Modus (Cipher Block Chaining) vor der Verschlüsselung wird ein Klartextblock P i mit dem Vorgängerblock C i-1 Modulo 2 addiert Abhängigkeit zwischen den Blöcken DES C i =E k (C i-1 P i ) DES Schieberegister ++ PiPi PiPi CiCi C i-1 P i =D k (C i ) C i-1 Zufällige Blöcke als initiale Kettenwerte, d.h. C 0 =ICV Ein Übertragungsfehler im i.ten Block kann sich in den i+1.ten Block fortpflanzen

28 28 CFB-Modus (Cipher Feedback) DES als Pseudo-Zufallszahlengenerator linke 8 Bit Schieberegister DES + 64 Bit 8 Bit linke 8 Bit Schieberegister DES + 64 Bit 8 Bit Klartext 8 Bit Effizienzproblem: in jedem Durchlauf werden nur 8 Bit verschlüsselt Übertragungsfehler pflanzt solange fort, bis das fehlerhafte Zeichen aus dem Register fällt

29 29 OFB-Modus (Output Feedback) Die linken 8 Bit des chiffrierten Registers werden in das Schieberegister geschoben linke 8 Bit Schieberegister DES + 64 Bit 8 Bit linke 8 Bit Schieberegister DES + 64 Bit 8 Bit Klartext 8 Bit Keine Fehlerfortpflanzung Effizienzproblem

30 30 3DES (Triple-DES) Idee: Mehrfachverschlüsselung auf Basis von DES und verschiedenen Schlüsseln zu benutzen EDE K1K1 K2K2 K 1/ K 3 gilt heute als relativ sicher

31 31 Schwäche des DES war nicht vollständig veröffentlicht, es wurden sogar Hintertüren der NSA vermutet, die allerdings nie gefunden wurden differentielle und lineare Kryptoanalyse: Schlüsselermittlung aus 2 47 bzw Klar- und Chiffretextpaaren vollständige Suche: 2 56 große Schlüsselraum, aber im Durchschnitt sind nur 2 55 Schlüssel zu testen invariant unter der binären Komplimentbildung: der Aufwand lässt sich noch mal halbieren Existenz von schwachen Schlüssel Am RSA Challenge III: in 23 Stunden wurde 56 Bit DES-Schlüssel geknackt.

32 32 AES: Advanced Encryption Standard : Rijndael als Sieger des AES-Wettbewerbes Symmetrischer Blockalgorithmus Block- und Schlüssellänge: 128 Bit, 192 Bit oder 256 Bit Anzahl der Runden: 10, 12 oder 14 je nach Schlüssellänge und Blocklänge frei von Patenten und unentgeltlich nutzbar gegen bekannte Methoden der Kryptoanalyse resistent hat eine überdurchschnittliche Performance leicht in Hard- und Software implementierbar mit geringem Ressourcenverbrauch

33 33 Die Arbeitsweise von AES Eingabeblock Schlüsselexpansion Vorrunde runde

34 34 Die Arbeitsweise von AES Eingabeblock Schlüsselexpansion Vorrunde runde

35 35 Kryptographische Stärke des AES Mit den Schlüssellängen von 128 Bit ergibt sich ein Schlüsselraum von 3.4×10 38, mit 192 Bit 6.2×10 57 und mit 256 Bit 1.1× DES hat einen Schlüsselraum von 7.2× Annahme: Es gibt eine Maschine, die den ganzen DES Schlüsselraum in einer Sekunde durchsucht. Es würde bei Rijndael ungefähr 149'000 Billionen Jahre dauern. (Man bedenke, dass es das Universum seit weniger als 20 Milliarden Jahren geben soll)

36 36 Kryptographische Stärke des AES resistent gegenüber allen bekannten Angriffen resistent gegen lineare und differentielle Kryptoanalyse: Transformationen in der S-Box kann mit dem geringsten Aufwand gegen Angriffe geschützt werden, die auf Messungen von Änderungen der Stromaufnahme beruhen

37 37 Schwächen des AES ? Mai 2001: Algorithmus als geschlossene Formel mit 2 50 Termen Niemand weiß, ob daraus jemals ein sinnvoller Angriff auf AES konstruiert werden kann Courtois und Pieprzyk: 128-Bit-AES als System von 8000 quadratischen Gleichungen mit 1600 Variablen Derartige Systeme lassen sich im Allgemeinen nicht mit vertretbarem Rechenaufwand lösen XSL-Methode: Angriff auf AES mit Operationen Die genannten Angriffe sind rein akademischer Natur !

38 38 Asymmetrische Kryptosysteme Für Entschlüsselung und Verschlüsselung werden unterschiedliche Schlüssel k und k verwendet Enschlüsselungsschlüssel k kann praktisch nicht aus dem Verschlüsselungsschlüssel abgeleitet werden Schlüssel zur Verschlüsselung darf öffentlich bekannt sein

39 39 Vor- und Nachteile (+) einfaches Schlüsselmanagement: es muss kein sicherer Kanal für den Schlüsseltausch vorhanden sein gut für digitale Signaturen geeignet (-) sehr hohe Aufwand für Ver- und Entschlüsselung Größere Schlüssellänge Chiffretexte sind länger sind als die originalen Klartexte und die Algorithmen sind in der Regel nur schwer hardwareseitig umzusetzen Unsicherheit, dass das zugrunde liegende mathematische Problem eine einfachere Lösung hat

40 40 Hybride Verschlüsselungsverfahren kombinieren symmetrische und asymmetrische Verschlüsselungsverfahren Dokument wird mit einem symmetrischen Sitzungsschlüssel verschlüsselt Sitzungsschlüssel wird mit einem öffentlichen Schlüssel verschlüsselt

41 41 RSA und MD5 RSA Hash (md5) Geburtstagangriff Digitale Signaturen Blinde Unterschrift Digitales Geld

42 42 RSA Public-Key-Verschlüsselungssystem welches im Jahre 1977 von Ron Rivest, Adi Shamir und Leonard Adleman am MIT erfunden wurde kann zur Verschlüsselung und zum digitalen Signieren verwendet werden

43 43 RSA Algorithmus: p und q große Primzahlen n = p q n: n = p q ((p-1)(q-1)) e: teilerfremd zu ((p-1)(q-1)) ed 1 mod (p-1)(q-1) d: ed 1 mod (p-1)(q-1) d, n Privater Schlüssel: d, n e, n Öffentlicher Schlüssel:e, n C = N e mod n Verschlüsselung:C = N e mod n N = C d mod n = (N e ) d mod n Entschlüsselung:N = C d mod n = (N e ) d mod n

44 44 Kryptographische Stärke des RSA Die Sicherheit von RSA basiert auf dem Problem, eine große ganze Zahl in ihre Primfaktoren zu zerlegen Wie schnell kann man faktorisieren? Es gibt schnelle Verfahren nur für spezielle Zahlen Die schnellsten allgemeinen Verfahren Zahlkörpersieb und Elliptische- Kurven-Faktorisierung haben einen Zeitaufwand der Größenordnung: Bernstein: Annahme, dass man den Aufwand um den Faktor 3 zu reduzieren könnte MIPS-Jahre, um den Schlüssel zu knackenRSA Schlüssellänge Bit 1024 Bit

45 45 Kryptographische Stärke des RSA 512-Bit-RSA-Schlüssel sind nicht mehr sicher! Empfehlung Primfaktoren:e 1 < | log 2 (p) – log 2 (q) | < e 2 e 1 0.5, e 2 30 Bis Ende 2005Bis Ende 2006Bis Ende (Mindestwert) 2048 (Empfehlung) 1536 (Mindestwert) 2048 (Empfehlung)

46 46 Was ist Hash? Eine volumenmäßig kleinere Abbildung eines Dokuments. Ziel einer Hashfunktion ist es, den unendlichen Definitionsbereich (die Menge aller Dokumente) möglichst gleichmäßig auf den Wertebereich abzubilden.

47 47 Wozu Hash? Nicht das ganze Dokument, sondern nur den Hash verschlüsseln Signatur Bei Datenbanken, um zu entscheiden, an welcher Stelle man einen Datensatz in die Datenbank einfügt Prüfsumme

48 48 MD5 Ziele Nicht umkehrbar Es soll keine bessere Möglichkeit geben, zwei Dokumente mit gleicher Signatur zu finden, als eine "Brute Force"-Attacke. Keine unbewiesenen Annahmen (z.B. der derzeit mangels geeigneter Algorithmen sehr hohe Aufwand zur Faktorzerlegung großer Zahlen) sollten dem Algorithmus zugrunde liegen. MD5 soll schnell und kompakt sein, um auch in kleinen Computern vernünftige Anwendungen zu finden.

49 49 MD5 Funktionsweise MD5 arbeitet in 4 Runden und mit 64 Konstanten. Das Ergebnis ist ein 128-Bit- Hashwert Sein Ablauf besteht aus vier Schritten: –Padding –Initialisierung –Berechnung des Blockhashwertes –Bestimmung des Hashwertes

50 50 Padding Nachricht auf ein Vielfaches von 512 Bit ergänzen, da mit 512-Bit-Blöcken gearbeitet wird. An die Nachricht wird zuerst eine einzelne 1 angehängt und dann noch so viele Nullen, bis die Nachricht kongruent 448 modulo 512 ist. (Das Anhängen der 1 stellt sicher, dass die Nachricht mindestens eine Eins enthält.) In die letzten 64 freien Bit wird die Länge der ursprünglichen Nachricht geschrieben.

51 51 Initialisierung Bei der Berechnung werden vier 32-Bit-Puffer verwendet, die den aktuellen Rundenhashwert mit einer Größe von 128 Bit beinhalten. Diese müssen, da MD5 eine iterative Hashfunktion ist, initialisiert werden; dafür werden die folgenden Werte benutzt: h(0) := hex h(1) := fedcba98hex h(2) := 98abcdefhex h(3) := fedcba89hex h(0) := hex h(1) := fedcba98hex h(2) := 98abcdefhex h(3) := fedcba89hex

52 52 Blockhashwertberechnung ft(x,y,z)K(t) R t W(i) 64 Funktionen ft(x,y,z), 64 Konstanten K(t), 64 Rotationskonstanten R t und die 16 Worte W(i) des aktuellen Blockes werden in Abhängigkeit der jeweiligen Prozeßstufe verwendet. K(t) Die 64 verwendeten additiven Konstanten K(t) leiten sich aus irrationalen Zahlen, in Abhängigkeit der zugehörigen Prozeßstufe.

53 53 Blockhashwertberechnung A := h0 B := h1 C := h2 D := h3 FOR t = 0 TO 63 DO BEGIN T := B + ((A + ft(B,C,D) + W(t) + Kt), Rk) B := A A := D D := C C := T END h0 := h0 + A h1 := h1 + B h2 := h2 + C h3 := h3 + D

54 54 Bestimmung des Hashwertes HMD5 (N) = h0 || h1 || h2 || h3 Es wird nun solange Schritt 3 mit dem nächsten Block iteriert, bis alle Nachrichtenblöcke bearbeitet worden sind. Die Ausgabe des MD5 ist dann die Konkatenation der Worte h0 bis h3: HMD5 (N) = h0 || h1 || h2 || h3

55 55 Geburtstagsangriff Ein Versuch zwei Dokumente herzustellen, die denselben Hashwert besitzen. Man müsste versuchen, eine Person unter Vorspiegelung falscher Tatsachen zu einer Unterschrift unter A zu bewegen, um dann auch eine gültige Unterschrift für B zu haben. Dem Angriff liegt das so genannte "Geburtstagsparadoxon" zugrunde: In einem Raum müssten 183 Personen sein, damit mit einer Wahrscheinlichkeit größer 50 % eine Person anwesend ist, die den gleichen Geburtstag hat wie der Gastgeber. Es müssen aber nur 23 sein, um mit einer Wahrscheinlichkeit größer 50 % zwei Personen mit demselben (aber beliebigen) Geburtstag zu finden.

56 56 Geburtstagsangriff Angenommen, man arbeitet mit 64-Bit-Hashwerten, so würde es (bei einer Rechenleistung von 1 Mio. Hashwerten pro Sekunde) rund Jahre dauern, bis ein zweites Dokument mit dem gleichen Hashwert wie ein vorgegebenes Dokument gefunden wäre. Um ein Paar von Dokumenten mit übereinstimmendem Hashwert zu finden, benötigte derselbe Rechner aber nur rund eine Stunde. Um die Hashfunktion sicher gegenüber der Geburtstagsattacke zu machen, sollte man mit 160-Bit- Hashwerten arbeiten.

57 57 Digitale Signatur Eine Art von Siegel zu digitalen Daten. Wird unter Einsatz mathematischer Verfahren mit Hilfe eines Schlüssels erzeugt. So kann die Signatur jederzeit überprüft und damit der Signaturschlüssel-Inhaber und die Unverfälschtheit der Daten festgestellt werden.

58 58 Blinde Unterschrift Signieren einer Nachricht ohne ihren Inhalt zu kennen Verhüllen: A wählt zufälligen Verhüllungsfaktor r und berechnet mit dem öffentlichen Schlüssel m'=m r e mod (n) (e, n) des B: m'=m r e mod (n) s'=m ' d mod (n) Unterschreiben: B verwendet privaten Schlüssel d und berechnet: s'=m ' d mod (n) s=s'/r mod k s=m d mod (n) Enthüllen: A berechnet s=s'/r mod k und hat somit (s, m) derart, daß s=m d mod (n) m trägt die Signatur von B, jedoch kennt B die Zahl m nicht

59 59 Digitales Geld Die Bank signiert eine digitale Münze ohne zu wissen um welche Münze es sich genau handelt Anonymität und Authentizität PC von A generiert eine Zufallszahl = Digitale Münze PC von A verbindet die Münze mit einer zweiten Zufallszahl Bank von A signiert die so verhüllte Münze mit ihrem privaten Schlüssel PC von A nimmt die Verhüllung ab; Signatur der Bank verbleibt C und die Bank von A verwenden den öffentlichen Schlüssel der Bank, um bei Erhalt der digitalen Münze ihre Echtheit zu prüfen

60 60 Literatur Buchmann, Johannes. Einführung in die Kryptographie. Springer Verlag, Böhmer, Wolfgang. Virtual Private Networks. Carl Hanser Verlag, Oppliger, Rolf. IT-Sicherheit. Vieweg Verlag, Rijndael Specification


Herunterladen ppt "1 Kryptographische Verfahren Maxim Mariach Eugen Hofmann Ira Tsalman Seminar: Sicherheit in vernetzten Systemen. WS 2002/2003."

Ähnliche Präsentationen


Google-Anzeigen