CTR Mode
CTR Mode
Hallo,
da man im CTR Modus ja kein padding benötigt, muss man ja irgendwie bits aus der Funktion abschneiden. Aber wie?
Z.B.:
m = 10000001 ( Länge 8 ) und IV = 10000 ( Länge 5 ).
Nach Übung 9 kann man wie folgt Verschlüsseln: c_i = m_i XOR f(k, ctr+i (mod 2^n))
Man verschlüsselt also die ersten 5 bits (da f auf 5 bits abbildet): c_0 = 10000 XOR 10001 = 00001
Jetzt möchte man die nächsten 3 bits verschlüsseln: c_1 = 001 XOR 11100 = ?
Was muss man jetzt machen?
c_1 = 001 XOR 111 oder c_1 = 001 XOR 100?
da man im CTR Modus ja kein padding benötigt, muss man ja irgendwie bits aus der Funktion abschneiden. Aber wie?
Z.B.:
m = 10000001 ( Länge 8 ) und IV = 10000 ( Länge 5 ).
Nach Übung 9 kann man wie folgt Verschlüsseln: c_i = m_i XOR f(k, ctr+i (mod 2^n))
Man verschlüsselt also die ersten 5 bits (da f auf 5 bits abbildet): c_0 = 10000 XOR 10001 = 00001
Jetzt möchte man die nächsten 3 bits verschlüsseln: c_1 = 001 XOR 11100 = ?
Was muss man jetzt machen?
c_1 = 001 XOR 111 oder c_1 = 001 XOR 100?
Re: CTR Mode
ich habe das leider auch nicht verstanden, bin eben auf das gleiche problem gestoßen.finde man kann das nicht aus dem skript herauslesen...
Re: CTR Mode
weiß jemand ob es in der kommenden Woche Sprechstunden gibt?
Re: CTR Mode
Auch wenn CTR kein Padding benötigt, habe ich erstmal einfach die initiale Nachricht bei Schritt 1 gepadded, um das Problem zu umgehen. Ob das gewollt ist, weiß ich allerdings nicht…
Ophasentutor SoSe 2014, WiSe 2015/16
Alle Angaben wie immer ohne Gewähr
Alle Angaben wie immer ohne Gewähr
Re: CTR Mode
Hallo zusammen,
Die Tatsache dass man bei diesem Modus (sowie OFB und CFB) kein wirkliches Padding benötigt liegt darin begründet, dass die Klartextblöcke mit der Ausgabe der eigentlichen Blockchiffre geXORed werden wodurch automatisch ein Block der von der Länge des letzten Klartextblocks erzeugt wird. Falls die Ausgabe der Blockchiffre länger ist als der zu verschlüsselnde Klartexblock, so werden die niederwertigsten Bits der Ausgabe für das XOR verwendet.
Somit ist kein initiales Padding notwendig
Viele Grüße,
Rolf
Die Tatsache dass man bei diesem Modus (sowie OFB und CFB) kein wirkliches Padding benötigt liegt darin begründet, dass die Klartextblöcke mit der Ausgabe der eigentlichen Blockchiffre geXORed werden wodurch automatisch ein Block der von der Länge des letzten Klartextblocks erzeugt wird. Falls die Ausgabe der Blockchiffre länger ist als der zu verschlüsselnde Klartexblock, so werden die niederwertigsten Bits der Ausgabe für das XOR verwendet.
Somit ist kein initiales Padding notwendig

Viele Grüße,
Rolf
Tutor:
- Einführung in Trusted Systems WS11/12, WS12/13, WS13/14, WS14/15
- GDI II SS11, SS12, SS13, SS14
- Einführung in die Kryptographie WS14/15
Re: CTR Mode
D.h. c_1 = 001 XOR 100 im obigen Beispiel?
Re: CTR Mode
Ich dachte, dass nach der CFB-Entschlüsselung entpadded wird (auch wenn es eigentlich nicht unbedingt notwendig wäre). Sonst frage ich mich, warum der Hinweis 5 (Für den sehr unwahrscheinlichen Fall, dass Sie für \(m^{(2)}\) den leeren String erhalten würden, setzten Sie \(m^{(2)}\) = …) im zweiten Schritt genannt wird. Wie soll sonst der leere String entstehen können?R_Egert hat geschrieben:Die Tatsache dass man bei diesem Modus (sowie OFB und CFB) kein wirkliches Padding benötigt …
Somit ist kein initiales Padding notwendig![]()
Ophasentutor SoSe 2014, WiSe 2015/16
Alle Angaben wie immer ohne Gewähr
Alle Angaben wie immer ohne Gewähr
Re: CTR Mode
Ich meinte damit dass es im allgemeinen nicht notwendig ist, da das XOR ja schon für die richtigen Längen sorgt, das soll nicht heißen, dass man es nicht verwendet, da so z.b. Längenunterschiede im letzten Block auftreten. Wenn es in der VL mit Padding verwendet wurde ist das natürlich so zu handeln 
Viele Grüße,
Rolf

Sollte so passen.D.h. c_1 = 001 XOR 100 im obigen Beispiel?
Viele Grüße,
Rolf
Tutor:
- Einführung in Trusted Systems WS11/12, WS12/13, WS13/14, WS14/15
- GDI II SS11, SS12, SS13, SS14
- Einführung in die Kryptographie WS14/15
Re: CTR Mode
Ok, Danke.R_Egert hat geschrieben:Sollte so passen.D.h. c_1 = 001 XOR 100 im obigen Beispiel?
Rolf
Ich vermute das wir dem Chiffrat aus dem ersten Schritt (CTR, nach meinem Beispiel: c_0 c_1 = 00001 101) ein Padding hinzufügen und dann 00001 10110 mit CFB entschlüsseln sollen.mmi1991 hat geschrieben: Ich dachte, dass nach der CFB-Entschlüsselung entpadded wird (auch wenn es eigentlich nicht unbedingt notwendig wäre). Sonst frage ich mich, warum der Hinweis 5 (Für den sehr unwahrscheinlichen Fall, dass Sie für \(m^{(2)}\) den leeren String erhalten würden, setzten Sie \(m^{(2)}\) = …) im zweiten Schritt genannt wird. Wie soll sonst der leere String entstehen können?
(Wobei aber laut Wikipedia eigentlich kein Padding verwendet wird wenn bits beim Entschlüsseln mithilfe von CFB fehlen; https://en.wikipedia.org/wiki/Block_cip ... _.28CFB.29)
Kann das bitte ein Veranstalter bestätigen?
Re: CTR Mode
müssen wir nicht auch dem dem m ein padding hinzufügen( falls das oben richtig ist)? da beim entschlüsseln ja f(k,m) gebildet werden muss und m die Länge 8 hat?