GnuPG 2.2 отклоняет импорт секретного ключа: "ошибка отправки агенту: операция отменена"

Я пытаюсь импортировать свою идентификацию PGP, включая секретные ключи, на новый компьютер, подключившись к компьютеру с секретным ключом и запустив его.

ssh othercomputer cat myself.gpg | gpg2 --import

При этом похоже, что GPG импортирует открытые ключи, но не закрытые. При более внимательном рассмотрении вывода я вижу, что в нем говорится "ошибка отправки агенту: операция отменена", что, как я полагаю, как-то связано с проблемой.

я имею

  • попытался указать pinentry-program в gpg-agent.conf;
  • перезапущен gpg-agent и трижды проверил это работает; а также
  • проверил, что версии gpg-agent и gpg совпадают.

3 ответа

Проблема - я думаю - в том, что GnuPG обнаруживает, что работает в конвейере, то есть в неинтерактивной оболочке. Поскольку неинтерактивный означает, что пользователь не взаимодействует с ним, нет смысла показывать диалоговое окно, по крайней мере, в большинстве случаев.

Самое простое решение - хранить myself.gpg на локальном диске, а затем импортировать его в отдельной команде. Я понимаю, что это решение может иметь некоторые последствия с точки зрения конфиденциальности и секретности, поэтому поймите последствия этого выбора, прежде чем слепо следовать советам.

Наборpinentry-modeв командной строке или в файле ~/.gnupg/gpg.conf.

--pinentry-mode loopback

или просто

pinentry-mode loopbackв файле конфигурации.

Добавлениеpinentry-mode loopbackв~/.gnupg/gpg.confфайл работает для Ubuntu 20.04

Другие вопросы по тегам