In dem Fach Sicherheit und Netze werden Schutzziele und Schutzmechanismen für die Kommunikation in Netzen behandelt. Im zweiten Teil der Zusammenfassung werden Verschlüsselungsverfahren und Betriebsmodi behandelt.
| Skript-Anfang | 01EinfuehrungSicherheitUndNetze – Seite 1 |
|---|---|
| Skript-Ende | 15SicherheitTransportschicht – Seite 51 |
Chiffren
Als Geheimtext (auch Chiffrat, Chiffre, Chiffretext, Ciphertext, Kryptogramm, Kryptotext oder Schlüsseltext) wird in der Kryptographie der Text genannt, der durch Verschlüsselung mit Hilfe eines kryptographischen Verfahrens und unter Verwendung eines Schlüssels derart verändert wurde, dass es nicht mehr möglich ist, dessen Inhalt zu verstehen.
Kryptoanalyse
Wofür ist die Kryptoanalyse gut?
- Entschlüsseln geheimer Nachrichten
- Verwundbarkeit eines bestehenden Kryptosystems aufzuzeigen
Grundlagen
Wofür stehen diese Namen?
- Alice – Sender
- Bob – Empfänger
- Eve – Eavesdropper bzw. Zuhörer
- Trudy – Intruder bzw. Eindringling
Welche Regeln gelten für Chiffren?
- Das Alphabet ist der gesamte zur Verfügung stehende Zeichenvorrat
- Der Klartext wird mit kleinen Buchstaben dargestellt (a-z)
- Der Geheimtext wird mit großen Buchstaben dargestellt (A-Z)
- Buchstaben werden auch als Zahlen dargestellt (0-25 oder 1-26)
Welche Notationen gibt es?
- Klartext P (plaintext)
- Verschlüsselungsalgorithmus E (encryption)
- Entschlüsselungsalgorithmus D (decryption)
- Geheimer Schlüssel k (secret key)
- Geheimtext C (ciphertext)
- X – Xs Identität
- RX – Zufallswert von X
- KX – Schlüssel von X
- Zeitstempel t (timestamp)

Wie sind Chiffren aufgebaut?
- Eine Kombination aus Substitutions- und Transpositionschiffren
Garantieren Chiffren die Integrität von Daten?
- Nein, ein Angreifer kann auch ohne den Schlüssel Bytes ersetzen und mit zufälligen Daten füllen
- Das Nachrichtenformat ist dem Angreifer womöglich bekannt
- Diese neuen Nachrichten müssen aber keinen Sinn ergeben (Artikel-Menge = ABC)
- Er kennt zwar nicht den Inhalt, aber kann dennoch Schaden verursachen
Kerckhoffs Prinzip
Welche Anforderungen gelten an Algorithmen?
- Algorithmen, deren Stärke nur von deren Geheimhaltung abhängt, sind mangelhaft
- Algorithmen sollten deshalb öffentlich sein
- Die Widerstandsfähigkeit muss allein von dem geheimen Schlüssel abhängen
- Das Erraten des Schlüssels darf in keinem vernünftigen Zeitraum möglich sein
- Die Länge des Schlüssels muss ein wesentlicher Faktor sein (exponentielles Wachstum pro Bit)
Transpositionschiffren
Was sind Transpositionschiffren?
- Verschlüsselungsverfahren bei dem die Position der Symbole im Klartext vertauscht wird
- MAX transponiert zu folgenden Geheimtexten → MAX, MXA, XAM, XMA, AMX und AXM
- Sender und Empfänger einigen sich auf eine Blockgröße und Padding-Verfahren
- Zeilenweise Einlesen und spaltenweise Auslesen (oder umgekehrt)
Wie funktionieren Transpositionschiffren ohne Schlüssel?
- wie geht es dir nils → WDIIERGNEIHLTSEASB
| w | i | e | g | e | h | t | e | s |
| d | i | r | n | i | l | s | a | b |
Wie funktionieren Transpositionschiffren mit Schlüssel?
- Die Länge und Zeichen des Schlüssels entsprechen den Spalten im Block
- hallo denise → DXLSANHEILOE mit dem Schlüssel 6|4|2|1|3|5
| 1 | 2 | 3 | 4 | 5 | 6 |
|---|---|---|---|---|---|
| h | a | l | l | o | d |
| e | n | i | s | e | X |
| 6 | 4 | 2 | 1 | 3 | 5 |
|---|---|---|---|---|---|
| D | L | A | H | L | O |
| X | S | N | E | I | E |
Substitutionschiffren
Was sind Substitutionschiffren?
- Verschlüsselungsverfahren bei dem Symbole des Klartexts durch andere Symbole ersetzt werden
- Sie verwenden mono- oder polyalphabetische Chiffren
Monoalphabetischen Chiffren
Was sind monoalphabetischen Chiffren?
- Einfache Substitutionschiffren mit statischer Zuordnung
- Verwundbar gegen statistische Angriffe (Wegen dem Monoalphabetismus)
- Verwundbar gegen ciphertext-only Attacken (Wegen dem kleinen Schlüsselraum)
- Additive Chiffren
- Multiplikative Chiffren
- Affine Chiffren
Was sind additive Chiffren?
- Die Caesar-Chiffre ist ein typischer Vertreter
- Zeichen verschieben sich um einen konstanten Wert (A → B, … , Z → A)
- Bei n Zeichen im Alphabet gibt es n Schlüssel (Aber nur n-1 sinnvolle Geheimtexte)
- Bei 26 Zeichen im Alphabet gibt es 26 Schlüssel
- Sobald ein Zeichen entschlüsselt wurde, ist die Chiffre gebrochen
- C = (P + k) mod n
- P = (C – k) mod n
| a | b | c | d | e | f | g |
|---|---|---|---|---|---|---|
| 0 | 1 | 2 | 3 | 4 | 5 | 6 |
| 3 | 4 | 5 | 6 | 7 | 8 | 9 |
| D | E | F | G | H | I | J |
Was sind multiplikative Chiffren?
- Die Zeichen des Alphabets werden durch Zahlen ersetzt
- Symbole des Klartexts P werden mit dem Schlüssel multipliziert
- Die Anzahl der Schlüssel ist geringer als bei additiven Chiffren
- Bei 26 Zeichen gibt es 12 Schlüssel (nur teilerfremde Zahlen zum Alphabet)
- Sobald ein Zeichen entschlüsselt wurden, ist die Chiffre gebrochen
- C = (P * k) mod n
- P = (C * k) mod n
| a | b | c | d | e | f | g |
|---|---|---|---|---|---|---|
| 0 | 1 | 2 | 3 | 4 | 5 | 6 |
| 0 | 3 | 6 | 9 | 12 | 15 | 18 |
| A | D | G | J | M | P | S |
Was sind affine Chiffren?
- Kombination aus additiven und multiplikativen Chiffren
- Man Benötigt zwei Schlüssel
- Es gibt bei 26 Zeichen 312 Schlüsselkombinationen (= 12 * 26)
- Sobald zwei Zeichen entschlüsselt wurden, ist die Chiffre gebrochen
- C = (P * k1 + k2) mod n
- P = (C * k1 + k2) mod n
| a | b | c | d | e | f | g |
|---|---|---|---|---|---|---|
| 0 | 1 | 2 | 3 | 4 | 5 | 6 |
| 3 | 6 | 9 | 12 | 15 | 18 | 21 |
| D | G | J | M | P | S | V |
Polyalphabetische Chiffren
Was sind polyalphabetische Chiffren?
- Komplexere Substitutionschiffre zur Abwehr von statistischen Angriffen mit flexiblen Zuordnungen
- Der Schlüssel wird durch einen Schlüsselstrom ersetzt
- Dadurch hängt die Substitution von den Positionen des Klartexts und des Schlüsselstroms ab
- Ci = (Pi + Ki) mod n
- Pi = (Ci – Ki) mod n
| a | a | b | b |
|---|---|---|---|
| 0 | 0 | 1 | 1 |
| A | B | A | B |
| 0 | 1 | 0 | 1 |
| 0 | 1 | 1 | 2 |
| A | B | B | C |
Was ist die Autokey Cipher?
- Eine einfache polyalphabetische Chiffre
- Ein zufälliges Startsymbol und der Klartext bilden den Schlüsselstrom
- Ci = (Pi + Pi+1) mod n
- Pi = (Ci – Ki+1) mod n

Symmetrische Verschlüsselung
Was ist symmetrische Verschlüsselung?
- Sender und Empfänger verwenden den gleichen Schlüssel
- Der Schlüssel muss über einen sicheren Kanal ausgetauscht werden
- Ent- und Verschlüsselung sind mathematische Funktionen
- Jede Funktion verwendet einen Text und Schlüssel als Parameter
- Es gilt P=DK(EK(P))
Wie lang muss der symmetrische Schlüssel sein?
- 64 Bit
- 128 Bit
Wie läuft die symmetrische Verschlüsselung ab?
- Schlüsselaustausch über einen sicheren Kanal
- Verschlüsseln: C=EK(P)
- Kommunikation über einen unsicheren Kanal
- Entschlüsseln: P=DK(C)

Betriebsmodus
Ein Betriebsmodus oder eine Betriebsart ist ein Verfahren, das beschreibt, wie mit einer Blockchiffre Nachrichten verschlüsselt werden. Erst die Kombination von Blockchiffre und Betriebsmodus erlaubt es, Nachrichten zu verschlüsseln, die länger sind als die Blocklänge. Üblicherweise wird dazu die Nachricht in mehrere Blöcke aufgeteilt und durch Padding auf eine passende Länge gebracht. Ein Initialisierungsvektor (IV) kann das Verfahren zusätzlich unabhängig vom verwendeten Schlüssel randomisieren.
Grundlagen
Was sind Blockchiffren?
- Deterministisches Verschlüsselungsverfahren
- Ein Klartext fester Länge wird auf ein Chiffrat fester Länge abgebildet
- Die genaue Transformation wird dabei durch einen Schlüssel bestimmt
- Die Verarbeitung der Eingabe erfolgt in mehreren gleich aufgebauten Runden
Was sind die Nachteile von Blockchiffren?
- Symmetrische Schlüssel erfordern einen sicheren Kanal zum Austausch
- Alle Blockchiffren stellen monoalphabetische Verschlüsselungen her
- Blöcke mit gleichem Klartext liefern jeweils den gleichen verschlüsselten Text (Mustererkennung)
Was sind die Ziele von Betriebsmodi?
- Verschlüsselung von Texten, die länger als 1 Block sind
- Blockchiffren als Stromchiffren für Echtzeitanwendung verwenden
- Wahlfreie Entschlüsselung von Ciphertexten
- Erzeugung polyalphabetischer Chiffren mittels verketteter Blöcke (und IV)
- Verkettete Blöcke sollen veränderte Datenblöcke beim Entschlüsseln unbrauchbar machen
Vergleich der Betriebsmodi
Wo liegen die Unterschiede?
| Modus | ECB | CBC | CFM | OFM | CTR |
|---|---|---|---|---|---|
| Alphabet | Mono | Poly | Poly | Poly | Poly |
| Initialisierungsvektor | Nein | Ja | Ja | Ja | Ja |
| Padding | Ja | Ja | Nein | Nein | Nein |
| Einsatz als Stromchiffre | Nein | Nein | Ja | Ja | Ja |
| Bitfehler im CT | 1 Block | 1 Block + 1 Bit | n Bit | 1 Bit | 1 Bit |
| Wahlfreier Zugriff | Ja | Nein | Nein | Nein | Ja |
| Parallel verschlüsseln | Ja | Nein | Nein | Nein | Ja |
| Parallel entschlüsseln | Ja | Ja | Ja | Nein | Ja |
| Anwendungsfall | Einmalige Blöcke | Sicherheit | Echtzeit | Resistenz gegen Bitfehler | Wahlfreier Zugriff |
Electronic Code Book Mode (ECB)
Wie funktioniert der ECB?
- Der Aufbau gleicht der normalen Blockchiffre
- Ein Text wird einfach in Blockgröße unterteilt und eingespeist
- Jeder Block wird mit dem gleichen Schlüssel verschlüsselt

Wie greift man den ECB an?
- Er ist monoalphabetisch (siehe Chiffrierung)
- Ein Angreifer kann die Reihenfolge chiffrierter Blöcke unbemerkt verändern
- Einfügen neuer Blöcke einfügen und Vertauschung möglich (Leslies Attacke)
Cipher Block Chaining Mode (CBC)
Wie funktioniert der CBC?
- Die Verkettung von Blöcken erzeugt eine polyalphabetische Chiffre
- Gleiche Klartextblöcke liefern verschiedene Geheimtextblöcke
- Der erste Klartextblock wird mit einem IV über XOR verknüpft
- Die folgenden Blöcke werden mit den vorherigen Chiffraten verknüpft
- Der IV unterliegt nicht der Geheimhaltung (Versenden über unsicheren Kanal)
- Ein Fehler im IV beeinflusst alle Blöcke, aber beeinträchtigt nur den ersten Klartextblock
- Ein Fehler im CT beeinflusst den Klartext und ein Bit im nächsten Block

Cipher Feedback Mode (CFB)
Wie funktioniert der CFB?
- Der IV wird in ein Schieberegister eingelesen
- Das Schieberegister wird mit k verschlüsselt
- Der verschlüsselte Strom wird mit dem Klartext über XOR verknüpft
- Das linke Byte der Chiffre wird rechts in das Register geschoben
- Jedes Byte der verschlüsselten Nachricht ist von allen Vorgängern abhängig (Keine Muster erkennbar)
- Ein Bitfehler betrifft so viele Bits, wie das Schieberegister umfasst
- Bitfehler korrigieren sich also nach dem Verlassen aus dem Schieberegister

Output Feedback Mode (OFB)
Wie funktioniert der OFB?
- Der IV wird in ein Schieberegister eingelesen
- Das Schieberegister wird mit k verschlüsselt
- Das linke Byte des verschlüsselten Stroms wird rechts in das Register geschoben
- Dadurch lässt sich eine willkürlich lange Sequenz von Schlüsseln erzeugen
- Der Schlüsselstrom hat hier also eine Funktion wie beim One-time-pad
- Der Schlüsselstrom kann komplett im Voraus berechnet werden (Performance)
- OFB ist gleichzeitig weniger anfällig für Übertragungsfehler wie der CFB

Wie greift man den OFB an?
- Mit einem Keystream Reuse Angriff
Counter Mode (CTR)
Wie funktioniert der CTR?
- Der CTR erlaubt wahlfreien Zugriff auf verschlüsselte Blöcke
- Der Schlüsselstrom kann wie beim OFB im Voraus berechnet werden (Performance)
- Der Initialisierungsvektor wird mit einer konstanten Größe addiert und verschlüsselt
- Der Schlüsselstrom wird mittels XOR mit dem Klartext verknüpft

Wie greift man den CTR an?
- Mit einem Keystream Reuse Angriff
Was ist der AES Counter Mode?
- Betriebsmodus in WPA2 (WLAN)
- Verwendet AES als Blockchiffre mit 128 Bit