Hi.
Lest ihr alle nicht richtig?
@ negaH:
Zitat:
Zitat:
Zitat:
Soll heißen:
Selbst wenn du am Anfang Zufallsbits anhängst sind diese in der Mitte nicht mehr, da sie ja nicht durchgängig vom Anfang her mitgetragen werden! Du kannst also, beginnend mit dem zweiten Stream, später einen Known-Plaintext-Angriff durchführen. Und das geht eben nicht, wenn die Verschlüsselung durchgängig ist.
Absolut falsch, denn es hängt vom Ciphrmode ab. Wird mit ECB verschlüsselt, also OHNE Feedback der Blöcke untereinander, dann würde deine Aussage zutreffen. Denn nun wäre der Zufallsdatenblock am Anfang absolut eigenständig und hätte keinen Einfluß auf die nachfolgenden Blöcke.
Wird aber ein Feedback Modus benutzt so pflanzt sich der Zufall vom ersten Block bis zum letzten Block weiter. Besonders in dem von mir entwickelte CTS Modus, ein Doppel-Feedback-Modus, sind alle Blöcke von allen Vorgängerblöcken abhänig. Wird ein Block verändert und falsch entschlüsselt so hat das Einfluß auf alle nachfolgenden Blöcke. Diese Eigenschaft nennt man "Error-Propagation" und ist abhängig vom Einsatzzweck erwünscht oder nicht erwünscht. Für sehr sichere Verschlüsselungen ist dies erwünscht. Den nun kann man einen Datenblock über die Message hinaus weiter verschlüssln. Dieser Datenblock dient dann als C-MAC = Cipher Message Authentication Code, sprich sichere Prüfsumme. Sie erspart also die doppelte Anwendung einer Hashfunktion, oder wird sogar als Hashfunktion selber benutzt.
Erst sagst du mir, dass das falsch sein und dann sagst du wieder genau das, was ich auch schon sagte. Guck doch mal, was ich bei Luckie kritisiert habe: Nicht, dass er alles zusammen verschlüsseln will, sondern dass er die Streams einzeln verschlüsseln will. Und dann müsste er immer wieder neue Zufallsblöcke einbauen! Und genau auf diese einzelnen Verschlüsselungen bezieht sich mein Zitat oben. Du solltest also eher "Absolut richtig" oder so schreiben. Du hast mich ja quasi bestätigt.
Zitat:
Zitat:
Zitat:
Hier ein Beispiel:
Ich habe den Text oben mit Rijndael (Hash: SHA1) verschlüsselt. Einmal hab ich vorne ein x Angehäng und einmal ein y. Obwohl die Textlänge stets gleich ist, findest du einen komplett anderen Ciphertext vor! (Die ersten 28 Zeichen darfst du nicht beachten, weil diese nur den Hash-Wert des Originaltextes darstellen:
Weil du eben den Hashwert mit verschlüsselst. Dies bedeutet aber das
1.) bei gleicher Message der gleiche Hashwert erzeugt wird, und somit die verschlüsselte Nachricht mit gleichem Passwort immer gleich ist. Genau dies ermöglicht "known plain text" attacks, denn nun wird für alle kurzen Messages eine Datenbank erzeugt mit allen kurzen Passwörtern. Über diese Datenbank kann man nun zu einer verschl. Nachricht das Passwort raussuchen.
2.) Wird eine "Brute Force Attack" gemacht so ermöglicht der Hashwert die Überprüfung der entschlüsselten Message. Der Angreifer hat also eine auswertbare automatisierbare Funktion mit der er das Test-Passwort überprüfen kann.
@ Hagen und @ mirage228:
Auch nicht richtig:
Ich hab den Originaltext mit Rijndael mit Mode CTS und Hash SHA1 verschlüsselt und das Ganze dann im MIME Base 64-Format ausgegeben.
Anschließend hab ich vor den verschlüsselten Text noch den SHA1-Hashwert des Originaltextes geschrieben, der im MIME Base 64-Format genau 28 Zeichen lang ist.
Beim Entschlüsseln wird also erst der Original-Hash-Wert (der nicht verschlüsselt ist) entfernt und gespeichert und anschließend der Rest entschlüsselt! So kann dann festgestellt werden, ob das Passwort richtig war. Und auch bei einer Brute-Force-Attack musst du den Text erst komplett entschlüsseln, bevor du den Hash-Wert zum Vergleich berechnen kannst.
Und mein Beispiel war dazu gedacht, um euch (besonders Luckie) zu zeigen, dass ein einziges anderes Bit (nicht einmal ein komplettes Byte) ganz am Anfang des Klartextes, den gesamten Ciphertext anders aussehen lässt. Und das, obwohl nicht einmal etwas verschoben ist.
Hiermit wollte ich klarmachen, dass es wichtig ist, dass du - beim einzelnen Verschlüsseln der Streams - vor jeden Stream neue Random-Bytes hängst.
Jetzt verstanden???
Wie weit bist du mit deiner Version des
DEC? Hab mein
GUI so gut wie fertig und werde dann mal anfangen den Cipher zu integrieren.
Lohnt es sich, dass ich dabei auf die neue Version über PN warte?
MfG,
Daniel.
PS:
*HEUTE SAMSTAG - SAMSTAG NICHT FEIERTAG IST*