8 Runden RC5 ohne Rotationen (Schneiers self studying course)



  • Hallo,

    ich mache gerade Schneiers Self studying course (siehe seine Webseite oder google).

    Eine Aufgabe besteht darin, 8 Runden (oder so viele man schafft) Runden RC5 ohne Rotationen zu brechen.

    Leider komme ich nicht weiter.

    Wie würdet ihr es angehen?

    Liebe Grüsse


  • Mod

    Was ist denn der Kontext der Aufgabe? Was ist erlaubt? Dürftest du beispielsweise eine Chosen Plaintext Attacke machen?



  • Danke für die Antwort.

    Es ist alles erlaubt wenn ich richtig gelesen habe.

    Liebe Grüsse



  • Meine eigenen Vorschläge:

    1. Den Plaintext so verschlüsseln als gäbe es keinen Key sondern nur die anderen Operationen.
    Dann vergleicht man die beiden (Ciphertext und alternativen Ciphertext) und aus dem Unterschied berechnet man (z.B. über Gleichungen) den Schlüssel oder Teile des Schlüssels.

    2. Den Ciphertext "entschlüsseln" als ob es keinen Schlüssel gäbe und aus dem was rauskommt und dem Plaintext ein Verhältnis approximieren, so, dass man dann von jedem Ciphertext auf den Klartext oder Teile des Klartextes schliessen kann. Je mehr Klartext/Ciphertext Paare desto besser womöglich die Approximation.

    Liebe Grüsse



  • Hallo, ich glaube ich habe RC5 ohne Rotationen gebrochen (ich hoffe ich täusche mich nicht, falls ja bitte gleich korrigieren, danke).

    Ich habe am PC per Hand bei einer Version mit stark verkleinertem Plaintext und Rundenschlüssel (je 2 bit) und dem Angriff auf einen der beiden Blöcke (in dem Fall der Linke) herausfinden können, dass man C als Ergebnis EINER XOR Operation und EINER Addition p+k mod 2^Blockrösse (des linken Blocks) darstellen kann.

    Zu jedem key kann ich ausrechnen mit welchem Wert ich XORen muss was nachher beim entschlüsseln anderer chiphretexte noch wichtig sein wird.

    Ich kann jetzt, wenn die Blockgrösse des Linken Blocks 64 bit beträgt, alle 2^64 Schlüssel plus passenden Wert mit dem ich XORen muss ausrechnen.

    Ich wähle also einen zweiten Klartext (adaptive chosen plain attacke) bei dem nur der Linke Block modifiziert wird. (so bleiben die Werte/der Wert mit denen/dem geXORed wird gleich).

    Jetzt probiere ich alle Schlüssel und Wert für das XORen Paare aus.

    Das Paar das auch beim zweiten Klartext/Chiffretext Paar passt ist das Paar dessen Schlüssel richtig ist und nun für alle linken Blöcke anwendbar ist.

    Das selbe mache ich mit dem rechten Block.

    Somit wäre, wenn ich richtig liege RC5 ohne Rotationen für eine beliebige Anzahl von Runden gebrochen.

    (P.S. Bei diesem Angriff gehen wir davon aus, dass der/die Rundenschlüssel komplett zufällig ist.

    Es macht in diesem Fall aber keinen Unterschied da es sogar noch schwerer ist)

    Ich versuche den Angriff auf eine Version mit Rotationen auszuweiten und werde ihn auch bei kleinerer Block- und Schlüsselgrösse am PC testen so, dass man sicher gehen kann.

    Liebe Grüsse



  • Hallo,

    ich würde es mal mit Vollbit Verschlüsselung (das sicherste Daten Verschlüsselungs Programm der Welt) probieren! 😃 👍


Log in to reply