¿Cómo importo una clave privada en GPG para que se convierta en la clave predeterminada?

26

Estoy tratando de compartir un par de claves GnuPG importándolo en cada máquina. Así es como lo estoy haciendo:

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

Las claves se han exportado con -a.

Después de hacer esto, la clave pública se muestra correctamente cuando hago un gpg --list-keys, pero la clave privada no es ( gpg --list-secret-keys).

¿Qué estoy haciendo mal?

Por cierto: estoy haciendo esto con Puppet, por lo que cualquier solución que no requiera que escriba cosas ( --edit-keyy similares) sería apreciada.

Stefano Palazzo
fuente
¿Podría explicar un poco más sobre lo que está mal con la gpg --list-secret-keyssalida? No hay marca para GPG para marcar una clave como predeterminada. Simplemente elige el primero en esa lista como el predeterminado. Si necesita cambiar ese comportamiento, puedo proporcionarle una respuesta.
gertvdijk

Respuestas:

24

Para cambiar el comportamiento de GnuPG en la clave que selecciona al firmar / cifrar, use el default-keyparámetro de configuración con la ID de clave como valor.

Entonces, por ejemplo, con

$ 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

agregar una línea en ~/.gnupg/gpg.conf:

default-key 12345678

o, alternativamente, use la ID de clave larga (recomendada ya que las ID de clave corta pueden tener colisiones):

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

y agregue una línea en ~/.gnupg/gpg.conf:

default-key ABCDEFAB12345678
gertvdijk
fuente
1
Por defecto, el primero de la lista gpg --list-secret-keysse utilizará como clave predeterminada: ¿es correcto?
Ini