それらの間でデータを渡す2つのサーバーがあります。1つはUbuntuで、もう1つはRedHatです。それぞれにすでにインストールされているバージョンを使用すると、UbuntuはgnuPG 1.4.xを備えた12.04であり、RedHatはgnuPG2.0.xを備えたEnterprise6.1であり、UbuntuからRedHatに移行することを復号化できません。
PHPを使用して、UbuntuサーバーのgnuPG拡張機能を使用して暗号化/復号化します。RedHatサーバーは、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つの異なるバージョン間でこれを行うことはできませんか?誤解したかもしれませんが、ほぼ同じだと思いました。
GnuPG2.0.xと1.4.xの両方の最近のバージョンは完全に互換性があります。これは問題ではないはずです。データが正しく転送されたことを確認してください(チェックサムを使用するなど)。
とにかく:UbuntuのようなDebian派生物はGnuPG 1と2の両方をインストールします。ここで、gpg
はGnuPG1.4.xと_gpg2
_ GnuPG2.0.xです。
GnuPG 2のmanページから:
_
gpg2
_はGNU Privacy Guard(GnuPG/MacGPG2)のOpenPGP部分です。これは、OpenPGP標準を使用してデジタル暗号化および署名サービスを提供するツールです。_gpg2
_完全な鍵管理と、まともなOpenPGP実装から期待できるすべてのベルとホイッスルを備えています。サーバーおよび組み込みプラットフォームにより適したスタンドアロンバージョン
gpg
とは対照的に、このバージョンは通常_gpg2
_という名前でインストールされ、他のいくつかのモジュールをインストールする必要があるため、デスクトップを対象としています。スタンドアロンバージョンは維持され、同じシステムに両方のバージョンをインストールすることが可能です。異なる構成ファイルを使用する必要がある場合は、_gpg.conf-2' instead of just
_ gpg.conf 'のようなものを使用する必要があります。