わさっきhb

大学(教育研究)とか ,親馬鹿とか,和歌山とか,とか,とか.

ThunderbirdでPGP〜いくつか悩む

Windows版のGnuPGの~/.gnupgは?

これまで,PGP利用に関するスクリーンショットは,Windows XP ModeでThunderbirdほかを起動し,撮っています.
というのは,XP ModeのホストになるWindows 7のほうではすでに,Cygwinを入れていて,gpg.exeもそっちを使っているためです.
さて,Windows版のGnuPGを使っていて,keyringがどこに保存されているかを調べてみたところ…上記XP Modeでは「C:\Documents and Settings\XPMUser\Application Data\gnupg」となることがわかりました.このパスのうち,XPMUserはユーザ名です.
なお,このフォルダに行き着くためには,フォルダ オプションの設定が必要です.エクスプローラを起動したら,メニューから ツール(T)>フォルダ オプション(O) を選びます.そして「表示」のタブを選択し,詳細設定の中で「隠しファイルおよび隠しフォルダを表示しない」ではなく「すべてのファイルとフォルダを表示する」にチェックがつくようにします*1

文字化けポップアップ

ある日あるときある環境で,メールを暗号化して送ろうとして,うまくいきませんでした.
エラーのポップアップが出ますが,さっぱり読めません.

たぶん日本語メッセージで出力されているのですが,アプリケーション間の連携で,文字コードの同意がとれていないのでしょう.
GnuPGの出力を英語にできれば…と思って検索したところ,ヒントになるものが,見つかりました.

Windows Registry Editor Version 5.00
 
[HKEY_CURRENT_USER\Software\GNU\GnuPG]
"HomeDir"="D:\\Documents and Settings\\ユーザ名\\Application Data\\GnuPG"
"gpgProgram"="C:\\Program Files\\GnuPG\\gpg.exe"
"Lang"="ja"
"Installer Language"="1033"
GnuPG コマンドライン版の使い方メモ

Langがja…言語が日本語…これを,Linuxの慣習の表記で書き換えたらどうでしょう.手順は次のとおりです.

  1. Windowsのメニューで「ファイル名を指定して実行する」を選ぶ*2
  2. 名前の横に「regedit」と書いて,Enter
  3. 左側のツリーでをたどって,「HKEY_CURRENT_USER\Software\GNU\GnuPG」を開く
  4. 右側の「Lang」をダブルクリック
  5. 値のデータを「ja」から「en」に変更
  6. レジストリ エディタを終了

先ほどのメールを送り直すと…エラーメッセージが英語になりました.

鍵IDの設定

メールが暗号化して送れないという,上のエラーに対処しましょう.
「0x840627A6という鍵IDの(公開)鍵が存在しない」と読めます.
それで,これまでどおり,ThunderbirdのメニューでOpenPGPを開いて,あれこれやってみても…この鍵IDは,見当たりません.公開鍵サーバで検索しても,ないと返ってきます.
実はメニューの ツール(T)>アカウント設定(S) の中に,OpenPGPの設定があるのでした.


知らないうちに,鍵IDとして0x840627A6が指定されていました.何かのときに生成し,捨ててしまった鍵だったか….
鍵IDが書かれているすぐ右,「鍵の選択...」ボタンを押せば,使用できる鍵の一覧が出ます.公開鍵ではなく,鍵ペアの鍵IDが出ますので,凝った設定をしていなければ,一つだけです.そしてそれを選べばおしまいです.

XP Modeでリセット

Windows XP Modeで,復元に失敗することがありました.
まずは終了させます.それから,ホスト側(Windows 7)で,C:\Users\(自分のユーザ名)\AppData\Local\Microsoft\Windows Virtual PC\仮想マシン\Windows XP Mode.vsv というファイルを探し*3,削除します.これで,Windows XP Modeのアイコンをダブルクリックして起動し,復旧できました.
参考にしたもの:Windows XP Mode が、休止状態から復元できなくなった! : @jsakamoto

*1:秀丸ファイラー Classicなら,ツール(T)>オプション(O) のあと表示タブで「隠しファイル、隠しフォルダ、および隠しドライブを表示する」を選択します.

*2:Win+Rというショートカットもあります.

*3:ファイルサイズが,仮想マシンのメインメモリとほぼ同じになっています.メモリ状態を,このファイルに保存しているのでしょう.