Diffie Hellmann: Unterschied zwischen den Versionen

Aus xinux.net
Zur Navigation springen Zur Suche springen
(Die Seite wurde geleert.)
 
(8 dazwischenliegende Versionen von 4 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
=Grundlagen=
 
*Der Diffie-Hellman-Schlüsselaustausch ist ein Protokoll zur Schlüsselvereinbarung.
 
*Es ermöglicht, dass zwei Kommunikationspartner über eine öffentliche, abhörbare Leitung einen gemeinsamen geheimen Schlüssel in Form einer Zahl vereinbaren können, den nur diese kennen und ein potenzieller Lauscher nicht berechnen kann.
 
*Der dadurch vereinbarte Schlüssel kann anschließend für ein symmetrisches Kryptosystem verwendet werden.
 
*Unterschiedliche Varianten des Diffie-Hellman-Merkle-Verfahrens werden heute für die Schlüsselverteilung in den Kommunikations- und Sicherheitsprotokollen des Internet eingesetzt.
 
=Prinzp=
 
[[Datei:dh1.|500px]]
 
  
=Beispiel=
 
Das folgende Beispiel dient zur Veranschaulichung und benutzt deshalb sehr kleine Zahlen.
 
In der tatsächlichen Anwendung werden dagegen Zahlen mit mindestens mehreren hundert Stellen benutzt.
 
==Berechnung==
 
*Alice und Bob einigen sich auf die beiden öffentlichen Schlüssel <math>p = 13</math> und <math>g = 2</math>.
 
*Alice wählt die Zufallszahl <math>a = 5</math> als geheimen Schlüssel.
 
*Nun berechnet Alice <math>A = g^a\ \bmod\ p = 2^5\ \bmod\ 13 = 6</math>
 
*Alice sendet <math>A</math> an Bob.
 
*Bob wählt die Zufallszahl <math>b = 8</math> als geheimen Schlüssel
 
*Bob berechnet <math>B = g^b\ \bmod\ p = 2^8\ \bmod\ 13 = 9</math>
 
*Bob sendet <math>B</math> an Alice.
 
*Alice berechnet <math>K_1 = B^a\ \bmod\ p = 9^5\ \bmod\ 13 = 3</math>.
 
*Bob berechnet <math>K_2 = A^b\ \bmod\ p = 6^8\ \bmod\ 13 = 3</math>.
 
*Beide erhalten das gleiche Ergebnis <math>K = K_1 = K_2 = 3</math>.
 
 
==Sicherheit==
 
*Die Lauscherin Eve kann zwar die Zahlen 13, 2, 6 und 9 mithören,
 
*Das eigentliche gemeinsame Geheimnis von Alice und Bob <math>K = 3</math> bleibt ihr aber verborgen.
 
*<math>K = 3</math> kann als Schlüssel für die nachfolgende Kommunikation verwendet werden.
 
==Lauschen==
 
*Mit Hilfe der abgefangenen Nachrichten kann Eve immerhin die folgenden Gleichungen aufstellen:
 
*:<math>6 = 2^a\ \bmod\ 13</math>
 
*:<math>9 = 2^b\ \bmod\ 13</math>
 
*Daraus kann sie beispielsweise durch Ausprobieren die beiden geheimen Zahlen <math>a=5</math> und <math>b=8</math> bestimmen.
 
*Den vereinbarten Schlüssel <math>K</math> von Alice und Bob kann sie nun mit
 
*:<math>K = g^{ab}\ \bmod\ p</math> berechnen.
 
*Wenn jedoch die Primzahl <math>p</math> groß genug gewählt wird und <math>g</math>
 
*ein Generator der Gruppe <math>\Z_p^*</math> ist, ist es für Eve zu aufwändig,
 
*um alle Zahlen zwischen <math>1</math> und <math>p-1</math> durchzuprobieren,
 
*die als Resultat der modularen Potenz <math>g^a\ \bmod\ p</math> in Frage kommen
 
==Script zum berechnen==
 
*[[Diffie-Hellman-Script]]
 

Aktuelle Version vom 16. November 2019, 17:20 Uhr