Sto cercando di copiare la mia chiave gpg da una macchina allaltra.

Lo faccio:

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

Sposta i file su una nuova macchina, quindi:

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] 

Mi sembra tutto a posto, ma poi:

$ 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 

Quindi il messaggio di errore dice che il file è stato crittografato con [SUB-ID], che limportazione della chiave segreta sembra indicare che è stato importato (il [SUB-ID] in entrambi i messaggi è lo stesso).

Quindi sto chiaramente facendo qualcosa di sbagliato, ma non so cosa.

Rispondi

Devi aggiungere --import alla riga di comando per importare la chiave privata. Non è necessario utilizzare --allow-secret-key-import flag. Secondo la pagina man:” Questa è unopzione obsoleta e non è usata da nessuna parte. “

gpg --import private.key 

Commenti

  • Ogni possibilità che ' sappia anche perché gpg2 -e -r [ID] dice " Non vi è alcuna garanzia che questa chiave appartenga allutente denominato "? Vorrei averlo incluso nella domanda originale, ma lho notato solo più tardi.
  • GnuPG mantiene un database di fiducia che usa per decidere quanto fidarsi di quali chiavi. Ad esempio, fidati di più delle tue chiavi, quelle che non sono ' firmate direttamente o indirettamente da qualsiasi chiave fidata. Dopo aver ' importato in un database vuoto, probabilmente nessuna chiave è considerata attendibile. Questo database attendibile è separato dal database o dalle chiavi stesse, quindi limportazione delle chiavi non le rende affidabili a meno che non siano firmate da una chiave già affidabile. Devi indicare a GnuPG quali chiavi vuoi fidarti separatamente.
  • @Celeda, grazie, con –edit-key e il comando trust sono riuscito a ottenere la chiave affidabile. Poiché la mia domanda originale era come copiare la chiave da una macchina a unaltra, penso che sarebbe opportuno aggiungere qualcosa in proposito alla tua risposta. ' preferirei non modificare personalmente la tua risposta e sembra che tu ne sappia molto di più di me.
  • Non ' mi sembra di capire il trustdb abbastanza bene da parlarne nella mia risposta. ' sono contento che tu sia riuscito a risolverlo utilizzando i vaghi suggerimenti che ho fornito nel mio commento.
  • Ok, ' ho rinominato la domanda originale in modo che si adatti più specificamente alla risposta. In questo modo posso porre una domanda separata al trustdb. Grazie per laiuto. 🙂

Risposta

Quella sopra è solo una risposta parziale. La risposta completa è:

gpg --import private.key 
  • Dato il KEYID (ad es. FA0339620046E260) dalloutput :

    gpg --edit-key {KEY} trust quit # enter 5<RETURN> (I trust ultimately) # enter y<RETURN> (Really set this key to ultimate trust - Yes) 
  • OPPURE utilizza il comando automatizzato di seguito:

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

Infine, verifica che la chiave sia ora considerata attendibile con [ultimate] invece di [unknown]

gpg --list-keys 

Commenti

  • Questa dovrebbe essere la risposta accettata. Molto più completo.
  • Cosa fanno questi comandi extra?
  • @Steiny Rende la chiave affidabile con [ultimate] invece che con [unknown]. gpgtools.tenderapp.com/kb/faq/…

Risposta

Stavo importando da un backup con una vecchia versione di gpg. Poiché il vecchio computer non era disponibile, ma solo il backup, non ho potuto esportarlo prima. Questo è ciò che ha funzionato per me.

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

Se vuoi essere in grado di importa le chiavi segrete senza inserire immediatamente la passphrase, utilizza lopzione --batch.

Per verificare le chiavi pubbliche:

 gpg --list-keys  

Per verificare le chiavi segrete:

 gpg --list-secret-keys  

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *