Jak zaimportować klucz prywatny do GPG, aby stał się kluczem domyślnym?

26

Próbuję udostępnić parę kluczy GnuPG, importując je do każdego komputera. Tak to robię:

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

Klucze zostały wyeksportowane za pomocą -a.

Po wykonaniu tej czynności klucz publiczny jest wyświetlany poprawnie podczas wykonywania polecenia gpg --list-keys, ale klucz prywatny nie jest ( gpg --list-secret-keys).

Co ja robię źle?

Nawiasem mówiąc: robię to z Puppet, więc każde rozwiązanie, które nie wymaga ode mnie wpisywania ( --edit-keyi tym podobnych) byłoby mile widziane.

Stefano Palazzo
źródło
Czy mógłbyś bardziej szczegółowo wyjaśnić, co jest nie tak z gpg --list-secret-keyswyjściem? GPG nie ma flagi oznaczającej klucz jako domyślny. Po prostu wybiera pierwszą z tej listy jako domyślną. Jeśli potrzebujesz zmienić to zachowanie, mogę udzielić odpowiedzi.
gertvdijk,

Odpowiedzi:

24

Aby zmienić zachowanie GnuPG na tym, jaki klucz wybiera podczas podpisywania / szyfrowania, użyj default-keyparametru konfiguracyjnego z identyfikatorem klucza jako wartością.

Na przykład za pomocą

$ 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

dodaj linię w ~/.gnupg/gpg.conf:

default-key 12345678

lub alternatywnie użyj długiego identyfikatora klucza (zalecane, ponieważ identyfikatory krótkiego klucza mogą powodować kolizje):

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

i dodaj wiersz w ~/.gnupg/gpg.conf:

default-key ABCDEFAB12345678
gertvdijk
źródło
1
Domyślnie pierwsza z listy gpg --list-secret-keysbędzie używana jako klucz domyślny - czy to prawda?
Ini