Como importo uma chave privada no GPG para que ela se torne a chave padrão?

26

Estou tentando compartilhar um par de chaves GnuPG importando-o para cada máquina. É assim que eu estou fazendo:

gpg --allow-secret-key-import --import secret.gpg.key
gpg --import public.gpg.key

As chaves foram exportadas com -a.

Depois de fazer isso, a chave pública é mostrada corretamente quando eu faço a gpg --list-keys, mas a chave privada não é ( gpg --list-secret-keys).

O que estou fazendo errado?

A propósito: estou fazendo isso com o Puppet, para que qualquer solução que não exija que eu digite as coisas ( --edit-keye similares) seria apreciada.

Stefano Palazzo
fonte
Você poderia elaborar um pouco mais sobre o que há de errado com a gpg --list-secret-keyssaída? Não há sinalizador para o GPG marcar uma chave como padrão. Apenas escolhe o primeiro da lista como padrão. Se você precisar mudar esse comportamento, eu posso fornecer uma resposta.
gertvdijk

Respostas:

24

Para alterar o comportamento do GnuPG em qual chave ele seleciona na assinatura / criptografia, use o default-keyparâmetro de configuração com o ID da chave como valor.

Então, por exemplo, com

$ gpg --list-secret-keys 
/home/gert/.gnupg/secring.gpg
-----------------------------
sec   4096R/13371337 2011-01-01 [expires: 2014-01-01]
uid                  Gert van Dijk (1st key) <[email protected]>
ssb   4096R/31337313 2011-01-01

sec   4096R/12345678 2013-04-23 [expires: 2014-01-01]
uid                  Gert van Dijk (2nd key) <[email protected]>
ssb   4096R/87654321 2013-04-23

adicione uma linha em ~/.gnupg/gpg.conf:

default-key 12345678

ou, alternativamente, use o ID da chave longa (recomendado, pois os códigos de chave curta podem ter colisões):

$ gpg --list-secret-keys --with-colon
sec::4096:1:ABCDEFAB12345678:2013-01-01:2014-01-01:::Gert van Dijk (2nd key) <[email protected]>:::

e adicione uma linha em ~/.gnupg/gpg.conf:

default-key ABCDEFAB12345678
gertvdijk
fonte
1
Por padrão, o primeiro da lista de gpg --list-secret-keysserá usado como a chave padrão - está correto?
Ini