GnuPG —すでに署名されたメッセージを暗号化する


0

少なくとも受信メールサーバーに暗号化して保存できるように、受信後に電子メールを暗号化するプログラムに取り組んでます(ただし、プレーンテキストで送信されます)。すでに暗号化されたメールを二重暗号化しないように設計されていますが、まだ署名済みのメールの暗号化に失敗しているようです。

この一連のコマンドをテストしましたが、失敗します。これは基本的にプログラムが行っていることです:

echo "Hello" > blah.txt
gpg --clearsign blah.txt
gpg --encrypt --armor blah.txt.asc
gpg --decrypt blah.txt.asc.asc

通常、最後のコマンドは署名を復号化し、検証します。ただし、代わりに復号化のみを行い、署名の検証には2回目の--validateパスが必要です。これは、PGPサポートが含まれている場合でも、メールクライアントがメールを誤って表示することを意味します。


1
それは私にとって普通の予想される動作のようです。どちらかといえば、プログラムは復号化されたメッセージをスキャンして、ユーザーに提示する前に署名の検証が必要かどうかを判断する必要があります。あなたのプログラムはマトリョーシカのゲームをプレイするものです。それをクリーンアップするのはGnuPGの仕事ではありません。

このプログラムは、電子メールを暗号化解除するのではなく、暗号化するものです。GnuPGを--encryptおよび--clearsignとともに一度に使用すると、-decryptが機能します。ただし、個別に実行した場合は機能しません。ただし、理論的には既に署名されたメッセージを暗号化することは可能です(受信者の電子メールアドレスが署名されていないため、これはしばしば脆弱性と見なされます)。
uakf.b

回答:


0

GPGは、元の暗号化プロセスに署名が含まれていた場合にのみ、ファイルの復号化と同時に署名を検証できます。GPGの観点からは、PGP / MIMEに含まれるクリア署名メッセージまたは分離署名は、暗号化されたプレーンテキストデータの一部になります。したがって、署名を検証する別の操作は正常です。

興味深いことに、暗号化されたブロック内に明確に署名された署名をネストするこのプロセスは、RFC 4880の推奨事項に近くないにもかかわらず、Hushmailがまさに行うことです。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.