Jessaye de copier ma clé gpg dune machine à une autre.

Je fais:

gpg --export ${ID} > public.key gpg --export-secret-key ${ID} > private.key 

Déplacez les fichiers vers une nouvelle machine, puis:

gpg --import public.key gpg: nyckel [ID]: public key [Name, e-mail] was imported gpg: Total number of treated keys: 1 gpg: imported: 1 (RSA: 1) gpg --allow-secret-key-import private.key sec [?]/[ID] [Creation date] [Name, e-mail] ssb [?]/[SUB-ID] [Creation date] 

Tout me va bien, mais alors:

$ gpg -d [file].gpg gpg: encrypted with 4096-bit RSA-key, id [SUB-ID], created [Creation date] [Name, e-mail] gpg: decryption failed: secret key not accessible 

Le message derreur indique donc que le fichier a été chiffré avec [SUB-ID], que limportation de clé secrète semble indiquer quil a importé. (Le [SUB-ID] dans les deux messages est le même).

Donc je « fais clairement quelque chose de mal, mais je ne sais pas quoi.

Réponse

Vous devez ajouter --import à la ligne de commande pour importer la clé privée. Vous navez pas besoin dutiliser --allow-secret-key-import. Selon la page de manuel: » Ceci est une option obsolète et nest utilisée nulle part. « 

gpg --import private.key 

Commentaires

  • Toute chance que vous ' sachez aussi pourquoi gpg2 -e -r [ID] dit " Rien ne garantit que cette clé appartient à lutilisateur nommé "? Jaurais aimé linclure dans la question initiale, mais je ne lai remarqué que plus tard.
  • GnuPG maintient une base de données de confiance quil utilise pour décider de la confiance en quelles clés. Par exemple, faites le plus confiance à vos propres clés, les clés qui ne sont ' signées directement ou indirectement par aucune clé de confiance. Une fois que vous avez ' importé dans une base de données vide, aucune clé nest probablement approuvée. Cette base de données de confiance est distincte de la base de données ou des clés elles-mêmes, donc limportation de clés ne les rend pas fiables à moins quelles ne soient signées par une clé déjà approuvée. Vous devez indiquer à GnuPG les clés auxquelles vous voulez faire confiance séparément.
  • @Celeda, merci, avec –edit-key et et la commande trust jai réussi à obtenir la clé de confiance. Étant donné que ma question initiale était de savoir comment copier la clé dune machine à une autre, je pense quil serait approprié dajouter quelque chose à ce sujet à votre réponse. Je ' préfère ne pas modifier moi-même votre réponse, et vous semblez en savoir beaucoup plus que moi à ce sujet.
  • Je ne ' Je ne comprends pas assez bien le trustdb pour en parler dans ma réponse. Je ' je suis heureux que vous ayez pu le résoudre en utilisant les vagues indications que jai données dans mon commentaire.
  • Ok, je ' jai renommé la question dorigine pour quelle corresponde plus précisément à la réponse. De cette façon, je peux poser une question distincte au trustdb. Merci pour laide. 🙂

Réponse

Ci-dessus, il ny a quune réponse partielle. La réponse complète est:

gpg --import private.key 
  • Compte tenu du KEYID (par exemple FA0339620046E260) de la sortie :

    gpg --edit-key {KEY} trust quit # enter 5<RETURN> (I trust ultimately) # enter y<RETURN> (Really set this key to ultimate trust - Yes) 
  • OU utilisez la commande automatisée ci-dessous:

    expect -c "spawn gpg --edit-key {KEY} trust quit; send \"5\ry\r\"; expect eof" 

Enfin, vérifie que la clé est désormais approuvée par [ultimate] au lieu de [unknown]

gpg --list-keys 

Commentaires

  • Cela devrait être la réponse acceptée. Beaucoup plus complet.
  • Que font ces commandes supplémentaires?
  • @Steiny Cela rend la clé fiable avec [ultime] au lieu de [inconnu]. gpgtools.tenderapp.com/kb/faq/…

Réponse

Jimportais à partir dune sauvegarde qui avait une ancienne version de gpg. Comme lancien ordinateur nétait pas disponible, seule la sauvegarde, je ne pouvais pas lexporter en premier. Cest ce qui a fonctionné pour moi.

 gpg --import old_home_dir/.gnupg/pubring.gpg gpg --import old_home_dir/.gnupg/secring.gpg  

Si vous voulez pouvoir importez les clés secrètes sans saisir immédiatement la phrase de passe, utilisez loption --batch.

Pour vérifier les clés publiques:

 gpg --list-keys  

Pour vérifier les clés secrètes:

 gpg --list-secret-keys  

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *