• Keine Ergebnisse gefunden

Schl¨ usselaustauschverfahren nach Diffie und Hellman (informativ)

Dabei ist |m| die Anzahl der Zeichen in m. Die Zeichen werden also je nach ihrer Position im String beginnend am Anfang zun¨achst mit 7, dann mit 3, dann mit 1 multipliziert, anschließend wieder mit7, dann mit 3, usw. F¨ur den Hashwert ergibt sich hieraus

H(m) = 7·72 + 3·82 + 1·89 + 7·80 + 3·84 + 1·79≡3 mod 11.

F¨ur die RSA-Signatur unterm erhalten wir damit

s≡H(m)d = 323≡181 mod 187.

Nun schickt Alice ihrem Kommunikationspartner Bob die Nachricht m, die Signaturs und ihren

¨offentlichen Schl¨ussel(n,e) = (187,7). Bob berechnet ebenfalls den Hashwert der Nachrichtm(die Hashfunktion ist ihm bekannt) und verifiziert die Signatur mittels

se≡1817≡3 mod 187 H(m) = 3.

Weil beide Werte gleich sind, akzeptiert Bob die Signatur.

3.8 Schl¨ usselaustauschverfahren nach Diffie und Hellman (informativ)

Mit den Verschl¨usselungsverfahren und digitalen Signaturverfahren wurden bereits zwei wich-tige Primitive der asymmetrischen Kryptographie vorgestellt. Im Weiteren werden sogenannte Schl¨usselaustauschverfahren thematisiert. Dabei ist das Problem zu l¨osen, geheime Schl¨ussel mit dem Kommunikationspartner ¨uber einen unsicheren (= abh¨orbaren, manipulierbaren) Kanal aus-zutauschen.

Stellen Sie sich folgendes Szenario vor: Alice und Bob wollen mit Hilfe eines symmetrischen Verschl¨usselungsverfahrens vertraulich kommunizieren und sind ¨uber einen unsicheren Kanal mit-einander verbunden. Der geheime Schl¨ussel soll bzw. muss infolge dessen ¨uber diesen Kanal aus-getauscht werden, ohne dass ein Angreifer den Schl¨ussel erf¨ahrt. Mit Hybridverfahren haben Sie in Abschnitt 2.2.3 einen L¨osungsansatz kennengelernt. In diesem Abschnitt lernen Sie mit dem Diffie-Hellman Protokoll einen weiteren L¨osungsansatz kennen.

Das Verfahren von Diffie und Hellman wurde 1976 von Whitefield Diffie und Martin Hell-man ver¨offentlicht. Es war die Geburtsstunde der Public Key Kryptographie. Das Diffie-Hellman-Verfahren ist ¨alter als das RSA-Verfahren, es ist aber weder ein Verschl¨usselungs- noch ein Signa-turverfahren. Es ist das wichtigste Schl¨usselaustauschverfahren. Die Sicherheit des Diffie-Hellman-Verfahrens beruht nicht auf dem Faktorisierungsproblem f¨ur nat¨urliche Zahlen6, sondern auf einem anderen zahlentheoretischen Problem, dem Diskreten-Logarithmus-Problem (DLP) in einer geeig-neten Gruppe. Darauf gehen wir weiter unten ein.

Wir stellen das urspr¨ungliche Diffie-Hellman-Verfahren vor. Heute gibt es Varianten in anderen Gruppen. Alice und Bob wollen sich auf einen gemeinsamen Schl¨ussel k f¨ur ein symmetrisches Verfahren (z.B. einen MAC oder AES) einigen, haben aber nur eine Kommunikationsverbindung zur Verf¨ugung, die abgeh¨ort werden kann. Sie f¨uhren folgende Schritte durch:

1. Alice und Bob einigen sich auf eine große Primzahl p und eine Zahl 2 ≤ g ≤ p−2 mit der besonderen Eigenschaft, dass die Potenzen gi modpbei Durchlaufen der M¨oglichkeiten 1≤i≤p−1 allep−1 Reste modulopdurchl¨auft. Ein solchesgheißtPrimitivwurzel modulo p. Die Primzahlpund die Primitivwurzelgsind ¨offentlich bekannt.

6Wie im Falle des RSA Verfahrens.

2. Alice w¨ahlt eine nat¨urliche Zahla∈ {0,1, ..., p−2} zuf¨allig und gleichverteilt. Das ist ihr privater Schl¨ussel. Sie berechnet

A≡ga modp.

Das errechnete Ergebnis A ist ihr ¨offentlicher Schl¨ussel, sie schicktA uber den unsicheren¨ Kanal an Bob. Sie h¨alt allerdings den Exponentenageheim.

3. Bob w¨ahlt eine nat¨urliche Zahl b ∈ {0,1, ..., p−2} zuf¨allig und gleichverteilt. Das ist sein privater Schl¨ussel. Er berechnet

B≡gb modp.

Das errechnete Ergebnis B ist sein ¨offentlicher Schl¨ussel, er schickt B uber den unsicheren¨ Kanal an Alice. Den Exponentenb h¨alt er geheim.

4. Um den gemeinsamen, geheimen Schl¨usselkzu berechnen, nutzen beide jeweils ihren eigenen geheimen Schl¨ussel sowie den Public Key des Anderen. Konkret berechnen sie

Alice: Ba≡ gba

≡ga·bmodp Bob: Ab≡ (ga)b≡ga·bmodp.

Der gemeinsame Schl¨ussel, welcher f¨ur die weitere Kommunikation verwendet wird, istk≡ ga·bmodp.

Wir gehen das Diffie-Hellman-Verfahren in Beispiel 20 an Hand sehr kleiner Zahlen exempla-risch durch.

Beispiel 20 (Diffie-Hellman Schl¨usselaustausch). Sei p = 17 und g = 3. Alice w¨ahlt a = 7, berechnet A ≡ga ≡37≡11 mod 17 und schickt das Ergebnis A= 11 an Bob. Bob w¨ahlt b = 4, berechnet B ≡gb ≡34 ≡13 mod 17. Das Ergebnis B = 13sendet er an Alice. Dann bestimmen Beide das gemeinsame Geheimnis wie folgt:

Alice: Ba≡ 137≡4 mod 17 Bob: Ab≡ 114≡4 mod 17.

Der gemeinsame Schl¨ussel ist alsok= 4.

Wir betrachten die Sicherheit des Diffie-Hellman-Verfahrens. Seine Sicherheit basiert nicht auf dem Faktorisierungsproblem, sondern auf dem Diffie-Hellman-Problem (DHP) bzw. dem diskreten Logarithmus Problem (DLP). Auf diese beiden Probleme sowie deren Zusammenhang gehen wir im Folgenden ein.

Bedingt durch die Kommunikation ¨uber einen unsicheren Kanal kennt ein Angreifer die Pa-rameter p,g,A und B. Damit kann er A·B ≡ga·gb ≡ga+b modp berechnen. Sein Ziel ist es aber, den geheimen Schl¨ussel k ≡ga·bmodpzu berechnen. Diese Aufgabe heißt Diffie-Hellman Problem (DHP).

Das DLP des Diffie-Hellman-Verfahrens in der vorgestellten Version ist dadurch definiert, zu gegebener Primzahl p, Basis g und Ergebnis der Exponentiation A den unbekannten, geheimen Exponenten a zu bestimmen mit A ≡ gamodp. Diese Aufgabe ist analog zur Logarithmusbe-rechnung, wie Sie es von den reellen Zahlen kennen, also z.B. zu gegebener Gleichung 64 = 2x den unbekannten Exponentenx= 6 zu bestimmen – nur, dass das DLP modulo pein schwieriges Problem ist.

Eine m¨ogliche L¨osung des DHP ist es, entweder das DLP f¨urAzur Basisgoder f¨urBzur Basis gzu l¨osen, also entwederaoderbzu bestimmen. Mit Hilfe eines dieser geheimen Exponenten kann der Angreiferkberechnen. Ein Angreifer, der das DLP l¨osen kann, ist daher auch in der Lage, das Diffie-Hellman Problem zu l¨osen. Also ist das DHP h¨ochstens so schwer wie das DLP.

Da das DHP in der Praxis mittels des DLP gel¨ost wird, m¨ussen wir die Diffie-Hellman-Parameter so w¨ahlen, dass die Sicherheitsschwelle von 100 Bit eingehalten wird, also mindes-tens 2100 Operationen ben¨otigt werden, um das DLP zu l¨osen. Es zeigt sich, dass das allgemeine

3.9. ZUSAMMENFASSUNG 71 Zahlk¨orpersieb in einer Variante auch zur L¨osung des DLP modulo p verwendet werden kann.

Folglich w¨ahlt man die Primzahl pim Diffie-Hellman-Verfahren in einer gleichen Gr¨oßenordnung wie die RSA-Zahln. Damit haben wir die Aussage aus dem Merksatz 6 motiviert.

Merksatz 6 (Sichere Diffie-Hellman-Parameter). Ist p eine Primzahl f¨ur das Diffie-Hellman-Verfahren, dann muss

p≈22048

gelten. Die privaten Exponenten a sowie b sollen zuf¨allig und gleichverteilt gew¨ahlt werden. Sie sind damit von der gleichen Gr¨oßenordnung wie p.

Ein wichtiges praktisches Problem besteht darin, dass Alice und Bob nicht sicher sein k¨onnen, dass der jeweilige ¨offentliche Diffie-Hellman-Parameter des Kommunikationspartners tats¨achlich vom jeweils anderen kommt. Hintergrund ist, dass einMan-In-The-Middle Angriff erfolgen kann.

Dabei tauscht ein Dritter sowohl mit Alice als auch mit Bob einen geheimen Schl¨ussel aus. Ali-ce glaubt, der Schl¨ussel komme von Bob und Bob glaubt, der Schl¨ussel komme von Alice. Alle Nachrichten, die Alice anschließend an Bob sendet, f¨angt der Dritte ab, entschl¨usselt diese und verschl¨usselt sie mit dem zweiten Schl¨ussel, welchen er mit Bob ausgetauscht hat. Schließlich kann die Nachricht weiter an Bob gesendet werden.

Ein ¨offentlicher Schl¨ussel muss also authentisch sein. Vor dem eigentlichen Diffie-Hellman Schl¨usselaustausch m¨ussen die Kommunikationspartner Alice und Bob ein digitales Zertifikat be-sitzen, das den jeweiligen ¨offentlichen Schl¨ussel an die zugeh¨orige Identit¨at bindet. Auf solche Zertifikate sowie die zugrundeliegende Public Key Infrastruktur gehen wir in Studienbrief 4 ein.

Kontrollaufgabe 24 (Diskretes Logarithmus Problem). Definieren Sie, was unter dem Begriff

”Diskretes-Logarithmus-Problem“ zu verstehen ist.

3.9 Zusammenfassung

In diesem Studienbrief wurden Ihnen die grundlegende Funktionsweise der heute verwendeten kryptographischen Verfahren erl¨autert. Im Besonderen sollen Sie hierbei beurteilen k¨onnen, un-ter welchen Voraussetzungen ein kryptographisches Verfahren nach aktuellem Stand als sicher gilt und f¨ur den praktischen Einsatz empfehlenswert ist. Allerdings sind diese Sicherheitsanfor-derungen abh¨angig von der technischen Entwicklung der Hardware und neuer Angriffe auf die Kryptosysteme.

G¨angige kryptographische Hashfunktionen m¨ussen hierbei eine Mindestl¨ange des Hashwerts von 200 Bit aufweisen, um die Berechnung von Kollisionen zu vermeiden. Empfehlenswert f¨ur die praktische Verwendung sind die Hashfunktionen der SHA-2 Familie ab einer Bitl¨ange von 256 Bit.

Bei den symmetrischen Verschl¨usselungsverfahren bietet der Advanced Encryption Standard (AES) selbst mit 128 Bit eine ausreichende Sicherheit im praktischen Umfeld. Ein wichtiges Krite-rium der Blockchiffren ist allerdings auch die gew¨ahlte Betriebsart. So gilt beispielsweise der ECB Modus aufgrund der kontextfreien Verschl¨usselung generell als unsicher. Empfehlenswert ist ein Modus, der einen zus¨atzlichen Parameter nutzt, z.B. der CBC Mode oder der Counter Mode.

Weiterhin haben Sie das asymmetrische RSA-Verfahren kennengelernt, das als Ver-schl¨usselungs- sowie Signaturverfahren eingesetzt werden kann. Bei Public Key Verfahren muss es dem Angreifer praktisch unm¨oglich sein, den geheimen Schl¨ussel aus den ¨offentlichen Parametern zu berechnen und so das Verfahren zu brechen. Public Key Verfahren basieren auf einem schwie-rigen mathematischen Problem, z.B. dem RSA-Problem (bzw. dem Faktorisierungsproblem).

In diesem Kapitel wurden auch Kombinationen von symmetrischen und asymmetrischen Ver-fahren (HybridverVer-fahren) vorgestellt.

Kapitel 4

Public Key Infrastruktur

4.1 Einf¨ uhrung

InLeitfrage den bisherigen Studienbriefen haben Sie grundlegende Konzepte und konkrete Beispiele f¨ur kryptographische Verfahren kennengelernt. Sie kennen AES als symmetrisches Verschl¨usselungsverfahren sowie RSA als Public Key Verfahren. RSA kann sowohl als Ver-schl¨usselungs- als auch als Signaturverfahren eingesetzt werden. Sie wissen auch, dass Signatur-verfahren der Erreichung des Schutzziels Authentizit¨at dienen. Allerdings haben wir bei all diesen Betrachtungen bisher ein zentrales Problem ausgeklammert. Die Leitfrage, der wir in diesem Stu-dienbrief nachgehen, lautet:

Ist der Signaturpr¨ufschl¨ussel echt, d.h. nutzt der Verifizierer Bob den authentischen Schl¨ussel von Alice zur Pr¨ufung der Signatur?

DieMan-In-The-Middle Frage nach der Notwendigkeit der Echtheit des Schl¨ussels kann anhand eines einfachen Szenarios deutlich gemacht werden: Alice und Bob wollen vertraulich und authen-tisch miteinander kommunizieren. Dazu besorgen sie sich jeweils den ¨offentlichen Schl¨ussel des Kommunikationspartners. Doch ein Angreifer setzt sich in die Mitte der Verbindung, man nennt ihn daher Man-in-the-Middle (MitM, manchmal auch Monkey-In-The-Middle-Angriff). Dieses Sze-nario ist in Abbildung 4.1 dargestellt. Gegen¨uber Alice tritt der MitM als Bob auf, gegen¨uber Bob hingegen als Alice. Der MitM schickt an Alice seinen ¨offentlichen Schl¨ussel und behauptet, das sei der Public Key von Bob. Analog schickt er auch an Bob seinen ¨offentlichen Schl¨ussel und behaup-tet, das sei der Public Key von Alice. Er f¨angt alle Nachrichten ab, die Alice und Bob austauschen.

Damit kann er alle ausgetauschten Nachrichten lesen oder auch manipulieren.

Zur L¨osung des Problems der Echtheit von ¨offentlichen Schl¨usseln ben¨otigen wir alsoVertrauen in die Echtheit von Schl¨usseln. Wir stellen in Abschnitt 4.2 die drei g¨angigen Vertrauensmodelle vor. Anschließend besprechen wir in Abschnitt 4.3 den Aufbau einer Public Key Infrastruktur.

Abbildung 4.1: Man-In-The-Middle Angriff 73