Wogegen ein Verfahren bestehen muss
Ein Verfahren ist erst dann sicher, wenn es auch einem Angreifer standhält, der mehr weiß als nur den Geheimtext.
- Nur Geheimtext:(ciphertext-only) Der Angreifer kennt nur abgefangene Geheimtexte — der Grundfall, z. B. für die Häufigkeitsanalyse.
- Bekannter Klartext:(known-plaintext) Er kennt zusätzlich Paare aus Klartext und Geheimtext, etwa eine feste Grußformel oder einen Dateikopf.
- Gewählter Klartext:(chosen-plaintext) Er darf eigene Klartexte verschlüsseln lassen und die Ergebnisse vergleichen.
- Brute Force:probiert alle Schlüssel durch. Eine Analyse nutzt dagegen Strukturen des Verfahrens und ist meist viel schneller.
- Klassiker fallen sofort:Bei Caesar und Vigenère gilt mit bekanntem Klartext: Schlüssel = Geheimtext − Klartext (mod 26), Buchstabe für Buchstabe. Klartext T (19), Geheimtext X (23) → \(23-19=4\) → Schlüsselbuchstabe E.
Kriterien für ein sicheres Verfahren
- Schlüsselraum:heute mindestens \(2^{128}\) Schlüssel, damit Brute Force aussichtslos bleibt.
- Keine Spuren:Der Geheimtext verrät keine Sprachstatistik — Konfusion und Diffusion verwischen sie.
- Kerckhoffs:sicher auch dann, wenn das Verfahren öffentlich bekannt ist.
- Schlüssel einmalig:Denselben Schlüsselstrom nie zweimal verwenden. Das One-Time-Pad ist nur bei zufälligem, gleich langem, einmal benutztem Schlüssel beweisbar sicher.
- Umfeld:sichere Schlüsselverteilung und fehlerfreie Implementierung — ein Angriff sucht immer die schwächste Stelle.
Messen statt raten: der Koinzidenzindex
- Idee:\(I\) ist die Wahrscheinlichkeit, dass zwei zufällig gezogene Buchstaben eines Textes gleich sind.
- Zeichen:\(n_i\) = Anzahl des \(i\)-ten Buchstabens im Text, \(N\) = Anzahl aller Buchstaben.
- Bezugswerte:Deutsch \(I\approx\sum p_i^2\approx0{,}0762\) (Häufigkeiten nach Beutelspacher), Zufallstext \(I\approx\frac{1}{26}\approx0{,}0385\).
- Monoalphabetisch:Caesar und jede feste Buchstabenzuordnung benennen Buchstaben nur um — \(I\) bleibt wie im Deutschen.
- Vigenère:mischt mehrere Alphabete — \(I\) sinkt umso näher an 0,0385, je länger das Schlüsselwort.
- Gute Blockchiffre:\(I\approx0{,}0385\) — keine messbare Sprachspur mehr.
- Friedman-Idee:Aus \(I\) lässt sich bei langen Texten die Vigenère-Schlüssellänge schätzen: \(L\approx\dfrac{0{,}0762-0{,}0385}{I-0{,}0385}\).
Die übrigen fünf Buchstaben kommen je einmal vor und tragen \(1\cdot0=0\) bei.
Geordnete Paare aus zwei verschiedenen Stellen mit demselben Buchstaben.
Alle geordneten Paare aus zwei verschiedenen Stellen.
Nahe am deutschen Wert. Caesar-verschlüsselt ergäbe sich exakt derselbe Wert — nur die Buchstabennamen ändern sich.
Koinzidenzindex: \(I=\dfrac{\sum_i n_i\,(n_i-1)}{N\,(N-1)}\)
Lege den Messkopf an die fünf Textkarten an: Ziehe ihn auf eine Karte, tippe eine Karte an oder wähle den Messkopf mit Tab und wechsle mit ←/→ (oder 1–5). Alle Texte sind gleich lang und stammen aus demselben deutschen Klartext.
Gemessener Text: noch keiner — lege den Messkopf an eine Karte.
| Text | N | Σ nᵢ(nᵢ−1) | I | Einordnung | Friedman L |
|---|---|---|---|---|---|
| Noch keine Messung. | |||||
Halte fest: Monoalphabetische Verfahren lassen \(I\) unverändert, Vigenère senkt ihn mit wachsender Schlüssellänge, eine gute Blockchiffre erreicht den Zufallswert. Ein Wert nahe 0,0385 ist notwendig für Sicherheit, aber kein Beweis.
Urteilsschema
- 1 · Brute Force:Hat das Verfahren mindestens \(2^{128}\) Schlüssel?
- 2 · Statistik:Liegt \(I\) des Geheimtexts auch bei langen Texten bei 0,0385?
- 3 · Klartext-Angriffe:Bleibt der Schlüssel geheim, wenn Klartext-Geheimtext-Paare bekannt sind?
- 4 · Handhabung:Wird der Schlüssel zufällig erzeugt, sicher verteilt und nicht wiederverwendet?
- Urteil:Sicher nur bei viermal Ja — ein einziges Nein macht das Verfahren angreifbar.
Allgemeine Hinweise
Unlesbar heißt nicht sicher
Jeder Geheimtext sieht wirr aus. Beurteile ein Verfahren nach Schlüsselraum, Statistik und Angriffsszenarien — nie nach dem Aussehen des Geheimtexts.
Zweimal „minus eins“
Oben und unten zählst du Paare aus zwei verschiedenen Stellen: \(n_i\,(n_i-1)\) und \(N\,(N-1)\). Mit \(n_i^2\) und \(N^2\) wird \(I\) bei kurzen Texten viel zu groß.
Kurze Texte streuen
Bei wenigen Dutzend Buchstaben schwankt \(I\) stark — das Beispiel mit 17 Buchstaben ist nur eine Rechenübung. Urteile erst ab einigen hundert Zeichen.
