Einwegfunktionen mit und ohne Falltr Technisches Seminar 2012

  • Slides: 30
Download presentation
Einwegfunktionen mit und ohne „Falltür“ Technisches Seminar 2012 von Bjarne Adam

Einwegfunktionen mit und ohne „Falltür“ Technisches Seminar 2012 von Bjarne Adam

Gliederung 1. Einführung – Was sind Einwegfunktionen 2. Einwegfunktion ohne Falltür - Hashalgorithmus 3.

Gliederung 1. Einführung – Was sind Einwegfunktionen 2. Einwegfunktion ohne Falltür - Hashalgorithmus 3. Zahlentheorie 4. Diffie-Hellman Schlüsselaustausch Protokoll 5. Einwegfunktion mit Falltür - RSA

1. Einführung Was sind Einwegfunktionen? Eine Funktion f(x) lässt sich „leicht“ berechnen! Die Umkehrfunktion

1. Einführung Was sind Einwegfunktionen? Eine Funktion f(x) lässt sich „leicht“ berechnen! Die Umkehrfunktion f‾¹(x) lässt nicht bzw. nur sehr „schwer“ berechnen! Was heißt leicht oder schwer berechnen?

1. Einführung Was sind Einwegfunktionen? leicht: Algorithmus der in Polynomialzeit den Funktionswert von f(x)

1. Einführung Was sind Einwegfunktionen? leicht: Algorithmus der in Polynomialzeit den Funktionswert von f(x) lösen kann: Ơ(nk) -> k konstant! schwer: kein Algorithmus der in Polynomialzeit f‾¹(x) bei bekanntem Funktionswert y lösen kann: Ơ(2 n) -> exponentiell wachsend!

1. Einführung Was sind Einwegfunktionen? Diskretes Logarithmus Problem - Diffie-Hellman-Protokoll - El. Gamal Verschlüsselung

1. Einführung Was sind Einwegfunktionen? Diskretes Logarithmus Problem - Diffie-Hellman-Protokoll - El. Gamal Verschlüsselung - Eleptic Curve Diffie-Hellman Faktorisierung eines Produktes großer Primzahlen - RSA

1. Einführung Was sind Einwegfunktionen? Einwegfunktionen mit Falltür (One-Way-Trapdoor) Effiziente Umkehrung der Funktion durch

1. Einführung Was sind Einwegfunktionen? Einwegfunktionen mit Falltür (One-Way-Trapdoor) Effiziente Umkehrung der Funktion durch Besitz einer Zusatzinformation (Falltür). Beispiel: Briefkasten

Gliederung 1. Einführung – Was sind Einwegfunktionen 2. Einwegfunktion ohne Falltür - Hashalgorithmus 3.

Gliederung 1. Einführung – Was sind Einwegfunktionen 2. Einwegfunktion ohne Falltür - Hashalgorithmus 3. Zahlentheorie 4. Diffie-Hellman Schlüsselaustausch Protokoll 5. Einwegfunktion mit Falltür - RSA

2. Einwegfunktion ohne Falltür Hashalgorithmus Abbildung eines beliebig langen Klartext auf einen Hashwert fester

2. Einwegfunktion ohne Falltür Hashalgorithmus Abbildung eines beliebig langen Klartext auf einen Hashwert fester länge. Ziel: - einzigartiger Fingerabdruck (Fingerprint) - keine Umkehrung von Hashwert auf Klartext Hashwert ist Hexadezimal

2. Einwegfunktion ohne Falltür Hashalgorithmus - Anforderungen Kollisionsresistent Kompression Chaos Surjektivität Effizienz Preimage resistant

2. Einwegfunktion ohne Falltür Hashalgorithmus - Anforderungen Kollisionsresistent Kompression Chaos Surjektivität Effizienz Preimage resistant Second Preimage resistant

2. Einwegfunktion ohne Falltür Hashalgorithmus – Ablauf Merkle-Demgard-Verfahren Padding Trennen Kompression Transformation (optional)

2. Einwegfunktion ohne Falltür Hashalgorithmus – Ablauf Merkle-Demgard-Verfahren Padding Trennen Kompression Transformation (optional)

2. Einwegfunktion ohne Falltür Hashalgorithmus – Ablauf Sha-1 Hashfunktion

2. Einwegfunktion ohne Falltür Hashalgorithmus – Ablauf Sha-1 Hashfunktion

2. Einwegfunktion ohne Falltür Hashalgorithmus - Anwendung Signierung von Daten: Wurde der Inhalt manipuliert?

2. Einwegfunktion ohne Falltür Hashalgorithmus - Anwendung Signierung von Daten: Wurde der Inhalt manipuliert? Prüfsummen: Wurden Daten fehlerfrei übertragen? Identifikation größerer Datenmengen mit Hashwert: Identifikation von Inhalten in Peer-to-Peer-Tauschbörsen Passwortschutz bei Internetseite Speicherung des Hashwert, nicht des Klartextes

Gliederung 1. Einführung – Was sind Einwegfunktionen 2. Einwegfunktion ohne Falltür - Hashalgorithmus 3.

Gliederung 1. Einführung – Was sind Einwegfunktionen 2. Einwegfunktion ohne Falltür - Hashalgorithmus 3. Zahlentheorie 4. Diffie-Hellman Schlüsselaustausch Protokoll 5. Einwegfunktion mit Falltür - RSA

3. Zahlentheorie Eulersche-Phi-Funktion Anzahl der Teilerfremden ganzen Zahlen einer Zahl n für alle ganzen

3. Zahlentheorie Eulersche-Phi-Funktion Anzahl der Teilerfremden ganzen Zahlen einer Zahl n für alle ganzen Zahlen 1 bis n. Wenn n = prim, dann gilt: φ( n ) = n – 1 Wenn n das Produkt zweier verschiedener Primzahlen ist, dann gilt: φ( p * q ) = (p – 1) * (q – 1) φ( 8 ) = 4 : { 1, 3, 5, 7 } φ( 11 ) = 10 : { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }

3. Zahlentheorie Prime Restklassengruppen ℤn* Berechnung ℤ 7*: Zeilen*Spalte % n Ordnung: φ( n

3. Zahlentheorie Prime Restklassengruppen ℤn* Berechnung ℤ 7*: Zeilen*Spalte % n Ordnung: φ( n ) = φ( 7 ) = 6

3. Zahlentheorie Primitivwurzeln Berechnung ℤ 7: Zeilen^Spalten % n Primitivwurzeln: φ( φ( n ))

3. Zahlentheorie Primitivwurzeln Berechnung ℤ 7: Zeilen^Spalten % n Primitivwurzeln: φ( φ( n )) = φ( φ( 7 )) = φ( 6) = 2 Zeile 3 und 5 sind PW!

Gliederung 1. Einführung – Was sind Einwegfunktionen 2. Einwegfunktion ohne Falltür - Hashalgorithmus 3.

Gliederung 1. Einführung – Was sind Einwegfunktionen 2. Einwegfunktion ohne Falltür - Hashalgorithmus 3. Zahlentheorie 4. Diffie-Hellman Schlüsselaustausch Protokoll 5. Einwegfunktion mit Falltür - RSA

4. Diffie-Hellman-Verfahren Schlüsselvereinbarung - 1976, Whitefield Diffie und Martin Hellman - Protokoll zur Schlüsselvereinbarung

4. Diffie-Hellman-Verfahren Schlüsselvereinbarung - 1976, Whitefield Diffie und Martin Hellman - Protokoll zur Schlüsselvereinbarung - Sichere Schlüsselvereinbarung über unsicheren Kanal - Diskretes Logarithmus Problem

4. Diffie-Hellman-Verfahren Funktion und Aufbau Exponentialfunktion mit Restbildung p = große Primzahl g =

4. Diffie-Hellman-Verfahren Funktion und Aufbau Exponentialfunktion mit Restbildung p = große Primzahl g = Primitivwurzel von p x = Zufallszahl mod : = Division mit Rest

4. Diffie-Hellman-Verfahren Ablauf Alice und Bob bestimmen g und p Alice Wählt Zufallszahl a

4. Diffie-Hellman-Verfahren Ablauf Alice und Bob bestimmen g und p Alice Wählt Zufallszahl a (geheim) A = ga mod p A wird Bob zugesendet Bob Wählt Zufallszahl b (geheim) B = gb mod p B wird Alice zugesendet S = Ba mod p S = Ab mod p

4. Diffie-Hellman-Verfahren Beispiel p = 23, g = 17 Alice Bob Zufallszahl a =

4. Diffie-Hellman-Verfahren Beispiel p = 23, g = 17 Alice Bob Zufallszahl a = 4 A = ga mod p A = 174 mod 23 = 8 Zufallszahl b = 9 B = gb mod p B = 179 mod 23 = 7 S = Ba mod p S = 74 mod 23 = 9 S = Ab mod p = 9 S = 89 mod 23 = 9

Gliederung 1. Einführung – Was sind Einwegfunktionen 2. Einwegfunktion ohne Falltür - Hashalgorithmus 3.

Gliederung 1. Einführung – Was sind Einwegfunktionen 2. Einwegfunktion ohne Falltür - Hashalgorithmus 3. Zahlentheorie 4. Diffie-Hellman Schlüsselaustausch Protokoll 5. Einwegfunktion mit Falltür - RSA

5. Einwegfunktion mit Falltür RSA - 1978, Ronald Linn Rivest, Adi Shamir und Leonard

5. Einwegfunktion mit Falltür RSA - 1978, Ronald Linn Rivest, Adi Shamir und Leonard Adleman - asymmetrische Verschlüsselung - Faktorisierung eines Produkts großer Primzahlen

5. Einwegfunktion mit Falltür RSA - Funktion und Aufbau Exponentialfunktion mit Restbildung n =

5. Einwegfunktion mit Falltür RSA - Funktion und Aufbau Exponentialfunktion mit Restbildung n = Produkt großer Primzahlen x = zu verschlüsselnde/entschlüsselnde Zahl d = öffentlicher / privater Teil von Schlüssel mod : = Division mit Rest

5. Einwegfunktion mit Falltür RSA - Ablauf Empfänger: - bestimmt Primzahl p und q

5. Einwegfunktion mit Falltür RSA - Ablauf Empfänger: - bestimmt Primzahl p und q - n = p*q - φ( n ) - bestimmt Zahl e: 1 < e < φ( n ) und teilerfremd zu φ( n ) - bestimmt Zahl d: e*d und φ( n ) teilerfremd - Öffentliches Zahlenpaar (n, e)

5. Einwegfunktion mit Falltür RSA - Ablauf Sender: - nimmt öffentliches Zahlenpaar (n, e)

5. Einwegfunktion mit Falltür RSA - Ablauf Sender: - nimmt öffentliches Zahlenpaar (n, e) - Verschlüsselt Nachricht g = ke % n - Sendet verschlüsselte Nachricht -Empfänger - Entschlüsselung durch k = gd % n

5. Einwegfunktion mit Falltür RSA - Beispiel: Zahl 14 Ver-/Entschlüsseln Empfänger: - bestimmt Primzahl

5. Einwegfunktion mit Falltür RSA - Beispiel: Zahl 14 Ver-/Entschlüsseln Empfänger: - bestimmt Primzahl p = 5 und q = 11 - n = p*q = 55 - φ( n ) = 40 - bestimmt Zahl e: 1 < e < φ( n ) und teilerfremd zu φ( n ) e=7 - bestimmt Zahl d: e*d und φ( n ) teilerfremd d = 23 - Öffentliches Zahlenpaar (55, 7)

5. Einwegfunktion mit Falltür RSA - Beispiel: Zahl 14 Ver-/Entschlüsseln Sender: - nimmt öffentliches

5. Einwegfunktion mit Falltür RSA - Beispiel: Zahl 14 Ver-/Entschlüsseln Sender: - nimmt öffentliches Zahlenpaar (55, 7) - Verschlüsselt Nachricht g = 147 % 55 = 9 - Sendet verschlüsselte Nachricht -Empfänger - Entschlüsselung durch k = 923 % 55 = 14

Schlusswort

Schlusswort

Ende Vielen Dank!

Ende Vielen Dank!