RSA, DHM und ihre Grundlagen

Lernpfad erstellt und betreut von:

Harald Burgsteiner

E-mail: harald.burgsteiner@fh-joanneum.at
Steckbrief
Kurs-Informationen
Ansicht mit Navigations-Frame
Lernpfadseite als User öffnen (Login)
Lernpfadseite bearbeiten (Autor)

Übersicht:       
Hilfe
1. Teilbarkeit von ganzen Zahlen
2. Restklassenkörper
3. RSA Algorithmus
4. DHM KEX
5. Literatur

DHM KEX
 
4.1 Diffie-Hellman-Merkle Key-Exchange

DHM KEX ist ein Schlüsselaustauschverfahren, mit dem zwei nicht authentifizierte Parteien über öffentliche, nicht verschlüsselte Kanäle sicher einen gemeinsamen Schlüssel generieren können. Es ist benannt nach den beiden Entwicklern Diffie und Hellman die den Algorithmus 1976 publizierten. Manchmal wird auch der Name Merkle hinzugefügt um anzuerkennen, dass der britische Geheimagent Merkle den Algorithmus eigentlich schon früher entwickelt hatte, ihn aber nicht veröffentlichen durfte.

Auch dieser Algorithmus funktioniert auf einem Restklassenkörper Z/pZ. Seine Sicherheit ist definiert über dem Problem des diskreten Logarithmus. Dabei wird angenommen, dass es nicht möglich ist eine bestimmte Hochzahl b der Gleichung ab mod p = c zu berechnen.

Das Verfahren benötigt eine große Primzahl p und eine Basiszahl g. Die Basiszahl ist mathematisch betrachtet ein sogenanntes erzeugendes Element bezüglich der Restklasse Z/pZ. Die Primzahl und die Basiszahl muss aber nicht jedes mal neu gesucht bzw. berechnet werden. Man kann einfach auf bestehende Paare zurückgreifen, denn die Kenntnis dieser Zahlen für eineN BelauscherIn (in der Kryptographie gerne "Eve" - von eavesdropping - benannt) keinerlei Vorteile wie wir noch sehen werden.


Lernstoff
 
4.2 Ablauf des Algorithmus

Wollen Alice und Bob einen gemeinsamen geheimen Schlüssel generieren, so können sie Dank DHM wie folgt vorgehen:

  1. Alice und Bob einigen sich auf eine gemeinsame Primzahl p und die Basiszahl g (nicht geheim!).
  2. Beide denken sich jeweils getrennt eine weitere Zufallszahl (muss nicht prim sein!) qA und qB, jeweils kleiner als (p-1) aus. Dies sind ihre privaten Schlüssel die sie geheim halten.
  3. Nun tauschen sie wieder öffentlich Zwischenergebnisse aus:
    • Alice sendet Bob das Ergebnis: rA = gqA mod p
    • Bob sendet Alice das Ergebnis: rB = gqB mod p
    Es gibt wie gesagt keine bekannte Methode um qA bzw. qB aus rA bzw. rB schneller als ausprobieren zu berechnen.
  4. Nun können beide daraus eine Zahl berechnen:
    • Alice berechnet: rBqA mod p = gqB*qA mod p =: K
    • Bob berechnet: rAqB mod p = gqA*qB mod p =: K

Auf diese Art und Weise errechnen Alice und Bob getrennt voneinander die selbe Zahl K. Die Berechnung dieser Zahl ist, wie du dir leicht überlegen kannst, mit Eves Kenntnis von nur g, p und den Zwischenergebnissen rA und rB unmöglich. Ihr fehlt eine der beiden Geheimzahlen qA oder qB.

Damit wird mit Hilfe der Restklassen auf eine einfache Art ein allgemein schwieriges Problem gelöst: eine geheime Zahl zwischen zwei Personen auszutauschen.


Lernstoff, Vertiefung
 
4.3 Beispiel zum DHM KEX

Berechne nun in deinem Lerntagebuch nach obigen Schema einen Schlüsselaustausch. Nimm an, p=23, g=5, qA=6 und qB=15

Kommst du auch auf die Lösung K=2?


Übungsaufgabe, Eintrag in das Lerntagebuch
 
4.4 Abschließendes Rätsel

Kannst du nun, nachdem du alle Kapitel durchgearbeitet hast, dieses Rätsel lösen?


Selfchecking Test
 
Lernpfadseite als User öffnen (Login)

Falls Sie noch kein registrierter User sind, können Sie sich einen neuen Zugang anlegen. Als registrierter User können Sie ein persönliches Lerntagebuch zu diesem Lernpfad anlegen.

 Zur Galerie
 Zu den Mathematischen Hintergründen
 Zum Lexikon
 Zu den interaktiven Tests
 Zu den Mathe-Links und Online-Werkzeugen
 Zur Welcome Page
   Übersicht über die Lernpfade
 Open Studio Materialien
 Open Studio Eingang
 Neuen Zugang anlegen
 Login