Uso enigmail da oltre un anno senza problemi e oggi non funziona.
Ho trovato il seguente fatto interessante:
gpg --decrypt something.gpg # this works
gpg2 --decrypt something.gpg # this fails
Quindi qualcosa è rotto con la versione 2 di gpg sulla mia macchina.
Questo mi ha portato a vedere che:
gpg --list-secret-keys # reads from ~/.gnupg/secring.gpg
gpg2 --list-secret-keys # reads from ~/.gnupg/pubring.gpg (pubring?!)
Questa sembra essere la radice del problema ... ovviamente gpg2
non riesco a trovare la chiave segreta perché sta cercando nel file sbagliato.
Come posso gpg2
fallire quando gpg
funziona bene? Non vedo alcuna opzione per specificare da dove vengono lette le chiavi segrete.
Qualcuno ha qualche idea?
Risposta a @grawity :
Grazie, apprezzo il tuo aiuto. Ho corso strace
e vedo di cosa stai parlando.
Tuttavia, anche dopo gpg2 --import ...
non vedo alcuna differenza nel comportamento. Posso farlo funzionare solo se riavvio (senza avviare gpg-agent), eseguo gpg2 --import ...
, quindi eseguo gpg2 --decrypt ...
. Dopo quella sequenza, anche thunderbird + enigmail si comporta bene. Tuttavia, dopo circa 15 minuti (la mia ipotesi è la password che ho inserito per decrittografare è scaduta), quindi gpg-agent
è tornato al suo vecchio comportamento. Questa sequenza è ripetibile.
Quindi ecco un output se aiuta a chiarire qualcosa:
uscita di gpg2 -K
:
/home/<username>/.gnupg/pubring.gpg
---------------------------------
sec rsa4096/AAAAAAAA <date> [SC]
uid [ultimate] <description of me>
ssb rsa4096/BBBBBBBB <date> [E]
uscita di gpg-connect-agent
> keyinfo --list
S KEYINFO <keygrip associated with AAAAAAAA> D - - - P - - -
S KEYINFO <keygrip associated with BBBBBBBB> D - - - P - - -
OK
uscita di gpg2 -v -r <my email> -e testfile
gpg: using PGP trust model
gpg: using subkey BBBBBBBB instead of primary key AAAAAAAA
gpg: This key belongs to us
gpg: reading from 'testfile'
gpg: writing to 'testfile.gpg'
gpg: RSA/AES256 encrypted for: "BBBBBBBB <description of me>"
uscita di gpg2 -v -d testfile.gpg
gpg: public key is BBBBBBBB
gpg: using subkey BBBBBBBB instead of primary key AAAAAAAA
gpg: using subkey BBBBBBBB instead of primary key AAAAAAAA
gpg: encrypted with 4096-bit RSA key, ID BBBBBBBB, created <date>
"<description of me>"
gpg: public key decryption failed: Operation cancelled
gpg: decryption failed: No secret key
gpg-agent
e il programma pinentry doveva essere impostato su pinentry-gtk-2
. Prima era impostato su pinentry-gnome3
, che esisteva sul mio sistema, ma non funzionava. Ho dovuto installare manualmente pinentry-gtk-2
.