Secure Socket Layer v. 3.0



Ähnliche Dokumente
Secure Socket Layer V.3.0

IT-Sicherheit Kapitel 11 SSL/TLS

Verteilte Systeme Unsicherheit in Verteilten Systemen

Verteilte Systeme. Übung 10. Jens Müller-Iden

Bernd Blümel. Verschlüsselung. Prof. Dr. Blümel

Erste Vorlesung Kryptographie

SSL/TLS und SSL-Zertifikate

Informatik für Ökonomen II HS 09

SSL Algorithmen und Anwendung

Multicast Security Group Key Management Architecture (MSEC GKMArch)

11. Das RSA Verfahren und andere Verfahren

Ist das so mit HTTPS wirklich eine gute Lösung?

TLS ALS BEISPIEL FÜR EIN SICHERHEITSPROTOKOLL

Secure Sockets Layer (SSL) Prof. Dr. P. Trommler

Netzsicherheit I, WS 2008/2009 Übung 12. Prof. Dr. Jörg Schwenk

FL1 Hosting Technische Informationen

Übersicht. Was ist FTP? Übertragungsmodi. Sicherheit. Öffentliche FTP-Server. FTP-Software

10. Kryptographie. Was ist Kryptographie?

IEEE 802.1x Authentifizierung. IEEE 802.1x Authentifizierung IACBOX.COM. Version Deutsch

Programmiertechnik II

Diffie-Hellman, ElGamal und DSS. Vortrag von David Gümbel am

Sicherheit in Netzwerken. Leonard Claus, WS 2012 / 2013

Virtual Private Network. David Greber und Michael Wäger

Comtarsia SignOn Familie

FOPT 5: Eigenständige Client-Server-Anwendungen (Programmierung verteilter Anwendungen in Java 1)

Stammtisch Zertifikate

2 Die Terminaldienste Prüfungsanforderungen von Microsoft: Lernziele:

Das RSA-Verschlüsselungsverfahren 1 Christian Vollmer

ISA Server Exchange RPC over HTTPS mit NTLM-Authentifizierung

NetMan Desktop Manager Vorbereitung und Konfiguration des Terminalservers

Das Kerberos-Protokoll

HTTPS Checkliste. Version 1.0 ( ) Copyright Hahn und Herden Netzdenke GbR

SSL-Protokoll und Internet-Sicherheit

Nachrichten- Verschlüsselung Mit S/MIME

Administrator Handbuch

Anleitung Thunderbird Verschlu sselung

5. Testen ob TLS 1.0 auf Ihrem System im Internet-Explorer fehlerfrei funktioniert

Beweisbar sichere Verschlüsselung

Konzepte von Betriebssystem-Komponenten Schwerpunkt Authentifizierung. Das Kerberos-Protokoll

Algorithmische Kryptographie

Eine Praxis-orientierte Einführung in die Kryptographie

-Verschlüsselung

Möglichkeiten der verschlüsselten -Kommunikation mit der AUDI AG Stand: 11/2015

Verschlüsseln Sie Ihre Dateien lückenlos Verwenden Sie TrueCrypt, um Ihre Daten zu schützen.

Freie Zertifikate für Schulen und Hochschulen

Herzlich willkommen zum Kurs "MS Outlook Verschlüsseln und digitales Signieren von Nachrichten

Steganos Secure Schritt für Schritt-Anleitung für den Gastzugang SCHRITT 1: AKTIVIERUNG IHRES GASTZUGANGS

Installationsanleitung SSL Zertifikat

Fragen und Antworten zu Secure

Handbuch für Nutzer von Zertifikaten der Zertifizierungsstellen (CAs) des Bayerischen Behördennetzes (BYBN) zur Sicherung von s Teil D7:

Einfache kryptographische Verfahren

Radius Server. Bericht im Studiengang Computerengineering an der HS-Furtwangen. Student: Alphonse Nana Hoessi Martikelnr.:227106

Authentifizierung. Benutzerverwaltung mit Kerberos. Referent: Jochen Merhof

Datenempfang von crossinx

3. Stored Procedures und PL/SQL

Automatische Zertifikatssuche in Outlook-Express einrichten

SSL Secure Socket Layer Algorithmen und Anwendung

Wir empfehlen die Konfiguration mit den Servern secureimap.t-online.de und securepop.t-online.de.

Verschlüsselung. Kirchstraße 18 Steinfelderstraße Birkweiler Bad Bergzabern Fabian Simon Bfit09

Handbuch. timecard Connector Version: REINER SCT Kartengeräte GmbH & Co. KG Goethestr Furtwangen

vorab noch ein paar allgemeine informationen zur d verschlüsselung:

Verschlüsselung der Kommunikation zwischen Rechnern

Schritt-für-Schritt-Anleitung So verschlüsseln Sie Ihr -Konto in Outlook 2003

How to install freesshd

Was ist LDAP. Aufbau einer LDAP-Injection. Sicherheitsmaßnahmen. Agenda. LDAP-Injection. ITSB2006 WS 09/10 Netzwerkkonfiguration und Security

Virtual Private Network

Benutzerhandbuch. Leitfaden zur Benutzung der Anwendung für sicheren Dateitransfer.

Internet Explorer Version 6

Beschreibung und Bedienungsanleitung. Inhaltsverzeichnis: Abbildungsverzeichnis: Werkzeug für verschlüsselte bpks. Dipl.-Ing.

Proxy. Krishna Tateneni Übersetzer: Stefan Winter

FTP-Leitfaden RZ. Benutzerleitfaden

VIRTUAL PRIVATE NETWORKS

-Verschlüsselung mit Geschäftspartnern

Asymmetrische. Verschlüsselungsverfahren. erarbeitet von: Emilia Winkler Christian-Weise-Gymnasium Zittau

Sichere Anleitung Zertifikate / Schlüssel für Kunden der Sparkasse Germersheim-Kandel. Sichere . der

SSH Authentifizierung über Public Key

Web Service Security

Nationale Initiative für Internet- und Informations-Sicherheit

Autorisierung. Sicherheit und Zugriffskontrolle & Erstellen einer Berechtigungskomponente

SSL-Zertifikate. ausgestellt bzw. bezogen von den Informatikdiensten. Dieter Hennig. 25. November ETH Zürich. SSL-Zertifikate.

Algorithmische Kryptographie

Primzahlen und RSA-Verschlüsselung

Datenbank-Verschlüsselung mit DbDefence und Webanwendungen.

-Verschlüsselung

Reale Nutzung kryptographischer Verfahren in TLS/SSL

Exkurs Kryptographie

Import des persönlichen Zertifikats in Outlook 2003

Ein Hinweis vorab: Mailkonfiguration am Beispiel von Thunderbird

Virtual Private Network

Datenaustausch mit Ihren Versicherten einfach und sicher über die Cloud

Schritt-für-Schritt-Anleitung So verschlüsseln Sie Ihr -Konto in der Software 6.0

Anwendungshinweis Nr. 12. Wie konfiguriere ich redundante Serververbindungen

ISA Server 2004 Erstellen einer Webverkettung (Proxy-Chain) - Von Marc Grote

Senden von strukturierten Berichten über das SFTP Häufig gestellte Fragen

Zeichen bei Zahlen entschlüsseln

Konfiguration VLAN's. Konfiguration VLAN's IACBOX.COM. Version Deutsch

Sichere s. Kundeninformation zur Verschlüsselung von s in der L-Bank

Anleitung. Schritt für Schritt: iphone und ipad. Richten Sie Ihr -Konto mit Ihrem iphone oder ipad Schritt für Schritt ein.

INSTALLATION ABACUS ABAWEBCLIENT

Transkript:

Konzepte von Betriebssystem-Komponenten Schwerpunkt Internetsicherheit Secure Socket Layer v. 3.0 (SSLv3) Zheng Yao 05.07.2004-1 -

1. Was ist SSL? SSL steht für Secure Socket Layer, ein Protokoll zur Übertragung von verschlüsselten Informationen. Ursprünglich wurde es von Netscape im Jahr 1994 entwickelt, um mehr Sicherheit für die Online-Transaktion anzubieten. Es wurde im Netscape s Webbrowser und Webserver implementiert. Jetzt wird SSL schon bei den meisten Webbrowsern und -servern verwendet Das SSL-Protokoll befindet sich zwischen die Anwendungsschicht und die Transportschicht und bietet den Schutz für Transportsschicht an. Es läuft auf TCP/IP Protokoll, und wird von den Protokollen wie HyperText Transport Protocol (HTTP), Lightweight Directory Access Protocol (LDAP), Internet Messaging Access Protocol(IMAP) etc. benutzt. Quelle:www.netscape.com SSL wurde für den Einsatz zwischen Client und Server entwickelt. Das Protokoll besteht wesentlich aus drei Teilen [1]: Das Record-Protokoll, dieses Protokoll ist wie eine zusätzliche Schicht über allen SSL- Nachrichten. Es gibt die angewandeten Verschlüsselungs- und Authentifizierungsfunktionen an. Das Handshake-Protokoll, mit diesem Protokoll behandeln Client und Server den Einsatz von kryptographischen Algorithmen und Schlüsseln. Das Alert-Protokoll, dieses Protokoll signalisiert das Auftreten von Fehlern oder den Abbruch einer Kommunikationsverbindung zwischen Server und Client. SSL Handshake SSL Hello Wie wird eine Kommunikationsverbindung mit SSL hergestellt? Abbildung-2 zeigt, wie die SSL-Nachrichten zwischen Client und Server ausgetauscht werden, um eine SSL-Verbindung aufzubauen. Diesen Vorgang nennt man SSL-Hello. Der Vorgang geliedert sich in folgenden Schritte [4]: 1. Client Hello Client sendet die client's SSL Versionnummer, Cipher Einstellung, Zufallsdaten, und die andere Informationen, die bei den Kommunikationen mit SSL für Server nötig sind. 2. Server Hello Server sendet die server's SSL Versionnummer, Cipher Einstellung, Zufallsdaten, und die andere Informationen, die bei den Kommunikationen mit SSL für Client nötig sind. Der Server sendet auch seinen Zertifikat. Wenn Client die Resource in Server anfordert, die Authentikation von Client brauchen, anfordert der Server auch das Zertifikat von Client. - 2 -

3. Server Authentifizierung Client bestätigt den Server. Wenn der Server nicht bestätigt werden kann, wird der Vorgang fehlergeschlagen. 4. Premaster Secret Mit den vorhandenen Daten erzeugt Client eine premaster secret für diese Session, und verschlüsselt sie mit Server's public key (von Server's Zertifikat) und dann sendet die verschlüsselte premaster secret an den Server. 5. Client Authentifizierung (optional) Wenn Client Authentifizierung von Server angefordert wird, erzeugt Client zusätzlich einige Zufallsdaten und signiert sie mit selben Private Key. Dann werden alle Daten - Client signierte Daten, Client s Zertifikat und die verschlüsselte premaster secret dem Server gesendet. 6. Master Secret Wenn Server die Anforderung von Client Authentifizierung hatte, dann bestätigt Server den Client. Wenn Client nicht bestätigt wird, wird der Vorgang fehlergeschlagen. Wenn Client bestätigt wird, entschlüsselt der Server mit selben Private Key die Nachricht und bekommt die premaster secret. Mit der premaster secret können Server und Client die gleichen master secret erzeugen. 7. Session Keys Server und Client erzeugen mit der master secret die Session Keys, die symmetreisch Keys sind und mit der die Informationen bei der Kommunikation mit SSL verschlüsselt und entschlüsselt werden können und auch die Vollständigkeit von Daten geprüft werden kann. 8. Client Finishing Client sendet ein Nachricht, um den Server zu informieren, dass alle weitere Nachrichten von Client mit Session Key verschlüsselt werden. Und dann sendet Client ein verschlüsselt Finishing-Nachricht an den Server. 9. Server Finishing Server sendet ein Nachricht, um den Client zu informieren, dass alle weitere Nachrichten von Server mit Session Key verschlüsselt werden. Und dann sendet Server ein verschlüsselt Finishing-Nachricht an den Client. 10. Handshake Finishing Der Vorgang von SSL handshake ist hier schon fertig, und die SSL session hat began. Client and Server dann verschlüsseln und entschlüsseln die Daten mit den Session Keys, und auch prüfen mit den Keys die Vollständigkeit von Daten. - 3 -

SSL Versionen SSL wurde für das Einsetzung in Netscape Navigator entworfen. So wurde SSLv1 nur in Netscape verwendet. Nach SSLv2 hat Microsoft auch eine SSLv2 Inplementierung, die als PCT genannt wird. Die neuste Version von SSL ist 3.0. In 1996 hat die Arbeitsgruppe der IETF(Internet Engineering Task Force) ein neues standardisiertes Sicherheitsprotokoll TLS(Transport Layer Security) entwickelt. TLS basisiert auf SSLv3 und ist eigentlich die Version 3.1 von SSL Protokoll. 2. Digitale Authentifizierung SSL benutzt Public Key Zertifikate für die Authentifizierung von Server und Client. SSL unterstützt die folgende Zertifikate [2]: RSA public key Zertifikate, die Keys können beliebige Länge haben. RSA public key Zertifikate, die keys sind nur 512 bits. Für besondere Anwendung mit Beschränkung von Kryptographie. Signing-only RSA Zertifikate, die nur für Signieren der Daten sind. Sie enthalten RSA public keys, die nur für Signieren der Daten, nicht für Verschlüsselung. DSS Zertifikate Diffie-Hellman Zertifikate Die folgenden zwei Abbilgungen zeigen uns, wie ein Zertifikat von Server oder Client authentifiziert wird. Server Authentifizierung: Quelle:www.netscape.com Abbildung-4 Wie wird ein Server Zertifikat authtifiziert? - 4 -

Client Authentifizierung: Die Authentifizierung von Client ist optional. Quelle:www.netscape.com Abbildung-5 Wie wird ein Client Zertifikat authtifiziert? CA: (Certification Authority) eine Organisation, die digitale Zertifikate herausgibt. DN: (Distinguished Name) bekannter Name LDAP:(Lightweight Directory Access Protocol) Es ist ein Protokoll, das für die Kommunikation zwischen Client und X.500-Verzeichnisdienst gedacht ist. 3. SSL/TLS Features Verschiedene Algorithmen für die Aufgaben SSL benutzt verschiedene Algorithmen für Verschlüsselung, Authentifizierung und Vollständigkeit der Daten, die jede einen eigenen Schlüssel haben kann. Die Länge von Schlüsseln kann auch verschieden sein. SSL erlaubt die nicht verschlüsselte aber authentifizierte Verbindung. Dies ist nützlich, wenn die Anwendung von Verschlüsselung verboten ist. Effizienz Die Operation von Verschlüsselung und Entschlüsselung der Public Keys kostet realtiv viel Zeit. Um mehr Male Wiederholung von dieser Operation zu vermeiden, wird die SSL/TLS erst zwischen Server und Client eine master secret generieren, dann wird die weitere Kommunikation mit symmetrischen Verfahren sicher durchgeführt werden. - 5 -

Auf Zertifikate basierende Authentifizierung Durch die Anwendung von digitallen Zertifikationen bietet SSL die Authentifizierung von Client und Server an. SSLv3 und TLS benutzen X.509 Zertifikate. Aber Authentifizierung ist ein optionales Teil des SSL-Protokolles. Protokoll agnostisch SSL kann nicht nur über TCP/IP, sondern auch über viele andere zuverlässige Protokolle in der Transportschicht arbeiten. Z.B.: X.25. Aber nicht über die unzuverlässigen Protokollen wie IP User Datagram Protocoll(UDP). Schutz vor man-in-the-middle- und replay- Angriff Bei dem man-in-the-middle-angriff fängt der Hacker alle Infomationen zwischen Webserver und -benutzer und läßt die beiden immer glauben, dass sie nur miteinander kommunizieren. Bei dem replay-angriff fängt der Hacker die Bezahlungsnachrichten und schafft die illegale Transaktion durch Wiederholung dieser Nachrichten. SSL benutzt digitale Authentifizierung gegen diese Angriffe. Abbildung-6 man-in-middle-angriff Abbildung-7 replay-angriff nach Web Security, Privacy, and Commerce (2nd Edition), Simson Garfinkel with Gene Spafford: O'Reilly, 2002 Unterstützung von Kompression Normalerweise können die gut verschlüsselten Daten nicht mehr komprimiert werden. So macht das SSL/TLS Protokoll eine Komprimierung von Daten, bevor diese Daten verschlüsselt werden. Ruckwärts Kompatibilität mit SSL 2.0 SSLv3 Server nimmt auch die Verbindung von SSLv2 Client auf und kann sofort die SSL-Nachrichten behandeln, ohne eine neue Verbindung mit Client aufzubauen. 4. SSL Implementierungen SSL wurde erst in Juli 1994 von Netscape entwickelt und gehörte zu den Netscape s Business Plans. Dises Protokoll gibt Web-Benutzern die Möglichkeit, sicher auf Web-Server zuzugreifen, um damit kommerzielle Transkationen durchzuführen. SSL Netscape Die erste SSL Implementierung wurde nur in Netscape s Webbrowser und Webserver verwendet. - 6 -

SSLRef und Mozilla Network Security Services(NSS) Nach der Einsetzung von Netscape Navigator, hatte Netscape eine Referenz-implementierung von SSL produziert. Sie wurde in C geschrieben und hat den Name SSLRef. Jetzt ist SSLRef nicht mehr verfügbar. Mozilla NSS hat sie ersetzt und bietet eine große Menge von Bibliotheken für die Entwicklung an. Die mit NSS entwickelte Anwendungsprogramme unterstützen SSLv2, SSLv3, TLS und viele andere Internetsicherheitsstandards. SSLeay und OpenSSL SSLeay ist eine selbständige Implementierung von SSL 3.0 und wurde von zwei australische Programmer Eric A.Young und Tim Hudson entwickelt. OpenSSL basisiert auf SSLeay und ist jetzt eine extensiv angewandete SSL Implementierung. Es ist auch die Basis von SSL Implementierung in Apache Web Server. SSL Java Es gibt auch midestents zwei SSL Implementierungen in Java: Cryptography Extensions von Sun s Java und JSAFE von RSA Data Security. Quellen: [1] Richard E.Smith Boon, Internet-Kryptographie, Addison-Wesley-Longman, 1998 [2] Simson Garfinkel with Gene Spafford, Web Security, Privacy, and Commerce (2nd Edition), O'Reilly, 2002 [3] Alan O. Freier, Philip Karlton, Paul C. Kocher, Netscape, The SSL Protocol Version 3.0, http://wp.netscape.com/eng/ssl3/ssl-toc.html, stand: March 1996 [4] Netscape, Introduction to SSL, http://developer.netscape.com/docs/manuals/security/sslin/, stand: Sept. 1998 [5] T. Dierks, C. Allen, The TLS 1.0 Protocol, http://www.ietf.org/rfc/rfc2246.txt, stand: January 1999 [6] The OpenSSL Project, http://www.openssl.org, stand: Juni 2004 [7] The Network Security Services Project (NSS), http://www.mozilla.org/projects/security/pki/nss/, stand: Juni 2004. - 7 -