AES Verschlüsselung - Speichern der Datei- bzw. Nachrichtenlänge
-
Hi
Nicht wundern, ich bin noch sehr frisch auf diesem Gebiet, vllt kommen euch daher die Fragen ein wenig dämlich vor ...
Alsooo:
Wie ist das eigentlich mit der Länge der Datei bzw der Nachricht.
Bei der AES Verschlüsselung werden ja immer gleich ganze Blöcke verschlüsselt und eine Datei lässt sich nur selten exakt ohne Rest in die Blöcke dieser Größe aufteilen.
Also vermute ich mal, dass man die Datei- bzw. Nachrichtenlänge in die verschlüsselte Datei mit einbaut?
Wird die Länge dann auch verschlüsselt oder darf die ruhig unverschlüsselt bleiben.
-
Also mit der Nachrichtenlänge selbst kann man im Normalfall wohl nicht so viel anfangen, ich denke die dann man ruhig unverschlüsselt lassen. Fragt sich allerdings, ob man irgendeinen Vorteil davon hat, das zu tun.
PS: Mit zB CTR wird AES quasi zu einer Stromverschlüsselung, für einen Chat öÄ kann das besser geeignet sein.
http://en.wikipedia.org/wiki/Block_cipher_modes_of_operation
-
in meiner aes-klasse habe ich die anzahl der hinzugefügten zeichen einfach angehängt undzwar in vorm eines char der das ascii zeichen der anzahl der hinzugefügten zeichen wiederspiegelt. dadurch muss ich immer nur das letzte zeichen der verschlüsselten datei abfragen, in einen int umwandeln und tada ich hab die überstehenden zeichen
char letzteszeichen = char(6/*offset*/); int offset = int(letzteszeichen);
-
Ah, CTR klingt interessant.
Ich habe hier http://www.codeproject.com/Articles/57478/A-Fast-and-Easy-to-Use-AES-Library
eine Lib gefunden, scheint auch CTR zu unterstützen. Gucke ich mir morgen an, bin schon ganz matschig in der Birne vom vielen Lesen.
-
Nimm Crypto++, nicht irgendeine C Lib von Codeproject.
-
Ich lese immer wieder im Zusammenhang mit AES über irgendwelche Testvektoren.
Was sind Testvektoren?