web-dev-qa-db-ja.com

GnuPGで暗号化し、OpenSSLで復号化できますか?

これがLinuxでは機能しないのはなぜですか?

gpg --cipher-algo AES256 -c -o test.Zip.enc test.Zip 
Enter passphrase:

openssl enc -AES-256-CBC -d -in test.Zip.enc -out test.Zip
enter aes-256-cbc decryption password:
bad magic number

コンテキストを説明するために、LinuxでGnuPGを使用してファイルを暗号化し、追加のソフトウェアをインストールせずにMacユーザーがファイルを復号化できるようにするアプリケーションがあります(OpenSSLはOS Xにプリインストールされています)。

7
xtrb8433

OpenSSLはX.509標準を実装し、GnuPGはOpenPGPを実装します。どちらもほとんど同じ暗号アルゴリズムを使用しており、多くのオーバーラップがありますが、両方のプロトコルには独自のファイル形式があり、特に対称暗号化の操作モードに小さな違いがあります。

OpenSSLとGnuPGはほとんどすべてのオペレーティングシステムで利用できますが、GnuPGはデフォルトでほとんどのLinuxディストリビューションにのみ出荷されますが、OpenSSLはほとんどすべてのunixoidオペレーティングシステムで簡単に利用できます。

GnuPGの使用を主張する場合は、OpenSSLと互換性のあるX.509の実装であるGnuPGのgpgsmコンポーネントも参照してください(ただし、形式が異なるため、OpenPGPキーを使用できないため、X.509キーが必要です。 )。

5
Jens Erat

OpenPGP(GPG)とOpenSSLは、(少し)異なる使用のために異なる暗号化フォーマットを使用します。これらの形式は互換性がありません。特に、OpenSSLはOpenPGPで暗号化されたデータを解析できません。

LinuxとOS Xの両方で同じソフトウェアを使用することをお勧めします。

3
A. Hersean