Cryptography Reference
In-Depth Information
Schlüssel zu Generierung von MACs (Message Authentication Codes) zur Integritätssiche-
rung (Kap. 3.4)
Optional Initialisierungsvektoren (IV) für die Initialisierung der symmetrischen Verschlüs-
selung z.B. für den Betrieb der 3DES-Verschlüsselung im CBC-Modus (Cipher Block
Chaining, Kap. 2.7).
Abgesehen von der optionalen CertificateVerify- Nachricht bei der Client-Authentisierung ist
jetzt das eigentliche Handshake abgeschlossen. Die ChangeCipherSpec- Nachricht aktiviert die
Verschlüsselungs- und MAC-Verfahren und Finished ist dann die erste Nachricht, die über die
gerade ausgehandelten kryptographischen Mechanismen geschützt ist. Finished kann deshalb
nur vom Server verstanden bzw. gesendet werden, wenn er erfolgreich die ClientKeyExchan-
ge -Nachricht dekodieren konnte. Der in der Finished -Nachricht enthaltene Hashwert über alle
bisher ausgetauschten Nachrichten sichert zusätzlich den SSL-Handshake nochmals ab.
Die in Abb. 6-7 gestrichelten Nachrichten sind optional, wenn der Server mit einem Certifica-
teRequest eine Authentisierung des Clients fordert. Der Client verschlüsselt die CertifcateVeri-
fy -Nachricht mit seinem privaten Schlüssel PrivKey Client . Umgekehrt ist jetzt der SSL-Server
in der Lage, mit dem zuvor in der Certificate -Nachricht empfangenen Client-Zertifikat die
Authentizität des Clients zu überprüfen. Dazu extrahiert er den öffentlichen Schlüssel des
Clients aus dem Client-Zertifikat (X.509-Zertifikat) und entschlüsselt damit die CertificateVe-
rify-Nachricht.
Wie aus dem gerade dargestellten Ablauf ersichtlich wird, unterliegt der private Signatur-
schlüssel des Servers den höchsten Sicherheitsanforderungen. Deshalb ist er am besten auf
einer Chipkarte, einem Token oder HSM (Hardware Security Module) untergebracht. Dasselbe
gilt übrigens auch für den privaten Schlüssel des Clients, falls eine Client-Authentisierung
gefordert ist. In den meisten Fällen wird der private Signaturschlüssel des Clients auf einer
gängigen Chipkarte nach ISO/IEC 7816 gespeichert.
6.3.2 Sicherung über SSL-Records
Nach dem erfolgreichen Handshake können jetzt Daten des Applikationsprotokolls, wie in
Abb. 6-5 dargestellt, über die unterlagerte SSL-Record-Schicht gesichert werden. Dazu stehen
vier Schlüssel zur Verfügung, die wie beschrieben, im Handshake ausgehandelt wurden:
Ein symmetrischer Schlüssel K C für die Verschlüsselung der Daten, die der Client an den
Server sendet,
ein symmetrischer Schlüssel K S für die Verschlüsselung der Antwort vom Server,
ein symmetrischer MAC-Schlüssel K MAC-C zur Integritätssicherung der Anfrage, die der
Client an den Server schickt,
ein symmetrischer MAC-Schlüssel K MAC-S zur Integritätssicherung der Daten, die der
Client vom Server empfängt.
Aus Sicherheitsgründen wird immer nur ein Schlüssel für eine Operation benutzt und niemals
ein Schlüssel für mehrere Operationen, da ansonsten die Gefahr besteht, aus den verschlüssel-
ten Daten auf den geheimen, symmetrischen Schlüssel Rückschlüsse zu ziehen.
Search WWH ::




Custom Search