3.5 KiB
3.5 KiB
🔐 GRUNDLAGEN VON SSL / TLS
Was ist SSL/TLS?
- SSL (Secure Socket Layer): ursprünglich von Netscape entwickelt.
- TLS (Transport Layer Security): Weiterentwicklung von SSL 3.0 durch IETF.
- Ziel: Ende-zu-Ende sichere Kommunikation über TCP/IP.
Hauptfunktionen
- Datenverschlüsselung
- Server-Authentifizierung
- Nachrichtenintegrität (MAC / HMAC)
- (Optional) Client-Authentifizierung
🧱 PROTOKOLLARCHITEKTUR
SSL-Protokoll besteht aus:
- Handshake Protocol: Aushandlung der Sicherheitsparameter
- Change Cipher Spec: Aktivierung neuer Sicherheitsparameter
- Alert Protocol: Fehler- und Warnmeldungen
- Record Protocol: Verschlüsselung und MAC auf Anwendungsebene
Protokollstapel:
SSL liegt zwischen TCP/IP und der Anwendungsschicht (z. B. HTTP, FTP).
🔁 VERBINDUNGSAUFBAU (SSL Handshake)
Ablauf
-
Client → Server:
Client_Hello- Protokollversion, Zufallswert, Session-ID, unterstützte Cipher Suites & Kompression
-
Server → Client:
Server_Hello- Auswahl aus Vorschlägen + Server-Zertifikat (X.509)
- optional:
Certificate_Request→ Client-Zertifikat Server_Hello_Done
-
Client → Server:
- Optional:
Certificate,Certificate_Verify(Authentifizierung) Client_Key_Exchange: Pre-Master Secret (verschlüsselt mit Server-Public-Key)Change_Cipher_SpecFinished: verifizierbarer Hash
- Optional:
-
Server → Client:
Change_Cipher_SpecFinished
Wichtig:
- Pre-Master Secret → Master Secret (384 Bit) → Key Block
- Schlüssel werden symmetrisch genutzt
🗝️ SCHLÜSSELERZEUGUNG
Aus dem Master Secret werden erzeugt:
- MAC-Schlüssel (Client/Server)
- Verschlüsselungsschlüssel
- Initialisierungsvektoren (IVs) Aufteilung (Key Block):
Client_Write_MAC_SecretServer_Write_MAC_SecretClient_Write_KeyServer_Write_KeyClient/Server_Write_IV
📄 ZUSAMMENHÄNGE: SESSION & VERBINDUNG
| Begriff | Beschreibung |
|---|---|
| Session | Kommunikationskanal, definiert durch Handshake |
| Verbindung | Instanz mit eigener Schlüsselverwendung |
- Mehrere Verbindungen können zu einer Session gehören.
- Session-ID dient zur Wiederaufnahme (Session Resumption).
🧾 SSL RECORD LAYER
Verarbeitungsschritte
- Fragmentierung (max. 16 KB)
- Optionale Kompression
- MAC-Berechnung (z. B. mit SHA/MD5)
- Verschlüsselung mit vereinbarten Algorithmen
- Versand
Empfängerseite:
- Umgekehrte Schritte (Decryption → MAC-Prüfung → Dekompression)
⚙️ WICHTIGE PROTOKOLLDETAILS
- Alert Protocol: Meldet Fehler (z. B. Handshake Failure)
- Cipher Suites enthalten:
- Verschlüsselungsalgorithmus (z. B. AES, RC4, 3DES)
- MAC-Algorithmus (MD5, SHA-1)
- Schlüsselaustausch (z. B. RSA, Diffie-Hellman)
- Wiederverwendbare Sitzungen verbessern Performance:
- Session-ID beim
Client_Hellosenden - Bei Erfolg:
Server_Hellomit derselben Session-ID
- Session-ID beim
📦 PORTS FÜR SSL/TLS (laut IANA)
| Dienst | SSL-Port |
|---|---|
| HTTPS | 443 |
| SMTP | 465 |
| POP3 | 995 |
| IMAP | 993 |
| NNTP | 563 |
| LDAP | 636 |
| FTP | 990 |
✅ ZUSAMMENFASSUNG FÜR DIE KLAUSUR
- TLS = Weiterentwicklung von SSL
- Ziel: Verschlüsselung, Authentifizierung, Integrität
- SSL-Handshake:
- Aushandlung der Cipher Suites
- Authentifizierung via Zertifikaten (X.509)
- Session Keys für symmetrische Verschlüsselung
- SSL ist applikationsunabhängig
- SSL Record Layer = zentrale Schicht zur Absicherung der Nutzdaten