3.8 KiB
3.8 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
Wenn du willst, kann ich dir daraus auch Karteikarten, ein Quiz, oder eine grafische Übersicht (z. B. Ablaufdiagramm) für den Handshake oder die Schlüsselableitung erstellen. Sag einfach Bescheid!