web-dev-qa-db-ja.com

PGP Enigmailの問題、自分のメッセージを復号化または署名できなくなった

ある日から別の日に、Enigmail Thunderbirdプラグインが機能しなくなり、公開キーで暗号化されたメッセージを解読できなくなりました。これらのメッセージを自分で書いたとしても。

メッセージを解読しようとするたびに、次のエラーが表示されます。

Fehler - Entschlüsselung fehlgeschlagen
Öffentlicher Schlüssel MYKEYCODE zur Überprüfung der Unterschrift benötigt

gpg: Entschlüsselung fehlgeschlagen: Geheimer Schlüssel ist nicht vorhanden

Hinweis: Die Nachricht wurde mit folgenden Benutzer-IDs / Schlüsseln verschlüsselt: 
0xMYKEYCODE (Robert Lastname <[email protected]>)

私はドイツのサンダーバードを使用しているので、ここに私の翻訳があります:

Error - Decryption failed
Public Key MYKEYCODE needed to verify signature

gpg: Decryption failed: Secret (private) key not found

Hint: Message was encrypted with the following User-Ids/Keys:
0xMYKEYCODE (Robert Lastname <[email protected]>)

秘密キーが見つからない場合はどうすればよいですか?自分に送信する前に、メッセージを個人的に暗号化しました。私はこれを何時間も解決しようとしています。 Enigmailを数回再インストールしました。また、GnuPGを数回再インストールしました。すべてのキーを削除し、再インポートしました。私が特に夢中になっているのは、同じ公開鍵と秘密鍵のペアでEnigmailを使用している別のラップトップを持っていることです。

エラーメッセージの0xMYKEYCODEが、キーマネージャーの公開キーと秘密キーのペアのコードと異なることを疑っていますが、どうすればよいでしょうか。

よろしくお願いします、ロバート

編集:たぶんこれは役立ちます:解読できないコンピューターではメッセージに署名できませんが、他のマシンでは署名できます。それで、どうやらEnigmailは私の秘密鍵を使えないようです、なぜですか?

EDIT2:メッセージに署名しようとすると、「エラー-間違ったパスフレーズ」というエラーで拒否されます。すべてのキーを再インポートした後、私はどこでも私の秘密鍵のペアを保護するパスフレーズを提供するように頼まれたことはありませんでした!?

EDIT3:私が呼び起こす場合

echo RELOADAGENT | gpg-connect-agent

暗号化が機能するlaptotで、gpg-connect-agentがインストールされていないことがわかります???それが機能するラップトップでは、キーは実際にgnomeキーリングによって管理されているのでしょうか(Enigmailがgpg-agentによって管理されていると言っているにもかかわらず)。

ただし、復号化が機能しなくなったラップトップでは、echo RELOADAGENT | gpg-connect-agentを呼び出すことができます。したがって、gpgは注意を払っていて、おそらくgnomeキーリングと組み合わせて混乱しているのでしょうか?

6
SmCaterpillar

わかりましたので、私はちょっとそれを考え出した。 Thunderbirdの構成でuseGpgAgentfalseに設定し、いくつかの再起動に加えてシステムの更新を行うと、すべてが再び機能します。

実際に問題を引き起こしているものを把握できなかったため、これは非常に不満足な答えだと思います。 gpg-agentはgnome-keyringおよびタツノオトシゴキーマネージャーではうまく動作しないと推測できます(明らかに、OSを初めてセットアップしたときにUbuntuによって自動的にインストールされました)。

1
SmCaterpillar

OSXでgpg v2を使用してこの問題が発生し、gpg v1をインストールして修正しました。これがUbuntuに該当するかどうかはわかりません。

3
Tom Wadley

私の場合、useGpgAgenttrueに設定すると、実際に問題が修正されました。 Thunderbirdバージョン38.5.1、Enigmail 1.8.2(20150416-1748)、gpg(GnuPG)2.0.28、libgcrypt 1.6.3。

2

OK 非常に簡単な解決策がありました。自分にメールを送信するとき、それらは自動的に暗号化されました。それらを開くと、同じエラーが発生しました。

Sidenote:メールクライアントがメールアドレスを認識し、キーを割り当てたため、自動的に暗号化されました。

解決:

Enigmailの設定で「パスフレーズを要求しない」などのチェックを外します。次に、メールを再度開き、正しいパスフレーズを入力します。

Additional info:Thunderbirdのenigmailはバカだと思ったので、代わりにコマンドラインを使用し、復号化してパスワートを見つけようとしましたそこにgpg --decrypt <Message>が付いたメッセージ。奇妙なことに、正しいパスワードを入力したときに、暗号化されたメールが表示されませんでした。ただし、Thunderbirdではそれが行われました。

2
user414158

Edit Per-Recipient Rules」に進み、自分に送信するメールを暗号化も署名もしないルールを作成しました。

解読できないメールについては、メール本文を個々のテキストファイルにコピーしました。

次に、それらを配置するディレクトリから、端末にcat filename.txt | Sudo gpg --decryptと入力し、言い換えるとfilename.txtが各ファイルの名前に置き換えられた後、問題のメールの内容を確認しました。

1
Imran Nazir

秘密鍵がありません。 GnuPGとEnigmailの再インストールは、GnuPGキーリングの問題であるため、おそらく役に立ちません。

どういうわけか、秘密鍵リングが破損したようです。バックアップから~/.gnupgの作業バージョンを復元します。まだ持っていない場合は、(今すぐ始めて)~/.gnupgフォルダー全体をコピーするか、秘密キーをエクスポートして、他のコンピューターからキーを取得します。

gpg --export-secret-keys [keyid] > secret-keys.pgp

壊れたキーでコンピューターにインポートします:

gpg --import secret-keys.pgp

前にキーを削除する必要がある場合があります。

1
Jens Erat

Ubuntu 14.10/GNOME 3.12でまったく同じ問題が発生しています。

useGpgAgent was already私にはfalseに設定されており(実際、今までGpgAgentをインストールしていませんでした)、システムは完全にアップグレードされているため、smCaterpillarのソリューションは役に立たないでしょう。

公開キーと秘密キーを.gnupgから削除し、useGpgAgentとuseGpgKeytoolsをそれぞれのデフォルトに設定し、Thunderbird GNOMEキーリング統合拡張機能を無効にしました。また、smCaterpillarに似たものがいくつかの再起動でうまくいくことを期待しています。

編集:Enigmailメニューから「保存されたパスフレーズを消去」することが私に起こりました。奇妙なことに、Thunderbird/Enigmailは、パスワードを管理するためにGPGエージェントを使用しているため、パスワードを削除できないと言っています。ただし、useGpgAgentはfalseに設定され、GPGエージェントは実行されていません。

1
Mona

私は同じ問題を抱えていました。Enigmailは秘密鍵を見つけることができなかったと言っていましたが、gpg -dはうまく機能しました。

次に、使用したカスタムpinentry-program.gnupg/gpg-agent.conf(私の場合はpinentry-qt4)で定義されていることを発見しましたが、これは新規インストールにはありませんでした。その行を削除するかpinentry-qt4をインストールすると、問題が解決しました。

その場合、enigmailエラーメッセージはより具体的である必要があります。

0
nidi