Seminar Internet-Technologie Zertifikate, SSL, SSH, HTTPS Christian Kothe Wintersemester 2008 / 2009
Inhalt Asymmetrisches Kryptosystem Digitale Zertifikate Zertifikatsformat X.509 Extended-Validation-Zertifikat SSL Aufgaben Beispiel OpenSSL HTTPS Weitere SSL-Dienste SSH Seminar Internet-Technologie - Christian Kothe 2
Asymmetrisches Kryptosystem Jeder Teilnehmer hat ein Schlüsselpaar (geheimen und öffentlichen Schlüssel) Mit öffentlichem Schlüssel kann nur verschlüsselt werden Geheimer (privater) Schlüssel dient nur dem Entschlüsseln Problem: Identität des Partners? Seminar Internet-Technologie - Christian Kothe 3
Digitale Zertifikate Öffentlichen Schlüssel bestätigen Identität zuordnen Überprüfung der kryptographischen Verfahren Seminar Internet-Technologie - Christian Kothe 4
Digitale Zertifikate Name (eindeutige Bezeichnung des Ausstellers) Regeln und Verfahren für die Erstellung Gültigkeitsdauer Öffentlicher Schlüssel Name vom Inhaber des öffentlichen Schlüssels Anwendungs- und Geltungsbereich digitale Signatur des Ausstellers Seminar Internet-Technologie - Christian Kothe 5
Zertifikatsformat X.509 Public-key and attribute certificate frameworks Derzeit der wichtigste Standard für digitale Zertifikate X.509 wurde erstmals 1988 veröffentlicht Aktuell ist Version 3 (X.509v3) Seminar Internet-Technologie - Christian Kothe 6
Extended-Validation-Zertifikat X.509-Zertifikat strenge Vergabekriterien: Validierung / Festellung des Namens und der Geschäftsadresse Antragssteller muss eigentümer der Domain sein Sicherstellung der Befugnis der zur Verfügung stehend Daten Guidelines for Extended Validation Certificates Entwicklung: CA/Browser Forum seit 2007 Aktuell ist Version 1.1 (April 2008) Seminar Internet-Technologie - Christian Kothe 7
Zertifizierungsstelle (Certificate Authority) Client- und E-Mail-Zertifikate Code Signing-Zertifikate Root-Signing Shared SSL-Hosting Beispiele: Versigin PSW Group CAcert Community (https://www.cacert.org) Seminar Internet-Technologie - Christian Kothe 8
SSL Secure Socket Layer Seminar Internet-Technologie - Christian Kothe 9 Quelle: http://krum.rz.uni-mannheim.de/web-tech2001w/images/ssl-bild3.gif
SSL - Aufgaben Authentifikation mit asymmetrischem Schlüssel Sichere Ende-zu-Ende Verbindung mit Sitzungsschlüssel aufbauen Kryptografische Verfahren für die Sitzung festlegen Datenintegrität gewährleisten Seminar Internet-Technologie - Christian Kothe 10
SSL Beispiel Bob möchte Verbindung zu Alice Alice besitzt: Geheimen und öffentlichen Schlüssel Zertifikat verknüpft mit dem öffentlichen Schlüssel Bob sendet Hallo-Nachricht an Alice Alice antwortet mit ihrem Zertifikat Bob überprüft das Zertifat Bob erzeugt ein Master Secret Seminar Internet-Technologie - Christian Kothe 11
SSL Beispiel Bob verschlüsselt das MS mit Alice ihrem öffentlichem Schlüssel und erhält das EMS Bob sendet das EMS an Alice Aus diesem MS werden nun vier neue Schlüssel erzeugt: Zwei Sitzungsschlüssel (Datenverschlüsselung) Zwei Mac-Schlüssel (Integritätsprüfung) Nun erfolgt Übertragung in records Seminar Internet-Technologie - Christian Kothe 12
SSL Asymmetrische Verschlüsselungstechniken RSA Diffie-Hellmann KEA Symmetrische Chiffren 168 Bit 3DES 128 Bit RC3 56 Bit DES 128 / 256 Bit AES (nur für TLS) Seminar Internet-Technologie - Christian Kothe 13
SSL-Schichten Record-Schicht Fragmentierung der Daten Berechnung der gemeinsamen Sitzungsschlüssel Verschlüsselung der SSL-Records Handshake-Schicht Aushandeln der kryptografischen Verfahren Authentifikation der Kommunikationspartner Change Cipher Spec Alert-Protokoll Seminar Internet-Technologie - Christian Kothe 14
OpenSSL Open Source implementierung von SSL / TLS Erstellung von Schlüsseln mit gängigen Verfahren Verwaltung von Zertifikaten Ver- und Entschlüsselung mit allen gänigen Chiffren SSL / TLS Client und Server Tests Seminar Internet-Technologie - Christian Kothe 15
SSL verwenden Einfache Programmierung Viele APIs Package javax.net.ssl Libssl Wenig Aufwand Komprimierung möglich z.b. mit zlib Seminar Internet-Technologie - Christian Kothe 16
HTTPS HyperText Transfer Protocol Secure Verschlüsselung und Authentifizierung zwischen Webbrowser und Webserver Basiert auf SSL / TLS Wurde von Netscape entwickelt und erstmals 1994 mit SSL 1.0 vorgestellt Standardport 443 (TCP) Seminar Internet-Technologie - Christian Kothe 17
HTTPS-Anwahl Es wird nur https:// akzeptiert Durch klicken eines Links Durch URL-Rewriting mit einem Script Manuelles ändern von http:// in https:// Seminar Internet-Technologie - Christian Kothe 18
Weitere SSL-Dienste Dienst Port ssmtp 456 snntp 563 telnets 992 ftps 990 ftp-data 889 ssip 5061 vpn variabel Seminar Internet-Technologie - Christian Kothe 19
SSH Secure Shell Verschlüsselte Verbindung mit entferntem Rechner herstellen Erste Entwicklung 1995 SSH-1 SSH-2 entwicklung in 1996 Kommerziell Verbesserte Algorithmen zur Verschlüsselung Seminar Internet-Technologie - Christian Kothe 20
OpenSSH Open Source implementierung http://www.openssh.com Erstes Release 1999 Aktuell ist Version 5.1 vom 21. Juli 2008 PuTTY Seminar Internet-Technologie - Christian Kothe 21
OpenSSH Softwarepaket SSH remote shell X-Forwarding, sicheres Portforwarding (-L, -R) SCP, SFTP Datenübertragung SSHD Daemon (Serverdienst) Zahlreiche Werkzeuge für die Schlüsselverwaltung: ssh-keygen, ssh-keyscan, ssh-agent, ssh-add Seminar Internet-Technologie - Christian Kothe 22
Quellen http://de.wikipedia.org/wiki/x.509 http://de.wikipedia.org/wiki/asymmetrisches_kryptosystem http://de.wikipedia.org/wiki/transport_layer_security http://www.cabforum.org/ http://tools.ietf.org/html/rfc3280 http://www.eckner.org/ssl.pdf http://www.bsi.de/zertifiz/akkred/index.htm http://de.wikipedia.org/wiki/https http://www.openssh.com IT-Sicherheit (Prof. Dr. Claudia Eckert) Computernetzwerke (Kurose, Ross) Seminar Internet-Technologie - Christian Kothe 23
Ende Vielen Dank für die Aufmerksamkeit Fragen? Seminar Internet-Technologie - Christian Kothe 24