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 -- .