Использование pinentry с keepass2 для шифрования почты gpg

Использование pinentry с keepass2 для шифрования почты gpg

Debian Jessie, XFCE 4.10, KeePass2, IceDove (с Enigmail)..

Я использую пароли, сгенерированные KeePass2 для моего закрытого ключа gpg, для расшифровки/шифрования писем. Icedove — мой клиент, который использует enigmail.

Как только я хочу расшифровать/раскодировать письмо, pinentryпоявляется (pinentry-gtk2), и я не могу вставить его в поле пароля, и не могу его переместить - поэтому я хотел бы, чтобы KeePass2 автоматически ввел мой длинный пароль за меня. Что делаетнетработать с сочетанием клавиш (работает и для всего остального), но с помощью щелчка правой кнопкой мыши по записи KeePass2 для 'выполнить авто-тип'.

это медленно сводит меня с ума.. Я прочитал кучу обсуждений на форуме - ни одно из которых не было действительно полезным и попытался изменить настройки gpg-agent для использования pinentry-curses. Я даже удалил pinentry-gtk2, что сделало icedove полностью неспособным к расшифровке/шифрованию.

Есть предложения, как сделать так, чтобы функция автонабора или вставки работала в окне pinentry. Или альтернативный pinentry?

решение1

Тот факт, что принятый ответ использует ту же процедуру, что описана в вопросе, говорит о том, что нет способа включить автонабор KeePass (или даже простое копирование-вставку) для работы с pinentry. Однако это неверно!

Как утверждают другие, pinentryпрограммы для gpg-agent(таких как pinentry-gtk-2) глобально блокируют («захватывают») клавиатуру. Однако, gpg-agentможно настроить, чтобы отключить это поведение с помощью --no-grabопции – см.GPG-документация. (Примечание:(Эта опция имеет предупреждение о безопасности в документации. Однако, если вы все равно используете KeePass, я сомневаюсь, что использование pinentry без --no-grabдаст вам дополнительную безопасность.)

Чтобы использовать --no-grabего по умолчанию gpg-agent, создайте/отредактируйте файл ~/.gnupg/gpg-agent.conf(т. е. файл gpg-agent.confв .gnupgкаталоге в вашем домашнем каталоге) и добавьте строку

no-grab

к нему (информация gpg-agent.confв документации). Таким образом, при каждом gpg-agentзапуске с этого момента он будет использовать эту --no-grabопцию и pinentry-gtk-2вести себя как обычное окно (так что вы сможете выполнять автонабор с помощью сочетания клавиш, вставлять текст в текстовое поле и т. д.).

решение2

В Keepass2 «Добавить запись» и установите «Заголовок» на «GPG». Перейдите с вкладки «Запись» на вкладку «Автотип». Выберите «Переопределить последовательность по умолчанию» и установите «{ПАРОЛЬ}».

Перед отправкой электронной почты откройте Keepass2 с паролем Keepass2. Попросите IceDove с Enigmail «Отправить», и должен появиться пароль (блокировка клавиатуры, предотвращение «Ctrl+V» (или любого другого сочетания клавиш, которое вы обычно используете для выполнения автонабора), предотвращение переключения окон «Alt+Tab» и т. д.).

Используйте мышь, чтобы выделить запись "GPG" в Keepass2 и щелкните значок "Выполнить автонабор" в Keepass2 (слева от значка "Найти" и под меню "Справка"). Поскольку последний "фокус" клавиатуры был на поле ввода текста PIN-кода, Keepass2 теперь начнет вводить ваш длинный пароль за вас.

Используйте мышь, чтобы нажать «ОК» в PIN-коде. Готово!

Для получения более подробной информации о "Авто-Типе" (http://keepass.info/help/base/autotype.html).

решение3

    Debian 7.7 (хриплый)
    Флюксбокс 1.3.2-4
    KeePass2 2.28
    моно 2.10.8.1-8
    xdotool 2.20110530.1
    gnupg2 2.0.19-2+deb7u2

По моему опыту, KeePass2 версии 2.28 — первая версия, которая автоматически вводит данные в терминал или не-gui-программу на Debian. Я могу автоматически вводить данные в ssh или pinentry-curses из KeePass 2.28. Автоматический ввод данных не работает с pinentry-gtk-2, когда я его тестирую. Я не использую icedove, поэтому не могу это проверить.

Связанный контент