web-dev-qa-db-fra.com

Comment importer une clé privée dans GPG afin qu'elle devienne la clé par défaut?

J'essaie de partager une paire de clés GnuPG en l'important dans chaque machine. Voici comment je le fais:

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

Les clés ont été exportées avec -a.

Après cela, la clé publique est affichée correctement lorsque je fais un gpg --list-keys, mais la clé privée n’est pas (gpg --list-secret-keys).

Qu'est-ce que je fais mal?

À propos: je fais cela avec Puppet, donc toute solution ne nécessitant pas que je tape des éléments (--edit-key et similaires) serait appréciée.

26
Stefano Palazzo

Pour modifier le comportement de GnuPG sur la clé sélectionnée lors de la signature/du chiffrement, utilisez le paramètre de configuration default-key avec l'ID de clé comme valeur.

Donc, par exemple, avec

$ 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

ajoutez une ligne dans ~/.gnupg/gpg.conf:

default-key 12345678

ou bien utilisez l'ID de clé longue (recommandé car les ID de clé courte peuvent avoir des collisions):

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

et ajoutez une ligne dans ~/.gnupg/gpg.conf:

default-key ABCDEFAB12345678
24
gertvdijk