Posso inserire la mia password gpg solo una volta e sbloccare tutte le mie sottochiavi (firma, decrittografia, autenticazione)?
Al momento, devo inserire la mia password gpg tre volte (per la firma, per la decrittografia, per l'autenticazione). Questo è scomodo.
Ho provato a trovare uno script di shell.
#!/bin/bash
set -x
set -e
set +o history
signing_key=77BB3C48
encryption_key=CE998547
tempfile="$(mktemp)"
echo "test" > testfile
unset passphrase || exit 1
read -sp 'Enter password. ' passphrase ; echo
exec 3<<<"$passphrase"
gpg2 --no-tty --use-agent --batch --yes --passphrase-fd 3 --sign-with "$signing_key" --clearsign "$tempfile"
gpg2 --no-tty --use-agent --verify "$tempfile.asc"
gpg2 --no-tty --use-agent --yes --armor --recipient "$encryption_key" --encrypt "$tempfile"
exec 3<<<"$passphrase"
gpg2 --no-tty --use-agent --batch --decrypt --passphrase-fd 3 "$tempfile.asc"
Ma sfortunatamente, in questo modo le password gnupg-agent non memorizzano nella cache la password. Questo può essere risolto?
Informazioni di sistema:
- Quando non uso quello script di shell, non ho problemi con gnupg-agent. Quando firmo / decrittografo manualmente un file nella shell, pinentry richiede due volte la password, quindi la memorizza nella cache fino al riavvio.
- Usando Debian Wheezy.
- versione gpg:
dpkg -l | grep gnupg
ii gnupg 1.4.12-7+deb7u3 i386 GNU privacy guard - a free PGP replacement
ii gnupg-agent 2.0.22-3 i386 GNU privacy guard - password agent
ii gnupg-curl 1.4.12-7+deb7u3 i386 GNU privacy guard - a free PGP replacement (cURL)
ii gnupg2 2.0.22-3 i386 GNU privacy guard - a free PGP replacement (new v2.x)
Ho chiesto sulla mailing list degli utenti di gnupg qualche tempo fa, ma nessuna risposta.
Forse questa risposta avrebbe funzionato? Forse gpg-connect-agent
è richiesto?
exec 3<<<"$passphrase"
era nuovo anche per me ... E ho appena lanciato una ricompensa di 250 rappresentanti alla risposta che citi.