Hallo. ich habe eine (recht einfache) chiffre bekommen.
input und key sind 8bit, genau wie auch die ausgabe (chiffre)
Aufbau der Chiffre:
Input(P) wird in 2x 4Bit aufgeteilt, ebenso der Schlüssel(K)
nun ein XOR: jeweils p1p2p3p4 mit k1k2k3k4 und das gleiche mit dem anderen block.
nun folgt eine lineare substitutionsbox:
Y1 = x1 XOR x3
Y2 = x1 XOR x2 XOR x3
Y3 = x2 XOR x4
Y4 = x1 XOR x4 XOR x3
beide s-boxen sind bijektiv und identisch!
Anschließend werden die bits wieder zusammengefügt:
Y3 Y4 Y5 Y6 Y7 Y8 Y1 Y2
-------------
Als Ansatz habe ich ein Zeichen des Klartextes gegen, kenne also an einer stelle sowohl klar- alsauch chiffretext. Daraus ist der schlüssel zu ermitteln.
Gesucht ist ein MATHEMATISCHER Ansatz.
meine erste idee ist, durch die sboxen rückschlüsse auf x1 bis x8 zu ziehen, jedoch stoße ich da immer wieder auf widersprüche.
Beispiel:
C = ! = 0010 0001
P = t = 0111 0100
nun kehre ich die permutation um:
Y1 bis Y8: 0100 1000
y1 = x1 XOR x3 = 0 --> x1 = x3
y2 = x1 XOR x2 XOR x3 =1 --> x1 = x3 <> x2
y3 = x2 XOR x4 = 0 --> x2 = x4 --> x1 = x3 <> x2 = x4
y4 = x1 XOR x4 XOR x3 = 0 <-- Widerspruch, da x4 ungleich x1 und x3 sein muss
entdeckt jemand einen fehler oder hat einen anderen ansatz?
input und key sind 8bit, genau wie auch die ausgabe (chiffre)
Aufbau der Chiffre:
Input(P) wird in 2x 4Bit aufgeteilt, ebenso der Schlüssel(K)
nun ein XOR: jeweils p1p2p3p4 mit k1k2k3k4 und das gleiche mit dem anderen block.
nun folgt eine lineare substitutionsbox:
Y1 = x1 XOR x3
Y2 = x1 XOR x2 XOR x3
Y3 = x2 XOR x4
Y4 = x1 XOR x4 XOR x3
beide s-boxen sind bijektiv und identisch!
Anschließend werden die bits wieder zusammengefügt:
Y3 Y4 Y5 Y6 Y7 Y8 Y1 Y2
-------------
Als Ansatz habe ich ein Zeichen des Klartextes gegen, kenne also an einer stelle sowohl klar- alsauch chiffretext. Daraus ist der schlüssel zu ermitteln.
Gesucht ist ein MATHEMATISCHER Ansatz.
meine erste idee ist, durch die sboxen rückschlüsse auf x1 bis x8 zu ziehen, jedoch stoße ich da immer wieder auf widersprüche.
Beispiel:
C = ! = 0010 0001
P = t = 0111 0100
nun kehre ich die permutation um:
Y1 bis Y8: 0100 1000
y1 = x1 XOR x3 = 0 --> x1 = x3
y2 = x1 XOR x2 XOR x3 =1 --> x1 = x3 <> x2
y3 = x2 XOR x4 = 0 --> x2 = x4 --> x1 = x3 <> x2 = x4
y4 = x1 XOR x4 XOR x3 = 0 <-- Widerspruch, da x4 ungleich x1 und x3 sein muss
entdeckt jemand einen fehler oder hat einen anderen ansatz?
Comment