Perché gpg si sta arrabbiando e come posso fermarlo?


24

Di recente sono passato da un'installazione di Ubuntu a un'altra e nel frattempo ho cambiato il mio nome utente. Ho importato la mia coppia di chiavi pubblica / privata in gpg e mentre la decrittografia (usando la mia chiave privata) funziona bene, ogni volta che provo a crittografare qualcosa con la mia chiave pubblica ricevo il seguente messaggio di avviso:

It is NOT certain that the key belongs to the person named
in the user ID.  If you *really* know what you are doing,
you may answer the next question with yes.

Dopodiché mi chiede se voglio davvero usare la chiave (rispondo sempre "sì", perché in realtà è l' unica chiave del mio portachiavi e so da dove proviene). Posso decifrare le cose bene, quindi perché gpg si adatta a un sibilo ogni volta che provo a crittografare qualcosa? E come posso impedire che questo messaggio appaia di nuovo?


Qualche risposta a questa domanda più vecchia su StackOverflow è di aiuto ? : StackOverflow.com/q/9460140/2422988
Paul

@Paul, sì, quel link ha aiutato un po '. Ho impostato il livello di "fiducia" della mia chiave come ultimo, e questo sembra aver risolto il problema. Ma qual era il problema? Perché stava succedendo questo, e l'ho risolto o alleviato i sintomi?
Fouric

Mi dispiace InkBlend, temo che la mia capacità di vagliare e confrontare i risultati della ricerca superi la mia conoscenza di pgp in questo caso, quindi il mio non-tentativo di rivendicare questo come una risposta. Sembra però che Garrett sappia cosa sta succedendo.
Paul,

Risposte:


16

Sono riuscito a riprodurre il problema che stai riscontrando. Ho fatto così facendo:

$ gpg --no-default-keyring --keyring ./test-keyring  --secret-keyring ./test-secring --trustdb-name ./test-trustdb --no-random-seed-file --gen-key

<specified parameters and let it do its thing>

gpg: key 58018BFE marked as ultimately trusted
public and secret key created and signed.

<snip>

$

Si noti che il processo ha contrassegnato la chiave come "in definitiva attendibile".

Ora esporto le chiavi:

$gpg --no-default-keyring --keyring ./test-keyring  --secret-keyring ./test-secring --trustdb-name ./test-trustdb --no-random-seed-file --export-secret-keys -a >private.key

$gpg --no-default-keyring --keyring ./test-keyring  --secret-keyring ./test-secring --trustdb-name ./test-trustdb --no-random-seed-file --export -a > public.key

Ora importazione in un nuovo database gpg:

$gpg --no-default-keyring --keyring ./test2-keyring  --secret-keyring ./test2-secring --trustdb-name ./test2-trustdb --no-random-seed-file --import public.key

$gpg --no-default-keyring --keyring ./test2-keyring  --secret-keyring ./test2-secring --trustdb-name ./test2-trustdb --no-random-seed-file --import private.key

Ora se provo a crittografare usando i nuovi portachiavi ottengo:

$ gpg --no-default-keyring --keyring ./test2-keyring  --secret-keyring ./test2-secring --trustdb-name ./test2-trustdb --no-random-seed-file -r Fake -e
gpg: AE3034E1: There is no assurance this key belongs to the named user

pub  1024R/AE3034E1 2013-06-13 Fake User <fake@example.com>
 Primary key fingerprint: AD4D BAFB 3960 6F9D 47C1  23BE B2E1 67A6 5801 8BFE
      Subkey fingerprint: 58F2 3669 B8BD 1DFC 8B12  096F 5D19 AB91 AE30 34E1

It is NOT certain that the key belongs to the person named
in the user ID.  If you *really* know what you are doing,
you may answer the next question with yes.

La ragione di ciò è il modello "web of trust". Per impostazione predefinita, affinché una chiave pubblica sia attendibile, richiede 1 certificato di fiducia "definitivo" (in genere dove hai verificato personalmente le identità delle persone coinvolte) o 3 certificati di fiducia "marginali" (dove qualcuno che conosci, chissà qualcuno che conosci ... ha firmato il certificato).

Poiché gpg è un'applicazione di sicurezza, ti avverte se stai tentando di crittografare su una chiave che non è elencata come attendibile. Il motivo per cui la tua chiave non è attendibile in questo caso è semplice. È perché non hai esportato le relazioni di fiducia dall'istanza precedente di gpg. Per fare ciò, usa i comandi --export-ownertrust e --import-ownertrust.

Come sempre, consultare la pagina man .


1
La cosa fondamentale è che tutti i dati sull'affidabilità delle chiavi vengono archiviati separatamente dal keyring (sia segreto che pubblico)! ~/.gnupg/trustdb.gpgcontiene il database di fiducia, pubring.gpgle chiavi pubbliche e secring.gpgle chiavi segrete. Fare riferimento alla documentazione di GnuPG al riguardo .
gertvdijk,

28

Ho riscontrato lo stesso problema, tuttavia non avevo più accesso alla vecchia chiave. Quindi puoi ricreare la fiducia sulla tua vecchia chiave con questo:

gpg --edit-key YOUR@KEY.ID
gpg> trust
Please decide how far you trust this user to correctly verify other users' keys
(by looking at passports, checking fingerprints from different sources, etc.)

  1 = I don't know or won't say
  2 = I do NOT trust
  3 = I trust marginally
  4 = I trust fully
  5 = I trust ultimately
  m = back to the main menu

Your decision? 5
Do you really want to set this key to ultimate trust? (y/N) y

OP ha fatto questo (annotato nei commenti), ma è bene averlo dichiarato come una risposta.
muru,

7

Puoi usare il --always-trustflag per saltare questo messaggio.


1
Questo è assolutamente vero, ma sta solo togliendo i sintomi, non la malattia. La tua soluzione è come prendere un'aspirina perché hai il cancro ...
Fabby,

2
--always-trustè una buona soluzione in alcuni casi , ma se la chiave in questione è davvero la chiave dell'utente, dovrebbe essere data la massima fiducia.
Blacklight Shining,

4
La mia malattia è la persistente insistenza di GPG su un portachiavi che rovina la mia crittografia programmatica dei file e lo fa in modi diversi su ogni VM su cui installo il software.
bbozo,

@BlacklightShining e se non ero ancora in grado di verificarlo, Evolution non mi permette di crittografare le mail a quell'indirizzo. Non ho idea del perché la crittografia di un testo a qualcuno richieda una fiducia assoluta - e con una fiducia solo marginale non dovrebbe essere possibile.
Izzy,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.