> For the complete documentation index, see [llms.txt](https://n4shx.gitbook.io/wiki/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://n4shx.gitbook.io/wiki/schule/archiv/tls-und-ciphers.md).

# TLS und Ciphers

### 1. Was ist TLS?

**TLS (Transport Layer Security)** ist ein Protokoll zum Schutz der Kommunikation zwischen zwei Systemen, zum Beispiel zwischen Browser und Webserver.

Es sorgt vor allem für:

* **Vertraulichkeit**: Daten sollen nicht mitgelesen werden
* **Integrität**: Daten sollen nicht unbemerkt verändert werden
* **Authentizität**: der Client kann prüfen, ob er wirklich mit dem richtigen Server spricht

Typische Einsätze:

* **HTTPS**
* **SMTPS / IMAPS / POP3S**
* teilweise **VPNs**
* APIs und andere abgesicherte Verbindungen

***

### 2. Was macht TLS technisch?

TLS baut zuerst eine **sichere Verbindung** auf, bevor die eigentlichen Daten übertragen werden.

Vereinfacht:

1. Client verbindet sich zum Server
2. beide handeln eine **TLS-Version** und passende **Algorithmen** aus
3. der Server zeigt sein **Zertifikat**
4. der Client prüft das Zertifikat
5. es wird ein gemeinsamer Sitzungsschlüssel aufgebaut
6. danach läuft die Datenübertragung **verschlüsselt**

***

### 3. Was ist ein Zertifikat?

Ein **Zertifikat** bestätigt die Identität eines Servers.

Es enthält zum Beispiel:

* Domainname
* öffentlicher Schlüssel
* Aussteller (CA = Certificate Authority)
* Gültigkeitsdauer

Wichtig:

* Zertifikat **abgelaufen** = Warnung
* Zertifikat **passt nicht zur Domain** = Warnung
* Zertifikat **nicht vertrauenswürdig signiert** = Warnung

***

### 4. Was sind Ciphers?

Ein **Cipher** ist ein kryptographischer Algorithmus, der bei TLS verwendet wird.

Einfach gesagt:

* TLS ist das **gesamte Schutzprotokoll**
* ein Cipher ist ein **Baustein** darin

Beispiele:

* **AES-GCM**
* **ChaCha20-Poly1305**

Früher war oft von **Cipher Suites** die Rede:\
Eine Cipher Suite beschreibt, **welche Algorithmen zusammen verwendet werden**, z. B. für:

* Schlüsselaustausch
* Authentisierung
* Verschlüsselung
* Integrität

***

### 5. Was ist eine Cipher Suite?

Eine **Cipher Suite** ist die Kombination aus mehreren kryptographischen Verfahren.

Bei älteren TLS-Versionen war das sichtbarer, zum Beispiel:

* welcher Key Exchange
* welches Verschlüsselungsverfahren
* welches MAC-/Hash-Verfahren

Beispielhaft:

* `TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384`

Das bedeutet grob:

* **ECDHE** für sicheren Schlüsselaustausch
* **RSA** für Zertifikat/Authentisierung
* **AES-256-GCM** für Verschlüsselung
* **SHA384** für Hash-Bezug in der Suite-Bezeichnung

Bei **TLS 1.3** wurde das vereinfacht.

### Symmetrische Verschlüsselung

Gleicher Schlüssel zum Ver- und Entschlüsseln.\
Schnell, deshalb für die eigentliche Datenübertragung verwendet.

Beispiele:

* AES
* ChaCha20

### Asymmetrische Kryptographie

Schlüsselpaar aus **public key** und **private key**.\
Wird für Authentisierung und Teile des Verbindungsaufbaus verwendet.

Beispiele:

* RSA
* ECC / ECDSA

### Hash

Erzeugt einen eindeutigen Prüfwert für Daten.\
Wichtig für Integrität.

Beispiele:

* SHA-256
* SHA-384

### MAC / AEAD

Mechanismen zur Sicherung von Integrität und Authentizität.\
Moderne Verfahren wie **AES-GCM** und **ChaCha20-Poly1305** sind **AEAD**-Verfahren.

### Perfect Forward Secrecy (PFS)

Alte Sitzungen bleiben geschützt, selbst wenn später ein Langzeitschlüssel kompromittiert wird.\
Typisch mit **ECDHE**.

### Veraltet / unsicher

* **SSL 2.0**
* **SSL 3.0**
* **TLS 1.0**
* **TLS 1.1**

Diese gelten als veraltet und sollten deaktiviert sein.

### Heute relevant

* **TLS 1.2**
* **TLS 1.3**

Prüfungslogik:

* **TLS 1.2** ist noch weit verbreitet
* **TLS 1.3** ist moderner, einfacher und sicherer

***

### 8. Gute und schlechte Ciphers grob

### Eher gut / modern

* **AES-GCM**
* **ChaCha20-Poly1305**
* **ECDHE** für Key Exchange
* **ECDSA** oder **RSA** für Zertifikate, je nach Setup

### Eher schlecht / veraltet

* **RC4**
* **DES**
* **3DES**
* **NULL ciphers**
* **MD5**
* **SHA-1** in alten sicherheitsrelevanten Zusammenhängen
* statischer **RSA Key Exchange** ohne Forward Secrecy

***

### 9. Was ist der Unterschied zwischen TLS 1.2 und TLS 1.3?

Ganz grob:

### TLS 1.2

* flexibler, aber komplexer
* mehr alte Optionen
* mehr Fehlkonfigurationsrisiko

### TLS 1.3

* aufgeräumter
* unsichere Altlasten entfernt
* moderne Algorithmen im Fokus
* schnellerer und sichererer Handshake
