Vorwort | 6 |
Vorwort von Bernhard Esslinger | 10 |
Inhaltsverzeichnis | 14 |
1 Ziele und Wege der Kryptographie | 20 |
1.1 Historische Verfahren | 22 |
1.1.1 Skytale | 22 |
1.1.2 Caesar-Chiffre | 23 |
1.1.2.1 Verallgemeinerung der Caesar-Chiffre | 24 |
1.1.2.2 Kryptoanalyse der Caesar-Chiffre | 25 |
1.1.3 Vigenère-Chiffre | 26 |
1.1.3.1 Hilfsmittel zur Vigenère-Chiffre | 26 |
1.1.3.2 Angriff auf die Vigenère-Chiffre | 28 |
1.1.3.3 Ausblick | 29 |
1.1.4 Vernam-Chiffre | 29 |
1.1.5 Enigma | 31 |
1.1.5.1 Schlüsselraum der Enigma | 32 |
1.1.5.2 Angriffe auf die Enigma | 32 |
1.2 Sicherheitsdienste | 33 |
1.2.1 Vertraulichkeit | 34 |
1.2.2 Authentizität und Integrität | 34 |
1.2.2.1 Partner-Authentizität | 34 |
1.2.2.2 Einseitige und gegenseitige Authentizität | 35 |
1.2.2.3 Nachrichten-Authentizität und Integrität | 35 |
1.2.3 Verbindlichkeit | 36 |
1.2.4 Anonymität | 36 |
1.2.5 Zugriffskontrolle, Autorisierung | 37 |
1.2.6 Sicherheitsdienste im Überblick | 37 |
1.2.7 Bedrohungen und Sicherheitsdienste | 38 |
1.2.7.1 OSI Sicherheits-Architektur | 39 |
1.3 Sicherheitsmechanismen | 40 |
1.3.1 Verschlüsselung als Abbildung | 40 |
1.3.2 Symmetrische Verschlüsselung | 41 |
1.3.2.1 Blockweise Verschlüsselung | 42 |
1.3.2.2 Strom-Verschlüsselung | 43 |
1.3.2.3 Message Authentication Code (MAC) | 43 |
1.3.2.4 Anzahl der symmetrischen und asymmetrischen Schlüssel | 44 |
1.3.3 Asymmetrische Verfahren | 45 |
1.3.3.1 Asymmetrische Verschlüsselung und Entschlüsselung | 45 |
1.3.3.2 Hybride Kryptographie | 47 |
1.3.4 Digitale Signaturen | 47 |
1.3.4.1 Digitale Signatur mit Nachrichten-Rückgewinnung | 48 |
1.3.4.2 Digitale Signatur mit Hashwert-Anhang | 49 |
1.3.5 Hilfs-Funktionen | 50 |
1.3.5.1 Hashfunktionen | 50 |
1.3.5.2 Einwegfunktionen | 51 |
1.3.5.3 Falltür-Mechanismen | 53 |
1.3.5.4 Datenkompression | 53 |
1.3.5.5 PN-Generator (pseudo noise) | 54 |
1.3.6 Sicherheitsprotokolle | 55 |
1.4 Sicherheit, Angriffe und perfekte Sicherheit | 56 |
1.4.1 IT-Sicherheit | 56 |
1.4.2 Kryptographische Sicherheit | 56 |
1.4.2.1 Kerckhoffs’ Prinzip oder Kerckhoffs’ Maxime | 57 |
1.4.2.2 Angriffe auf Schlüssel | 57 |
1.4.2.3 Angriff auf kryptographische Algorithmen | 58 |
1.4.2.4 Perfekte Sicherheit | 59 |
2 Symmetrische Chiffren | 62 |
2.1 Rechnen mit endlichen Zahlenmengen und Restklassen | 62 |
2.1.1 Arithmetik modulo n, Restklassen | 63 |
2.1.2 Axiome für Gruppe, Ring und Körper | 64 |
2.1.2.1 Nachweis für die Erfüllung der Axiome 1 bis 10 | 65 |
2.1.2.2 Nachweis für die Erfüllung von Axiom 11 | 66 |
2.1.3 Multiplikativ inverse Elemente, praktische Ermittlung | 68 |
2.1.3.1 Erweiterter Euklidischer Algorithmus | 68 |
2.1.4 Übungen | 70 |
2.2 DES, Data Encryption Standard | 71 |
2.2.1 DES, Eigenschaften | 72 |
2.2.2 DES, Verschlüsselung und Entschlüsselung | 73 |
2.2.3 Triple-DES | 76 |
2.2.4 DES-Anwendungen | 77 |
2.2.4.1 Message Authentication Code (MAC) auf Basis von DES | 78 |
2.2.4.2 Einweg-Hash-Funktion auf Basis von DES | 80 |
2.2.5 Übungen | 81 |
2.3 IDEA, International Data Encryption Algorithm | 81 |
2.3.1 IDEA, im Überblick | 82 |
2.3.2 IDEA, Verschlüsselung | 83 |
2.3.3 IDEA, Entschlüsselung | 84 |
2.3.4 Übungen | 86 |
2.4 Stromchiffren RC4 und A5 | 87 |
2.4.1 RC4 | 88 |
2.4.1.1 RC4, PN-Generator | 88 |
2.4.2 A5 | 89 |
2.4.2.1 A5/1, PN-Generator | 90 |
2.4.3 Sicherheit von Stromchiffren | 91 |
2.5 Rechnen mit Polynom-Restklassen und Erweiterungskörpern | 91 |
2.5.1 Polynom-Restklassen | 92 |
2.5.2 Irreduzible Polynome | 94 |
2.5.3 Axiome für Erweiterungskörper und Beispiel | 95 |
2.5.4 Übungen | 98 |
2.6 AES, Advanced Encryption Standard | 100 |
2.6.1 AES, Verschlüsselung und Entschlüsselung | 100 |
2.6.2 AES, Transformationsfunktionen | 102 |
2.6.3 Übungen | 104 |
2.7 Betriebsarten von Block-Chiffren: ECB, CBC, CFB, OFB, CTR | 107 |
2.7.1 Wozu Betriebsarten? | 107 |
2.7.2 Eigenschaft der Betriebsarten | 108 |
2.7.2.1 Electronic Code Book (ECB) | 108 |
2.7.2.2 Cipher Block Chaining (CBC) | 109 |
2.7.2.3 Cipher Feedback (CFB) | 110 |
2.7.2.4 Output Feedback (OFB) | 111 |
2.7.2.5 Counter-Modus (CTR) | 112 |
2.7.2.6 Anmerkungen | 113 |
3 Hash-Funktionen | 114 |
3.1 Anwendungen und Arten von Hash-Funktionen | 114 |
3.1.1 Arten von Hash-Funktionen | 115 |
3.1.2 Angriffe auf Hash-Funktionen | 116 |
3.1.2.1 Angriff auf schwache Kollisionsresistenz | 116 |
3.1.2.2 Angriff auf starke Kollisionsresistenz | 117 |
3.1.2.3 Geburtstagsangriff | 118 |
3.2 Hash-Funktionen auf Basis von Block-Chiffren | 119 |
3.3 Eigenständige Hash-Funktionen | 120 |
3.3.1 MD5 | 122 |
3.3.2 SHA-1 | 123 |
3.3.3 SHA-2 | 124 |
3.3.4 SHA-Nachfolger | 125 |
3.4 HMAC, MAC auf Basis von Hash | 125 |
3.4.1 HMAC-Algorithmus | 126 |
3.4.2 Vergleich von MAC mit HMAC | 127 |
4 Asymmetrische Chiffren | 128 |
4.1 Rechnen mit Potenzen modulo n | 128 |
4.1.1 Potenzen modulo n | 129 |
4.1.2 Sätze von Fermat und Euler, Eulersche -Funktion | 130 |
4.1.2.1 Die Eulerische-Funktion | 130 |
4.1.2.2 Satz von Euler und Fermat | 130 |
4.1.2.3 Sonderfall für RSA | 131 |
4.1.2.4 Beispiele für Euler/RSA | 132 |
4.1.3 Berechnung großer Potenzen | 133 |
4.1.4 Diskreter Logarithmus | 134 |
4.1.5 Quadratwurzeln in der Rechnung modulo n | 135 |
4.1.6 Chinesischer Restsatz | 137 |
4.1.7 Übungen | 139 |
4.2 RSA, Rivest/Shamir/Adleman | 140 |
4.2.1 RSA, Schlüssel, Verschlüsselung, Signaturen | 141 |
4.2.2 Zur Implementierung von RSA | 143 |
4.2.3 Sicherheit von RSA | 144 |
4.2.3.1 Faktorisierungsproblem, äquivalente Schlüssellänge | 144 |
4.2.4 RSA-Beschleunigung durch Chinesischen Restsatz | 146 |
4.2.5 Übungen | 147 |
4.3 Diffie-Hellman-Schlüsselvereinbarung | 148 |
4.4 ElGamal-Verfahren | 150 |
4.4.1 Schlüsselvereinbarung nach ElGamal | 150 |
4.4.2 Digitale Signatur und Verifikation nach ElGamal | 152 |
4.4.3 Effizienz des ElGamal-Verfahrens | 153 |
4.5 Elliptische Kurven, ECC-Kryptographie | 154 |
4.5.1 Einführung | 154 |
4.5.2 Mathematische Grundlagen | 155 |
4.5.3 Geometrische Definition der Additionsoperation auf der Kurve | 156 |
4.5.4 Bestimmung algebraischer Formeln für die Addition | 158 |
4.5.5 Elliptische Kurven im diskreten Fall | 160 |
4.5.6 Standardisierte Kurven | 162 |
4.5.6.1 Patentsituation bei ECC | 163 |
4.5.7 Anwendung der elliptischen Kurven in Algorithmen | 163 |
4.5.7.1 Geschwindigkeit von ECC | 163 |
4.5.7.2 ECDH: Diffie-Hellman mit elliptischen Kurven | 164 |
4.5.7.3 EC-DSA: Digital Signature Algorithm mit elliptischen Kurven | 165 |
4.5.8 Ausblick | 166 |
5 Authentifikations-Protokolle | 168 |
5.1 Authentifikation mit Passwort | 169 |
5.1.1 Verfahren mit Dauer-Passwort | 169 |
5.1.2 Verfahren mit Einmal-Passwort | 169 |
5.2 Challenge-Response-Authentifikation | 171 |
5.3 Authentifikation mit digitalen Signaturen | 172 |
5.4 Fiat-Shamir-Authentifikation | 174 |
5.4.1 Vertrauenswürdige Schlüsselbank | 174 |
5.4.2 Authentifikations-Runde | 175 |
5.4.3 Sicherheit für die Authentifikation | 177 |
5.4.4 Zero-Knowledge-Protokoll | 178 |
5.5 Authentifikation mit symmetrischen Schlüsseln | 178 |
5.5.1 Protokollziel | 178 |
5.5.2 Kerberos-Protokoll | 179 |
5.6 Angriffe auf Authentifikations-Protokolle | 181 |
6 Sicherheitsprotokolle und Schlüsselverwaltung | 184 |
6.1 Public Key Infrastrukturen | 185 |
6.1.1 Komponenten und Prozesse in einer PKI | 185 |
6.1.1.1 Erstellung von digitalen Signaturen | 185 |
6.1.1.2 Zertifikat und Sperrinformation | 186 |
6.1.1.3 Verifikation von digitalen Signaturen | 188 |
6.1.2 PKI-Standards und Gesetzgebung | 190 |
6.2 Sicherheitsprotokolle im Internet | 193 |
6.2.1 Das Internet und die Internet-Protokollsuite | 193 |
6.2.2 Sicherheitsprotokolle in der Internet-Protokollsuite | 194 |
6.3 Das SSL/TLS-Protokoll | 196 |
6.3.1 Das SSL-Handshake | 196 |
6.3.2 Sicherung über SSL-Records | 198 |
6.3.3 Secure Shell, SSH | 199 |
6.4 IP-Sicherheit mit IPSec | 200 |
6.4.1 Internet Key Exchange | 200 |
6.4.2 Authentication Header | 204 |
6.4.3 Encapsulated Security Payload | 206 |
6.4.4 Tunnel-Modus | 207 |
6.4.5 Transport-Modus | 208 |
6.5 Sicherheit bei der Echtzeit-Datenübertragung | 209 |
6.5.1 SRTP und SRTCP | 210 |
6.5.2 MIKEY | 210 |
6.5.3 ZRTP | 212 |
6.5.4 DTLS | 212 |
6.6 Sicherheit in Funknetzen | 213 |
6.6.1 EAP | 213 |
6.6.2 WEP | 215 |
6.6.3 WPA und WPA-2 | 217 |
7 Chipkarten und Sicherheitsmodule | 218 |
7.1 Historie | 218 |
7.2 Chipkarten-Technologie | 218 |
7.2.1 Arten von Chipkarten | 218 |
7.2.2 Anwendungen | 219 |
7.3 Aktuelle und zukünftige Chipkarten-Architekturen | 220 |
7.3.1 Sicherheit von Chipkarten | 221 |
7.3.2 Chipkarten-Architektur nach ISO/IEC 7816 | 223 |
7.3.2.1 Mechanische Eigenschaften nach ISO/IEC 7816 | 223 |
7.3.2.2 Elektrische Eigenschaften nach ISO/IEC 7816 | 223 |
7.3.2.3 Chipkarten-Betriebssystem nach ISO/IEC 7816 | 224 |
7.3.3 Interpreter-basierende Chipkarten-Betriebssysteme | 226 |
7.3.3.1 Der JavaCard™-Standard | 227 |
7.3.3.2 Der Global-Platform-Standard | 231 |
7.4 Einsatz von Chipkarten | 233 |
7.4.1 Schnittstellen zur Chipkartenintegration | 233 |
7.4.1.1 Aufbau der Kommunikation | 234 |
7.4.1.2 Die Card-Terminal-API (CT-API) | 235 |
7.4.1.3 Die PC/SC-Spezifikation | 236 |
7.4.1.4 Der PKCS#11-Standard | 237 |
7.4.1.5 Das Open Card Framework | 239 |
7.4.1.6 Internet-Chipkarten | 240 |
7.5 Chipkarten-Anwendungen | 242 |
7.5.1 Mobilfunk Chipkarten | 242 |
7.5.1.1 Authentisierung und Verschlüsselung im GSM-Netz | 243 |
7.5.1.2 Authentisierung und Verschlüsselung im UMTS Netz | 246 |
7.5.1.3 Internet-Browser auf Mobilfunk-Chipkarten | 249 |
7.5.2 Zukünftiger Einsatz neuer Internet-Chipkarten | 252 |
7.5.2.1 Authentisierungs-Proxy | 252 |
7.5.2.2 IPSec Gateway | 253 |
7.6 Trusted Computing und Trusted Platform Module | 253 |
7.6.1 Die Trusted Computing Group | 253 |
7.6.2 Das Trusted Platform Module | 254 |
7.6.2.1 Die TPM-Schlüsselhierarchie | 255 |
7.6.3 Zusammenspiel der TCG Komponenten | 257 |
7.6.4 Integritätsmessung | 259 |
Literatur | 260 |
Glossar | 268 |
Deutsch-Englisch, Begriffe | 274 |
Sachwortverzeichnis | 276 |