Konzept und Aufbau einer prototypischen Public Key Infrastruktur

Transcription

Konzept und Aufbau einer prototypischen Public Key Infrastruktur
Fachbereich Informatik
Prof. Dr. Johannes Buchmann
Institut für Theoretische Informatik
Technische Universität Darmstadt
Diplomarbeit
Konzept und Aufbau einer prototypischen
Public Key Infrastruktur auf Basis von FlexiTrust
Bei der Allgemeinen Deutschen Direktbank AG
von
Patrick Seiler
Betreuer
Alexander Wiesmaier
Oktober 2001
Ich bedanke mich bei allen, die mir bei der Erstellung dieser Arbeit geholfen haben. Insbesondere danke ich Alexander Wiesmaier, für Betreuung dieser Arbeit am Institut für Theoretische
Informatik der TU-Darmstadt; Oliver Becker von der Firma Becker Consulting, für die Förderung dieser Diplomarbeit; Zeljko Kaurin, für die freundliche Unterstützung bei der Allgemeinen Deutschen Direktbank AG; und allen Korrekturlesern, für ihre wertvollen
Verbesserungshinweise.
i
ii
Ehrenwörtliche Erklärung
Hiermit versichere ich, die vorliegende Diplomarbeit ohne Hilfe Dritter und nur mit den angegebenen Quellen und Hilfsmitteln angefertigt zu haben. Alle Stellen, die aus den Quellen entnommen wurden, sind als solche kenntlich gemacht worden. Diese Arbeit hat in gleicher oder
ähnlicher Form noch keiner Prüfungsbehörde vorgelegen
Darmstadt, den 15. Oktober 2001
Patrick Seiler
iii
iv
Inhaltsverzeichnis
Abbildungsverzeichnis
ix
Tabellenverzeichnis
xi
1
Einleitung
1
2
Kryptographische Grundlagen
5
2.1 Symmetrische Verschlüsselungsverfahren. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.2 Asymmetrische Verschlüsselungsverfahren. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.3 Hybridverfahren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.4 Digitale Signaturen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.5 Zusammenfassung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3
Public Key Infrastrukturen
3.1 Grundlegende Dienste einer PKI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.2 Schlüsselmanagement. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.3 Zertifikate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.3.1 Zertifikate nach X.509v3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.3.1.1 Standardfelder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.3.1.2 Standarderweiterungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.3.1.3 Erweiterungen im Sinne der Signaturverordnung . . . . . . . . . . . .
3.3.1.4 Erweiterungen von Netscape . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.4 Trustcenter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.4.1 Struktur eines Trustcenters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.4.2 Zertifikatswiderruf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.5 Vertrauensmodelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.5.1 Direct Trust . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.5.2 Web Of Trust. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.5.3 Hierarchical Trust . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.6 Schlüsselwiederherstellung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.6.1 Escrowed Encryption Standard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.7 Kryptographische Verfahren auf Public Key Basis . . . . . . . . . . . . . . . . . . . . . . . .
3.7.1 SSL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.7.1.1 Server Authentifizierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.7.1.2 Client Authentifizierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.7.1.3 Notwendige Zertifikaterweiterungen . . . . . . . . . . . . . . . . . . . . .
11
11
12
14
15
15
16
19
19
21
21
24
25
25
26
27
28
29
29
30
32
33
35
v
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
3.7.2 S/MIME . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.7.2.1 Notwendige Zertifikaterweiterungen . . . . . . . . . . . . . . . . . . . . .
3.7.3 IPSec . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.7.3.1 IPSP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.7.3.2 IKMP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.7.3.3 Virtuelle private Netzwerke (VPN) mit IPSec . . . . . . . . . . . . . .
3.7.3.4 Notwendige Zertifikaterweiterungen . . . . . . . . . . . . . . . . . . . . .
3.8 Verzeichnisdienste . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.8.1 X.500. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.8.2 LDAP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.8.2.1 Vom Protokoll zum Verzeichnis . . . . . . . . . . . . . . . . . . . . . . . . .
3.8.2.2 Das Informationsmodell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.8.2.3 Das Namensmodell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.8.2.4 Das Sicherheitsmodell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.8.2.5 LDAP URLs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.9 Rechtliche Aspekte des PKI Betriebes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.9.1 Gesetzliche Beschränkungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.9.2 Gesetz zur digitalen Signatur (SigG) . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.9.3 Exportbeschränkungen der USA. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.10 Zusammenfassung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
37
38
38
39
41
42
44
44
45
46
46
47
48
50
51
52
52
52
54
55
4
Bedarfsanalyse
4.1 Ermittlung des Ist-Zustandes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.1.1 Unternehmensstruktur DiBa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.1.2 Zielgruppe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.1.3 Hard- und Softwareinfrastruktur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.1.4 Sicherheitskonzept . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.2 Ermittlung des Bedarfs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.2.1 Sicherer Intranetzugang für mobile Mitarbeiter . . . . . . . . . . . . . . . . . . . . .
4.2.2 Sichere Kommunikation mobiler Mitarbeiter . . . . . . . . . . . . . . . . . . . . . . .
4.2.3 Fernadministration des LANs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.3 Konzept. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.3.1 Überblick über das Konzept . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.3.2 Outsourcen oder Do-it-yourself?. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.3.3 Voraussetzungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.3.4 Sicherer Intranetzugang für mobile Mitarbeiter . . . . . . . . . . . . . . . . . . . . .
4.3.5 Fernadministration des LANs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.3.6 Sichere Kommunikation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.3.6.1 Dokumentenbasierte Sicherheit . . . . . . . . . . . . . . . . . . . . . . . . .
4.3.7 Anforderungen an die Hardware. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.4 Weitere Möglichkeiten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.5 Zusammenfassung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
57
57
57
57
58
59
61
61
62
63
63
63
63
64
64
65
66
68
69
69
70
5
Untersuchung vorhandener Software auf Möglichkeiten zur Integration
5.1 Aufbau der Testumgebung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.2 Software für Zertifizierungsstellen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.2.1 PGP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.2.2 Microsoft Certificate Server 1.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.2.3 FlexSecure FlexiTrust 2.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
71
71
73
74
76
78
vi
Inhaltsverzeichnis
5.3
5.4
5.5
5.2.3.1 FlexiTrust-CA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.2.3.2 FlexiTrust-RA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.2.3.3 FlexiTrust-IS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Server Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.3.1 Microsoft Internet Information Server 4.0 . . . . . . . . . . . . . . . . . . . . . . . . .
5.3.2 Microsoft Exchange Server 5.5 mit Outlook Web Access 5.5 . . . . . . . . . .
5.3.3 OpenLDAP 2.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.3.4 Microsoft Windows 2000 Server als VPN-Gateway . . . . . . . . . . . . . . . . .
Client Software. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.4.1 Microsoft Internet Explorer 5.x. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.4.2 Netscape Communicator 4.7x . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.4.3 Microsoft Outlook 2000 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.4.4 LDAP Browser\Editor 2.8.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Zusammenfassung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
80
81
82
83
83
85
86
86
88
88
91
93
95
97
6
Umsetzung der Public Key Infrastruktur
99
6.1 Zertifizierungshierarchie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
6.2 Benutzergruppen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
6.3 Konfiguration der Hard- und Software. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
6.3.1 FlexSecure FlexiTrust 2.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
6.3.2 Microsoft Internet Information Server 4.0 . . . . . . . . . . . . . . . . . . . . . . . . 103
6.3.2.1 Erzeugen eines Serverzertifikates . . . . . . . . . . . . . . . . . . . . . . . 103
6.3.2.2 Installation des Root-CA Zertifikates . . . . . . . . . . . . . . . . . . . . 103
6.3.2.3 Serverkonfiguration für SSL . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
6.3.3 Microsoft Internet Explorer 5.5. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
6.3.4 Microsoft Outlook 2000 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
6.4 Allgemeiner Ablauf der Benutzerzertifizierung. . . . . . . . . . . . . . . . . . . . . . . . . . 106
6.4.1 Registrierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
6.4.2 Schlüsselerzeugung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
6.4.3 Zertifizierung. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
6.4.4 Schlüsselverteilung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
6.4.5 Sperrmanagement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
6.4.6 Veröffentlichung von Zertifikaten und Widerrufslisten . . . . . . . . . . . . . . 109
6.4.7 Vier-Augen-Prinzip. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
7
Kommentar
zu den Zertifizierungsrichtlinien
7.1 Rechtliche Bedeutung. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.2 Einsatz von Registrierungsinstanzen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.3 Sicherheit in einer hierarchischen Struktur . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.4 Zertifizierung von Benutzern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.5 Widerruf von Zertifikaten. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.6 Zusammenfassung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8
111
111
113
113
114
115
115
Bewertung und Ausblick
117
8.1 Gesamtbewertung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
8.2 Ausblick . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
vii
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
Anhang A Zertifizierungsrichtlinien: Policy
A.1 Identität der DiBa-CA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
A.2 Zuständigkeitsbereich der DiBa-CA . . . . . . . . . . . . . . . . . . . . . . . . . .
A.2.1 Rechtliche Bedeutung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
A.2.2 Die DiBa-Zertifizierungshierarchie . . . . . . . . . . . . . . . . . . . . . .
A.2.3 Registrierungsinstanz (RA) . . . . . . . . . . . . . . . . . . . . . . . . . . . .
A.3 Sicherheit der DiBa-CA-Ausstattung . . . . . . . . . . . . . . . . . . . . . . . . . .
A.3.1 Sicherheitsanforderungen an die DiBa-CA . . . . . . . . . . . . . . . .
A.3.2 Sicherheitsanforderungen an die DiBa-RA . . . . . . . . . . . . . . . .
A.3.3 Sicherheitsanforderungen an Benutzer . . . . . . . . . . . . . . . . . . .
A.4 Zertifizierungsregeln . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
A.4.1 Regeln für die Zertifizierung von Benutzern . . . . . . . . . . . . . . .
A.5 Management von Zertifikaten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
A.6 Widerruf von Zertifikaten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
A.7 Schlüsselhinterlegung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
A.8 Regeln für die Namensgebung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
A.9 Verschiedenes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
119
119
120
120
120
121
121
121
122
122
123
124
125
125
126
127
128
Anhang B Installationsbeschreibungen
B.1 Erzeugen eines Serverzertifikates für den IIS 4 . . . . . . . . . . . . . . . . . .
B.2 Installation von CA-Zertifikaten im IIS 4 . . . . . . . . . . . . . . . . . . . . . .
B.3 Installation von Widerrufslisten (CRLs) im Netscape Communicator
B.4 Installation des MMC Zertifikat Snap-In . . . . . . . . . . . . . . . . . . . . . . .
129
129
130
133
133
Anhang C Abkürzungsverzeichnis
135
Anhang D Literaturverzeichnis
139
viii
Abbildungsverzeichnis
1
symmetrische Verschlüsselung ........................................................................................ 6
2
asymmetrische Verschlüsselung ...................................................................................... 7
3
hybride Verschlüsselung .................................................................................................. 8
4
Digitale Signatur .............................................................................................................. 9
5
Allgemeiner Aufbau eines digitalen Zertifikates ........................................................... 15
6
mögliche Struktur eines SigG-konformen Trustcenters................................................. 22
7
Vertrauensmodelle ......................................................................................................... 26
8
SSL setzt zwischen TCP und einem Anwendungsprotokoll an..................................... 30
9
SSLv3-Server: Authentifizierungsvorgang im Überblick.............................................. 33
10
SSLv3-Client: Authentifizierungsvorgang im Überblick .............................................. 34
11
IPSec verschlüsselt auf IP-Ebene................................................................................... 39
12
ESP Modi im Vergleich ................................................................................................. 40
13
IPSec mit ESP im Tunnelmodus.................................................................................... 40
14
X.500 Server .................................................................................................................. 45
15
LDAP Server als Gateway zum X.500 Server ............................................................... 46
16
Stand-Alone LDAP Server............................................................................................. 47
17
Das Informationsmodell: Einträge, Attribute und Werte............................................... 48
18
Ausschnitt eines fiktiven LDAP-Verzeichnisbaumes.................................................... 49
19
Authentifizierung per SASL .......................................................................................... 51
20
LDAP-Zugriff über Webbrowser................................................................................... 51
21
Unternehmensstruktur der Allgemeinen Deutschen Direktbank AG ............................ 59
22
Zugang zum Intranet über SSL ...................................................................................... 65
23
Fernadministration über ein VPN .................................................................................. 65
24
Kommunikations-Konzept A ......................................................................................... 66
25
Kommunikations-Konzept B ......................................................................................... 67
ix
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
26
Kommunikations-Konzept C ......................................................................................... 68
27
Aufbau der Testumgebung............................................................................................. 73
28
Zertifikatsanforderung über das Webinterface des Certificate Servers 1.0 ................... 77
29
Der interne Aufbau von FlexiTrust 2.0.......................................................................... 80
30
Zertifikatsantragsformular der FlexiTrust-RA............................................................... 81
31
Revokationsantragsformular der FlexiTrust-RA ........................................................... 82
32
Outlook Web Access für mobilen Zugriff auf Exchange Server,
dargestellt im Internet Explorer ..................................................................................... 85
33
Vordefinierte IPSec Richtlinien von Windows 2000..................................................... 88
34
Snap-In der MMC für die Zertifikats- und CRL-Verwaltung........................................ 89
35
Informationen zu ausgewählten Zertifikaten: links allgemeine Beschreibung,
rechts Details zu den Erweiterungen.............................................................................. 90
36
Die Zertifikatsverwaltung vom Netscape Communicator ............................................. 92
37
Akzeptanz widerrufener Zertifikate: links Internet Explorer 5, rechts Outlook 2000 ... 94
38
Outlook liefert Informationen über die Gültigkeit digitaler Signaturen ........................ 95
39
Suche nach Einträgen im LDAP-Baum ......................................................................... 96
40
Übernahme von Zertifikaten aus LDAP-Verzeichniseinträgen ..................................... 97
41
Die flache Zertifizierungshierarchie der DiBa-CA ...................................................... 100
42
Anordnung der Hard- und Software im Realbetrieb der Public Key Infrastruktur...... 102
43
IIS4: Importassistent der Zertifikatsverwaltung .......................................................... 131
44
IIS4: Wahl des richtigen Zertifikatsspeichers .............................................................. 131
45
IIS4: zugelassene Root-CAs für die Ausstellung von Clientzertifikaten..................... 132
x
Tabellenverzeichnis
1
Bedeutung der key usage Bits in X.509v3 Zertifikaten ................................................. 17
2
Bedeutung der netscape-cert-type Bits in X.509v3 Zertifikaten.................................... 21
3
SSLv3: unterstützte kryptographische Algorithmen...................................................... 31
4
Erläuterungen zum Verständnis der Tabellen [5], [6] und [8] ....................................... 35
5
notwendige Zertifikaterweiterungen für SSL Clientzertifikate ..................................... 36
6
notwendige Zertifikaterweiterungen für SSL Serverzertifikate..................................... 37
7
S/MIMEv3: kryptographische Algorithmen auf Sender- und Empfängerseite ............. 37
8
notwendige Zertifikaterweiterungen für S/MIME Benutzerzertifikate ......................... 38
9
Distinguished Name: Attribut-Typen und ihre Repräsentation als Zeichenfolge.......... 49
10
Zuordnung von Intranet-Diensten und Benutzergruppen .............................................. 62
11
FlexiTrust: unterstützte kryptographische Algorithmen ................................................ 79
xi
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
xii
Kapitel 1
Einleitung
„Es gibt eine einfache Methode mit der man herausfinden kann, ob eine Verschlüsselungssoftware sicher ist: Man verschlüsselt damit eine Morddrohung
und schickt sie an den amerikanischen Präsidenten. Wenn man nach ein paar
Tagen noch keinen Besuch bekommen hat, dann ist das Verfahren sicher.“
ALTE KRYPTOGRAPHENWEISHEIT
Motivation
Über Jahrtausende hinweg wurde Kryptographie hauptsächlich von Geheimdiensten und Militärs eingesetzt. Viele Regierungen - darunter auch die US-Regierung - sehen auch heute noch
den Einsatz von Verschlüsselung in einem engen Zusammenhang mit krimineller Energie. Die
Folge ist, dass starke Kryptographie in vielen Staaten gesetzlich beschränkt und in einigen gar
ganz verboten wurde. Einige Regierungen vertreten offensichtlich die These, dass ehrliche
Bürger nichts zu verbergen haben und ihre Kommunikation daher nicht schützen müssen.
Aber es gibt gute Gründe auch ohne kriminellen Hintergrund auf Kryptographie zu setzen.
Neben der wachsenden Bedeutung für sichere Netzwerkverbindungen, digitale Signatur und
E-Payment denke man nur an Unternehmen, die ihr wertvolles geistiges Eigentum vor Wirtschaftsspionage zu schützen gedenken. Die Möglichkeiten an derart brisante Informationen zu
gelangen sind vielfältig.
Echelon [JvBuu01] als weltweites Abhörsystem der US-amerikanischen Geheimdienste, liest
einen großen Teil der Internetkommunikation ungehindert mit. Und sogar die Schweiz gibt zu,
ein vergleichbares System mit dem Namen Satos (Satellite Observation) einzusetzen, um
sicherheitspolitisch bedeutsame Informationen zu beschaffen [FlRoe00]. Aber auch jene Internet-Service-Provider (ISP), über deren Rechner eine vertrauliche Nachricht auf dem Weg
durchs Internet läuft, sind in der Lage diese mitzulesen. Bedenkt man die unglaublichen bei
ISPs anfallenden Datenmengen, mag man die gezielte Suche nach einer bestimmten Information mit der Suche nach der berühmten Nadel im Heuhaufen vergleichen. Aber auch hier gibt
es schon Unterstützung in Form von Carnivore [FlRoe00]. Das Schnüffelsystem vom FBI wird
direkt im Rechenzentrum des ISP installiert und erlaubt die gezielte Überwachung von Personen. Dabei werden Daten, die bestimmten Kriterien genügen, aufgezeichnet - ohne dass der
1
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
Empfänger oder Sender der Daten es bemerkt [CHR00].
Man kommt zu dem Schluss, dass unverschlüsselte Kommunikation mit vertraulichen Daten,
beispielsweise dem wertvollen geistigen Eigentum von Unternehmen, erhebliche Risiken in
sich birgt.
Ziel
Ziel dieser Diplomarbeit ist es, ein einheitliches Sicherheitskonzept für die Allgemeine Deutsche Direktbank AG (DiBa) zu entwickeln, das mobilen Mitarbeitern eine geschützte Kommunikation, die sichere Abfrage von Intranetinhalten sowie Fernadministration des Firmen-LANs
über das Internet ermöglicht.
Um die Sicherheitsanforderungen zu erfüllen, wird eine sog. Public Key Infrastruktur (PKI)
aufgebaut, innerhalb derer ausgewählten Mitarbeitern und Servern elektronische Sicherheitsdienste zur Verfügung gestellt werden. Diese Sicherheitsdienste dienen dazu, elektronische
Dokumente und Daten zwischen Servern und Mitarbeitern über ein Netzwerk mit unsicheren
Leitungen nach fest definierbaren Sicherheitsbedürfnissen auszutauschen.
Eine Public Key Infrastruktur basiert auf kryptographischen Verfahren, die digitale Schlüssel
nutzen. Alle an dieser Infrastruktur teilnehmenden Mitarbeiter bekommen eigene Schlüsselpaare ausgehändigt, die sie für bestimmte Sicherungszwecke, wie beispielsweise Verschlüsselung und digitale Signaturen, verwenden müssen. Diese Schlüsselpaare bestehen jeweils aus
einem privaten und einem öffentlichen Schlüssel. Eine der Hauptaufgaben einer PKI besteht
darin die privaten Schlüssel geeignet an die Mitarbeiter zu verteilen sowie die öffentlichen
zweifelsfrei zuzuordnen und zu publizieren. Die Zuordnung der öffentlichen Schlüssel zu den
Mitarbeitern geschieht über digitale Zertifikate. Diese Zertifikate haben den gleichen Stellenwert wie Ausweise in der realen Welt und sind somit für das Vertrauen in deren Authentizität
verantwortlich.
Um dieses Ziel zu verwirklichen, fiel die Wahl auf die Trustcenter-Software FlexiTrust. Diese
wird in Zusammenarbeit mit der PKI-Forschungsgruppe von Professor Johannes Buchmann an
der Technischen Universität Darmstadt entwickelt und ermöglicht den Aufbau von PKIs in Firmen, Forschungseinrichtungen oder Behörden.
Beim Design der Software wurde auf Flexibilität der einzelnen Module geachtet. Ziel war es,
dass FlexiTrust leicht an unterschiedliche Anwendungsumgebungen anpassbar ist und die Einrichtung einer PKI ohne großen Aufwand möglich wird.
FlexiTrust ist vollständig in Java implementiert und somit plattformunabhängig. Die Software
kann auf allen gängigen Betriebssystemen (wie UNIX oder Windows NT/2000) ohne Veränderung eingesetzt werden und eignet sich so für den Betrieb in heterogenen Umgebungen.
Die Unterstützung gängiger Standards wie X509, LDAP, SSL, TLS, S/MIME, sowie JDBC
garantiert ein Höchstmaß an Interoperabilität mit PKI-fähigen Anwendungen. Von FlexiTrust
ausgestellte Zertifikate können beispielsweise in WWW-Anwendungen, für sichere Email oder
für den Zugang durch Firewalls verwendet werden. Die gängigen Programme von Netscape
oder Microsoft sowie weiterer Anbieter in diesen Bereichen werden dabei unterstützt.
2
Kapitel 1: Einleitung
Ein weiteres Plus von FlexiTrust ist die Skalierbarkeit. Die verschiedenen PKI-Module können
sowohl auf einem einzelnen Rechner als auch verteilt auf mehreren Rechnern installiert werden, sodass sich die Software gleichermaßen für den Aufbau kostengünstiger PKIs in kleineren
oder mittleren Unternehmen, wie für große Behörden oder Konzerne eignet.
Struktur der Arbeit
Die vorliegende Diplomarbeit gliedert sich in die folgenden Kapitel:
Kapitel 2 Erklärt notwendige theoretische Grundlagen kryptographischer Techniken wie
Public Key Verschlüsselung, digitale Signaturen usw., soweit sie zum Verständnis
der weiteren Kapitel hilfreich sind.
Kapitel 3 Befasst sich mit dem Konzept der Public Key Infrastrukturen. Dazu werden
Grundbegriffe wie Zertifikate, Trustcenter sowie Verfahren zur Verschlüsselung
erklärt und auf die rechtlichen Zusammenhänge eingegangen.
Kapitel 4 Eine Bedarfsanalyse ermittelt den konkreten Bedarf des Kunden und stellt
anschließend ein geeignetes Sicherheitskonzept auf Basis von PKI-Diensten auf.
Kapitel 5 Bereits beim Kunden im Einsatz befindliche, sowie (falls notwendig) zusätzliche
Software wird auf Möglichkeiten zur kryptographischen Absicherung hinsichtlich
einer Integration in die PKI untersucht.
Kapitel 6 Schildert die praktische Umsetzung der Zertifizierungsinfrastruktur.
Kapitel 7 Diskutiert einige interessante und z. T. bedenkliche Richtlinien der Policy mit
besonderem Augenmerk auf die speziellen Anforderungen des SigG.
Kapitel 8 Fasst noch einmal kurz die vorangegangenen Kapitel zusammen und gibt einen
Ausblick auf mögliche zukünftige Erweiterungen.
Anhang
Anhang A Definiert Zertifizierungsrichtlinien (die sog. Policy) nach denen die einzurichtende
Zertifizierungsinstanz Zertifikate ausstellt.
Anhang B Enthält nützliche Hinweise zur Einrichtung bestehender Softwarekomponenten,
welche für den Betrieb der PKI notwendig sind.
3
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
4
Kapitel 2
Kryptographische Grundlagen
In diesem Kapitel werden einige Grundlagen der klassischen Kryptographie vorgestellt, die für
das Verständnis der nachfolgenden Kapitel hilfreich sind. Die klassische Kryptographie bildet
die Basis für die kryptographischen Protokolle und Verfahren von Public Key Infrastrukturen
(PKI). Die im Folgenden besprochenen Grundlagen beschränken sich auf Verfahren zur Verschlüsselung von Daten (wie Nachrichten, Dokumenten oder Dateien), wobei zwischen symmetrischen und asymmetrischen Verfahren unterschieden wird. Abschließend folgt ein
Einblick in die digitale Signatur, dem elektronischem Äquivalent zur eigenhändigen Unterschrift.
Alice, Bob und Malory
In Büchern und Beispielen zur Kryptographie kommen immer wieder dieselben Personen vor,
um kryptographische Prinzipien zu veranschaulichen. Dabei handelt es sich um Alice und Bob,
die über das Internet Daten austauschen, sowie Malory, der die Rolle des Angreifers übernimmt und versucht, deren Daten zu manipulieren oder wenigstens mitzulesen. Diesen beispielhaften Vorgaben möchte ich mich mit dieser Arbeit anschließen. Bei Bedarf werden
weitere Personen eingeführt.
2.1
Symmetrische Verschlüsselungsverfahren
Bei symmetrischen Verschlüsselungsverfahren lässt sich der zum Entschlüsseln benutzte
Schlüssel leicht aus demjenigen zum Verschlüsseln berechnen (und umgekehrt). Sehr häufig
stimmen beide Schlüssel sogar überein. Man spricht daher meist von ein und demselben
Schlüssel.
Abbildung 1 zeigt, wie symmetrische Verschlüsselung prinzipiell funktioniert. Auf den Klartext (Plaintext), der die zu verschlüsselnden Daten repräsentiert, wird eine Verschlüsselungsfunktion in Abhängigkeit eines kryptographischen Schlüssels angewendet. Dieser Schlüssel
wird als geheimer Schlüssel bezeichnet. Der aus dieser Verschlüsselung resultierende Chiffretext (Ciphertext) lässt sich ausschließlich mit dem geheimen Schlüssel wieder entschlüsseln.
Vor dem Einsatz eines symmetrischen Verschlüsselungsverfahrens müssen sich Alice und Bob
5
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
auf einen gemeinsamen geheimen Schlüssel einigen. Alice benötigt für jeden Kommunikationspartner allerdings unterschiedliche gemeinsame Schlüssel. Bei n verschiedenen Personen,
die alle untereinander symmetrisch verschlüsselt kommunizieren möchten, werden n·(n-1)/2
Schlüssel benötigt. Für 100 Personen sind das schon 4950 zu vereinbarende, unterschiedliche
geheime Schlüssel. Problematisch stellt sich auch der eigentliche Austausch dieser gemeinsamen geheimen Schlüssel mit den Kommunikationspartnern dar. Diese könnten beim Transport
über unsichere Leitungen von Angreifern abgefangen werden.
Klartext
Klartext
Geheimer
Schlüssel
Geheimer
Schlüssel
Chiffretext
Abbildung 1 symmetrische Verschlüsselung
Zu den bekanntesten symmetrischen Verschlüsselungsverfahren gehören DES (Data Encryption Standard) und IDEA (International Data Encryption Algorithm). DES gilt aber nach heutigen Erkenntnissen nicht mehr als sicher. Aus diesem Grund wird das DES-Verfahren meist nur
noch in Form einer Dreifachverschlüsselung (Tripple-DES, auch 3DES genannt) verwendet.
Weitere symmetrische Verfahren, die heute zunehmend durch Tripple-DES ersetzt werden,
sind AES, RC2 und RC4.
2.2
Asymmetrische Verschlüsselungsverfahren
Asymmetrische Verschlüsselungsverfahren werden auch Public Key Verschlüsselungsverfahren genannt. Sie bedienen sich im Gegensatz zu den symmetrischen Verfahren zwei verschiedener Schlüssel zum Ver- und Entschlüsseln. Wobei sich keiner der beiden aus dem jeweiligen
anderen ermitteln lässt. Bei den beiden Schlüsseln, welche auch als Schlüsselpaar (key pair)
bezeichnet werden, handelt es sich um einen sog. öffentlichen (public key) und einen sog. privaten Schlüssel (private key).
Der öffentliche Schlüssel wird zur Verschlüsselung verwendet (siehe Abbildung 2) und muss
nicht geheim gehalten werden. Er kann an beliebig viele Personen weitergegeben oder in
einem Verzeichnis öffentlich zugänglich gemacht werden. Der private Schlüssel dient der Entschlüsselung, er muss daher privat, d. h. geheim gehalten werden.
Jeder der im Besitz des öffentlichen Schlüssels eines Schlüsselpaares ist, kann Daten verschlüsseln, die ausschließlich vom Besitzer des dazugehörenden privaten Schlüssels entschlüsselt werden können. Alice muss nur ihren öffentlichen Schlüssel bekannt geben, und schon
kann sowohl Bob, als auch der ihr unbekannte Zacharias, damit Daten verschlüsseln, die ausschließlich Alice mit ihrem privaten Schlüssel wieder entschlüsseln kann.
6
Kapitel 2: Kryptographische Grundlagen
Asymmetrische Verfahren vereinfachen das Schlüsselmanagement erheblich. Bei n verschiedenen Personen, die alle untereinander asymmetrisch verschlüsselt kommunizieren möchten,
werden nur n unterschiedliche Schlüsselpaare benötigt. Ungünstiger Weise sind die Rechenoperationen auf denen asymmetrische Verfahren aufbauen erheblich aufwändiger als diejenigen, welche bei symmetrischen Verfahren verwendet werden. Asymmetrische Verschlüsselung
ist damit wesentlich zeitintensiver als Symmetrische.
Klartext
Klartext
Öffentlicher
Schlüssel
Privater
Schlüssel
Chiffretext
Abbildung 2 asymmetrische Verschlüsselung
Zu den bekanntesten asymmetrischen Verschlüsselungsverfahren gehören RSA (das nach seinen Erfindern Rivest, Shamir und Adleman benannt wurde), ElGamal und Verfahren auf Basis
der Elyptic Curve Cryptography.
2.3
Hybridverfahren
Als hybride Verschlüsselungsverfahren werden jene Algorithmen bezeichnet, die symmetrische und asymmetrische Verfahren kombinieren, um die Vorteile beider nutzen zu können.
Ein zufälliger, symmetrischer Sitzungsschlüssel (session key) wird für die Verschlüsselung der
ganzen Sitzung verwendet. Der eigentliche Klartext wird z. B. mit IDEA unter diesem Sitzungsschlüssel verschlüsselt. Für jede weitere Sitzung wird ein neuer Sitzungsschlüssel generiert. Der Austausch des symmetrischen Sitzungsschlüssels erfolgt durch ein asymmetrisches
Verfahren wie RSA unter Verwendung des öffentlichen Schlüssels des Empfängers. Beide verschlüsselten Informationen (der Sitzungsschlüssel und der Chiffretext) werden zusammen an
den Empfänger übermittelt. Dieser muss als erstes den geheimen Sitzungsschlüssel mit seinem
privaten Schlüssel entschlüsseln und kann anschließend den eigentlichen Klartext mit dem Sitzungsschlüssel entschlüsseln. Abbildung 3 zeigt das Verfahren im Überblick.
Hybride Verfahren nutzen somit langsame, asymmetrische Verfahren ausschließlich zur Verund Entschlüsselung des relativ kurzen Sitzungsschlüssels. Der eigentliche, mit unter sehr
lange, Klartext wird mithilfe symmetrischer Verfahren verschlüsselt. Dadurch bedient man
sich neben dem Geschwindigkeitsvorteil symmetrischer, auch dem vereinfachten Schlüsselmanagement asymmetrischer Verfahren.
7
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
Sender
Empfänger
Klartext
Klartext
Geheimer
Sitzungsschlüssel
Öffentlicher
Schlüssel
Verschlüsselter
Sitzungsschlüssel
Geheimer
Sitzungsschlüssel
Privater
Schlüssel
Verschlüsselter
Sitzungsschlüssel
Chiffretext
Chiffretext
Abbildung 3 hybride Verschlüsselung
2.4
Digitale Signaturen
Als digitale Signatur bezeichnet man die Unterschrift (Verschlüsselung) mit dem privaten
Schlüssel eines asymmetrischen Verfahrens. Die Überprüfung (Entschlüsselung) der digitalen
Signatur erfolgt mit dem dazugehörigen öffentlichen Schlüssel. Damit die Unterschrift, die mit
dem privaten Schlüssel des Schlüsselinhabers erfolgt, auch die Authentizität und Integrität
eines Klartextes (z. B. eines Dokumentes, oder einer Nachricht) bezeugt, müssen folgende
Voraussetzungen erfüllt sein.
‰
Fälschungssicherheit
Die digitale Signatur darf nicht zu fälschen sein. Damit wird bewiesen, dass nur
der Unterzeichner und kein anderer den Klartext unterschrieben hat.
‰
Authentizität
Die Echtheit muss mit dem öffentlichen Schlüssel überprüfbar sein. Gelingt dies
nicht, wurde die Signatur entweder mit einem anderen privaten Schlüssel erzeugt
und ist damit nicht von der angegebenen Person, oder der Klartext wurde nach dem
Signieren verändert.
‰
Nicht-Wiederverwendbarkeit
Die digitale Signatur darf nicht in anderen Dokumenten wiederverwendet werden
8
Kapitel 2: Kryptographische Grundlagen
können.
‰
Integrität
Der dazugehörige Klartext darf nicht (unbemerkt) verändert werden können, ohne
dass die digitale Signatur ungültig wird.
Funktionsweise
Um dies zu erreichen, bedient sich die digitale Signatur einer Eigenschaft bestimmter asymmetrischer Verfahren: Ver- und Entschlüsselungsoperation sind kommutativ. D. h. Klartexte können auch mit dem privaten Schlüssel verschlüsselt werden, um sie anschließend mit dem
öffentlichen wieder zu entschlüsseln. Die Reihenfolge ist genau umgekehrt zu dem in
Abschnitt [2.2] vorgestellten Vorgehen. Klartexte, die auf diese Weise verschlüsselt sind, können von jedem wieder entschlüsselt werden, der in Besitz des öffentlichen Schlüssels ist.
Durch die Entschlüsselung mit dem öffentlichen Schlüssel erfolgt quasi eine Prüfung der
Unterschrift. Ist diese gültig, d. h. kann der Klartext entschlüsselt werden, dann kann niemand
anderes als der Inhaber des dazugehörigen privaten Schlüssels den Klartext verschlüsselt
(unterschrieben) haben.
Sender
Empfänger
Klartext
h(x)
Klartext
Hashfunktion
Hashwert
h(x)
11
00 10
01 01
01
11
00 10
01 01
01
Hashwert
Hashfunktion
==?
Privater
Schlüssel
Digitale Signatur
11
00 10
01 01
01
Hashwert
Öffentlicher
Schlüssel
Digitale Signatur
Abbildung 4 Digitale Signatur
U. a. weil Klartexte, die signiert werden sollen, mitunter recht lang werden können und asymmetrische Verfahren relativ langsam arbeiten, wird üblicherweise an Stelle des Klartextes
selbst nur dessen Hashwert unterschrieben. Dieser Hashwert (auch als Message Digest
bezeichnet) bildet große Klartexte mit beliebiger Länge auf sehr kurze Bitfolgen ab, aus denen
der ursprüngliche Klartext nicht wieder rekonstruiert werden kann. Zudem ist es unmöglich,
9
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
den Klartext so zu verfälschen, dass er nachher noch denselben Hashwert liefert. Häufig verwendete Hashfunktionen sind MD4 (Message Digest 4), MD5 (Message Digest 5), SHA-1
(Secure Hash Algorithm) sowie RIPEMD-160.
Die unterschriebenen Hashwerte bilden zusammen mit dem (unverschlüsselten) Klartext die
digitale Signatur. Der Empfänger entschlüsselt zuerst den unterschriebenen Hashwert mit dem
öffentlichen Schlüssel und generiert anschließend selbst den Hashwert des Klartextes, um ihn
mit dem vom Sender erzeugten Hashwert zu vergleichen. Sind beide identisch, bedeutet dies,
dass der Absender den Hashwert für genau den Klartext erzeugt hat, der auch beim Empfänger
zusammen mit der digitalen Signatur angekommen ist. Abbildung 4 stellt das Verfahren noch
einmal grafisch dar.
Digitale Signaturen spielen eine große Rolle bei der Ausstellung von Zertifikaten für Public
Key Infrastrukturen. Zertifizierung und PKI sind Inhalt des folgenden Kapitels.
Zu den bekanntesten Signaturverfahren gehören ElGamal und DSA (Digital Signature Algorithm) sowie das asymmetrische Verschlüsselungsverfahren RSA.
2.5
Zusammenfassung
In diesem Kapitel wurden die wichtigsten Grundlagen der klassischen Kryptographie vorgestellt, die für das Verständnis der folgenden Kapitel hilfreich sind.
Neben der symmetrischen Kryptographie mit ihrer vergleichsweise hohen Verarbeitungsgeschwindigkeit wurde die asymmetrische Kryptographie (auch Public Key Kryptographie
genannt) sowie Hybrid-Verfahren, die beides kombinieren, vorgestellt. Symmetrische Verfahren verwenden meist sowohl zur Ver- als auch zur Entschlüsselung denselben Schlüssel.
Asymmetrische Verfahren hingegen verwenden zwei unterschiedliche Schlüssel, einen Geheimen und einen Öffentlichen.
Digitale Signaturen dienen dazu, die Authentizität und Integrität von Dokumenten zu bestätigen. Sie sind das elektronische Äquivalent zur eigenhändigen Unterschrift.
10
Kapitel 3
Public Key Infrastrukturen
Die im vorangegangenen Kapitel vorgestellten kryptographischen Verfahren bilden die Grundlage für den Aufbau einer Public Key Infrastruktur (PKI). Eine PKI basiert auf kryptographischen Verfahren, die digitale Schlüssel nutzen. Zu den Aufgaben einer PKI gehört die
Generierung und anschließende Zertifizierung von Schlüsselpaaren sowie die Verteilung von
öffentlichen Schlüsseln.
Eine PKI lässt sich organisatorisch in mehrere Komponenten aufteilen. Dazu gehört eine Zertifizierungsstelle, welche Personen und Dienste (Rechner) zertifiziert (d. h. deren Schlüssel
beglaubigt) und somit für das Vertrauen in deren Authentizität verantwortlich ist. Zertifikate
einer solchen Infrastruktur haben den gleichen Stellenwert wie Ausweise in der realen Welt
und stellen damit so etwas wie elektronische Identitätsnachweise von Personen und Diensten
dar. Die zertifizierten digitalen Schlüssel werden u. a. dazu verwendet, digitale Signaturen auszustellen sowie Dokumente und den Datenverkehr zwischen Rechnern zu verschlüsseln. Eine
weitere Komponente ist die Registrierungsstelle, die als Teil der PKI die organisatorische
Schnittstelle zwischen Personen und der PKI einnimmt. Ebenso dazu gehören Verzeichnisse,
in denen ausgestellte Zertifikate öffentlich zur Verfügung gestellt werden und feste Richtlinien
(Policies), um technische, organisatorische, personelle sowie infrastrukturelle Maßnahmen zu
definieren.
In diesem Kapitel werden die dazu notwendigen Grundbegriffe und Standards besprochen. Am
Schluss folgt noch ein Einblick in die rechtlichen Aspekte, die den Betrieb einer PKI und die
Verwendung von Kryptographie im Allgemeinen betreffen.
3.1
Grundlegende Dienste einer PKI
Zu den Hauptaufgaben einer PKI gehört die Gewährleistung von Authentizität, Vertraulichkeit
und Integrität von Personen, Diensten oder Daten während und nach einer Kommunikation.
Man spricht dabei auch von den grundlegenden Diensten einer PKI.
Authentizität
Die Authentizität gewährleistet, dass eine Person die ist, für die sie sich ausgibt. Authentizität
11
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
ist notwendig, um sicheren Zugang zu exklusiven Diensten (wie vertraulichen Internetseiten)
zu ermöglichen. In solchen Fällen muss die Authentizität von Diensten gewährleistet werden,
um sicherzustellen, dass Personen mit dem „richtigen“ Dienst verbunden sind. In diesem
Zusammenhang ebenso wichtig ist die Sicherstellung der Authentizität der Personen selbst,
falls angebotene Dienste bestimmten Personengruppen vorbehalten sein sollen. Dieser Vorgang wird häufig auch als Authentisierung oder Authentifizierung bezeichnet und bedeutet
somit die Verifizierung der Identität der Kommunikationspartner. Authentizität ist weiterhin
notwendig, um zu gewährleisten, dass übertragene Daten auch tatsächlich vom richtigen Kommunikationspartner stammen.
Authentizität umfasst somit sowohl Subjekte (Personen und Dienste) als auch Objekte (Daten)
einer Kommunikation.
Vertraulichkeit
Vertraulichkeit gewährleistet, dass der Inhalt übertragener Daten nur autorisierten Personen
zur Kenntnis gelangt. Darunter fallen sowohl vertrauliche Dokumente (z. B. mit Kreditkarteninformationen oder Unternehmensgeheimnissen) als auch die Datenkommunikation zwischen
zwei Rechnern.
Integrität
Daten-Integrität steht für die Nichtveränderbarkeit von Daten. Bei der Übertragung vertraulicher Daten muss sichergestellt sein, dass diese unterwegs nicht verändert und dass keine Daten
hinzugefügt oder entfernt werden.
In Verbindung mit der Authentizität ermöglicht die Integrität eine Verbindlichkeit in dem
Sinne, dass Urheber von Dokumenten zweifelsfrei und eindeutig bestimmt werden können.
3.2
Schlüsselmanagement
Voraussetzung für den Einsatz eines Public Key Verschlüsselungsverfahrens ist ein funktionierendes Schlüsselmanagement. Unter Schlüsselmanagement versteht man die Generierung,
Speicherung, Verteilung und Anwendung kryptographischer Schlüssel. Es müssen Maßnahmen getroffen werden, um eine Kompromittierung von Schlüsseln zu verhindern. Für den Fall,
dass Angreifer in den Besitz geheimer Schlüssel gelangen, wird selbst das beste Kryptoverfahren nutzlos. Die Kompromittierung von privaten Anwenderschlüsseln stellt zugleich die größte
Schwachstelle einer PKI dar. Verglichen mit der Alternative eine aufwändige Kryptoanalyse
durchzuführen, ist die Kompromittierung - also z. B. der Diebstahl eines Schlüssels - meist mit
erheblich geringerem Aufwand erreichbar. Man erkennt, dass ein besonderes Augenmerk auf
die Sicherheitspolitik gelegt werden muss, um ein sicheres zentrales Management von Schlüsseln zu erreichen.
Zusammenfassend kann man sagen, dass es sicher einfacher ist, an geheime Schlüssel zu
gelangen, als ein Kryptoverfahren zu brechen.
Schlüsselgenerierung
Sicherheit beim Einsatz kryptographischer Schlüssel hängt nicht zuletzt von der Schlüssellänge ab. Schlüssellängen jenseits von 128 Bit gelten heute als Mindestvoraussetzung für den
12
Kapitel 3: Public Key Infrastrukturen
Einsatz symmetrischer Verschlüsselungsverfahren [PhZim99]. Die bisherigen 40 Bit und 56
Bit Exportversionen US-amerikanischer Softwareprodukte, wie etwa des Netscape Navigators
oder des Microsoft Internet Explorers, gelten als schwach und können von entschlossenen
Angreifern in kurzer Zeit überwunden werden. Eine Schlüssellänge von 1024 Bit gilt nach
Stand der Technik als sicher beim Einsatz asymmetrischer Verschlüsselungsverfahren wie
RSA. Die lange Zeit verwendeten 512 Bit RSA Schlüssel eignen sich heute nicht mehr für
Anwendungen mit hohen Sicherheitsanforderungen, da es schon 1999 gelungen ist, solche
Verschlüsselungen zu brechen [HtRiele99].
Entsprechend schreibt die Regulierungsbehörde für Telekommunikation und Post (RegTP) als
zuständige Behörde gemäß SigG (siehe Abschnitt [3.9.2]) eine Schlüssellänge für RSASchlüssel von 1024 Bit oder länger vor, wenn bis Ende 2003 die Sicherheit des Verfahrens
gewährleistet sein soll [RegTP-98].
Generell gilt, dass asymmetrische Schlüssel erheblich größer gewählt werden müssen als Symmetrische, um eine vergleichbare Sicherheit zu gewährleisten. Eine solche Abschätzung liefern
Lenstra und Verheul in [LenVerh99]. Allerdings sollte man, sowohl bei asymmetrischer, als
auch bei symmetrischer Verschlüsselung die Schlüssellänge nicht zu groß wählen, da die
Geschwindigkeit des Ver- und Entschlüsselns mit wachsender Schlüssellänge sinkt.
Schlüsselspeicherung
Der private Teil eines asymmetrischen Schlüsselpaares sollte möglichst sicher auf der Festplatte (oder Diskette) des Schlüsselinhabers gespeichert werden. Um dabei maximale Sicherheit zu gewährleisten, muss der Schlüssel wiederum selbst verschlüsselt abgelegt werden.
Üblicherweise erreicht man dies durch den Einsatz von symmetrischen Verschlüsselungsverfahren, wobei ein Passwort als Schlüssel dient. Erst nach Eingabe dieses Passwortes wird der
private Schlüssel für Anwendungsprogramme nutzbar. Mehr Sicherheit bietet der Einsatz von
Smartcards anstelle der Festplatte. Einige Smartcards geben den privaten Schlüssel auch nach
Eingabe der PIN nicht Preis und führen stattdessen die kryptographischen Operationen ausschließlich selbst aus.
Alte Schlüssel, die nicht mehr in Gebrauch sind und durch Neue ersetzt wurden, sollten auf
sichere Weise vom verwendeten Datenträger entfernt werden. Die Anforderung an ein sicheres
Entfernen geht üblicherweise über das einfache Löschen mittels Betriebssystemfunktionen
hinaus. Die Schlüsseldaten sollten vom Betriebssystem nicht einfach zum Überschreiben freigegeben werden. Eine Lösung bieten hier spezielle Tools, die zum Löschen freigegebene
Dateien vorher mehrfach mit sinnlosen Daten überschreiben, um zu verhindern, dass gelöschte
Speicherbereiche mit sensiblen Schlüsseldaten wieder hergestellt werden können.
Schlüsselanwendung
Der Geheimhaltung des eigenen privaten Schlüssels kommt eine große Bedeutung zu, mit ihr
steht und fällt letztlich die Vertraulichkeit bzw. die Zurechenbarkeit verschlüsselter oder
signierter Daten. Daher liegt die Verantwortung beim Umgang mit Schlüsselpaaren beim
Anwender selbst. Dieser muss entsprechend über die Bedeutung der Geheimhaltung bei der
Handhabung privater Schlüssel informiert bzw. geschult werden. Bei Verschlüsselungsverfahren auf Public Key Basis, welche innerhalb fester Firmenstrukturen eingesetzt werden, gehören dazu auch Arbeitsanweisungen, die von Mitarbeitern eingehalten werden müssen.
13
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
Schlüsselverteilung
Um die Verbreitung öffentlicher Schlüssel auf sichere und zuverlässige Weise zu ermöglichen,
wurden digitale Zertifikate geschaffen. Diesem Thema widmet sich der folgende Abschnitt.
3.3
Zertifikate
Funktion
Ein digitales Zertifikat ist eine signierte Datenstruktur, die neben einem öffentlichen Schlüssel
noch den Namen seines Besitzers enthält. Das Zertifikat sorgt somit für eine sichere Zuordnung des Schlüssels zu einem Subjekt1. Das Signieren selbst kann dabei von verschiedenen
vertrauenswürdigen Einrichtungen übernommen werden. Eine derartige Einrichtung muss das
Vertrauen aller an dieser Kommunikation beteiligter Personen genießen, inkl. des Zertifizierten
selbst. Auf Basis dieser Vertrauensbeziehung wird gewährleistet, dass der signierte öffentliche
Schlüssel auch wirklich zur zertifizierten Person gehört und für die sichere Kommunikation
mit dieser verwendet werden kann. Umgekehrt bedeutet dies: Schenkt ein Kommunikationspartner dieser Einrichtung kein Vertrauen, so vertraut er auch nicht deren Zertifikat - und somit
nicht der Zuordnung des Schlüssels zur Person. Dies wiederum hat zur Konsequenz, dass die
Verwendung des Schlüssels für ihn keine sichere Kommunikation gewährleisten würde. Sehr
häufig, aber nicht in allen Vertrauensmodellen (siehe Kapitel [3.5]), wird die Aufgabe einer
solchen Einrichtung von einem Trustcenter übernommen (mehr dazu in Kapitel [3.4]). Wenn
im Folgenden also von einer Zertifizierungsstelle gesprochen wird, kann dies neben einer vertrauten Person auch ein Trustcenter sein.
Allgemeiner Aufbau
Neben den Angaben zur zertifizierten Person enthält ein Zertifikat üblicherweise weitere Informationen, wie in Abbildung 5 zu sehen ist. Das Zertifikat selbst besitzt eine Seriennummer, um
es eindeutig von anderen unterscheiden zu können. Weiterhin ist ein Gültigkeitszeitraum vorgesehen, innerhalb dessen ein Zertifikat als vertrauenswürdig gilt (solange es nicht vorzeitig
widerrufen wurde, dazu später mehr in Kapitel [3.4.2]).
Folgendes Beispiel verdeutlicht die Notwendigkeit digitaler Zertifikate bei der Verteilung
asymmetrischer Schlüssel: Alice möchte mit Bob kommunizieren; Bob sendet dazu seinen
öffentlichen Schlüssel ungeschützt per Email an Alice; allerdings bemerkt Malory diesen Vorgang, fängt die Email ab, tauscht Bobs Schlüssel gegen seinen Eigenen aus und sendet diesen
an Alice weiter; Alice vertraut dem Schlüssel nun fälschlicherweise und verwendet ihn für jede
weitere Kommunikation mit Bob; Malory kann somit alle Emails von Alice an Bob entschlüsseln und lesen; um unauffällig zu bleiben, muss er nun noch die Emails neu, mit dem (richtigen) öffentlichen Schlüssel von Bob, verschlüsseln und an ihn weiterschicken. Dieser
Vorgang, den man als Man-in-the-middle-Attacke bezeichnet, kann durch den Einsatz digitaler
Zertifikate wirksam unterbunden werden.
1. Im weiteren Verlauf dieses Kapitel wird der Einfachheit halber von Personen gesprochen, obwohl allgemein als Subjekte auch Dienste wie Webserver o. ä. gemeint sein können.
14
Kapitel 3: Public Key Infrastrukturen
Name des Zertifizierten:
Bob Offliner
Angaben zur zertifizierten
Person oder Einrichtung
Öffentlicher Schlüssel des Zertifizierten:
59A6 105D 17E1 CC72 9C35 15B8 0E96 6A56 6142 39DC
DEE4 D9E0 E521 118D 1A46 26DB 1C5F AA7E B0C6 ...
Angaben zum Zertifikat
Seriennummer des Zertifikats:
1234567890
Gültigkeitszeitraum:
01.03.2001-30.09.2001
Zertifikataussteller:
Allgemeine Deutsche Direktbank AG, Deutschland
Signatur des Zertifikatausstellers:
DEE4 D9E0 E521 118D 1A46 DCBA DFA5 022E 1D01 8388
26DB 1C5F AA7E B0C6 598E 8B8A D0B7 47C5 B0D1 ...
Zertifikat
Abbildung 5 Allgemeiner Aufbau eines digitalen Zertifikates
3.3.1
Zertifikate nach X.509v3
Einer der am weitesten verbreiteten Standards für digitale Zertifikate ist X.509v3. Zertifikate,
die dem X.509 Format entsprechen, sind eigentlich als Bestandteil des X.500 ISO-Standards
gedacht gewesen. X.500 definiert einen weltweiten, hierarchischen Verzeichnisbaum, in dem
alle Objekte wie Länder, Organisationen, Orte, Personen etc. eindeutige Namen erhalten. Die
Namen sind dabei global eindeutig definiert sowie hierarchisch strukturiert und relativ zur
Position im Verzeichnisbaum festgelegt. An dieser Stelle wird auf weitere Details verzichtet,
da Verzeichnisdienste wie X.500 im Abschnitt [3.8] ausführlich behandelt werden.
X.500 konnte sich bis heute nicht auf breiter Front durchsetzen. Der Zertifikatsstandard nach
X.509 hingegen schon, er liegt mittlerweile in Version 3 vor und bildet die Basis für viele
kryptographische Standards, zum Beispiel SSL und S/MIME. Beide werden im Kapitel [3.7]
eingehend besprochen. Eine Ausnahme bildet PGP (Kapitel [5.2.1]), welches sein eigenes Zertifikatformat verwendet.
3.3.1.1 Standardfelder
Wie bereits angesprochen, enthalten Zertifikate neben Angaben zur zertifizierten Person noch
weitere, z. B. Angaben zur Identifizierung der Zertifizierungsstelle sowie allgemeine Angaben,
um ein gewisses Maß an Sicherheit gewährleisten zu können. In der Datenstruktur von Zertifikaten nach dem X.509v3 Standard sind u. a. die im Folgenden genannten Felder enthalten
[RFC2459]. Um den Verwendungszweck einzelner Felder zu verdeutlichen, wird bei einigen
ein Beispiel in hervorgehobener Schrift angegeben.
‰
Version (version)
Die Versionsnummer des verwendeten X.509-Standards: der Wert 0x0 entspricht
X.509v1, 0x1 entspricht X.509v2 und 0x2 entspricht der aktuellen Version 3.
Version = 0x2
15
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
‰
Seriennummer des Zertifikates (serial number)
Alle von derselben Zertifizierungsstelle ausgestellten Zertifikate erhalten eine eindeutige, fortlaufende Seriennummer. Dadurch ist jedes Zertifikat über seine Seriennummer und die Zertifizierungsstelle eindeutig bestimmbar.
serial number = 123456
‰
Bezeichnung des Signaturverfahrens (signature algorithm)
Angaben zum verwendeten kryptographischen Algorithmus, mit dem das Zertifikat von einer Zertifizierungsstelle signiert wurde. z. B. RSA, DSA oder ein Verfahren auf Basis elliptischer Kurven.
signature algorithm = md5RSA
‰
Name der Zertifizierungsstelle (issuer)
Bezeichnet die Zertifizierungsstelle, welche das Zertifikat herausgegeben und
signiert hat. Der Name (Distinguished Name) kennzeichnet einen Eintrag im hierarchischen X.500- (oder LDAP-) Verzeichnisbaum und ist daher eine eindeutige
Identifizierung der Zertifizierungsstelle. Mit dem Namensmodell von LDAP-Verzeichnissen beschäftigt sich Kapitel [3.8.2.3].
issuer =
‰
CN=DiBa-PrototypeCA,OU=IT,
O=Allgemeine Deutsche Direktbank AG,C=DE
Name des Zertifizierten (subject)
Name des Zertifikatinhabers gemäß dem X.500 Standard (siehe auch issuer).
subject =
CN=Bob Offliner,OU=Marketing,
O=Allgemeine Deutsche Direktbank AG,C=DE
‰
Gültigkeitszeitraum (validity)
Ein Anfangs- und Enddatum kennzeichnet den Zeitraum, während dessen das Zertifikat Gültigkeit besitzt. Außerhalb dieses Zeitraumes kann der Zertifikatsaussage
nicht mehr vertraut werden und es muss ein neues Zertifikat beantragt werden.
‰
Öffentlicher Schlüssel des Zertifizierten (subject public key info)
Enthält den öffentlichen Schlüssel und ermöglicht damit die Zuordnung zur zertifizierten Person.
‰
Digitale Signatur der Zertifizierungsstelle (signature)
Die digitale Signatur bestätigt die Echtheit des Zertifikates, und ordnet damit den
darin enthaltenen öffentlichen Schlüssel eindeutig der als Zertifikatnehmer
benannten Person zu.
3.3.1.2 Standarderweiterungen
Um möglichst effektiv auf zukünftige Anforderungen reagieren zu können und nicht jedes Mal
eine neue Version des X.509 Standards definieren zu müssen, sieht X.509v3 die Möglichkeit
vor, das Format um eigene Felder, sog. generische Zertifikaterweiterungen (Extensions), zu
erweitern. Dazu wurde ein spezieller Syntax definiert, mit dessen Hilfe für eigene Anwendungen zusätzliche Informationen in ein Zertifikat einfügt werden können. Die Zertifikate können
so ohne großen Aufwand individuell an die Bedürfnisse eines Unternehmens oder einer Software angepasst werden.
16
Kapitel 3: Public Key Infrastrukturen
Erweiterungen können zu diesem Zweck mithilfe eines sog. Critical Bits als kritisch oder
unkritisch eingestuft werden. Kritisch bedeutet in diesem Zusammenhang, dass die korrekte
Interpretation dieser Erweiterung für die Verwendung des Zertifikates eine notwendige Bedingung darstellt. Sobald eine Software diese Erweiterung nicht kennt, muss ein Zertifikat gemäß
dieser Theorie als ungültig betrachtet und zurückgewiesen werden, auch wenn das Zertifikat
an sich technisch korrekt ist. Unbekannte und gleichzeitig unkritische Erweiterungen hingegen
können von einer Software einfach ignoriert werden, ohne dass dies Auswirkungen auf das
gesamte Zertifikat hätte. Es lässt sich leider nicht verhindern, dass einige X.509v3 Zertifikate
durch kritische Erweiterungen zu einander inkompatibel sind.
Folgende Erweiterungen sind standardmäßig in Zertifikaten der Version 3 enthalten
[RFC2459]:
‰
Zertifizierungspfad (basic constraints)
Diese Erweiterung besteht aus mehreren Feldern. Eines davon dient der Unterscheidung von Zertifikaten einer Zertifizierungsstelle (CA-Zertifikaten) und Zertifikaten von Personen oder Servern (Entity-Zertifikaten). Ein weiteres Feld enthält
Vorgaben für den Zertifizierungspfad, wie z. B. die maximal erlaubte Tiefe einer
Zertifizierungshierarchie. Eine Längenangabe im Zertifizierungspfad von 0 bedeutet für die Zertifizierungsstelle, dass nur Zertifikate für Personen bzw. Server ausgestellt werden dürfen, nicht jedoch für untergeordnete Zertifizierungsstellen. Erst
eine Angabe von 1 oder größer ermöglicht hierarchische Zertifizierungsmodelle,
wie sie in Abschnitt [3.5.3] besprochen werden.
basic constraints = critical, ca=TRUE, pathlen=0
‰
Verwendungszweck des Schlüssels (key usage)
Die Richtlinien, nach denen eine Zertifizierungsstelle Zertifikate ausstellt, können
Einschränkungen bezüglich des Verwendungszweckes von Zertifikaten aufweisen.
Diese Erweiterung erlaubt daher den Verwendungszweck des in einem Zertifikat
enthaltenen Schlüssels anzugeben. Die Verwendung des Schlüssels kann - wenn
gewünscht - eingeschränkt werden, sodass dieser beispielsweise ausschließlich
zum Verifizieren von Widerrufslisten oder Zertifikaten aber nicht innerhalb eines
Schlüsselaustausches verwendet werden darf. Tabelle [1] zeigt die zur Verfügung
stehenden Verwendungsmöglichkeiten, welche in Form eines Bitstrings (mittels
Setzen einzelner Bits) miteinander kombiniert werden können. Allerdings ergeben
durchaus nicht alle Verwendungszwecke in Kombination miteinander einen Sinn,
wie beispielsweise keyAgreement in Verbindung mit encipherOnly.
Bit
Bezeichnung
Verwendungszweck des öffentlichen Schlüssels
0
digitalSignature
Prüfung von speziellen Signaturen zur Entity- und DatenquellenAuthentifizierung. Gilt nicht für die Verifizierung von Zertifikaten, CRLs und bewussten Signaturen (Bits 1, 5 und 6).
1
nonRepudiation
Keine Zurückweisung bei der Prüfung von Signaturen. Gilt nicht
für die Verifizierung von Zertifikaten und CRLs (Bits 5 und 6).
2
keyEncipherment
Verschlüsselung von Sitzungsschlüsseln (Schlüsselmanagement,
Schlüsselübertragung).
Tabelle 1 Bedeutung der key usage Bits in X.509v3 Zertifikaten
17
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
Bit
Bezeichnung
Verwendungszweck des öffentlichen Schlüssels
3
dataEncipherment
Verschlüsselung von Daten. Gilt nicht für Verschlüsselung von
Sitzungsschlüsseln (Bit 2).
4
keyAgreement
Schlüsselaustausch (mit Diffie-Hellman o. Ä.)
5
keyCertSign
Verifizierung von Zertifikaten.
6
cRLSign
Verifizierung von Widerrufslisten (CRLs).
7
encipherOnly
Innerhalb eines Schlüsselaustausches zur Verschlüsselung von
Daten (benötigt keyAgreement, Bit 4).
8
decipherOnly
Innerhalb eines Schlüsselaustausches zur Entschlüsselung von
Daten (benötigt keyAgreement, Bit 4).
Tabelle 1 Bedeutung der key usage Bits in X.509v3 Zertifikaten
‰
Erweiterter Verwendungszweck des Schlüssels (extended key usage)
Diese Erweiterung kann an Stelle oder auch ergänzend zu key usage verwendet
werden und dient dazu die Verwendung des Schlüssels noch feiner einzuschränken. Softwarehersteller können dazu eigene Werte für diese Erweiterung registrieren lassen, wie es beispielsweise Netscape und Microsoft getan haben.
‰
Weitere Namen des Zertifizierten (subject alternative name)
X.509 ermöglicht bis einschließlich der Version 2 nur Namen, die dem X.500 Standard entsprechen. Um diesen Einschränkungen zu entgehen (X.509 wird meist
unabhängig von X.500 eingesetzt), können in dieses Feld zusätzliche Namen des
Zertifizierten in einem beliebigen Format gespeichert werden. Möglich sind hier z.
B. Email-Adressen, URLs, IP-Adressen oder Host-Namen.
‰
Weitere Namen der Zertifizierungsstelle (issuer alternative name)
wie subject alternative name, ermöglicht dies der Zertifizierungsstelle Namen zu
verwenden, die nicht dem X.500 Standard entsprechen.
‰
Eindeutige Kennung des Zertifizierungsstellen-Schlüssels (authority key identifier)
Verwendet eine Zertifizierungsstelle mehrere Schlüssel zum Signieren von Zertifikaten, kann hier genau angegeben werden, welcher Schlüssel für dieses Zertifikat
verwendet wurde. Dies ist der Fall, wenn die Schlüssel z. B. routinemäßig gewechselt werden.
‰
Eindeutige Kennung des zertifizierten Schlüssels (subject key identifier)
Ebenso kann die zertifizierte Person mehrere Schlüssel besitzen. Welcher davon
mit dem Zertifikat signiert wurde, wird hier festgelegt.
‰
CRL Verteilungspunkte (crl distribution points)
Adresse einer oder mehrerer Certificate Revocation Listen (CRLs) der Zertifizierungsstelle, welche dieses Zertifikat signiert hat. Solche Listen dienen der Entscheidung, welche Zertifikate vor Ablauf ihrer Gültigkeit widerrufen wurden und
18
Kapitel 3: Public Key Infrastrukturen
welche weiterhin gültig sind. Abschnitt [3.4.2] beschäftigt sich eingehend mit dem
Thema Zertifikatswiderruf.
crl distribution points = URI:http://localhost/ca.crl
Mittlerweile machen viele Firmen Gebrauch von den Erweiterungsmöglichkeiten der Zertifikate nach X.509v3, einige davon werden im Folgenden an Hand zweier Beispiele vorgestellt.
3.3.1.3 Erweiterungen im Sinne der Signaturverordnung
Im Zusammenhang mit dem in Kapitel [3.9.2] besprochenen Signaturgesetz (SigG), sind die
gemeinsam vom Bundesamt für Sicherheit in der Informationstechnik (BSI) und der Gesellschaft für mathematische Datenverarbeitung (GMD) entwickelten Erweiterungen interessant.
Die folgenden Zertifikatsfelder umfassen hauptsächlich rechtliche Fragen [BSI98]:
‰
Nutzungsbeschränkung
Die Einschränkung der Zertifikatsnutzung ist nicht mit der Standarderweiterung
key usage zu verwechseln. Vielmehr handelt es sich hier um eine Einschränkung,
die festlegt, dass Zertifikate beispielsweise nur zum Signieren von Quittungen und
Belegen, nicht aber von Verträgen vorgesehen sind. Welche Fälle das im Einzelnen
sind, wird in einem separaten Attribut-Zertifikat angegeben.
‰
Erstellungsdatum
Der Zeitpunkt der Zertifikatsausstellung wird durch einen Zeitstempel festgehalten. Dies dient der Bestätigung, dass der Zertifizierungsstelle zu einem bestimmten
Zeitpunkt die erforderlichen Daten vorgelegen haben.
‰
Vertretungsmacht
Evtl. ist die zertifizierte Person im Besitz einer Vollmacht und darf für andere Personen das digitale Signieren von Dokumenten übernehmen. Ein Beispiel hierfür ist
ein Rechtsanwalt, welcher die Vertretungsmacht für einen Klienten in einem
bestimmten Rechtsfall besitzt und diesen vor Gericht vertreten darf. Neben der zertifizierten Person darf auch die hier genannte dritte Person die Sperrung des Zertifikates veranlassen ([SigG97-2] §9).
‰
Zulassung
Diese Erweiterung bescheinigt dem Zertifizierten die Zugehörigkeit zu einer
bestimmten Berufsgruppe wie Arzt, Notar, Rechtsanwalt, o. Ä.
‰
Monetäre Bedingungen
Bis zu welchem Geldbetrag der Zertifizierte für von ihm signierte Dokumente haftet, wird in dieser Erweiterung festgehalten.
3.3.1.4 Erweiterungen von Netscape
Die Firma Netscape hat für ihre Softwareprodukte wie dem Netscape Communicator eigene
(proprietäre) Erweiterungen zum X.509v3 Standard definiert [NS99-1]. Diese dienen sowohl
zur Authentifikation von SSL-Verbindungen des Navigator Browsers als auch zum digitalen
Signieren oder Verschlüsseln von Nachrichten im Emailprogramm Messenger. Zu dem Zeitpunkt, als Netscape seine Erweiterungen entwarf, fehlten dem X.509 Standard einige wichtige
19
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
Erweiterungen, welche heute als Standarderweiterungen enthalten sind (siehe weiter oben).
Aus diesem Grund überschneidet sich die Bedeutung einiger Netscapeerweiterungen mit
denen bestimmter Standarderweiterungen.
Netscapeerweiterungen sollten niemals als critical markiert werden. Die Softwareprodukte
anderer Firmen verarbeiten diese Erweiterungen nicht und somit werden Zertifikate mit diesen
kritischen Netscapeerweiterungen von nicht-Netscape Software als ungültig abgewiesen. Ein
SSL-Serverzertifikat, in dem der netscape-cert-type als kritisch markiert ist, würde beispielsweise vom Microsoft Internet Explorer zurückgewiesen werden [DFN00-1].
‰
Kommentar (netscape-comment)
Enthält den Verwendungszweck des Zertifikates in Form eines beliebigen Textes.
Dieser kann dem Benutzer beim Anzeigen des Zertifikats mit ausgegeben werden.
‰
Basis URL (netscape-base-url)
Basis WWW-Adresse für Zugriffe auf Verzeichnisdaten der Zertifizierungsstelle.
Alle nachfolgenden Adressen können, wenn gewünscht, relativ zu dieser Basisadresse angegeben werden. Ist dies der Fall, wird vor einem Zugriff auf die jeweilige Adresse die Basisadresse hinzugefügt.
netscape-base-url = https://localhost/cert
‰
Adresse für Widerrufszwecke (netscape-revocation-url)
WWW-Adresse zur Online-Gültigkeitsprüfung von Entity-Zertifikaten.
‰
Adresse für CA-Widerrufszwecke (netscape-ca-revocation-url)
Wie netcape-revocation-url. Diese Erweiterung ist allerdings nur im Zusammenhang mit CA-Zertifikaten gültig.
‰
Adresse für Zertifikatserneuerungsanträge (netscape-cert-renewal-url)
WWW-Adresse für die Verlängerung von abgelaufenen Zertifikaten. Unter dieser
Adresse sollte dem Benutzer ein Formular angeboten werden, mit dessen Hilfe er
sein Zertifikat verlängern kann.
‰
Adresse der Policy (netscape-ca-policy-url)
WWW-Adresse zum Nachlesen der für das Zertifikat gültigen Zertifizierungsrichtlinien im HTML-Format.
netscape-ca-policy-url = /Hilfe/AGB/
‰
Name des zertifizierten SSL-Servers (netscape-ssl-server-name)
Host-Name des SSL-Servers, für den das Zertifikat ausgestellt wurde; dient der
Authentizitätsüberprüfung während des Verbindungsaufbaus als zusätzliche
Sicherheit. Der hier angegebene Host-Name wird mit dem tatsächlich zurückgelieferten Host-Namen verglichen. Stimmen diese nicht miteinander überein,
bekommt der Benutzer die Möglichkeit, die Verbindung zu beenden.
netscape-ssl-server-name = www.dem-bob-sein-sslserver.de
‰
Zertifikatstyp (netscape-cert-type)
Ermöglicht die Einschränkung möglicher Anwendungsfälle, für die ein Zertifikat
eingesetzt werden darf. Aufbau: 8-Bit Wert für den Typ des Zertifikates, je 1 Bit
20
Kapitel 3: Public Key Infrastrukturen
zum Kombinieren der folgenden Zertifikatstypen:
Bit
Zertifikatstyp
Bemerkung
0
SSL Clientauthentifizierung
Entity-Zertifikat (SSL-Client)
1
SSL Serverauthentifizierung
Entity-Zertifikat (SSL-Server)
2
S/MIME für den Client-Einsatz
Entity-Zertifikat (S/MIME-Client)
3
Code Signing (z. B. Java Applets)
Entity-Zertifikat (Sourcecode, Programme, Plugins usw.)
4
reserviert für zukünftige Erweiterungen
5
SSL Zertifizierungsstelle
CA-Zertifikat zur Zertifizierung von
Entity-Zertifikaten (SSL Server oder Benutzer)
6
S/MIME Zertifizierungsstelle
CA-Zertifikat zur Zertifizierung von
Entity-Zertifikaten (S/MIME Benutzer)
7
Object Signing Zertifizierungsstelle
CA-Zertifikat zur Zertifizierung
Entity-Zertifikaten (Sourcecode, Programme, Plugins usw.)
Tabelle 2 Bedeutung der netscape-cert-type Bits in X.509v3 Zertifikaten
Sobald eines der Bits 5, 6 oder 7 gesetzt ist, interpretieren Softwareprodukte von
Netscape das Zertifikat als Zertifikat einer Zertifizierungsstelle (CA-Zertifikat),
andernfalls wird angenommen, es sei ein Entity-Zertifikat.
Dieser Abschnitt hat gezeigt, dass Zertifikate digitalen Identitätsnachweisen entsprechen und
damit die Grundlage für viele sicherheitsrelevante Konzepte auf Signatur- und Verschlüsselungsbasis bilden. Im weiteren Verlauf dieser Arbeit werden diese daher noch häufig zum Einsatz kommen.
3.4
Trustcenter
Die Frage, von welcher Einrichtung Zertifikate signiert werden sollen, wurde schon im vorangegangenem Abschnitt gestellt. Diese Aufgabe kann u. a. von einzelnen Personen erledigt werden, denen alle Kommunikationspartner vertrauen. Im kleinen Kreis, z. B. bei der direkten
Kommunikation zwischen Alice, Bob und ein paar weiteren Freunden mag das praktikabel
sein. Dieser Ansatz scheitert aber schon bei kleinen bis mittleren Unternehmensnetzwerken
mit mehreren Dutzend Mitarbeitern. Dort kennt (und vertraut) man sich für gewöhnlich allenfalls noch innerhalb der eigenen Abteilung - vertrauensvolle Bindeglieder zwischen den verschiedenen Abteilungen sind aber eher unwahrscheinlich.
3.4.1
Struktur eines Trustcenters
Die gängigere Lösung ist eine unabhängige Instanz zu schaffen, der alle vertrauen: ein Trust-
21
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
center. Das Trustcenter innerhalb einer Public Key Infrastruktur ist eine Einrichtung zur Zertifizierung von Personen, Diensten oder Servern, sowie zur Speicherung, Bereitstellung und
Überprüfung von kryptographischen Schlüsseln. Aus diesem Grund, sollte ein Trustcenter ausschließlich von einer vertrauenswürdigen Stelle (bzw. Organisation) betrieben werden. In der
Literatur wird ein Trustcenter häufig auch als Trusted Third Party (TTP), bzw. als vertrauenswürdige dritte Partei bezeichnet.
Wie ein Trustcenter aufgebaut sein sollte, damit es weitestgehend den Anforderungen des deutschen Signaturgesetzes (SigG) [SigG01-1] entspricht, zeigt Abbildung 6.
2
Zertifizierungseinheit
Zertifizierungseinheit
CA
RA
Registrierungseinheit
Registrierungseinheit
1
Bob
Zertifikat
Zertifikat
Personalisierungseinheit
Personalisierungseinheit PS
geheimer
geheimer Schlüssel
Schlüssel
Chipkarte
Schlüsselgenerator
Schlüsselgenerator
KG
DIR
Verzeichnisdienst
Verzeichnisdienst
Trust Center
weitere
weitere Zertifikate...
Zertifikate...
Bobs
Bobs Zertifikat
Zertifikat
Malory
Alice
Abbildung 6 mögliche Struktur eines SigG-konformen Trustcenters
Ein derartiges Trustcenter besteht aus mehreren Komponenten, die untereinander in Beziehung
stehen. Deren Funktionsweise und ihre Abhängigkeiten voneinander lassen sich wie folgt charakterisieren.
Registrierungseinheit
Eine Registrierungseinheit (Registration Authority, kurz: RA) innerhalb eines Trustcenters
nimmt die Anträge auf Zertifizierung an und gibt die notwendigen Daten an die Zertifizierungseinheit weiter. Um größtmögliche Sicherheit zu gewährleisten, muss die zu zertifizierende Person persönlich vorsprechen und sich entsprechend ausweisen, beispielsweise durch
Vorlage des Personalausweises. Eine Registrierungseinheit ist nicht notwendigerweise zwischen Zertifizierungseinheit und den Benutzern geschaltet, die Zertifizierungseinheit kann
(abhängig vom Sicherheitsmodell) Zertifizierungsanträge auch direkt von den Benutzern
annehmen, ohne Umweg über eine RA.
22
Kapitel 3: Public Key Infrastrukturen
Zertifizierungseinheit
Die Zertifizierungseinheit (Certification Authority, kurz: CA) nimmt Zertifizierungsanträge
von der RA oder den Benutzern selbst an und erhält für jeden zu zertifizierenden Benutzer vom
Schlüsselgenerator ein digitales Schlüsselpaar. Daraus erstellt die CA ein Zertifikat und
signiert es anschließend. Das Zertifikat wird zusammen mit dem privaten Schlüssel an die Personalisierungseinheit weitergereicht und zusätzlich (ohne den privaten Schlüssel) dem Verzeichnisdienst übergeben.
Schlüsselgenerator
Der Schlüsselgenerator (Key Generation, kurz: KG) übernimmt die Generierung von asymmetrischen Schlüsselpaaren, bestehend aus öffentlichen und privaten Schlüsseln. Alternative Zertifizierungsrichtlinien überlassen es dem Benutzer, für die Generierung des eigenen
Schlüsselpaares zu sorgen. Letztgenannte Methode bietet dem Benutzer mehr Sicherheit, niemand außer ihm persönlich kommt jemals direkt mit seinem privaten Schlüssel in Berührung.
Diese Vorgehensweise entspricht dem eigentlichen Sicherheitsgedanken, der hinter asymmetrischen Schlüsselpaaren steht. Der private Schlüssel soll schließlich geheim bleiben. Sie hat
allerdings mehrere Nachteile. Zum einen benötigt ein Benutzer die Infrastruktur (und das
Know-how) zum Erstellen von Schlüsselpaaren, zum anderen muss er den privaten Schlüssel
spätestens dann herausgeben, sobald er auf eine Chipkarte integriert werden soll.
Personalisierungseinheit
Die Personalisierungseinheit (Personalization, kurz: PS) liefert das von der CA erhaltende
Zertifikat und den geheimen Schlüssel zusammen auf einem geeigneten Datenträger - z. B.
einer Chipkarte oder Diskette - an den Benutzer aus.
Verzeichnisdienst
Ein Verzeichnisdienst (Directory, kurz: DIR) hält die signierten Zertifikate öffentlich zum
Abruf für andere Benutzer bereit und gewährleistet so eine gewisse Sicherheit, was die Aktualität von Zertifikatsinformationen betrifft. Weiterhin werden vom Verzeichnisdienst sog.
Widerrufslisten bereitgestellt, mehr dazu im nächsten Abschnitt.
Grundsätzlich besteht die Möglichkeit, Zertifizierungseinheit, Schlüsselgenerator und Personalisierungseinheit zu einer Einheit zusammenzufassen, wie in der Abbildung dargestellt. Alle
drei Komponenten sollten isoliert von jeglichem Intranet- oder Internetzugang installiert werden. Die Schnittstelle einer CA zum Netzwerk bilden ausschließlich das Zertifikatsverzeichnis
und die Registrierungseinheit. Nur Dienste der Zone 2 nehmen Anfragen vom Netzwerk entgegen, für Dienste der Zone 1 besteht keinerlei Netzkontakt zur Außenwelt. Eine Ausnahme bildet die Personalisierungseinheit, deren Kontakt beschränkt sich aber auf die persönliche
Übergabe der Zertifikatsdaten - ein Netzwerkzugang ist auch hierfür nicht notwendig. Dienste
der Zone 1 werden üblicherweise als dedizierte Rechner in einer besonders gesicherten Umgebung (wie einem Tresorraum) realisiert. Wo hingegen für die der Zone 2 eine Installation in der
DMZ (entmilitarisierte Zone) eines Unternehmens ausreichend Sicherheit gewährleistet.
23
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
3.4.2
Zertifikatswiderruf
Ein Zertifikatswiderruf (Sperrung) wird notwendig, wenn der Verdacht besteht, dass private
Schlüssel kompromittiert wurden. Dies ist beispielsweise der Fall, wenn Bob seine Chipkarte
verliert, oder Mallory die Festplatte entwendet, auf der Bobs privater Schlüssel gespeichert ist.
Damit verliert das zugehörige Zertifikat seine Vertrauenswürdigkeit. Private Schlüssel sind auf
Chipkarten oder Festplatten zwar üblicherweise durch PINs oder Passwörter vor unbefugten
Zugriffen geschützt. Setzt man allerdings ausreichend kriminelle Energie voraus, stellt auch
dies kein allzu großes Hindernis für potenzielle Angreifer dar. Bei einem entsprechenden Verdacht muss Bob unverzüglich bei seinem Trustcenter den Widerruf des Zertifikates veranlassen.
Ein äußerst kritisches Thema ist die Kompromittierung von CA-Schlüsseln. Zusammen mit
dem CA-Zertifikat verlieren auch alle von dieser CA ausgestellten Zertifikate ihre Vertrauenswürdigkeit.
Neben der Kompromittierung existieren weitere Gründe für den Widerruf von Zertifikaten. Als
Beispiel sei ein Mitarbeiter genannt, dem ein Zertifikat ausgestellt wurde, das die Zugehörigkeit zu seiner Firma bescheinigt. Auf Basis dieser Bescheinigung wird Zugang zu firmeninternen Informationen ermöglicht. Verlässt dieser nun seinen Arbeitgeber, so verliert die
eigentliche Zertifikataussage ihre Gültigkeit und das Zertifikat muss vom Trustcenter widerrufen werden.
Es gibt verschiedene Methoden, potenziellen Kommunikationspartnern mitzuteilen, welche
Zertifikate widerrufen sind:
‰
Online-Abruf
Der Online-Abruf erfordert vor jeder einzelnen Verwendung eines Zertifikates den
Online-Zugriff zum Trustcenter. Dabei wird nachgefragt, ob das zu verwendende
Zertifikat noch Gültigkeit besitzt. Man erkennt, dass dies eine zuverlässige
Methode ist, denn es werden immer die aktuellsten Sperrinformationen vom Trustcenter verwendet. Die Nachteile sind der durch ständige Anfragen anfallende
Overhead beim Trustcenter sowie die nötige Online-Verbindung bei jeder einzelnen Transaktion.
‰
Certificate Revocation List
Bei einer Certificate Revocation List (CRL) handelt es sich um eine Art schwarze
Liste (Blacklist): Das Trustcenter veröffentlicht in regelmäßigen Abständen eine
Liste mit den Seriennummern aller gesperrten Zertifikate. Damit reduziert sich der
notwendige Overhead z. T. erheblich, denn Übertragungen der jeweils aktuellsten
CRL werden nur in vorhersehbaren Zeitabständen erforderlich. Ein Nachteil dieser
Methode soll aber nicht verschwiegen werden. Zertifikate, die kurz nach Herausgabe einer solchen Liste gesperrt werden, sind erst mit der nächsten Aktualisierung
der Liste auch tatsächlich als gesperrt zu erkennen. Bei Veröffentlichungen im
Wochenrhythmus wären das bis zu sieben Tage - Zeit genug für Malory um mit
Bobs gestohlener Chipkarte eine Menge Unfug zu treiben.
Bei einer CRL handelt es sich somit um eine Form von Offline-Abruf, bei der nur
in regelmäßigen, fest definierten Abständen eine Online-Verbindung zum Trust-
24
Kapitel 3: Public Key Infrastrukturen
center nötig wird. Mit kleinerem Zeitspannen beim Veröffentlichen bzw. Abrufen
der Liste nähert sich das Verfahren allerdings immer mehr dem Online-Abruf an.
Letztlich muss man einen Kompromiss zwischen Aktualität und Overhead eingehen.
‰
3.5
Weiße Liste
Die weiße Liste ist das Gegenstück zu einer CRL, auf dieser werden nicht gesperrte
Zertifikate veröffentlicht. Weiße Listen werden allerdings nur selten verwendet, da
die Zahl der gültigen, nicht gesperrten Zertifikate meist wesentlich größer ist, als
die der Widerrufenen. Somit wird eine auf diesem Verfahren basierende Liste
erheblich umfangreicher als eine CRL.
Vertrauensmodelle
Zur Echtheitsbestätigung von Zertifikaten und um zu verhindern, dass Zertifikatinhalte nachträglich verändert werden können, werden Zertifikate digital signiert. Diese Signatur wird
anschließend dem Zertifikat beigefügt. Schon Kapitel [3.4] beschäftigt sich u. a. mit der Frage,
wer ausgestellte digitale Zertifikate signieren soll. An dieser Stelle wird daher näher auf die
verschiedenen verwendeten Varianten - auch Vertrauensmodelle genannt - eingegangen.
3.5.1
Direct Trust
Das einfachste Vertrauensmodell ist Direct Trust. Jeder Anwender muss dabei sein eigenes
Zertifikat selbst signieren. Allerdings hat ein vom Anwender selbst signiertes Zertifikat ungefähr die Glaubwürdigkeit eines selbst ausgestellten Personalausweises. Aus diesem Grund
wird bei Direct Trust häufig auf den Einsatz von Zertifikaten ganz verzichtet. Dieses Vorgehen
hat entscheidende Nachteile. Denn wie kann sich Alice sicher sein, wirklich Bobs öffentlichen
Schlüssel zu verwenden und nicht etwa den von Malory? Das hat zur Konsequenz, dass Alice um sicherzugehen - sich den Schlüssel persönlich von Bob besorgen müsste. Was im kleinen
Rahmen zwischen ein paar Freunden noch praktikabel klingt, wird bei umfangreichen Teilnehmergruppen immer unüberschaubarer, wenn nicht gar unmöglich wird. Der Grund dafür ist,
dass Alice und Bob ihre öffentlichen Schlüssel mit jedem Kommunikationspartner austauschen und diese anschließend auch noch selbst verwalten müssen.
Direct Trust ist somit das Modell, dem das geringste Vertrauen entgegengebracht wird. Die
Teilnehmer vertrauen ausschließlich Schlüsseln, die sie persönlich erhalten haben. Vorteilhaft
ist allerdings, dass Direct Trust so gut wie keinerlei Infrastruktur benötigt. Die größte Schwäche Direct Trusts ist, dass unter solchen Voraussetzungen nur sehr schwer einheitliche Sicherheitsrichtlinien durchsetzbar sind. Es ist beinahe unmöglich festzustellen, wer wem zu einem
bestimmten Zeitpunkt vertraut hat. Problematisch ist auch das Sperren von kompromittierten
Schlüsseln, denn wie soll man alle Teilnehmer von einmal im Umlauf befindlichen, ungültig
gewordenen öffentlichen Schlüsseln benachrichtigen? Negativ einzuordnen ist auch die fehlende rechtliche Sicherheit. Wenn jeder Teilnehmer nach Belieben neue Schlüsselpaare erzeugen kann, lässt sich praktisch nicht nachweisen, ob eine digitale Signatur und der dazugehörige
öffentliche Schlüssel vom Teilnehmer stammen.
Vor diesem Hintergrund eignet sich Direct Trust nahezu überhaupt nicht für den Einsatz in
Umgebungen, die auf eine exakte Durchsetzung von Sicherheitsrichtlinien, sowie Rechtssicherheit bei digitalen Signaturen angewiesen sind.
25
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
3.5.2
Web Of Trust
Das Vertrauensmodell Web Of Trust hebt einige der vorher genannten Einschränkungen auf,
indem digitale Zertifikate nicht mehr vom Besitzer des Schlüssels selbst signiert werden. Stattdessen darf jeder Teilnehmer die Zertifikate von Schlüsseln anderer Teilnehmer signieren. D.
h. Alice signiert das Zertifikat von Bob und Bob das von Alice. Anschließend vertraut Alice
nicht nur Bobs Schlüssel, sondern auch allen öffentlichen Schlüsseln anderer Anwender, die
Bob in einem Zertifikat signiert hat. Jeder Zertifikatsinhaber kann also selbst Zertifizierungsinstanz „spielen“. Dabei entsteht wie in Abbildung 7a eine ganze Kette von vertrauten Zertifikaten.
In der Abbildung sind Teilnehmer als dunkle Kreise dargestellt, wobei die Kürzel A, B, M
sowie Z für die allseits bekannten Teilnehmer Alice, Bob, Malory und Zacharias stehen. Unbenannte Kreise stellen beliebige weitere Teilnehmer dieses Vertrauensmodells dar. Pfeile zwischen Teilnehmern symbolisieren ausgestellte Zertifikate, wobei am Pfeilursprung der
Aussteller und am Pfeilende der Empfänger (Zertifizierte) steht.
CA
CA
M
!
B
A
Z
Legende:
CA
a) Web of Trust
b) flache Zertifizierungshierarchie
Teilnehmer
Teilnehmer vertraut Teilnehmer
CA zertifiziert Teilnehmer
Wurzel-CA
Wurzel-CA
CA
CA
CA
CA
RegTP
RegTP
CA
CA
CA
CA
c) strikt hierarchisches Modell
CA
CA
CA
CA
Deutsche
Deutsche
Post
Post AG
AG
Deutsche
Deutsche
Telekom
Telekom AG
AG
weitere
weitere CAs...
CAs...
d) zweistufige Hierarchie nach deutschem Signaturgesetz
Abbildung 7 Vertrauensmodelle
Wenn man Abbildung 7a genauer betrachtet, sieht man, dass Alice Bob vertraut. Bob wiederum vertraut weiteren Personen. Eine dieser Personen vertraut allerdings auch Malory. Die
Vertrauensbeziehung zwischen der nicht näher bezeichneten Person und Malory stellt zugleich
26
Kapitel 3: Public Key Infrastrukturen
die Schwachstelle dieses Modells dar und ist deshalb in der Abbildung mit einem Ausrufezeichen als besonders brisant gekennzeichnet. Denn wenn Bob einer Person vertraut, die wiederum Malory vertraut, dann heißt das nichts anderes, als dass Bob von nun an auch dem
Schurken Malory vertraut (und damit auch allen anderen Personen, denen Malory vertraut).
Problematisch stellt sich auch die Kommunikation zwischen unbekannten Personen dar. Wenn
Alice an Zacharias eine verschlüsselte Email schicken möchte, diesen jedoch selbst nicht
kennt, ist sie darauf angewiesen, dass sein Zertifikat durch eine Kette von Signaturen auf
jemanden zurückzuführen ist, dem sie vertraut.
Ebenso wie beim bereits vorgestellten Vertrauensmodell Direct Trust ist es auch beim Web Of
Trust sehr schwierig eine durchgehend einheitliche Sicherheitspolitik durchzusetzen. Denn
wer kann schon genau bestimmen, unter welchen Voraussetzungen ein Benutzer für einen
anderen ein digitales Zertifikat ausstellt. Nicht anders sieht es bei der Sperrung von Zertifikaten aus. Bob muss jedem Teilnehmer bekannt geben, dass dieser sein Zertifikat nicht mehr verwenden soll, was organisatorisch bei einer größeren Teilnehmergruppe nahezu unmöglich ist.
Auf rechtlicher Seite bestehen die gleichen Probleme wie beim Vertrauensmodell Direct Trust.
Für die Verwendung im kommerziellen Umfeld ist dieses Modell daher nur bedingt geeignet.
3.5.3
Hierarchical Trust
Das leistungsfähigste Vertrauensmodell ist Hierarchical Trust, auch hierarchisches Modell
genannt. Im Unterschied zu den beiden zuvor Genannten, zertifizieren Teilnehmer dieses Vertrauensmodells weder sich selbst noch andere Teilnehmer. Zertifikate werden ausschließlich
von vertrauenswürdigen Instanzen (Trusted Third Parties) ausgestellt und signiert. Diese sind
Teil eines Trustcenters und werden i.A. als Zertifizierungsinstanz bezeichnet.
Das hierarchische Vertrauensmodell existiert in unterschiedlichen Ausprägungen bezüglich der
Hierarchietiefe.
‰
Flache Zertifizierungshierarchie
Die einfachste Form ist die flache (einstufige) Zertifizierungshierarchie, wie sie in
Abbildung 7b dargestellt ist. Sie besteht aus vielen Teilnehmern, aber nur einer
einzigen CA.
‰
Strikt hierarchisches Modell
Diese Form der Zertifizierungshierarchie (Abbildung 7c) enthält mehrere, hierarchisch angeordnete CAs, wobei jeder Benutzer üblicherweise nur bei einer registriert ist. CA-Zertifikate einer untergeordneten CA sind von einer übergeordneten
CA signiert. Am oberen Ende der Hierarchie steht die Wurzel-CA, deren Zertifikat
von ihr selbst signiert ist. Jedes Zertifikat dieser Hierarchie kann auf das Zertifikat
der Wurzel-CA zurückgeführt werden, in dem der Zertifizierungspfad entlang des
Baumes zurückverfolgt wird.
Ein Vorgang namens Crosszertifizierung ermöglicht es, voneinander unabhängige Zertifizierungshierarchien miteinander zu verbinden. Verwendung findet dies beispielsweise bei der
Fusion zweier Unternehmen, die jeweils über eigene Zertifizierungsstellen verfügen und diese
nun vereinen möchten. Dazu ist es nötig, dass sich die Wurzel-CAs beider Unternehmen
gegenseitig ein digitales Zertifikat ausstellen, um die Teilnehmer beider Hierarchien in das
jeweilige Vertrauensmodell mit einzuschließen.
27
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
Eine CA stellt das vertrauensvolle Bindeglied zwischen Teilnehmern einer Hierarchieebene
dar. Teilnehmer, welche von ein und derselben CA zertifiziert sind vertrauen sich gegenseitig vorausgesetzt natürlich, sie sehen die signierende CA als vertrauenswürdig an.
Vorteil dieses Modells gegenüber den beiden Vorherigen ist die vergleichsweise einfach durchzusetzende Sicherheitspolitik. Ein Trustcenter kann genau festlegen, welche Teilnehmer zertifiziert werden und unter welchen Umständen sowie zu welchem Zweck diese ein Zertifikat
ausgestellt bekommen.
Eine besondere Stellung nimmt die Zertifizierungshierarchie aus Abbildung 7d ein. Es stellt
die zweistufige Hierarchie nach deutschem Signaturgesetz (SigG) dar. Hier gibt es neben der
Wurzelinstanz, welche von der Regulierungsbehörde für Telekommunikation und Post
(RegTP) betrieben wird, nur noch eine Ebene darunter mit beliebig vielen, weiteren CAs.
Momentan gehören dazu u. a. die Trustcenter der Deutschen Telekom AG und der Deutschen
Post AG. Dieses Modell beseitigt den letzten Kritikpunkt der Vorangegangenen: die fehlende
Rechtssicherheit digitaler Signaturen. Mehr dazu in Abschnitt [3.9.2].
3.6
Schlüsselwiederherstellung
Verschlüsselung wichtiger Daten birgt immer ein enormes Risiko in sich. Wenn der zur Entschlüsselung notwendige Schlüssel verloren geht, sind die verschlüsselten Daten somit unwiederbringlich verloren. Vermeiden lässt sich der endgültige Verlust digitaler Schlüssel durch die
rechzeitige Hinterlegung eines Zweitschlüssels bei einer vertrauenswürdigen Instanz.
Gründe für den Einsatz einer sicheren Schlüsselhinterlegung, um bei berechtigtem Interesse
verschlüsselte Daten ohne den Original-Schlüssel zu entschlüsseln, sind vielfältig [AdaLlo99]:
‰
Vergessenes Passwort
Einer der am häufigsten auftretenden Fälle, sind Benutzer, die Passwort/PIN zur
Freischaltung ihres privaten Schlüssels vergessen haben - wodurch dieser wertlos
wird.
‰
Tod des Schlüsselbesitzers
Wie oben, der Entschlüsselungsschlüssel ist zwar weiterhin vorhanden, aber das
Passwort bzw. die PIN zur Freischaltung des Schlüssels sind anderen Personen
nicht bekannt.
‰
Sabotage
Ein Mitarbeiter verlässt (beispielsweise auf Grund einer Kündigung) seine Firma
und vernichtet aus Rache seinen privaten Schlüssel - und damit vielleicht das
Ergebnis monatelanger Arbeit.
‰
Verlust des Schlüssels
Der Verlust des privaten Schlüssels kann schon auf Grund eines fehlenden Backups nach einem Plattencrash eintreten; oder, falls Chipkarten verwendet werden,
ganz simpel durch deren Diebstahl oder Beschädigung.
‰
Rechtsstaatliche Überwachung
Zur unbemerkten Überwachung von potenziellen Straftätern benötigen Ermitt-
28
Kapitel 3: Public Key Infrastrukturen
lungsbehörden eine Kopie des bei der Verschlüsselung verwendeten Schlüssels.
Dieser müsste vom Opfer freiwillig bei der Ermittlungsbehörde hinterlegt werden.
3.6.1
Escrowed Encryption Standard
Die Hinterlegung eines Zweitschlüssels bei einer dafür vorgesehenen Instanz müsste auf freiwilliger Basis geschehen. Allerdings funktionieren auf freiwilliger Basis arbeitende Verfahren
nur dann, wenn alle Parteien sich daran beteiligen. Verstöße gegen Schlüsselwiederherstellungsprotokolle bleiben aber mit Sicherheit auch dann nicht aus, wenn sie mit hohen Strafen
belegt werden. Es sei denn, man sorgt durch ein geeignetes Verfahren dafür, dass ein solcher
Verstoß nicht möglich wird. Ein Beispiel für ein unter staatlicher Kontrolle stehendes Schlüsselwiederherstellungsverfahren, ist der von der NSA entwickelte und zeitweise von der USRegierung eingesetzte Escrowed Encryption Standard (EES) aus dem Jahr 1994.
Beim EES-Verfahren werden private Schlüssel bei zwei staatlichen Stellen (sog. Key-escrow
Agenturen) je zur Hälfte hinterlegt, um eine (vom Opfer unbemerkte) Überwachung des Nachrichtenverkehrs zu ermöglichen. Dabei wurde Wert darauf gelegt, dass nur in begründeten Fällen eine Schlüsselwiederherstellung von überwachender Seite (Ermittlungsbehörden,
Geheimdienst) möglich ist. Mithilfe einer richterlichen Genehmigung können die Strafverfolgungsbehörden den zur Entschlüsselung notwendigen, in zwei Teilschlüssel zerlegten Chipschlüssel wieder zusammensetzen.
Maximale Sicherheit sollte dabei eine Hardwarelösung bieten (Clipper-Chip oder Capstone).
EES konnte sich allerdings nicht durchsetzen, da im Laufe der Zeit eine Möglichkeit gefunden
wurde, die für das Verfahren wichtige Prüfsumme zu fälschen. Dennoch wurden die Einzelheiten des Hardwareverfahrens lange Zeit von der NSA weit gehend geheim gehalten. Mittlerweile wurde der verwendete Algorithmus als „unclassified“ erklärt und kann nun ungehindert
analysiert werden [JoPflue01].
Aber selbst, wenn man nicht eine Hintertür in Form der Prüfsumme gefunden hätte, wer hätte
Alice und Bob daran gehindert, einfach auf EES zu verzichten und stattdessen eine andere Verschlüsselungstechnologie zu verwenden?
3.7
Kryptographische Verfahren auf Public Key Basis
Dem TCP/IP Protokoll fehlt die Möglichkeit sichere2 Verbindungen aufzubauen. Nachfolgend
werden daher erst einmal einige kryptographische Verfahren vorgestellt, die von vorhandener
Software dazu verwendet werden, sichere Verbindungen aufzubauen. Für eine Beschreibung
des TCP/IP Protokolls wird auf [AnSTanen96] verwiesen.
Alle in diesem Abschnitt besprochenen kryptographischen Verfahren nutzen die Vorteile von
Zertifikaten, um Dienste wie Authentizität, Vertraulichkeit und Integrität auf TCP/IP-Ebene zu
implementieren. Im Einzelnen sind dies SSL, S/MIME sowie IPSec.
2. D. h. unter Wahrung von Authentizität, Vertraulichkeit und Integrität.
29
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
3.7.1
SSL
Secure Socket Layer (SSL) ist eine transparente Protokollschicht, die von der Firma Netscape
entwickelt wurde, um Dienste wie Vertraulichkeit und Integrität (mittels Verschlüsselung),
sowie Authentifizierung (durch Zertifikate) unterhalb der Anwendungsschicht des TCP/IPProtokollstacks anzubieten. Angesiedelt zwischen dem Transportprotokoll TCP und den darüber liegenden Anwendungsprotokollen (siehe Abbildung 8) kann SSL zur kryptographischen
Absicherung von Internet-Dienst-Protokollen wie HTTP, Telnet, FTP, POP3 oder LDAP eingesetzt werden. D. h. es ermöglicht eine abhörsichere Kommunikation und den Transport sicherheitsrelevanter Daten über das World Wide Web.
Host
Host
HTTP,
HTTP, Telnet,
Telnet,
FTP,
FTP, POP3,
POP3, ...
...
HTTP,
HTTP, Telnet,
Telnet,
FTP,
FTP, POP3,
POP3, ...
...
SSL
SSL
TCP
TCP
IP
IP
LAN,
LAN, PPP,
PPP, ...
...
SSL
SSL
TCP
TCP
Router
IP
IP
IP
IP
LAN,
LAN, PPP,
PPP, ...
...
LAN,
LAN, PPP,
PPP, ...
...
Abbildung 8 SSL setzt zwischen TCP und einem Anwendungsprotokoll an
Der allgemeine Ablauf bei Verbindung eines Clients mit einer per SSL gesicherten Webseite
ist folgender: Der Webserver sendet im ersten Schritt sein digitales Zertifikat. Sofern dieses
von einer CA ausgestellt und signiert wurde und deren digitales Zertifikat schon im Browser
des Clients gespeichert ist, erkennt dieser es als gültig an. Die Standardbrowser der Firmen
Microsoft und Netscape bringen schon von Hause aus einige Zertifikate von bekannten, großen CAs mit. Für den Fall, dass das Zertifikat der zertifizierenden CA dieser Webseite nicht
enthalten ist, bleibt dem Benutzer die Entscheidung überlassen, dem Webserverzertifikat zu
vertrauen. Dabei besteht natürlich die Gefahr, dass Benutzer jederzeit auch ungültige Zertifikate annehmen können und diesen dann in Zukunft fälschlicherweise Vertrauen schenken. Die
Sicherheit hängt in solchen Fällen alleine von den Benutzern selbst ab. Unternehmen, welche
aus wirtschaftlichen Interessen oder aus Gründen des Vertrauens eigene CAs betreiben, anstatt
ihre Server von einer der großen, bekannten CAs zertifizieren zu lassen, sind deshalb darauf
angewiesen, dass alle Clientrechner vor der ersten Verbindungsaufnahme mit dem Server, das
Zertifikat ihrer eigenen CA in die Liste vertrauenswürdiger CAs importieren.
Intern ist die SSL-Protokollschicht in fünf weitere Protokolle unterteilt:
‰
Handshake-Protokoll
Das Handshake-Protokoll authentifiziert den Server und (optional auch) den Client
mittels X.509v3-Zertifikaten. Es handelt das anzuwendende Kryptoverfahren zwischen Client und Server aus und tauscht anschließend einen symmetrischen
30
Kapitel 3: Public Key Infrastrukturen
Schlüssel (Sitzungsschlüssel) zwischen beiden aus.
‰
Change-CipherSpec-Protokoll
Das Change-CipherSpec-Protokoll ermöglicht die vereinbarten Kryptoverfahren
während der Übertragung zu wechseln.
‰
Alert-Protokoll
Das Alert-Protokoll versendet Fehler- und Warnmeldungen, für den Fall, dass ein
Datenaustausch außerplanmäßig verläuft.
‰
ApplicationData-Protokoll
Das ApplicationData-Protokoll reicht die Daten der Anwendungsschicht an das
SSL-Record-Protokoll weiter.
‰
SSL-Record-Protokoll
Das SSL-Record-Protokoll wendet auf die übergebenen Daten ein Hashverfahren
an und verschlüsselt (wenn gewünscht) diese anschließend symmetrisch zusammen mit dem Hashwert.
SSL ist nicht auf die Verwendung bestimmter kryptographischer Algorithmen festgelegt. Stattdessen haben Server und Client die Möglichkeit, sich beim Verbindungsaufbau mithilfe des
Handshake-Protokolls auf die zu verwendenden Verfahren zu einigen. Folgende Algorithmen
stehen dabei laut [NS98-1] zur Verfügung:
Verfahren
Algorithmus
Schlüsselaustausch
RSA und KEA
Verschlüsselung (symmetrisch)
RC2, RC4, DES, Triple-DES und SKIPJACK
Hashfunktion
SHA-1 und MD5
Signaturen
RSA und DSA
Tabelle 3 SSLv3: unterstützte kryptographische Algorithmen
Dem Server steht dabei die Möglichkeit offen, die für den Einsatz infrage kommenden Algorithmen einzuschränken. Dies ermöglicht u. a. die Festlegung einer Mindestschlüssellänge, die
ein verbindungswilliger Client vorweisen muss, damit eine SSL-Verbindung zu Stande kommt.
Bestenfalls einigen sich Server und Client darauf hin auf den kryptographisch stärksten Algorithmus, den beide gemeinsam unterstützen. Anderenfalls kann es aber auch vorkommen, dass
gar keine Einigung zu Stande kommt - und damit auch keine Verbindung. Dies ist beispielsweise der Fall, wenn der Client eine (veraltete) Software einsetzt, deren kryptographischen
Algorithmen noch durch die ehemaligen US-Exportbeschränkungen auf Schlüssellängen von
maximal 40-bit beschränkt sind, der Server aber eine höhere Sicherheit fordert (wie beispielsweise 128-bit). Der US-amerikanischen Exportpolitik bezüglich starker Kryptographie widmet
sich Kapitel [3.9.3].
Die Authentizität von Server und Client wird mithilfe der schon besprochenen X.509v3 Zerti-
31
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
fikate gewährleistet. Dabei kann sich sowohl der Server als auch der Client per Zertifikat
authentifizieren. In Abhängigkeit der Serverkonfiguration ist es ebenso möglich, dass sowohl
Client, als auch Server auf den Einsatz von Zertifikaten verzichten und öffentliche Schlüssel
verwenden, die nicht signiert sind. Weiterhin kann auf den Einsatz von Verschlüsselung ganz
verzichtet werden, für den Fall, dass die Gesetzgebung eines Staates den Einsatz von Verschlüsselung in öffentlichen Netzen nicht erlaubt. Frankreich z. B. beschränkt auch heute noch
den legalen Gebrauch von Verschlüsselungsverfahren ([BJKoops01] und [JoPflue01]).
3.7.1.1 Server Authentifizierung
Wie im Abschnitt [3.7.1] beschrieben, authentifiziert sich der Server gegenüber dem Client, in
dem er sein digitales Zertifikat sendet, welches vom Client dazu verwendet wird, die Identität
des Servers zu überprüfen.
Der Client erkennt die Zugehörigkeit des Zertifikates zum Server und damit die Identität desselben an, wenn sämtliche der in Abbildung 9 geforderten Bedingungen erfüllt werden.
M
Liegt das heutige Datum innerhalb des Gültigkeitszeitraumes?
Der Client vergleicht den Gültigkeitszeitraum des Server-Zertifikates mit dem heutigen Datum. Außerhalb dieses Zeitraumes ist das Zertifikat ungültig, d. h. der Zertifikatsaussage darf nicht vertraut werden.
N
Gehört die CA des Servers zu den vertrauenswürdigen CAs?
Jeder SSL-Client führt eine Liste mit Zertifikaten der für ihn vertrauenswürdigen
CAs. Der Inhalt dieser Liste entscheidet darüber, welche Serverzertifikate vom
Client akzeptiert werden und welche nicht. Dazu muss der Distinguished Name
(DN) auf dem Serverzertifikat dem DN einer CA dieser Liste entsprechen. Notfalls
wird versucht, eine übergeordnete CA zu finden, auf die dies zutrifft.
O
Erlaubt der öffentliche Schlüssel der CA die Überprüfung der CA Signatur?
Der Client überprüft an Hand des öffentlichen CA-Schlüssels, welcher im CA-Zertifikat (aus o. g. Liste) enthalten ist, ob die CA-Signatur im Serverzertifikat gültig
ist. Ist diese ungültig, weil beispielsweise das Zertifikat nachträglich verändert
wurde, oder passt der öffentliche CA-Schlüssel nicht zum Signieren verwendeten
privaten CA-Schlüssel, wird der Server nicht authentifiziert.
P
Stimmt der auf dem Zertifikat angegebene Domainname mit dem tatsächlichen Domainnamen überein?
Dieser Schritt überprüft, ob der Server auch tatsächlich die im Zertifikat angegebene Netzwerkadresse besitzt. Wenn der Domainname (bzw. die IP-Adresse) nicht
übereinstimmt, muss der Client die Verbindung zum Server ablehnen. Die Praxis
sieht allerdings ein wenig anders aus, die meisten Webbrowser informieren den
Anwender über diesen Missstand und überlassen ihm die Wahl, ob die Verbindung
wirklich abgebrochen werden soll.
Der Authentifizierungsprozess gilt als abgeschlossen und damit der Server als korrekt authentifiziert, wenn alle genannten Bedingungen erfüllt sind. Fordert der Server zusätzlich eine
Authentifikation des Clients, folgt anschließend die im nächsten Abschnitt beschriebene Prozedur zur Client-Authentifizierung.
32
Kapitel 3: Public Key Infrastrukturen
Zertifikat des Servers
DN des Servers:
cn=IntranetDemo,o=diba,c=de
N
Zertifikat der ausstellenden CA
Öffentlicher Schlüssel des Servers:
59A6 105D 17E1 CC72 9C35
1A46 26DB 1C5F AA7E ...
Gültigkeitszeitraum:
01.01.2001-31.12.2003
Signatur der CA:
DEE4 D9E0 E521 118D 1A46 DCBA
26DB 1C5F AA7E B0C6 ...
Zertifikat einer beliebigen weiteren CA
...
DN der ausstellenden CA:
cn=PrototypeCA,o=diba,c=de
P
M
O
DN der CA:
cn=PrototypeCA,o=diba,c=de
Öffentlicher Schlüssel der CA:
8B8A D0B7 47C5 B0D1 1F0C
15B8 0E96 6A56 6142 ...
Signatur der CA:
DEE4 D9E0 E521 118D 1A46 DCBA
26DB 1C5F AA7E B0C6 ...
...
Zertifikat einer beliebigen weiteren CA
Liste vertrauenswürdiger CAs des Clients
Abbildung 9 SSLv3-Server: Authentifizierungsvorgang im Überblick
Abschließend generiert der Client einen zufälligen Datenblock, verschlüsselt ihn mit dem privaten Schlüssel des Servers und sendet ihn an diesen. Ist der Server in der Lage, die Daten zu
entschlüsseln, beiweist dies, dass er auch im Besitz des zum Zertifikat gehörenden privaten
Schlüssels ist. Anderenfalls wird die Verbindung beendet.
3.7.1.2 Client Authentifizierung
Es wurde bereits angesprochen, dass ein SSL-Server so konfiguriert werden kann, dass sich
auch ein Client gegenüber dem Server authentifizieren muss. Das Wissen über die Identität des
Clients ermöglicht auf Serverseite eine Rechteverwaltung der Art, dass nur autorisierten Clients der Zugang zu bestimmten Ressourcen (mit möglicherweise unterschiedlichen Zugriffsrechten) gewährt wird, wohingegen nicht-autorisierten Clients der Zugang verwährt bleibt.
Der Client sendet vor Beginn des Authentifizierungsprozesses neben seinem Zertifikat noch
einen zufällig generierten Datenblock, digital signiert an den Server. Der Server nutzt die digital signierten Daten, um den im Zertifikat enthaltenen öffentlichen Schlüssel des Clients zu
überprüfen. Dies gibt ihm die Sicherheit, dass der Client auch im Besitz des privaten Schlüssels ist, welcher zum Zertifikat gehört.
33
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
Zertifikat des Clients
Zertifikat einer beliebigen weiteren CA
DN des Clients:
cn=Bob Offliner,o=diba,c=de
O
Zertifikat der ausstellenden CA
Öffentlicher Schlüssel des Clients:
59A6 105D 17E1 CC72 9C35
1A46 26DB 1C5F AA7E ...
Gültigkeitszeitraum:
01.01.2001-31.12.2003
Signatur der CA:
DEE4 D9E0 E521 118D 1A46 DCBA
26DB 1C5F AA7E B0C6 ...
N
P
DN der CA:
cn=PrototypeCA,o=diba,c=de
Öffentlicher Schlüssel der CA:
8B8A D0B7 47C5 B0D1 1F0C
15B8 0E96 6A56 6142 ...
Signatur der CA:
DEE4 D9E0 E521 118D 1A46 DCBA
26DB 1C5F AA7E B0C6 ...
...
Zufällige Daten des Clients
Zertifikat einer beliebigen weiteren CA
Datenblock:
0100 1011 1000 1010 1001 0101
Signatur des Clients:
B0C6 598E 8B8A D0B7 26DB 1C5F
AA7E B0C6 1010 03DE 9AD0 ...
...
DN der ausstellenden CA:
cn=PrototypeCA,o=diba,c=de
M
Liste vertrauenswürdiger CAs des Servers
Abbildung 10 SSLv3-Client: Authentifizierungsvorgang im Überblick
Ähnlich wie bei der Server-Authentifizierung muss nun der Server eine positive Antwort auf
die folgenden fünf Fragen des Client-Authentifizierungsprozesses erhalten, um einer Bindung
des öffentlichen Schlüssels an die Identität des Clients zu vertrauen.
M
Erlaubt der öffentliche Schlüssel des Clients die Überprüfung der Client
Signatur?
Der Server überprüft an Hand des öffentlichen Schlüssels, welcher im Client-Zertifikat enthalten ist, ob die Signatur des vorher gesendeten Geheimnisses validiert
werden kann. Gelingt dies nicht, wird die Verbindung abgebrochen.
N
Liegt das heutige Datum innerhalb des Gültigkeitszeitraumes?
Der Server vergleicht den Gültigkeitszeitraum des Zertifikates mit dem heutigen
Datum. Außerhalb dieses Zeitraumes ist das Zertifikat ungültig, d. h. der Zertifikatsaussage darf nicht vertraut werden.
O
Gehört die CA des Clients zu den vertrauenswürdigen CAs?
Jeder SSL-Server führt eine Liste mit Zertifikaten der für ihn vertrauenswürdigen
CAs. Der Inhalt dieser Liste entscheidet darüber, welche Zertifikate vom Server
akzeptiert werden und welche nicht. Dazu muss der Distinguished Name (DN) auf
dem Zertifikat dem DN einer CA dieser Liste entsprechen. Notfalls wird versucht,
eine übergeordnete CA zu finden, auf die dies zutrifft.
34
Kapitel 3: Public Key Infrastrukturen
P
Erlaubt der öffentliche Schlüssel der CA die Überprüfung der CA Signatur?
Der Server überprüft an Hand des öffentlichen CA-Schlüssels, welcher im CAZertifikat (aus o. g. Liste) enthalten ist, ob die CA-Signatur im Client-Zertifikat
gültig ist. Ist diese ungültig, weil beispielsweise das Zertifikat nachträglich verändert wurde, oder passt der öffentliche CA-Schlüssel nicht zum Signieren verwendeten privaten CA-Schlüssel, wird der Client nicht authentifiziert.
Q
Ist der authentifizierte Client autorisiert auf die angeforderte Ressource zuzugreifen?
Der Server überprüft die Berechtigung an Hand sog. Zugangskontrolllisten
(Access Controll Listen, kurz: ACL) und liefert die Ressource dann mit individuellen Zugriffsrechten an den Client aus. Verschiedene Zugriffsstufen können hierzu
auf dem Server eingerichtet werden. Dazu gehören neben dem Vollzugriff ein eingeschränkter (nur lesen) Zugriff sowie die Möglichkeit dem Client den Zugriff auf
die angeforderte Ressource komplett zu verweigern (kein Zugriff).
Dies ermöglicht es beispielsweise einem Finanzinstitut, das Zertifikate sowohl an
Kunden als auch an Mitarbeiter ausgegeben hat, die Berechtigungen derart zu kontrollieren, dass Kunden ausschließlich Zugriff auf ihre eigenen Kontendaten erhalten. Mitarbeiter hingegen autorisiert sind, vertrauliche Konditionen vom
Webserver abzurufen. Die Authentifikation auf Zertifikatsbasis ersetzt damit die
sonst übliche Basic Authentification an Hand eines Benutzernamens mit dem dazugehörenden Passwort.
Eine Einführung ins SSL-Protokoll, sowie den verwendeten Verschlüsselungsverfahren und
Authentifikations-Mechanismen liefert Netscape in [NS98-1]. SSL gilt als das meistverwendete Verschlüsselungsprotokoll im Internet; außerdem ist es ideal für die kryptographische
Absicherung komplexer TCP/IP-Netze geeignet, wie sie in großen und mittelständischen
Unternehmen vorkommen [KlSchm98].
3.7.1.3 Notwendige Zertifikaterweiterungen
Wie bereits eingangs erwähnt, verwenden alle in diesem Abschnitt besprochenen kryptographischen Verfahren die Vorteile von Zertifikaten nach X.509v3, um eine sichere Authentifikation der Kommunikationspartner zu gewährleisten. Die Firma Netscape erklärt in [NS99-1],
welche Erweiterungen in Zertifikaten gesetzt sein sollten, damit sie von Standardsoftware für
den jeweiligen Einsatzzweck akzeptiert werden. Diese Informationen werden von der eingesetzten Trustcenter-Software benötigt, um gültige Zertifikate auszustellen.
Folgende Tabelle enthält Erläuterungen zu den folgenden Tabellen [5], [6] und [8] bezüglich
des Einsatzes der von Netscape geforderten Zertifikatserweiterungen.
Bemerkung Nr.
1
Erläuterung
Nur gültig in Verbindung mit mehrstufigen Hierarchien, beim Einsatz einer flachen Hierarchie gelten für das Wurzel CA Zertifikat die
Bedingungen für Zertifikate untergeordneter CAs.
Tabelle 4 Erläuterungen zum Verständnis der Tabellen [5], [6] und [8]
35
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
Bemerkung Nr.
Erläuterung
2
Netscape und Microsoft empfehlen den Einsatz dieser Erweiterung.
3
Netscape und Microsoft verlangen den Einsatz dieser Erweiterung.
4
Wird vom Netscape Communicator nicht benötigt.
5
Wird nur von Netscape beachtet, Microsoft beispielsweise ignoriert
meist sämtliche Netscape-spezifischen Erweiterungen.
6
Wird von einigen Netscape Servern benötigt.
7
IP-Adresse oder URI bei SSL-Servern, Email-Adresse bei S/MIME
8
Für Zertifikate, die zur S/MIME-Signatur vorgesehen sind.
9
Für Zertifikate, die zur S/MIME-Verschlüsselung vorgesehen sind.
Tabelle 4 Erläuterungen zum Verständnis der Tabellen [5], [6] und [8]
Erweiterungen für SSL-Clientzertifikate
Folgende Erweiterungen sollten in Zertifikaten gesetzt sein, damit diese sowohl von Produkten
der Firmen Netscape als auch Microsoft als gültig für SSL Clients angesehen und nicht zurückgewiesen werden.
Zertifikat der
Wurzel CA1
Zertifikat einer
untergeordneten CA
ausgestellte
Benutzerzertifikate
Bemerkung Nr.
authorityKeyIdentifier
authorityKeyIdentifier
authorityKeyIdentifier
2
basicConstraints:
CA = true
basicConstraints:
CA = true
3
cRLDistributionPoints
cRLDistributionPoints
2+4
keyUsage:
keyCertSign, cRLSign
keyUsage:
keyCertSign, cRLSign
keyUsage:
digitalSignature
netscape-cert-type:
SSL CA
netscape-cert-type:
SSL CA
netscape-cert-type:
SSL Client
5
subjectKeyIdentifier
subjectKeyIdentifier
subjectKeyIdentifier
2
Tabelle 5 notwendige Zertifikaterweiterungen für SSL Clientzertifikate
Erweiterungen für SSL-Serverzertifikate
Folgende Erweiterungen sollten in Zertifikaten gesetzt sein, damit diese sowohl von Produkten
der Firmen Netscape als auch Microsoft als gültig für SSL Server angesehen und nicht zurück-
36
Kapitel 3: Public Key Infrastrukturen
gewiesen werden.
Zertifikat der
Wurzel CA1
Zertifikat einer
untergeordneten CA
ausgestellte
Benutzerzertifikate
Bemerkung Nr.
authorityKeyIdentifier
authorityKeyIdentifier
authorityKeyIdentifier
2
cRLDistributionPoints
cRLDistributionPoints
2+4
keyUsage:
keyCertSign, cRLSign
keyUsage:
keyCertSign, cRLSign
keyUsage:
keyEncipherment
netscape-cert-type:
SSL CA
netscape-cert-type:
SSL CA
netscape-cert-type:
SSL Client6, SSL Server
5
subjectAltName
7
subjectKeyIdentifier
2
subjectKeyIdentifier
subjectKeyIdentifier
Tabelle 6 notwendige Zertifikaterweiterungen für SSL Serverzertifikate
3.7.2
S/MIME
S/MIME (Secure MIME) ist ein Verschlüsselungsstandard der US-Firma RSA Security Inc. zur
Wahrung von Vertraulichkeit, Authentizität und Integrität elektronischer Nachrichten (Email).
S/MIME verwendet für die Unterteilung einer Nachricht das von den meisten Emailprogrammen unterstützte MIME-Format (Multipurpose Internet Mail Extensions). Nachrichten im
MIME-Format können aus mehreren Teilen zusammengesetzt sein, wobei jeder dieser Teile
aus einem anderen Datentyp bestehen darf (Texte, Bilder, Filme, Musik, etc.). S/MIME stellt
hierfür eigene sog. MIME-Typen zur Verfügung und unterstützt dabei die in Tabelle [7]
genannten kryptographischen Algorithmen für Verschlüsselung, digitale Signatur, Hashfunktionen sowie Schlüsselaustausch. In [RFC2633] wird festgelegt, welche Algorithmen dabei auf
Sender- und Empfängerseite unterstützt werden müssen und welche zusätzlich verwendet werden sollten, um die Kompatibilität zu älteren S/MIME Versionen zu ermöglichen.
Sender
Empfänger
Verfahren
muss unterstützt
werden
zusätzlich
möglich
muss unterstützt
werden
zusätzlich
möglich
Verschlüsselung
Tripple-DES
Digitale Signatur
DSS
RSA DSS
RSA
Schlüsselaustausch
Diffie-Hellman
RSA Diffie-Hellman
RSA
Hashfunktion
SHA-1
SHA-1
MD5
Tripple-DES
RC2/40
Tabelle 7 S/MIMEv3: kryptographische Algorithmen auf Sender- und Empfängerseite
37
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
Zudem werden Zertifikate nach dem X.509v3 Standard verwendet, um einen sicheren Austausch der öffentlichen Schlüssel zu gewährleisten. Mehr über die Funktionsweise von S/
MIMEv3 liefern [RFC2632] und [RSAFAQ]. S/MIME wird u. a. von den Firmen Microsoft
und Netscape in ihren Emailprogrammen unterstützt und eignet sich so hervorragend zur Verschlüsselung des elektronischen Nachrichtenverkehrs.
3.7.2.1 Notwendige Zertifikaterweiterungen
Folgende Erweiterungen sollten in Zertifikaten gesetzt sein, damit diese sowohl von Produkten
der Firmen Netscape als auch Microsoft als gültig für S/MIME Benutzerzertifikate angesehen
und nicht zurückgewiesen werden. Die in Tabelle [4] aufgeführten Erläuterungen gelten auch
für diese Erweiterungen.
Zertifikat der
Wurzel CA1
Zertifikat einer
untergeordneten CA
ausgestellte
Benutzerzertifikate
Bemerkung Nr.
authorityKeyIdentifier
authorityKeyIdentifier
authorityKeyIdentifier
2
cRLDistributionPoints
cRLDistributionPoints
2+4
keyUsage:
keyCertSign, cRLSign
keyUsage:
keyCertSign, cRLSign
keyUsage:
digitalSignature8,
keyEncipherment9
netscape-cert-type:
S/MIME CA
netscape-cert-type:
S/MIME CA
netscape-cert-type:
S/MIME
5
subjectAltName
7
subjectKeyIdentifier
2
subjectKeyIdentifier
subjectKeyIdentifier
Tabelle 8 notwendige Zertifikaterweiterungen für S/MIME Benutzerzertifikate
3.7.3
IPSec
IPSec (Internet Protokoll Security) ist eine Erweiterung für das IP-Protokoll, die durch den
Einsatz von Kryptographie Vertraulichkeit, Authentizität und Integrität gewährleistet. Im
Gegensatz zu SSL wird für IPSec keine neue Schicht ins TCP/IP Modell eingeführt, siehe
Abbildung 11. Stattdessen wird das IP-Protokoll selbst um einige Bestandteile wie Schlüsselaustausch, Verschlüsselung und Authentifikation erweitert. Für das momentan verwendete
IPv4 ist IPSec eine Ergänzung, während es im kommenden IPv6 schon enthalten ist.
IPSec ist allerdings kein einzelner Standard, sondern eher ein ganzes Framework von Standards und wird folglich von einer ganzen Reihe von RFCs beschrieben (u. a. die RFCs 24012412). Grundsätzlich gliedert es sich in die folgenden beiden Funktionsbereiche:
‰
IPSP (IP Security Protokoll)
Der erste Bereich mit dem Namen IP Security Protokoll enthält die symmetrische
Verschlüsselung und die Authentifikation von IP-Paketen mithilfe einer schlüssel-
38
Kapitel 3: Public Key Infrastrukturen
abhängigen Hashfunktion.
‰
IKMP (Internet Key Management Protokoll)
Der zweite Bereich ist für das Schlüsselmanagement zuständig. Vom IETF wurde
dazu das IKMP (Internet Key Management Protokoll) entwickelt, das für den
Schlüsselaustausch mithilfe asymmetrischer Verfahren sorgt.
Host
Host
HTTP,
HTTP, Telnet,
Telnet,
FTP,
FTP, POP3,
POP3, ...
...
TCP
TCP
HTTP,
HTTP, Telnet,
Telnet,
FTP,
FTP, POP3,
POP3, ...
...
TCP
TCP
Router
IPSec
IPSec
IPSec
IPSec
IP
IP
LAN,
LAN, PPP,
PPP, ...
...
LAN,
LAN, PPP,
PPP, ...
...
LAN,
LAN, PPP,
PPP, ...
...
Abbildung 11 IPSec verschlüsselt auf IP-Ebene
3.7.3.1 IPSP
Der Funktionsbereich IPSP ist selbst zweigeteilt. Zwei unterschiedliche Übertragungsprotokolle können für den Transport der Daten eingesetzt werden. Die symmetrische Verschlüsselung von IP-Paketen wird vom Encapsulated Security Payload (ESP) genannten Protokoll zur
Verfügung gestellt. Welche Verschlüsselungsverfahren dafür verwendet werden, ist hierbei
nicht festgelegt, [RFC1829] schlägt beispielsweise DES vor. Soll auf Verschlüsselung verzichtet werden, kommt der Authentication Header (AH) zum Einsatz. Dieser ermöglicht durch eine
schlüsselabhängige Hashfunktion wie MD5 oder SHA1 die Integritätsprüfung von IP-Paketen
([RFC1828]).
ESP
Encapsulated Security Payload ([RFC2406]) bietet zwei unterschiedliche Arbeitsmodi. Im
Transportmodus werden ausschließlich die Nutzdaten eines IP-Paketes verschlüsselt. Der Header selbst bleibt unverändert, damit er für Router, die ein Paket durchläuft, lesbar ist. Im Tunnelmodus hingegen wird das gesamte IP-Paket (inkl. Header und Nutzdaten) verschlüsselt und
in den Nutzdatenteil eines neuen IP-Paketes gepackt (gekapselt), wie in Abbildung 12 zu sehen
([DaBachf01]). Durch diese Technik wird der Header, in dem u. a. die Sende- und Empfangsadresse eines Paketes untergebracht sind, unlesbar gemacht.
Nützlich ist der Tunnelmodus vor allem dann, wenn Pakete über unsichere Zwischensysteme
geschickt werden, also beispielsweise zwischen zwei Firewall-Systemen, welche die VPNVerbindung realisieren, wie in Abbildung 13 dargestellt. In solch einem Fall sind für einen
Lauscher im Zwischennetz nur die Informationen des äußeren Paketes sichtbar. D. h. als
Sende- und Empfangsadresse die beiden Firewalls, welche auch als VPN-Gateways oder Tunnelendpunkte bezeichnet werden. Ob das Paket vom Sender A oder B abgeschickt wurde und
welchen Empfänger es wirklich erreichen soll, kann ein Lauscher nicht erkennen. Die Firewall
des Empfängers hingegen, erhält die notwendigen Ziel-Informationen nach der Authentifizie-
39
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
rung und Entschlüsselung des eigentlichen (eingekapselten) IP-Paketes und kann dieses dann
ohne IPSec-Authentifizierung oder -Verschlüsselung an den richtigen Empfänger weiterleiten.
Orginal IP-Paket
IP Header
Daten
IP-Paket mit ESP im Transportmodus
IP Header
ESP Header
Daten
ESP Trailer
ESP Auth
verschlüsselt
authentifiziert
IP-Paket mit ESP im Tunnelmodus
neuer
IP Header
ESP Header
IP Header
Daten
ESP Trailer
ESP Auth
verschlüsselt
authentifiziert
Abbildung 12 ESP Modi im Vergleich
Der Header des umgebenden IP-Paketes wird von ESP allerdings nicht verschlüsselt oder
authentifiziert, sodass das Routing der IP-Pakete selbst im Tunnelmodus kein Problem für
Router oder Switches darstellt, welche IPSec selbst nicht implementieren. Der neue Tunnel-IPHeader dient somit zum Weiterleiten zwischen den beiden Tunnelendpunkten.
verschlüsselte
IP Pakete
unverschlüsselte
IP Pakete
Sender A
Empfänger A
Tunnel
Internet
VPN-fähige
Firewall A
VPN-fähige
Firewall B
Sender B
Empfänger B
Abbildung 13 IPSec mit ESP im Tunnelmodus
ESP im Tunnelmodus ähnelt dem NAT-Verfahren (Network Address Translation), das von einigen Firewalls verwendet wird, um ganze Subnetze hinter einer IP-Adresse zu verbergen. Da
beide Verfahren die ursprüngliche Quelladresse durch eine Neue ersetzen, gibt es Probleme,
wenn ESP im Tunnelmodus gleichzeitig mit NAT betrieben und das VPN-Gateway dabei hin-
40
Kapitel 3: Public Key Infrastrukturen
ter der Firewall platziert wird. Eine Lösung besteht darin, dem IPSec VPN-Gateway eine
öffentliche IP-Adresse zu vergeben, sodass getunnelte IP-Pakete von NAT ausgenommen werden.
AH
Der Authentication Header ([RFC2402]) sieht im Gegensatz zu ESP keinerlei Verschlüsselung
vor, sondern soll ausschließlich die Integrität eines IP-Paketes sicherstellen. Dazu wird auf die
Nutzdaten und einige ausgewählte Header-Felder des Paketes eine schlüsselabhängige Hashfunktion angewendet, und deren Resultat in einem zusätzlichen Feld im Header vermerkt.
Steht das VPN Gateway hinter einer Firewall, die NAT implementiert, kann IPSec nicht mit
AH verwendet werden. AH erlaubt keine nachträglichen Änderungen an IP-Paketen, da sonst
die AH-Prüfsumme - welche die Integrität des IP-Paketes sicherstellen soll - nicht mehr korrekt ist. NAT ist allerdings darauf angewiesen, die Sender-IP-Adresse im Header zu verändern.
NAT und AH lassen sich daher nicht kombinieren.
Wie ESP kann auch AH sowohl im Transport- als auch im Tunnelmodus betrieben werden.
3.7.3.2 IKMP
Das Internet Key Management Protokoll (IKMP) ist, wie der Name schon andeutet, bei IPSec
für das Schlüsselmanagement zuständig. Es stehen zwei von einander unabhängig entwickelte
Verfahren zur Auswahl, um diese Aufgabe zu erfüllen. Zum einen SKIP, welches von der
Firma SUN entwickelt wurde, zum anderen das Gespann aus Oakley und ISAKMP, welches
beispielsweise bei der IPSec-Implementierung von Microsofts Windows 2000 Verwendung
findet.
SKIP
Das Simple Key Management Protokoll (SKIP) ermöglicht wie das im Folgenden besprochene
Oakley einen Diffie-Hellman-Schlüsselaustausch (key agreement). Dazu wurden die IP-Pakete
um spezielle Informationen, die der Empfänger zum Entschlüsseln oder Überprüfen des Hashwertes benötigt, im Header erweitert. Somit sind alle relevanten Informationen schon im
Datenpaket enthalten.
SKIP funktioniert im Prinzip folgendermaßen: Senderin (Alice) und Empfänger (Bob) berechnen mithilfe des Diffie-Hellman key agreement Verfahrens einen gemeinsamen geheimen
Schlüssel k. D. h., Alice verwendet den öffentlichen Schlüssel von Bob gx modp (beispielsweise aus einem X.509 Zertifikat) um mithilfe ihres privaten Schlüssels y den gemeinsamen
geheimen Schlüssel k zu berechnen.
k = gxy modp
Bob verfährt entsprechend umgekehrt und verwendet seinen eigenen privaten Schlüssel x und
den öffentlichen Schlüssel von Alice gy modp um denselben gemeinsamen Schlüssel k zu
erhalten.
k = gyx modp
41
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
Diese Prozedur ist prinzipbedingt nur einmal notwendig - solange weder Alice, noch Bob ihr
asymmetrisches Schlüsselpaar wechseln, muss der gemeinsame Diffie-Hellman-Schlüssel k
für eine zukünftige Kommunikation nicht neu berechnet werden.
Der ausgetauschte Schlüssel k wird allerdings nicht direkt zum Verschlüsseln der IP-Pakete
benutzt. Aus Sicherheitsgründen werden Nachrichten (welche üblicherweise aus mehreren
Paketen bestehen) mit unterschiedlichen Sitzungsschlüsseln verschlüsselt. Dazu wird vom ausgetauschten Schlüssel k der Hashwert h(k) berechnet, der als Master-Schlüssel
km = h(k)
für die Verschlüsselung der einzelnen Sitzungsschlüssel verwendet wird. Der so verschlüsselte
Sitzungsschlüssel ks wird dann als Bestandteil des SKIP-Headers im IP-Paket untergebracht
und mitversendet.
Oakley und ISAKMP sowie IKE
Das Internet Security Association and Key Management Protocol (ISAKMP) beschreibt, wie
Security Associations (SAs) zwischen Kommunikationspartnern auszuhandeln sind. SAs sind
temporäre Sicherheitsrichtlinien, die alle Parameter für eine sichere Verbindung enthalten, wie
etwa die zu verwendenden kryptographischen Algorithmen oder die Lebensdauer von Schlüsseln. Oakley beschreibt eine Serie von verschiedenen Schlüsselaustauschverfahren, die nacheinander angewendet werden und zur Authentifikation sowie beim Austausch von
Sitzungsschlüsseln zum Einsatz kommen.
Sowohl Oakley als auch ISAKMP sind ausschließlich Beschreibungen eines Frameworks - der
Internet Key Exchange (IKE, [RFC2409]) hingegen ist eine konkrete Implementierung von
Oakley/ISAKMP und umfasst neben dem Schlüsselaustausch auch die Authentifizierung von
Teilnehmern unter Benutzung von SAs.
IKE kommt somit beim Aufbau der gesicherten Verbindung zum Einsatz. In einer ersten Phase
sorgt IKE für den Austausch von gemeinsamen geheimen Schlüsseln und der Authentifikation
von Verbindungspartnern durch Zertifikate oder Shared Secrets. Dazu wird - wie bei IKMP das Diffie Hellman key agreement Verfahren verwendet. In der zweiten Phase werden zufällig
generierte, symmetrische Schlüssel ausgetauscht, um die eigentliche Verbindung zu verschlüsseln. In jeder Phase müssen sich die Verbindungspartner auf die jeweiligen zu verwendenden
kryptographischen Algorithmen einigen, wie beispielsweise DES- oder IDEA-Verschlüsselung. Kommt keine Einigung zu Stande, da die VPN-Verbindungspunkte unterschiedlich konfiguriert sind und einer der Verbindungspartner z. B. auf DES, der andere auf IDEA besteht,
wird der Verbindungsaufbau abgebrochen.
3.7.3.3 Virtuelle private Netzwerke (VPN) mit IPSec
IPSec in Verbindung mit ESP im Tunnelmodus eignet sich für die Einrichtung virtueller privater Netzwerke (VPN). Virtuelle private Netzwerke dienen dazu, Firmen mit mehreren Niederlassungen die Kommunikation und den gemeinsamen Zugriff auf zentrale Ressourcen zu
ermöglichen oder mobilen Mitarbeitern Zugang zum lokalen Netzwerk zu verschaffen. Der
Aufbau einer solchen Verbindung erfolgt i.A. über ein unsicheres (öffentliches) Transitnetzwerk wie dem Internet. Eine derartige Verbindung wird virtuell privat genannt, da es sich dabei
um eine übergeordnete Struktur handelt, die auf dem öffentlichen Netzwerk aufsetzt, um eine
42
Kapitel 3: Public Key Infrastrukturen
private Verbindung herzustellen.
Die in den vorangegangenen Abschnitten vorgestellte Eigenschaft des Schutzes von IP-Paketen ermöglicht in einem solchen VPN den Schutz des Netzwerkverkehrs auf IP-Ebene3 vor folgenden Bedrohungen:
‰
Unbemerkte Datenänderung während des Versendens
Beim Einsatz von IP-ESP oder IP-AH
‰
Mitlesen von Daten
Beim Einsatz von IP-ESP.
‰
Unautorisierter Datenzugriff
Bei Authentifikation mittels X.509 Zertifikaten, Kerberos oder Shared Secrets.
Die Verwendung von IPSec im Tunnelmodus erfolgt für Rechner, die nicht zum Senden oder
Empfangen eingesetzt werden, vollkommen transparent. D. h. Rechner, welche innerhalb des
Tunnels passiert werden und keinen Tunnelendpunkt bilden, müssen nicht über IPSec informiert werden. Ausschließlich Rechner am jeweiligen Tunnelende sind für die Sicherheit
zuständig.
Als Einsatzgebiet für eine IPSec-Implementierung wie sie beispielsweise Windows 2000 bietet, sind folgende Anwendungsfälle denkbar [MS00-3]:
‰
LAN: Peer-to-Peer
Verbindungen innerhalb eines LANs zwischen zwei Client-Rechnern, ohne Vermittlung eines zusätzlichen IPSec-Gateways. Die Kommunikation wird ausschließlich zwischen den beiden Rechnern verschlüsselt, der restliche LANVerkehr bleibt dagegen weiterhin unverschlüsselt. Diese Konfiguration schützt vor
LAN-internen Angreifern, wie beispielsweise Mitarbeitern des eigenen Unternehmens und bietet die größte Sicherheit, da die Verbindung von Anfang bis Ende
(peer-to-peer) verschlüsselt wird.
‰
LAN: Client/Server
Verbindungen innerhalb eines LANs zwischen einem sicheren Server und zugreifenden Client-Rechnern4. Die Kommunikation zwischen dem Server und den Clients erfolgt verschlüsselt, der restliche LAN-Verkehr bleibt dagegen weiterhin
unverschlüsselt. Diese Konfiguration schützt ebenso wie Peer-to-Peer vor LANinternen Angreifern, wie beispielsweise Mitarbeitern des eigenen Unternehmens.
‰
WAN: Gateway-to-Gateway (z. B. Router-to-Router oder Firewall-to-Firewall)
Eine Verbindung von zwei LANs über ein möglicherweise unsicheres Zwischensystem (Transitnetz) wie das Internet. Die VPN-Gateways bilden die beiden Tunnelendpunkte, zwischen denen eine verschlüsselte IPSec-Verbindung aufgebaut
3. IPSec kann keine anderen Protokolle als TCP/IP tunneln, im Zweifelsfall muss ein Protokoll vorher in
IP eingepackt werden [DaBachf01].
4. Zum Einsatz kommt diese Variante beispielsweise, wenn ein Client innerhalb des LANs sicher auf eine
Datenbank mit sensiblen Informationen zugreifen möchte.
43
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
wird. Client-Rechner sowie Server, welche eine Verbindung über diese Gateways
aufbauen, müssen kein IPSec unterstützen. Allerdings bleibt bei der Gateway-toGateway Kommunikation die Verbindung der jeweiligen Rechner bis zum Gateway unverschlüsselt. Das unsichere Transitnetz unterscheidet sich sicherheitstechnisch nicht mehr von einer dedizierten WAN-Verbindung. Diese Konfiguration
bietet ausschließlich Schutz vor Angreifern aus dem Zwischensystem und im
Gegensatz zu den beiden Vorhergenannten keinerlei Sicherheit vor LAN-internen
Angreifern.
‰
Remotezugriff: Client-to-Gateway (z. B. Client-to-Firewall oder Client-toRouter)
Die Verbindung mobiler Client-Rechner (außerhalb des LANs) über ein möglicherweise unsicheres Transitnetz mit dem LAN des Unternehmens (um Zugriff auf
Ressourcen und Server des Firmennetzes zu erhalten) wird auch als Remote-Access
bezeichnet. Die Kommunikation zwischen dem Gateway und den Clients erfolgt
verschlüsselt, die restliche LAN Kommunikation bleibt dagegen weiterhin unverschlüsselt. Diese Konfiguration bietet den gleichen Schutz vor externen Angreifern
wie eine Gateway-to-Gateway Lösung.
3.7.3.4 Notwendige Zertifikaterweiterungen
Die Komplexität des IPSec Standards ermöglicht eine flexible Anpassung an die jeweiligen
Sicherheitsbedürfnisse. Es können verschiedene Tunnel unterschiedlich konfiguriert oder
unterschiedliche kryptographische Algorithmen eingesetzt sowie zur Authentifikation auf Zertifikate verzichtet und stattdessen Kerberos verwendet werden. Diese Flexibilität hat allerdings
einen entscheidenden Nachteil. Die Vielzahl von Herstellern, die IPSec-fähige Router, Firewalls oder Betriebssysteme (bzw. -Erweiterungen) anbieten, verwenden z. T. inkompatible
IPSec-Implementierungen. Kompatibilitätsprobleme erschweren nicht nur den gleichzeitigen
Einsatz von Produkten unterschiedlicher Hersteller nebeneinander, sie erschweren auch eine
allgemein gültige Aussage darüber, welche Erweiterungen notwendig sind, damit Zertifikate
von den jeweiligen Produkten für IPSec akzeptiert werden.
An dieser Stelle wird daher auf eine tabellarische Auflistung der notwendigen Zertifikaterweiterungen verzichtet.
3.8
Verzeichnisdienste
Verzeichnisdienste bieten Zugriff auf Verzeichnisse und wurden bereits in Kapitel [3.4.1] im
Zusammenhang mit der öffentlichen Bereitstellung von Zertifikaten und Widerrufslisten
erwähnt. Verzeichnisse wie X.500 oder LDAP unterscheiden sich von üblichen Datenbanken
durch eine baumartig strukturierte Anordnung des verwalteten Datenbestandes. Verzeichnisse
sind darauf ausgelegt, weit gehend statische Daten zu verwalten, Änderungen am Datenbestand stellen gegenüber der reinen Abfrage von Daten eher die Ausnahme dar. Daten, die in
Verzeichnissen verwaltet werden, sind beispielsweise Namen, Adressen, Informationen über
Personen, Organisationen, Gruppen, Datenspeicher, Geräte, Dienste oder auch Zertifikate und
Widerrufslisten.
Im Folgenden werden die verbreitetsten Basisdienste und Technologien für die komfortable
Verwaltung von Zertifikaten und Widerrufslisten besprochen.
44
Kapitel 3: Public Key Infrastrukturen
3.8.1
X.500
Der Verzeichnisdienst X.500 wird an dieser Stelle nur kurz umrissen, es werden insbesondere
die Unterschiede zu dem im nächsten Abschnitt besprochenen LDAP beschrieben. X.500 setzt
auf dem OSI-Schichtenmodell auf und sieht keine Benutzung vorhandener Kommunikationsprotokolle wie TCP/IP5 vor. Das OSI-Schichtenmodell erfordert einen erheblichen Mehraufwand bei der Entwicklung von Verzeichnisclients und -Servern und bietet für die öffentliche
Bereitstellung von Zertifikaten und Widerrufslisten keine Vorteile, sodass es im Allgemeinen
durch das „leichtgewichtigere“ LDAP ersetzt werden kann.
DAP
OSI
X.500 Client
X.500 Server
Verzeichnis
Abbildung 14 X.500 Server
X.500 definiert verschiedene Protokolle für die Bereitstellung des Verzeichnisses
[DWChad96], im Einzelnen sind dies:
‰
DAP (Directory Access Protocol)
Definiert die Kommunikation zwischen X.500-Clients (Directory User Agents,
kurz: DUA) und X.500-Servern (Directory System Agents, kurz: DSA) und dient
dem Zugriff auf die im Verzeichnis enthaltenen Informationen (siehe Abbildung
14).
‰
DSP (Directory System Protocol)
Definiert die Kommunikation zwischen verschiedenen X.500-Servern.
‰
DISP (Directory Information Shadowing Protocol)
Definiert den Informationsaustausch zur verteilten Datenhaltung (Replikation)
mittels Master- und Slave-DSA.
Wesentliche Nachteile sind der hohe Implementierungsaufwand sowie der "schwergewichtige"
Zugriff über die o. g. Protokolle. Insbesondere DAP enthält mehr Funktionen, als für die meisten Anwendungsfälle benötigt werden. Hinzu kommt, dass die Kommunikation zwischen Client und Server im Regelfall recht hohe Netzlasten erzeugt.
5. TCP/IP ist im Gegensatz zum OSI-Schichtenmodell bereits Bestandteil der meisten Betriebssysteme.
45
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
3.8.2
LDAP
Das Lightweight Directory Access Protocol (LDAP) ist ebenso wie X.500 ein offener Standard
für Informationsdienste auf Basis einer baumähnlichen (hierarchischen) Datenbankstruktur
und ist z. B. in Microsofts Windows 2000 Server in Form des Active Directories integriert. Der
Vorteil gegenüber einer normalen Datenbank ist die attributsbezogene Speicherung von Informationen. LDAP ist aus dem im vorigen Abschnitt besprochenen X.500 Verzeichnisdienst entstanden, benutzt aber an Stelle des OSI Schichtenmodells einen gewöhnlichen TCP/IP
Protokollstack. Bei der Entwicklung von LDAP wurde nur ein Teil der DAP-Funktionen übernommen, allerdings reichen die Vorhandenen vollständig aus, um den Rest zu emulieren
[ThBend99]. Der Verzeichnisaufbau ist im Vergleich zu X.500 etwas vereinfacht worden, beispielsweise werden die Daten bei LDAP meist im Klartext abgelegt.
3.8.2.1 Vom Protokoll zum Verzeichnis
Das LDAP-Protokoll definiert eine Methode, um Abfragen von einem LDAP-Client zu einem
X.500-ähnlichen Verzeichnis direkt über den TCP/IP-Protokoll-Stack abzuwickeln. LDAP
definiert nicht das Verzeichnis selbst. In der Literatur findet man oft zwei unterschiedliche
Interpretationen, an einigen Stellen wird von LDAP-Verzeichnissen gesprochen, an anderen
wiederum nur von LDAP als Protokoll. Natürlich ist LDAP ein Protokoll - und zwar für die
Kommunikation zwischen LDAP-Client und -Server. Allerdings wird LDAP z. T. auch ohne
einen expliziten X.500 Server eingesetzt, indem sich der LDAP-Server für den Verzeichnisdienst verantwortlich zeigt. Im ersten Fall hat der LDAP-Server nur die Funktion eines Gateways, im letzten Fall die eines Verzeichnisservers.
LDAP als Gateway
Ursprünglich wurde LDAP ausschließlich zusammen mit X.500 Verzeichnissen eingesetzt.
Dazu kommunizieren LDAP Clientprogramme mit einen Gateway-Prozess (Proxy), der die
LDAP-Nachrichten übersetzt und an den X.500 Server weiterleitet, wie in Abbildung 15 zu
sehen.
LDAP Client
LDAP
DAP
TCP/IP
OSI
LDAP Server
X.500 Server
Verzeichnis
Abbildung 15 LDAP Server als Gateway zum X.500 Server
46
Kapitel 3: Public Key Infrastrukturen
Dies ist notwendig, da LDAP Clientprogramme ausschließlich die Kommunikation über
LDAP-Nachrichten beherrschen, X.500 Server wiederum verstehen nur DAP. Mehr noch, es
kommen gar unterschiedliche Schichtenmodelle zum Einsatz (TCP/IP bzw. OSI).
In seiner Rolle als Gateway muss ein LDAP Server also zwei Kommunikationsprotokolle
beherrschen und sowohl als Client für den X.500 Server, als auch als Server für den LDAP Client auftreten. Der ursprüngliche Lösungsansatz hat zwar den Vorteil, dass LDAP Clients nun
über das weit verbreitete TCP/IP mit einem „leichtgewichtigerem“ Server kommunizieren
können - ein Unternehmen, welches ein derartiges Verzeichnis aufbaut, kann dennoch nicht auf
den Einsatz von OSI für den X.500 Server verzichten.
LDAP als Verzeichnisserver
In vielen Installationen wird daher komplett auf den X.500 Server verzichtet, womit auch die
Notwendigkeit entfällt, das OSI-Schichtenmodell zu unterstützen. Der LDAP Server muss
dann selbst für den Zugriff auf das Verzeichnis sorgen und nicht mehr nur als Vermittler zwischen Client und X.500 Server agieren (Abbildung 16). Natürlich ist solch ein LDAP Server
weit aus komplizierter aufgebaut, da er nun die komplette Verzeichnisverwaltungsarbeit übernehmen muss. Wenn auch die Verwaltung vergleichsweise einfach ausfällt, da LDAP nur einen
Teil der DAP-Funktionen implementiert.
Derartige Server werden meist auch als Stand-Alone LDAP Server bezeichnet, da sie nicht
mehr von X.500 Verzeichnisservern abhängig sind. Aus Sicht des Clients spielt die LDAP
Implementierung keine Rolle. Jeder Server, der das LDAP Protokoll implementiert, ist ein
LDAP Verzeichnisserver - unabhängig davon, ob er das Verzeichnis nun real verwaltet, oder
nur als Gateway den Zugriff auf X.500 Server vermittelt.
LDAP
TCP/IP
LDAP Client
LDAP Server
Verzeichnis
Abbildung 16 Stand-Alone LDAP Server
3.8.2.2 Das Informationsmodell
Die Basisinformationseinheit im LDAP Verzeichnis nennt sich Verzeichniseintrag. Ein Eintrag
ist aus verschiedenen Attributen aufgebaut, die z. T. schon vordefiniert sind. So existieren
Attribute für die Definition häufig verwendeter Objektklassen wie Firmen, Personen, Gruppen,
47
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
Lokationen, Organisationen, usw. Jedes Attribut hat einen Datentyp (z. B. Binärfeld, Zeichenkette, Datum, usw.) und einen oder mehrere Werte. Die Beziehung zwischen einem Verzeichniseintrag, seinen Attributen und ihren Werten zeigt Abbildung 17 [IBM98].
Eintrag
Attribut
Attribut
Attribut
Typ
Attribut
Attribut
Wert
Wert
Wert
Abbildung 17 Das Informationsmodell: Einträge, Attribute und Werte
Jede Objektklasse definiert ihre eigenen Attribute, die darüber entscheiden, welche Informationen ein Eintrag enthalten kann. Eine Objektklasse kann beispielsweise eine Telefonnummer,
einen öffentlichen Schlüssel oder ein Bild enthalten, wobei jede Objektklasse durch eigene
Attribute erweitert werden kann. Attribute können grundsätzlich bis auf wenige Ausnahmen
mehr als einen Wert enthalten. Bestimmte Attribute sind dabei als obligatorisch, andere nur als
optional anzusehen (d. h. sie müssen nicht unbedingt in der zugehörigen Objektklasse verwendet werden). Abbildung 18 zeigt dies an Hand eines Ausschnitts aus einem beispielhaften Verzeichnisbaum. Dort sieht man, das Attribut LocalityName L wird unterhalb von C=DE nur im
rechten Teilbaum verwendet, der Eintrag welcher durch den linken Teilbaum definiert wird,
verzichtet darauf.
Weiter oben wurde bereits erwähnt, dass ein Attribut mehr als nur einen Wert enthalten kann.
Dies ergibt durchaus Sinn, denn ein Attribut des Datentyps telephoneNumber beispielsweise
kann zwei Werte - einen mit der Privat- und einen mit der Geschäftstelefonnummer - aufnehmen, ohne dass ein weiteres Attribut desselben Typs in den Eintrag integriert werden müsste.
3.8.2.3 Das Namensmodell
Die in hierarchischen Einträgen abgelegten Daten besitzen global eindeutige Namen, welche
als Distinguished Name (DN) bezeichnet werden (vgl. Abschnitt [3.3.1]). Ein Eintrag im
LDAP-Baum sieht dann beispielsweise so aus:
cn=Bob Offliner, ou=IT, o=Becker Consulting GmbH, c=DE
Hierbei handelt es sich um die Person mit dem Namen Bob Offliner, die in der IT-Abteilung der Firma Becker Consulting GmbH in Deutschland angestellt ist. Die Zeichenfolgen cn, ou, o, und c bezeichnen vordefinierte Attribut-Typen. Tabelle [9] zeigt die am
häufigsten verwendeten Attribut-Typen und ihre Repräsentation als Zeichenfolge, wie sie in
[RFC2307] definiert sind.
48
Kapitel 3: Public Key Infrastrukturen
Attribut-Typ
Zeichenfolge
üblicher Verwendungszweck
CommonName
cn
Name
OrganizationalUnitName
ou
Abteilung
OrganizationName
o
Firma, Organisation, Institut oder Behörde
LocalityName
l
Stadt
StateOrProvinceName
st
Bundesstaat oder Bundesland
CountryName
c
ISO-Ländercode:
z. B. DE für Deutschland, US für USA, usw.
StreetAddress
street
Straße
DomainComponent
dc
Teile eines Domainnamens:
z. B. DC=beco und DC=org für die Domain
beco.org
UserID
uid
Benutzername:
z. B. für die Objektklasse posixAccount
Tabelle 9 Distinguished Name: Attribut-Typen und ihre Repräsentation als Zeichenfolge
Verzeichnis-Wurzel
Verzeichnis-Wurzel
cc == DE
DE
cc == GB
GB
oo == Becker
Becker Consulting
Consulting
GmbH
GmbH
LL == Frankfurt
Frankfurt
ou
ou == IT
IT
oo == Allgemeine
Allgemeine Deutsche
Deutsche
Direktbank
Direktbank AG
AG
cn
cn == Bob
Bob Offliner
Offliner
ou
ou == IT
IT
cc == US
US
oo == National
National Security
Security
Agency
Agency
uid = bob
mail = bob@localhost
cn
cn == Alice
Alice I.I. Wunderland
Wunderland
uid = alice
mail = alice@localhost
Abbildung 18 Ausschnitt eines fiktiven LDAP-Verzeichnisbaumes
Abbildung 18 verdeutlicht die hierarchische Struktur von LDAP-Verzeichnissen an Hand einer
49
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
Anordnung der Einträge in Baumform. Die entsprechenden Knoten, welche zum Eintrag von
Bob gehören, sind farblich markiert. Weitere Einträge mit den Attributen c=GB und c=US sind
nur andeutungsweise dargestellt, um zu verdeutlichen, dass der gezeigte Ausschnitt Teil eines
erheblich umfangreicheren Verzeichnisbaumes sein kann.
3.8.2.4 Das Sicherheitsmodell
In einem LDAP Verzeichnis abgelegte Einträge können sowohl allgemein zugänglichen Informationen wie Zertifikate als auch vertrauliche Daten sein. Ein Hauptaugenmerk bei der Implementierung eines Verzeichnisdienstes gilt daher dem Thema Sicherheit. Je nach Grad der
Vertraulichkeit können bei LDAPv3 verschiedene Authentifizierungsmechanismen eingesetzt
werden.
Keine Authentifizierung
Dies ist die einfachste Methode. Sie wird benutzt, wenn das Verzeichnis nur aus allgemein
zugänglichen Informationen wie einem öffentlichen Telefonbuch, oder Zertifikaten besteht.
Zur Anmeldung werden keine Benutzerinformationen wie Loginname oder Passwort verlangt.
Die Verbindung zum LDAP Server wird folglich anonym hergestellt.
Einfache Authentifizierung
Bei dieser Methode wird zum Verbindungsaufbau der DN eines in diesem Verzeichnis enthaltenen Benutzers sowie das dazugehörende Passwort benötigt. Der Server kann entsprechend
konfiguriert werden, sodass nur bestimmte Benutzer autorisiert sind, auf sensible Daten schreibend bzw. lesend zuzugreifen. Diese sicherheitsrelevanten Authentifizierungsinformationen
werden allerdings unverschlüsselt zum Server übertragen, sodass in den meisten Fällen keine
ausreichende Sicherheit gewährleistet werden kann. Angreifer, welche den Netzwerkverkehr
zwischen Client und Server abhören, sind in der Lage die Authentifizierungsinformationen
abzufangen, um sich anschließend selbst unbefugten Zugang zu verschaffen.
Simple Authentication and Security Layer (SASL)
SASL ist eine Methode, die verbindungsorientierte Protokolle um Authentifikationsmechanismen erweitert. Ursprünglich entwickelt, um eine stärkere Authentifizierung für das IMAP-Protokoll zu erreichen, ist es nun auch für die Version 3 von LDAP verfügbar.
Nach der eigentlichen Authentifizierung durch SASL können die Kommunikationspartner
weitere Sicherheitsmechanismen wie Kerberos oder SSL zur Verschlüsselung der Übertragung
aushandeln.
Der Client ruft dazu den SASL-Treiber des Servers auf und nennt ihm den gewünschten
Sicherheitsmechanismus. Sofern der Server diesen unterstützt, verbindet sich der SASL-Treiber des Servers mit dem gewünschten Sicherheitssystem und leitet den Verbindungsaufbau ein.
Abbildung 19 zeigt die Beziehungen zwischen Client, Server und dem Authentifizierungssystem.
50
Kapitel 3: Public Key Infrastrukturen
SASL
SASL
Authentisierungsanforderung
Authentisierungsanforderung
des
des Clients
Clients
SASL
SASL Treiber
Treiber
auf
auf dem
dem Server
Server
SASL
SASL
Authentifizierungssystem
Authentifizierungssystem
Anonym
Kerberos
SSL
Abbildung 19 Authentifizierung per SASL
3.8.2.5 LDAP URLs
Der LDAP Uniform Resource Locator (URL) erlaubt Zugriffe auf LDAP Verzeichnisse über
normale Webbrowser wie den Microsoft Internet Explorer oder den Netscape Navigator.
LDAP-URLs beginnen mit ldap:// (oder ldaps://, wenn die Verbindung mit SSL verschlüsselt wird) und können aus komplexen Suchanfragen zusammengebaut sein, wie in
Abbildung 20 zu sehen. Für dieses Beispiel wurde das LDAP Verzeichnis von www.openldap.com gewählt und nach der Person mit dem Benutzernamen mrv aus der Abteilung
people innerhalb der Domain openldap.org gesucht6. Die Suchanfrage wird dabei aus den
üblichen Attributen wie sie z. T. in Tabelle [9] beschrieben sind, aufgebaut. Für eine detaillierte Beschreibung des Syntax wird auf [RFC2255] verwiesen.
Abbildung 20 LDAP-Zugriff über Webbrowser
Moderne Emailprogramme und Webrowser nutzen diese Zugriffsmethode, um Informationen
wie Zertifikate oder CRLs direkt aus LDAP-Verzeichnissen zu empfangen. So kann der
Mechanismus zur Gültigkeitsprüfung von Zertifikaten durch diese Programme für den Nutzer
transparent erfolgen.
6. Um das Beispiel nachvollziehen zu können, muss bei einer evtl. vorhandenen Firewall mit Portfilter der
Port 389 für LDAP freigeschaltet sein. Eine Fehlermeldung vom Browser der Art „Verbindung konnte
nicht hergestellt werden / cannot connect“ ist sonst vorprogrammiert.
51
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
3.9
Rechtliche Aspekte des PKI Betriebes
Über Jahrtausende hinweg wurde Kryptographie hauptsächlich von Geheimdiensten und Militärs eingesetzt. Viele Regierungen - darunter auch die US-Regierung - sehen auch heute noch
den Einsatz von Verschlüsselung in einem engen Zusammenhang mit krimineller Energie. Die
Folge ist, dass starke Kryptographie in vielen Staaten gesetzlich beschränkt und in einigen gar
ganz verboten wurde.
3.9.1
Gesetzliche Beschränkungen
Die Möglichkeiten, den Einsatz von Kryptographie gesetzlich zu kontrollieren, sind vielfältig.
Vom einfachen Verbot, kryptographische Hard- und Software in andere Staaten zu exportieren,
über eine einschränkende Nutzung innerhalb des eigenen Staates, bis hin zum kompletten Verbot existieren verschiedene Varianten:
‰
Verbote und Nutzungsbeschränkungen
Der Einsatz von Verschlüsselungsverfahren kann komplett oder teilweise gesetzlich verboten werden. So ist es möglich, die legale Nutzung von Verschlüsselung
auf Finanzdaten einzuschränken (d. h. auf den Bankenverkehr), oder Verschlüsselungslizenzen ausschließlich an Firmen und nicht an Privatpersonen herauszugeben. Letztere Einschränkung wird derzeit in Frankreich praktiziert.
‰
Exportverbote und -beschränkungen
Aus den USA kommt folgende Beschränkung: Die Verbreitung von Kryptographie
im Inland ist dort nicht beschränkt, stattdessen wird Wert darauf gelegt, dies im
Ausland zu tun. Lange Zeit galt in den USA ein strenges Exportverbot für starke
Kryptographie, mehr dazu in Abschnitt [3.9.3].
‰
Schlüsselwiederherstellung
Die dritte Möglichkeit Kryptographie gesetzlich zu regulieren wurde schon in
Abschnitt [3.6.1] näher besprochen: Daten dürfen zwar mit starker Kryptographie
verschlüsselt werden, jedoch müssen die notwendigen Schlüssel zur Entschlüsselung bei einer staatlichen Stelle hinterlegt werden.
In Deutschland wird derzeit die Verwendung von Kryptographie - zumindest was die Verschlüsselung betrifft - nicht durch Gesetze geregelt. Ein Gesetz, das auf andere Weise mit
Kryptographie zu tun hat, ist das schon mehrfach erwähnte Gesetz zur digitalen Signatur
(Signaturgesetz).
3.9.2
Gesetz zur digitalen Signatur (SigG)
Anfang des Jahres 2001 wurde das deutsche Signaturgesetz (SigG) aus dem Jahr 1997
[SigG97-1] an die europäische Signaturrichtlinie angepasst, um die europäische Vorgabe einer
rechtlichen Gleichstellung der elektronischen Signatur mit der eigenhändigen Unterschrift zu
erfüllen [SigG01-1]. Die dafür notwendigen Anpassungen an Formvorschriften im Privatrecht
[SigG01-2] sind seit August 2001 in Kraft. Damit ist die qualifizierte elektronische Signatur
(digitale Signatur) nun der gesetzlichen Schriftform in den meisten Fällen gleichgestellt.
Das vorher gültige deutsche SigG mit seinen hohen Sicherheitsanforderungen und den entspre-
52
Kapitel 3: Public Key Infrastrukturen
chenden Verordnungen war nicht unumstritten. Auf der Suche nach einer europaweit allgemein rechtsgültigen Lösung für digitale Signaturen stieß man hauptsächlich auf den
Widerstand Großbritanniens. Der deutsche Ansatz wurde als zu teuer und die Anforderungen
als zu hoch kritisiert [CSH99]. Man befürchtete sogar, dass Zertifizierungsdienste weit gehend
in die Nische der Hochsicherheitsanwendungen verdrängt werden könnten [StKrem01]. Weiterhin gab es mit diesem Ansatz vielerorts keinen Anreiz, Lösungen für eine gesetzeskonforme
Signatur zu entwickeln, denn dem deutschen SigG fehlten jegliche Aussagen über evtl. Rechtsfolgen.
Großbritannien verfolgte daher einen anderen Rechtsansatz, der Sicherheit über Haftung definiert. Die neu geschaffene europäische Signaturrichtlinie, welche mit dem neuen SigG Anfang
2001 umgesetzt wurde, stellt nun auch einen Kompromiss zwischen der deutschen und der britischen Lösung dar: Haftung kombiniert mit hohen Sicherheitsstandards.
Für die Mehrheit der Rechtsgeschäfte in Deutschland hat der Gesetzgeber keine Schriftform
vorgesehen, d. h. fast alle Verträge können auch mündlich geschlossen werden (die Beweiskraft sei jetzt mal außen vor gelassen). Es gibt aber ein paar Ausnahmen: Bürgschaftserklärungen, Erteilung von Zeugnissen und Kündigungen von Arbeitsverträgen sind beispielsweise
Fälle, in denen auch heute noch die eigene Unterschrift erforderlich ist. Mit der Anpassung der
Formvorschriften im Privatrecht kann die schriftliche Form nun durch die elektronische Form
ersetzt werden, sofern dies nicht ausdrücklich durch ein Gesetz ausgeschlossen wird.
Für Rechtsgeschäfte im Internet werden diese wohl auch in Zukunft eine eher untergeordnete
Rolle spielen. Dort handelt es sich weit aus häufiger um Vereinbarungen, bei denen Verkäufer
von sich aus auf Schriftform bestehen, um ein Maximum an Rechtssicherheit zu erhalten.
Obgleich die Schriftform in diesen Fällen nicht gesetzlich vorgeschrieben wäre.
Die daraus hervorgehenden Auswirkungen auf Firmen, die den Aufbau einer Zertifizierungsinfrastruktur gemäß SigG planen, werden im Folgenden näher betrachtet.
Beweislastumkehr
Die Beweisführung im Falle einer, bezüglich der Echtheit, strittigen digitalen Signatur wurde
mit der Anpassung der Formvorschriften im Privatrecht zu Ungunsten der SignaturschlüsselInhaber geändert. Wenn eine digitale Unterschrift dem Signaturgesetz entspricht, gilt sie auch
als echt; zumindest solange nichts grundsätzlich dagegen spricht, dass sie mit dem Willen des
Signaturschlüssel-Inhabers abgegeben wurde. Bei realen Unterschriften muss bislang der
Empfänger beweisen, dass eine abgegebene Unterschrift auch tatsächlich vom Inhaber stammt.
Dies fällt nun auf den Signaturschlüssel-Inhaber zurück, d. h. dieser muss beweisen, dass es
anderen möglich war, die Signatur zu fälschen [UtRoos01].
Auswirkungen auf Zertifizierungsstellen
Mit der Anpassung des Signaturgesetzes an die europäische Signaturrichtlinie ergeben sich
auch rechtlich interessante Auswirkungen auf Zertifizierungsdienste. Das betrifft insbesondere
Firmen, die mit ihrer, derzeit noch firmenintern betriebenen, Zertifizierungsinfrastruktur an die
Öffentlichkeit gehen wollen, um auch der breiten Masse der Bevölkerung ihre Signaturen für
Rechtsgeschäfte anzubieten:
53
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
‰
Haftung
Für Zertifizierungsdienste gilt jetzt eine Haftungsregelung, die besagt, dass sie im
Falle des eigenen Verschuldens für einen evtl. Schaden gegenüber Dritten aufkommen müssen, falls diese einem scheinbar gültigen Zertifikat vertraut haben (SigG
§11, Absatz 1). Um dies sicherzustellen, müssen Zertifizierungsdienste für eine
Deckungsvorsorge in Höhe von mindestens 500.000 DM sorgen, aus dieser dann
entsprechende Schäden Dritter ersetzt werden (SigG §12).
‰
Bußgeld
Für Verstöße gegen das Signaturgesetz gilt jetzt eine Bußgeldregelung. Ordnungswidrigkeiten werden je nach Schwere mit einer Geldbuße von bis zu 100.000 DM
geahndet (SigG §21).
‰
Genehmigungspflicht
Die bislang geltende Genehmigungspflicht für den Betrieb eines Zertifizierungsdienstes wurde zu Gunsten einer freundlicheren Anzeigepflicht ersetzt (SigG §4,
Absatz 1 und 3). Dadurch reduzieren sich die Kosten für den Aufbau einer Zertifizierungsinfrastruktur, was letztlich der Verbreitung digitaler Signaturen zu Gute
kommen wird.
Auch wenn die Genehmigungspflicht jetzt entfallen ist, kann dennoch nicht auf Kontrollmechanismen verzichtet werden, die überprüfen, ob bei einer Zertifizierungsstelle alle Sicherheitsanforderungen bedacht wurden. Nur so kann gewährleistet werden, dass eine
elektronische Unterschrift auch eine gewisse Beweiskraft hat. Aus diesem Grund sieht das
SigG eine freiwillige Prüfung (Akkreditierung) von Zertifizierungsstellen durch die zuständige
Behörde vor (SigG §15). Eine solche Akkreditierung umfasst neben einer Prüfung, ob das
Sicherheitskonzept bestimmten Voraussetzungen des SigG genügt auch eine Prüfung, ob alle
Vorschriften des Gesetzes entsprechend umgesetzt wurden.
3.9.3
Exportbeschränkungen der USA
Zu den Zeiten des kalten Krieges wurde Kryptographie von der US-amerikanischen Regierung
als Kriegsmaterial eingestuft und entsprechend starken Exportbestimmungen unterworfen. Da
Verschlüsselung damals fast ausschließlich in Militär- und Geheimdienstkreisen verwendet
wurde, stellte man militärisch verwendbare Verschlüsselungsgeräte und -Software auf eine
Stufe mit Waffen bzw. Munition und verbot deren Export. Erst in den 90er Jahren, als das
Internet immer populärer und Verschlüsselungsprodukte Massenware wurden, lockerte die
US-Regierung die Exportrestriktionen. US-Firmen wie Netscape und Microsoft erhielten die
Erlaubnis, Verschlüsselung mit bis zu 40 Bit Schlüssellänge für symmetrische Schlüssel zu
exportieren. Mitte der 90er Jahre wurden dann die Exportbeschränkungen von einem US-amerikanischen Gericht als teilweise verfassungswidrig erklärt. Kurz darauf wurde schließlich der
Export von Kryptographie mit 56 Bit Schlüssellänge erlaubt7.
1997 wurde dann die Ausfuhr von symmetrischer Kryptographie mit 128 Bit Schlüssellänge
erlaubt - allerdings nur an ausländische Finanzinstitute für die Verschlüsselung von Finanzdaten (beispielsweise bei der Übertragung von Kreditkarteninformationen).
7. Die Exportbeschränkungen galten schon damals nicht für die Ausfuhr von Büchern mit gedrucktem
Quellcode „free speech“. 1997 konnte auf diese Weise der Quellcode von PGP in Form eines Buches
exportiert werden - dieser musste anschließend für die internationale Version nur noch eingescannt und
neu compiliert werden.
54
Kapitel 3: Public Key Infrastrukturen
Da die Verwendung von Kryptographie in den USA selbst nicht beschränkt wird, bieten Netscape und Microsoft ihre Webbrowser seitdem in zwei unterschiedlichen Versionen an: eine
Export Version und eine sog. Domestic Version. Diese ermöglichen in Abhängigkeit von dem
ihnen präsentierten Server-Zertifikat unterschiedliche Verschlüsselungsstärken. Die Kommunikation mit Browsern der Domestic Version konnte somit 128 Bit verschlüsselt werden, während Browser in der Export Version auf 40 oder 56 Bit Schlüssellänge beschränkt waren. Um
die zur Verschlüsselung von Finanzdaten erlaubten 128 Bit auch mit einer Export Version zu
erzwingen, wird für Server von Finanzinstituten ein besonderes - meist teuer angebotenes Zertifikat benötigt [TcTrust01], das bei Microsoft unter der Bezeichnung Server Gated Cryptography (SGC) bekannt ist, aber auch als Global Server ID oder Step Up Certificate bezeichnet
wird.
Seitdem wurde starke Kryptographie auch nicht mehr als Kriegsmaterial, sondern als DualUse Produkt angesehen. Dual-Use Produkte können sowohl für den militärischen, alsauch für
den zivilen Gebrauch eingesetzt werden. Deren Export an „bedenkliche“ Staaten wird durch
Ausfuhrlisten des Wassenaar-Abkommens [Wassenaar00] vom Dezember 1998 geregelt.
Da Standardsoftware wie Webbrowser oder Textverarbeitungsprogramme häufig aus den USA
kommen, zeigte die US-amerikanische Exportpolitik gerade auch in Deutschland lange Jahre
Wirkung. Ein Großteil der heute noch in Deutschland eingesetzten Standardsoftware ist mit
minderwertiger Verschlüsselungstechnologie ausgestattet.
Anfang des Jahres 2000 hat die US-amerikanische Regierung die Beschränkungen für den
Export von Verschlüsselungs-Produkten zumindest in die Mitgliedsstaaten der europäischen
Union praktisch abgeschafft. Die Exportbeschränkungen entfallen nun bei Produkten mit
schwacher Verschlüsselung (d. h. 56-Bit symmetrisch und 512-Bit asymmetrisch) sowie bei
Produkten mit starker Verschlüsselung die für den Massenmarkt bestimmt sind. Ob eine Hardoder Software nun als Produkt für den Massenmarkt gilt, entscheidet das US-amerikanische
Ausfuhramt (Bureau of Export Administration, kurz BXA) [CSH00]. Zeitgleich bekam Kryptographie den dafür neu geschaffenen Status als Krypto-Handelsware (Retail encryption commodities and software).
Neben der EU gilt die neue Regelung auch für die Schweiz, Norwegen, Ungarn, Tschechien
und Polen sowie Japan, Australien und Neuseeland [UlBantle00]. Ausgenommen von diesen
Exporterleichterungen bleiben aber weiterhin Kuba, Iran, Irak, Libyen, Nordkorea, Sudan und
Syrien sowie Serbien und Teile von Afghanistan.
3.10 Zusammenfassung
Dieses Kapitel berichtete über die Bestandteile einer Public Key Infrastruktur, der Notwendigkeit von Zertifikaten sowie den Basisdiensten von Trustcentern. Public Key Infrastrukturen
bieten Dienste zur Gewährleistung von Authentizität, Integrität und Vertraulichkeit für die
Übertragung sicherheitsrelevanter oder personenbezogener Daten über offene Netze. Grundlage dieser Sicherheitsinfrastruktur stellen öffentliche Schlüssel und Zertifikate dar. Ein Zertifikat enthält den öffentlichen Schlüssel, der von einer CA beglaubigt sowie digital signiert ist
und ermöglicht so den öffentlichen Schlüssel auf zuverlässige Weise einer Person zuzuordnen.
Trustcenter sind vergleichbar mit einer Ausweisbehörde und Zertifikate entsprechen einem
elektronischen Identitätsnachweis. Zertifikate sind ähnlich wie Ausweise der realen Welt nur
befristet gültig und können vor Ablauf ihrer Gültigkeit widerrufen werden, wenn z. B. der Verdacht auf Kompromittierung des privaten Schlüssels besteht.
55
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
Ein Schlüsselwiederherstellungsmechanismus ermöglicht den Zugriff auf verschlüsselte
Dokumente auch dann, wenn der zur Entschlüsselung notwendige Schlüssel verloren gegangen ist.
Kryptographische Verfahren auf Public Key Basis wie SSL, S/MIME oder IPSec ermöglichen
den Aufbau sicherer Verbindungen über den TCP/IP Protokoll Stack. SSL als Protokollschicht
oberhalb von TCP bewirkt eine Ende-zu-Ende (end-to-end) Sicherheit zwischen Anwendungsprogrammen, IPSec hingegen als Erweiterung des IP Protokolls eine Verbindungs-zu-Verbindungs (link-to-link) Sicherheit. Dokumentenbasierte Sicherheit auf Basis von Verschlüsselung
und digitaler Signatur bietet S/MIME.
Zu Schluss liefert dieses Kapitel einen Einblick in die rechtlichen Aspekte einer Public Key
Infrastruktur. Es werden Auswirkungen des SigG auf den Betrieb einer PKI besprochen sowie
die z. T. noch existierenden Einschränkungen der US-amerikanischen Exportkontrolle für
starke Kryptographie.
56
Kapitel 4
Bedarfsanalyse
Ziel dieser Diplomarbeit ist es, ein einheitliches Sicherheitskonzept für die Allgemeine Deutsche Direktbank AG (DiBa) zu entwickeln, das mobilen Mitarbeitern eine geschützte Kommunikation, die sichere Abfrage von Intranetinhalten sowie Fernadministration des Firmen-LANs
über das Internet ermöglicht.
In diesem Kapitel soll nun der konkrete Bedarf der DiBa in diesem Bereich ermittelt und
anschließend ein geeignetes Sicherheitskonzept auf Basis einer Public Key Infrastruktur (PKI)
aufgestellt werden.
4.1
Ermittlung des Ist-Zustandes
Um den Bedarf des Kunden an einem neuen Sicherheitskonzept zu klären, ist zu erst eine
Bestandsaufnahme notwendig. Dazu gehören neben der Definition einer Zielgruppe auch die
Analyse des bisherigen Sicherheitskonzeptes sowie eine Ermittlung der Hard- und Softwarebasis. Die konkrete Ermittlung des Bedarfs ist Thema des nächsten Abschnittes.
4.1.1
Unternehmensstruktur DiBa
Die Allgemeine Deutsche Direktbank AG ist durch Beteiligung der niederländischen INGGroup ein international tätiges Unternehmen. Die ING-Group gehört zu den größten Finanzinstituten Europas und ist mit einem Anteil von 49 Prozent Mitgesellschafter der DiBa1. Dazu
gehören weltweit verteilte Niederlassungen. Die DiBa selbst unterhält Niederlassungen an
zwei Standorten in Frankfurt und Hannover. Regelmäßig stattfindende Meetings mit Mitarbeitern und Partnern der ING ergeben die Notwendigkeit, Teile des Intranets sowie die interne
Kommunikation für mobile Mitarbeiter weltweit zu öffnen.
4.1.2
Zielgruppe
Die Zielgruppe für ein neues Sicherheitskonzept kann grob in drei Klassen (sog. Benutzergrup1. Zwischenzeitlich haben sich die Mehrheitsverhältnisse dahin gehend verändert, dass die ING-Group ab
1.1.2002 einen 51% Anteil der DiBa übernimmt und somit Hauptgesellschafter der DiBa wird.
57
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
pen) eingeteilt werden, jeweils mit unterschiedlichen zu gewährenden Zugriffsrechten:
‰
Brokerage Administratoren
Diese Gruppe von Administratoren benötigt Zugriff auf die DMZ (entmilitarisierte
Zone) mit Applikationen wie Telnet-Clients zur Administration von UNIX Servern
oder FTP-Clients zum Up- und Download von Daten.
In Abbildung 21 sind diese als externe Brokerage Administratoren gekennzeichnet.
‰
LAN Administratoren
Diese Gruppe von Administratoren benötigt Zugriff auf das LAN mit Applikationen wie PC Anywhere zur Administration der Windows-PCs, oder FTP-Clients
zum Up- und Download von Daten.
Hinzu kommt die Notwendigkeit zur Verwaltung von Benutzern, die komplett über
Formulare auf dem Intranet-Webserver erledigt werden kann. Daher benötigt diese
Gruppe Vollzugriff auf Webseiten des Intranets und natürlich Zugriff auf die
interne Email-Kommunikation.
In der Abbildung sind diese als mobile Mitarbeiter gekennzeichnet.
‰
Exklusive Benutzer
Zu den exklusiven Benutzern zählen VIPs wie der DiBa Vorstand etc. Diese benötigen auf Geschäftsreisen im Ausland Zugriff auf die interne Email-Kommunikation sowie (eingeschränkten) Zugriff auf den Intranet-Webserver.
In der Abbildung sind diese ebenfalls als mobile Mitarbeiter gekennzeichnet.
Weitere Mitarbeiter der DiBa, wie z. B. normale Hotlinemitarbeiter oder Online-Broker müssen in einem neuen Sicherheitskonzept nicht berücksichtigt werden. Diese benötigen weder
administrativen Zugang vom Heimarbeitsplatz aus aufs interne Netzwerk, noch sind sie während Geschäftsreisen auf ihre persönliche Emailkorrespondenz angewiesen.
Mobile Mitarbeiter können in drei Gruppen unterteilt werden, wie Abbildung 21 zeigt. Nationale Mitarbeiter sind mobil in Deutschland unterwegs und haben Zugriff auf einen Euro-ISDN
Telefonzugang. Zu den Kontinentalen zählen jene Mitarbeiter, die in Teilen Europas unterwegs
sind, in denen der Telefonzugang über Euro-ISDN nicht möglich ist. Dazu gehören auch Mitarbeiter, denen innerhalb Deutschlands nur analoge Zugänge zur Verfügung stehen. Die dritte
Gruppe bilden Mitarbeiter, welche rund um die Welt (international) mobil sein müssen. Diese
benötigen immer eine Zugangsmöglichkeit, welche möglichst unabhängig von irgendwelchen
Telefonstandards ist.
4.1.3
Hard- und Softwareinfrastruktur
Wie Abbildung 21 zeigt, ist die Internetanbindung beider Standorte über Frankfurt geregelt.
Wobei die Hannoveraner über eine Standleitung nach Frankfurt geroutet werden und von dort
ins Internet gelangen. Das LAN der DiBa wird durch eine zweistufige, redundant ausgelegte
Firewall gegen unbefugte Zugriffe aus dem Internet gesichert.
Die DiBa Webseite (www.diba.de), welche u. a. Zugang zum Online-Brokerage bietet, wird
bei einem externen Dienstleister gehostet. Das eigentliche Brokerage-System befindet sich im
Unternehmensnetzwerk der DiBa, zwischen der ersten und zweiten Stufe der Firewall in der
DMZ. Mail- sowie Webserver für das Intranet befinden sich momentan im LAN der DiBa,
58
Kapitel 4: Bedarfsanalyse
außerhalb der DMZ, abgesichert durch die zweistufige Firewallkonstruktion.
Mobiler Mitarbeiter
Mobiler Mitarbeiter
Mobiler Mitarbeiter
(national)
(kontinental)
(international)
Internet
Externer
Brokerage Administrator
Hoster für DiBa
Internetauftritt
DiBa Standort Frankfurt
DiBa Standort Hannover
Firewalls
DMZ
Client
Client
Client
Online Brokerage
LAN
LAN
Standleitung
Client
Client
MailServer
WWWServer (Intranet)
Client
Client
Client
Abbildung 21 Unternehmensstruktur der Allgemeinen Deutschen Direktbank AG
Momentan basiert das Netzwerk auf einer MS Windows NT 4.0 Domäne. Serverseitig werden
Produkte wie MS Exchange 5.5 Server und MS Internet Information Server 4.0 eingesetzt, um
Mail- und Informationsdienste zu bedienen. Eine Migration auf eine MS Windows 2000
Domäne ist für das Jahr 2002 geplant. Wobei die Serverprodukte dann auf den jeweils neuesten
Stand mitgezogen werden sollen, d. h. Exchange 2000 sowie IIS 5. Allerdings ist dieser
Umstieg schon für einen Teil der Clientrechner, insbesondere die mobiler Mitarbeiter, vollzogen worden, d. h. diese wurden schon auf Windows 2000 Professional umgestellt.
4.1.4
Sicherheitskonzept
Das bisher eingesetzte Konzept zur Anbindung mobiler Mitarbeiter basiert auf zwei unterschiedlichen Lösungen. Sicheren Zugang zur persönlichen elektronischen Kommunikation
ermöglicht die Software Outlook Web Access (OWA) von Microsoft. Diese bietet Zugriff auf
Exchange Server über normale Webbrowser. Um administrative Aufgaben erledigen zu können, steht den LAN- und Brokerage-Administratoren zusätzlich ein Remote Access Server zur
Verfügung, der diesen uneingeschränkten Zugang zum DiBa-Netzwerk ermöglicht.
Momentan werden für beide Lösungen weder die Dienste digitaler Signaturen zum elektronischen Unterschreiben von Dokumenten noch Zertifikate zur sicheren Authentifikation von
Mitarbeitern genutzt.
59
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
Zugang zum LAN (Intranet und Fernadministration)
Der Zugang mobiler Mitarbeiter zum LAN der Allgemeinen Deutschen Direktbank AG wird
derzeit mithilfe eines Remote Access Servers (RAS) auf ISDN-Basis bereitgestellt. Dabei wird
die Rückruffunktionalität des Einwahlservers genutzt, wobei die Beschränkung auf bestimmte,
konfigurierbare Rückrufnummern als Basis für die Sicherheit eingesetzt wird. Die Rückrufnummer bildet somit eine rudimentäre Authentifikationsmöglichkeit, wobei davon ausgegangen wird, dass ausschließlich der verbindungswillige Mitarbeiter unter dieser Rückrufnummer
erreichbar ist.
Neben dem augenscheinlichen Vorteil, dass Informationen nicht über die Leitungen eines offenen Netzes transportiert werden und dadurch nur mit erheblichem Aufwand abgehört oder verfälscht werden können, hat dieses Verfahren allerdings erhebliche Nachteile für mobile
Mitarbeiter wie Administratoren gleichermaßen. Die Nachteile lassen sich auf zwei Eigenschaften des Einwahlservers zurückführen, die eigentlich dessen Vorteil ausmachen:
‰
Die Rückruffunktionalität ist auf Euro-ISDN-Telefonzugänge beschränkt.
Diese Eigenschaft ist oft ungeeignet für mobile Mitarbeiter, welche sich auf
Geschäftsreisen häufig im europäischen Ausland aufhalten. Ein ISDN Telefonanschluss ist in vielen europäischen Ländern entweder gar nicht vorhanden oder
inkompatibel zum deutschen Standard. International-mobile Mitarbeiter werden
damit sogar ganz ausgeschlossen.
‰
Die feste Rückrufnummer des Mitarbeiters muss bekannt sein.
Diese Eigenschaft ist relativ unkomfortabel für mobile Mitarbeiter, da eine Rückrufmöglichkeit entweder gar nicht existiert (bei der Einwahl mittels Laptop und
Handy), oder erst sehr kurzfristig ermittelt werden kann (bei einem Aufenthalt im
Hotelzimmer oder Konferenzraum).
Diese Art des LAN-Zuganges ist quasi nur für Mitarbeiter mit festen Heimarbeitsplätzen in
Deutschland sinnvoll einsetzbar, da diese üblicherweise über einen ISDN Zugang mit dauerhafter Rückrufnummer verfügen, die fest im RAS eingestellt werden kann.
Elektronischer Nachrichtenverkehr (Email)
Im diesem Bereich wird derzeit eine Outlook Web Access (OWA) 5.5 basierende Lösung von
Microsoft eingesetzt. Die neben der Emailfunktionalität auch Outlooks Eigenschaften als
Workgroup-Client berücksichtigt. OWA bietet eine Alternative zum standardmäßig bei der
DiBa eingesetzten, vollständigen Outlook-Client, in dem es u. a. die Funktionen des Postfachs,
der Kontakteverwaltung, des Kalenders sowie der öffentlichen Ordner über dynamische Webseiten bereitstellt.
OWA 5.5 basiert auf einer Exchange Server 5.5 und Internet Information Server (IIS) 4.0
Lösung. Clients können über einen normalen Webbrowser mittels des HTTP Protokolls auf
dynamisch generierte HTML Seiten auf den IIS zugreifen. Dieser wiederum kommuniziert mit
dem Exchange Server über ASP. Als Authentifizierungs- und Verschlüsselungsmethode wird
momentan eine Kombination aus SSL (mit dem Server-Zertifikat einer bekannten großen Zertifizierungsstelle) und der Standardauthentifizierung mittels Passwort eingesetzt.
60
Kapitel 4: Bedarfsanalyse
Ziel war es, die von Outlook im LAN bereitgestellten Möglichkeiten des Emailpostfachs, der
Kontakte, des Kalenders usw. mobilen Mitarbeitern bereitzustellen. Die Lösung des Problems
über OWA war nicht nur schnell verfügbar, sie eignet sich auch für sämtliche (auch die international-mobilen) Mitarbeiter sowie zur Verwendung in Netzwerken mit hohen Latenzzeiten
[MS00-8].
Nachteilig an diesem Konzept ist hauptsächlich der gegenüber dem vollständigen Outlook eingeschränkte Bedienkomfort. Zum einen ist zum Verfassen einer einfachen Email eine durchgehende Online-Verbindung notwendig, denn OWA stellt keinerlei Offline-Funktionen zur
Verfügung. Zum anderen sind die Kontakte in der Version 5.5 nur sehr rudimentär implementiert, sie dienen ausschließlich dazu, Emails an einen Kontakt zu senden - Telefon oder Adressinformationen werden nicht angezeigt. Dokumentenbasierte Verschlüsselung oder Signaturen
sind mit OWA nicht möglich.
4.2
Ermittlung des Bedarfs
Ein Sicherheitskonzept für den Intranet- und Mailzugriff mobiler Mitarbeiter sowie die Fernadministration sollte möglichst einheitlich für alle Gruppen von Mitarbeitern ausgelegt werden, sodass unabhängig vom jeweiligen Aufenthaltsort über eine gemeinsame Strategie
Zugang gewährleistet wird. Der bisherige Remote Access Zugang über ISDN-Einwahlserver
soll aus diesem Grund von einem Zugang über das Internet abgelöst werden. Auf diesem Weg
soll die Notwendigkeit, mobile Mitarbeiter in standortabhängige Gruppen einzuteilen, entfallen.
Die Anforderungen an ein solches Konzept umfassen eine einfache, zentrale Administration
der Sicherheitsinfrastruktur. Weiterhin sollte das eingesetzte Sicherheitskonzept in der Lage
sein, mit künftigen Anforderungen an die Sicherheit zu wachsen, d. h. möglichst um neue
Komponenten erweiterbar sein. Falls sich eingesetzte Verfahren nachträglich als unsicher
erweisen, sollte es möglich sein, diese reibungslos, d. h. ohne großen Aufwand gegen Neue
Sichere auszutauschen.
Hinzu kommt, dass bestimmte Teile des Konzeptes in kurzer Zeit realisierbar sein müssen. Auf
Grund eines begrenzten Budgets sollen möglichst bereits vorhandene Technologien angepasst
oder wenn nötig ausschließlich Kostenfreie zusätzlich eingesetzt werden.
Die Realisierung des Konzeptes kann in mehreren Phasen geschehen. In einer ersten Phase
sollte der Intranetzugang realisiert werden. Mailzugriff, sowie Fernadministration können,
soweit notwendig, in späteren Phasen eingeführt werden.
4.2.1
Sicherer Intranetzugang für mobile Mitarbeiter
Für den Zugriff aufs Intranet müssen die Authentizität von Benutzern sowie die Vertraulichkeit
übertragener Informationen sichergestellt sein. Die dazu notwendigen Zugriffsbeschränkungen
für bestimmte Benutzergruppen erfolgen nach der erfolgreichen Authentifizierung an Hand
einer schon existierenden, unternehmensweit zuständigen Benutzerdatenbank. Je nach Zugehörigkeit zu einer bestimmten Benutzergruppe stehen dem Mitarbeiter einer oder mehrere der
folgenden Intranet-Dienste auf einem Internet Information Server 4.0 von Microsoft zur Verfü-
61
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
gung:
Intranet-Dienst
LAN
Admins
Exklusive
Benutzer
Brokerage
Admins
9
9
Zentrale Datenbank für Benutzermanagement
9
Aktuelle Unternehmensnachrichten
9
Benutzerhandbücher, Dokumentationen
9
Terminüberwachung
9
9
Workflow
9
9
Interne Informationen / vertrauliche Konditionen
9
9
Interne Anträge (Urlaubsanträge usw.)
9
9
Schwarzes Brett (Stellenausschreibungen etc.)
9
9
Mitarbeiterforum (Chat)
9
9
9
Tabelle 10 Zuordnung von Intranet-Diensten und Benutzergruppen
4.2.2
Sichere Kommunikation mobiler Mitarbeiter
Die Sicherstellung der Authentizität von Benutzern sowie die Authentizität, Integrität und
optional auch die Vertraulichkeit aller elektronischen Nachrichten, welche an mobile Mitarbeiter versendet werden, muss gewährleistet sein.
Authentizität und Integrität übertragener Nachrichten
Von mobilen Mitarbeitern erstellte und an mobile Mitarbeiter gesendete elektronische Dokumente sollen gegen unbemerkte Veränderungen (Ö Integrität) geschützt werden.
Weiterhin muss sichergestellt sein, dass die mobil erstellten Dokumente auch wirklich vom
angegebenen Mitarbeiter stammen (Ö Authentizität). D. h. Dokumente müssen eindeutig
ihrem Urheber zugeordnet werden können. In diesem Zusammenhang soll auch das elektronische Unterzeichnen von Dokumenten (beispielsweise wichtigen Verträgen) ermöglicht werden.
Vertraulichkeit übertragener Nachrichten
Vertraulichkeit bei der Übertragung elektronischer Kommunikation über Leitungen unsicherer
Netze wie das Internet muss gewährleistet sein. D. h. außerhalb des DiBa-Netzwerkes darf nur
der gewünschte Nachrichtenempfänger die übertragenen elektronischen Dokumente lesen können.
62
Kapitel 4: Bedarfsanalyse
4.2.3
Fernadministration des LANs
Eine sichere Administrationsmöglichkeit des LANs über Anwendungen wie Telnet- und FTPClients sowie PCAnywhere soll gewährleistet sein. Dazu sollte es möglich sein, die Zugriffsberechtigungen der Mitarbeiter beliebig einzuschränken, abhängig von der Autorisierung der
jeweiligen Benutzergruppe. D. h. es muss möglich sein, über Filter bestimmten Mitarbeitern
beispielsweise Zugriff auf die DMZ zu gewährleisten, anderen jedoch nur den Zugriff aufs
LAN.
Grundanforderung einer Administrationsmöglichkeit ist die Gewährleistung einer sichereren
Authentifizierung der Administratoren sowie die vertrauliche Übertragung der Verbindungsdaten.
4.3
Konzept
An Hand der Anforderungen wurde ein Konzept entwickelt, bei dem Einzelaspekte in mehreren Varianten ausgewählt werden können. In diesem Abschnitt wird zu aller erst ein Überblick
über das Gesamtkonzept gegeben und danach die Frage gestellt, ob es sinnvoll erscheint, die
Ausführung des Konzeptes an einen externen Dienstleister zu übergeben, oder beispielsweise
eine eigene Public Key Infrastruktur selbst aufzubauen. Danach folgt die eigentliche Vorstellung der Teilkonzepte und Varianten.
4.3.1
Überblick über das Konzept
Die grundsätzlichen Anforderungen an ein neues Sicherheitskonzept bestehen darin, zwischen
dem LAN der DiBa und mobilen Mitarbeitern übermittelte elektronische Dokumente und
Daten sicher zu schützen. Dabei soll insbesondere die Vertraulichkeit, Integrität und Authentizität der Dokumente und Daten bei der Übermittlung sichergestellt sein.
Um diese Sicherheitsanforderungen zu erfüllen, wird eine Public Key Infrastruktur (PKI) aufgebaut, innerhalb derer ausgewählten Mitarbeitern und Servern elektronische Sicherheitsdienste zur Verfügung gestellt werden. Alle an dieser Infrastruktur teilnehmenden Mitarbeiter
bekommen eigene digitale Schlüsselpaare ausgehändigt, die sie für bestimmte Sicherungszwecke verwenden müssen. Dazu wird eine Zertifizierungsstelle eingerichtet, welche Server
und Mitarbeiter zertifiziert (d. h. deren Schlüssel beglaubigt) und somit für das Vertrauen in
deren Authentizität verantwortlich ist. Die zertifizierten digitalen Schlüssel werden dazu verwendet, digitale Signaturen auszustellen sowie Dokumente und den Datenverkehr zwischen
Clients und Servern zu verschlüsseln.
Die folgenden Abschnitte beschäftigen sich damit, welche Sicherheitsmechanismen mithilfe
kryptographischer Schlüssel im Einzelnen realisiert werden.
4.3.2
Outsourcen oder Do-it-yourself?
Zu erst soll noch die Frage geklärt werden, ob es sich lohnt eine solche Public Key Infrastruktur selbst aufzubauen, oder einen entsprechenden Auftrag an externe Dienstleister zu vergeben.
Dabei sollte bedacht werden, dass es sich bei einer PKI um eine kritische Anwendung in
Bezug auf Vertraulichkeit und Verfügbarkeit handelt.
63
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
‰
Vertraulichkeit
Die beim Registrierungsprozess anfallenden vertraulichen Daten sollten meist
nicht in die Hände Dritter gelangen. Dies ist aber notwendig, wenn ein externer
Dienstleister die Ausstellung von Zertifikaten übernimmt. Zudem sollte man im
Hinterkopf behalten, dass ein solcher Zertifikatsaussteller in der Lage ist, sich
selbst (unbefugt) gültige Zertifikate auszustellen, um so widerrechtlich an geheime
Informationen zu gelangen.
‰
Verfügbarkeit
Eine sichere Archivierung von Widerrufslisten und Verschlüsselungsschlüsseln
muss dauerhaft gewährleistet sein. Es besteht die Gefahr, dass ein Dienstleister
(aus Liquiditätsgründen, o. Ä.) seinen Dienst einstellt. In solch einem Fall wird es
u. U. schwierig an die archivierten Daten zu gelangen.
Weitere Gründe dieser und anderer Art liefert Moses in [TMoses97].
Letztendlich muss auch die Kostenfrage bei einer solchen Entscheidung berücksichtigt werden. Einige ältere Studien wie [IMachef98]2 gehen für die Outsource-Lösung bei einer Basis
von 5000 Nutzern in einem Zeitraum von 5 Jahren von Kosten zwischen 21 und 26 US-Dollar
pro Nutzer und Jahr aus. Wobei sich die Kosten pro Nutzer und Jahr bei einer Vervierfachung
der Nutzerzahl mehr als halbieren. Man kann davon ausgehen, dass bei einer entsprechend
kleineren Nutzerbasis, wie sie bei der DiBa angepeilt wird, die Kosten pro Nutzer und Jahr entsprechend (weitaus) höher ausfallen würden.
In Anbetracht dieser Tatsachen fiel die Entscheidung für einen Aufbau der Public Key Infrastruktur im Do-it-yourself-Verfahren relativ schnell.
4.3.3
Voraussetzungen
Beim Einsatz kryptographischer Standards wie SSL (bzw. TLS), S/MIME oder IPSec wird
vorausgesetzt, dass ausschließlich Versionen eingesetzt werden, die nicht durch die Gesetzgebung künstlich in ihrer Sicherheit beschränkt wurden. Mindestvoraussetzung für den Einsatz
symmetrischer Verschlüsselung sind kryptographische Schlüssel mit einer Länge von mindestens 128 Bit, wie sie auch vom Bundesamt für Sicherheit in der Informationstechnik (BSI)
empfohlen werden. Server-Software wird derart konfiguriert, dass ein Verbindungsaufbau von
Client-Software mit unzureichender Schlüssellänge verhindert wird.
4.3.4
Sicherer Intranetzugang für mobile Mitarbeiter
Authentifizierung und Vertraulichkeit
Die Vertraulichkeit von Intranetinhalten wird mittels Secure Socket Layer (SSL) und X.509v3Server-Zertifikaten gewährleistet, wobei die Daten ausschließlich verschlüsselt übertragen
werden. Siehe Abbildung 22.
2. Die Studie vergleicht die Kosten für digitale Zertifikate der PKI-Anbieter Verisign und Entrust in verschiedenen Szenarien, wie Benutzerauthentifikation mit Webbrowsern, sichere Email und Dateiverschlüsselung über einen Zeitraum von fünf Jahren.
64
Kapitel 4: Bedarfsanalyse
Zusätzlich werden auf Seite der Benutzer X.509v3-Client-Zertifikate eingesetzt, um eine
sichere Benutzerauthentifizierung zu ermöglichen. Nur authentifizierte und autorisierte Benutzer bekommen Zugang zu einzelnen oder allen Angeboten des Intranets. Durch den Einsatz der
X.509v3-Client-Zertifikate entfällt die Notwendigkeit einer Passworteingabe.
HTTPS (HTTP über SSL)
Verschlüsselte Verbindung
IIS 4
Webbrowser
Authentifikation durch
Serverzertifikat
Authentifikation durch
Clientzertifikate
Abbildung 22 Zugang zum Intranet über SSL
Diese Lösung kann für alle Benutzergruppen uneingeschränkt eingesetzt werden.
4.3.5
Fernadministration des LANs
Vertraulichkeit und Integrität von Datenkommunikation über das Internet soll mittels Verschlüsselung auf Routing-Ebene durch ein VPN (virtuelles privates Netzwerk) gewährleistet
werden, sofern nicht alle verwendeten Administrationswerkzeuge eine Ende-zu-Ende-Sicherung ermöglichen.
Zur Realisierung des VPNs wird der verbreitete Standard IPSec unter dem Betriebssystem
Windows 2000 verwendet. Dieses kann sowohl als VPN-Client als auch als VPN-Server
genutzt werden, um einen sicheren Tunnel zwischen zwei Rechnern über eine unsichere Leitung wie das Internet zu ermöglichen. Die zu verwendenden Softwareprodukte müssen somit
keine eigene kryptographische Sicherheit bieten und werden dennoch sicher (d. h. unter Wahrung von Integrität und Vertraulichkeit) über diesen sicheren Tunnel vom mobilen Rechner ins
LAN (und zurück) transportiert.
Virtuelles privates Netzwerk (VPN)
Verschlüsselte Verbindung
Windows
2000 Server
Authentifikation durch
Serverzertifikat
Windows
2000 Client
Beliebige Anwendungen wie
PC Anywhere, VNC, Telnet
oder FTP usw...
Authentifikation durch
Clientzertifikate
Abbildung 23 Fernadministration über ein VPN
65
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
Zur sicheren Authentifizierung von Mitarbeitern als autorisierte VPN-Clients werden
X.509v3-Client-Zertifikate sowie auf Seite des VPN-Servers X.509v3-Server-Zertifikate verwendet.
Für die Verwendung von IPSec als in Windows integrierter VPN-Lösung ist der Einsatz
zumindest eines Windows 2000 Servers3 im LAN und Windows 2000 als Betriebssystem auf
allen mobilen Clients notwendig. Vom Einsatz der in Windows NT 4.0 verwendeten proprietären VPN-Lösung auf Basis des microsoftschen PPTP Protokolls wird abgeraten. PPTP enthält
einen Designfehler im verwendeten Authentifizierungsprotokoll MS-CHAP. Dieser vereinfacht
es Angreifern mittels einer Brute-Force-Attacke das verwendete Verschlüsselungspasswort zu
berechnen ([PeSiering01] und [JoEisinger01]) und somit die Verbindung abzuhören.
4.3.6
Sichere Kommunikation
Da der Bereich sichere Kommunikation die Nutzung von besonderen Exchange Diensten
umfasst, kann hier nicht auf eine Standardlösung zurückgegriffen werden, wie sie für die anderen Bereiche vorhanden ist. Deshalb wurden drei z. T. recht unterschiedliche Konzepte entwickelt, welche bei Bedarf gegeneinander ausgetauscht werden können. Jedes dieser Konzepte
hat seine Vor- und Nachteile bezüglich Geschwindigkeit, Komfort und Funktionalität. Es
wurde darauf geachtet, dass trotz dieser Unterschiede, sämtliche Konzepte die gestellten
Anforderungen bezüglich der Sicherheit erfüllen.
Konzept A
Die bisher verwendete Lösung mittels Outlook Web Access (OWA) wird weiterhin eingesetzt
und um die Möglichkeit der sicheren Benutzerauthentifizierung über X.509v3-Client-Zertifikate erweitert. Die Notwendigkeit einer Passworteingabe entfällt damit. Sobald die Migration
des DiBa Netzwerkes zu einer Windows 2000 Domäne vollzogen ist, wird OWA entsprechend
auf die in Exchange 2000 enthaltene Version upgedated.
HTTPS (HTTP über SSL)
Verschlüsselte Verbindung
Exchange 5.5
Server
IIS 4 für OWA
Authentifikation durch
Serverzertifikat
Webbrowser
Authentifikation durch
Clientzertifikate
Abbildung 24 Kommunikations-Konzept A
Konzept A hat den Vorteil einer schnellen und einfachen Umsetzung, da relativ wenige Änderungen vorgenommen werden müssen und dennoch eine höhere Sicherheit gewährleistet wird
als mit der bisherigen Lösung.
3. Dieser kann zu Beginn auch innerhalb einer NT 4-Domäne betrieben werden
66
Kapitel 4: Bedarfsanalyse
Konzept B
Die bisher eingesetzte Lösung mittels Outlook Web Access (OWA) wird durch MS Outlook
2000 abgelöst. Dabei wird von der Möglichkeit Gebrauch gemacht, POP3 und SMTP Verbindungen mithilfe von SSL abzusichern (POP3 über SSL und SMTP über SSL). Abruf und Versand der Emails sind durch die eingesetzte Verschlüsselung gegen Abhören oder Verändern
geschützt.
Auf Serverseite wird ein MS Exchange 5.5 Server auf Windows NT 4 Basis und als Client MS
Outlook 2000 auf Windows 2000 Basis eingesetzt. Der zwischen Client und Server stattfindende Nachrichtenverkehr wird mittels einer SSL-Verbindung gegen Abhören geschützt. Bei
der zusätzlichen dokumentenbasierten Absicherung durch Verschlüsselung und Signatur wird
der S/MIME Standard genutzt. D. h. sowohl die dokumentenbasierende Sicherheit (siehe
Abschnitt [4.3.6.1]) als auch die Client-Server Kommunikation verwenden Zertifikate nach
dem offenen X.509v3 Standard.
POP3 über SSL
Verschlüsselte Verbindungen
SMTP über SSL
Exchange 5.5
Server
Authentifikation durch
Serverzertifikat
Outlook 2000
Authentifikation durch
Clientzertifikate
Abbildung 25 Kommunikations-Konzept B
Der Nachteil dieser Lösung gegenüber Konzept A und C ist, dass die Nutzung weiterer
Exchange Dienste wie zentrale, servergespeicherte Mailverwaltung, Kontakte, Kalender, usw.
auf diese Weise nicht möglich ist. Diese Dienste müssen dann gegebenenfalls manuell offline
synchronisiert werden.
Konzept C
Die bisher eingesetzte Lösung mittels Outlook Web Access wird durch MS Outlook 2000
abgelöst. Auf Serverseite wird ein Windows 2000 Server und als Client Windows 2000 Professional von Microsoft eingesetzt. Das in Abschnitt [4.2.3] beschriebene virtuelle private Netzwerk (VPN)4 wird dazu benutzt, den zwischen Client und Server stattfindenden
Nachrichtenverkehr mittels Verschlüsselung gegen Abhören und Verfälschen zu schützen.
Zusätzlich wird eine dokumentenbasierte Absicherung mittels Verschlüsselung und Signaturen
wie in Abschnitt [4.3.6.1] beschrieben eingesetzt. Vorteil: Über eine solche VPN Verbindung
4. Die Infrastruktur einer VPN Verbindung zur Fernadministration (siehe Abschnitt 4.3.5) eignet sich für
beliebige Anwendungen, somit können sämtliche Funktionen von Outlook (auch die Workgroup-Funktionen) genutzt werden.
67
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
kann Outlook in voller Funktionalität verwendet werden.
Virtuelles privates Netzwerk (VPN)
Verschlüsselte Verbindung
Exchange
2000 Server
Authentifikation durch
Serverzertifikat
Outlook 2000
Authentifikation durch
Clientzertifikate
Abbildung 26 Kommunikations-Konzept C
Auswahl
Die Konzepte B und C haben einige gemeinsame Punkte, welche im Abschnitt dokumentenbasierte Sicherheit beschreiben werden.
Es wird eine Kombination aus Konzept A und C favorisiert. In einer ersten Ausbaustufe wird
Konzept A für alle Benutzergruppen realisiert. Der Umstieg auf Konzept C erfolgt in einer
späteren Phase, gemeinsam mit der Umstellung des DiBa Netzwerkes von Windows NT 4 auf
Windows 2000. Der Umstieg auf Konzept C wird nur für die Benutzer der Gruppen Brokerage
Administratoren sowie LAN Administratoren vorgenommen. Für Benutzer der Gruppe exklusive Benutzer ist der Umstieg nicht notwendig. Deren Zugang wird zu diesem Zeitpunkt lediglich auf die in Exchange 2000 enthaltene Version von OWA umgestellt.
4.3.6.1 Dokumentenbasierte Sicherheit
Authentizität und Integrität übertragener Nachrichten
Von mobilen Mitarbeitern erstellte Email-Nachrichten werden mit einer digitalen Signatur
nach dem verbreiteten S/MIME Standard, wie in Abschnitt [2.4] beschrieben, versehen. Diese
verhindert unbemerkte Veränderungen am Dokument (Ö Integrität) und stellt sicher, dass das
Dokument auch wirklich vom angegebenen Mitarbeiter stammt (Ö Authentizität). Auf dieser
Basis können Dokumente eindeutig ihrem Urheber zugeordnet werden, was u. a. auch das
elektronische Unterzeichnen von wichtigen Verträgen ermöglicht. Digitale Signaturen werden
mithilfe von X.509v3-Client-Zertifikaten von mobilen Mitarbeitern erzeugt und können von
allen Mitarbeitern verifiziert werden, auch dann, wenn diese selbst nicht zertifiziert sind.
Vertraulichkeit übertragener Nachrichten
Vertraulichkeit bei der Übertragung von Nachrichten wird durch Verschlüsselung einzelner,
ausgewählter Nachrichten (S/MIME) erzielt. Die Verschlüsselung basiert auf dem in X.509v3Client-Zertifikaten enthaltenen öffentlichen Schlüssel des Nachrichtenempfängers. Damit wird
gewährleistet, dass nur der gewünschte Nachrichtenempfänger diese lesen kann (Ö Vertrau-
68
Kapitel 4: Bedarfsanalyse
lichkeit). Verschlüsselung einzelner Nachrichten wird bei der DiBa nur in Ausnahmefällen eingesetzt, falls Nachrichten DiBa-intern vor Mitarbeitern geschützt werden müssen. Möglich ist
der Einsatz von dokumentenbasierter Verschlüsselung in Outlook zudem nur, wenn sowohl
Sender, als auch Empfänger einer Nachricht zur Gruppe zertifizierter Personen gehört. D. h.
beide Kommunikationspartner müssen eigene Schlüsselpaare besitzen und über ein entsprechendes Zertifikat verfügen.5
4.3.7
Anforderungen an die Hardware
Der bereits vorhandene Webserver sowie das neu einzurichtende VPN-Gateway müssen nun
auch auf Anfragen außerhalb des DiBa-LANs antworten. Deshalb gilt es zu überlegen, beide
Server in die DMZ aufzunehmen. Aufgrund des redundant ausgelegten Firewallkonzeptes
müssten die beiden Server entweder ebenso redundant gehalten oder sehr kompliziert an die
Firewalls angebunden werden. Mit Rücksicht auf den daraus resultierenden Installationsaufwand, sowie die damit verbundenen Kosten und nicht zuletzt zur Vorbeugung eines Engpasses
im Bereich der inneren Firewalls6 wurde darauf zunächst verzichtet. Der Serverumzug kann
bei Bedarf in einer späteren Phase nachgezogen werden.
4.4
Weitere Möglichkeiten
In Abschnitt [4.2] wird gefordert, die Sicherheitskomponenten sowohl erweiter- als auch austauschbar zu planen. Die Erweiterbarkeit des Sicherheitskonzeptes bezieht sich auf die Erhöhung des Sicherheitsstandards und ist sowohl durch den Einsatz von Chipkarten (sog.
Smartcards) möglich als auch durch die Erhöhung der gewählten Schlüssellängen oder den
Austausch der verwendeten Algorithmen:
Schlüssellängen
Die Sicherheit von kryptographischen Verfahren hängt u. a. von der gewählten Schlüssellänge
ab. Die in diesem Sicherheitskonzept eingesetzten Verfahren und Schlüssellängen sind so
gewählt, dass sie nach dem derzeitigen Stand der Technik als sicher gelten. Sollten eingesetzte
Schlüssellängen in Zukunft nicht mehr als ausreichend sicher gelten oder wird ein höherer
Sicherheitsstandard gewünscht, besteht die Möglichkeit, vom Einsatz höherer Schlüssellängen
Gebrauch zu machen.
Smartcards
Das Sicherheitskonzept, wie es für die erste Phase geplant ist, sieht keine Realisierung kryptographischer Operationen in Hardware vor. Sämtliche Funktionen wie Schlüsselgenerierung,
Ver- und Entschlüsselung, digitale Signatur sowie Authentifikationsmechanismen werden ausschließlich in Form von Anwendungssoftware auf Server- und Clientrechnern ausgeführt.
Dazu notwendige Schlüsseldaten werden direkt auf der Festplatte des jeweiligen Rechners
gespeichert und sind entsprechend schwach gegen Angriffe geschützt.
Die Sicherheit ließe sich durch den Einsatz von Smartcards erheblich erhöhen. Diese Karten
enthalten den privaten Schlüssel und führen Signatur- und Entschlüsselungs-Operationen
direkt auf der Karte aus, sodass der private Schlüssel die Karte niemals verlässt.
5. Dies ist eine Eigenschaft von Microsoft Outlook 2000.
6. Die Hauptlast der Anfragen an den Webserver erfolgt weiterhin vom LAN aus.
69
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
Austauschbarkeit von Algorithmen
Ein Austausch von Sicherheitskomponenten wird notwendig, falls eingesetzte Verfahren in
Zukunft unsicher werden sollten und selbst die Erhöhung der Schlüssellängen keine ausreichende Sicherheit mehr gewährleisten kann. In diesem Fall lassen sich bei den gewählten Verfahren zur Absicherung der Sicherheitskomponenten (SSL, S/MIME sowie IPSec) die
eingesetzten Algorithmen zur Verschlüsselung problemlos durch andere ersetzen. Lösungen
für digitale Signaturen (in Form von sog. multiplen digitalen Signaturen [HartMase00]) und
verschlüsselten Dokumenten (in Form einer sog. Mehrfachverschlüsselung) sind bei der PKISoftware FlexiTrust in Planung und werden zu einem späteren Zeitpunkt nutzbar sein.
4.5
Zusammenfassung
In diesem Kapitel wurde ein Sicherheitskonzept auf Basis einer Public Key Infrastruktur entworfen, das mobilen Mitarbeitern der DiBa eine geschützte Kommunikation, die sichere
Abfrage von Intranetinhalten sowie die Fernadministration des Firmen-LANs über das Internet
erlaubt. Zwischen dem LAN der DiBa und mobilen Mitarbeitern übermittelte elektronische
Daten sowie Dokumente werden je nach Anwendungsfall entweder mit SSL, S/MIME oder
IPSec geschützt. Für das Schlüsselmanagement der dazu notwenigen kryptographischen
Schlüssel und die Zertifizierung von Benutzern und Unternehmensrechnern wird eine eigene
Public Key Infrastruktur innerhalb der DiBa aufgebaut.
70
Kapitel 5
Untersuchung vorhandener Software auf
Möglichkeiten zur Integration
Im vorangegangenen Kapitel wurde ermittelt, welchen Bedarf die Allgemeine Deutsche
Direktbank AG im Bezug auf ein Sicherheitskonzept für mobile Mitarbeiter besitzt. Aus diesem Bedarf heraus wurde ein Konzept für den Aufbau und Einsatz einer eigenen Public Key
Infrastruktur entwickelt.
Im nächsten Schritt muss nun die einzusetzende Software auf ihre kryptographische Eignung
hinsichtlich einer Verwendung in der Public Key Infrastruktur untersucht werden. Dazu werden die verschiedenen Programme für den server- sowie clientseitigen Einsatz und ihre kryptographischen Möglichkeiten betrachtet.
Aus wirtschaftlichen Gründen erhält dabei die weitere Verwendung bereits im Unternehmen
eingesetzter Software den Vorzug gegenüber der Anschaffung neuer.
5.1
Aufbau der Testumgebung
Für die ausführliche Untersuchung der einzusetzenden Softwareprodukte war es nötig, in einer
Testumgebung die derzeitige Softwareinfrastruktur der DiBa möglichst detailgetreu nachzubauen. Die ausgewählten Produkte wurden auf Basis des Sicherheitskonzeptes auf ihre Leistungsfähigkeit untersucht und sowohl auf Interoperabilität untereinander als auch auf
Handhabbarkeit getestet. Im Folgenden wird beschrieben, welche Software dabei zum Einsatz
gekommen ist.
Software für die Zertifizierungsstelle
Eine Software für Zertifizierungsstellen wie FlexiTrust 2.0 von FlexSecure wird bei der DiBa
derzeit noch nicht eingesetzt. Die Möglichkeiten dieser Software werden in der Testumgebung
unter dem Betriebssystem Windows 2000 Professional betrachtet. Siehe Abschnitt [5.2.3].
Um der weiten Verbreitung von Network Associates PGP Rechnung zu tragen, wird parallel
dazu eine Installation dieser Software vorgenommen. Siehe Abschnitt [5.2.1]
71
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
Anfangs war geplant, ausschließlich zur Zertifizierung des Internet Information Servers 4.0
einen Certificate Server 1.0 von Microsoft unter Windows NT 4 einzusetzen (siehe Abschnitt
[5.2.2]), da FlexiTrust zu Beginn dieser Arbeit nicht in der Lage war, die vom IIS selbst erstellten Schlüsselpaare zu zertifizieren. Rechzeitig vor Fertigstellung dieser Diplomarbeit wurde
dieses Feature allerdings noch in FlexiTrust 2.0 eingebaut. Eine Installation des - bei der DiBa
derzeit ohnehin nicht verwendeten - Certificate Servers ist für den Realbetrieb nun nicht mehr
nötig.
Software für Server (WWW, Mail, LDAP, VPN-Gateway)
Für die Bereitstellung der Intranet-Dienste wird von der DiBa derzeit ein Internet Information
Server 4.0 von Microsoft unter dem Betriebssystem Windows NT 4.0 Server betrieben. Die
Möglichkeiten in Bezug auf dessen weitere Verwendbarkeit werden in der Testumgebung
untersucht. Siehe Abschnitt [5.3.1].
Für die Bereitstellung von Diensten für den elektronischen Nachrichtenverkehr wird von der
DiBa momentan ein Exchange Server 5.5 von Microsoft unter Windows NT 4.0 Server betrieben. Auch in die Testumgebung wird solch ein Server integriert. Da allerdings sämtliche für
den Betrieb einer PKI relevanten Funktionen in der dazugehörigen Clientsoftware enthalten
sind, beschränkt sich die Untersuchung der Serversoftware auf die in Exchange Server 5.5
integrierte Komponente Outlook Web Access 5.5. Siehe Abschnitt [5.3.2].
Beim Umfang der momentanen Nutzerbasis ist der Betrieb eines LDAP-Verzeichnisservers
nicht unbedingt erforderlich, zumal die Installation von Benutzerzertifikaten in der DiBa meist
von Administratoren durchgeführt wird. Hinzu kommt, dass in der momentan vorliegenden
Version 2.0 von FlexiTrust die Unterstützung von LDAP-Servern nicht aktiviert ist und daher
derzeit keine Verwendung findet. Für die zukünftige Erweiterung auf eine größere Nutzerbasis
bietet sich allerdings der Einsatz eines OpenLDAP-Servers in der Version 2.0 unter S.u.S.E.
Linux 7.2 Professional auf X86 an, wie er in der Testumgebung bereits praktisch erprobt
wurde. Die Beschreibung der OpenLDAP-Installation der Testumgebung in Abschnitt [5.3.3]
beschränkt sich auf eine kurze Zusammenfassung.
Alternativ kann dazu auch auf die Möglichkeiten des Active Directory von Microsoft zurückgegriffen werden, das in seiner Eigenschaft als Verzeichnis ebenfalls per LDAP ansprechbar
ist.
Für den Betrieb des VPN-Gateways sollen in Zukunft die Möglichkeiten des Windows 2000
Server-Betriebssystems von Microsoft genutzt werden. Allerdings sind von FlexiTrust ausgestellte IPSec-Zertifikate derzeit noch nicht mit Windows 2000 kompatibel. Auf eine praktische
Untersuchung in der Testumgebung musste daher verzichtet werden. Eine eher theoretische
Betrachtung der Fähigkeiten findet sich allerdings in Abschnitt [5.3.4].
Software für Clients (WWW, Mail)
Der Internet Explorer 5.5 von Microsoft wird momentan von der DiBa als Webbrowser u. a.
zum Zugriff aufs Intranet verwendet (unter Windows 2000 Professional und Windows NT
4.0). Siehe Abschnitt [5.4.1].
Aufgrund einiger Schwächen, insbesondere im Bereich der Verwaltung von Widerrufslisten,
wird parallel dazu die Software Navigator 7.x von Netscape unter Windows 2000, Windows
72
Kapitel 5: Untersuchung vorhandener Software auf Möglichkeiten zur Integration
NT 4.0 und S.u.S.E. Linux 7.2 betrachtet (siehe Abschnitt [5.4.2]).
Als Email-Client und Workgroup-Lösung wird von der DiBa Outlook 2000 von Microsoft
unter Windows 2000 Professional und Windows NT 4.0 eingesetzt (siehe Abschnitt [5.4.3]). In
diesem Zusammenhang ist es interessant, wie verschlüsselte oder signierte Dateien, beim
Empfänger außerhalb der DiBa mit alternativen Emailprogrammen verarbeitet werden können.
Aus diesem Grund wird zusätzlich Netscapes Messenger 7.x untersucht (siehe Abschnitt
[5.4.2]).
A
A
Windows
Windows 2000
2000 WKS
WKS
B
B
Windows
Windows NT
NT 44 Server
Server
Server
S.u.S.E
S.u.S.E Linux
Linux 7.2
7.2 Prof.
Prof.
EE
Windows
Windows 2000
2000 WKS
WKS
FF
Windows
Windows 2000
2000 Server
Server
Active
Active Directory
Directory (LDAP)
(LDAP)
Netscape
Netscape Communicator
Communicator 7.8
7.8
Outlook
Outlook 2000
2000
LDAP
LDAP Browser\Editor
Browser\Editor 2.8.2
2.8.2
Internet
Internet Explorer
Explorer 5.5
5.5
Server
Server
OpenLDAP
OpenLDAP 2.0
2.0
Exchange
Exchange Server
Server 5.5
5.5
PKI
D
D
MS
MS Certification
Certification Server
Server
Windows
Windows NT
NT 44 Server
Server
Clients
Internet
Internet Explorer
Explorer 5.5
5.5
Netscape
Netscape Navigator
Navigator 7.8
7.8
Netscape
Netscape Messenger
Messenger 7.8
7.8
Outlook
Outlook 2000
2000
LDAP
LDAP Browser\Editor
Browser\Editor 2.8.2
2.8.2
PGP
PGP 7.0.3
7.0.3
PKI
FlexiTRUST
FlexiTRUST 22 (CA,
(CA, RA,
RA, IS)
IS)
Server
Internet
Internet Information
Information Server
Server 44
C
C
LDAP
LDAP Browser\Editor
Browser\Editor 2.8.2
2.8.2
Clients
Clients
Clients
Abbildung 27 Aufbau der Testumgebung
Abbildung 27 liefert einen Überblick über die Konfiguration der Hard- und Software, wie sie
in der Testumgebung aufgebaut wurde. Die einzelnen Testrechner sind durchnummeriert von A
bis F und mit dem jeweils installierten Betriebssystem gekennzeichnet. Die darauf installierte
Software wurde in drei Gruppen eingeteilt: Server, PKI (enthält Software für Zertifizierungsstellen) und Clients. Pfeile kennzeichnen Softwareprodukte, die einer Interoperabilitäts-Untersuchung unterworfen wurden. Bsp.: ein Pfeil ausgehend von der mit Internet Explorer 5.5 (IE)
bezeichneten Software auf Testrechner A zur Software Internet Information Server 4 (IIS) auf
Testrechner B bedeutet, dass der IE 5.5 unter Windows 2000 im Zusammenspiel mit dem IIS 4
unter Windows NT 4 getestet wurde. Auf Pfeile, welche die Beziehungen der Gruppe PKI
symbolisieren, wurde aus Gründen der Übersichtlichkeit verzichtet.
5.2
Software für Zertifizierungsstellen
In diesem Abschnitt werden die Softwarepakete für den Aufbau und Betrieb der Zertifizierungsstelle, Network Associates PGP, Microsoft Certificate Server und FlexSecure FlexiTrust
73
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
betrachtet.
5.2.1
PGP
Während der Entwurfsphase der Zertifizierungsstrategie wurde ich von einigen Mitarbeitern
der DiBa darauf angesprochen, dass PGP der etablierte Standard für elektronische Nachrichtenkommunikation sei. Darauf hin entstand die Überlegung, der weiten Verbreitung von PGP
Rechnung zu tragen und die bei einigen Mitarbeitern evtl. vorhandenen PGP-Benutzerschlüssel in die Zertifizierungs-Infrastruktur zu übernehmen. Im weiteren Verlauf dieses Abschnittes
folgen eine Abwägung der Vor- und Nachteile sowie der Grund weshalb PGP dann schließlich
doch nicht in das Zertifizierungskonzept aufgenommen wurde.
Geschichte
Die von Phil Zimmermann entwickelte Verschlüsselungssoftware Pretty Good Privacy (PGP)
entstand vor knapp zehn Jahren, als in der New York Times ein Gesetzesvorschlag für ein USamerikanisches Antiterrorgesetz veröffentlicht wurde. Dieser Vorschlag sah vor, dass alle
Anbieter von sicheren Kommunikationsdiensten eine Hintertür einbauen müssten, die der USRegierung den unverschlüsselten Zugriff auf die übertragenen Informationen ermöglichen
sollte. Die US-Regierung hatte damals wohl hauptsächlich kriminelle Gruppierungen als Zielgruppe von Kryptographiesoftware in Verdacht. Stattdessen fand PGP anfangs aber bei einer
gänzlich anderen Benutzergruppe viel mehr Beachtung: Menschenrechtsaktivisten aus nichtwestlichen Staaten wie Osteuropa oder Mittelamerika [RaBend01], die sich, mithilfe der Verschlüsselung ihrer Kommunikation untereinander, vor der Verfolgung durch die Regierung
schützen konnten.
Das erwähnte Antiterrorgesetz wurde zwar nie verabschiedet, dennoch geriet PGP oder besser
gesagt sein Entwickler mit dem US-Gesetz in Konflikt: Für die amerikanische Exportkontrollgesetzgebung galt starke Kryptographie als Kriegswaffe. Jemand der Kryptographiesoftware
aus den USA exportieren wollte, wurde daher so behandelt, als wollte er Waffen exportieren.
Mehr dazu in Kapitel [3.9.3].
Dennoch oder vielleicht gerade deshalb, hat PGP heute den größten Anteil unter den für die
zur Internet-Mail-Kommunikation eingesetzten Lösungen. Phil Zimmermann selbst beschreibt
die Situation so: „Wenn man sich die Internetbevölkerung als Kuchengrafik vorstellt, dann
nutzt nur ein kleiner Teil davon Verschlüsselung. Die Menschen in diesem kleinen Tortenstück
sind aber fast alle Nutzer von PGP.“ [RaBend01].
Mittlerweile entwickelt sich PGP zu einem Industriestandard für Email-Verschlüsselung. Das
auf PGPv5 basierende OpenPGP wurde als IETF-Standard vorgeschlagen [RFC2440].
Zertifikate
Der vielleicht grundlegendste Unterschied zwischen PGP und den nachfolgend besprochenen
Lösungen für Zertifizierungsstellen sind die zwei verschiedenen Standards für das Format der
Public Key Zertifikate (die nicht zueinander kompatibel sind). Während X.509v3 auf vertrauenswürdigen dritten Stellen zur Bestätigung der Authentizität des Schlüssels eines Zertifikatnehmers basiert (Kapitel [3.5.3]), baut PGP auf das Prinzip des Web of Trust aus Kapitel
[3.5.2].
74
Kapitel 5: Untersuchung vorhandener Software auf Möglichkeiten zur Integration
Widerruf von Zertifikaten
Die in Abschnitt [3.4.2] vorgestellte Methode, widerrufene Zertifikate auf einer Widerrufsliste
zu veröffentlichen und damit bekannt zu geben, welche Zertifikate ungültig sind, wird von
PGP nicht unterstützt. D. h. PGP kennt kein solches Konzept, entsprechend gibt es auch keinerlei standardisiertes Format oder eine verbreitete automatische Abfragemöglichkeit für PGPClients, auf entsprechende Listen zuzugreifen. Versuche eine Widerrufsliste in eine Zertifizierungshierarchie zu integrieren scheitern meist am Aufwand den Benutzer dabei erbringen müssen:
1.
Web- oder FTP-Server einer CA nach einer PGP-Widerrufsliste durchsuchen.
2.
Widerrufsliste von Hand herunterladen.
3.
Integrität und Authentizität der Widerrufsliste prüfen
4.
Widerrufsliste auf enthaltene Rückrufe von Zertifikaten prüfen, die man selbst
besitzt.
5.
Zertifikat-Rückrufe berücksichtigen, d. h. von Hand die vorhandenen Zertifikate
als ungültig markieren.
Zur Erinnerung: für Zertifikate, welche dem X.509v3-Standard entsprechen, erledigt ein Webbrowser (oder Mailclient usw.) diesen Vorgang im Zusammenspiel mit Verzeichnissen quasi
vollautomatisch, da im X.509-Format von Anfang an Widerrufslisten vorgesehen waren. Jede
Software, die X.509-Unterstützung bietet muss mit diesen Listen umgehen können. Da selbst
das Format der Widerrufslisten standardisiert ist, konnten sich auch nicht derart unterschiedliche, individuelle Sperrlisten-Formate entwickeln, wie das bei PGP leider der Fall ist.
PGP bietet stattdessen zwei weniger mächtige Möglichkeiten herausgegebene Zertifikate zu
widerrufen. Da ist zum einen das Zertifikat-Widerrufszertifikat zu nennen. Neuere Versionen
von PGP „verstehen“ derartige Zertifikatwiderrufe und erlauben es dem Unterzeichner, eine
Signatur unter einem PGP Schlüssel nachträglich für ungültig zu erklären. Was einer Sperrung
des Zertifikates gleich kommt. Die zweite Möglichkeit sind sog. Schlüssel-Widerrufszertifikate. Jeder Benutzer erzeugt dazu vor der Zertifizierung ein selbst signiertes Zertifikat zum
Widerruf seines öffentlichen Schlüssels, das im Falle eines Missbrauches entsprechend von
ihm selbst veröffentlicht werden muss. Wird PGP in einer hierarchischen Struktur im Zusammenhang mit CAs benutzt, werden die Schlüssel-Widerrufszertifikate üblicherweise zusammen mit dem ursprünglichen Schlüsselzertifikat bei der CA gespeichert bzw. veröffentlicht.
PGP Zertifikate können i. M. also nicht hundertprozentig sicher (vollständig) widerrufen werden. Mit Widerrufszertifikaten besteht aber die Möglichkeit, Zertifikate im Falle des Widerrufs
über Keyserver oder über eigens eingerichtete Mailinglisten zu verteilen, um die Ungültigkeit
des eigenen öffentlichen Schlüssels anzukündigen. Besser ist der Ansatz, welcher in [KuSp99]
verfolgt wird, PGP-Zertifikate über X.500 Verzeichnisse zur Verfügung zu stellen.
Sicherheitslücke im Schlüsselformat von PGP und OpenPGP
Vor allem die Verbreitung von PGP spricht eigentlich für eine Aufnahme von PGP-Zertifikaten
75
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
in die Public Key Infrastruktur neben X.509v3. Allerdings wurde während dieser Diplomarbeit
eine gravierende Sicherheitslücke von PGP offenbart, die diesen Gedanken schnell wieder verwarf.
Das Sicherheitsproblem betrifft das von OpenPGP (also auch von PGP 7.0.3 und vom GNU
Privacy Guard) verwendete Format zur sicheren Speicherung privater Signaturschlüssel. Diese
werden verschlüsselt (mit AES, CAST5 oder IDEA) in einem sog. Keyring auf der Festplatte
oder einem anderen Datenträger des Benutzers abgelegt und sind erst nach Eingabe einer Passphrase für die jeweiligen PGP-Anwendungen lesbar. Allerdings werden einige der in der
Schlüsseldatei enthaltenen Informationen nicht ausreichend auf Integrität geprüft, sodass die
Möglichkeit besteht, einige Bytes des Keyrings derart zu verändern, dass darin enthaltene,
manipulierte private Schlüssel nachher weiterhin als gültig betrachtet werden. Durch eine
geschickte Manipulation gelingt es Angreifern, aus Emails, die mit einem solchen veränderten
Schlüssel signiert wurden, den privaten Schlüssel zu extrahieren.
Vlastimil Klima und Tomas Rosa beschreiben in [KlimaRosa01] den Angriff auf derart gespeicherte DSA- und RSA- Signaturschlüssel und liefern entsprechende Gegenmaßnahmen.
5.2.2
Microsoft Certificate Server 1.0
Der Microsoft Certificate Server 1.0 ist ein Zusatzprodukt für den Microsoft Internet Information Server 4.0 (IIS) auf Windows NT 4 Basis. Die Trustcenter Fähigkeiten beschränken sich
auf Erzeugung und Verteilung von Zertifikaten.
Der Certificate Server bearbeitet Zertifizierungsanforderungen vom IIS automatisiert über eine
Schnittstelle, über die es den öffentlichen Schlüssel vom IIS empfängt und das erteilte ServerZertifikat wieder zurücksendet. Über das Webinterface aus Abbildung 28 (links) können Zertifizierungsanfragen mithilfe eines herkömmlichen Formulars auf HTML-Basis an den Certificate Server übermittelt werden. Dieser generiert auf Wunsch notwendige Schlüsselpaare selbst
und zertifiziert diese anschließend.
Zertifikate
Folgende für den geplanten Einsatz relevante Zertifikatsformate werden unterstützt:
‰
X.509v1 und X.509v3, Client-Zertifikate für SSL
‰
X.509v3, Server-Zertifikate für SSL
‰
X.509v3, S/MIME Zertifikate
Kryptographische Algorithmen
Die Schlüsselgenerierung kann wie schon erwähnt auch vom Certificate Server übernommen
werden, dabei stehen folgende kryptographische Algorithmen (Cryptographic Service Provider, CSP genannt) zur Verfügung:
‰
Microsoft Base Cryptographic Provider
Entspricht dem RSA Algorithmus mit einer Schlüssellänge von 512 Bit und
76
Kapitel 5: Untersuchung vorhandener Software auf Möglichkeiten zur Integration
demonstriert die Einschränkungen früherer Export-Versionen.
‰
Microsoft Enhanced Cryptographic Provider
Entspricht dem RSA Algorithmus mit einer Schlüssellänge von 1024 Bit und bietet
damit eine nach heutigen Verhältnissen ausreichende Sicherheit.
‰
Microsoft Strong Cryptographic Provider
Entspricht zumindest in der deutschen Version von Windows NT4 mit High
Encryption Pack dem RSA Algorithmus mit einer Schlüssellänge von 512 Bit. Der
Name „Strong Cryptographic“ lässt aber vermuten, dass bei Erreichen bestimmter
(exportbedingter) Vorgaben größere Schlüssellängen generiert werden können, wie
beispielsweise 2048 oder 4096 Bits.
‰
Gemplus GemSAFE Card CSP v1.0
Dient der Unterstützung von Smartcards.
‰
Schlumberger Cryptographic Service Provider
Dient der Unterstützung von Smartcards.
Abbildung 28 Zertifikatsanforderung über das Webinterface des Certificate Servers 1.0
Konfiguration
Abbildung 28 (rechts) zeigt, wie der Zertifizierungsprozess über spezielle Einstellungen beeinflusst werden kann. Neben den schon weiter oben genannten, obligatorischen Einstellungen
zum verwendeten Zertifikatsformat und dem kryptographischen Algorithmus nebst Schlüssellänge, erlaubt der Certificate Server weiteres Feintuning. Unter Algorithm versteckt sich der
zur Zertifikatssignierung verwendete Hash-Algorithmus (SHA-1, MD2 oder MD5). Die Einstellung Allow Keys to be Exported ermöglicht es, das generierte Zertifikat zusammen mit dem
privaten Schlüssel in einer PKCS#12 Datei über die Microsoft Management Console (MMS)
oder den Internet Explorer zu exportieren. Dies ist notwendig, um die lokal gespeicherten
77
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
Schlüsselpaare inkl. der zugehörigen Zertifikate manuell zum gewünschten Zielrechner zu
transportieren. Ohne diese Einstellung sind private Schlüssel fest an den Rechner gebunden,
von dem aus das Webinterface aufgerufen wurde - es lassen sich nur noch die Zertifikate (inkl.
der öffentlichen Schlüssel) exportieren. Use Existing Key Set ermöglicht die Zertifizierung von
anderweitig erstellten Schlüsseln, d. h. bei dieser Einstellung erzeugt der Certificate Server
kein neues Schlüsselpaar. In Verbindung mit Chipkarten ist Write Certifcate to CSP nützlich.
Die Zertifikate werden dann zusätzlich noch direkt auf die Karte geschrieben.
Üblicherweise wird die Zertifizierungsanfrage im Webbrowser auf dem Zielrechner selbst ausgeführt. Dies hat den Vorteil, dass generierte Zertifikate automatisch im lokalen Internet
Explorer registriert werden, d. h. sofort zur Verfügung stehen und nicht erst vom Administrator
umständlich von Hand installiert werden müssen. Alternativ kann die Zertifizierungsanfrage
auch von einem zentralen Rechner aus erfolgen, dann ist es allerdings erforderlich, die Zertifikate nachträglich zu exportieren und manuell zum Zielrechner zu übertragen.
Folgende Testumgebung wurde eingerichtet, in welcher der Certificate Server 1.0 erfolgreich
eingesetzt werden konnte: Windows NT 4 Server, Service Pack 6a, Windows NT 4 Option
Pack, Internet Information Server 4.0, Internet Explorer 5.5, High Encryption Pack für NT 4,
Certificate Server 1.0 inkl. dem notwendigem Certificate Server 1.0 Hotfix [MS00-1] für die
Zusammenarbeit mit SP 6a und den Einsatz höherer Schlüssellängen.
5.2.3
FlexSecure FlexiTrust 2.0
FlexiTrust ist eine modular aufgebaute und skalierbare Trustcenter-Software, die vollständig in
der Programmiersprache Java implementiert und damit weitestgehend Plattform-unabhängig
ist1. Alle Sicherheitsmechanismen werden über die Java-Cryptographic-Architecture (JCA)
bereitgestellt. FlexiTrust unterstützt Rückfallmechanismen. Sollte sich eine der heute verwendeten Sicherheitstechniken oder Policies aufgrund technischer oder wissenschaftlicher Fortschritte als unsicher erweisen, müssen alle Zertifikate und digitale Schlüssel der PKI
ausgetauscht und alle Signaturen erneuert werden. FlexiTrust ist bereits heute für das abgesicherte, transparente Umschalten der verwendeten kryptographischen Basisalgorithmen
vorbereitet.
Zertifikate
Folgende für den geplanten Einsatz relevante Zertifikats- und Sperrlistenformate werden
unterstützt:
‰
X.509v3, Client-Zertifikate für SSL
‰
X.509v3, Server-Zertifikate für SSL
‰
X.509v3, S/MIME Zertifikate für Verschlüsselung und/oder Signatur
‰
X.509v1, Sperrlisten (CRLs)
1. Die Software wurde bereits auf drei Plattformen erfolgreich eingesetzt (SUN Solaris, Linux, Windows
NT / 2000).
78
Kapitel 5: Untersuchung vorhandener Software auf Möglichkeiten zur Integration
Kryptographische Algorithmen
Die JCA stellt Verschlüsselungs- sowie Signaturalgorithmen nur abstrakt zur Verfügung. Welche Sicherheitstechnik wirklich verwendet wird, hängt davon ab, welchen Crypto-Provider die
JCA gerade benutzt. Unterstützt wird beispielsweise der Microsoft Cryptographic-ServiceProvider (CSP) von Windows NT 4 und Windows 2000. Die folgende Tabelle liefert einen
Überblick über die unterstützten kryptographischen Algorithmen des von FlexiTrust standardmäßig verwendeten Providers (CDC2).
Verfahren
Algorithmus
Signaturverfahren
MD5/RSA in Soft- oder Hardware, SHA1/
RSA, RipeMD160/RSA, SHA1/ECDSA, DSS
Hashverfahren
MD4, MD5, SHA1, RipeMD128, RipeMD160
Schlüsselerzeugung
RSA (beliebige Schlüssellänge), DSA (512 und
1024 Bit nach DSS), ECDSA (bis 256 Bit),
ECElGamal
Verschlüsselung (symmetrisch)
IDEA (128 Bit), Triple-DES (168 Bit)
Verschlüsselung (asymmetrisch)
ECElGamal (bis 256 Bit), RSA, ElGamal
Tabelle 11 FlexiTrust: unterstützte kryptographische Algorithmen
Überblick
FlexiTrust besteht hauptsächlich aus drei Komponenten (Abbildung 29), die sämtliche, mit der
Erzeugung und Verwaltung von digitalen Schlüsseln und Zertifikaten anfallenden, Aufgaben
übernehmen:
‰
FlexiTrust-RA (die Registrierungseinheit)
Regelt die Abwicklung von Antragsprozessen wie die Bearbeitung von Zertifikatsoder Revokationsanträgen und übernimmt die Kommunikation mit der CA.
‰
FlexiTrust-CA (die Zertifizierungseinheit)
Erzeugt digitale Schlüssel, X.509-Zertifikate, personalisierte Geheimnisträger
(PSE) und Sperrlisten (CRL).
‰
FlexiTrust-IS (der Infrastruktur Service)
Übernimmt die Kommunikation mit den Benutzern, die Bereitstellung von Zertifikaten und Widerrufslisten sowie regelmäßige Aufgaben wie beispielsweise die
Rezertifizierung.
Alle Komponenten von FlexiTrust können wahlweise getrennt oder zusammen betrieben wer2. CDC ist ein Java-Crypto-Provider entwickelt an der TU-Darmstadt. Die in der Tabelle mit ECxxx
bezeichneten Algorithmen basieren auf Elyptic Curve Cryptography.
79
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
den. Es ist beispielsweise möglich, die FlexiTrust-CA auf einem eigens dafür vorgesehenen
und besonders gesicherten (abgeschotteten) Rechner gemäß SigG-Anforderung offline sowie
alle Module zusammen auf einem einzigen (vernetzten) Rechner zu betreiben.
Registration Authority (RA)
verwalten
beantragen
(Zertifikats- und Revokationsanträge)
Certification Authority (CA)
zustellen
pflegen
Digitale Schlüssel
Zertifikate
Geheimnisträger (PSE)
Revokationen
Infrastructure Services (IS)
(regelmäßige Aufgaben)
Abbildung 29 Der interne Aufbau von FlexiTrust 2.0
5.2.3.1 FlexiTrust-CA
Die Zertifizierungseinheit von FlexiTrust ist als verteilte Applikation implementiert und stellt
alle Funktionen einer CA bereit:
‰
Schlüsselerzeugung
Erzeugung asymmetrischer Schlüsselpaare mit kryptographischen Verfahren wie
RSA, DSA oder elliptischen Kurven.
‰
Zertifizierung
Zertifizierung selbst erzeugter Schlüsselpaare sowie Zertifizierung von Fremdschlüsseln.
‰
Revokation
Widerruf von ausgestellten Zertifikaten und Erstellung notwendiger Widerrufslisten.
‰
Schlüsselarchivierung, Schlüsselwiederherstellung
Archivierung und Wiederherstellung von privaten Schlüsseln sowie Zertifikaten.
80
Kapitel 5: Untersuchung vorhandener Software auf Möglichkeiten zur Integration
Abbildung 30 Zertifikatsantragsformular der FlexiTrust-RA
5.2.3.2 FlexiTrust-RA
Die Registrierungseinheit ist das Eingangsportal von FlexiTrust: eine skalierbare Software, die
alle Funktionen einer RA bereitstellt:
‰
Kommunikation mit den Benutzern
Registrierung von Benutzern inkl. einer Authentitätsprüfung. Sammeln und verwalteten von Zertifizierungs- und Widerrufsanträgen, Prüfung von Antragsdaten
gemäß frei definierbaren Sicherheitsrichtlinien (Policies).
‰
Kommunikation mit der CA
Weitergabe genehmigter Anträge in Form einer im PKCS#7-Format signierten
Zertifizierungsanforderung an die CA.
Java-Servlets generieren HTML3-Eingabeformulare für Zertifikats- und Widerrufsanträge aus
3. In zukünftigen Versionen werden XML-Eingabeformulare verwendet.
81
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
konfigurierbaren Datenbankeinträgen (SQL, JDBC) oder aus PKCS#10-Anträgen.
Abbildung 31 Revokationsantragsformular der FlexiTrust-RA
5.2.3.3 FlexiTrust-IS
Der Infrastruktur Service bildet die Kommunikationsschnittstelle zu den PKI-Benutzern und
erledigt regelmäßig wiederkehrende Verwaltungsaufgaben:
‰
Kommunikation mit den Benutzern
Herausgabe von Schlüsselpaaren, Zertifikaten sowie Chipkarten an die Benutzer.
‰
Bereitstellung
Öffentliche Bereitstellung von Zertifikaten und Widerrufslisten über LDAP-Verzeichnisdienste.
‰
Key-Backup und -Recovery
FlexiTrust-IS sorgt auf Wunsch für die Möglichkeit von Key-Recovery.
Installation in der Testumgebung
Die Installation in der Testumgebung erfolgt für alle FlexiTrust-Komponenten (CA, RA sowie
IS) gemeinsam auf einem einzigen, vernetzten, nicht gesondert geschützten Rechner unter
Windows 2000. Entgegen den Forderungen der Policy in Abschnitt [A.3.1] wird im Rahmen
dieses Tests kein dedizierter Rechner für die einzelnen Module verwendet. Ein verteiltes Starten der Module ist aber möglich und wird im Realbetrieb auch angestrebt. Der Datenaustausch
zwischen den einzelnen Modulen erfolgt in der Testumgebung über Transferdateien auf der
Festplatte des gemeinsamen Rechners.
82
Kapitel 5: Untersuchung vorhandener Software auf Möglichkeiten zur Integration
5.3
Server Software
In diesem Abschnitt wird Software für Informations- Kommunikations- und Sicherheitsdienste
auf Server-Basis besprochen. Dazu gehören ein Microsoft Internet Information Server, welcher
Zugang zu Intranetdiensten wie Benutzerverwaltung, Unternehmensnachrichten und Dokumentationen bietet; ein Microsoft Exchange Server als Kommunikationsplattform für Email-,
Termin- und Kontaktverwaltung; ein OpenLDAP-Server zur Bereitstellung von Zertifikatsund Widerrufsinformationen; und nicht zuletzt ein MS Windows 2000 Server, der die Dienste
für ein Virtual Private Network (VPN) mit IPSec bereitstellt.
5.3.1
Microsoft Internet Information Server 4.0
Der Webserver Internet Information Server 4.0 (IIS) von Microsoft ist als Zusatzprodukt für
Windows NT 4.0 Server aus dem frei erhältlichen Option Pack realisiert.
CA-Zertifikate
Voraussetzung für die Verwendung von SSLv3 im Microsoft Internet Information Server 4.0
ist die Installation des CA-Zertifikates jener CA, welche den SSL-Server-Schlüssel für den IIS
signiert hat, auf dem Server. Sollen zusätzlich SSL-Clientzertifikate einer davon abweichenden
(d. h. unterschiedlichen) CA eingesetzt werden, so muss deren CA-Zertifikat ebenso auf dem
Server installiert werden, damit der IIS diese als vertrauenswürdige Instanz für Client-Zertifikate anerkennt. Die Vorgehensweise für alle CA-Zertifikate ist identisch und in Anhang [B.2]
für einen Einsatz unter Windows NT mit Service Pack 6a exemplarisch beschrieben.
SSL Server-Zertifikate
Der IIS 4 generiert seine Schlüsselpaare auf Basis des RSA Algorithmus mithilfe des in den
Server integrierten Schlüssel-Managers selbst. Wobei in der getesteten Version ausschließlich
512, 768 oder 1024 Bit Schlüssellängen möglich sind. Zur Zertifizierung der selbst erstellten
Schlüsselpaare wird eine Base64-kodierte PKCS#10 Zertifikatsanforderungsdatei (*.req) über
den Schlüssel-Manager erzeugt, die anschließend von einer separaten CA zertifiziert werden
muss. Standardmäßig ist für diesen Vorgang der Microsoft Certificate Server 1.0 vorgesehen,
es kann allerdings jede beliebige CA verwendet werden, Voraussetzung ist nur der korrekte
Umgang mit der erstellten Zertifikatsanforderungsdatei. Die von der CA erzeugten Zertifikate
können anschließend als einzelne Zertifikatsdateien (Base64-kodiert, *.crt) oder gemeinsam
mit dem CA-Zertifikat mithilfe des Schlüssel-Managers in den IIS importiert werden.
SSL Client-Zertifikate
Ein Mechanismus zur Bindung von Client-Zertifikaten an Windows NT 4 Domänenbenutzerkonten erlaubt es, Benutzer an Hand des bei der Authentifizierung vorgelegten Zertifikates
gezielt zu erkennen und ihnen automatisch Rechte auf dem Server, basierend auf ihren Windows NT Benutzerkonten, zuzuweisen. Diese Bindung stellt somit eine Beziehung zwischen
dem Inhalt des Client-Zertifikates eines Benutzers und dem entsprechenden Windows NT
Benutzerkonto her.
Folgende Möglichkeiten zur Bindung stehen dabei zur Verfügung:
83
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
‰
1-zu-1
Eine Funktion zum Laden eines spezifischen Client-Zertifikates im Base-64-Format (*.cer) in den Server ermöglicht die Zuordnung zu einem Windows NT Benutzerkonto.
‰
n-zu-1
Ähnlich wie bei der 1-zu-1 Bindung werden bei der n-zu-1 Bindung mehrere Client-Zertifikate einem einzelnen Windows NT Benutzerkonto oder einer -Gruppe
zugeordnet.
‰
Wildcards
Bei der Bindung über Wildcards werden keine individuellen Client-Zertifikate in
den Server geladen, stattdessen können Kriterien definiert werden an Hand derer
vorgelegte Zertifikate während des Webzugriffes bestimmten Windows NT Benutzerkonten zugeordnet werden. Ebenso ist es mit dieser Bindung möglich, Zertifikate nach bestimmten Kriterien komplett abzulehnen. Mögliche Kriterien für eine
Wildcard-Bindung sind beispielsweise die im Zertifikat untergebrachten Informationen über den Zertifikatsherausgeber oder andere auf dem DN basierende Kriterien.
Widerruf von Zertifikaten
Ohne weitere manuelle Einstellungen prüft der IIS 4 nicht, ob vom Client übergebene Zertifikate evtl. zwischenzeitlich von der herausgebenden CA widerrufen wurden. Dieser Prüfvorgang ist nach der Installation des Servers standardmäßig abgeschaltet und muss nachträglich in
der Registry mit folgendem Schlüssel aktiviert werden:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Inetinfo\Parameters\CheckCertRevocation = 1
Laut Microsofts Aussagen in [MS99-2] versucht der IIS 4, nachdem ein solcher (DWORD-)
Schlüssel erstellt wurde, die entsprechende CRL zu beziehen. Voraussetzung dafür ist eine korrekt in das Zertifikat eingebrachte Erweiterung vom Typ CRL Distribution Point, welche auf
die CRL auf einem HTTP- oder LDAP-Server verweist. Allerdings war es im Verlauf dieser
Arbeit nicht möglich, den IIS 4 dazu zu bewegen, gültige Zertifikate mit CRL Distribution
Point-Erweiterung anzunehmen. Unabhängig davon, ob diese nun widerrufen waren oder
nicht, wies der IIS 4 solche Zertifikate bei aktiviertem CheckCertRevocation generell als
ungültig ab4. Die vom IIS an den Webbrowser übergebene Fehlermeldung 403.7 Verboten:
Clientzertifikat erforderlich ist wenig hilfreich, da dies auch der Fehlermeldung für den Fall
entspricht, dass überhaupt keine Benutzerzertifikate vorhanden sind. Erst nach Abschalten von
CheckCertRevocation akzeptierte der IIS 4 überhaupt wieder Zertifikate (gleich welcher Art,
d. h. sowohl gültige als auch widerrufene).
Dieses Verhalten zeigt sich ebenso bei manuell installierten Widerrufslisten, daher empfiehlt es
sich, CheckCertRevocation generell auf einen Wert von 0 zu setzen. Microsoft selbst bezeichnet das CheckCertRevocation-Feature beim IIS 4 als unsupported - vermutlich eine dezente
4. Eine Recherche in der Newsgruppe microsoft.public.inetserver.iis.security zeigte, dass dieses Problem
offensichtlich weit verbreit zu sein scheint.
84
Kapitel 5: Untersuchung vorhandener Software auf Möglichkeiten zur Integration
Bezeichnung für nicht funktionsfähig.
5.3.2
Microsoft Exchange Server 5.5 mit Outlook Web Access 5.5
Um mobilen Zugriff auf den Exchange Server 5.5 zu ermöglichen wird in der DiBa momentan
die Software Outlook Web Access (OWA) 5.5 von Microsoft eingesetzt. OWA ist eine in den
Exchange Server 5.5 integrierte Komponente, die nicht dazu dient, Outlook 2000 zu ersetzen.
Lediglich ein Teil von Outlooks Funktionen wird bereitstellt, mit dem Ziel die Netzwerklast
(beispielsweise beim Zugriff über VPNs hinweg) zu verringern.
Abbildung 32 Outlook Web Access für mobilen Zugriff auf Exchange Server,
dargestellt im Internet Explorer
OWA 5.5 basiert auf einer Lösung, die den Exchange Server 5.5 mit einem Internet Information Server (IIS) 4.0 verknüpft. Clients können über einen normalen Webbrowser, wie den
Internet Explorer, mittels des HTTP Protokolls auf dynamisch generierte HTML Seiten auf
den IIS zugreifen. Dieser wiederum kommuniziert mit dem Exchange Server über ASP. Unter
diesem Aspekt ist OWA eigentlich eher ein Bestandteil des IIS, als des Exchange Servers.
Die Oberfläche, die dem Benutzer auf dem Client präsentiert wird (siehe Abbildung 32), weist
große Ähnlichkeit mit der Vollversion von Outlook auf. Tatsächlich wird neben der Mailfunktionalität auch ein Teil von Outlooks Workgroup-Funktionen angeboten. Allerdings fehlen
sämtliche Möglichkeiten zur dokumentenbasierten Sicherheit wie Verschlüsselung oder digitale Signatur. Zur Absicherung der Kommunikation zwischen Clients mit Webbrowsern und
dem OWA muss daher auf die in Abschnitt [5.3.1] besprochenen Möglichkeiten des IIS
zurückgegriffen werden. Verbindungen lassen sich so per SSL verschlüsseln und der Zugriff
mittels Authentifikation durch X.509 Client-Zertifikate auf autorisierte Benutzer beschränken.
85
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
5.3.3
OpenLDAP 2.0
OpenLDAP 2.0 von der OpenLDAP Foundation5 ist ein freier LDAP-Verzeichnisserver für
UNIX-Plattformen (wie beispielsweise Linux), der das Lightweight Directory Access Protocol
in den Versionen 2 und 3 unterstützt. OpenLDAP 2.0 ist ausschließlich ein Verzeichnisserver,
Funktionen für den Betrieb als Gateway zu einem X.500 Verzeichnis werden nicht bereitgestellt.
Die in Abschnitt [3.8.2.4] beschriebenen Sicherheitsmodelle keine Authentifizierung, einfache
Authentifizierung und SASL werden unterstützt. Um über SASL Verbindungen mittels TLS
oder SSL abzusichern, muss allerdings zusätzlich zu OpenLDAP die Software OpenSSL
installiert werden. Eine Zugriffskontrolle erlaubt es allen Benutzern Lese- sowie Schreibrechte
zuzuweisen oder den Zugriff auf authentifizierte Benutzer sowie Benutzer, die selbst im Verzeichnis eingetragen sind, zu beschränken. Dies ermöglicht es beispielsweise, das Recht auf
schreibende Zugriffe in wählbare Bereiche des Verzeichnisses ausschließlich LDAP-Administratoren zu gewähren, während anonyme Benutzer lediglich Leserechte erhalten.
In der Testumgebung wurde OpenLDAP entsprechend seiner Linux-Verfügbarkeit auf einem
Rechner mit S.u.S.E. Linux 7.2 Professional Betriebssystem auf X86-Basis in der von S.u.S.E.
mitgelieferten Version 2.0.11 installiert. Der Aufbau eines Verzeichnisses in Vorbereitung für
die Aufnahme von Benutzerzertifikaten und Sperrlisten lief erfolgreich, wurde allerdings mangels Unterstützung seitens FlexiTrust 2.0 ausschließlich mit LDAP-Clientprogrammen wie
dem unten beschriebenen LDAP Browser\Editor, dem Netscape Communicator und weiteren
von S.u.S.E mitgelieferten Tools6 funktional getestet.
5.3.4
Microsoft Windows 2000 Server als VPN-Gateway
Das Betriebssystem Windows 2000 Server von Microsoft unterstützt mit dem Layer-2-Tunneling-Protokoll (L2TP) den IPSec Standard zum sicheren Verbinden von Systemen (i. d. R. Clients auf Windows 2000 Basis) über VPNs. Als Authentifizierungsmechanismus können drei
unterschiedliche Methoden eingesetzt werden. Neben Kerberos V5 oder vordefinierten,
gemeinsamen, geheimen Schlüsseln sind auch X.509 Zertifikate möglich. Kerberos als
Authentifizierungsmechanismus verwendet man am besten ausschließlich innerhalb geschlossener Windows-2000-Infrastrukturen, da dann keine weitere Konfiguration des Protokolls auf
Clientseite mehr erfolgen muss (zentralisierte Administration). Im heterogenen Systemumfeld
oder wenn Zugriffe von außerhalb einer Windows-2000-Domäne (beispielsweise über das
Internet) erfolgen sollen, verwendet man besser Zertifikate nach X.509 zur Authentifikation.
Zum Aufbau einer IPSec Verbindung verwendet Windows 2000 (in der Server- oder Professional-Version) den Internet Key Exchange (kurz IKE, als Implementierung von ISAKMP/Oakley, siehe Abschnitt [3.7.3.2]).
Über IPSec-Regeln lässt sich das Kommunikationsverhalten auf Benutzer- oder Rechner- (Client-) Basis, für definierte Anwendungssituationen festlegen. Die Konfiguration dieser Regeln
erfolgt bei Windows 2000 über Richtlinien, die im Active Directory abgelegt werden. Für
5. bis 1996: University of Michigan
6. Dazu zählen: Web500gw (ein Gateway das Webbrowsern den direkten Zugriff auf das LDAP-Verzeichnis ermöglicht), kldap sowie QG (KDE sowie Gnome LDAP-Clients). Sämtliche genannten Programme
sind Bestandteil der S.u.S.E Linux 7.2 Professional Distribution.
86
Kapitel 5: Untersuchung vorhandener Software auf Möglichkeiten zur Integration
Rechner, die nicht Mitglied einer Windows 2000 Domäne sind, werden die IPSec-Regeln in
der lokalen Registry des Clients gespeichert. Über derartige Richtlinien lassen sich Regeln für
unterschiedliche TCP-Ports oder Tunnels zu Servern definieren und je nach Anwendungsfall
miteinander kombinieren. Als Anwendungsfälle kommen die in Abschnitt [3.7.3.3] besprochenen Verbindungstypen infrage: Peer-to-Peer, Client/Server, Gateway-to-Gateway, Client-toGateway.
Beim Einsatz von X.509-Zertifikaten zur Authentifizierung lassen sich auf Clientseite neben
Rechnern auf Basis von Windows 2000 beispielsweise auch Linux-Clients verwenden. Bei
Clients, die nicht auf Windows 2000 basieren, muss allerdings auf die zentralisierte Verwaltung der Sicherheitsrichtlinien mithilfe des Active Directories verzichtet werden. Derartige
Clients verlangen nach einer individuellen Konfiguration.
Folgende Einstellungen sind für jede festzulegende Regel möglich:
‰
Paketfilter
Über IP-Paketfilter kann bestimmt werden, wann Pakete unverschlüsselt weitergeleitet, blockiert oder mithilfe eines wählbaren kryptographischen Verfahrens verschlüsselt werden. Konfigurierbar ist in diesem Zusammenhang, welche IPAdressen (oder IP-Subnetze) diese Filter umfassen und auf welche TCP-Protokolle
oder Portnummern die Verbindung beschränkt sein soll.
‰
Authentifizierungsmechanismus
Über die oben erwähnten Authentifizierungsmechanismen kann gezielt festgelegt
werden, nach welcher Methode die Authentifizierung erfolgen soll, damit Verbindungen nur mit autorisierten Benutzern (oder Rechnern) aufgebaut werden.
‰
Tunnel
Für jede einzelne Verbindung kann eingestellt werden, ob diese im Tunnel- oder
Transportmodus erfolgen soll.
‰
Verbindungstyp
Der Verbindungstyp ermöglicht unterschiedliche Konfigurationen für LAN- oder
DFÜ-Verbindungen.
Für Rechner innerhalb einer Windows 2000 Domäne sind bereits drei (kerberosbasierende)
Richtlinien vorkonfiguriert, die allerdings standardmäßig nicht aktiv sind und entsprechend
den eigenen Bedürfnissen angepasst werden können (siehe Abbildung 33):
‰
Client (nur Antwort)
Diese Clientregel ermöglicht eine Kommunikation im Klartext (unverschlüsselt),
falls die Gegenstelle keine Sicherheit anfordert.
‰
Server (Sicherheit anfordern)
Eine Serverregel, die versucht eine sichere Kommunikation zum Client aufzubauen. Falls dieser IPSec nicht unterstützt, werden allerdings auch ungesicherte
Verbindungen zugelassen.
‰
Sicherer Server (Sicherheit erforderlich)
Diese Serverregel besteht darauf, ausschließlich sichere Sitzungen zur Kommuni-
87
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
kation mit Clients zu verwenden. Ungesicherte Kommunikation mit nicht vertrauenswürdigen Clients wird abgewiesen. Jeder Client, der eine Verbindung zu solch
einem Server herstellen möchte, muss daher IPSec unterstützen.
Abbildung 33 Vordefinierte IPSec Richtlinien von Windows 2000
Der in Kapitel [4.2.1] geforderte sichere Intranetzugang für mobile Mitarbeiter der DiBa
umfasst neben der Authentizität von Mitarbeitern, die Vertraulichkeit der übertragenen Informationen sowie notwendige Zugriffsbeschränkungen für bestimmte Benutzergruppen nach
einer erfolgreichen Authentifizierung. Es bietet sich an, das hierfür notwendige Regelwerk auf
Basis der vordefinierten „Sicherer Server“ Regel zu entwerfen. Die beiden erstgenannten
Regeln sind hierfür offensichtlich ungeeignet, da sie u. U. auch ungesicherte Verbindungen
von nicht authentifizierten Personen zulassen würden.
5.4
Client Software
Die im vorherigen Abschnitt genannte Software für Serverdienste verlangt auf Benutzerseite
nach entsprechender Client Software. Neben den bekannten Webbrowsern von Microsoft
(Internet Explorer) und Netscape (Communicator) werden Clientprogramme für den Kommunikationsbereich (Microsoft Outlook) sowie LDAP vorgestellt. Eine Beschreibung des Windows 2000 VPN Clients von Microsoft entfällt an dieser Stelle, da diese in der in [5.3.4]
genannten Beschreibung des VPN-Gateways enthalten ist.
5.4.1
Microsoft Internet Explorer 5.x
Der Internet Explorer (IE) unterstützt in den Versionen 5.x und 6.0 die Verschlüsselung von
Webseiten bei der Übertragung mittels SSLv2, SSLv3 sowie TLS. Die Authentifikation gegenüber Servern zu Beginn einer SSL-Kommunikation erfolgt auf Wunsch mit X.509v3-ClientZertifikaten. Das im IE-Paket enthaltene Emailprogramm Outlook Express wird an dieser
Stelle nicht näher betrachtet, da für die Nachrichtenkommunikation bei der DiBa das ebenfalls
von Microsoft stammende, separat erhältliche Programm Outlook 2000 vorgezogen wird.
Die folgenden Angaben beziehen sich hauptsächlich auf die Version 5.x unter den Betriebssystemen Windows NT 4.0 SP6a sowie Windows 2000 SP2. Zu berücksichtigen ist, dass sich das
Verhalten des Browsers unter Windows NT abhängig vom installierten Servicepack (SP)
ändern kann. Eine starke Verschlüsselung für den deutschen Markt (d. h. 128 Bit symmetrisch
sowie 1024 Bit asymmetrisch) wird unter NT beispielsweise erst ab Servicepack 6a möglich.
Unter beiden Systemen (NT und 2000) ist darauf zu achten, dass der IE den High Encryption
88
Kapitel 5: Untersuchung vorhandener Software auf Möglichkeiten zur Integration
Pack von Microsoft enthält. Dieser muss notfalls separat nachinstalliert werden, sonst kann
eine SSL-Verbindung nur mit 40/56 Bit Verschlüsselung abgesichert werden. Leider ist das
Verhalten des IE in einzelnen Fällen abhängig davon, ob er unter Windows NT oder Windows
2000 als Hostumgebung läuft. Dazu aber später mehr.
Zertifikate
Zertifikate können entweder direkt im IE verwaltet werden7 oder über ein Snap-In der Microsoft Management Console (kurz: MMC, siehe Abbildung 34) in Windows 2000. Beide Möglichkeiten unterscheiden zwischen eigenen Benutzerzertifikaten (eigene Zertifikate),
Zertifikaten anderer Benutzer (andere Personen), CA-Zertifikaten (Zwischenzertifizierungsstellen) sowie Root-CA-Zertifikaten (vertrauenswürdige Stammzertifizierungsstellen).
Abbildung 34 Snap-In der MMC für die Zertifikats- und CRL-Verwaltung
Der Zugriff auf die Zertifikatsverwaltung über das Snap-In der MMC bietet mehr Möglichkeiten, als ein Zugriff über den IE. Neben personengebundenen Zertifikaten (Zertifikate - Aktueller Benutzer), die nur verfügbar sind, wenn der entsprechende Benutzer lokal am Rechner
angemeldet ist, kennt die MMC auch rechnergebundene Zertifikate (Zertifikate (Lokaler Computer)), wie sie beispielsweise für SSL- oder IPSec-Server benötigt werden. Diese Unterscheidung bietet folgende Möglichkeiten. Zum einen kann jeder Benutzer selbst entscheiden,
welchen CAs er Vertrauen schenkt und welchen nicht. Zum anderen muss ein Server auch
Zugriff auf seine Zertifikatseinstellungen haben, wenn kein Benutzer (wie beispielsweise der
Administrator) angemeldet ist.
7. Erreichbar über den Menüpunkt: Extras / Internetoptionen... / Inhalt / Zertifikate.
89
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
Benutzerzertifikate werden im Format PKCS#12 zusammen mit dem privaten Schlüssel
importiert und können auf diesem Wege auch wieder für eine anderweitige Verwendung exportiert werden. Zusammen mit dem eigentlichen Benutzerzertifikat besteht die Möglichkeit über
PKCS#12-Dateien auch gleich Zertifikate der ausstellenden CAs zu importieren. CA-Zertifikate sowie Zertifikate anderer Benutzer können alternativ auch einzeln in den IE eingebracht
werden, in dem sie entweder über den Assistenten der Zertifikatsverwaltung manuell geladen
werden, oder ein Webserver das entsprechende Zertifikat im binär codierten DER-Format mithilfe des MIME-Types application/x-509-ca-cert zum Download anbietet.
Der Assistent für die Zertifikatsverwaltung ermöglicht über ein Kontextmenü im Windows
Explorer (Zertifikat installieren) den Import von Zertifikaten in den Formaten PKCS#12
(*.p12), PKCS#7 (*.p7b) sowie DER-codiert (*.cer; Base-64 oder Binary). Beim Import
besteht die Möglichkeit, die Zertifikate als personen- oder rechnergebunden einzuordnen. Über
das erwähnte MMC-Snap-In lassen sich die Zertifikate nachträglich noch in die jeweilige
andere Kategorie einordnen.
Sowohl die Zertifikatsverwaltung vom IE als auch das Snap-In der MMC erlauben es, installierte Zertifikate anzuzeigen (Abbildung 35), zu exportieren sowie deren Verwendungszweck
nachträglich zu modifizieren. CA-Zertifikate beispielsweise können für die Zertifizierung von
S/MIME oder SSL als vertrauenswürdig definiert oder die Beschränkungen von Benutzerzertifikaten einzeln (de-) aktiviert werden.
Abbildung 35 Informationen zu ausgewählten Zertifikaten: links allgemeine Beschreibung,
rechts Details zu den Erweiterungen
Neben dem Import von Zertifikaten verfügt der IE über eine Funktion zur Schlüsselerzeugung
mit anschließender Online-Zertifizierung. In diesem Fall erzeugt der Browser das asymmetrische Schlüsselpaar selbst.
90
Kapitel 5: Untersuchung vorhandener Software auf Möglichkeiten zur Integration
Widerrufslisten
Widerrufslisten (CRLs) können, ähnlich wie Zertifikate, über ein Kontextmenü im Windows
Explorer (Zertifikatsperrliste installieren) oder über eine im Zertifikat angegebene URL8
bezogen werden. Eine Zertifikatsprüfung erfolgt erst, wenn im Menü Extras / Internetoptionen... / Erweitert die Felder Auf zurückgezogene Serverzertifikate überprüfen, bzw. Zertifikate
von Herausgebern prüfen angewählt sind.
Allerdings konnte der IE in den Versionen 5.0, 5.5 und 6.0 (mit den jeweils aktuellsten Servicepacks und Patches) nicht dazu bewegt werden unter Windows NT oder Windows 2000
widerrufene Zertifikate als ungültig zu erkennen, wenn entsprechende CRLs über das Kontextmenü des Windows Explorer eingebracht wurden. Das Format der CRLs (X.509v1) war bei
diesen Tests das Gleiche, wie das in den Abschnitten [5.4.2] für den Netscape Communicator
und [5.4.3] für Outlook 2000 verwendete. Hinzu kommt, dass Outlook 2000 wie der IE die
Zertifikatsverwaltung von Windows verwendet und somit auf dieselbe installierte CRL zugreift. Dennoch erkannte der IE zurückgerufene Zertifikate, im Gegensatz zum Netscape Communicator und Outlook 2000, weiterhin als gültig.
An dieser Stelle unterscheidet sich das Verhalten des IE unter Windows 2000 von dem unter
Windows NT. Während unter Windows 2000 keine Auswirkungen beim (de-) aktivieren der
Felder Auf zurückgezogene Serverzertifikate überprüfen, bzw. Zertifikate von Herausgebern
prüfen feststellbar sind und alle Zertifikate weiterhin gültig bleiben, sieht der IE unter Windows NT sämtliche Zertifikate, von denen keine Widerrufslisten im System eingespielt sind,
als ungültig an. Selbst die im Browser mitgelieferten CA-Zertifikate von Standard-CAs werden als unüberprüfbar moniert und damit vom IE als ungültig bezeichnet, sobald diese Felder
unter Windows NT aktiviert sind.
5.4.2
Netscape Communicator 4.7x
Der im Netscape Communicator enthaltene Webbrowser Navigator unterstützt in der frei verfügbaren Version 4.77 die Verschlüsselung von Webseiten bei der Übertragung mittels SSLv2
und SSLv3, wobei als symmetrische Verschlüsselungsalgorithmen beispielsweise RC4 mit 128
Bit oder Triple-DES mit 168 Bit Schlüssellänge verwendet werden können. Die Authentifikation gegenüber Servern zu Beginn einer SSL-Kommunikation erfolgt auf Wunsch mit
X.509v3-Client-Zertifikaten. Der im Netscape Communicator enthaltene Emailclient Messenger unterstützt S/MIME sowohl mit RC2 und 128 Bit als auch Triple-DES mit 168 Bit.
Der Netscape Communicator verwendet - wohl auf Grund seiner Verfügbarkeit für unterschiedliche Betriebssystemplattformen - nicht die Zertifikatsverwaltung von Windows. Deshalb sind schon in Windows importierte Zertifikate und CRLs nicht automatisch in Netscape
verfügbar.
Netscape bietet daher eine eigene Zertifikatsverwaltung (siehe Abbildung 36), die über das
Menü Communicator / Tools / Security Info oder über das Schlosssymbol in der Symbolleiste
erreichbar ist. Diese unterscheidet bei Zertifikaten zwischen eigenen Benutzerzertifikaten
(yours), Zertifikaten anderer Benutzer (People), Servern (Web Sites), CA-Zertifikaten (signers)
und Object-Signing-Zertifikaten (Java/JavaScript).
8. Mittels der in Abschnitt [3.3.1.2] besprochenen X.509-Standarderweiterung crl distribution points.
91
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
Abbildung 36 Die Zertifikatsverwaltung vom Netscape Communicator
Zertifikate allgemein
Benutzerzertifikate werden im Format PKCS#12 (*.p12) zusammen mit dem privaten Schlüssel importiert und können auf diesem Wege auch wieder für eine anderweitige Verwendung
exportiert werden. Zusammen mit dem eigentlichen Benutzerzertifikat besteht die Möglichkeit
über PKCS#12-Dateien auch gleich Zertifikate der ausstellenden CAs zu importieren. CA-Zertifikate können alternativ auch einzeln in den Netscape Communicator eingebracht werden, in
dem sie entweder über das Menü „File/Open Page“ manuell geladen werden, oder ein Webserver das entsprechende Zertifikat im binär codierten DER-Format mithilfe des MIME-Types
application/x-509-ca-cert zum Download anbietet. SSL-Server- und Object-Signing-Zertifikate werden automatisch von kontaktierten Servern zu Beginn einer Kommunikation übertragen und über einen Dialog mit dem Benutzer in die Zertifikatsverwaltung installiert.
Die Zertifikatsverwaltung vom Netscape Communicator erlaubt es, CA-Zertifikate nachträglich für die Zertifizierung von S/MIME, SSL oder Object Signing als vertrauenswürdig zu
erklären. Standardmäßig ist allerdings keiner der drei Verwendungszwecke nach dem Import
von CA-Zertifikaten gesetzt. Damit eine Überprüfung von Benutzer-Zertifikaten überhaupt
erfolgreich verlaufen kann, muss nach dem Import somit erst der entsprechende Verwendungszweck aktiviert werden. Das kann zu Problemen führen, denn mit dieser Methode können für
CA-Zertifikate auch Zwecke akzeptiert werden, den die Erweiterungen im CA-Zertifikat nicht
unterstützen. Nach [DFN00-1] wird beispielsweise eine signierte Email vom Empfänger auf
Grund eines ungültigen Zertifikates zurückgewiesen, wenn diese ein S/MIME-Zertifikat zur
Grundlage hat, dessen CA für S/MIME akzeptiert wurde, obwohl das CA-Zertifikat ursprünglich nicht für diesen Zweck vorgesehen war.
Neben dem Import von Benutzerzertifikaten verfügt der Netscape Communicator über eine
Funktion zur Schlüsselerzeugung mit anschließender Online-Zertifizierung. In diesem Fall
erzeugt der Browser das asymmetrische Schlüsselpaar selbst.
92
Kapitel 5: Untersuchung vorhandener Software auf Möglichkeiten zur Integration
Benutzerzertifikate für SSL
Für SSL-Clientzertifikate sind prinzipiell sämtliche der unter yours vorhandenen Zertifikate
einsetzbar, solange diese gültig sind und die in Abschnitt [3.7.1.3] beschriebenen notwendigen
Zertifikatserweiterungen gesetzt haben. Natürlich muss die herausgebende CA neben dem Client auch dem zu kontaktierenden Server als vertrauenswürdige CA für SSL-Clientzertifikate
bekannt sein, damit dieser das Clientzertifikat überprüfen kann.
Liegen mehrere Zertifikate vor, die alle genannten Bedingungen erfüllen, bietet Netscape ein
kleines Auswahlfenster an und überlässt die Auswahl des zu verwendenden Zertifikates dem
Anwender.
Benutzerzertifikate für S/MIME
Bei Zertifikaten für S/MIME gilt Ähnliches wie für SSL-Clientzertifikate. Prinzipiell sind
sämtliche der unter yours vorhandenen Zertifikate einsetzbar, solange sie gültig sind und die in
Abschnitt [3.7.2.1] beschriebenen notwendigen Zertifikatserweiterungen gesetzt haben. Allerdings wählt der Messenger zu verwendende Zertifikate an Hand der darin enthaltenen EmailAdresse aus. Diese muss mit der aktuell im Programm eingestellten Email-Adresse übereinstimmen. Von Zertifikaten, die alle genannten Bedingungen erfüllen, können maximal zwei für
S/MIME eingesetzt werden, da der Messenger bei Bedarf zwischen Signatur- und Verschlüsselungs-Zertifikaten unterscheidet.
Widerrufslisten
Netscape unterstützt ausschließlich binär codierte CRLs nach X.509v1 im DER-Format und
keine X.509v2 CRLs. Diese lassen sich weder offline in den Browser importieren, noch ist
anfangs überhaupt etwas zur Verwaltung von Widerrufslisten in der Zertifikatsverwaltung
sichtbar. CRLs müssen daher über einen Webserver per HTTP oder HTTPS gesendet werden.
Nachdem die erste CRL über diesen Weg in Netscape registriert ist, erscheint in der Zertifikatsverwaltung unter signers eine neue Schaltfläche, über die vorhandene CRLs angezeigt
oder erneuert werden können. Anhang [B.3] gibt eine detaillierte Anleitung zur Installation
von Widerrufslisten in den Netscape Communicator.
5.4.3
Microsoft Outlook 2000
Der Personal Information Manager Microsoft Outlook 2000 ist ein Client für den Exchange
Server von Microsoft. Die darin enthaltene Mailfunktionalität unterstützt die Verschlüsselung
per S/MIME sowohl mit RC2 als auch DES sowie Triple-DES. Für digitale Signaturen stehen
MD5 und SHA-1 als Hashalgorithmen zur Verfügung. Damit diese kryptographischen Algorithmen mit starker Kryptographie an Stelle der früher üblichen 40/56 Bit Varianten arbeiten,
ist für Outlook ein Update auf die High-Encryption (128 Bit) Version notwendig.
Zertifikate
Outlook 2000 verwendet ebenso wie der bereits besprochene Internet Explorer die Zertifikatsverwaltung von Windows.
Unterstützt werden Zertifikate nach X.509v3, wobei Outlook - ebenso wie der Netscape Mes-
93
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
senger 7.x - auf Wunsch zwischen Signatur- und Verschlüsselungs-Zertifikaten unterscheidet.
Weitere Parallelen zeigen sich auch bei der Akzeptanz von Benutzerzertifikaten. Auch Outlook
verwendet für diesen Einsatz ausschließlich Zertifikate, die der im Programm eingestellten
Email-Adresse entsprechen. Zertifikate anderer Benutzer werden direkt den Kontakten (so die
Outlook-eigene Bezeichnung für Empfänger) zugeordnet, wobei ebenfalls die darin enthaltene
Email-Adresse Beachtung findet.
Die automatische Verbreitung des eigenen Benutzerzertifikates unterstützt Outlook durch den
optionalen Versand des Zertifikates zusammen mit jeder signierten Email. Auf diese Weise
können Empfänger ohne große Umstände die Korrektheit von Signaturen überprüfen.
Widerrufslisten
Outlook unterstützt auf Grund der mit dem IE gemeinsam verwendeten Zertifikatsverwaltung
dieselben Widerrufslistenformate wie der IE. Mehr noch, im IE installierte CRLs müssen nicht
mehr in Outlook importiert oder registriert werden, wenn dies schon für den IE geschehen ist.
Verfügbare Widerrufsinformationen werden automatisch berücksichtigt. Zertifikate, welche
von der herausgebenden CA widerrufen wurden, werden schon beim Importversuch von Outlook mit einer Fehlermeldung zurückgewiesen (siehe Abbildung 37 rechts).
Abbildung 37 Akzeptanz widerrufener Zertifikate: links Internet Explorer 5, rechts Outlook 2000
Digitale Signaturen
Vorausgesetzt, das Zertifikat der ausstellenden CA liegt dem Empfänger vor und das Benutzerzertifikat des Senders wurde wie oben beschrieben mit der Email zusammen verschickt,
wird die Signatur eingehender Emails von Outlook noch vor dem Anzeigen der Email automatisch geprüft. Abbildung 38 zeigt die Informationen, die Outlook anschließend über die Korrektheit der Signatur bereitstellt.
94
Kapitel 5: Untersuchung vorhandener Software auf Möglichkeiten zur Integration
Abbildung 38 Outlook liefert Informationen über die Gültigkeit digitaler Signaturen
Verschlüsselung
Eine Besonderheit tritt beim Versand verschlüsselter Emails auf. Obwohl zum Verschlüsseln
theoretisch lediglich das Verschlüsselungs-Zertifikat des Empfängers notwendig sein sollte,
verweigert Outlook kommentarlos die Verschlüsselung von Emails, sobald der Sender kein
eigenes Verschlüsselungs-Zertifikat besitzt. Das Einstellungsfeld für Verschlüsselung (und
digitale Signatur) wird in diesem Fall überhaupt nicht erst frei geschaltet. Dieses sonderbare
Verhalten begründet sich vermutlich aus der Tatsache, dass verschlüsselte Emails nach dem
Versand zusätzlich als Kopie im Ordner gesendete Objekte verschlüsselt abgespeichert werden
sollen. Diese Kopie muss aber mit dem Verschlüsselungs-Schlüssel des Senders verschlüsselt
werden, wenn dieser sie jemals wieder lesen möchte.
Probleme
Beim Interoperabilitätstest zeigt Outlook deutliche Schwächen im Bereich digitaler Signaturen. Vom Netscape Messenger oder Outlook Express digital signierte Mails konnten nur dann
gelesen werden, wenn die eigentliche Nachricht zusätzlich als Klartext beigefügt wurde. Das
derartige Nachrichten mit einer digitalen Signatur versehen sind, ist beim Empfang durch Outlook nicht erkennbar. Vermutlich wird die von fremden Programmen erzeugte digitale Signatur
seitens Outlook auch nicht auf Gültigkeit überprüft. Von einem Outlook Client erzeugte digitale Signaturen werden dagegen in anderen Outlook Clients korrekt als solche erkannt und
behandelt.
5.4.4
LDAP Browser\Editor 2.8.2
Der LDAP Browser\Editor 2.8.2 ist ein Java-Programm9, mit dem X.509 Zertifikate in LDAPVerzeichnisdiensten gesucht und für die weitere Verwendung in einer Anwendung gespeichert
werden können. Unterstützt werden hierzu LDAPv2 und v3 Server sowie anonyme oder
9. Läuft beispielsweise unter Windows, Linux oder Mac OS X und benötigt dazu lediglich ein installiertes
Java 1.2.2.
95
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
authentifizierte als auch verschlüsselte Verbindungen über SSL.
Zur Suche nach Verzeichniseinträgen können Filter eingesetzt werden, wie sie in [RFC1960]
und [RFC2254] beschrieben sind. Für das Beispiel aus Abbildung 39 wurde nach Einträgen
gesucht, welche den String Musterfrau als Bestandteil des Attributs CommonName (cn) enthalten.
Abbildung 39 Suche nach Einträgen im LDAP-Baum
Als Suchergebnis erhält man standardmäßig nur den Distinguished Name (DN) gefundener
Einträge angezeigt. Über ein Kontextmenü lassen sich aber ausgewählte Einträge mit ihren
Attributen anzeigen (siehe Abbildung 40) und evtl. darin enthaltene Zertifikate lokal speichern.
Der LDAP Browser\Editor eignet sich natürlich nicht nur zum Suchen von Zertifikaten. Es
können auch neue Verzeichniseinträge angelegt sowie eigene Zertifikate im PKCS #12 Format
eingespielt werden. Eine Möglichkeit zum Importieren komplexer Verzeichnisstrukturen in
bestehende Verzeichnisbäume ermöglicht die Funktion zum LDIF-Import. Somit erfüllt der
LDAP Browser\Editor auch administrative Anforderungen.
96
Kapitel 5: Untersuchung vorhandener Software auf Möglichkeiten zur Integration
Abbildung 40 Übernahme von Zertifikaten aus LDAP-Verzeichniseinträgen
5.5
Zusammenfassung
Die Erfahrungen aus dem Betrieb der Testumgebung haben gezeigt, dass es möglich ist,
zusammen mit FlexiTrust und einiger Standardsoftware wie Outlook und dem Netscape Communicator eine funktionierende Public Key Infrastruktur aufzubauen. Auch der Internet Explorer, der leichte Schwächen im Bereich der Widerrufslisten zeigt, scheint geeignet für den
Einsatz im Realbetrieb einer PKI.
Lediglich der Internet Information Server, den die DiBa momentan noch in der Version 4
betreibt, sollte mittelfristig durch einen Webserver ersetzt werden, der in der Lage ist, widerrufene Clientzertifikate als solche zu erkennen. Ob dessen Nachfolger (der IIS 5) Widerrufslisten
korrekt behandelt, sollte noch vor einem entsprechenden Update im Zuge der Migration auf
ein Windows 2000 Netzwerk im Jahr 2002 geprüft werden. Es empfiehlt sich, bei dieser Gelegenheit auch alternative Webserver, wie den Apache10, einer genaueren Betrachtung zu unterziehen.
Zu Beginn der Diplomarbeit war der Wunsch des Kunden nach einem virtuellen privaten Netzwerk gegenüber dem sicheren Nachrichtentransfer und dem Zugriff aufs DiBa-Intranet relativ
gering. Die Prioritäten bei der Erstellung des Sicherheitskonzeptes und der Auswahl der nötigen Software waren daher vorrangig auf die beiden letzt genannten Wünsche ausgerichtet. Im
Laufe der Diplomarbeit zeigte sich allerdings, dass es sinnvoll wäre mobilen Mitarbeitern den
Zugang zu allen Funktionen des DiBa-LANs zu verschaffen.
Der Aufbau eines VPN würde dies ermöglichen, allerdings konnte die IPSec-Funktionalität
von Windows 2000 bisher auf Grund fehlender IPSec-Zertifikate seitens FlexiTrust ausschließlich theoretisch betrachtet werden. Die Integration eines VPNs in die PKI der DiBa
10. Apache (von der Apache Software Foundation) hat schon in [DFN00-1] seine PKI-Tauglichkeit bewiesen. Hinzu kommt der bessere Ruf im Vergleich zum IIS, was Sicherheitslücken betrifft. Weitere Informationen zum Open Source Webserver Apache sind unter http://www.apache.org zu finden.
97
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
muss daher leider zurückgestellt werden. Solange bis FlexiTrust in der Lage ist entsprechende
Zertifikate auszustellen.
98
Kapitel 6
Umsetzung der Public Key Infrastruktur
In den vorangegangenen fünf Kapiteln wurde die Basis für den Aufbau einer Public Key Infrastruktur in der Allgemeinen Deutschen Direktbank AG geschaffen.
Nach einer Ermittlung des konkreten Bedarfs und der Aufstellung eines Sicherheitskonzeptes
in Kapitel [4] wurden in Kapitel [5] Softwareprodukte unterschiedlicher Hersteller auf ihre
Eignung hinsichtlich des Einsatzes in der PKI untersucht. Im nächsten Schritt werden die einzelnen Ergebnisse dieser Arbeit zusammengefasst und beschrieben, wie die konkrete Realisierung einer PKI in der DiBa aussehen sollte.
Neben einer Beschreibung der Zertifizierungshierarchie liefert dieses Kapitel außerdem konkrete Konfigurationsvorschläge zu den, für den Einsatz ausgewählten, Softwareprodukten.
Diese sind neben der Einhaltung des gewünschten Sicherheitsstandards auch auf maximale
Interoperabilität und Benutzbarkeit ausgerichtet.
Der letzte Teil dieses Kapitels beschreibt den Ablauf der Benutzerzertifizierung, wie beispielsweise notwendige organisatorische Regelungen und Infrastrukturmaßnahmen.
6.1
Zertifizierungshierarchie
Eine zahlmäßig begrenzte Nutzerbasis sowie die Tatsache, dass sämtliche Mitarbeiter nach
denselben, einheitlichen Regeln zertifiziert werden, führte zu der Entscheidung eine flache (d.
h. einstufige) Zertifizierungshierarchie aufzubauen. Zudem wurde das flache Modell bereits in
der Testumgebung erfolgreich eingesetzt.
Abbildung 41 zeigt die Zertifizierungshierarchie der DiBa-CA. Diese besteht aus vier verschiedenen Einheiten, die wie folgt auf die Niederlassungen Frankfurt und Hannover verteilt
sind:
‰
DiBa-CA
Eine Zertifizierungsinstanz in Frankfurt, zuständig für beide Niederlassungen.
99
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
‰
DiBa-RA
Der DiBa-CA sind zwei lokale Registrierungsinstanzen zugeordnet, die den direkten organisatorischen Kontakt zu den Mitarbeitern beider Niederlassungen herstellen.
‰
WWW
Ein oder mehrere Intranet-Server in Frankfurt mit SSL-Serverzertifikaten.
‰
Mitarbeiter
Ausgewählte Mitarbeiter in den Niederlassungen Frankfurt und Hannover werden
entsprechend ihres Firmenstandortes einer RA zugeordnet und erhalten von der
gemeinsamen CA Client-Zertifikate für SSL und S/MIME (sowie später auch
IPSec).
Frankfurt
Hannover
DiBa-CA
DiBa-CA
DiBa-RA
DiBa-RA
Mitarbeiter
DiBa-RA
DiBa-RA
WWW
WWW
Mitarbeiter
Abbildung 41 Die flache Zertifizierungshierarchie der DiBa-CA
Aus den in Kapitel [5.1] genannten Gründen wird auf die Übernahme des VPN-Gateways in
die Zertifizierungshierarchie vorerst verzichtet. Da der Einsatz eines virtuellen privaten Netzwerkes aber für die Zukunft angestrebt wird, werden Zertifikate für VPN-Gateways und -Clients in den Zertifizierungsrichtlinien in Kapitel [A] unabhängig vom derzeitigen Einsatz
betrachtet.
6.2
Benutzergruppen
Eine Einteilung von Mitarbeitern in Benutzergruppen mit unterschiedlichen Rechten erfolgt
durch eine bei der DiBa vorhandene globale Benutzerdatenbank. Die Gruppenzugehörigkeit,
wie sie in Kapitel [4.1.2] besprochen wurde, wird daher nicht direkt die Zertifikate eingetragen.
Zertifikate werden personalisiert (d. h. personenbezogen) ausgestellt. Die Einstellung, zu welcher Rechtegruppe ein Benutzerzertifikat gehört, erfolgt über eine zentrale Administration
unter Zuhilfenahme der Benutzerverwaltungs-Datenbank (siehe [6.3.2.3]). Dies ermöglicht es,
einmal ausgestellte Zertifikate weiterzuverwenden, auch wenn Mitarbeiter auf Grund eines
Tätigkeitswechsels innerhalb der Firma veränderte Zugriffsrechte erhalten. Dies stellt einen
enormen Vorteil dar, denn würde die Gruppenzugehörigkeit in die Zertifikate aufgenommen,
100
Kapitel 6: Umsetzung der Public Key Infrastruktur
müssten diese in solch einem Fall zurückgerufen und entsprechend Neue dafür ausgestellt werden.
6.3
Konfiguration der Hard- und Software
In Kapitel 5 wurden Softwareprodukte unterschiedlicher Hersteller für den client- bzw. serverseitigen Einsatz in einer Public Key Infrastruktur untersucht. Die Produkte, die sich - bezogen
auf ihre (kryptographische) Leistungsfähigkeit, Handhabbarkeit und Interoperabilität - am
besten in das aufgestellte Sicherheitskonzept integrieren ließen, sollen nun auch im Realbetrieb eingesetzt werden. Im Einzelnen handelt es sich um:
‰
Software für die Zertifizierungsstelle:
FlexSecure FlexiTrust 2.0 unter Windows 2000 Professional. Siehe Abschnitt
[6.3.1].
‰
Software für Server (WWW):
Für die Bereitstellung der Intranet-Dienste wird der Microsoft Internet Information
Server 4.0 unter Windows NT 4.0 Server beibehalten und entsprechend auf die
Verwendung von SSL sowie der Bindung von Zertifikaten an Benutzer (-Gruppen)
konfiguriert. Siehe Abschnitt [6.3.2].
‰
Software für Server (Email):
Die derzeit eingesetzte Mailserversoftware Microsoft Exchange Server 5.5 unter
Windows NT 4.0 Server wird beibehalten. Es sind keine besonderen Einstellungen
für den Einsatz von Verschlüsselung oder digitaler Signatur erforderlich, da diese
komplett in den Clientprogrammen vorgenommen werden. Wie in Abschnitt
[5.3.2] festgestellt, sind auch für den Betrieb der Exchange Server -Komponente
Outlook Web Access keine Änderungen gegenüber den bestehenden Einstellungen
notwendig.
‰
Software für Server (VPN-Gateway):
Für den Betrieb des VPN-Gateways sollen in Zukunft die Möglichkeiten des Windows 2000 Server-Betriebssystems von Microsoft genutzt werden. Allerdings sind
von FlexiTrust 2.0 ausgestellte IPSec-Zertifikate derzeit noch nicht mit Windows
2000 kompatibel. Von einer Verwendung im Realbetrieb muss daher vorerst abgesehen werden.
Für sicherheitstechnische Überlegungen, welche die Konfiguration des VPN-Gateways - wie beispielsweise die Platzierung hinter, direkt auf, oder neben der Firewallkonstruktion - betreffen, lohnt es sich, einen Blick in [JuSch01-3] sowie
[MS01-2] zu werfen.
‰
Software für Clients (WWW):
Microsoft Internet Explorer 5.5 unter Windows 2000 Professional. Siehe Abschnitt
[6.3.3].
‰
Software für Clients (Email):
Microsoft Outlook 2000 unter Windows 2000 Professional. Siehe Abschnitt
[6.3.4].
101
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
‰
Soft- / Hardware für die Firewalls
Eine detaillierte Darstellung der Änderung an der Firewall-Konfiguration ist nicht
Gegenstand dieser Arbeit.
Abbildung 42 zeigt die Anordnung der ausgewählten Produkte im Netzwerk der Allgemeinen
Deutschen Direktbank AG.
Mobiler Mitarbeiter
Internet
Firewalls und
Virenscanner
VPN-Gateway
(in Zukunft geplant)
<Frankfurt
(Outlook Web Access)
Mail-Server
WWW-Server
Hannover>
(Zertifikate + CRLs)
DiBa-RA + DiBa-IS
LDAP-Server
DiBa-RA
(in Zukunft geplant)
DiBa-CA
Abbildung 42 Anordnung der Hard- und Software im Realbetrieb der Public Key Infrastruktur
Einzelheiten zum Einsatz, sowie der Konfiguration der Produkte, liefern die folgenden
Abschnitte.
6.3.1
FlexSecure FlexiTrust 2.0
Die Installation von FlexiTrust erfolgt auf zwei Windows 2000-basierenden Rechnern. Auf
dem ersten Rechner befindet sich aus Sicherheitsgründen neben der eigentlichen CA nur das
notwendige Java 1.2.2. Die Installation der weiteren Einheiten wie RA und IS sowie einer
SQL-Datenbank1 erfolgen auf dem zweiten Rechner. Die Trennung dieser Dienste entspricht
den in der Policy (Abschnitt [A.3.1]) gestellten Sicherheitsanforderungen und ermöglicht es,
für die DiBa-CA einen Rechner ohne jeglichen Netzanschluss einzusetzen. Der zwischen CA
und RA/IS notwendige Datenaustausch wird von Mitarbeitern der DiBa-CA per Wechselme1. Empfohlen wird mySQL in der Version 3.23.39
102
Kapitel 6: Umsetzung der Public Key Infrastruktur
dium vorgenommen.
Wurden in der Testumgebung noch universale Schlüsselpaare mit der gleichzeitigen Eigenschaft der Verschlüsselung und digitaler Signatur verwendet, werden aus Sicherheitsgründen
im Realbetrieb ausschließlich strikt getrennte Schlüsselpaare für Verschlüsselung und digitale
Signatur erzeugt (Policy, Abschnitt [A.4]). Diese Schlüssel dürfen nur für den jeweils für sie
vorgesehenen Einsatzzweck verwendet werden. Gute Gründe für den Einsatz zweier Schlüsselpaare bei unterschiedlichen Verwendungszwecken liefert [Entrust00-2].
Eine ausführliche Beschreibung des Ablaufs der Benutzerzertifizierung folgt in Abschnitt
[6.4].
6.3.2
Microsoft Internet Information Server 4.0
Der Internet Information Server 4.0 wird weiter wie bisher unter Windows NT 4.0 betrieben.
Allerdings ist es notwendig mindestens den NT Servicepack 6a sowie Internet Explorer 5.5
inkl. dem High Encryption Pack auf diesem System zu installieren, damit symmetrische Verschlüsselung mit 128 Bit und Asymmetrische mit 1024 Bit möglich wird.
Im Folgenden wird kurz beschrieben, welche Einstellungen am IIS vorgenommen werden
müssen, um die Voraussetzungen für den Einsatz in der Public Key Infrastruktur im Zusammenspiel mit FlexiTrust 2.0 zu erfüllen.
6.3.2.1 Erzeugen eines Serverzertifikates
Die Generierung des SSL-Serverschlüssels erfolgt durch den in den Server integrierten Schlüsselmanager.
Es wird empfohlen bei der Generierung des Schlüsselpaares für die Parameter Schlüsselname
und Allgemeiner Name den Domainnamen des Intranetservers zu verwenden. Um ausreichende Sicherheit zu gewährleisten, sollte die Bitlänge des Schlüssels mind. 1024 Bit betragen.
Die im Anschluss an die Schlüsselgenerierung erzeugte Zertifizierungsanforderung wird an die
DiBa-CA übergeben. Abschließend wird das von der DiBa-CA signierte Serverzertifikat in der
vorliegenden PEM-Version (*.pem.crt) in den IIS-Schlüsselmanager zu dem zugehörigen
Schlüssel installiert. Eine detaillierte Beschreibung des Ablaufes zeigt Anhang [B.1]:
6.3.2.2 Installation des Root-CA Zertifikates
Bei der Installation des DiBa-CA Zertifikates in die Zertifikatsverwaltung von Windows auf
dem IIS-Rechner genügt es nicht, die Voreinstellungen des Importassistenten zu übernehmen.
Damit der IIS 4 Clientzertifikate von eben dieser CA überprüfen kann, ist es notwendig, das
CA-Zertifikat als vertrauenswürdige Stammzertifizierungsstelle in den Speicher Lokaler Computer (an anderer Stelle auch Computerkonto genannt) zu installieren. Zertifikate, die stattdessen in den Speicher Eigenes Benutzerkonto (auch Registrierung genannt) installiert werden,
erlauben ausschließlich die SSL Serverauthentifizierung. Anhang [B.2] beschreibt diesen Vorgang Schritt für Schritt.
103
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
6.3.2.3 Serverkonfiguration für SSL
Nachdem die Voraussetzungen für den Einsatz von SSL geschaffen sind, kann die eigentliche
Konfiguration des IIS erfolgen. Webseiten, welche per SSL abgesichert werden sollen, sind
unbedingt so zukonfigurieren, dass Verbindungen von Clients, die keine starke Kryptographie
unterstützen, abgelehnt werden (128 Bit Verschlüsselung erforderlich).
Binden von Clientzertifikaten an Mitarbeiter
Um Zugriffe autorisierter Mitarbeiter von denen unautorisierter oder organisationsfremder Personen unterscheiden zu können, ist es erforderlich die SSL Clientauthentifizierung im IIS
explizit zu aktivieren (Clientzertifikate verlangen) und übergebene Zertifikate autorisierten
Mitarbeitern zuzuordnen (Client-Zertifikatszuordnungen aktivieren). Dabei besteht die Möglichkeit, Mitarbeiter in Gruppen mit unterschiedlichen Rechten einzuteilen. D. h. einzelnen
Mitarbeitern den Zugriff auf bestimmte Seiten zu erlauben, die anderen Mitarbeitern verwehrt
bleiben. Um den Server auf diese Art zu konfigurieren, müssen die Benutzerzertifikate von
autorisierten Mitarbeitern in den Server hinzugefügt und an die entsprechenden Windows NT
Domänenbenutzerkonten gebunden werden. Das beim eigentlichen Zugriff auf eine derart konfigurierte Seite übergebene Clientzertifikat wird nun automatisch vom IIS dem Domänenbenutzerkonto zugeordnet. Abhängig von den Rechten eines Domänenbenutzers erlaubt bzw.
verweigert der IIS anschließend den Zugriff auf die Seite.
Zugriff beschränken auf Clientzertifikate der DiBa-CA
Bestimmte Bereiche des Webservers sollen meist allen Mitarbeitern, die im Besitz eines DiBaCA Benutzerzertifikates sind, zugänglich sein. Um den Zugriff unautorisierter Personen (mit
Benutzerzertifikaten, die von anderen CAs ausgestellt wurden) zu unterbinden, können zwei
Regeln innerhalb der Clientzertifikatszuordnung erstellt werden:
‰
Regel 1:
Der Zertifikatsaussteller DiBa-CA wird auf Zertifikat annehmen zur Anmeldeauthentifizierung eingestellt. Damit werden alle gültigen, von der DiBa-CA ausgestellten, Benutzerzertifikate für den Zugriff auf diesen Bereich akzeptiert und
automatisch an ein frei wählbares Benutzerkonto gebunden.
‰
Regel 2:
Die nachfolgende Einstellung Alle vertrauten Zertifikataussteller den Zugriff verweigern unterbindet Zugriffe von Clients mit Benutzerzertifikaten anderer CAs.
Clients mit nicht-vertrauten bzw. unbekannten Zertifikatausstellern und Clients ohne Benutzerzertifikat wird automatisch der Zugriff verweigert, diesbezüglich ist keine besondere Einstellung notwendig. Diese Regeln lassen sich weiter verfeinern. Beispielsweise erlaubt die
Abfrage des im Zertifikat enthaltenen DN die Filterung nach Niederlassung oder Abteilung der
Mitarbeiter.
6.3.3
Microsoft Internet Explorer 5.5
Für den Betrieb des Internet Explorers in der Public Key Infrastruktur ist mindestens die Version 5.0 notwendig, empfohlen wird der Einsatz der Version 5.5 mit Servicepack 2 unter dem
104
Kapitel 6: Umsetzung der Public Key Infrastruktur
Betriebssystem Windows 2000 (ebenfalls mit Service Pack 2). Es ist darauf zu achten, dass die
verwendete IE Version den High Encryption Pack von Microsoft enthält. Dieser muss notfalls
separat nachinstalliert werden, sonst kann eine SSL-Verbindung nur mit 40/56 Bit Verschlüsselung abgesichert werden.
Damit der Internet Explorer ungültige Zertifikate nicht fälschlicherweise als gültig erkennt,
müssen gegebenenfalls noch ein paar Voreinstellungen angepasst werden. Es ist darauf zu achten, dass folgende Einstellungen aktiv sind:
‰
Auf zurückgezogene Serverzertifikate überprüfen
‰
Auf zurückgezogene Zertifikate von Herausgebern überprüfen
‰
Bei ungültigen Sitezertifikaten warnen
Das DiBa-CA Zertifikat sowie die Clientzertifikate der Mitarbeiter können anschließend
sowohl über den Internet Explorer selbst als auch über das Snap-In der MMC (wie in Abschnitt
[5.4.1] beschrieben) installiert werden.
6.3.4
Microsoft Outlook 2000
Für den Betrieb von Outlook 2000 in der Public Key Infrastruktur ist bei 40/56 Bit Systemen
das Outlook-Update auf die aktualisierte 128-Bit-Verschlüsselung notwendig, um starke Verschlüsselung auch innerhalb Outlooks zu ermöglichen.
Da Outlook ein Bestandteil von Microsofts Office 2000 ist, sollte die komplette Office Umgebung auf dem Stand von Service Release 1a sowie Service Pack 2 sein. Die angebotenen
Sicherheitsupdates, insbesondere jene zur Email-Sicherheit, sollten ebenfalls installiert werden.
Clientkonfiguration für S/MIME
Wurde bereits zuvor wie oben beschrieben der Internet Explorer installiert, sind das DiBa-CA
Zertifikat sowie die Clientzertifikate des Mitarbeiters automatisch für Outlook verfügbar. Nun
muss Outlook lediglich mitgeteilt werden, welches der Zertifikate für welchen Zweck (digitale
Signatur oder Verschlüsselung) verwendet werden soll. Zur Auswahl stellt Outlook sämtliche
für den jeweiligen Zweck geeigneten Zertifikate, welche in der Zertifikatsverwaltung von
Windows verfügbar sind. Für das Signaturzertifikat sollte der Hashalgorithmus SHA1 und für
das Verschlüsselungszertifikat der Verschlüsselungsalgorithmus 3DES ausgewählt werden.
Die gewählten Algorithmen werden beim digitalen Signieren bzw. Verschlüsseln von Emails
verwendet und sind unabhängig von den im Zertifikat angegebenen Algorithmen.
Ebenso wie beim Internet Explorer sollte darauf geachtet werden, dass bestimmte Einstellungen aktiv sind:
‰
Signierte Nachrichten als Klartext senden
‰
Signierten Nachrichten diese Zertifikate hinzufügen
105
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
‰
Sicherheitsformat für Nachrichten = S/MIME
Installation fremder Benutzerzertifikate
Von der DiBa-CA erzeugte Benutzerzertifikate mit der Dateiendung *.crt liegen in dem von
Outlook gewünschten DER-codierten Format vor. Allerdings importiert Outlook Benutzerzertifikate ausschließlich dann in den Bereich Kontakte für fremde Mitarbeiter, wenn die Dateiendung auf *.cer lautet. Aus diesem Grund müssen Zertifikate vor dem Import momentan noch
entsprechend umbenannt werden. Zukünftige Versionen von FlexiTrust werden diese Dateiendung automatisch erzeugen. Es ist möglich, einem einzelnen Kontakt mehrere Zertifikate
zuzuordnen, falls dieser Kontakt verschiedene Email-Adressen enthält. Outlook verwendet
dann automatisch das zur Email-Adresse gehörende Zertifikat beim Senden einer verschlüsselten Nachricht an diesen Mitarbeiter.
Verschlüsselung und digitale Signatur bei ausgehenden Nachrichten
Damit Nachrichten beim Versand an andere Mitarbeiter automatisch ohne Zutun verschlüsselt
werden, empfiehlt es sich, die Option Nachrichteninhalte und Anlagen verschlüsseln zu aktivieren. Gleiches gilt für die Option Dig. Signatur ausgehenden Nachrichten hinzufügen, damit
werden ausgehende Nachrichten automatisch digital signiert.
Verschlüsselung und digitale Signatur bei eingehenden Nachrichten
Empfangene, verschlüsselte Nachrichten werden nicht im Vorschaufenster von Outlook angezeigt. Zum Lesen der Nachricht muss diese erst geöffnet werden. Über ein blaues SchlossSymbol im Nachrichtenfenster können Informationen, wie der Verschlüsselungsalgorithmus,
sowie das verwendete Verschlüsselungszertifikat eingesehen werden.
Empfangene, digital signierte Nachrichten werden hingegen im Vorschaufenster angezeigt,
solange die enthaltene Signatur gültig ist. Über das rote Signatursymbol im Nachrichtenfenster
können - ebenso wie bei der Verschlüsselung - Informationen zum verwendeten Signaturzertifikat eingesehen werden. Weiterhin liefert dieser Dialog Informationen bezüglich der Gültigkeit der digitalen Signatur, wie beispielsweise, ob die Nachricht unverändert ist, oder ob das
Signaturzertifikat gültig ist. Bei fehlerhaften Signaturen oder -Zertifikaten warnt Outlook vor
dem Öffnen der Nachricht den Benutzer entsprechend. Es wird empfohlen, diesen Warnhinweis nicht explizit auszuschalten, um kompromittierte Nachrichten schnell erkennen zu können. Weiterhin sollte beim Empfang signierter Nachrichten ausdrücklich das verwendete
Signaturzertifikat überprüft werden.
6.4
Allgemeiner Ablauf der Benutzerzertifizierung
Der folgende Abschnitt beschreibt den Ablauf der Benutzerzertifizierung. Dabei werden u. a.
Themen wie die Registrierung von Mitarbeitern, Erzeugung von kryptographischen Schlüsselpaaren, der Vorgang der Zertifizierung und Schlüsselverteilung / -Verwaltung, sowie die Sperrung von Zertifikaten berücksichtigt.
106
Kapitel 6: Umsetzung der Public Key Infrastruktur
6.4.1
Registrierung
Registriert werden neben Mitarbeitern auch WWW-Server sowie später VPN-Gateways. Zur
Aufgabe der DiBa-RA gehört neben der Annahme und Prüfung von Zertifizierungsanträgen
auch die Vergabe eindeutiger Namen für Mitarbeiter und Server.
Anfragen von Mitarbeitern bezüglich der Aufnahme in die Zertifizierungsinfrastruktur und
eine damit verbundene Zuteilung von digitalen Schlüsseln und Zertifikaten erfolgen an administrative DiBa-RA Mitarbeiter (im Folgenden Administratoren genannt).
Personenbezogene Registrierungsdaten müssen bei der Registrierung nicht erhoben werden,
soweit diese Daten aus der zentralen Benutzerdatenbank der DiBa entnommen werden können.
Unter den Begriff personenbezogene Daten fallen u. a. Folgende:
‰
Daten zur Zertifikatserzeugung
Identifikation des Mitarbeiters, wie beispielsweise Name und Adresse.
‰
Daten des zugeordneten Arbeitsplatzes
u. a. Standort, Rechnername sowie IP-Adresse.
‰
Daten zur Verwaltung und Sperrung von Zertifikaten
Notwendige Kennwörter etc.
Anfangs werden Registrierungsdaten noch manuell durch die Administratoren von der zentralen Benutzerdatenbank in das Registrierungsformular der DiBa-RA übernommen. Es ist denkbar, dass diese Aufgabe in Zukunft durch eine - noch zu schaffende - Schnittstelle zwischen
der DiBa-CA Datenbank und der Benutzerdatenbank automatisch erledigt werden kann. Dies
würde manuelle Eingriffe auf ein Minimum beschränken.
6.4.2
Schlüsselerzeugung
Benutzerschlüssel
Durch die DiBa-CA werden pro Mitarbeiter zwei getrennte asymmetrische Schlüsselpaare
erzeugt. Je eines für:
‰
Verschlüsselung (S/MIME und SSL)
Anschließend erfolgt eine Sicherung des privaten Teils des Verschlüsselungsschlüssels dieses Schlüsselpaares zum Zweck der Schlüsselwiederherstellung.
‰
Digitale Signatur (S/MIME)
Der private Teil des Signaturschlüsselpaares wird nur solange innerhalb der DiBaCA aufbewahrt bis er von Administratoren der DiBa-CA an den entsprechenden
Mitarbeiter ausgehändigt wurde (siehe Punkt [6.4.4]). Nach der Übergabe an den
Mitarbeiter wird dieser auf Seiten der DiBa-CA unwiderruflich gelöscht.
Die erstellten privaten Schlüssel der jeweiligen Schlüsselpaare werden in PKCS#12-Dateien
zusammen mit den Benutzerzertifikaten (siehe nächster Schritt) und dem DiBa-CA Zertifikat
untergebracht. Für jedes Schlüsselpaar wird eine solche Datei (auch PSE genannt) angelegt.
107
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
Die PSE wird mithilfe eines zufälligen Kennwortes gegen unbefugte Zugriffe durch Dritte
geschützt. Für beide PSEs eines Mitarbeiters kann dabei aus Gründen der Einfachheit dasselbe
Kennwort gewählt werden. Diese Kennwörter müssen dem Mitarbeiter bei Aushändigung
[6.4.4] der PSE mitgeteilt werden.
Serverschlüssel für SSL
Die Schlüsselerzeugung für den Internet Information Server 4 erfolgt innerhalb des IIS selbst
und nicht durch die Software FlexiTrust.
6.4.3
Zertifizierung
Benutzerzertifikate
Die DiBa-CA erstellt für jedes der beiden o. g. Schlüsselpaare ein getrenntes Zertifikat, in das
der jeweilige öffentliche Schlüssel mit aufgenommen wird, mit folgenden Eigenschaften:
‰
Verschlüsselung (S/MIME und SSL)
‰
Digitale Signatur (S/MIME)
Serverzertifikat für SSL
Der vom IIS selbst generierte öffentliche Schlüssel wird mithilfe der DiBa-CA zertifiziert und
in das erstellte Zertifikat mit aufgenommen.
6.4.4
Schlüsselverteilung
Verteilung der Benutzerschlüssel und -Zertifikate
DiBa-RA Administratoren verteilen die Schlüssel auf einem Wechseldatenträger in Form von
PKCS#12-Dateien zusammen mit den Benutzerzertifikaten, dem DiBa-CA Zertifikat und der
aktuellsten Sperrliste an die Mitarbeiter und nehmen deren Installation auf dem Rechner des
Mitarbeiters vor. Der Mitarbeiter muss sich davon überzeugen, dass die in den Zertifikaten enthaltenen persönlichen Daten korrekt sind. Anschließend erhält er eine Einweisung in die
Anwendung der vom Mitarbeiter zu verwendenden Produkte sowie den sorgsamen Umgang
mit privaten Schlüsseln und deren Bedeutung.
Nach der Übergabe des schlüsseltragenden Datenträgers an den Mitarbeiter bekommt dieser
die notwendigen Kennwörter für den Zertifikatswiderruf und zur Entschlüsselung der PSEs
vom Administrator ausgehändigt.
Verteilung des DiBa-CA Zertifikates
Zusätzlich zur konkreten Verteilung (s.u.) wird das DiBa-CA Zertifikat noch einmal zentral,
für jeden abrufbar in einem öffentlichen Bereich des Intranet-Webservers abgelegt. Sodass
auch Mitarbeiter, die nicht zertifiziert wurden, Zugriff auf das DiBa-CA Zertifikat haben, um
digitale Signaturen zu prüfen.
108
Kapitel 6: Umsetzung der Public Key Infrastruktur
6.4.5
Sperrmanagement
Benutzerzertifikate können sowohl durch persönlichen Kontakt mit der RA als auch telefonisch oder per Email gesperrt werden.
Um die Authentizität des Sperrantrages zu überprüfen und sicherzustellen, dass der Mitarbeiter
berechtigt ist das Zertifikat zu sperren, ist von Seiten des Mitarbeiters die Nennung des Kennwortes für den Zertifikatswiderruf (s.o.) notwendig. Ohne Nennung des Kennwortes ist der
persönliche Kontakt mit einem RA-Mitarbeiter unter Vorlage des Personalausweises notwendig. Kontakt per Email oder Telefon ist in diesem Fall aus Sicherheitsgründen ausgeschlossen.
Konnte die Berechtigung des Mitarbeiters zum Sperren des Zertifikates festgestellt werden,
sperrt ein Administrator dieses Zertifikat unverzüglich unter Eingabe des Passwortes, der Seriennummer und evtl. eines Sperrgrundes. Die Erstellung einer aktualisierten Widerrufsliste
erfolgt dann ohne weiteres Zutun automatisch durch FlexiTrust.
6.4.6
Veröffentlichung von Zertifikaten und Widerrufslisten
In der ersten Phase ist der Einsatz eines LDAP-Verzeichnisdienstes zur Veröffentlichung von
Zertifikaten auf Grund der anfangs geringen Nutzerbasis noch nicht notwendig.
Die Veröffentlichung aller vorzeitig widerrufenen Zertifikate (deren Gültigkeitszeitraum noch
nicht abgelaufen ist)1 in Form von Widerrufslisten im X.509v1 Format erfolgt auf dem Intranet-Server der DiBa mittels HTTP-Protokoll. Von dieser Praxis sollte auch dann nicht abgewichen werden, wenn in Zukunft ein LDAP-Verzeichnisdienst zur Veröffentlichung von
Zertifikaten bereit gestellt wird. Microsoft weist in [MS01-3] auf Performanceeinbußen bei der
Bereitstellung von Widerrufslisten über LDAP-Verzeichnisdienste gegenüber HTTP-Servern
hin.
6.4.7
Vier-Augen-Prinzip
Schutz gegen den Missbrauch der DiBa-CA durch CA-Mitarbeiter (sog. Insidermissbrauch)
bietet die Einhaltung des Vier-Augen-Prinzips. Die Stelle des DiBa-CA Administrators sollte
immer doppelt besetzt werden. Der Zugriff auf wichtige Ressourcen wie dem CA-Signierschlüssel sollte immer nur zwei autorisierten Mitarbeitern gemeinsam möglich sein, sodass ein
Missbrauch nie von einem Mitarbeiter alleine ausgeübt werden kann.
Es bietet sich an, hierfür das Passwort zur Freigabe des Signierschlüssels schon bei der Generierung in zwei Teil-Passwörter aufzuteilen und jedem CA-Mitarbeiter nur jeweils einen Teil
des Passwortes auszuhändigen. Um den CA-Signierschlüssel zu verwenden, müssen somit
immer zwei Administratoren gleichzeitig zugegen sein, was einen gewissen Schutz vor Insider-Missbrauch ermöglicht.
1. Zusätzlich werden von der CA alle jemals widerrufenen (abgelaufene und nicht abgelaufene) Zertifikate
in Form einer Komplettliste archiviert.
109
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
110
Kapitel 7
Kommentar
zu den Zertifizierungsrichtlinien
Zertifizierungsrichtlinien (im Folgenden als Policy bezeichnet), definieren feste Regeln und
Richtlinien, nach deren Vorgaben die Zertifizierung durch die DiBa-CA zu erfolgen hat. Der
Sinn einer Policy ist es, den Mitarbeitern eine Einschätzung der durch die DiBa-CA ausgestellten Zertifikate zu ermöglichen.
In diesem Kapitel werden einige interessante und z. T. bedenkliche Stellen der Policy aus
Anhang [A] betrachtet. Dabei wird besonderes Augenmerk auf die speziellen Anforderungen
des SigG gelegt.
7.1
Rechtliche Bedeutung
Nachteil der fehlenden rechtlichen Bedeutung
Abschnitt [A.2.1]: „Eine Zertifizierung durch die DiBa-CA zieht keinerlei rechtliche
Bedeutung nach sich; ein gesetzlicher Anspruch auf Erteilung eines Zertifikates durch
die DiBa-CA besteht nicht.“
Die fehlende rechtliche Bedeutung der DiBa-CA-Zertifizierung schließt den Einsatz ausgestellter Zertifikate außerhalb des Unternehmens der Allgemeinen Deutschen Direktbank AG
aus. Bezahl- oder Bestellvorgänge mit diesen Zertifikaten im E-Commerce sowie der Datenaustausch mit Behörden, anderen Finanzinstituten oder Unternehmen führen daher zu Komplikationen bei der Beweisführung im Falle des Missbrauchs privater Schlüssel. Für diesen
Einsatzzweck sind Zertifikate der DiBa-CA allerdings auch nicht vorgesehen. Diese werden
ausschließlich für den unternehmensinternen Gebrauch mobiler DiBa-Mitarbeiter zum Zweck
der Authentifikation gegenüber Unternehmensservern im LAN sowie zur Absicherung deren
elektronischer Kommunikation eingesetzt. Für organisationsfremde Personen, sowie Mitarbeiter die nicht auf die mobile Kommunikation angewiesen sind, besteht daher kein Anspruch auf
die Erteilung eines Zertifikates durch die DiBa-CA.
111
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
Gründe gegen eine SigG-konforme Zertifizierung
Abschnitt [A.2.1]: „Die dieser Policy zugrunde liegenden Anforderungen an technische
Komponenten und Verfahren zur Zertifizierung sind derzeit nicht SigG-konform. Zertifikate der DiBa-CA entsprechen demnach nicht den qualifizierten Zertifikaten nach §2
Nummer 7 des Signaturgesetzes (SigG).“
Die DiBa-CA wird ihren Betrieb zunächst nicht als Zertifizierungsstelle nach dem deutschen
Signaturgesetz (SigG) aufnehmen. Zum einen übersteigen die Anforderungen des SigG an
organisatorische, technische, personelle sowie bauliche Maßnahmen den Rahmen dessen, was
im Zuge einer Diplomarbeit realisiert werden kann. Zum anderen ist derzeit noch nicht abzusehen, ob in naher Zukunft überhaupt ein Bedarf an SigG-konformer Zertifizierung entsteht, der
einen solchen Aufwand rechtfertigen würde.
Im Folgenden sind exemplarisch zwei Gründe dargestellt, die gegen den Einsatz einer SigGkonformen Lösung sprechen:
‰
SigG §4, Abs. 2: „Einen Zertifizierungsdienst darf nur betreiben, wer die für den
Betrieb erforderliche Zuverlässigkeit und Fachkunde sowie eine Deckungsvorsorge nach § 12 nachweist (...). Die weiteren Voraussetzungen für den Betrieb
eines Zertifizierungsdienstes liegen vor, wenn die Maßnahmen zur Erfüllung der
Sicherheitsanforderungen nach diesem Gesetz ... praktisch umgesetzt sind.“
Weder die geforderte Fachkunde von DiBa-CA-Mitarbeitern noch das Einhalten
der notwenigen Sicherheitsanforderungen auf dem Level des SigG können im Rahmen dieser Arbeit gewährleistet werden. Hinzu kommt die Notwendigkeit, einer
entsprechenden Deckungsvorsorge (siehe Abschnitt [3.9.2]) für Schäden Dritter.
‰
SigV 97 Begründung, §16 Abs. 2: „Die Signiertechnik wird in der Regel im
wesentlichen auf einer Chipkarte oder einem vergleichbaren Träger (z. B. PCMCIA-Karte) realisiert.“
Hardware-PSEs (Chipkarten) werden von der DiBa-CA in der ersten Phase nicht
eingesetzt, stattdessen wird eine Softwarelösung favorisiert. Digitale Signaturen
werden auf den Rechnern der Mitarbeiter erzeugt und private Schlüssel entsprechend auf Festplatte gespeichert. Dies entspricht nicht dem, für die Erzeugung qualifizierter Signaturen nach SigG, gefordertem Sicherheitsstandard.
Separate Signier- und Entschlüsselungsschlüssel
SigG §5, Abs. 4: „Eine Speicherung von Signaturschlüsseln außerhalb der sicheren
Signaturerstellungseinheit ist unzulässig.“
Signaturschlüssel dürfen laut SigG nur beim Mitarbeiter selbst auf den dafür vorgesehenen
Software- oder Hardwareeinheiten (PSEs wie beispielsweise Chipkarten) gespeichert werden.
Eine Speicherung in der Zertifizierungsstelle, wie sie für Key Recovery notwendig wäre, ist
nicht zulässig. Das SigG betrachtet allerdings ausschließlich Schlüssel zur Erstellung digitaler
Signaturen (Signierschlüssel). Für die bei der DiBa (zusätzlich) notwendigen Verschlüsselungsschlüssel ist aber ein Verfahren zur Wiederherstellung unerlässlich. Eine Lösung bietet
die Verwendung separater Signier- und Entschlüsselungsschlüssel.
Eine Funktionstrennung der Schlüssel nach diesem Muster bietet neben der SigG-Konformität
112
Kapitel 7: Kommentar zu den Zertifizierungsrichtlinien
auch noch Vorteile im Betrieb der PKI. Zum einen verringert sich das kryptographische Material, das Angreifern für eine Kryptoanalyse zur Verfügung steht, denn jeder der beiden Schlüssel wird seltener benutzt, als wenn nur ein Schlüssel für beide Aufgaben verwendet würde.
Zum anderen hat eine mögliche Schlüsselkompromittierung weniger Auswirkungen auf die
Sicherheit des Gesamtsystems, ein kompromittierter Schlüssel kann nur entweder zur Verschlüsselung einer Kommunikation oder für digitale Unterschriften benutzt werden - nicht aber
für beides.
7.2
Einsatz von Registrierungsinstanzen
Abschnitt [A.2.3]: „Allgemein lässt sich durch Einsatz solcher RAs die Zahl der organisationseigenen CAs überschaubar halten. RAs dürfen lediglich zur Registrierung und
Überprüfung von Benutzern eingesetzt werden. (...) Die DiBa-RA hat eine rein organisatorische Funktion, sie darf weder das asymmetrische Schlüsselpaar für Mitarbeiter
erzeugen, noch kann sie Mitarbeiter-Zertifikate erteilen oder widerrufen.“
Der Einsatz lokaler RAs verringert die Notwendigkeit zusätzlicher CAs, wenn die zuständige
CA weit von den zu zertifizierenden Mitarbeitern entfernt ist. Aufgrund der Tatsache, dass
RAs mit weniger Rechten (und Pflichten) als CAs ausgestattet sind, ergeben sich bei deren
Einsatz wichtige Vorteile:
7.3
‰
Reduktion des Verwaltungsaufwandes
Die Administration einer RA ist unkomplizierter als die einer CA, da keine vergleichbar komplexe Hard- / Software-Infrastruktur eingesetzt werden muss. Der
Aufbau einer RA ist entsprechend mit einem wesentlich geringeren technischen
Aufwand zu erreichen.
‰
Sicherheitsaspekt
Mitarbeiter einer RA benötigen weniger sicherheitstechnisches Wissen, als Mitarbeiter einer CA. Entsprechend geringer fällt der Schulungsaufwand für diese Mitarbeiter aus.
Sicherheit in einer hierarchischen Struktur
Abschnitt [A.3]: „Durch die Teilnahme an einer Public Key Infrastruktur entstehen für
Mitarbeiter bestimmte Anforderungen hinsichtlich der Sicherheit der eingesetzten Hardund Software einerseits sowie dem verantwortungsvollen Umgang mit kryptographischen Schlüsseln andererseits. Die Anforderungen an die DiBa-CA sind dabei naturgemäß höher, da der Missbrauch eines CA-Schlüssels allen untergeordneten Zertifikaten
die Vertrauenswürdigkeit entziehen würde.“
Werden in einer derartigen hierarchischen Struktur die erwähnten Sicherheitsmerkmale nicht
tatsächlich alle eingehalten, kann dies Auswirkungen auf andere Mitarbeiter dieser Hierarchie
haben. Insbesondere eine übergeordnete CA muss mit besonderer Aufmerksamkeit auf die
eigene Einhaltung der Sicherheitsanforderungen achten. Falls der CA-Schlüssel kompromittiert werden sollte, verlieren alle untergeordneten Instanzen (RAs, Mitarbeiter, WWW-Server,
etc.) der Hierarchie ihre Vertrauenswürdigkeit. Dies zieht eine erneute Zertifizierung des kompletten Teils dieser Hierarchie nach sich.
113
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
7.4
Zertifizierung von Benutzern
Überprüfung der Identität von Mitarbeitern
Abschnitt [A.4.1]: „Die DiBa-CA (bzw. RA) hat vor der Zertifizierung in geeigneter
Weise die Eindeutigkeit folgender Informationen zu überprüfen: 1) Zugehörigkeit des
Rechners zur Allgemeinen Deutschen Direktbank AG. 2) Identität des Mitarbeiters.“
An dieser Stelle unterscheidet sich die Policy der DiBa-CA ein wenig von Policies anderer
CAs wie beispielsweise der Low-Level Policy des DFN [DFN99-1]. Der diesbezügliche
Absatz dort fordert eine explizite Überprüfung der Identität an Hand des Personalausweises.
DFN-PCA, Low-Level Policy, Abschnitt [5.3]: „...hat sich der Benutzer persönlich vorzustellen, um der CA (bzw. RA) die Verifikation der Identität und die korrekte Zuordnung
einer erreichbaren Email-Adresse zu diesem Benutzer ... zu ermöglichen. Für den Prozeß
der Verifikation ist die Vorlage eines Personalausweises/Reisepasses bzw. eines vergleichbaren Dokumentes erforderlich.“
Eine derartig strenge Authentifikationsprüfung von Benutzern ist für die Teilnahme an der
Public Key Infrastruktur der DiBa nicht notwendig, da es sich bei diesen ausschließlich um
DiBa-Mitarbeiter und nicht um organisationsfremde Personen handelt. Sämtliche erforderlichen Daten, wie Name, Abteilung, Benutzerrechte, Email-Adresse usw. sind von allen Mitarbeitern zentral in einer Datenbank erfasst. Diese umfasst neben den notwendigen persönlichen
Daten aller Mitarbeiter auch Daten zu den, ihnen zur Verfügung gestellten (mobilen) Rechnern. Zudem nehmen Administratoren der DiBa die Installation von Schlüsseldaten und Zertifikaten auf den entsprechenden Rechnern vor. Eine Überprüfung, ob es sich bei der Person, die
den Zertifizierungsantrag stellt, um den angegebenen Mitarbeiter handelt, gewährleistet daher
ausreichende Sicherheit. Entsprechendes gilt für den ihm zur Verfügung gestellten Rechner.
Maximale Gültigkeitsdauer
Abschnitt [A.4.1]: „Zertifikate nach X.509v3 für Mitarbeiter haben eine Gültigkeitsdauer von maximal einem Jahr.“
Die im November 1997 in Kraft getretene Signaturverordnung (SigV) verlangt, dass Zertifikate eine Gültigkeitsdauer besitzen müssen [SigG97-2] §7. Mit einer Dauer von einem Jahr
wird die geforderte Höchstdauer von fünf Jahren eingehalten. Zum SigG aus dem Jahr 2001
existiert momentan (Mitte 2001) noch keine derartige Verordnung. Es ist aber zu erwarten,
dass diese entsprechende Passagen enthalten wird. Die reduzierte Gültigkeit von einem Jahr
wird durch den prototypischen Status der DiBa-CA begründet. Nach Ablauf der PrototypenTestphase wird entschieden, ob Folgezertifikate mit einer längeren Gültigkeit ausgestellt werden.
Schlüsselgenerierung innerhalb der Zertifizierungsinstanz
Abschnitt [A.4.1]: „Mitarbeiter, welche zertifiziert werden möchten, generieren selbst
kein eigenes asymmetrisches Schlüsselpaar, sondern übermitteln nur den Zertifizierungswunsch an die DiBa-RA. (...) Das asymmetrische Schlüsselpaar des Mitarbeiters wird
114
Kapitel 7: Kommentar zu den Zertifizierungsrichtlinien
ausschließlich von der DiBa-CA erzeugt“.
Die Schlüsselgenerierung erfolgt mithilfe der im SigG §2 Punkt 12 genannten technischen
Komponenten für Zertifizierungsdienste. Nur diese erlauben bei Erzeugung und Übertragung
die vom SigG §17 Absatz 3 geforderte Einmaligkeit und Geheimhaltung der Schlüssel. Die z.
T. von Zertifizierungsrichtlinien einiger anderer CAs erlaubte Möglichkeit, die Schlüsselgenerierung dem Mitarbeiter zu überlassen, würde dies u. U. nicht gewährleisten. Zumindest müsste jeder Mitarbeiter selbst über entsprechende Kenntnisse und Infrastrukturen verfügen. Eine
Schlüsselgenerierung im Zertifizierungsdienst nimmt dem Benutzer diese Bürde und ist für ihn
entsprechend unkompliziert. Gleichzeitig bietet sie den Vorteil, die Schlüsselhinterlegung
erheblich zu vereinfachen. Ein Nachteil darf allerdings nicht vergessen werden: die fehlende
Rechtssicherheit. Denn private Schlüssel der Mitarbeiter sind (zumindest zeitweise) im Besitz
mehrer Personen. Niemand kann hundertprozentig garantieren, dass eine erzeugte digitale
Signatur vom Mitarbeiter selbst stammt. Es ist denkbar, dass ein CA-Mitarbeiter in betrügerischer Absicht den Besitz fremder Mitarbeiterschlüssel ausnutzt um in fremden Namen digitale
Signaturen zu erzeugen.
7.5
Widerruf von Zertifikaten
Einsatz von Widerrufslisten
Abschnitt [A.6]: „Alle widerrufenen Zertifikate werden von der DiBa-CA auf einer
Widerrufsliste (Certificate Revocation List, CRL) veröffentlicht, welche allen Mitarbeitern zur Verfügung gestellt wird, um widerrufene Zertifikate nicht irrtümlicherweise zu
benutzen.“
In der Begründung zu §8 der Signaturverordnung [SigG97-3] wird explizit der Einsatz von
sog. Zertifikats-Sperrlisten für Großanwender vorgeschlagen. Was nichts anderes darstellt, als
die hier eingesetzte Widerrufsliste.
Wiedereinsetzung eines widerrufenen Zertifikates
Abschnitt [A.6]: „Einmal widerrufene Zertifikate können nicht erneuert oder verlängert
werden. Jedoch hat jeder Mitarbeiter grundsätzlich die Möglichkeit, ein neues Zertifikat
zu beantragen.“
Diese Handhabung entspricht den Vorgaben der Signaturverordnung von 1997 §9 Absatz 3.
Eine Sperrung muss endgültig sein, damit keine Zweifel aufkommen, ob und wann ein Zertifikat gesperrt war. Die Begründung zur Signaturverordnung spricht ausdrücklich von der Möglichkeit, bei Bedarf neue Zertifikate auszustellen.
7.6
Zusammenfassung
Bei der Festlegung der Zertifizierungsrichtlinien wurde Wert darauf gelegt, die gestellten
Sicherheitsanforderungen zu erfüllen und dabei den Alltagsbetrieb möglichst nicht durch
unzumutbare Regeln einzuschränken. Einige der dabei entstandenen Regeln und Richtlinien
wurden in diesem Kapitel noch einmal näher erläutert.
115
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
116
Kapitel 8
Bewertung und Ausblick
8.1
Gesamtbewertung
Tragfähigkeit des Konzeptes
Die Erfahrungen aus dem Betrieb der Testumgebung haben gezeigt, dass es möglich ist, mit
der prototypischen Trustcenter-Software FlexiTrust eine funktionierende Public Key Infrastruktur aufzubauen, welche die Anforderungen an ein einheitliches Sicherheitskonzept für die
Allgemeine Deutsche Direktbank AG erfüllen kann. Zusammen mit Standardsoftware anderer
Hersteller ist es möglich, die Kommunikation mobiler Mitarbeiter zu schützen sowie sicheren
Zugriff auf vertrauliche Intranetinhalte zu gewährleisten. Das Gesamtkonzept hat sich damit
als tragfähig erwiesen.
Verwendbarkeit der eingesetzten Software
Die Bedienerfreundlichkeit des FlexiTrust Produktes in Bezug auf die Installation war während des Verlaufes dieser Arbeit (bedingt durch die gleichzeitig fortschreitende Entwicklung)
starken Veränderungen unterworfen. Mittlerweile wurde die Installation wesentlich vereinfacht. Die Einrichtung und Grundkonfiguration einer neuen Root-CA gelingt allerdings noch
nicht ohne Mitwirken des Herstellers. Hier sollte für die Zukunft ein grafisches Benutzerinterface zur komfortablen Konfiguration geschaffen werden. Dieses sollte in der Release-Version
die momentan auf direkten Datenbankeingriffen und Scriptdateien basierende Konfigurationsmöglichkeit ersetzen (oder zumindest ergänzen).
Der Funktionsumfang des Trustcenter Produktes genügte bereits in der jetzigen Version in den
meisten Punkten den Anforderungen des Sicherheitskonzeptes. Lediglich Funktionen zum
Aufbau virtueller privater Netzwerke auf IPSec-Basis können derzeit nicht für die ausgewählte
Plattform (Windows 2000) bereitgestellt werden. Diese werden allerdings in der endgültigen
Version verfügbar sein.
Im Bereich der zusätzlich eingesetzten Standardsoftware zeigte der ausgewählte Internet
Explorer Schwächen beim Einsatz von Widerrufslisten. Als Ausweg aus dieser Misere bietet
sich ein Update auf den IIS5 an, möglicherweise auch der Einsatz eines alternativen Webser-
117
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
vers wie beispielsweise des Apache unter UNIX. Dieser würde zugleich mehr Sicherheit gegen
externe Angriffe bieten. Sollte die Weiterverwendung des derzeitigen IIS 4 gewünscht sein, ist
die ausdrückliche Bindung jedes einzelnen Zertifikates über die Clientzertifikatszuordnung an
den Webserver eine Möglichkeit, auf Widerrufslisten innerhalb des IIS zu verzichten. Widerrufenen Zertifikaten könnte man dann die Bindung entziehen, so wäre sichergestellt, dass ungültigen Zertifikaten kein Zugang gewährt würde.
8.2
Ausblick
Smartcards vs. Software-PSE
Das Sicherheitskonzept sieht derzeit keine Realisierung kryptographischer Operationen in
Hardware vor. Sämtliche Funktionen wie Schlüsselgenerierung, Ver- und Entschlüsselung,
digitale Signatur sowie Authentifikations-Mechanismen werden ausschließlich in Form einer
Softwareimplementierung auf Client- und Serverrechnern ausgeführt. Dazu notwendige
Schlüsseldaten werden direkt auf der Festplatte des jeweiligen Rechners gespeichert und sind
entsprechend schwach gegen Angriffe geschützt.
Die Sicherheit ließe sich durch den Einsatz von Smartcards erheblich erhöhen. Neben der
höheren Sicherheit bieten Smartcards weitere Vorteile. Sie eignen sich beispielsweise hervorragend zur Authentifikation von Mitarbeitern. So könnten Smartcards auch als Zugangsberechtigung zum PC eingesetzt werden. Auf diese Weise könnte man den fehlerträchtigen
Loginvorgang auf Passwortbasis ablösen.
Einbeziehung weiterer Mitarbeiter in die PKI
Die Zielgruppe für die Einführung des Sicherheitskonzeptes in Phase 1 umfasst ausschließlich
mobile Mitarbeiter. Im Zuge der Einführung von Smartcards und der damit verbundenen Möglichkeit der sicheren Authentifizierung im Bereich der Zugangsberechtigung am PC bietet es
sich an, sämtliche Mitarbeiter der DiBa in das Sicherheitskonzept zu integrieren.
Anpassung des Konzeptes an SigG-Konformität sowie Erweiterung des Nutzerkreises
auf Brokeragekunden
Solange Zertifikate der DiBa-CA ausschließlich innerhalb des Unternehmens der Allgemeinen
Deutschen Direktbank AG eingesetzt werden, besteht keine Notwendigkeit für den Einsatz
qualifizierter digitaler Signaturen nach SigG. Eine Umstellung auf ein SigG-konformes Konzept würde es allerdings ermöglichen, Signatur-Chipkarten im Bereich Onlinebanking und
Brokerage an Kunden herauszugeben und damit die bisherige PIN/TAN-basierte Lösung zu
ersetzen.
118
Anhang A
Zertifizierungsrichtlinien: Policy
Dies ist die Version 1.0 der Policy der DiBa-CA. Sie basiert zum Großteil auf der Policy der
FernUni-CA der FernUniversität Hagen [FUHagen01], der Medium-Level-Policy der DFNPCA [DFN99-1] sowie der Policy der Bundesverwaltung [BSI97]. Absätze und Formulierungen, welche die DiBa-CA betreffen, wurden den vorgenannten Policies entnommen bzw. auf
die DiBa-CA spezifischen Besonderheiten umgeschrieben.
Dieses Kapitel enthält die Zertifizierungsrichtlinien (die sog. Policy) der obersten Zertifizierungsinstanz der Allgemeinen Deutschen Direktbank AG - DiBa (DiBa-CA). Die DiBa-CA ist
zugleich Wurzelinstanz dieser Hierarchie (PCA), da sie derzeit selbst von keiner übergeordneten CA zertifiziert ist.
Der Sinn dieses Dokumentes ist es, Benutzern im Netzwerk eine Einschätzung der durch diese
CA ausgestellten Zertifikate zu ermöglichen. Benutzer im Sinne dieser Policy sind ausschließlich Mitarbeiter der Allgemeinen Deutschen Direktbank AG.
Die in diesem Dokument getroffenen Aussagen sind für die Arbeit der DiBa-CA bindend,
soweit sie nicht gesetzlichen Regelungen widersprechen. Die DiBa-CA zertifiziert ausschließlich nach den Richtlinien dieser Policy.
A.1
Identität der DiBa-CA
Adresse
DiBa-CA
Allgemeine Deutsche Direktbank AG
Baseler Straße 27-31
60329 Frankfurt/Main
Gültigkeit dieses Dokumentes
Diese Policy ist gültig vom 1. Oktober 2001 bis zum 31. Dezember 2002.
119
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
A.2
Zuständigkeitsbereich der DiBa-CA
Der Zuständigkeitsbereich der DiBa-CA umfasst alle Mitarbeiter der Allgemeinen Deutschen
Direktbank AG. Das vorrangige Ziel der DiBa-CA besteht in dem Aufbau einer firmenweiten
Public Key Infrastruktur zur Zertifizierung einzelner Mitarbeiter der Allgemeinen Deutschen
Direktbank AG. Eine solche Infrastruktur ist die Voraussetzung für die vertrauenswürdige
Kommunikation im Netzwerk der Allgemeinen Deutschen Direktbank AG. Realisiert durch
Sicherheitsdienste wie Integrität, Authentizität und Vertraulichkeit.
Die DiBa-CA wird in der ersten Phase ausschließlich Zertifikate für unternehmensinterne
Registrierungsinstanzen (RAs), DiBa Mitarbeiter, WWW-Server sowie VPN-Gateways, nicht
jedoch für untergeordnete Zertifizierungsinstanzen (CAs) sowie weitere Registrierungsinstanzen (RAs), oder andere Benutzer erteilen.
Die DiBa-CA unterstützt ausschließlich das Zertifikats-Format X.509v3, welches in aktuellen
Internet-Programmen für unterschiedliche Anwendungen (SSL, S/MIME sowie IPSec) eingesetzt wird.
A.2.1 Rechtliche Bedeutung
Eine Zertifizierung durch die DiBa-CA zieht keinerlei rechtliche Bedeutung nach sich; ein
gesetzlicher Anspruch auf Erteilung eines Zertifikates durch die DiBa-CA besteht nicht. Der
Sinn einer Public Key Infrastruktur liegt in der Schaffung der technischen Voraussetzungen für
eine gesicherte elektronische Kommunikation. Insbesondere die Allgemeine Deutsche Direktbank AG sowie die Projektmitarbeiter (Administratoren) der DiBa-CA übernehmen keine
Form der Gewährleistung. Alle Aufgaben werden von den Projektmitarbeitern nach bestem
Wissen und Gewissen durchgeführt.
Die dieser Policy zu Grunde liegenden Anforderungen an technische Komponenten und Verfahren zur Zertifizierung sind derzeit nicht SigG-konform. Zertifikate der DiBa-CA entsprechen demnach nicht den qualifizierten Zertifikaten nach §2 Nummer 7 des Signaturgesetzes
(SigG).
A.2.2 Die DiBa-Zertifizierungshierarchie
Die Zertifizierungshierarchie der DiBa-CA besteht aus fünf verschiedenen Einheiten:
‰
eine Zertifizierungsinstanz (CA)
‰
zwei Registrierungsinstanzen (RAs)
‰
mehreren Intranet-Servern (WWW)
‰
ein Virtual Private Network Gateway (VPN mit IPSec)
‰
Mitarbeitern (Benutzern- / Client-Zertifikate für SSL, S/MIME sowie IPSec)
Der öffentliche Schlüssel der DiBa-CA ist in einem selbst signierten Zertifikat (Wurzel-Zertifikat), ausgestellt durch die DiBa-CA, enthalten. Alle Teilnehmer der Infrastruktur erhalten die-
120
Anhang A: Zertifizierungsrichtlinien: Policy
ses Wurzel-Zertifikat im Zuge der eigenen Zertifizierung und können somit die Authentizität
und Gültigkeit aller unterhalb der DiBa-CA erteilten Zertifikate überprüfen. Weiterhin wird
das Wurzel-Zertifikat veröffentlicht.
A.2.3 Registrierungsinstanz (RA)
Das Unternehmensnetzwerk der Allgemeinen Deutschen Direktbank AG ist derzeit räumlich
auf zwei Niederlassungen aufgeteilt: Frankfurter sowie Hannover. Die Registrierungsinstanz
(CA) wird ausschließlich in Frankfurt betrieben, ist aber für beide Standorte zuständig. Aufgrund der Tatsache, dass die auch für Hannover zuständige DiBa-CA weit entfernt von den zu
zertifizierenden Mitarbeitern lokalisiert ist, wird vom Einsatz zweier vertrauenswürdiger Registrierungsinstanzen (RAs) Gebrauch gemacht. RAs dürfen lediglich zur Registrierung und
Überprüfung von Benutzern eingesetzt werden.
Die Registrierungsinstanz übernimmt im Auftrag der DiBa-CA die Bearbeitung der Registrierungsaufträge anderer Benutzer vor deren Zertifizierung durch die DiBa-CA. Die DiBa-RA hat
eine rein organisatorische Funktion, sie darf weder das asymmetrische Schlüsselpaar für Mitarbeiter erzeugen, noch kann sie Mitarbeiter-Zertifikate erteilen oder widerrufen. Um einen
Missbrauch auszuschließen, muss jede elektronische Übermittlung von Identitätsinformationen des Mitarbeiters an die DiBa-CA durch die DiBa-RA digital signiert werden.
Empfängt die DiBa-CA den Zertifizierungswunsch eines Mitarbeiters durch eine vertrauenswürdige DiBa-RA, hat sie zunächst die Gültigkeit der DiBa-RA-Signatur zu verifizieren. Nach
diesem Kontakt wird das von der DiBa-CA neu ausgestellte Zertifikat an die DiBa-IS und von
dieser, unter Beachtung der Regeln aus Kapitel [A.4.1], weiter an den Mitarbeiter übermittelt.
A.3
Sicherheit der DiBa-CA-Ausstattung
Durch die Teilnahme an einer Public Key Infrastruktur entstehen für Mitarbeiter bestimmte
Anforderungen hinsichtlich der Sicherheit der eingesetzten Hard- und Software einerseits
sowie dem verantwortungsvollen Umgang mit kryptographischen Schlüsseln andererseits. Die
Anforderungen an die DiBa-CA sind dabei naturgemäß höher, da der Missbrauch eines CASchlüssels allen untergeordneten Zertifikaten die Vertrauenswürdigkeit entziehen würde.
A.3.1 Sicherheitsanforderungen an die DiBa-CA
Folgende Anforderungen werden an die DiBa-CA gestellt:
‰
Für die Dienste der DiBa-CA wird ein Rechner ohne jeglichen Netzanschluss eingesetzt. Der Rechner befindet sich im Rechenzentrum der Allgemeinen Deutschen
Direktbank AG in der Niederlassung Frankfurt. Zu dieser Zone haben nur ausgewählte Mitarbeiter Zugang.
‰
Jeglicher Datenaustausch mit vernetzten Rechnern wird von Mitarbeitern der
DiBa-CA per Wechselmedium vorgenommen; es findet keine automatisierte Bearbeitung der Daten statt. Sämtliche schlüsseltragenden Datenträger werden in unbenutztem Zustand an einem sicheren Ort verwahrt.
‰
Geheime Schlüssel der DiBa-CA zur Erzeugung digitaler Signaturen werden von
121
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
den DiBa-CA-Mitarbeitern ausschließlich auf dem dedizierten Rechner erzeugt
und verwendet sowie auf externer Peripherie (Diskette bzw. Chipkarte) gespeichert. Der Zugriff auf diese Peripherie wird durch Passworte bzw. PINs geschützt,
welche nur den DiBa-CA-Mitarbeitern bekannt sind und niemals im Klartext abgelegt werden. Die Peripherie wird nicht auf anderen Rechnern eingesetzt.
‰
Mit geheimen Signatur-Schlüsseln der DiBa-CA werden ausschließlich Mitarbeiter-Schlüssel (bzw. Server-Schlüssel) und Widerrufslisten (CRLs) unterschrieben.
Für jegliche Standard-Kommunikation werden geheime Signatur-Schlüssel nicht
verwendet.
‰
Asymmetrische Schlüsselpaare der DiBa-CA zur Erzeugung von Signaturen haben
eine Länge von mindestens 2048 Bit RSA.
‰
Die Schlüsselgenerierung erfolgt auf dem dedizierten DiBa-CA-Rechner.
‰
Sämtliche bei der Zertifizierung anfallenden Daten werden von den DiBa-CA-Mitarbeitern vertraulich behandelt. Die für die DiBa-CA geltenden gesetzlichen
Datenschutzbestimmungen werden eingehalten.
A.3.2 Sicherheitsanforderungen an die DiBa-RA
Folgende Anforderungen werden an die von der DiBa-CA eingesetzte DiBa-RA gestellt:
‰
Für die Dienste der DiBa-RA wird ein Rechner eingesetzt, der in geeigneter Weise
vor missbräuchlicher Benutzung geschützt ist.
‰
Geheime Schlüssel der DiBa-RA zur Erzeugung digitaler Signaturen werden von
den CA-Mitarbeitern ausschließlich auf dem dedizierten Rechner verwendet. Der
Zugriff auf den geheimen Schlüssel wird durch Passworte bzw. PINs geschützt,
welche nur den DiBa-RA-Mitarbeitern bekannt sind und niemals im Klartext abgelegt werden.
‰
Asymmetrische Schlüsselpaare der DiBa-RA zur Erzeugung von Signaturen haben
eine Länge von mindestens 2048 Bit RSA.
A.3.3 Sicherheitsanforderungen an Benutzer
Benutzer im Sinne dieser Policy sind ausschließlich einzelne Mitarbeiter der Allgemeinen
Deutschen Direktbank AG.
Der geheime Schlüssel des Benutzers muss ausreichend vor Missbrauch durch Unbefugte
geschützt und darf nicht weitergegeben werden; hierfür ist jeder Benutzer selbst verantwortlich.
Der Zugriff auf den geheimen Schlüssel wird durch nicht-triviale Passworte (Mindestlänge: 8
Zeichen) bzw. einer PIN geschützt, welche nur den jeweiligen Mitarbeitern bekannt sind. Passwort bzw. PIN dürfen niemals an andere Personen weitergegeben oder im Klartext abgelegt
bzw. über ungeschützte Netzwerkverbindungen gesendet werden.
122
Anhang A: Zertifizierungsrichtlinien: Policy
Sicherheitsanforderungen an Benutzer (SSL, S/MIME, IPSec)
‰
Das asymmetrische Schlüsselpaar des Benutzers muss eine minimale Länge von
1024 Bit RSA (oder vergleichbares Niveau) aufweisen. Die Wahl größerer Schlüssellängen wird dringend empfohlen und richtet sich nach der technischen Verfügbarkeit.
‰
Das Verzeichnis bzw. die Dateien, in dem die kryptographischen Schlüssel von der
Applikation gespeichert werden, sind vom Benutzer nach Maßgabe der Möglichkeiten vor unbefugtem Missbrauch zu schützen. Dies kann z. B. durch das Setzen
bestimmter Zugriffsrechte geschehen, sofern das eingesetzte Betriebssystem dies
unterstützt. Die Speicherung der kryptographischen Schlüssel auf externen Datenträgern (z. B. Diskette) wird dringend empfohlen.
Sicherheitsanforderungen an WWW-Server und VPN-Gateways
A.4
‰
Das asymmetrische Schlüsselpaar für WWW-Server muss eine minimale Länge
von 1024 Bit RSA (oder vergleichbares Niveau) aufweisen. Die Wahl größerer
Schlüssellängen wird dringend empfohlen und richtet sich nach der technischen
Verfügbarkeit.
‰
Da der geheime Schlüssel üblicherweise fest auf den Server-Rechnern gespeichert
ist, ist der Rechner samt entsprechender Dateien und Verzeichnisse durch geeignete (auch physikalische) Maßnahmen vor missbräuchlicher Benutzung zu schützen. Dies sollte insbesondere durch das Setzen entsprechender Zugriffsrechte
geschehen.
Zertifizierungsregeln
Dieser Abschnitt beschreibt technische und organisatorische Richtlinien und Prozeduren, die
vor einer Zertifizierung von Benutzern zu beachten sind.
Sowohl Zertifizierungsinstanzen als auch Mitarbeiter werden innerhalb einer X.509-Hierarchie mit eindeutigen Namen – sog. Distinguished Names (DNs) – bezeichnet, deren korrekter
Wahl eine besondere Bedeutung zukommt. Die Wahl der Namen ist in Abschnitt [A.8]
beschrieben.
Jedes X.509v3-Zertifikat muss eine Seriennummer beinhalten, die von der DiBa-CA vergeben
wird. Dabei hat die DiBa-CA bei der Zertifizierung zu gewährleisten, dass von ihr keine Seriennummer mehrfach vergeben wird.
Um unerlaubte Zertifizierungswünsche zu erkennen, überzeugt sich die DiBa-CA vor jeder
Zertifizierung in geeigneter Weise durch technische und organisatorische Maßnahmen von der
Identität sowie Autorisierung desjenigen Mitarbeiters, welcher eine Zertifizierung wünscht. In
keinem Fall werden Zertifizierungswünsche automatisiert bearbeitet.
Schlüsselpaare, welche von der DiBa-CA zertifiziert werden sollen, werden ausschließlich von
der DiBa-CA, unter Einhaltung der Mindestlängen für kryptographische Schlüssel (Abschnitt
123
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
[A.3]), selbst generiert. Es werden mit Ausnahme des WWW-Schlüssels keine benutzereigenen Schlüssel von der DiBa-CA zertifiziert.
Bei der Schlüsselerzeugung wird von der DiBa-CA ein Passwort für den Widerruf des Zertifikates (siehe Abschnitt [A.6]) für den Mitarbeiter erzeugt.
Es werden getrennte Schlüsselpaare zum Verschlüsseln und Signieren erzeugt. Schlüssel dürfen nur für den jeweils für sie vorgesehenen Einsatzzweck verwendet werden. Für jedes
Schlüsselpaar wird ein eigenes Zertifikat erzeugt. Im Zertifikat selbst ist angegeben, welcher
Verwendungszweck dem jeweiligen Schlüsselpaar zugeordnet ist.
Das neu ausgestellte Zertifikat wird dem Zertifikatnehmer unmittelbar nach der Zertifizierung
beispielsweise per Email oder über eine URL übermittelt; der ebenfalls generierte private
Schlüssel und das Widerrufspasswort müssen aber persönlich übergeben werden. Der Zertifikatnehmer ist angehalten, die Korrektheit, der im eigenen Zertifikat enthaltenen Informationen, sofort zu verifizieren. Ein LAN-Administrator der DiBa nimmt anschließend die
Installation des DiBa-CA-Zertifikates, des Benutzerzertifikates sowie des privaten Schlüssels
vor und überzeugt sich davon, dass die geforderten Sicherungsmaßnahmen des Rechners eingehalten sind.
Zertifikate werden in der Regel nicht automatisch durch die DiBa-CA erneuert; Anträge auf
Re-Zertifizierung sind gegebenenfalls bei der zuständigen DiBa-RA zu stellen.
Zertifikat-Erweiterungen
X.509v3-Zertifikate zeichnen sich dadurch aus, dass jedes Zertifikat beliebige Erweiterungen
(certificate extensions) enthalten kann. Jede Erweiterung kann darüber hinaus durch das Setzen eines bestimmten Bits (critical flag) als besonders signifikant gekennzeichnet werden.
Zertifikat-Erweiterungen werden von der DiBa-CA bei der Zertifizierung in das Zertifikat aufgenommen. Es werden dabei nur Zertifikate nach X.509v3 erzeugt und verbreitete StandardErweiterungen unterstützt.
A.4.1 Regeln für die Zertifizierung von Benutzern
Zertifizierung von Benutzern
Mitarbeiter, welche zertifiziert werden möchten, generieren selbst kein eigenes asymmetrisches Schlüsselpaar, sondern übermitteln nur den Zertifizierungswunsch an die DiBa-RA. Von
der RA wird dieser Zertifizierungswunsch, zum Schutz digital signiert, an die DiBa-CA weitergeleitet; die DiBa-CA verifiziert vor der Zertifizierung die digitale Signatur der DiBa-RA.
Das asymmetrische Schlüsselpaar des Mitarbeiters wird ausschließlich von der DiBa-CA
erzeugt; wobei von der DiBa-CA die in Kapitel [A.3.1] beschriebenen Sicherheitsanforderungen einzuhalten sind.
Die DiBa-RA hat vor der Zertifizierung in geeigneter Weise die Eindeutigkeit folgender Informationen zu überprüfen:
‰
Zugehörigkeit des Rechners zur Allgemeinen Deutschen Direktbank AG
124
Anhang A: Zertifizierungsrichtlinien: Policy
‰
Identität des Mitarbeiters
Zertifikate nach X.509v3 für Mitarbeiter haben eine Gültigkeitsdauer von maximal einem Jahr.
Regeln für die Zertifizierung von RAs
Die DiBa-RA besteht im Wesentlichen aus normalen Mitarbeitern, die im besonderen Auftrag
der DiBa-CA als Registrierungsinstanz (RA) fungieren.
Ein DiBa-RA-Zertifikat unterscheidet sich nicht von einem üblichen Mitarbeiter-Zertifikat.
Für die Zertifizierung von DiBa-RAs gelten daher die Regeln für die Zertifizierung von Benutzern.
Zusätzliche Regeln für die Zertifizierung von WWW-Server und VPN-Gateways
Zusätzlich zu den oben beschriebenen Zertifizierungsregeln für Benutzer gelten besondere
Richtlinien bei der Zertifizierung von WWW-Servern, welche nicht einer einzelnen Person,
sondern einem Rechner (-namen) zugeordnet sind.
Sollen WWW-Server zertifiziert werden, hat ein Administrator dieses Servers den Zertifizierungswunsch an die zertifizierende Instanz zu übermitteln. Diese hat vor der Zertifizierung in
geeigneter Weise die Eindeutigkeit folgender Informationen zu überprüfen:
A.5
‰
Zugehörigkeit des Servers zur Allgemeinen Deutschen Direktbank AG
‰
Identität des Server-Administrators
Management von Zertifikaten
Alle Teilnehmer der DiBa-Zertifizierungshierarchie erklären sich grundsätzlich mit der Veröffentlichung ihres Zertifikates einverstanden.
Die DiBa-IS ist für die Bereitstellung aller selbst ausgestellten Zertifikate verantwortlich. Von
der DiBa-CA neu ausgestellte Zertifikate und CRLs (siehe Abschnitt [A.6]) müssen innerhalb
einer angemessenen Zeitspanne (üblicherweise innerhalb eines Werktages) veröffentlicht werden.
Für die Bereitstellung von Zertifikaten werden von der DiBa-IS Informationsdienste (Verzeichnisse) eingerichtet (WWW- oder LDAP-Server), deren Aufgabe die öffentliche Verteilung von Zertifikaten und CRLs ist.
A.6
Widerruf von Zertifikaten
Die DiBa-CA kann von ihr erteilte Zertifikate jederzeit vor Ablauf der Gültigkeitsdauer ohne
Angabe expliziter Gründe widerrufen. Ursachen für den Widerruf eines Zertifikates können
beispielsweise das Bekanntwerden missbräuchlicher Handlungen eines DiBa-CA-Administrators oder das Nichtbefolgen einzelner Richtlinien dieser Policy sein. Andere Gründe sind beispielsweise das Ausscheiden eines Mitarbeiters aus der Firma oder die Änderung des Namens.
125
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
Jeder Zertifikatnehmer kann von der für ihn zuständigen DiBa-RA verlangen (notfalls auch
ohne Angabe von Gründen), dass diese ein für ihn ausgestelltes Zertifikat widerruft. Die DiBaCA hat diesem Verlangen innerhalb einer angemessenen Zeitspanne nachzukommen, sobald
sie sich durch geeignete Schritte davon überzeugt hat, dass der Antrag vom Zertifikatnehmer
selbst stammt bzw. von ihm autorisiert ist. Die Autorisierung kann an Hand des bei der Zertifizierung ausgegebenen Widerrufspasswortes erfolgen. Werden der Missbrauch oder die Kompromittierung des eigenen geheimen Schlüssels bekannt, muss jeder Teilnehmer unverzüglich
die zuständige DiBa-RA benachrichtigen und den Widerruf des eigenen Zertifikates veranlassen.
Widerruf von X.509v3-Zertifikaten
Alle widerrufenen Zertifikate werden von der DiBa-CA auf einer Widerrufsliste (Certificate
Revocation List, CRL) veröffentlicht, welche allen Mitarbeitern zur Verfügung gestellt wird,
um widerrufene Zertifikate nicht irrtümlicherweise zu benutzen. Diese CRL enthält u. a. das
Datum der CRL-Herausgabe (z. B. in Form eines Zeitstempels) und wird von der DiBa-CA
digital signiert. Widerrufene Zertifikate bleiben solange auf der CRL, bis die ursprüngliche
Gültigkeitsdauer überschritten wurde. Dabei werden auch solche Zertifikate auf einer CRL
veröffentlicht, gegen deren Veröffentlichung bei der Zertifizierung widersprochen wurde.
Einmal widerrufene Zertifikate können nicht erneuert oder verlängert werden. Jedoch hat jeder
Mitarbeiter grundsätzlich die Möglichkeit, ein neues Zertifikat zu beantragen.
Nach der Aufnahme des Betriebs mit einer leeren CRL muss die DiBa-CA in regelmäßigen
Abständen (z. B. wöchentlich) neue CRLs herausgeben, auch wenn in der Zwischenzeit keine
weiteren Zertifikate widerrufen wurden. Alte CRLs werden archiviert, um die Gültigkeit von
Zertifikaten auch zu einem späteren Zeitpunkt verifizieren zu können.
Für die Bereitstellung von CRLs werden von der DiBa-CA Informationsdienste (Verzeichnisse) eingerichtet, deren Aufgabe die öffentliche Verteilung von Zertifikaten und CRLs (vgl.
Abschnitt [A.5]) ist.
A.7
Schlüsselhinterlegung
Kopien der geheimen Schlüssel eines für Verschlüsselung vorgesehenen asymmetrischen
Schlüsselpaares werden von der DiBa-CA für Widerherstellungszwecke auf sichere Weise
archiviert. Asymmetrische Schlüsselpaare, welche ausschließlich für die Erstellung von Signaturen vorgesehen sind, betrifft diese Maßnahme nicht, da signierte Dokumente auch bei Verlust
des Signaturschlüssels weiterhin gelesen und verifiziert werden können. Aus diesem Grund
werden getrennte Zertifikate für digitale Signaturen und Verschlüsselung ausgegeben.
Alle Kopien geheimer Signaturschlüssel werden direkt nach Übergabe an den Mitarbeiter auf
Seiten der DiBa-CA endgültig gelöscht.
126
Anhang A: Zertifizierungsrichtlinien: Policy
A.8
Regeln für die Namensgebung
Wahl einer X.509v3-Benutzer-ID
Allen Mitarbeitern wird ein eindeutiger Name (Distinguished Name, DN) nach X.500 zugeordnet, welcher bei der Ausstellung eines Zertifikates für einen Mitarbeiter als dessen Subjektname zu verwenden ist. Ein DN enthält eine Folge von eindeutig kennzeichnenden
Namensattributen, durch die alle Mitarbeiter einer Hierarchie referenziert werden können. Auf
unübliche Sonderzeichen innerhalb dieses Namens wird aus Gründen der Interoperabilität verzichtet. Die deutschen Umlautbuchstaben ä, ö, ü sowie ß werden durch die übliche Umschreibung ae, oe, ue sowie ss, andere akzentuierte Buchstaben durch entsprechende nichtakzentuierte Buchstaben ersetzt (beispielsweise é durch e).
Die DNs aller Mitarbeiter unterhalb der DiBa-CA enthalten die Attribute C=DE und O=Allgemeine Deutsche Direktbank AG. Vor der Zertifizierung wird die Korrektheit und Eindeutigkeit des angegebenen Namens von der DiBa-CA überprüft; es darf kein Name mehrfach
vergeben werden.
Der Name jedes Mitarbeiters soll folgendem Schema folgen:
C
O
L
OU
CN
EMAIL
=
=
=
=
=
=
DE,
Allgemeine Deutsche Direktbank AG,
<Stadt>,
<Abteilung>,
<Eindeutiger Name>,
<Email-Adresse>
Alternative Namen können bei Bedarf über Zertifikat-Erweiterungen im Zertifikat aufgenommen werden. Die DiBa-CA hat in diesem Fall vor der Zertifizierung den Inhalt dieser Erweiterungen auf Korrektheit zu überprüfen.
Das Attribut L= ist für alle Mitarbeiter obligatorisch und kommt genau einmal vor. Es enthält
den jeweiligen Unternehmensstandort (derzeit entweder L=Frankfurt oder L=Hannover).
Das Attribut OU= ist für alle Mitarbeiter obligatorisch und kommt genau einmal vor. Es enthält
die Abteilung, in der der Mitarbeiter beschäftigt ist (wie beispielsweise OU=IT).
Das Attribut CN= ist für alle Mitarbeiter obligatorisch und kommt genau einmal vor. Es enthält
den vollständigen Namen des Mitarbeiters.
Das Attribut EMAIL= ist obligatorisch und enthält eine gültige, eindeutige Email-Adresse des
Mitarbeiters innerhalb der Domain diba.de.
Kommt ein Name innerhalb der Allgemeinen Deutschen Direktbank AG mehrmals vor, ist es
die Aufgabe der DiBa-RA, durch geeignete Namenszusätze eindeutige Namen zu wählen (eine
Möglichkeit ist z. B. die innerhalb des DiBa Netzwerkes eindeutig vergebenen Login-ID). Die
DiBa-RA ist ferner dafür verantwortlich, die Zugehörigkeit des Mitarbeiters zu der betreffenden Abteilung zu überprüfen und sicherzustellen, dass alle zertifizierten Mitarbeiter über
127
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
unterschiedliche Namen verfügen.
Regeln für RAs
Da Registrierungsinstanzen innerhalb der Zertifizierungshierarchie den gleichen Status besitzen wie Mitarbeiter, unterscheidet sich auch die Wahl der zugehörigen Namen nicht.
Zusätzliche Regeln für WWW-Server und VPN-Gateways
Zertifikate für WWW-Server müssen im Attribut CN= einen eindeutigen Hostnamen enthalten.
Dieses Attribut darf keine Platzhalter (sog. Wildcards) und keine numerischen IP-Adressen
enthalten.
Das optionale Attribut EMAIL= muss eine gültige Email-Adresse, beispielsweise die des Server-Administrators, enthalten.
A.9
Verschiedenes
Dieses Dokument entstand im Rahmen einer Diplomarbeit an der TU-Darmstadt. Es wird
keine Haftung für die Korrektheit, Vollständigkeit oder Anwendbarkeit der enthaltenen Informationen und der vorgeschlagenen Maßnahmen übernommen. Ferner kann keine Haftung für
eventuelle Schäden, entstanden durch die Inanspruchnahme der Dienste der DiBa-CA, übernommen werden. Die Verantwortung für die Verwendung der oben beschriebenen Verfahren
und Programme liegt allein bei den die Installation durchführenden Personen.
Die DiBa-CA behält sich vor, Zertifizierungswünschen nicht nachzukommen. Ferner kann
keine Garantie für die Verfügbarkeit der DiBa-CA-Dienste übernommen werden. Aufgrund
des Diplomarbeitsstatus besteht derzeit keine Möglichkeit, die Dienste der DiBa-CA auf einer
24-Stunden-Basis anzubieten.
Dokumentation und Datenschutz
Alle Arbeiten im Rahmen dieser Policy werden, soweit technisch durchführbar, dokumentiert.
Die DiBa-CA muss die bei der Zertifizierung anfallenden Daten vertraulich behandeln und die
für sie geltenden Datenschutzrichtlinien einhalten.
Sämtliche Zertifikatnehmer stimmen der Speicherung und Verarbeitung ihrer bei der Zertifizierung anfallenden Daten durch die DiBa-CA zu.
Erklärung der Teilnehmer
Alle Teilnehmer der Public Key Infrastruktur haben vor ihrer Zertifizierung handschriftlich
eine Erklärung zu unterzeichnen, in der sie über ihre Rechte und Pflichten sowie über die Risiken und Gefahren beim Einsatz von Public Key-Systemen aufgeklärt wurden. Diese Erklärung, wird von der DiBa-CA verwahrt und beinhaltet in erster Linie die Zustimmung zu den
Richtlinien dieser Policy.
128
Anhang B
Installationsbeschreibungen
Dieses Kapitel liefert Hinweise zur Einrichtung bestimmter Softwarekomponenten, welche für
den Betrieb der Public Key Infrastruktur notwendig sind. Neben einer Erläuterung der Konfiguration des Internet Information Servers (IIS) sowie Hinweisen zur Installation von Widerrufslisten in den Netscape Communicator, wird das Einrichten der MMC für eine komfortable
Verwaltung von Zertifikaten unter Windows 2000 gezeigt.
Die Motivation für dieses Kapitel lieferten häufig gestellte Fragen von Beteiligten aus dem
Umfeld dieser Arbeit.
B.1
Erzeugen eines Serverzertifikates für den IIS 4
Im Folgenden wird die Generierung und Zertifizierung eines SSL-Serverschlüssels für den
Internet Information Server 4.0 unter Windows NT SP6a mithilfe von FlexiTrust 2.0 beschrieben.
Die Generierung des Schlüssels erfolgt durch den in den Server integrierten Schlüsselmanager.
Die im Anschluss an die Schlüsselgenerierung erzeugte Zertifizierungsanforderung wird an die
Software FlexiTrust übergeben, diese übernimmt die eigentliche Zertifizierung. Abschließend
wird das von FlexiTrust signierte Serverzertifikat in den IIS-Schlüsselmanager importiert:
‰
Den IIS4-Schlüsselmanager hat Microsoft gut versteckt, ihn erreicht man über die
Eigenschaften des SSL-Verzeichnisses, von dort aus müssen folgende Dialoge ausgewählt werden: Verzeichnissicherheit / Sichere Kommunikation / Bearbeiten... /
Schlüssel-Manager... dort schließlich auf Neuen Schlüssel erstellen klicken.
‰
Als Übergabemechanismus an FlexiTrust muss Anforderung als Datei speichern,
die an eine Instanz gesendet wird ausgewählt werden.
‰
In das Feld Schlüsselname den Domainnamen des Webservers angeben.
‰
Das zu vergebende Kennwort wird später für die Installation des generierten Zertifikates wieder benötigt.
129
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
‰
Der einzig sinnvolle Wert für die Bitlänge beim getesteten IIS 4 beträgt 1024 Bit,
höhere Schlüssellängen wären wünschenswert (beispielsweise 2048 Bit).
‰
In das Feld Allgemeiner Name wieder den Domainnamen des Webservers eintragen.
‰
Nach Abschluss des Dialoges kann die erstellte Base-64 codierte PKCS#10-Anforderungsdatei an FlexiTrust zur Bearbeitung übergeben werden. Dieses konvertiert
die Anforderungsdatei mithilfe von OpenSSL in ein von FlexiTrust lesbares Format und zertifiziert anschließend den enthaltenen öffentlichen Schlüssel.
‰
Nach dem Empfang des Zertifikates durch FlexiTrust wird die PEM-Version des
Zertifikates (*.pem.crt) im Schlüsselmanager beim zugehörigen Schlüssel installiert.
‰
Anschließend für den Schlüssel eine Serververbindung zur Anschlussnummer 443
(SSL) einrichten.
B.2
Installation von CA-Zertifikaten im IIS 4
Im Folgenden wird die Installation von CA-Zertifikaten im Internet Information Server 4.0
unter Windows NT SP6a1 beschrieben.
Windows NT und Windows 2000 verfügen über einen Assistenten zur Installation von Zertifikaten, Import-Assistent für die Zertifikatsverwaltung genannt. Für die übliche Verwendung von
Zertifikaten in Clientprogrammen reicht das Akzeptieren der vom Assistenten gemachten Vorschläge aus, Zertifikate werden dann automatisch in den richtigen Speicher der Registry des
Benutzers importiert. Der Internet Information Server allerdings verlangt CA-Zertifikate im
entsprechenden Speicher direkt auf dem lokalen Computer.
‰
Im Windows Explorer über das Kontextmenü der Zertifikatsdatei (*.cer) den
Menüpunkt Zertifikat installieren anwählen. Dies ruft den Import-Assistenten für
die Zertifikatsverwaltung auf.
‰
Auf der zweiten Seite bei der Frage nach dem gewünschten Zertifikatsspeicher,
Alle Zertifikate in folgendem Speicher speichern auswählen und auf Durchsuchen
klicken. Siehe Abbildung 1.
1. Auf die Installation im Zusammenhang mit früheren Service Packs soll an dieser Stelle nicht weiter
eingegangen werden, das Dokument „How to Configure Certificate Server for Use with SSL on IIS“
[MS00-2] von Microsoft, beschreibt die Vorgehensweise in solch einem Fall.
130
Anhang B: Installationsbeschreibungen
Abbildung 1 IIS4: Importassistent der Zertifikatsverwaltung
‰
Es öffnet sich eine Auswahlliste wie in Abbildung 2 gezeigt. In dieser Physikalischen Speicher anzeigen aktivieren und Vertrauenswürdige Stammzertifizierungsstellen1 öffnen, dort den Punkt Lokaler Computer auswählen.
Abbildung 2 IIS4: Wahl des richtigen Zertifikatsspeichers
‰
Der Assistent verfügt nun über alle notwendigen Eingaben und kann beendet werden.
Neben den bereits im IIS fest voreingestellten Zertifikatsaustellern wie Verisign oder RSA Data
1. Dies gilt für Root-CA Zertifikate. Für Zertifikate untergeordneter CAs ist „Zwischenzertifizierungsstellen“ zu öffnen.
131
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
Security sollte nach der Installation des Root-CA Zertifikates nun auch die neue Root-CA dem
IIS als vertrauenswürdiger Zertifikatsaussteller für Client-Zertifikate bekannt sein. Siehe
Abbildung 14. Nur Client-Zertifikate von den IIS-bekannten Zertifikatsausstellern sind für clientseitige SSL-Authentifizierung zugelassen. Wurde der Assistent nicht korrekt ausgeführt,
beispielsweise der Zertifikatsspeicher automatisch - und damit falsch - gewählt, kann eine
SSL-Verbindung über den IIS nur mit Server-Zertifikaten abgesichert werden. Client-Zertifikate weist dieser dann kommentarlos (ohne weitere Fehlermeldung) als unsicher ab, da ihm im Gegensatz zum Webbrowser des Clients - der Zertifikatsaussteller unbekannt ist. Der Dialog zur Auswahl des für die SSL Verbindung zu nutzenden Client-Zertifikates im Webbrowser
bleibt dann leer. Selbst wenn gültige Clientzertifikate vorhanden sind, welche im Webbrowser
des Clients für SSL-Verbindungen des angemeldeten Benutzers registriert sind.
Wie Client-Zertifikate in Webbrowsern registriert werden, beschreibt Abschnitt [5.4].
Abbildung 3 IIS4: zugelassene Root-CAs für die Ausstellung von Clientzertifikaten
Nach dem obligatorischen Neustart des IIS kann folgendermaßen überprüft werden, ob der
Vorgang erfolgreich war und der hinzugefügte Zertifikatsaussteller dem IIS nun bekannt ist:
‰
Über die Eigenschaften des SSL-Verzeichnisses folgende Dialogfolge aufrufen:
Verzeichnissicherheit / Sichere Kommunikation / Bearbeiten.... Dort schließlich die
Punkte Clientzertifikate verlangen sowie Client-Zertifikatszuordnungen aktivieren
anschalten.
‰
Über einen Klick auf Bearbeiten erreicht man den Dialog für die Zuordnung von
Client-Zertifikaten an NT-Benutzerkonten. Auf der Seite Weitere Optionen nun
Clientzertifikatsübereinstimmung (mit Platzhalterzeichen) aktivieren und eine temporäre Regel mittels Hinzufügen... erstellen.
‰
Im Regelfenster unter Herausgeber den Punkt Ausgewählte Zertifikatsaussteller
aktivieren und auf Auswählen klicken.
132
Anhang B: Installationsbeschreibungen
‰
B.3
Der Dialog Instanzen für Clientzertifikate (siehe Abbildung 3) listet alle dem IIS
bekannten, vertrauten Zertifikataussteller auf, darunter sollte sich nun auch der
Aussteller des zuvor installierten CA-Zertifikates befinden. Die Testregel kann
anschließend wieder gelöscht werden.
Installation von Widerrufslisten (CRLs) im Netscape
Communicator
Im Folgenden wird die Installation von X.509v1-CRLs über HTTP-Server in den Netscape
Communicator 7.x beschrieben. X.509v2-CRLs werden nicht unterstützt.
‰
CRLs müssen vom HTTP-Server mit dem MIME-Type application/x-pkcs7-crl im
DER-Format gesendet werden.
‰
Mit dem Aufrufen der URL der Widerrufsliste wird diese automatisch, ohne weitere Nachfrage heruntergeladen und ebenso automatisch ohne Meldung installiert.
‰
Über den Menüpunkt Communicator / Tools / Security Info steht nach erfolgreicher
Installation der ersten CRL im Bereich Signers die Schaltfläche View/Edit CRL’s
zur Verfügung. Darüber können vorhandene CRLs angezeigt oder erneuert bzw.
die Downloadadresse nachträglich editiert werden.
B.4
Installation des MMC Zertifikat Snap-In
Im Folgenden wird die Installation des MMC Zertifikat Snap-Ins in Windows 2000 beschrieben.
‰
Der Aufruf der Microsoft Management Console (MMC) erfolgt über Start / Ausführen..., dort MMC eingeben und OK klicken.
‰
Das Snap-In für Zertifikate wird anschließend über Konsole /
Snap-In hinzufügen/entfernen / hinzufügen... / Zertifikate hinzugefügt.
‰
Zur Auswahl stehen drei Varianten des Zertifikat Snap-Ins (Dieses Snap-In verwaltet die Zertifikate für):
‰
‰
Eigenes Benutzerkonto,
‰
Dienstkonto
‰
Computerkonto
Es empfiehlt sich die Varianten Eigenes Benutzerkonto und Computerkonto beide
(nacheinander) hinzuzufügen.
133
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
134
Anhang C
Abkürzungsverzeichnis
AH
Authentication Header
AES
Advanced Encryption Standard
ASP
Active Server Pages
BSI
Bundesamt für Sicherheit in der Informationstechnik
CA
Certification Authority (Zertifizierungsinstanz)
CPS
Certification Practice Statement
CRL
Certificate Revocation List (Widerrufsliste)
CSP
Cryptographic Service Provider
CSR
Certificate Signing Request (Zertifizierungswunsch)
DAP
Directory Access Protocol (X.500)
DER
Distinguished Encoding Rules
DES
Data Encryption Standard
DFN
Verein zur Förderung eines Deutschen Forschungsnetzes e.V.
DH
Diffie Hellman Algorithm
DiBa
Allgemeine Deutsche Direktbank AG
DIR
Directory (Verzeichnis)
DMZ
Demilitarized Zone (Entmilitarisierte Zone)
DN
Distinguished Name (X.500- oder LDAP-Name)
DSig
Digital Signature Initative
DSP
Directory System Protocol
DSS
Digital Signature Standard
135
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
EES
Escrowed Encryption Standard
ESP
Encapsulated Security Payload
FTP
File Transfer Protokoll
GMD
Gesellschaft für mathematische Datenverarbeitung
HTML
Hyper Text Markup Language
HTTP
Hyper Text Transport Protokoll
HTTPS
Secure HTTP
ID
Identifier
IDEA
International Data Encryption Algorithm
IETF
Internet Engineering Task Force
IKMP
Internet Key Management Protokoll
IIS
Internet Information Server
IMAP
Internet Message Access Protokoll
ING
Internationale Nederlanden Group
IP
Internet Protokoll
IPSec
IP Security
IPSP
IP Security Protokoll
IKE
Internet Key Exchange
ISDN
Integrated Services Digital Network
ISO
International Organization for Standardization
ISP
Internet Service Provider
IT
Informationstechnologie
JCA
Java Cryptographic Architecture
JDBC
Java Database Connectivity
KEA
Key Exchange Algorithm
KG
Key Generation (Schlüsselgenerierung)
LAN
Local Area Network
LDAP
Lightweight Directory Access Protocol
LDAPS
Secure LDAP
MAC
Message Authentication Code
MAPI
Messaging Application Programming Interface
MD4
Message Digest 4
136
Anhang C: Abkürzungsverzeichnis
MD5
Message Digest 5
MIME
Multipurpose Internet Mail Extensions
MIT
Massachusetts Institute of Technology
NSA
National Security Agency
OSI
Open System Interconnection
OWA
Outlook Web Access
PCA
Policy Certification Authority (Wurzelinstanz)
PGP
Pretty Good Privacy
PIN
Personal Identification Number
PKCS#7
Public Key Cryptography Standard #7 (Cryptographic Message Syntax
Standard)
PKCS#10
Public Key Cryptography Standard #10 (Certification Request Syntax
Standard)
PKCS#11
Public Key Cryptography Standard #11 (Cryptographic Token Interface
Standard)
PKCS#12
Public Key Cryptography Standard #12 (Personal Information Exchange
Syntax Standard)
PKI
Public Key Infrastruktur
POP3
Post Office Protokol Version 3
PPP
Point-to-Point Protokol
PS
Personalization (Personalisierungseinheit)
PSE
Personal Security Environment
RA
Registration Authority (Registrierungsinstanz)
RC2
Rivest Cipher 2 (symmetrischer Verschlüsselungsalgorithmus der RSA)
RC4
Rivest Cipher 4
RegTP
Regulierungsbehörde für Telekommunikation und Post
RFC
Request For Comments
RSA
Rivest, Shamir, Adleman (Namen der Entwickler des RSA-Algorithmus)
S/MIME
Secure/Multipurpose Internet Mail Extensions
Satos
Satellite Observation
SGC
Server Gated Cryptography
SHA
Secure Hash Algorithm
SKIP
Simple Key Management Protokoll
137
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
SigG
Signaturgesetz
SigV
Signaturverordnung
SMTP
Simple Mail Transfer Protokol
SSL
Secure Sockets Layer
TCP
Transmission Control Protokol
TLS
Transport Layer Security
Tripple-DES
DES dreimal angewendet
TTP
Trusted Third Party
URL
Uniform Resource Locator
VIP
Very Important Person
VPN
Virtual Private Network
WAN
Wide Area Network
WWW
World Wide Web
X.500
Weltweit verteilter, hierarchischer Verzeichnisdienst
X.509
Zertifizierungsinfrastruktur basierend auf X.500
138
Anhang D
Literaturverzeichnis
[AdaLlo99]
CARLISLE ADAMS, STEVE LLOYD, Understanding Public-Key
Infrastructure, Macmillan Technical Publishing USA, 1999.
[AnSTanen96]
ANDREW S. TANENBAUM, Computer Networks, Prentice Hall, 1996.
[BJKoops01]
BERT-JAAP KOOPS, Crypto Law Survey, Overview per country,
<URL: http://cwis.kub.nl/~frw/people/koops/cls2.htm>, 2001.
[BrSchn96-1]
BRUCE SCHNEIER, Angewandte Kryptographie. Protokolle, Algorithmen und Sourcecode in C, Addison-Wesley 1996.
[BrSchn98-1]
BRUCE SCHNEIER, MUDGE, Cryptanalysis of Microsoft’s Point-toPoint Tunneling Protocol (PPTP), Proceedings of the 5th ACM
Conference on Communications and Computer Security, ACM
Press 1998.
[BrSchn99-1]
BRUCE SCHNEIER, MUDGE, Cryptanalysis of Microsoft’s PPTP
Authentication Extensions (MS-CHAPv2), <URL: http://
www.counterpane.com/pptpv2.pdf>, 1999.
[BrSchn99-2]
BRUCE SCHNEIER, NIELS FERGUSON, A Cryptographic Evaluation
of IPsec, <URL: http://www.counterpane.com/ipsec.pdf>, 1999.
[BSI97]
BUNDESAMT FÜR SICHERHEIT IN DER INFORMATIONSTECHNIK,
Ende-zu-Ende-Sicherheit für elektronischen Dokumententausch Infrastruktur und Leitlinien für die Bundesverwaltung, <URL:
http://www.bsi.bund.de/literat/sphinx/endeende.htm>, 1997.
[BSI98]
BUNDESAMT FÜR SICHERHEIT IN DER INFORMATIONSTECHNIK,
Schnittstellenspezifikation zur Entwicklung interoperabler Verfahren und Komponenten nach SigG/SigV - Zertifikate, 1998.
[CHR00]
HEISE, Bürgerrechtler: Studie sollte FBI-Schnüffel-Tool "reinwaschen", <URL: http://www.heise.de/newsticker/data/chr23.11.00-000/>, Heise Online News, 2000.
[CSH99]
CHRISTIANE SCHULZKI-HADDOUTI, Markt- oder Staatsmacht Streit um digitale Signaturen, c’t 1/99, S. 58ff, 1999.
139
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
[CSH00]
CHRISTIANE SCHULZKI-HADDOUTI, Kontrollierte Liberalisierung USA kündigen weitere Lockerungen für Kryptoexporte an, <URL:
http://www.heise.de/tp/deutsch/inhalt/te/5683/1.html>, Heise
Online News, 2000.
[CSH01]
CHRISTIANE SCHULZKI-HADDOUTI, Echelon-Ausschuss setzt auf
Open-Source, <URL: http://www.heise.de/tp/deutsch/special/ech/
7157/1.html>, 2001.
[DaBachf01]
DANIEL BACHFELD, Sicheres Netz im Netz - Der Aufbau von Virtual
Private Networks, c’t 17/01, S. 164ff, 2001
[DFN99-1]
STEFAN KELM, BRITTA LIEDTKE, DFN - PCA: Low-Level Policy Zertifizierungsrichtlinien für das PCA Projekt, <URL: http://
www.pca.dfn.de/dfnpca/policy/ lowlevel.html>, Universität Hamburg, 1999.
[DFN99-2]
STEFAN KELM, BRITTA LIEDTKE, DFN - PCA: Die World Wide Web
Policy - Zertifizierungsrichtlinien für das PCA Projekt, <URL:
http://www.pca.dfn.de/dfnpca/policy/wwwpolicy.html>, Universität Hamburg, 1999.
[DFN00-1]
INGMAR CAMPHAUSEN, STEFAN KELM, BRITTA LIEDTKE, LARS
WEBER, DFN-Bericht Nr. 89 - Aufbau und Betrieb einer Zertifizierungsinstanz, <URL: ftp://ftp.pca.dfn.de/pub/docs/PCA/DFNPCA/handbuch/ca-hb.pdf>, Hamburg 2000.
[DWChad96]
D. W. CHADWICK, Understanding X.500 - The Directory, <URL:
http://www.isi.salford.ac.uk/staff/dwc/Version.Web/Contents.htm>,
1996.
[Entrust00-1]
ENTRUST, Entrust/PKI, and Windows, 2000 IPSec Client Interoperability Guide using Entrust/WebConnector, 4.0a,
<URL: http://www.entrust.com/resources/pdf/
win2kipsec_interop.pdf>, 2000.
[Entrust00-2]
ENTRUST, Key Update and the Complete Story on the Need for Two
Key Pairs, <URL: http://www.entrust.com/resources/pdf/
2keypairs11.pdf>, 2000.
[FlRoe99]
FLORIAN RÖTZER, Auch die Schweiz hat ein Echelon-System,
<URL: http://www.heise.de/tp/deutsch/special/ech/6646/1.html>,
Telepolis, 1999.
[FlRoe00]
FLORIAN RÖTZER, Nichts mehr mit Pretty Good Privacy?, <URL:
http://www.heise.de/tp/deutsch/inhalt/te/4418/1.html>, Telepolis,
2000.
[FUHagen01]
FERNUNIVERSITÄT HAGEN, FernUni-CA: Policy, <URL: http://
www.fernuni-hagen.de/CA/policy.html>, 2001.
[GeLaga98]
GERHARD LAGA, Internet im rechtsfreien Raum? Die Anwendbarkeit bestehender Gesetze auf das Internet, im Zeitalter der Informationsgesellschaft, <URL: http://www.laga.at/Dissertation/
Diss.html>, Wien 1998.
[GnuPG00]
GNU PRIVACY GUARD, The GNU Privacy Guard Handbook (German) - Das GNU-Handbuch zum Schutze der Privatsphäre, <URL:
140
Anhang D: Literaturverzeichnis
http://www.gnupg.org/gph/de/manual.pdf>, 2000.
[GoRo97-1]
DAVID GOODMAN, COLIN ROBBINS, Understanding LDAP and
X.500, <URL: http://www.nexor.com/info/understandldap.htm>,
EEMA Directory Group 1997.
[GoRo00-1]
DAVID GOODMAN, COLIN ROBBINS, LDAP – Moving Forward,
Frequently Asked Questions Version 2.3, <URL: http://
www.nexor.com/info/LDAP-FAQ-23.htm>, EEMA Directory
Group 2000.
[GoRo00-2]
DAVID GOODMAN, COLIN ROBBINS, LDAP – Moving Forward,
RFCs & Internet Drafts Version 1.2, <URL: http://www.nexor.com/
info/LDAP-RFCs.htm>, EEMA Directory Group 2000.
[HaGie01]
HARTMUT GIESELMANN, CIA hört mit - und versteht, <URL: http://
www.heise.de/newsticker/data/hag-05.03.01-000/>, Heise Online
News, 2001.
[HartMase00]
MICHAEL HARTMANN, SÖNKE MASEBERG, Fail-Safe-Konzept für
FlexiPKI, Technical Report No. TI-11/00, TU Darmstadt 2000.
[HousPolk01]
RUSS HOUSLEY, TIM POLK, Planning for PKI - Best Practices
Guide for Deploying Public Key Infrastructure, Wiley Computer
Publishing 2001.
[HtRiele99]
HERMAN TE RIELE, Security of E-commerce threatened by 512-bit
number factorization, CWI press release, Amsterdam 1999.
[IBM98]
HEINZ JOHNER, LARRY BROWN, FRANZ-STEFAN HINNER, WOLFGANG REIS, JOHAN WESTMAN, Understanding LDAP, <URL: http://
www.redbooks.ibm.com/pubs/pdfs/redbooks/sg244986.pdf>, USA
1998.
[IETF-1]
IETF WORKING GROUP, Public-Key Infrastructure (X.509) (pkix),
<URL: http://www.ietf.cnri.reston.va.us/html.charters/pkix-charter.html>, 2001.
[IETF-2]
IETF WORKING GROUP, S/MIME Mail Security (smime) , <URL:
http://www.ietf.cnri.reston.va.us/html.charters/smime-charter.html>, 2001.
[IETF-3]
D. W. CHADWICK, S. LEGG, Internet Draft - Internet X.509 Public
Key Infrastructure, Additional LDAP Schema for PKIs and PMIs,
<URL: http://www.imc.org/draft-ietf-pkix-ldap-schema>, IETF
Working Group, 2000.
[IETF-4]
D.W.CHADWICK, Internet Draft - Internet X.509 Public Key Infrastructure, Operational Protocols - LDAPv3, <URL: http://
www.imc.org/draft-ietf-pkix-ldap-v3/>, IETF Working Group,
2000.
[IETF-5]
IETF WORKING GROUP, S/MIME Working Group, <URL: http://
www.imc.org/ietf-smime/>.
[IETF-6]
RODNEY THAYER, Internet Draft - PKI Requirements for IP Security, <URL: http://www.ietf.org/proceedings/99mar/I-D/draft-ietfipsec-pki-req-01.txt>, 1998.
141
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
[IN96]
INDIVIDUAL NETWORK E.V. , FAQ: Die Policy der Individual Network Zertifikationshierarchie, <URL: http://www.in-ca.individual.net/faq.html>, 1996.
[IN97]
INDIVIDUAL NETWORK E.V. , Certification Policy, <URL: http://
www.in-ca.individual.net/policy.html>, 1997.
[IMachef98]
IRA MACHEFSKY, A Total Economic Impact, Analysis of Two PKI
Vendors: Entrust and VeriSign, <URL://http://www.entrust.com/
resources/pdf/pki_tei_report.pdf>, Technical Report, Giga Information Group 1998.
[JoBuch99-1]
JOHANNES BUCHMANN, MARKUS RUPPERT, MARKUS TAK, FlexiPKI - Realisierung einer flexiblen, Public-Key-Infrastuktur, Technical Report No. TI-22/99, TU Darmstadt 1999.
[JoBuch99-2]
JOHANNES BUCHMANN, MARKUS MAURER, Wie sicher ist die Public-Key-Kryptographie? Technical Report No. TI-2/99, TU Darmstadt 1999.
[JoBuch00-1]
JOHANNES BUCHMANN, Einführung in die Kryptographie, Springer
Verlag Heidelberg, 2000.
[JoEisinger01]
JOCHEN EISINGER, Exploiting known security holes in Microsoft's,
PPTP Authentication Extensions (MS-CHAPv2), <URL: http://
mopo.informatik.uni-freiburg.de/pptp_mschapv2/
pptp_mschapv2.pdf>, Universität Freiburg 2001.
[JoPflue01]
JÖRG PFLÜGLER, Datenschutz und Datensicherheit - Kryptographische Sicherheit und Schlüssellängen, <URL: http://
igw.tuwien.ac.at/igw/Lehre/DuD2000_skripte/
DsDs2000Skript4.pdf>, Wien 2001.
[JuSch01-1]
JÜRGEN SCHMIDT, PGP-Sicherheitslücke bestätigt, <URL: http://
www.heise.de/newsticker/data/ju-22.03.01-001/>, Heise Online
News, 2001.
[JuSch01-2]
JÜRGEN SCHMIDT, PGP-Schlüssel lassen sich prüfen, <URL: http://
www.heise.de/newsticker/data/ju-23.03.01-000/>, Heise Online
News, 2001.
[JuSch01-3]
JÜRGEN SCHMIDT, PETER SIERING, Moderner Tunnelbau - Der Weg
zum eigenen Virtual Private Network, c’t 18/01, S. 182ff, 2001.
[JvBuu01]
JELLE VAN BUUREN, Holländische Regierung gibt Existenz von
Echelon zu... <URL: http://www.heise.de/tp/deutsch/special/ech/
4728/1.html>, Telepolis, 2001.
[KKLV98]
KAPPEL, KOLLAR, LEDERHILGER, VERHONIG, Zertifizierung und
Public Key- Infrastruktur, <URL: http://wicky.wu-wien.ac.at/
finanz/publications/Kapp98.pdf>, Wien 1998.
[KaFuhr00]
KAI FUHRBERG, Internet- Sicherheit. Browser, Firewalls und Verschlüsselung, Hanser Verlag 2000.
[KlimaRosa01] VLASTIMIL KLÍMA, TOMÁŠ ROSA, Attack on Private Signature
Keys, of the OpenPGP format, PGP programs and other applications, compatible with OpenPGP, <URL: http://www.i.cz/en/pdf/
142
Anhang D: Literaturverzeichnis
openPGP_attack_ENGvktr.pdf>, Prag 2001.
[KlSchm98]
KLAUS SCHMEH, Safer Net - Kryptografie im Internet und Intranet,
dpunkt-Verlag Heidelberg, 1998.
[KlSchm01]
KLAUS SCHMEH, MATTHIAS NIESING, Schlüssel des Vertrauens Digitale Ausweise im Internet, c’t 4/01, Seite 224ff, 2001.
[KoMa01]
KONSTANTIN MALAKAS, Heilige Kuh - Gesetz zur elektronischen
Signatur, c’t 5/01, S. 47, 2001.
[KuSp99]
DR. KURT SPANIER, LDAP und die Ablage von PGP-Schlüsseln im
X.500-Direktory, <URL: http://wwwvs.informatik.fh-wiesbaden.de/
local/info/LDAP/LDAP-PGP.ps>, Universität Thübingen, 1999.
[LenVerh99]
ARJEN K. LENSTRA, ERIC R. VERHEUL, Selecting Cryptographic
Key Sizes, <URL: http://www.cryptosavvy.com/Joc.pdf>, 1999.
[MiKjoe01]
MICHAEL KJÖRLING, PGP 7.0 signature verication vulnerability,
<URL: http://www.net-security.org/text/bugs/
979055938,89332,.shtml>, Help Net Security 2001.
[MS99-1]
FRANCO MICHELA, MARKUS PALME, Microsoft Active Directory,
Microsoft Press Deutschland 1999.
[MS99-2]
MICROSOFT KNOWLEDGE BASE, Enabling Certificate Revocation
Checking in Internet Information Server 4.0 (Q232165), <URL:
http://support.microsoft.com/default.aspx?scid=kb;ENUS;q232165>, Microsoft Corporation 1999.
[MS00-1]
MICROSOFT, Certificate Server 1.0 Update - US Version,
<URL: ftp://ftp.microsoft.com/bussys/iis/iis-public/fixes/usa/certserv/>, Microsoft Corporation 2000.
[MS00-2]
MICROSOFT KNOWLEDGE BASE, How to Configure Certificate
Server for Use with SSL on IIS (Q218445), <URL: http://support.microsoft.com/default.aspx?scid=kb;EN-US;q218445>,
Microsoft Corporation 2000.
[MS00-3]
MICROSOFT, Microsoft Windows 2000 Netwerkinfrastruktur-Administration - Original Microsoft Training, Microsoft Press Deutschland 2000.
[MS00-4]
MICROSOFT, Microsoft Windows 2000 Server - Die technische Referenz: TCP/IP-Netzwerke. Microsoft Press Deutschland 2000.
[MS00-5]
MICROSOFT, Microsoft Windows 2000 Server - Die technische Referenz: Verteilte Systeme, Microsoft Press Deutschland 2000.
[MS00-6]
MICROSOFT, Microsoft Windows 2000 Server - Die technische Referenz: Internetworking, Microsoft Press Deutschland 2000.
[MS00-7]
MICROSOFT, Microsoft Windows 2000 Server - Die technische Referenz: Microsoft-Internet-Informationsdienste, Microsoft Press
Deutschland 2000.
[MS00-8]
MICROSOFT, Microsoft Exchange Server - Outlook Web Access in
Exchange 2000 Server: Whitepaper, Microsoft 2000.
[MS01-1]
MICROSOFT, Microsoft Windows 2000 Accelerated Training - Origi-
143
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
nal Microsoft Training, Microsoft Press Deutschland 2001.
[MS01-2]
MICROSOFT TECHNET, Virtual Private Networking with Windows
2000: Deploying Remote Access VPNs, <URL: http://www.microsoft.com/technet/itsolutions/network/deploy/depovg/vpndeply.asp>, Microsoft Corporation 2001.
[MS01-3]
MICROSOFT KNOWLEDGE BASE, SSL (https) Connection Slow with
One Certificate but Faster with Others (Q295070), <URL: http://
support.microsoft.com/default.aspx?scid=kb;en-us;Q295070>,
Microsoft Corporation 2001.
[MiSt99]
MICHAEL STRÖDER, Einführung kryptographischer Techniken zur
gesicherten Nutzung des Internet bei der Propack Data GmbH,
<URL: http://www.stroeder.com/DA/DA.pdf>, Universität Karlsruhe, 1999.
[NS98-1]
NETSCAPE DEVEDGE, Introduction to SSL, <URL: http://developer.netscape.com/docs/manuals/security/sslin/index.htm>, Netscape Communications Corporation 1998.
[NS98-2]
NETSCAPE DEVEDGE, Introduction to Public-Key Cryptography,
<URL: http://developer.netscape.com/docs/manuals/security/pkin/
index.htm>, Netscape Communications Corporation 1998.
[NS99-1]
NETSCAPE DEVEDGE, Netscape Certificate Management System
Installation and Deployment Guide - Appendix B Certificate Extensions, <URL: http://developer.netscape.com/docs/manuals/cms/41/
dep_gide/ext.htm>, Netscape Communications Corporation 1999.
[OLDAP01]
OPENLDAP FOUNDATION, OpenLDAP - open source implementation of the Lightweight Directory Access Protocol, <URL: http://
www.openldap.org/>, 2001.
[PeSiering01]
PETER SIERING, Virtual Public Network - PPTP-Sicherheitslücke
als Einstiegsloch in Uni-Funknetze, c’t 16/01, S. 34, 2001.
[PhZim99]
PHIL ZIMMERMANN, Einführung in die Kryptographie, <URL:
http://www.datensicherheit.nrw.de/pki/manuals/general/>, 1999.
[PioHa99]
JAKUB PIOTROWSKI, TOBIAS HARTMANN, LDAP - Übersicht über
das Chaos, <URL: http://www.informatik.uni-bremen.de/grp/unitel/referat/ldap/ldap.html>, Universität Bremen 1999.
[RaBend01]
RALF BENDRATH, PGP - die ersten zehn Jahre, Telepolis, <URL:
http://www.heise.de/tp/deutsch/inhalt/te/7175/1.html>, 2001.
[RaSend01]
RALF SENDEREK, The Protection of Your Secret Key, Version 2.0,
<URL: http://senderek.de/security/secret-key.protection.html>,
2001.
[RegTP-98]
REGULIERUNGSBEHÖRDE FÜR TELEKOMMUNIKATION UND POST,
Geeignete Kryptoalgorithmen gemäß § 17 Abs. 2 SigV, Bekanntmachung im Bundesanzeiger Nr. 31, S. 1787f, 1998.
[RFC1777]
W. YEONG, T. HOWES, S. KILLE, RFC 1777 - Lightweight Directory
Access Protocol, <URL: ftp://ftp.isi.edu/in-notes/rfc1777.txt>,
1995.
144
Anhang D: Literaturverzeichnis
[RFC1828]
P. METZGER, W. SIMPSON, RFC 1828 - IP Authentication using
Keyed MD5, <URL: http://sunsite.iisc.ernet.in/collection/rfc/
rfc1828.html>, 1995.
[RFC1829]
P. KARN, P. METZGER, W. SIMPSON, RFC 1829 - The ESP DESCBC Transform, <URL: http://sunsite.iisc.ernet.in/collection/rfc/
rfc1829.html>, 1995.
[RFC1960]
T. HOWES, A String Representation of LDAP Search Filters, <URL:
ftp://ftp.isi.edu/in-notes/rfc1960.txt>, 1996.
[RFC2251]
M. WAHL, T. HOWES, S. KILLE, RFC 2251 - Lightweight Directory
Access Protocol (v3), <URL: ftp://ftp.isi.edu/in-notes/rfc2251.txt>,
1997.
[RFC2254]
T. HOWES, The String Representation of LDAP Search Filters,
<URL: ftp://ftp.isi.edu/in-notes/rfc2254.txt>, 1997.
[RFC2255]
T. HOWES, M. SMITH, RFC 2255 - The LDAP URL Format, <URL:
ftp://ftp.isi.edu/in-notes/rfc2255.txt>, 1997.
[RFC2307]
L. HOWARD, RFC 2307 - An Approach for Using LDAP as a Network Information Service, <URL: http://sunsite.iisc.ernet.in/collection/rfc/rfc2307.html>, 1998.
[RFC2402]
S. KENT, R. ATKINSON, RFC 2402 - IP Authentication Header,
<URL: http://sunsite.iisc.ernet.in/collection/rfc/rfc2402.html>,
1998.
[RFC2406]
S. KENT, R. ATKINSON, RFC 2406 - IP Encapsulating Security
Payload (ESP), <URL: http://sunsite.iisc.ernet.in/collection/rfc/
rfc2406.html>, 1998.
[RFC2408]
D. MAUGHAN, M. SCHERTLER, M. SCHNEIDER, J. TURNER, RFC
2408 - Internet Security Association and Key Management Protocol
(ISAKMP), <URL: http://sunsite.iisc.ernet.in/collection/rfc/
rfc2408.html>, 1998.
[RFC2409]
D. HARKINS, D. CARREL, RFC 2409 - The Internet Key Exchange
(IKE), <URL: http://sunsite.iisc.ernet.in/collection/rfc/
rfc2409.html>, 1998.
[RFC2440]
DONNERHACKE, CALLAS, FINNEY, THAYER, RFC 2440 - OpenPGP
Message Format, <URL: ftp://ftp.ietf.org/rfc/rfc2440.txt>, 1998.
[RFC2459]
HOUSLEY, FORD, POLK, SOLO, RFC 2459 - Internet X.509 Public
Key Infrastructure, Certificate and CRL Profile, <URL: ftp://
ftp.isi.edu/in-notes/rfc2459.txt>, 1999.
[RFC2510]
C. ADAMS, S. FARRELL, RFC 2510 - Internet X.509 Public Key
Infrastructure, Certificate Management Protocols, <URL: ftp://
ftp.isi.edu/in-notes/rfc2510.txt>, 1999
[RFC2632]
B. RAMSDELL, RFC 2632 - S/MIME Version 3 Certificate Handling, <URL: ftp://ftp.ietf.org/rfc/rfc2632.txt>, 1999.
[RFC2633]
B. RAMSDELL, RFC 2633 - S/MIME Version 3 Message Specification, <URL: ftp://ftp.ietf.org/rfc/rfc2633.txt>, 1999.
[RSAFAQ]
RSA SECURITY INC., S/MIME Frequently Asked Questions, <URL:
145
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
http://www.rsasecurity.com/standards/smime/faq.html>.
[RSA93-1]
RSA SECURITY INC., PKCS #7 - Cryptographic Message Syntax
Standard, Version 1.5, <URL:ftp://ftp.rsasecurity.com/pub/pkcs/ps/
pkcs-7.ps.gz>, RSA Laboratories 1993.
[RSA93-2]
BURTON S., KALISKI JR., An Overview of the PKCS Standards,
<URL: ftp://ftp.rsasecurity.com/pub/pkcs/ascii/overview.asc>, RSA
Laboratories 1993.
[RSA99-1]
RSA SECURITY INC., PKCS #12 v1.0: Personal Information
Exchange Syntax, <URL: ftp://ftp.rsasecurity.com/pub/pkcs/pkcs12/pkcs-12v1.pdf>, RSA Laboratories 1999.
[RSA99-2]
RSA SECURITY INC., Factorization of RSA-155, <URL: http://
www.rsasecurity.com/rsalabs/challenges/factoring/rsa155.html>,
RSA Laboratories 1999.
[RSA99-3]
RSA SECURITY INC., Factorization of RSA-155 - Frequently Asked
Questions, <URL: http://www.rsasecurity.com/rsalabs/challenges/
factoring/rsa155_faq.html>, RSA Laboratories 1999.
[RSA00-1]
RSA SECURITY INC., PKCS #10 v1.7: Certification Request Syntax
Standard, <URL: ftp://ftp.rsasecurity.com/pub/pkcs/pkcs-10/pkcs10v1_7.pdf>, RSA Laboratories 2000.
[RSA00-2]
RSA SECURITY INC. PKCS #11 v2.11 Draft 1: Cryptographic Token
Interface, Standard, <URL: ftp://ftp.rsasecurity.com/pub/pkcs/pkcs11/v211/pkcs11v2-11d1.pdf>, RSA Laboratories 2000.
[SigG97-1]
DEUTSCHER BUNDESTAG, IuKDG, Artikel 3: Gesetz zur digitalen
Signatur (Signaturgesetz - SigG), <URL: http://www.iid.de/rahmen/
iukdgbt.html>, 1997.
[SigG97-2]
BUNDESREGIERUNG, Verordnung zur digitalen Signatur, (Signaturverordnung - SigV), <URL: http://www.iid.de/rahmen/sigv.html>,
1997.
[SigG97-3]
BUNDESMINISTERIUM FÜR BILDUNG, WISSENSCHAFT, FORSCHUNG
UND TECHNOLOGIE, Begründung zur Verordnung zur digitalen Signatur, <URL: http://www.iid.de/rahmen/sigv_begr.html>, 1997.
[SigG01-1]
DEUTSCHER BUNDESTAG, Gesetz über Rahmenbedingungen, für
elektronische Signaturen, und zur Änderung weiterer Vorschriften,
<URL: http://www.iid.de/iukdg/gesetz/SigAendG2.pdf>, 2001.
[SigG01-2]
BUNDESMINISTERIUM DER JUSTIZ, Gesetz zur Anpassung der Formvorschriften des Privatrechts und anderer Vorschriften an den modernen Rechtsgeschäftsverkehr, <URL: http://www.juramail.com/
news/gesetze/formtext.html>, Referentenentwurf 2001.
[SiLGarf94]
SIMSON L. GARFINKEL, PGP, O’Reilly 1994.
[StKrem01]
STEFAN KREMPL, Wer braucht digitale Signaturen? - Von der Public-Key-Infrastruktur zur Sicherungszwangsgesellschaft, c't 2/01, S.
60ff, 2001.
[TcTrust01]
TC-TRUSTCENTER AG, TC Server - Technische Informationen,
<URL: http://www.trustcenter.de/products/server/de/technik.htm>,
146
Anhang D: Literaturverzeichnis
2001.
[ThBend99]
THOMAS BENDLER, Linux LDAP HOWTO, <URL: http://www.tuharburg.de/dlhp/HOWTO/DE-LDAP-HOWTO.html>, 1999.
[TMoses97]
DR. TIM MOSES, Bulding a public key infrastructure - in-source or
out-source, Entrust Technologies 1997.
[UlBantle00]
ULRICH BANTLE, USA lockert Export von Kryptografie, <URL:
http://www.tecchannel.de/news/20000718/thema200007182012.html>, tecChannel-News 2000.
[UtRoos01]
UTE ROOS, Digitale Unterschrift: fast wie eigenhändig, <URL:
http://www.heise.de/newsticker/data/ur-01.08.01-000/>, Heise
Online News, 2001.
[VoSchw01]
VOLKER SCHWABEROW, OpenLDAP-Praxis - Straffe Verwaltung,
<URL: http://www.linux-magazin.de/ausgabe/2001/05/OpenLDAP/
openldap.html>, Linux-Magazin 2001.
[Wassenaar00]
DIVERSE STAATEN, The Wassenaar Arrangement on Export Controls for Conventional Arms and Dual-Use Goods and Technologies, <URL: http://www.wassenaar.org/docs/index1.html>, 2000.
[WoKopp98]
WOLFGANG KOPP, Rechtsfragen der Kryptographie und der digitalen Signatur, <URL: http://www.wolfgang-kopp.de/krypto.pdf>,
Universität München, 1998.
147
Konzept und Aufbau einer prototypischen Public Key Infrastruktur auf Basis von FlexiTrust
148