Smart card + GnuPG: cosa viene memorizzato nel mio portachiavi / come adottare la smart card?

11

Recentemente ho acquistato un Yubikey Neo che può fungere da smart card OpenPGP. Mi piacerebbe usarlo per memorizzare la mia chiave privata GnuPG. Ho completato la configurazione iniziale e sono in grado di utilizzare la smart card per firmare e crittografare i file. Dopo l'installazione, la chiave della smart card viene visualizzata in gpg --list-secret-keys output.

Se ho perso il portachiavi GPG (diciamo se il mio disco rigido è morto) o se voglio usarlo su più macchine, come faccio a usare GPG per usare la smart card?

    
posta Askford 07.11.2013 - 16:12
fonte

5 risposte

12

Devi eseguire:

gpg --card-status

e gpg lo faranno per te:

/tmp$ mkdir gpgtmp
/tmp$ chmod go-rwx gpgtmp

/tmp$ GNUPGHOME=/tmp/gpgtmp gpg --keyserver pgp.mit.edu --recv F8713BDF 
gpg: sleutelring ‘/tmp/gpgtmp/secring.gpg’ is aangemaakt
gpg: sleutelring ‘/tmp/gpgtmp/pubring.gpg’ is aangemaakt
gpg: opvragen sleutel F8713BDF van hkp sleutelserver pgp.mit.edu
WARNING: gnome-keyring:: couldn't connect to: /run/user/robin/keyring-55e9Rg/pkcs11: No such file or directory
gpg: /tmp/gpgtmp/trustdb.gpg: trustdb created
gpg: sleutel F8713BDF: publieke sleutel “Robin Sheat <[email protected]>” geimporteerd
gpg: no ultimately trusted keys found
gpg: Totaal aantal verwerkt: 1
gpg:               Geimporteerd: 1  (RSA: 1)

/tmp$ GNUPGHOME=/tmp/gpgtmp gpg --list-secret
*nothing here*

/tmp$ GNUPGHOME=/tmp/gpgtmp gpg --card-status
*snip boring card info*
General key info..: pub  2048R/F8713BDF 2013-09-24 Robin Sheat <[email protected]>
sec>  2048R/F8713BDF  aangemaakt: 2013-09-24  vervaldatum: nooit     
*etc*

/tmp$ GNUPGHOME=/tmp/gpgtmp gpg --list-secret
/tmp/gpgtmp/secring.gpg
-----------------------
sec>  2048R/F8713BDF 2013-09-24
      Serienummer van de kaart = ....
uid                  Robin Sheat <[email protected]>
*etc*
    
risposta data 07.11.2013 - 23:45
fonte
5

Quando inizi con una nuova installazione, hai due opzioni:

  1. Collega la smart card (Yubikey) ed esegui

    gpg --card-edit
    fetch
    quit
    

    Quindi, eseguendo gpg con l'opzione --card-status per creare gli stub per le chiavi segrete:

    gpg --card-status
    
  2. Importa la tua chiave pubblica da un server delle chiavi (il comando di recupero in alto fa lo stesso automaticamente), quindi

    gpg --card-status
    

I metodi differiscono solo per il modo in cui la chiave pubblica viene importata, ovvero automaticamente o manualmente.

    
risposta data 03.06.2014 - 06:48
fonte
2

Quando imposti una coppia di chiavi su una smart card, tutti i dati necessari per le operazioni di crittografia, decrittografia e firma sono memorizzati sulla carta. Pertanto, anche dopo la perdita del tuo portachiavi, sarai in grado di eseguire queste operazioni semplicemente tenendo a portata di mano la tua smart card.

Ti raccomando di non credermi sulla parola data, e di sperimentare te stesso. Riconfigurare GPG per guardare una directory vuota di keyring e provare a decrittografare i file importanti usando la smart card. Potrebbe essere necessario importare prima i certificati dalla scheda al tuo mazzo di chiavi, questi passaggi dipendono dal gestore delle chiavi che stai utilizzando.

    
risposta data 07.11.2013 - 17:33
fonte
1

@Askford - Suppongo che dopo 3 anni sei riuscito a risolvere questo problema?

Per chiunque abbia problemi simili, ciò che ha funzionato per me è:

gpg2 --import public_key.key

Questo ha portato indietro tutte le mie chiavi da una nuova installazione e solo da yubikey

Questo comando mi ha dato:

gpg2 --import key.asc 
gpg: key 0AAD23DD518496D1: public key "Lee Fenlan <[email protected]>" imported
gpg: Total number processed: 1
gpg:               imported: 1

Quindi gpg2 -k mi ha dato:

---------------------------------
pub   rsa4096 2016-08-09 [SC]
      7F5F963D411B8E2FC7BB33150AAD23DD518496D1
uid           [ unknown] Lee Fenlan <[email protected]>
sub   rsa4096 2016-08-09 [S]
sub   rsa4096 2016-08-09 [E]
sub   rsa4096 2016-08-09 [A]

Ora, se provo a codificare / decodificare / firmare o ssh su qualsiasi cosa che richiede le mie chiavi private, tutto funziona come previsto.

    
risposta data 07.10.2016 - 15:33
fonte
-1

In base al sito di yubico , non è possibile ottenere chiavi pubbliche o private fuori dal dispositivo, quindi oltre ad avere il tuo Neo, dovrai assicurarti che il tuo mazzo di chiavi abbia le chiavi private corrispondenti generate durante l'inizializzazione del dispositivo.

In altre parole, il solo dispositivo non è sufficiente.

    
risposta data 07.11.2013 - 20:51
fonte

Leggi altre domande sui tag