2016-08-18 3 views
0

У меня есть приложение Java, которое получает зашифрованные файлы GnuPG с удаленной машины, и мне нужно их расшифровать и обработать. Затем мне нужно зашифровать выходные файлы и отправить их на удаленный компьютер.Предоставление пароля для ключей GnuPG в gnupg-for-java

Сначала я попробовал gnupg-for-java (https://github.com/guardianproject/gnupg-for-java). Он работает, но он подсказывает мне пароли для дешифрования файла и подписи зашифрованного файла. В документации есть «с GnuPG 2.x, GPG-агент будет обрабатывать подсказки пользователя для ключевой фразы, а также кэширование парольной фразы.»

Вы знаете, как я могу предоставить пароль без запроса пользователя?

ответ

1

Используйте gpg-preset-passphrase, который обычно находится в /usr/lib/gnupg2/gpg-preset-passphrase (а не по пути по умолчанию). Он также должен быть установлен с помощью обычных распределений GnuPG на Windows, и OS X.

Имейте в виде, вы должны позволить предустановке ключевой фразы, установив allow-preset-passphrase опции в ~/.gnupg/gpg-agent.conf файле (создать его, если это необходимо, и перезапустить gpg-agent после). Кроме того, не используйте опцию --passphrase для многопользовательских систем, каждый из них также не может пользоваться всеми другими аргументами приложения. Предоставьте кодовую фразу на STDIN.

Смежные вопросы