Frage zum Data Encryption Standard

Hey,

ich ziehe mir gerade die Vorlesungen vom Christof Paar rein (https://www.youtube.com/channel/UC1usFRN4LCMcfIV7UjHNuQg). In Video 10 geht es im ersten Teil darum, wie man den 2DES durch eine Meet-in-the-middle Attacke knackt (also wie man den Schlüssel heraus bekommt). Hier nochmal die URL zu dem Video.

Ein 2DES ist zweimal der DES-Algorithmus hintereinander geschaltet.

Was ich mich aber gerade frage, ist folgendes: Der Block eines Klartextes besteht aus 64 bit und der Schlüssel aus effektiv 56 bit. Angenommen, ich hätte 64 bit verschlüsselte Daten und wüsste nur, dass dieser mit dem DES verschlüsselt worden ist. Dann muss ich 2^56 Schlüssel durchtesten.

Aber da ist doch die Frage: Welche Eingabe ist denn genommen worden? Ich meine, um herauszufinden, welche Eingabe und welchen Schlüssel ich habe, müsste ich doch nicht nur die 2^56 Schlüssel durchiterieren, ich müsste doch auch noch über 2^64 mögliche Eingaben iterieren, also insgesamt 2^56 * 2^64 Iterationen, da ich ja annehme, dass ich sowohl den Klartext, wie auch den Schlüssel nicht kenne?

Habe ich da einen Denkfehler?
 
Einen Denkfehler hast du nicht.

Wenn du tatsächlich nur irgendwelche Zufallsbytes verschlüsselst, kannst du nicht wissen, ob das Bruteforce erfolgreich war.

Auch deine Kombination bringt dich da nicht weiter.
 
Wie Tsjuder sagte lassen sich zufällig verschlüsselte Daten nicht mittels Brute Force knacken, da man keine Ahnung hat ob der gerate Key die richtige Ausgabe produziert.

Du brauchst also eine Methode um zu überprüfen, um der gerate Key und das entschlüsselte Ergebnis korrekt ist. Dies ist oft möglich, z.B. wenn du weißt dass der Text deutsch/englisch war, dann überprüfst du ob der entschlüsselte Text mit dem entsprechenden Key deutsch/englisch war.

Ebenso enthalten viele Algorithmen noch eine Prüfsumme an der man die korrekte Entschlüsselung überprüfen kann. Oder es gibt irgendwelche festen Blocks, z.B. das der erste Block nur aus Nullen besteht. Daran kann ein Angreifer überprüfen, ob seine Entschlüsselung korrekt war.
 
Moin,
beim Meet-in-the-Middle geht man davon aus, dass man mindestens zwei Paare von Klar- und Chiffretext kennt. (Je mehr du kennst, um so wahrscheinlicher ist es, dass der gefundene Key der richtige Key ist.)

Kennst du aber keine Paare kann man tatsächlich nur raten, ob die Entschlüsselung so korrekt ist. (Denk daran, dass es unendlich viele sinnvolle Buchstabenkombinationen gibt. Reduziert man es auf eine Sprache sind es ein paar weniger. Aber da musst du dir schon sicher sein, dass der Text durchgehend sinnvoll sein sollte.)

Un nebenbei: Ich glaube, dass kein Heimrechner den 2DES mit MITM effizient lösen kann. (ohne Zeitoptimierungen durch z.B. Bewertungsfunktionen..)
 
DES wird doch kaum noch genutzt? AES128/256 wäre doch ein lohnenderes Ziel.

Einer meiner Dozenten sagte, dass der DES noch sehr häufig von Banken eingesetzt wird, da es "zu teuer" oder zu "arbeitsintensiv" sei, den Standard zu wechseln. Anstelle dessen wird er nur "sicherer" gemacht, und auf 3DES mit Verschleierungen gesetzt.

Die Uni Bremen hat wohl auch ein System, dass den DES in 36h Bruteforcen kann. Oder war es der AES128?...ich glaube eher DES. Bin mir da aber nicht mehr sicher :D
 
Einer meiner Dozenten sagte, dass der DES noch sehr häufig von Banken eingesetzt wird, da es "zu teuer" oder zu "arbeitsintensiv" sei, den Standard zu wechseln. Anstelle dessen wird er nur "sicherer" gemacht, und auf 3DES mit Verschleierungen gesetzt.

Die Uni Bremen hat wohl auch ein System, dass den DES in 36h Bruteforcen kann. Oder war es der AES128?...ich glaube eher DES. Bin mir da aber nicht mehr sicher :D

Ich würde pauschal behaupten, dass alles unter einer Schlüssellänge von 128bit als unsicher einzustufen ist.

Stand 2009!

https://www.bsi.bund.de/DE/Themen/ITGrundschutz/ITGrundschutzKataloge/Inhalt/_content/g/g04/g04035.html
 
Zurück
Oben