Estou procurando armazenar em cache senhas para uso em uma máquina autônoma. Como isso representa algum risco, eu prefiro escolher quais senhas são armazenadas em cache e evitar definir valores altos default-cache-ttl
e max-cache-ttl
desagradáveis, além de evitar a necessidade de limpar gpg-agent
todo o cache periodicamente - por isso estou procurando uma solução gpg-preset-passphrase
. Algumas das informações que encontrei durante a solução de problemas referem-se a versões mais antigas do GnuPG, portanto, não tenho certeza se expliquei suficientemente todas as diferenças.
Primeiro, como prescrito por man 1 gpg-agent
, eu tenho export GPG_TTY=$(tty)
no meu .bashrc.
Agora, suponha que eu corra eval $(gpg-agent --daemon --allow-preset-passphrase --default-cache-ttl 1 --max-cache-ttl 31536000)
para iniciar o gpg-agent, observando que a gpg-preset-passphrase ainda honra --max-cache-ttl (padrão 2 horas).
Em seguida, recebo o aperto $KEYGRIP
de tecla da subchave secreta desejada com gpg --with-keygrip -K
.
Com isso eu tento /path/to/gpg-preset-passphrase -c $KEYGRIP
. Ao retornar, isso imprime:
gpg-preset-passphrase: caching passphrase failed: Not implemented
Tentando novamente acrescentando --verbose --debug 6 --log-file /path/to/gpg-agent.log
que gpg-agent
, meu log é anexado com
gpg-agent[4206] listening on socket /run/user/1000/gnupg/S.gpg-agent
gpg-agent[4207] gpg-agent (GnuPG) 2.1.15 started
gpg-agent[4207] handler 0x7f86ef783700 for fd 5 started
gpg-agent[4207] command PRESET_PASSPHRASE failed: Not implemented
gpg-agent[4207] handler 0x7f86ef783700 for fd 5 terminated
Não tenho certeza de onde proceder disso além de mergulhar mais fundo na fonte, por isso estou me perguntando se alguém pode primeiro corrigir os passos que estou tomando.