1. ホーム
  2. openssl

[解決済み] OpenSSLでファイルを復号化しようとするとBad Magic Numberエラーが発生する

2022-02-02 20:17:54

質問

Windows版OpenSSLの最新バージョンを使って、メッセージを復号化しようとしています。 U2FsdGVkX18ztmw81FTK/c+jAf8xtcZdIpesuV2PLDM= DESで暗号化された(パスワードは。 pass を実行するために、次のコマンドを使用しています。

des -d -in Encrypted.txt -out normal.txt

を入力すると、パスワードの後に不正なマジックナンバーエラーが発生します: pass

Encrypted.txtには、暗号化されたメッセージが含まれています。 U2FsdGVkX18ztmw81FTK/c+jAf8xtcZdIpesuV2PLDM= で、normal.txtは空です。

スタックオーバーフローのすべての記事を検索しましたが、私の問題を解決することができる記事を見つけられませんでした。

解決方法は?

への入力は des コマンドはbase64であってはならない。その代わり、まずbase64の出力をデコードし、それをOpenSSLの des コマンドを使用します。例えば、Linuxで以下を実行すると。

echo U2FsdGVkX18ztmw81FTK/c+jAf8xtcZdIpesuV2PLDM= | openssl enc -base64 -d | openssl des -d

正しい出力が得られます。

hello world

Windowsはパイプが苦手なので、出力を中間ファイルにリダイレクトして、個別に実行する必要があります。 openssl コマンドを使用します。