Schlüsseletablierungsprotokolle



Ähnliche Dokumente
Primzahlen und RSA-Verschlüsselung

Kryptographische Verfahren auf Basis des Diskreten Logarithmus

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

1 Mathematische Grundlagen

Anleitung über den Umgang mit Schildern

Das RSA-Verschlüsselungsverfahren 1 Christian Vollmer

Grundlagen der Verschlüsselung und Authentifizierung (2)

Digitale Signaturen. Sven Tabbert

Kryptographische Anonymisierung bei Verkehrsflussanalysen

Informatik für Ökonomen II HS 09

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang

Kryptographie eine erste Ubersicht

1 topologisches Sortieren

Simulation LIF5000. Abbildung 1

Asymmetrische. Verschlüsselungsverfahren. erarbeitet von: Emilia Winkler Christian-Weise-Gymnasium Zittau

Mail-Signierung und Verschlüsselung

Zwischenablage (Bilder, Texte,...)

Erste Vorlesung Kryptographie

Informationsblatt Induktionsbeweis

Tipp III: Leiten Sie eine immer direkt anwendbare Formel her zur Berechnung der sogenannten "bedingten Wahrscheinlichkeit".

Sichere Anleitung Zertifikate / Schlüssel für Kunden der Sparkasse Germersheim-Kandel. Sichere . der

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom b

Zeichen bei Zahlen entschlüsseln

L10N-Manager 3. Netzwerktreffen der Hochschulübersetzer/i nnen Mannheim 10. Mai 2016

Würfelt man dabei je genau 10 - mal eine 1, 2, 3, 4, 5 und 6, so beträgt die Anzahl. der verschiedenen Reihenfolgen, in denen man dies tun kann, 60!.

Beweisbar sichere Verschlüsselung

S/W mit PhotoLine. Inhaltsverzeichnis. PhotoLine

Professionelle Seminare im Bereich MS-Office

Welche Bereiche gibt es auf der Internetseite vom Bundes-Aufsichtsamt für Flugsicherung?

Multimedia und Datenkommunikation

9 Schlüsseleinigung, Schlüsselaustausch

Erstellen einer Collage. Zuerst ein leeres Dokument erzeugen, auf dem alle anderen Bilder zusammengefügt werden sollen (über [Datei] > [Neu])

Erstellen von x-y-diagrammen in OpenOffice.calc

Version smarter mobile(zu finden unter Einstellungen, Siehe Bild) : Gerät/Typ(z.B. Panasonic Toughbook, Ipad Air, Handy Samsung S1):

Merkblatt: Sichere -Kommunikation zur datenschutz cert GmbH

Grundlagen der Theoretischen Informatik, SoSe 2008

Programmentwicklungen, Webseitenerstellung, Zeiterfassung, Zutrittskontrolle

FuxMedia Programm im Netzwerk einrichten am Beispiel von Windows 7

COMPUTER MULTIMEDIA SERVICE

Elexis-BlueEvidence-Connector

Gesprächsführung für Sicherheitsbeauftragte Gesetzliche Unfallversicherung

Enigmail Konfiguration

Statuten in leichter Sprache

Leseprobe. Bruno Augustoni. Professionell präsentieren. ISBN (Buch): ISBN (E-Book):

Persönliche Zukunftsplanung mit Menschen, denen nicht zugetraut wird, dass sie für sich selbst sprechen können Von Susanne Göbel und Josef Ströbl

Newsletter Immobilienrecht Nr. 10 September 2012

Verschlüsselung. Kirchstraße 18 Steinfelderstraße Birkweiler Bad Bergzabern Fabian Simon Bfit09

Nutzung von GiS BasePac 8 im Netzwerk

Wie Sie mit Mastern arbeiten

Zahlen und das Hüten von Geheimnissen (G. Wiese, 23. April 2009)

Systeme 1. Kapitel 6. Nebenläufigkeit und wechselseitiger Ausschluss

Inhalt. Seminar: Codes und Kryptographie

1. Was ihr in dieser Anleitung

Bedienungsanleitung: Onlineverifizierung von qualifiziert signierten PDF-Dateien

Was ist das Budget für Arbeit?

IRF2000 Application Note Lösung von IP-Adresskonflikten bei zwei identischen Netzwerken

Stammdatenanlage über den Einrichtungsassistenten

Diffie-Hellman, ElGamal und DSS. Vortrag von David Gümbel am

Handbuch Fischertechnik-Einzelteiltabelle V3.7.3

HANDBUCH PHOENIX II - DOKUMENTENVERWALTUNG

Linux User Group Tübingen

-Zertifikatsverwaltung

Handbuch. NAFI Online-Spezial. Kunden- / Datenverwaltung. 1. Auflage. (Stand: )

DAS PARETO PRINZIP DER SCHLÜSSEL ZUM ERFOLG

ONLINE-AKADEMIE. "Diplomierter NLP Anwender für Schule und Unterricht" Ziele

Wir machen neue Politik für Baden-Württemberg

Repetitionsaufgaben Wurzelgleichungen

S Sparkasse Hohenlohekreis. Leitfaden zu Secure

Zahlen auf einen Blick

Dokumentation zur Verschlüsselung von Dateien und Mails

RS-Flip Flop, D-Flip Flop, J-K-Flip Flop, Zählschaltungen

A. Ersetzung einer veralteten Govello-ID ( Absenderadresse )

Konfiguration eduroam

50. Mathematik-Olympiade 2. Stufe (Regionalrunde) Klasse Lösung 10 Punkte

Kapitel 4 Die Datenbank Kuchenbestellung Seite 1

Wichtiges Thema: Ihre private Rente und der viel zu wenig beachtete - Rentenfaktor

Daten sammeln, darstellen, auswerten

Lizenzierung von SharePoint Server 2013

50 Fragen, um Dir das Rauchen abzugewöhnen 1/6

Der Jazz Veranstaltungskalender für Deutschland, Österreich und die Schweiz

Das große ElterngeldPlus 1x1. Alles über das ElterngeldPlus. Wer kann ElterngeldPlus beantragen? ElterngeldPlus verstehen ein paar einleitende Fakten

10. Kryptographie. Was ist Kryptographie?

Viele Bilder auf der FA-Homepage

Anwendungshinweise zur Anwendung der Soziometrie

Stundenerfassung Version 1.8 Anleitung Arbeiten mit Replikaten

WLAN Konfiguration. Michael Bukreus Seite 1

Leichte-Sprache-Bilder

Einrichtung des Cisco VPN Clients (IPSEC) in Windows7

Kommentartext Medien sinnvoll nutzen

SICHERN DER FAVORITEN

BOKUbox. Zentraler Informatikdienst (ZID/BOKU-IT) Inhaltsverzeichnis

SMS/ MMS Multimedia Center

Kapitel 3 Bilder farblich verändern - Arbeiten mit Objekten

U3L Ffm Verfahren zur Datenverschlüsselung

Papa - was ist American Dream?

Das Mathematik-Abitur im Saarland

Hohe Kontraste zwischen Himmel und Landschaft abmildern

TESTEN SIE IHR KÖNNEN UND GEWINNEN SIE!

LU-Zerlegung. Zusätze zum Gelben Rechenbuch. Peter Furlan. Verlag Martina Furlan. Inhaltsverzeichnis. 1 Definitionen.

Wir arbeiten mit Zufallszahlen

Transkript:

Schlüsseletablierungsprotokolle Skript zum Vortrag von Thomas Krause im Rahmen des Proseminars Kryptographische Algorithmen und Protokolle an der Humboldt Universität zu Berlin Autor: Thomas Krause (krause@informatik.hu-berlin.de) Datum: 06. Februar 2006 - Seite 1 von 13 -

Gliederung 1. Einführendes Beispiel: SSH...3 2. Mögliche Verfahren...4 2.1 Schlüsseltransportprotokolle...4 2.1.1 Breitmaulfrosch-Protokoll...5 2.1.2 Needham-Schroeder-Protokoll...6 2.2 Schlüsselvereinbarungsprotokolle...7 2.2.1 Mathematische Hintergründe vom Diffie-Hellmann-Protokoll...7 2.2.2 Originales Diffie-Hellmann-Protokoll...9 2.2.3 Diffie-Hellmann-Protokoll mit Authentifizierung...10 2.2.4 Sicheres authentisches Diffie-Hellmann-Protokoll...10 3. Angriffe auf die Protokolle...12 3.1 Impersonation...12 3.2 Replay-Attacke...12 3.3 Man-in-the-middle-Angriff...12 4. Literatur...13 - Seite 2 von 13 -

1. Einführendes Beispiel: SSH Dieses einführende Beispiel soll den Sinn von Schlüsseletablierungsprotokollen deutlich machen. Angenommen man hat zwei Computer, die über einen unsicheren Weg kommunizieren sollen. Dies ist zum Beispiel bei der Fernwartung, also wenn ein Systemadministrator über seinen eigenen Computer auf einen entfernten Computer zugreift um administrative Arbeiten durchzuführen, der Fall. Auch Versionskontrollsysteme für Softwareentwicklung wie Subversion (SVN), Zugriff auf Dateien der eigenen Website bei einem fremden Server über sicheres FTP (SFTP) sind solche Anwendungsszenarien. Allen diesen Anwendungen ist gemein, dass immer kontinuierlich eine größere Menge an Daten ausgetauscht wird. Eine mögliche Idee könnte natürlich sein, einfach die Daten mit dem Public-Key des anderen zu verschlüsseln. Das wäre praktisch, weil auch zwischen untereinander unbekannten Personen oder Computern Daten ausgetauscht werden könnten. Allerdings ist das Public-Key-Verfahren ein asymmetrisches Verfahren und damit auch sehr ineffektiv, gerade wenn es um größere Datenmengen geht. Dieses Manko der asymmetrischen Verschlüsselung führt zur anderen Möglichkeit der symmetrischen Verschlüsselung mit einem gemeinsamen Geheimnis. Der Vorteil dieser Lösung besteht in seiner Geschwindigkeit. Sein Nachteil ist natürlich gerade das gemeinsame Geheimnis vorher vertraulich ausgetauscht werden müssen. Da man sich bei den beschriebenen Anwendungen meist nicht physisch treffen kann, ist ein geheimer Schlüsselaustausch oft nicht möglich. Die Lösung dieser Probleme besteht nun gerade in den Schlüsseletablierungsprotokollen, bei denen ein Schlüssel über unsichere Kanäle sicher ausgetauscht werden kann. SSH ist ein Protokoll, um mit fremden Rechnern sicher kommunizieren zu können. Es benutzt symmetrische Verschlüsselung mit einem geheim vereinbarten Schlüssel. Da das Internet an sich nur unsichere Übertragungswege bietet, haben sich viele Verfahren basierend auf SSH entwickelt. Ein Beispiel dafür ist gerade SFTP. - Seite 3 von 13 -

2. Mögliche Verfahren Allgemein kann man in zwei verschiedene Verfahren unterscheiden: Schlüsseltransportprotokolle und Schlüsselvereinbarungsprotokolle. 2.1 Schlüsseltransportprotokolle Die grundlegende Idee hinter Schlüsseltransportprotokollen ist, dass ein von einem Teilnehmer A generierter symmetrischer Schlüssel über einen unsicheren Kanal an Teilnehmer B übermittelt werden soll. Der Schlüssel soll dabei natürlich geheim bleiben. Pro Sitzung, also pro zeitlich zusammenhängenden Datenaustausch, soll immer nur ein Schlüssel benutzt werden. Folglich heißt dieser Schlüssel auch Sitzungsschlüssel. Dieses Prinzip ist wichtig, damit wenn ein Sitzungsschlüssel bekannt wird, das wird auch kompromittiert genannt, nicht die Kommunikation der restlichen Sitzungen entschlüsselt werden kann. Dadurch wird die Sicherheit deutlich erhöht. Welche Art von symmetrischer Verschlüsselung man für das Protokoll einsetzt ist hier nicht weiter von Bedeutung. Die Protokolle kümmern sich nur um den Transport des Schlüssels. Da es aber sehr sichere symmetrische Verschlüsselungsverfahren gibt, kann man sich einfach vorher auf eines dieser Verfahren einigen. Ein Begriff, der im Folgenden immer wieder genannt werden wird, ist die so genannte trusted third party kurz TTP. Diese vertrauenswürdige dritte Person, wobei Person auch im übertragenen Sinne als Protokollteilnehmer im Allgemeinen gemeint ist, spielt bei den später vorgestellten Protokollen eine teils sehr wichtige Rolle. Ohne diese Instanz könnte keines der vorgestellten Protokolle funktionieren. Das Problem dabei ist, das die beiden Kommunikationspartner der TTP auch wirklich vertauen können müssen. Dies ist im echten Leben nicht immer der Fall, da zum Beispiel einer staatlichen Institution oder einer privaten Firma nur bedingt Vertrauen zu schenken ist. Wenn man sich aber andererseits ein WLAN vorstellt, ist der Netzbetreiber eine TTP, da sie die Kommunikation auch sonst mithören könnte, da er das Netzwerk stellt. Zwei Teilnehmer A und B im Netz misstrauen sich vielleicht gegenseitig aber nicht dem Netzbetreiber. Bei unterschiedlichen Verfahren ist auch ein unterschiedlicher Grad an Vertrauen gegenüber der TTP vonnöten. Wie man leicht sieht, ist die Vertrauenswürdigkeit der TTP ein kritischer Sicherheitsaspekt. - Seite 4 von 13 -

2.1.1 Breitmaulfrosch-Protokoll TTP f K AZ t A, B, K AB f K BZ t Z, A, K AB Alice Abbildung 1: Ablauf des Breitmaulfrosch-Protokolls Bob Dieses Protokoll ist eigentlich das denkbar einfachste. Es werden nur zwei Datenpakete benötigt um den Schlüssel zu übertragen. Erwähnt wurde es zuerst 1989 eher nebenbei in einem Paper von Michael Burrows, Martín Abadi und Roger Needham. Warum es Breitmaulfrosch-Protokoll heißt, haben sie leider nicht erwähnt. Die benutzte symmetrische Verschlüsselungsfunktion wird mit f X bezeichnet. Dabei ist X der Schlüssel. K AB ist der Sitzungsschlüssel, der zur Kommunikation zwischen Alice und Bob benutzt werden soll. K AZ und K BZ sind die Schlüssel zwischen Alice und der TTP beziehungsweise Bob und der TTP. Die beiden letzten Schlüssel müssen natürlich vorher geheim ausgetauscht worden sein. Der TTP kommt hier eine Art Telefonbuchfunktion zu, da sie alle Teilnehmer bereits vorher kennen muss. Im ersten Schritt erzeugt Alice den Sitzungsschlüssel. Sie tritt nun mit der TTP in Kontakt und teilt ihr mit, dass sie mit Bob kommunizieren möchte. Den erzeugten Schlüssel K AB verschlüsselt Alice mit K AZ. Nun entschlüsselt die TTP den Sitzungsschlüssel und verschlüsselt ihn zusammen mit der Information, dass Alice Kontakt aufnehmen wollte, mit K BZ. Dieses Chiffrat wird an Bob gesendet. Wenn Bob nun die Nachricht entschlüsselt, besitzen Alice und Bob den gemeinsamen Sitzungsschlüssel. Die Zeitstempel t A und t Z sollen Replay-Attacken verhindern. Die Einfachheit des Protokolls bringt natürlich auch seine Probleme mit sich. So ist es fraglich, ob Alice wirklich gute Schlüssel erzeugen kann, da sie mit den begrenzten Ressourcen eines normalen Heimcomputers ausgerüstet ist. Noch drastischer wird dieses Problem, wenn so genannte Smartcards, also Kleinstcomputer im Scheckkartenformat (z. B. die Geldkarte), eingesetzt werden. Dass nur der Schlüssel übertragen wird und keine Authentifizierung vorgesehen ist eröffnet weit reichende Möglichkeiten für Angriffe. Zudem kennt die TTP den Sitzungsschlüssel und könnte damit theoretisch abgehörte Nachrichten entschlüsseln. Ihr muss also ein sehr hohes Vertrauen - Seite 5 von 13 -

entgegenbracht werden. 2.1.2 Needham-Schroeder-Protokoll TTP 1. r A AB 2. f K AZ (r A,K AB, B, f K BZ A, K AB ) Alice 3. f K BZ A,K AB 4. f K AB r B 5. f K AB r B 1 Bob Abbildung 2: Ablauf des Needham-Schroeder-Protokolls Dieses Protokoll löst einige der beim Breitmaulfrosch-Protokoll genannten Probleme. Soweit nicht anders beschrieben, haben die Bezeichner die gleiche Bedeutung wie bei der Beschreibung des Breitmaulfrosch-Protokolls. Zuerst teilt Alice der TTP mit, dass sie mit Bob kommunizieren möchte. r A ist dabei eine von Alice gewählte Zufallszahl, die öffentlich ist. Die TTP erzeugt einen Sitzungsschlüssel und chiffriert mit dem Schlüssel zwischen der TTP und Alice mehrere Informationen: r A um sich gegenüber von A zu authentifizieren. Nur die TTP und Alice können die Zufallszahl korrekt mit K AZ ver- oder entschlüsseln. Den Sitzungsschlüssel selbst. Die Information, dass mit Bob kommuniziert werden soll. Ein Tupel, dass vorher mit dem Schlüssel zwischen der TTP und Bob verschlüsselt wurde. Dieses Tupel enthält wiederum die Information, dass Alice Kontakt aufnehmen möchte und den Sitzungsschlüssel. Dieses Tupel wird doppelt verschlüsselt, damit Alice es nicht entschlüsseln kann. Im nächsten Schritt entschlüsselt Alice alles und verschickt das noch verschlüsselte Tupel weiter an Bob. Bob kann nun den Sitzungsschlüssel entschlüsseln. Damit sich Alice und Bob gegenseitig authentifizieren können, führen sie am Ende noch einen so genannten Handshake aus. Dabei wird von Bob eine Zufallszahl r B gewählt und verschlüsselt an Alice geschickt. Alice muss nun diese Zahl korrekt entschlüsseln können und sendet r B 1 mit dem Sitzungsschlüssel verschlüsselt zurück an Bob. Damit können Alice und Bob sicher sein, dass der jeweils andere den - Seite 6 von 13 -

Sitzungsschlüssel kennt. Diese Methode ist auch als Challenge-Response bekannt, bei der man sich von der Kenntnis eines Geheimnisses durch die Stellung von Aufgaben und deren korrekte Beantwortung des anderen überzeugt. Das Needham-Schroeder-Protokoll ist die Grundlage der Kerberos-Protokolle für Netzwerke. Allerdings treten auch hier Probleme auf. So kann sich Alice zwar über die Aktualität des Sitzungsschlüssels durch die Einmalzufallszahl überzeugen, Bob kann das jedoch nicht und fällt eventuell auf einen alten und kompromittierten Sitzungsschlüssel herein. Eine Lösung des Problems besteht darin, aus dem zuerst von der TTP erstellten und dann über Alice an Bob gesendeten Tupels ein Tripel zu machen. Dieses enthält zusätzlich einen Zeitstempel. Wie auch im vorherigen Protokoll kennt die TTP den Sitzungsschlüssel. Allerdings ist die TTP im Gegensatz zu Alice in der Lage, gute Schlüssel zu erzeugen. 2.2 Schlüsselvereinbarungsprotokolle Bei den Schlüsseltransportprotokollen musste der TTP ein hohes Vertauen entgegenbracht werden, da sie die Sitzungsschlüssel kannte. Bei den Schlüsselvereinbarungsprotokollen soll die TTP nur noch als Zertifizierungsinstanz dienen. Der gemeinsame Sitzungsschlüssel soll durch die beiden Kommunikationspartner in einem Dialog erzeugt werden. Trotzdem soll ein Angreifer durch Abhören der unsicheren Kommunikationswege nicht in den Besitz des Schlüssels kommen können. Das klingt natürlich erstmal ziemlich abenteuerlich, ist aber möglich. Dabei spielt das Diffie- Hellmann-Protokoll eine zentrale Rolle. 2.2.1 Mathematische Hintergründe vom Diffie-Hellmann-Protokoll Für jede Primzahl p existiert ein so genannter Generator g. Dieser hat die Eigenschaft, dass er alle ganzzahlige Zahlen von 0 bis p 1 erzeugen kann. Dabei gilt {g i mod p i=0,..., p 2 }={1,.., p 1} Wenn z. B. p=7 dann ist g=3 ein passender Generator. 3 0 mod 7=1mod 7=1 3 1 mod 7=3mod 7=3 3 2 mod 7=9 mod 7=2 3 3 mod 7=27mod 7=6 3 4 mod 7=81mod 7=4 3 5 mod 7=243mod 7=5 Das Interessante an der diskreten Exponentialfunktion g x mod p ist, dass sie eine Einwegsfunktion darstellt. Sie ist also in die eine Richtung leicht berechenbar, ihre Umkehrfunktion dagegen nur durch Ausprobieren zu lösen. Die Umkehrfunktion heißt in diesem Fall diskreter Logarithmus. Einwegsfunktionen sind in kryptographischen Anwendungen wegen ihrer Eigenschaften sehr beliebt. - Seite 7 von 13 -

Abbildung 3: Eine diskrete Exponentialfunktion mit p=53 und g=2 (f(x) = 2 x mod 53) Abbildung 3 zeigt exemplarisch eine diskrete Exponentialfunktion. Die Umkehrfunktion würde sich aus vertauschen der x- und y-achse ergeben. Offensichtlich sind die Werte der Funktion und vor allem auch der Umkehrfunktion sehr unregelmäßig verteilt. Die Frage ist nun, ob es effizient möglich ist aus den bekannten Größen g x mod p, p und g den gesuchten Wert x zu bestimmen. In einzelnen Spezialfällen ist das möglich, bei guter Auswahl der Eingabezahlen gibt es nach bisherigem Wissensstand keine effiziente Möglichkeit. - Seite 8 von 13 -

2.2.2 Originales Diffie-Hellmann-Protokoll Primzahl p Generator g für Z p * Alice Bob zufälliges x Z p * h A =g x mod p K =g xy mod p = h B x mod p Abbildung 4: Ablauf des originalen Diffie-Hellmann-Protokolls Dieses Protokoll wurde 1979 vorgeschlagen. In der gleichen Arbeit wurde das Public-Key-System vorgeschlagen, allerdings noch ohne einen konkreten Algorithmus. Dafür wurde dieses Schlüsselvereinbarungsprotokoll beschrieben. In diesem Protokoll sind die Primzahl p und der dazugehörige Generator g öffentlich bekannt. Diese müssen vorher von den Teilnehmern vereinbart werden. Zuerst wählt Alice eine Zufallszahl x. Das Ergebnis der diskreten Exponentialfunktion h A =g x mod p wird an Bob gesendet. Nun wählt Bob seinerseits eine Zufallszahl y und sendet h B =g y mod p an Alice. Zusammen mit der jeweiligen selbst gewählten Zahl können Alice und Bob den gemeinsamen Sitzungsschlüssel K=g xy mod p berechnen. Obwohl p, g und die versendeten Nachrichten bekannt sind bzw. durch passives Abhören in Erfahrung gebracht werden können ist das Verfahren gegenüber passiven Angriffen sicher. Weder x noch y können aufgrund des Einwegcharakters aus h A oder h B berechnet werden. Folgend eine Beispielrechnung. p=52 g=2 Alice und Bob wählen die Zufallszahlen x=6 und y=3. Dann werden diese Nachrichten verschickt. An Bob: h A =2 6 mod 5364 mod 53=11 An Alice: h B =2 3 mod 53=8 mod 53=8 h B =g y mod p Danach berechnen Alice und Bob jeweils den gemeinsamen Schlüssel. Alice: K=8 6 mod 53=262144 mod 53=262144 4946 53 =6 Bob: K=11 3 mod 53=1331 mod 53=1331 25 53 =6 zufälliges y Z p * K =g xy mod p = h A y mod p - Seite 9 von 13 -

Noch mal zur Kontrolle: K=g xy mod 53=2 18 mod 53=262144 mod 53=6 Allerdings weist das originale Diffie-Hellmann-Protokoll auch Schwächen auf, die in den nächsten Kapiteln gelöst werden sollen. 2.2.3 Diffie-Hellmann-Protokoll mit Authentifizierung Die originale Version vom Diffie-Hellmann-Protokoll ist anfällig für Man-in-the-middle-Angriffe, der im Gegensatz zum passiven Abhören einen aktiven Angriff darstellt. Eine mögliche Lösung wäre, feste Werte für h A und h B zu verwenden, die von einer TTP authentifiziert werden könnten. Dann würde allerdings immer der gleiche Schlüssel erstellt, wenn zwei bestimmte Teilnehmer kommunizieren. Dieser wäre dann kein echter Sitzungsschlüssel mehr. Daher wird bevorzugt mit Signaturen und Zertifikaten gearbeitet. Solche Überlegungen führen zum sicheren authentischen Diffie-Hellmann-Protokoll. 2.2.4 Sicheres authentisches Diffie-Hellmann-Protokoll Alice h A :=g a mod p K :=h B a mod p sig A := D A, h A,h B c A := f K sig A, Zert A entschlüsselt c B h A h B c A c B Bob h B :=g b mod p K :=h A b mod p entschlüsselt c A ; verifiziert sig A sig B := D B, h A, h B c B := f K sig B, Zert B verifiziert sig B Abbildung 5: Ablauf des sicheren authentischen Diffie-Hellmann-Protokolls Hier wird erst das originale Diffie-Hellmann-Protokoll ausgeführt. Danach benutzt Alice ein Public-Key-Verfahren, um h A und h B mit seinem privaten Schlüssel zu signieren. Damit beweist Alice das die vorherige Nachricht wirklich von Alice stammt. Diese Signatur zusammen mit einem Zertifikat verschlüsselt Alice mit dem gemeinsamen Schlüssel K und sendet dieses Chiffrat an Bob. Diese Verschlüsselung ist ein Handshake, um zu zeigen, dass Alice im Besitz des gemeinsamen Schlüssels ist. Ansonsten könnte ein Angreifer durch Impersonation Bob glaubhaft machen, der Sitzungsschlüssel K sei gemeinsames Geheimnis zwischen dem Angreifer und Bob. - Seite 10 von 13 -

Nach dem Versenden entschlüsselt und verifiziert die Nachricht von Alice. Nun macht Bob genau dasselbe wie Alice. Daraufhin kann auch Alice Bobs Nachricht entschlüsseln und verifizieren. Man könnte auf die Idee kommen, dass Bob c B schon zusammen mit h B versendet. Dies wäre aber ungünstig, weil die Berechnung der Signaturen viel Zeit kostet. Damit könnte ein Angreifer sehr viele Anfragen zur Eröffnung eines Diffie-Hellmann-Protokolls starten und damit Bob für andere Anfragen unerreichbar zu machen (DOS-Angriff). Bei der eingesetzten Variante muss der Angreifer zuerst diesen Aufwand betreiben und ein Verfügbarkeitsangriff wird dabei sehr erschwert. Bisher sind keine Probleme oder Schwächen dieses Protokolls bekannt. Es hat alle formalen Methoden zu Protokollsicherheit bestanden. Damit kann es zurzeit als sicher angesehen werden. Das sichere authentische Diffie-Hellmann-Protokoll wird zum Beispiel in IPSec v6 und beim als einführendes Beispiel genannten SSH eingesetzt. - Seite 11 von 13 -

3. Angriffe auf die Protokolle Man unterscheidet die Angriffe auf die Protokolle im Allgemeinen in passive und aktive Angriffe. Bei passiven Angriffen kann der Angreifer, der in der Literatur oft Eve genannt wird, nur die Kommunikation abhören, aber nicht selbst als Teilnehmer am Protokoll haben. Der Angreifer kann bei einem aktiven Angriff hingegen Informationen und kann Nachrichten verändern oder löschen. Er ist praktisch gesehen ein Teilnehmer beim Protokoll. Viele Protokolle sind nicht anfällig für passive Angriffe, können aber sehr leicht durch aktive Angriffe ausgehebelt werden. Es ist sehr schwer Schwachstellen gegenüber aktiven Angriffen in den Protokollen zu finden, da es sehr viele verschiedene Möglichkeiten zum Eingriff gibt. 3.1 Impersonation Bei der Impersonation schafft Eve, also der Angreifer, es sich gegenüber Bob als Alice auszuweisen. Dazu kann er versuchen Passwörter, Zertifikate oder Signaturen abzufangen und bei einem Angriff wieder zu verwenden. Solche Angriffe können durch Zeitstempel erschwert werden. Ein Beispiel. Eine Bank erhält einen Transaktionsauftrag von Conrad, Geld an Alice zu überweisen. Die vorherige Kommunikation zwischen Alice und der Bank wurde vom Angreifer Eve abgehört. Nun kann Eve die abgefangene Signatur benutzen, um sich gegenüber der Bank als Alice auszugeben. Dadurch kann Eve unerlaubterweise das Geld, das für Alice bestimmt war, erhalten. Für diesen Angriff ist zum Beispiel das Diffie-Hellmann-Protokoll ohne Handshake anfällig. 3.2 Replay-Attacke Bei der Replay-Attacke wird eine belauschte Kommunikation vom Angreifer gespeichert und später wieder in der richtigen Reihenfolge abgespielt. Dieser Angriff scheint auf den ersten Blick nicht allzu gefährlich zu sein. Das folgende Beispiel soll das Problem daher etwas deutlicher machen. Alice überweist über eine Bank einen bestimmten Geldbetrag an einen unseriösen Online-Shop mit Geschäftssitz auf den Caymaninseln. Der Betreiber des Online-Shops kann nun die Kommunikation zwischen Alice und der Bank belauschen. Später spielt der die Konversation in der Rolle von Alice gegenüber der Bank ab und kann sich so beliebig oft den Geldbetrag zum Schaden von Alice überweisen lassen. 3.3 Man-in-the-middle-Angriff Dieser Angriff ist einer der Machtvollsten. Dabei geht der Angreifer zwischen die Kommunikation von Alice und Bob. Gegenüber Alice gibt sich der Angreifer als Bob aus und gegenüber Bob als Alice. Damit kann er das Protokoll zwischen Alice und Bob fast beliebig manipulieren. Insbesondere das originale Diffie-Hellmann-Protokoll ist dafür anfällig. Um diesen Angriff zu verhindern, müssen solche Manipulationen erkannt werden können. - Seite 12 von 13 -

4. Literatur Kryptografie in Theorie und Praxis : mathematische Grundlagen für elektronisches Geld, Internetsicherheit und Mobilfunk / Albrecht Beutelspacher ; Heike B. Neumann ; Thomas Schwarzpaul. - 1. Aufl.. - Wiesbaden : Vieweg, 2005. - XIV, 319 S.. - ISBN: 3-528-03168-9 Practical cryptography / Niels Ferguson ; Bruce Schneier. - Indianapolis, Ind. : Wiley, 2003. - XX, 410 S.. - ISBN: 0-471-22894-X. - ISBN: 0-471-22357-3 Micheal Burrows, Martín Abadi, Roger Needham: A Logic of Authentication 1989, 1990 SSH, the Secure Shell : the definitive guide / Daniel J. Barrett ; Richard E. Silverman, and Robert G. Byrnes. - 2. ed.. - Beijing [u.a.] : O'Reilly, 2005 (2005). - XVIII, 645 S.. - ISBN: 0-596-00895-3 - Seite 13 von 13 -