Angenommen, ich habe einen Server, der eine Datei mit einem symmetrischen Schlüssel verschlüsselt, z. AES-CBC und sendet es an Clients, die es entschlüsseln. Bietet dies Datenintegrität beim Entschlüsseln? Oder kann jemand die Datei manipulieren, während sie noch verschlüsselt ist, und später, wenn der Client sie entschlüsselt, eine geänderte Datei erstellen?
Ich sehe normalerweise Datenintegrität und -authentizität im Hinblick auf die Verwendung digitaler Signaturen oder MAC, aber niemals im Zusammenhang mit der Verschlüsselung. Ich habe auch Benchmarks gesehen, die zeigen, dass Verschlüsselung teurer ist als Hashing, aber das ist nicht meine Hauptüberlegung.
UPDATE
Ich habe ein Experiment versucht, bei dem Ich habe das openssl-Tool unter Linux verwendet, um eine Datei zu verschlüsseln. Dann habe ich versucht, die Datei auf verschiedene Arten zu ändern (Ändern eines Bytes, Löschen eines Bytes, Anhängen eines Bytes). In jedem Fall würde ich beim Versuch der Entschlüsselung eine "schlechte Entschlüsselung" erhalten. Die Befehle, die ich verwendet habe, waren:
openssl enc -aes-128-cbc -in test -out test.encopenssl enc -d -aes-128-cbc -in test.enc -out test. dec