gpg2 demande une phrase secrète lors de l'importation de clés secrètes

14

J'essaie de transférer mon trousseau de clés secret gpg de gpg1 (1.4.21) à gpg2 (2.1.15) en utilisant

gpg2 --import ~/.gnupg/secring.gpg

gpg2 demande les mots de passe de toutes les clés secrètes du trousseau.

Pourquoi aurait-il besoin des mots de passe à ce stade (je ne devrais avoir à les fournir qu'en utilisant les clés) et comment puis-je empêcher cela, c'est-à-dire importer le trousseau sans fournir de mots de passe?

Le système est Arch Linux, noyau 4.7.6. Merci.

0 portée
la source

Réponses:

17

Le problème a été expliqué ici dans le bugtracker GnuPG ; Je n'ai pas vu cela plus tôt aujourd'hui.

La solution est:

gpg2 --batch --import ~/.gnupg/secring.gpg
0 portée
la source
5
Merci! Je faisais exactement cela sur un serveur sans tête utilisant la redirection de shell, par exemple gpg2 --import < my-keyset pour des raisons inconnues, cela ne m'a montré aucune invite de phrase secrète, mais seulement un cryptique gpg: error building skey array: Inappropriate ioctl for device. J'espère que googler ce message enverra des gens ici à partir de maintenant.
jlh
Mon message d'erreur cryptique légèrement différent lors de l'exécution sans tête était error sending to agent: Operation cancelled. Il existe d'autres réponses citant ce message d'erreur qui recommandent d'utiliser --batch, mais cette réponse est la seule que j'ai trouvée qui a fait un effort supplémentaire en établissant un lien avec la cause première de la raison pour laquelle cette solution de contournement est nécessaire.
Rusty Shackleford
Pour toute personne qui obtient l' Inappropriate ioctl for deviceerreur, essayez export GPG_TTY=$(tty)par github.com/keybase/keybase-issues/issues/2798 puis faites l'importation par lots
Doug Ayers