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
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
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.