Enigmail и gpg4win 2.x – проблема со старыми ключами [решено]


Описание проблемы:

Переустановил gpg4win и enigmail для Thunderbird / Win7.

Функционально – все работает. Но если я добавляю новый ключ через интерфейс enigmail, то ключ добавляются успешно, но после этого выдается странное сообщение об ошибке – enigmail ругается на ключи, которых давно уже нет.

Ссылка на screenshot: screenshot[link1]


Комментарии
— SATtva (10/09/2013 18:16)   
Как Вы переустанавливали gpg? Производили резервирование и восстановление ключей? Если да, то как?
— nikodimus (10/09/2013 18:25)   
Просто сделал unisntall. Ключи были зарезервированы заранее и импортированы обратно. С "живыми" ключами проблем нет, проблема с "призраками" – ключами, которые не используются и были стерты.
— nikodimus (10/09/2013 18:28)   
Дополнение: из интефейса gpg4win никаких "лишних" ключей не видно, проблема только про использовании интерфейса enigmail для генерирования/удаления ключей. Про запуске комманды gpg.exe -charset ... (см. screenshot) из коммандной строки тоже нет никаких ошибок.
— SATtva (10/09/2013 18:29)   
Выполнение из консоли gpg --list-secret-keys показывает эти ключи?
— nikodimus (10/09/2013 18:37)   
Нет, не показывает. Выдаются только валидные ключи.

Такое ощущение, что эти "призраки" хранятся где-то внутри enigmail и не удаляются после удаления и переустановки enigmail.
— SATtva (10/09/2013 18:44)   
Неа, вывод на скриншоте поступает именно из gpg.

gpg --check-trustdb или gpg --update-trustdb тоже не исправляют ситуацию?
— nikodimus (10/09/2013 19:12)   
Не помогало.

Но я понял в чем дело – в конфликте между различными версиями GPG: gpg4win и GnuPG.

Когда-то давно (два года назад) я установил GnuPG потом убрал его через какое-то время. Потом установил gpg4win и продолжаю с ним работать (описанная проблема действует на нервы но не мешает работе). Все дело в том, что GnuPG прописывают ключ в registry Win7: HKCU\Software\Gnu\GnuPG и не удаляет его во время unisntall.

В этом ключе, в частности, есть HomeDir. И вот этот HomeDir мешает жить enigmail-у: там был прописан неправильный (с точки зрения enigmail-a) путь: c:\program files(32)\gpg\gnupg\pub. Это неправильно дважды: во первых, gpg4win этот ключь вообще не использует, а во-вторых, этот путь ошибочем для Win7: read-only folder. Нормальный путь: c:\users\...\appdata\roaming\ и т.д.

Я убрал HKCU\Software\Gnu\GnuPG из registry, переустановил gpg4win и всё заработало.

Ссылки
[link1] http://i053.radikal.ru/1309/5e/59b852abed15.jpg