🔍 Was beobachte ich?

Selbst erfundene Chiffren sehe ich fast nie. Ich sehe AES aus der Standardbibliothek, aufgerufen im ECB-Modus, und daneben CBC mit einem Initialisierungsvektor, der nach jedem Neustart wieder bei null beginnt. Die Bausteine sind geprüft, ihr Zusammenbau ist es nicht.

🎯 Was soll eigentlich erreicht werden?

Vertraulichkeit, passgenau zum eigenen Haus: zur Latenzgrenze, zum Altsystem, zum gewachsenen Protokoll. Eine fertige Bibliothek passt selten ohne Rest.

⚠️ Warum funktioniert das nicht?

Weil das eigene Urteil das schwächste Prüfmittel der Kryptografie ist. Bruce Schneier hat das 1998 aufgeschrieben: „Jeder, vom ahnungslosesten Amateur bis zum besten Kryptografen, kann einen Algorithmus entwerfen, den er selbst nicht brechen kann." Das ist der leichte Teil. Schwer ist es, einen zu entwerfen, den auch nach Jahren der Analyse sonst niemand bricht. „Wir haben nichts gefunden" sagt deshalb nichts über das Verfahren, sondern etwas über die Suchenden. Zoom verschlüsselte 2020 Millionen Meetings mit einem selbst gebauten Schema: AES mit 128 statt der beworbenen 256 Bit, im ECB-Modus, ein Schlüssel für alle Teilnehmenden. Aufgefallen ist das zwei Forschenden des Citizen Lab. Ihr Bericht heißt „A Quick Look".

💡 Was funktioniert besser?

„Don’t roll your own crypto" ist keine Frage der Begabung allein. Daniel J. Bernstein hat seine eigene Kryptografie gebaut – Salsa20, Poly1305, Curve25519 –, und heute steckt sie in TLS 1.3, OpenSSH und WireGuard. Der Unterschied liegt im Verfahren: Salsa20 stellte sich drei Jahre öffentlicher Kryptanalyse im eSTREAM-Wettbewerb, Curve25519 lag ab 2006 offen und wurde erst 2014 zur Voreinstellung in OpenSSH. Wer selbst baut, muss dasselbe aushalten. Wer das nicht will, nimmt eine Bibliothek, die Modus, Nonce und Schlüsselableitung vorgibt, und lässt den eigenen Zusammenbau von außen prüfen.

📚🔍