データをやり取りするサーバーが 2 台あります。1 台は Ubuntu、もう 1 台は Red Hat です。それぞれにすでにインストールされているバージョン (Ubuntu は gnuPG 1.4.x を搭載した 12.04、Red Hat は gnuPG 2.0.x を搭載した Enterprise 6.1) を使用すると、Ubuntu から Red Hat への暗号化を解読できません。
Ubuntu サーバー上の gnuPG 拡張機能を使用して、PHP で暗号化/復号化を行います。Red Hat サーバーは、CGI スクリプトのシェルを介して gnuPG にアクセスします。
Red Hat で公開鍵/秘密鍵を作成し、公開鍵をエクスポートしました。それを Ubuntu にインポートして署名しました。次に、Ubuntu でファイルを暗号化し、それを Red Hat サーバーにコピーして復号化を試みました。
こんな返答が返ってきました
gpg -d tocyn.gpg
gpg: no valid OpenPGP data found.
gpg: decrypt_message failed: Unknown system error
この応答の意味に関する情報があまり見つからないため、これをどうすればよいかわかりません。 2 つの異なるバージョン間でこれを行うことはできないのでしょうか? 誤解しているかもしれませんが、実質的には同じものだと思っていました。
答え1
GnuPG 2.0.x と 1.4.x の最新バージョンは両方とも完全に互換性があります。これは問題ではないはずです。データが正しく転送されたことを確認してください (チェックサムを使用するなど)。
とにかく、Ubuntu のような Debian 派生版は GnuPG 1 と 2 の両方をインストールします。GnuPG gpg
1.4.x とgpg2
GnuPG 2.0.xはどこにありますか。
GnuPG 2 のマニュアルページより:
gpg2
GNU Privacy Guard (GnuPG/MacGPG2) の OpenPGP 部分です。OpenPGP 標準を使用してデジタル暗号化および署名サービスを提供するツールです。gpg2
完全なキー管理機能と、適切な OpenPGP 実装に期待できるすべての機能を備えています。サーバーや組み込みプラットフォームに適したスタンドアロン バージョンとは対照的に
gpg
、このバージョンは一般に という名前でインストールされ、他のいくつかのモジュールのインストールが必要なため、デスクトップを対象としています。スタンドアロン バージョンは保守され続け、両方のバージョンを同じシステムにインストールすることができます。異なる構成ファイルを使用する必要がある場合は、 gpg.confgpg2
のようなものを使用する必要があります。gpg.conf-2' instead of just