Estou usando gpg-agent
para lembrar e fornecer minha GnuPG
senha ao criar Debian/Ubuntu
pacotes. Mas ainda estou confuso como gpg-agent
funciona. Invoco gpg-agent
como:
eval $(gpg-agent --daemon)
Às vezes funciona. Mas o que me incomoda é que às vezes não funciona. Ou seja, às vezes o processo de criação solicita minhas GnuPG
senhas uma vez, às vezes nenhuma e às vezes muitas vezes. Isso tudo acontece durante uma única sessão do bash, depois que eu invoquei gpg-agent
como antes. Não ser solicitada senha desta vez não garante que não receberei a senha da próxima vez. Ainda não entendi por que gpg
decide me solicitar a senha e por que não.
Isso acontece com você também?
obrigado
.authinfo.gpg
, eu tenho uma dica para usargpg2
, quegpg-agent
está associada. Então(setq epg-gpg-program "/usr/bin/gpg2")
funcionou para mim. Talvez você precise descobrir quais aplicativos estão com problemas, eles podem estar preferindogpg
(1).Respostas:
Foi encontrado como usar corretamente
gpg-agent
em http://tr.opensuse.org/SDB:Using_gpg-agentDepois disso, meu
gpg-agent
daemon está armazenando minhasGnuPG
senhas em cache corretamente agora. Não havia nada de errado com minha configuração, só que eu não sabia como testar se minhasGnuPG
senhas estão armazenando em cache corretamente ou não.Agora eu faço:
No site: "Substitua 0xMYKEYID pelo seu ID da chave do GnuPG. Ao executar este comando, o agente deve abrir uma caixa de diálogo de senha gráfica duas vezes: primeiro para assinar ou criptografar (gpg -ase) (gpg -ase) e depois para descriptografia ou verificação de assinatura ( A partir de agora, sempre que o GnuPG for usado (a partir da linha de comando ou incorporado a um programa gráfico como o KMail), a senha do agente do gpg será passada automaticamente (até que o tempo limite expire ou a interface gráfica seja fechadas)."
E para evitar a expiração do armazenamento em cache, agora defina um período de tempo limite extremamente longo:
fonte
--write-env-file "${HOME}/.gpg-agent-info"
ao iniciar o gpg-agent e adicionarif [ -f "${HOME}/.gpg-agent-info" ]; then . "${HOME}/.gpg-agent-info"; export GPG_AGENT_INFO fi
ao seu .bashrc para detectar se o agente já está em execução. Parece uma solução um pouco mais limpa.WARNING: "--write-env-file" is an obsolete option - it has no effect
desde pelo menosApr 4 '16
.