Henryk Plötz: Wie String Ver- und Entschlüsseln?

Beitrag lesen

Moin,

Wenn man sich aber noch etwas geschickter anstellt dann kann man
den Code auch mit dieser methode schwerer knackbar machen indem
man $Code z.B. =168 setzt und dann beim 2ten durchlauf auf 170
dann im dritten auf 173 im vierten 177 etc. etc.

Nope, das ist _nicht_ sicherer. Der Schlüssel ist weiterhin nur eine einzige Zahl (168). Der Angreifer zieht einfach von der zweiten Zahl 2 ab, von der dritten 3 usw. und erhält dann den gleichen Geheimtext wie in der einfachen Variante mit den selben Angriffsmöglichkeiten.

Was einen Gewinn an Sicherheit ausmachen würde wäre eine ordentliche de-Vigenere-Verschlüsselung wo man ein ganzes Schlüsselwort benutzt (etwa "hallo" , entsprechend 104, 97, 108, 108 und 111) und dann auf das erste Zeichen der Eingabe die erste Zahl addiert, auf das zweite Zeichen die zweite Zahl usw. Der Schlüssel ist dadurch länger was eine Brute-Force-Attacke schwieriger macht, und zumindest die offensichtliche Struktur des Geheimtextes wird zerstört. Sehr viel sicherer ist das aber auch nicht, da der Schlüssel wiederholt werden muss: Der Angreifer nimmt sich einfach Zeichen die mit der ersten Zahl verschlüsselt wurde, alle mit der zweiten Zahl etc. und macht dann den gleichen statistischen Angriff wie vorher bei Caesar.

--
Henryk Plötz
Grüße aus Berlin
~~~~~~~~ Un-CDs, nein danke! http://www.heise.de/ct/cd-register/ ~~~~~~~~
~~ Help Microsoft fight software piracy: Give Linux to a friend today! ~~