Hausübung: Padding für Blockchiffren

Tribune
Erstie
Erstie
Beiträge: 16
Registriert: 23. Okt 2009 12:12

Re: Hausübung: Padding für Blockchiffren

Beitrag von Tribune »

@Tobio
Vielen Dank für die ausführliche Erläuterung, so macht der Shift für mich jetzt auch Sinn! Danke dir!

Dennis Albrecht
Sonntagsinformatiker
Sonntagsinformatiker
Beiträge: 222
Registriert: 4. Okt 2010 18:15

Re: Hausübung: Padding für Blockchiffren

Beitrag von Dennis Albrecht »

Ich hatte hier:
http://www.d120.de/forum/viewtopic.php?f=199&t=24280
gestern auf Anfrage ne Erklärung für den OFB reingesetzt. Der ist zwar leichter verständlich als der CFB, aber wer zu beiden Verfahren noch keinen Zugang gefunden hat, dem mag die Erklärung vielleicht auch weiterhelfen. Die Erklärung ergänzt das Bild dann noch; den CFB hat Tobio ja schon gut umrissen.

Gruß

einalex
Nichts ist wie es scheint
Beiträge: 23
Registriert: 23. Aug 2010 13:40

Re: Hausübung: Padding für Blockchiffren

Beitrag von einalex »

Tobio hat geschrieben:Ich versuchs mal mit ner knappen Zusamenfassung wie CFB funktioniert.

Wir haben \(I_1\) = IV . Wir verschlüsseln \(I_1\) mit E.
Dann die ersten r bits davon nehmen und mit den ersten r bits von m ver-xor-en.
Das ist dann \(c_1\). Das nehmen wir und shiften es quasi in \(I_1\) rein, sodass vorne
die letzen 2 bits von IV stehn und hinten \(c_1\). Das ist dann \(I_2\).
Das geht dann so weiter, bis das Wort zuende ist.
Ich hoffe, man kanns so an dem Bild nachvollziehen

Lg
Dh ich konvertier zuerst meine Nachricht mithilfe der Tabelle in 5bit Packeten ins Binärsystem
und um dann E anwenden zu können konvertier ich in jedem Block nochmal 6 bit breit nach integer und wieder zurück oder habt ihr die "+50 mod 64" tatsächlich auf bit Strings implementiert?

Dennis Albrecht
Sonntagsinformatiker
Sonntagsinformatiker
Beiträge: 222
Registriert: 4. Okt 2010 18:15

Re: Hausübung: Padding für Blockchiffren

Beitrag von Dennis Albrecht »

einalex hat geschrieben:Dh ich konvertier zuerst meine Nachricht mithilfe der Tabelle in 5bit Packeten ins Binärsystem
und um dann E anwenden zu können konvertier ich in jedem Block nochmal 6 bit breit nach integer und wieder zurück oder habt ihr die "+50 mod 64" tatsächlich auf bit Strings implementiert?
Was heißt hier implementiert? Da bist du mit dem Schreiben eines Programmes länger beschäftigt, als wenn du es einfach selbst rechnest. Aber im Prinzip ist es wurscht:
mod 64 heißt einfach: alles bis auf die letzten sechs bits ignorieren.
ob du nun dezimal +50 oder binär +????? (kannst du selbst ausrechnen :D) rechnest ist egal; da du modulo rechnest kannst du auch einen Wert subtrahieren (welchen?), je nachdem was dir schöner aussieht.
Aber ja, du arbeitest immer auf 6-bit breiten Blöcken.

Gruß und frohes neues Jahr

Dennis

Antworten

Zurück zu „Archiv“