
Когда я делаю следующее:
gpg --decrypt somefile.pgp
Я вижу графическое диалоговое окно, в котором меня просят ввести пароль для моего закрытого ключа GPG.
После этого для последующих запусков не требуется парольная фраза, поскольку они, по-видимому, используют ключ GPG из GPG-агента в памяти.
Как мне очистить все ключи этого агента GPG? Мне не нравится, чтобы они болтались в памяти бесполезно.
решение1
man gpg-agent
дает тебе:
--default-cache-ttl n
Set the time a cache entry is valid to n seconds. The default is 600 seconds.
Либо измените способ запуска gpg-agent и добавьте этот параметр с более коротким временем жизни, либо вообще не запускайте gpg-agent.
Редактировать
Вам нужно выяснить, какая именно программа запрашивает у вас пароль. Пока что стало ясно, что это не gpg-agent и не seahorse.
При открытом окне запустите wmctrl -lp | grep "The Window Title, Case Sensitive"
. Вы должны увидеть строку типа:
0x03e0000c 0 2580 <your_host_name> The Window Title
Третье число — это идентификатор процесса. Запустите cat /proc/2580/cmdline
(заменив 2580 на фактический идентификатор процесса), и вы увидите программный файл того, что запрашивает у вас пароль, вместе с любыми параметрами. Затем вы можете посмотреть его и посмотреть, что с этим можно сделать. Удаление его, безусловно, является вариантом.