Як зробити так, щоб пропустити файл gpg2 замість того, щоб запитувати пароль?


0
$ DISPLAY= gpg2 --yes --batch --no-tty < file.gpg
┌─────────────────────────────────────────────────────┐
│ Enter passphrase                                    │
│                                                     │
│                                                     │
│ Passphrase ________________________________________ │
│                                                     │
│                                                     │
|       <OK>                             <Cancel>     │
└─────────────────────────────────────────────────────┘

Без DISPLAY=нього натомість відображається вікно GUI. У будь-якому випадку він чекає на введення, перериваючи цикл.

Як змусити gpg2 використовувати лише gpg-агент і ніколи не переривати обробку, щоб щось запитати?

Подання фальшивки --passphraseдозволяє видалити ключ з агента.


не ставте в першу чергу пароль на ключ? Яку проблему ви насправді намагаєтеся вирішити, розшифрувавши велику кількість файлів?
djsmiley2k

Так, перекриптування великої кількості файлів, деякі з яких пошкоджені або не пов’язані між собою.
Ві.

1
Зауважте, що це насправді gpg-агент, що показує підказки пароля. Можливо, gpg забуває переслати параметри "тихого режиму", коли вимагає розшифровки.
grawity

Так, gpg-agent --batchгальмує підказки. Але я не можу ввести навіть першу парольну фразу, яка потрібна.
Ві.

Відповіді:


1

Ви можете дозволити режим циклічного зворотного зв’язку gpg-agent.confі використовувати --pinentry-mode cancel(або error, залежно від ваших вимог) як аргумент для GnuPG. Це поверне циклічний запит на вимогу парольної фрази до GnuPG замість якоїсь реалізації інтерфейсу, а потім поверне помилку, що gpg-agentімітує кнопку скасування.


0

Обхід: не використовуйте gpg-агент взагалі, використовуйте --passphrase-fileнатомість:

killall gpg-agent
gpg2 -q --batch --no-tty --passphrase-file=/tmp/passphrase --decrypt file.gpg
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.