GPG diz que precisa de uma senha mas na verdade não precisa

7

Eu tento usar o GPG para assinar arquivos, mas algo me confunde: se eu entrar     no terminal (o arquivo que eu quero assinar é chamado de "checksums") diz:

$ gpg -s checksums
You need a passphrase to unlock the secret key for
user: "[my name] <[my email prefix]@gmail.com>"
4096-bit RSA key, ID C457C71D, created 2015-01-16

No entanto, ele não me pede para inserir minha senha, mas apenas o processo de assinatura. Por que isso?

    
por UTF-8 24.02.2015 / 01:12

2 respostas

4

O GnuPG usa gpg-agent para armazenar em cache sua senha. Ele requer a senha para assinatura (esta é uma operação de chave privada) e, portanto, imprime a mensagem, mas não precisa perguntar como a senha ainda está em cache. Se e por quanto tempo o cache funciona pode ser configurado.

gpg-agent

gpg verifica se há um gpg-agent em execução (ou, nas versões mais recentes, necessariamente inicia um). gpg-agent (entre outras coisas) armazena em cache sua frase secreta em um determinado momento.

Configuração

Esse intervalo de tempo pode ser configurado em ~/.gnupg/gpg-agent.conf , que no meu caso contém uma linha

default-cache-ttl 600

para definir o tempo de cache para dez minutos (10 * 60 segundos). Outras opções estão descritas em man gpg-agent , a maioria das opções também pode ser usada em gpg-agent.conf , omitindo o primeiro -- .

    
por Jens Erat 24.02.2015 / 10:50
1

Como há um agente gpg que armazena em cache sua senha por um período de tempo, se você usar o gpg repetidamente, só precisará digitar sua senha pela primeira vez e, em seguida, ela será lembrada e usada automaticamente nas execuções subsequentes.

    
por psusi 24.02.2015 / 01:34