Intento agregar contraseñas al administrador de contraseñas "pass". Pero mis intentos fallan con errores de GPG "sin clave pública". ¿Por qué?

27

Estoy tratando de instalar Pass: el administrador de contraseñas estándar de Unix , sin embargo, cuando trato de agregar contraseñas a la aplicación obtengo estos errores

gpg: Kelly's Passwords: skipped: No public key
gpg: [stdin]: encryption failed: No public key

GPG Public Keys?

Cuando escribo el comando gpg --list-keysme sale:

/home/khays/.gnupg/pubring.gpg
------------------------------
pub   2048R/64290B2D 2012-11-05
uid                  Kelly Hays <[email protected]>
sub   2048R/0DF57DA8 2012-11-05

Estoy un poco perdido de cómo remediar esto, ¿alguna idea?

Kelly Hays
fuente

Respuestas:

28

¿Cómo creaste el almacén de contraseñas? pass init "Kelly's Passwords"? Si es así, esto está mal, debería haber llamado pass init 64290B2D.

Y si luego pass insert foofallará con:

gpg: fooo: skipped: public key not found
gpg: [stdin]: encryption failed: public key not found

entonces usted tiene que confiar en su propia llave primero ( gpg --edit-key 64290B2D, trust, 5, save).

zhenech
fuente
Solo agregaré para aquellos que estaban un paso atrás como yo, primero debe gpg --generate-key
iniciar la
2
@ItayB el comando para generar una clave gpg es en realidad gpg --gen-key(en gpg 1.4.20)
Rubanov
En un caso, usar gpg(versión 1.4.20) en Xubuntu, siempre conduce a fallas (generar contraseñas a través de pass). El uso gpg2(versión 2.1.11) hizo que todo funcionara bien.
Nikos Alexandris
La 'clave', por ejemplo, 64290B2D, es lo que haya utilizado para identificar la clave, en mi caso es una dirección de correo electrónico, revelada como uid congpg -k
John Mee
5

Con las mismas indicaciones, si alguien tropieza con este problema, la solución puede ser un poco diferente. Su passestá utilizando gpg2en lugar de gpg, que podría haber utilizado para generar / administrar sus claves (o, viceversa). Verificar con:

bash -x $(which pass) insert foo
Michal Ingeli
fuente
2
WTF !? ¿Por qué se instalan gpg y gpg2 en un sistema nuevo? ¿Por qué ni la página de manual del pase ni su sitio web quieren mencionar cómo crear la clave! @ # &% Maldita gpg ???
Tobia
2
En caso de que uno ya haya generado un con GPG 1, puede importarlo en GPG 2 de esta manera:gpg2 --import ~/.gnupg/secring.gpg
maxschlepzig
2

Obtuve el mismo error durante un tiempo, ejecutar bash en depuración está ayudando. (bash -x), luego me di cuenta de que pass había enumerado una clave gpg no existente en .password-store / .gpg-id

Antoine Claval
fuente
1

Obtuve el mismo error, pero consultar gpg2 --list-keysme da

pub   rsa4096/0x12345678 2016-11-22 [SC] [expired: 2018-11-26]

Entonces mi solución es

gpg --edit-key 0x12345678
gpg> expire
...
gpg> save

Ver /unix//a/177310/14315

Si tiene que renovar subclaves, use esto:

> e.g. if the subkey whose validity you want to extend is the first listed
> subkey, or if it is the only listed subkey, then the  command would be
> Command> key 1
> this will put a * after the word sub, indicating that this particular
> subkey has been selected. then
> Command> expire
> and follow the prompts.

Fuente https://lists.gnupg.org/pipermail/gnupg-users/2005-June/026063.html

Torsten
fuente