• Keine Ergebnisse gefunden

Verschl¨ usselungsverfahren

Merksatz 1 (Prinzip von Kerckhoffs). Ein Angreifer kennt alle Details des kryptographischen Verfahrens, nur die privaten oder symmetrischen Schl¨ussel sind geheim.

Heute eingesetzte kryptographische Verfahren befolgen das in Merksatz 1 formulierte Prinzip von Kerckhoffs. Zum Beispiel wurde der aktuelle symmetrische Verschl¨usselungsstandard AES (Advanced Encryption Standard) in einem mehrere Jahre dauernden, ¨offentlichen Begutachtungs-prozess ausgew¨ahlt. Jedes Detail von AES ist bekannt, die Sicherheit von AES h¨angt dann nur an der Geheimhaltung der verwendeten Schl¨ussel. Wird ein Verfahren hingegen geheim gehalten, so spricht man auch vonSecurity by Obscurity. Dieses Prinzip hat sich in der Security-Community aber nicht durchgesetzt. Zu groß ist die Sorge, dass durch eine fehlende Expertenbegutachtung ein schwerwiegender Designfehler ¨ubersehen wird.

Kontrollaufgabe 5 (Kryptologie). 1. Beschreiben Sie den Begriff der Kryptologie.

2. Was wird unter dem Begriff der Kryptoanalyse verstanden?

3. Welches Schutzziel wird mit Verschl¨usselungsverfahren gew¨ahrleistet?

2.2 Verschl¨ usselungsverfahren

Nachdem Sie sich mit der allgemeinen Definition der Kryptologie auseinandergesetzt ha-ben, werden in diesem Abschnitt unterschiedliche Funktionsweisen und Prinzipien der Ver-schl¨usselungsverfahren verdeutlicht. Allgemein unterscheiden wir die folgenden Klassen von Verschl¨usselungsverfahren: symmetrische, asymmetrische und hybride kryptographische Ver-schl¨usselungsverfahren. Die Unterscheidung wird getroffen an Hand der Eigenschaft, wer Zugriff auf welchen Schl¨ussel hat. Der Abschnitt orientiert sich an der Literatur von?] und?].

Um zu verschl¨usseln, ben¨otigen wir geheimzuhaltende Daten (sogenannte Klartexte), die ver-schl¨usselten Klartexte, kryptographische Schl¨ussel sowie Ver- und Entschl¨usselungsvorschriften.

Dazu geben wir eine formale Beschreibung in Definition 19 an.

Definition 19 (Kryptosystem). Ein Kryptosystem oder Verschl¨usselungsverfahren ist ein F¨unftupelP,C,K,E,D mit folgenden Eigenschaften:

1. P ist eine Menge. Sie heißt Klartextraum. Ihre Elemente heißen Klartexteinheiten.

2. C ist eine Menge. Sie heißt Chiffretextraum. Ihre Elemente heißen Chiffretexte oder Schl¨usseltexteinheiten.

3. K ist eine Menge. Sie heißt Schl¨usselraum. Ihre Elemente heißen Schl¨ussel.

4. E = {E(m, e) : m ∈ P, e ∈ K} ist eine Familie von Funktionen E(m, e) : P → C. Ihre Elemente heißen Verschl¨usselungsfunktionen.

5. D={D(c, d) :c∈ C, d∈ K}ist eine Familie von FunktionenD(c, d) :C → P. Ihre Elemente heißen Entschl¨usselungsfunktionen.

6. F¨ur jedes e∈ K existiert eind∈ K, sodass f¨ur alle Klartexteinheitenm∈ P die Gleichung D(E(m, e), d) =m gilt. Der Schl¨usseleheißt Verschl¨usselungs-oder Chiffrierschl¨ussel, der zugeh¨orige Schl¨ussel dheißt Entschl¨usselungs-oder Dechiffrierschl¨ussel.

Die Bezeichner der Mengen in Definition 19 lehnen sich jeweils an die englischen Begriffe an.

Wir erl¨autern diese im Folgenden:

1. Klartext heißt im Englischen plaintext. Daher w¨ahlt man P als Bezeichner der Menge al-ler Klartexteinheiten. Ein langer Klartext wird stets in die Klartexteinheiten zerlegt, be-vor verschl¨usselt werden kann, denn die Verschl¨usselungsfunktion kann nur auf eine Klar-texteinheit angewendet werden. In den historischen Kryptosystemen waren Klartexteinhei-ten meist einzelne Buchstaben oder Buchstabengruppen, bei modernen IT-basierKlartexteinhei-ten Ver-schl¨usselungsverfahren ist eine Klartexteinheit ein Block von Bytes (ein typische L¨ange sind 16 Byte, d.h. 128 Bit pro Klartexteinheit).

2. Geheim- oder Chiffretext heißt im Englischenciphertext. Daher w¨ahlt manCals Bezeichner der Menge aller Geheimtexteinheiten. Wie bei den Klartexten zerlegt man einen langen Chiffretext stets in seine Chiffretexteinheiten, bevor man entschl¨usselt. Bei IT-basierten Verschl¨usselungsverfahren ist 128 Bit eine typische Gr¨oße f¨ur eine Chiffretexteinheit.

3. Schl¨ussel heißt im Englischen key. Daher w¨ahlt man K als Bezeichner der Menge al-ler kryptographischen Schl¨ussel. K enth¨alt sowohl die Schl¨ussel zum Verschl¨usseln (Ver-schl¨usselungsschl¨ussel e, wobei e f¨ur ’encrypt’ steht) als auch zum Entschl¨usseln (Ent-schl¨usselungsschl¨usseld, wobeidf¨ur ’decrypt’ steht).

4. Verschl¨usseln heißt im Englischento encrypt. Daher w¨ahlt manE als Bezeichner der Menge aller Verschl¨usselungsfunktionen. Eine Verschl¨usselungsfunktion ben¨otigt stets einen Ver-schl¨usselungsschl¨ussel e zum Verschl¨usseln. Dann verschl¨usselt E(m, e) die gegebene Klar-texteinheitm∈ Pzur zugeh¨origen Chiffretexteinheit.

5. Entschl¨usseln heißt im Englischento decrypt. Daher w¨ahlt manDals Bezeichner der Menge aller Entschl¨usselungsfunktionen. Eine Entschl¨usselungsfunktion ben¨otigt stets einen Ent-schl¨usselungsschl¨usseldzum Dechiffrieren. Dann entschl¨usseltD(c, d) die gegebene Chiffre-texteinheitd∈ C.

6. Die letzte Bedingung in Definition 19 besagt, dass das Kryptosystem funktioniert: Ent-schl¨usseln mit dem zugeh¨origen Entschl¨usselungsschl¨ussel liefert wieder den urspr¨unglichen Klartext.

Wir unterscheiden die folgenden drei Klassen kryptographischer Verfahren:

1. Symmetrische Verfahren: Senderin Alice (A) nutzt zum Verschl¨usseln den selben Schl¨ussel wie Empf¨anger Bob (B) beim Entschl¨usseln. Wir gehen auf symmetrische Kryptosysteme in Abschnitt 2.2.1 ein.

2. Asymmetrische Verfahren: Senderin Alice (A) nutzt zum Verschl¨usseln einen ¨offentlich von Bob zur Verf¨ugung gestellten Verschl¨usselungsschl¨ussel e. Bob (B) nutzt dann den zu-geh¨origen Entschl¨usselungsschl¨usseld, den er geheim halten muss, zum Entschl¨usseln. Wir gehen auf asymmetrische Kryptosysteme in Abschnitt 2.2.2 ein.

3. Hybride Verfahren: Weil sowohl symmetrische als auch asymmetrische Kryptosysteme Vor-sowie Nachteile haben, verkn¨upft man die Vorteile beider Verfahren. So ein Verfahren heißt hybrides Kryptosystem. Wir gehen auf hybride Verschl¨usselungsverfahren in Abschnitt 2.2.3 ein.

Aus dem Prinzip von Kerckhoffs ergibt sich, dass Angreiferin Eve in unserem Kommunikations-modell aus Abbildung 2.2 alle Details des verwendeten Kryptosystems kennt. Da Alice und Bob

¨uber einen unsicheren Kanal (z.B. das Internet) die Chiffretexte ¨ubermitteln, kennt Eve auch den Chiffretextc. W¨urde sie auch noch den Entschl¨usselungsschl¨usseld, den Bob verwendet, kennen, so k¨onnte sie selber die Funktion D(c, d) anwenden und w¨urde den Klartext kennen. Daher gilt f¨ur alle Kryptosysteme der folgende Merksatz.

Merksatz 2 (Entschl¨usselungsschl¨ussel sind geheim). Der Dechiffrierschl¨usseldmuss unbedingt geheim gehalten werden, damit ein Kryptosystem das Schutzziel Vertraulichkeit gew¨ahrleisten kann.

2.2. VERSCHL ¨USSELUNGSVERFAHREN 33

2.2.1 Symmetrische Verschl¨ usselungsverfahren

In diesem Abschnitt betrachten wir symmetrische Verschl¨usselungsverfahren. Die prinzipielle Funktionsweise finden Sie in Abbildung 2.3. Wir erl¨autern diese im Folgenden.

Alice verschl¨usselt die zu ¨ubermittelnde Klartexteinheit m mit Hilfe des Ver-schl¨usselungsschl¨ussels e und der ausgew¨ahlten Verschl¨usselungsfunktion E. Die zugeh¨orige Chiffretexteinheit c = E(m, e) ¨ubermittelt sie an Bob. Bitte beachten Sie, dass Verschl¨usseln immer zwei Eingaben erfordert: die Klartexteinheitmund den Verschl¨usselungsschl¨ussele. In der Kryptographie unterstellt man f¨ur die ¨Ubermittlung von Chiffretexten immer einen unsicheren Kanal. In unserem Fall bedeutet dies, dass Eve die ¨ubermittelten Daten mitlesen kann und daher ckennt.

Nachdem der Empf¨anger Bob die Chiffretexteinheitcerhalten hat, entschl¨usselt er diese durch Anwendung der Entschl¨usselungsfunktionD. Bob berechnetD(c, d), wobei er den zuezugeh¨origen Dechiffrierschl¨usseldverwendet. Nach der letzten Anforderung in Definition 19 erh¨alt er wieder die urspr¨ungliche Klartexteinheitm.

Abbildung 2.3: Symmetrische Verschl¨usselung nach? ]

Wichtig im Zusammenhang mit Kryptosystemen ist die Verteilung der verwendeten Schl¨ussel.

In einem symmetrischen Kryptosystem ist der Schl¨usselezum Verschl¨usseln mit dem zugeh¨origen Entschl¨usselungsschl¨ussel d identisch oder l¨asst sich einfach daraus berechnen. Wir formulieren das wie folgt:

Kryptosystem ist symmetrisch ⇐⇒ e≈d. (2.1)

Nach Merksatz 2 ist d geheimzuhalten. Aus Gleichung (2.1) folgt, dass auch e geheimzuhalten ist und dass Alicedkennt. Bei der Verwendung symmetrischer Verfahren m¨ussen Alice und Bob daher den Schl¨usseleuber einen sicheren Kanal austauschen und diesen Schl¨¨ ussel geheim halten.

Da beide Kommunikationspartner auf Grund der Eigenschafte≈dauch beide Schl¨usseleund dkennen, kann auch jeder der beiden die Schl¨ussel erzeugen. Das ist bei asymmetrischen Verfahren anders, wie Sie sp¨ater sehen werden.

Sehen wir uns noch die Vor- und Nachteile symmetrischer Verschl¨usselungsverfahren an. Der zentrale Vorteil der symmetrischen Verschl¨usselungsverfahren ist ihre Schnelligkeit. Die Algorith-men besitzen einen hohen Datendurchsatz und k¨onnen somit große Datenmengen in kurzer Zeit

ver- sowie entschl¨usseln. Auch die L¨ange der Schl¨ussel ist im Vergleich zu anderen Verfahren relativ kurz.

Nachteilig an diesen Verfahren ist jedoch das aufwendige Schl¨usselmanagement sowie die Schl¨usselverteilung. Dies wird auch alsSchl¨usselaustauschproblembezeichnet. Aus Abbildung 2.3 ist bekannt, dass jeweils ein sicherer Kanal zwischen den beiden Kommunikationspartnern ben¨otigt wird, ¨uber deneausgetauscht wird. F¨ur ein offenes, großes Netzwerk mitnPersonen bedeutet das Folgendes: denken wir uns diese Personen als mit 1 bisndurchnummeriert. Dann muss

1. Person 1 insgesamtn−1 Schl¨ussel austauschen, n¨amlich mit den Personen 2 bisn.

2. Person 2 tauscht weiteren−2 Schl¨ussel mit den Personen 3 bisn.

3. Person 3 verteilt weiteren−3 Schl¨ussel mit den Personen 4 bisn.

Insgesamt sind also nach der Gaußschen Summenformel (n−1) + (n−2) + (n−3) +. . .+ 2 + 1 =

Schl¨ussel auszutauschen. Bei einem Netzwerk mit 10 Personen existieren somit 45 Schl¨ussel, bei 100 Personen bereits 4950. F¨ur eine Milliarde (= 109) Teilnehmer sind das insgesamt 10218 Schl¨ussel, was unm¨oglich ist. Mathematisch ist die quadratische Abh¨angigkeit der Anzahl der Schl¨ussel von der Anzahl der Teilnehmer schlecht, weil ein Verdoppeln der Teilnehmer jeweils eine Vervierfa-chung (22 = 4) der Anzahl der Schl¨ussel bedeutet. Dieser Nachteil wird durch asymmetrische Verschl¨usselungsverfahren behoben.

Das bekannteste moderne symmetrische Verschl¨usselungsverfahren ist der Advanced Encrypti-on Standard (AES). Dieser ist 2001 nach einem ca. vier Jahre langen Verfahren als weltweiter Stan-dard vom US-amerikanischen National Institute of StanStan-dards and Technology (NIST) verabschie-det worden. Auf moderne symmetrische Verschl¨usselungsverfahren gehen wir in Abschnitt 3.2 ein.

Ein klassisches historisches – wenn auch sehr schwaches – symmetrisches Verschl¨usselungsverfahren finden Sie in Beispiel 9.

Beispiel 9 (Verschiebechiffre). Die Menge der Klartexteinheiten sind die Buchstaben des Al-phabets, es gilt also P = {a, b, c, d, ..., x, y, z}. Analog gilt f¨ur die Menge der Chiffretexteinhei-ten C={A, B, C, D, ..., X, Y, Z}. Aus didaktischen Gr¨unden w¨ahlen wir f¨ur die Klartexteinheiten Klein- und f¨ur die Chiffretexteinheiten Großbuchstaben.

F¨ur die Verschl¨usselung der Nachricht verschieben wir das Alphabet des Geheimtextraums zy-klisch um eStellen nach rechts. F¨ur e= 3 ergibt sich z.B. folgende Abbildung:

a b c d e f g h i j k l m

D E F G H I J K L M N O P

n o p q r s t u v w x y z

Q R S T U V W X Y Z A B C

Diese Chiffre heißt auch Caesar-Chiffre. Zur Entschl¨usselung verschieben wir das Alphabet zy-klisch um e Stellen nach links, es gilt alsoe=d. F¨ur die Verschl¨usselung der Nachricht werden anschließend die Zeichen des Klartextes auf die des Geheimtextalphabets abgebildet. Diese Abbil-dung entspricht der Verschl¨usselungsfunktionE(m, e).

Wir betrachten die zu verschl¨usselnde Nachricht kryptographie sowie den Ver-schl¨usselungsschl¨ussel e= 3. Dann gilt:

Klartext: kryptographie Geheimtext: NUBSWRJUDSKLH

Haben wir nur den Chiffretext und probieren alle Schl¨ussel aus, so sind wir in Beispiel 9 nach sp¨atestens 26 Versuchen erfolgreich, statistisch sogar nach 13,5 Versuchen. ’Stures’ Ausprobie-ren aller Schl¨ussel heißt Brute-Force-Angriff. Dieser ist nach dem Prinzip von Kerckhoffs immer m¨oglich. Das Beispiel der Verschiebechiffre zeigt, dass die Menge aller Schl¨ussel K hinreichend groß sein muss. Das formulieren wir in Merksatz 3.

2.2. VERSCHL ¨USSELUNGSVERFAHREN 35 Merksatz 3 (Großer Schl¨usselraum). F¨ur die Sicherheit eines Verschl¨usselungsverfahrens muss der Schl¨usselraum K so groß sein, dass nicht alle Schl¨ussel durchprobiert werden k¨onnen. Das ist aber nur eine notwendige Bedingung.

2.2.2 Asymmetrische Verschl¨ usselungsverfahren

In diesem Abschnitt betrachten wir asymmetrische Verschl¨usselungsverfahren. Die prinzipielle Funktionsweise finden Sie in Abbildung 2.4. Wir erl¨autern diese im Folgenden.

Eine zentrale Eigenschaft asymmetrischer Verschl¨usselungsverfahren ist, dassjeder Kommuni-kationspartner jeweils ein eigenes Schl¨usselpaar (e, d) besitzt. Dabei isteder¨offentliche Schl¨ussel (auch Public Key genannt) und d der private Schl¨ussel (Private Key) – aus Merksatz 2 wissen wir bereits, dassdgeheim bleiben muss. Daher heißen asymmetrische Kryptosysteme auch Public-Key-Verschl¨usselungsverfahren.

Will Alice an Bob eine verschl¨usselte Nachricht schicken, so ben¨otigt sie zun¨achst seinen

¨offentlichen Schl¨ussel e. Wichtig an dieser Stelle ist, dass Alice den authentischen ¨offentlichen Schl¨ussel von Bob hat – und nicht zum Beispiel von Eve. Dazu nutzt Alice meist ein Zertifikat von Bob, das sie im Rahmen einer Public Key Infrastruktur (PKI) nutzt (auf Zertifikate und PKI gehen wir in Abschnitt 4 ein). Seinen privaten Schl¨usseldh¨alt Bob geheim. Alice verschl¨usselt dann die zu ¨ubermittelnde Klartexteinheit mmit Hilfe von Bobs Verschl¨usselungsschl¨usseleund der aus-gew¨ahlten Verschl¨usselungsfunktionE. Die zugeh¨orige Chiffretexteinheitc=E(m, e) ¨ubermittelt sie ¨uber einen unsicheren Kanal an Bob (Eve kann die ¨ubermittelten Daten mitlesen und kennt daherc). Bob entschl¨usselt die erhaltene Chiffretexteinheit, indem erD(c, d) mit seinem Private Keydberechnet. Daraus erh¨alt er die urspr¨ungliche Klartexteinheitmzur¨uck.

Abbildung 2.4: Asymmetrische Verschl¨usselung nach?]

Wichtig im Zusammenhang mit Public Key Kryptosystemen ist die Forderung, dass aus dem

¨offentlichen Schl¨usselekeine R¨uckschl¨usse auf den zugeh¨origen Private Keydm¨oglich sind. Wir vermulieren das wie folgt:

Kryptosystem ist asymmetrisch ⇐⇒ e6=d. (2.2)

Da der Sender zum Verschl¨usseln den Public Key des Empf¨angers ben¨otigt, kann nur der Empf¨anger diesen erzeugen. Des weiteren ist klar, dass Bob zun¨achst seinen Private Keyderzeugt und darauseberechnet – denn die Umkehrung ist ja aus Sicherheitsgr¨unden praktisch unm¨oglich.

Sehen wir uns noch die Vor- und Nachteile asymmetrischer Verschl¨usselungsverfahren an. Der zentrale Vorteil von Public Key Kryptosystemen ist, dass der jeweilige ¨offentliche Schl¨ussel nicht geheim gehalten werden muss. Das erleichtert die Verwaltung der Schl¨ussel sehr. Soll in einem Netz-werk vonnPersonen jede Person mit jeder anderen eine verschl¨usselte Verbindung aufbauen, wer-den statt n(n−1)2 Schl¨ussel nurn¨offentliche Schl¨ussel ben¨otigt. Des Weiteren ist f¨ur die ¨Ubertragung des ¨offentlichen Schl¨ussels kein vertraulicher Kanal notwendig. An dieser Stelle muss jedoch auf die Authentizit¨at des ¨offentlichen Schl¨ussels geachtet werden. Das Schl¨usselaustauschproblem ist bis auf die Echtheit ¨offentlicher Schl¨ussel gel¨ost.

Nachteilig an Public Key Verschl¨usselungsverfahren ist der im Vergleich zu den symmetrischen Kryptosystemen geringe Datendurchsatz. Dadurch sind Public Key Verfahren deutlich langsamer als symmetrische. Des weiteren darf der private Schl¨ussel nicht aus dem ¨offentlichen Schl¨ussel berechenbar sein. Hierf¨ur liegt den jeweiligen asymmetrischen Verfahren ein aufwendiges mathe-matisches Problem zugrunde, welches der Angreifer Eve f¨ur die Berechnung des privaten Schl¨ussels aus dem Public Key l¨osen muss.

Das bekannteste asymmetrische Verschl¨usselungsverfahren ist das RSA Verfahren. Es wurde 1977 von den drei Mathematikern bzw. Informatikern Ron Rivest, Adi Shamir sowie Leonard Adle-man publiziert. Die Sicherheit von RSA (d.h. die praktische Unm¨oglichkeit,dausezu berechnen) h¨angt mit einem sehr bedeutenden mathematischen Problem zusammen, dem Faktorisierungspro-blem. Auf solche schwierigen mathematischen Probleme sowie das RSA Verfahren gehen wir in Abschnitt 3.6 ein.

2.2.3 Hybride Verschl¨ usselungsverfahren

Mit den symmetrischen und asymmetrischen Verschl¨usselungsverfahren kennen Sie bereits zwei zentrale Klassen von Kryptosystemen. Die Idee hinter der hybriden Verschl¨usselung ist, die Vor-teile der symmetrischen und asymmetrischen Kryptosysteme zu vereinen und die jeweiligen Nach-teile zu reduzieren. Ziel ist es also, die Schnelligkeit der symmetrischen Verschl¨usselung mit dem vereinfachten Schl¨usselmanagement asymmetrischer Kryptosysteme zu kombinieren. Die prinzipi-elle Funktionsweise hybrider Verschl¨usselungsverfahren finden Sie in Abbildung 2.5. Wir erl¨autern diese im Folgenden.

Will Alice an Bob eine ’große’ verschl¨usselte Nachricht schicken (z.B. einige Bilder der Gr¨oße von insgesamt 100 MB), so verschl¨usselt sie aus Effizienzgr¨unden die Bilder mit einem symme-trischen Kryptosystem. Dazu erzeugt sie sich einen zuf¨alligen symmetrischen Schl¨ussel snur f¨ur diese Daten¨ubermittlung (zuf¨alliger Sitzungsschl¨ussel, Random Session Key). Dahinter steht das kryptographische Paradigma, einen kryptographischen Schl¨ussel so selten wie m¨oglich zu nutzen.

Mit Hilfe des Session Keysund der symmetrischen Verschl¨usselungsfunktionE1 verschl¨usselt sie ihre ’große’ Nachricht und erh¨alt den Chiffretextc=E1(m, s).

Bob ben¨otigt ebenfalls den Session Keyszum Entschl¨usseln. Daseine ’kleine’ Datenstruktur (z.B. 128 Bit = 16 Byte im Fall von AES), nimmt Alice die Laufzeitschw¨ache des Public Key Algorithmus in Kauf und besorgt sich den ¨offentlichen Schl¨ussele von Bob. Mit der Public Key Verschl¨usselungsfunktionE2verschl¨usselt sie den Session Key:s0 =E2(s, e). Dann ¨ubermittelt sie csowies0 an Bob ¨uber den unsicheren Kanal.

Damit Bob die Bilder lesen kann, entschl¨usselt er zun¨achst s0 mittels der Public Key Ent-schl¨usselungsfunktionD2. Daraus erh¨alt ers=D2(s0, d). Den Session Key nutzt er, um mittels der symmetrischen Entschl¨usselungsfunktionD1die Bilder im Klartext zu erhalten.

Eingesetzt werden hybride kryptographische Verschl¨usselungsverfahren immer dann, wenn ope-rative Daten verschl¨usselt werden soll (z.B. E-Mails, Web-Traffic). Ein wichtiges Kommunikations-protokoll, das hybride Verschl¨usselung nutzt, ist das Transport Layer Security (TLS) Protokoll.

Kontrollaufgabe 6 (Verschl¨usselungsverfahren). 1. Beschreiben Sie, was man unter einem Kryptosystem versteht.