Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Jointly Generating Random Keys for the Fully Distributed Environment Sebastian Faust K.U. Leuven Kryptowochenende, 2. Juli 2006

Ähnliche Präsentationen


Präsentation zum Thema: "Jointly Generating Random Keys for the Fully Distributed Environment Sebastian Faust K.U. Leuven Kryptowochenende, 2. Juli 2006"—  Präsentation transkript:

1 Jointly Generating Random Keys for the Fully Distributed Environment Sebastian Faust K.U. Leuven Kryptowochenende, 2. Juli /29

2 Überblick 2. Grundlagen 1. Motivation 3. Das k-JGRK Protokoll 4. Zusammenfassung und weiterführende Ansätze 2/29

3 1. Motivation – Verteilte Netzwerke Wieso ist Schlüsselerzeugung in verteilten Netzwerken notwendig? Hmm...Kann man Charlie Brown vertrauen? Er ist so leichtgläubig. Patty war fies zu mir. Sie hat mein Schnuffeltuch gewaschen? Charlie Brown ist ja eigentlich ganz süß, aber was ist mit Lucy??? Kein Problem! Da kann ich helfen /29

4 1. Motivation – Verteilte Netzwerke Aber was passiert, wenn Snoopy nicht vertrauenswürdig ist? /29

5 1. Motivation – Überprüfbarkeit Wieso ist Überprüfbarkeit wichtig? /29

6 2. Grundlagen – Das Netzwerk… Existenz von zuverlässigen Broadcastkanalen Existenz von zuverlässigen Broadcastkanalen Deterministisches Protokoll ( n Parteien, t < n sind korrumpiert): Deterministisches Protokoll ( n Parteien, t < n sind korrumpiert): 6/29 Anzahl Nachrichten: O(nt) Anzahl Nachrichten: O(nt)

7 2. Grundlagen – Shamir Secret Sharing secret s1s1s1s1 s2s2s2s2 s3s3s3s3 s4s4s4s4 Verteilung eines Geheimnisses: 7/29

8 2. Grundlagen – Shamir Secret Sharing s1s1s1s1 s2s2s2s2 s3s3s3s3 s4s4s4s4 secret 8/29 Rekonstruktion des Geheimnisses:

9 2. Grundlagen – Shamir Secret Sharing s1s1s1s1 s2s2s2s2 s3s3s3s3 s4s4s4s4 Rekonstruktion des Geheimnisses: secret 9/29

10 2. Grundlagen – Verifiable Secret Sharing secret s1s1s1s1 s2s2s2s2 s3s3s3s3 s4s4s4s4 Probleme bei Shamirs Secret Sharing Verfahren: 10/29

11 2. Grundlagen – Verifiable Secret Sharing s1s1s1s1 s2s2s2s2 s3s3s3s3 s4s4s4s4 cretse Probleme bei Shamirs Secret Sharing Verfahren: 11/29

12 2. Grundlage – Verifiable Secret Sharing s1s1s1s1 s4s4s4s4 cretse Probleme bei Shamirs Secret Sharing Verfahren: s2s2s2s2 s3s3s3s3 Lösung: Verifiable Secret Sharing 12/29

13 2. Grundlagen – Distributed Key Generation (DKG) Ziel: Gemeinschaftliches Erzeugen von Schlüsseln Keine Partei kennt den geheimen Schlüssel x Keine Partei kennt den geheimen Schlüssel x Zur Erzeugung und Verteilung wird keine TTP benötigt Zur Erzeugung und Verteilung wird keine TTP benötigt 13/29 x ist zufällig notwendig für formale Sicherheitsbeweise x ist zufällig notwendig für formale Sicherheitsbeweise

14 2. Grundlagen – Distributed Key Generation (DKG) Schlüsselerzeugung für Kryptosysteme basierend auf DLOG Öffentlicher Schlüssel: y = g x Öffentlicher Schlüssel: y = g x Teilstück: s i = f(i) Teilstück: s i = f(i) VSS Verifikaitonswerte, um Korrektheit der Verteilung zu überprüfen. VSS Verifikaitonswerte, um Korrektheit der Verteilung zu überprüfen. Partei P i erhält: Partei P i erhält: [GJKR99]: Secure distributed key generation for Discrete- Log Based Cryptosystems Dominierender Faktor des Kommunikationsaufwandes Dominierender Faktor des Kommunikationsaufwandes Anzahl der zuverlässigen Broadcasts: O(nt) Anzahl der zuverlässigen Broadcasts: O(nt) 14/29

15 Erzeugung & Verteilung von k Schlüsselpaaren für DLOG Kryptosysteme 3. k-JGRK – Ziele… Alle Schlüssel werden gemäß einer Gleichverteilung gewählt Jeder geheime Schlüssel ist genau einer Partei bekannt Robust und sicher Warum nicht VSS? Korrumpierte Dealer können geheimen Schlüssel beliebig wählen Wieso ist die Zufälligkeit von Schlüsseln wichtig? Formale Sicherheitsbeweise 15/29

16 3. k-JGRK – Anwendungsgebiete… [GJ04] Dining Cryptographers Revisited Autoren empfehlen Einsatz von GJKR-DKG Wahrung der Zufälligkeit der Schlüssel für formalen Sicherheitsbeweis Aber: hoher Kommunikationsaufwand O(knt) Broadcasts Erweiterungen am Protokoll sind notwendig Lösung: k-JGRK Direkter Ansatz keine zusätzlichen Schritte notwendig Reduktion des Kommunikationsaufwandes auf O(kt), k n Erzeugung von k zufälligen Schlüsseln für DC-Netz 16/29

17 k-JGRK Protokoll Initial Phase (1-mal ausführen) JGRK-Phase (k-mal wiederholen) 1. GJKR-DKG: Verteilung von X für Schwellenwert ElGamal 2. GJKR-DKG: Commitments 17/29 3. k-JGRK – Protokoll

18 JGRK Phase 1. Gemeinsame Erzeugung von x i für P i : 2. Geheimnis x i wird gemäß des Feldman-VSS Verfahrens von P i verteilt (Details: nächsten Folien) In jeder Wiederholung agiert eine Partei P i als Dealer In jeder Wiederholung agiert eine Partei P i als Dealer Wiederholungen sind in 2 Schritte untergliedert: Wiederholungen sind in 2 Schritte untergliedert: x i ist gemäß einer Gleichverteilung gewählt x i ist gemäß einer Gleichverteilung gewählt Nur P i kennt x i Nur P i kennt x i Alle Parteien kennen den Verifikationswert A i = g x i von x i Alle Parteien kennen den Verifikationswert A i = g x i von x i 18/29 3. k-JGRK – Protokoll

19 4. Beispiel: Erzeugung von x (1/4) r 1 Є R Z q r4 ЄRZqr4 ЄRZq Alle Parteien kennen: r3 ЄRZqr3 ЄRZq r2 ЄRZqr2 ЄRZq P1P1P1P1 P2P2P2P2 P3P3P3P3 P4P4P4P4 commit 1 commit 2 commit 4 commit 2 Broadcaste commit 1 Broadcaste commit 2 Broadcast commit 4 Da mache ich nicht mit… (1) Disqualifikatio n von Charlie Voraussetzungen: Ergebnisse der Initialphase: P i ist auf r i festgelegt. Das Commitment ist Unconditional Hiding. 19/29

20 (2) z1 ЄRZqz1 ЄRZq z2 ЄRZqz2 ЄRZq z4 ЄRZqz4 ЄRZq Garantiert, dass es sich beim Wert r i aus dem Commitment um den zufällige Teil des Chiffretextes C i handelt. Ungültiger Beweis Ausschluss 20/29 Alle Parteien kennen: Voraussetzungen: Ergebnisse der Initialphase: 4. Beispiel: Erzeugung von x (2/4)

21 Nach (2) kann jede Partei das folgende Produkt berechnen: ElGamal ist multiplikativ homomorph C ist Verschlüsselung von: Warum ist F tot zufällig in G? rand? Wenn das DDH-Problem in G schwierig ist, dann erhält ein Angreifer für gegebenen, öffentlichen Schlüssel Y und Chiffretext C i einer ehrlichen Partei P i keine Informationen über den zugehörigen Klartext F i. Zufälligkeit von F tot kann formal bewiesen werden Angreifer muss seinen Anteil ? ohne Kentniss von rand wählen. Wieso? 21/29 4. Beispiel: Erzeugung von x (2/4)

22 (3) â Є R Z q   Wesentlich für Sicherheit: Nur P D kennt â 22/29 Alle Parteien kennen: Voraussetzungen: Ergebnisse der Initialphase: 4. Beispiel: Erzeugung von x (3/4)

23 (4) Benutze 2 Teil- entschlüsselungen W i zur Rekonstruktion von F tot := Decrypt(C) Überprüfe Korrekthei t 23/29 Alle Parteien kennen: Voraussetzungen: Ergebnisse der Initialphase: 4. Beispiel: Erzeugung von x (4/4)

24 x ist zufällig: Nur P D kennt x: Jede Partei kennt den Verifikationswert A = g x von x: 24/29 4. Beispiel: Erzeugung von x (4/4)

25 3. k-JGRK – Korrektheit Definition 1 (t-Korrektheit): qualifizierten Dealer P D mit geheimen Schlüssel x und öffentlichen Schhlüssel y=g x die folgenden Bedingungen gelten: k-JGRK ist t-korrekt, wenn für jeden qualifizierten Dealer P D mit geheimen Schlüssel x und öffentlichen Schhlüssel y=g x die folgenden Bedingungen gelten: (C2) Alle ehrlichen Parteien besitzen einen identischen öffentlichen Schlüssel y=g x (C3) x wird zufällig aus Z q gewählt. (C4) Betrug führt zum Ausschluss (C1) Jede Teilmenge von t+1 ehrlichen Parteien kann den geheimen Schlüssel rekonstruieren. Theorem 1 (t-Korrektheit): Wenn die DDH Annahme wahr ist, dann existiert kein probabilistischer, polynomiell zeitbeschränkter Angreifer mit höchstens t < n/2 Parteien unter Kontrolle, der die Korrektheitseigenschaften aus Definition 1 aufheben kann. 25/29

26 3. k-JGRK – Sicherheit Definition 2 (t-Sicherheit): Wir bezeichnen k-JGRK als sicher, wenn kein probabilistischer, polynomiellzeitbeschränkter Angreifer A S existiert, der durch Teilnahme am Protokoll den geheimen Schlüssel x einer ehrlichen Partei berechnen kann. Theorem 2 (t-Korrektheit): Wenn die DL Annahme wahr ist, dann existiert kein polynomiell zeitbeschränkter Angreifer A S, der höchstens t < n/2 Parteien unter seiner Kontrolle hat. 26/29

27 4. Zusammenfassung Anzahl an Broadcasts: O(kt) Jedes Geheimnis x ist nur einer Partei bekannt Alle Geheimnisse sind zufällig Fromale Beweise von Korrektheit und Sicherheit 27/29

28 4. Weiterführende Ansätze… 1. Steigerung der Kommunikationseffizienz durch probabilistische Protokolle? 2. Einsatz unserer Techniken für Kryptosystem, die nicht auf DLOG basieren (z.B. RSA, Paillier) 28/29

29 Fragen? ? ? ? ? 29/29 Kryptowochenende, 2. Juli 2006


Herunterladen ppt "Jointly Generating Random Keys for the Fully Distributed Environment Sebastian Faust K.U. Leuven Kryptowochenende, 2. Juli 2006"

Ähnliche Präsentationen


Google-Anzeigen