So lösen Sie die "EVP_DecryptFInal_ex: bad decrypt" während der Dateientschlüsselung

8

Ich habe die folgende Frage.Könnte mir bitte eine Lösung vorschlagen.

Ich arbeite an der Verschlüsselung und Entschlüsselung der Datei zum ersten Mal.

Ich habe die Datei über die Eingabeaufforderung mit folgendem Befehl verschlüsselt:

%Vor%

Ich muss es programmatisch entschlüsseln. Also habe ich das Programm dafür geschrieben, aber es wirft den folgenden Fehler auf:

%Vor%

Das folgende Programm nimmt die Eingabe als Verzeichnispfad und sucht nach der verschlüsselten Datei ".enc" und versucht sie zu entschlüsseln, die in den Puffer eingelesen wird.

Code:

%Vor%

Danke.

    
Sai 16.12.2015, 05:30
quelle

2 Antworten

18

Diese Nachricht digital envelope routines: EVP_DecryptFInal_ex: bad decrypt kann auch auftreten, wenn Sie mit einer inkompatiblen Version von openssl verschlüsseln und entschlüsseln.

Das Problem, das ich hatte, war, dass ich unter Windows mit der Version 1.1.0 verschlüsselte und dann auf einem generischen Linux-System mit 1.0.2g entschlüsselte.

Es ist keine sehr hilfreiche Fehlermeldung!

    
Sean Dawson 08.05.2017 12:24
quelle
4

Ich denke, dass der Schlüssel und die IV, die für die Verschlüsselung mit Befehlszeile und die Entschlüsselung mit Ihrem Programm verwendet werden, nicht gleich sind.

Bitte beachten Sie, dass bei Eingabe von "-k" (anders als "-K") die angegebene Eingabe als ein Passwort betrachtet wird, von dem der Schlüssel abgeleitet wird. Im Allgemeinen ist in diesem Fall die Option "-iv" nicht erforderlich, da sowohl der Schlüssel als auch das Passwort von der mit "-k" angegebenen Eingabe abgeleitet werden.

Es ist nicht klar aus Ihrer Frage, wie Sie sicherstellen, dass der Schlüssel und IV zwischen Verschlüsselung und Entschlüsselung gleich sind.

In meinem Vorschlag sollten Sie besser die Option "-K" und "-iv" verwenden, um den Schlüssel und den IV während der Verschlüsselung explizit anzugeben und denselben für die Entschlüsselung zu verwenden. Wenn Sie "-k" verwenden müssen, verwenden Sie die Option "-p", um den für die Verschlüsselung verwendeten Schlüssel und iv zu drucken und in Ihrem Entschlüsselungsprogramm zu verwenden.

Weitere Informationen erhalten Sie unter Ссылка

    
Jay 16.12.2015 09:57
quelle

Tags und Links