Tornar frase de permanência do agente do GPG permanentemente

4

Recentemente, recebi a configuração de GPG no meu Mac:

brew install gpg;
brew install gpg-agent;

E gerou um par de chaves com uma frase secreta.

Eu adicionei use-agent ao meu ~/.gnupg/gpg.conf e allow-preset-passphrase a ~/.gnupg/gpg-agent.conf

Eu descriptografei um arquivo usando:

gpg --use-agent --output example.txt --decrypt example.gpg

que me levou a inserir minha frase secreta de chave privada. O problema é que, ao descriptografar os arquivos subsequentes, gpg-agent me solicita novamente essa frase secreta.

Atualmente, minha senha é uma string muito longa, quase impossível de ser digitada a cada vez. Eu gostaria que o gpg se comportasse como ssh-agent em que a frase secreta é armazenada com segurança e lembrada para sempre (mesmo entre as sessões).

Entendo que isso pode diminuir a segurança se meu laptop for composto, mas esse inconveniente provavelmente me impediria de usar gpg todos juntos.

Não tenho certeza se:

default-cache-ttl 31536000
max-cache-ttl 31536000

são as opções que estou procurando para armazenar entre as reinicializações Infelizmente, não há man entrada para gpg-agent .

Como posso fazer com que gpg / gpg-agent lembre-se da minha frase secreta de chave privada para sempre?

    
por James Taylor 14.08.2016 / 08:09

2 respostas

1

Você provavelmente não tem a variável de ambiente $GPG_AGENT_INFO set.

O que você pode fazer como uma medida temporária é executar gpg-agent bash (ou o shell de sua escolha) e tentar decriptografar novamente.

A longo prazo, isso pode ser resolvido primeiro fazendo logout e, em seguida, efetuando login novamente em seu sistema e, em seguida, verificando novamente echo $GPG_AGENT_INFO . Se houver chances, você não precisará mais redigitar sua senha todas as vezes.

A maioria das distribuições Linux tem ganchos para isso e eu espero que o OSX seja tão amigável, o requisito, é claro, é que gpg/gpg-agent esteja disponível (instalado) antes de iniciar sua sessão.

    
por 14.08.2016 / 09:57
0

Você deve iniciar o agente assim.

eval $(gpg-agent --daemon --write-env-file "${HOME}/.gnupg/.gpg-agent-info)"

Em seguida, no seu arquivo .bashrc , adicione as linhas:

if [ -f "${HOME}/.gnupg/.gpg-agent-info" ]; then
    . "${HOME}/.gnupg/.gpg-agent-info"
    export GPG_AGENT_INFO
fi
    
por 28.06.2017 / 23:46

Tags