Netzwerksicherheit Übung 5 Transport Layer Security Tobias Limmer, Christoph Sommer, Christian Berger Computer Networks and Communication Systems Dept. of Computer Science, University of Erlangen-Nuremberg, Germany 8. 10.12.2009 Tobias Limmer, Christoph Sommer, Christian Berger: Netzwerksicherheit Übung 5 Transport Layer Security 1 / 13
Einführung Transport Layer Security (TLS) hervorgegangen aus Secure Socket Layer (SSL) TLS 1.0 ist Nachfolger von SSL 3 SSL/TLS stellt Werkzeuge für... Authentifizierung mit Zertifikaten (RSA, DSA, etc.) Schlüsseltausch (RSA, DH, etc.) Verschlüsselung (RC4, DES, 3DES, IDEA, AES, etc.) Integritätsprüfung (MD5, SHA-1, etc.) Konvention: Dienst + s = Dienst über TLS https = http + TLS pop3s = pop3 + TLS Tobias Limmer, Christoph Sommer, Christian Berger: Netzwerksicherheit Übung 5 Transport Layer Security 2 / 13
Zertifikats-basierte Authentifizierung Inhalt: Public-Key Klartext-Name... Signatur einer CA Erlaubt sichere Kommunikation zwischen Teilnehmern Voraussetzung: beide können der CA vertrauen Tobias Limmer, Christoph Sommer, Christian Berger: Netzwerksicherheit Übung 5 Transport Layer Security 3 / 13
X509-Zertifikate Version Certificate Serial Number Signature Algorithm ID Algorithm Parameters Issuer Name Period of Not Before Validity Not After Subject s Public Key Info Subject Name Algorithm ID Parameters Key Issuer Unique ID Subject Unique ID Extensions Signature Ve ersion 1 Ve ersion 2 Ve ersion 3 All Versions Tobias Limmer, Christoph Sommer, Christian Berger: Netzwerksicherheit Übung 5 Transport Layer Security 4 / 13
Zertifikathierarchie Root CA Foo CA Bar CA Baz CA Alice Bob Eve Tobias Limmer, Christoph Sommer, Christian Berger: Netzwerksicherheit Übung 5 Transport Layer Security 5 / 13
OpenSSL: Was es sonst noch so kann... Primzahlen generieren, PKCS12, PKCS8, PKCS7, Diffie-Hellman-Parameter Zufallszahlen, RSA, X509, CAs, Hardwareunterstützung für Cryptodevices CRL (Certificate Revocation Lists) Message-Digests (MD2, MD4, MD5, MDC2, RMD160, SHA, SHA1) Ciphers (AES, BF, Camellia, CAST, IDEA, DES, 3DES, RC2, RC4, RC5) Tobias Limmer, Christoph Sommer, Christian Berger: Netzwerksicherheit Übung 5 Transport Layer Security 6 / 13
OpenSSL: Dateinamensverwirrung PEM = Privacy Enhanced Mail CSR = Certificate Sign Request CRT = Certificate KEY = Key... Tobias Limmer, Christoph Sommer, Christian Berger: Netzwerksicherheit Übung 5 Transport Layer Security 7 / 13
Benutzung: Grundlegendes RSA-Schlüsselpaar erstellen, 1024 Bits, unverschlüsselt: openssl genrsa -out keypair.pem 1024 RSA-Schlüsselpaar erstellen, 1024 Bits, mit AES 256 verschlüsselt: openssl genrsa -aes256 -out keypair.pem 1024 RSA-Schlüsselpaar anzeigen: openssl rsa -text -in keypair.pem Tobias Limmer, Christoph Sommer, Christian Berger: Netzwerksicherheit Übung 5 Transport Layer Security 8 / 13
Benutzung: Grundlegendes Selbstsigniertes Root-Zertifikat aus RSA-Schlüsselpaar erzeugen: openssl req -new -x509 -key keypair.pem -out ca.crt Zertifikat anzeigen: openssl x509 -text -in ca.crt Tobias Limmer, Christoph Sommer, Christian Berger: Netzwerksicherheit Übung 5 Transport Layer Security 9 / 13
Benutzung: Grundlegendes CSR aus RSA-Schlüsselpaar erzeugen: openssl req -new -key keypair.pem -out request.csr CSR anzeigen: openssl req -text -in request.csr Tobias Limmer, Christoph Sommer, Christian Berger: Netzwerksicherheit Übung 5 Transport Layer Security 10 / 13
Benutzung: Grundlegendes Signieren eines CSR durch eine CA: openssl x509 -req -in request.csr -CA ca.crt -CAkey cakeypair.pem -CAcreateserial -out usercert.crt Tobias Limmer, Christoph Sommer, Christian Berger: Netzwerksicherheit Übung 5 Transport Layer Security 11 / 13
Unsere NetSec-CA SHA-1-Fingerprint: 1C:D2:10:68:7F:86:E5:1C:D0:84 74:3C:0A:81:AB:80:5D:29:D1:29 Tobias Limmer, Christoph Sommer, Christian Berger: Netzwerksicherheit Übung 5 Transport Layer Security 12 / 13
Euer eigenes CSR Schlüssel erstellen: openssl genrsa -aes256 -out gruppe99.key 1024 CSR erzeugen: openssl req -new -utf8 -key gruppe99.key -out gruppe99.csr C (Country Name): DE ST (State): Bayern L (Locality): Erlangen O (Organization): FAU OU (Organizational Unit): CS 7 NetSec CN (Common Name): Gruppe 99, [NAME] EMail Address: [Mailadresse] Tobias Limmer, Christoph Sommer, Christian Berger: Netzwerksicherheit Übung 5 Transport Layer Security 13 / 13