Cómo cambiar la clave gpg del almacén de contraseñas

16

Se puede usar passcomo administrador de contraseñas para almacenar contraseñas.

Una cosa que no está clara en el manual es si es posible cambiar fácilmente la clave gpg que se utiliza. Uno inicializa el almacén de contraseñas con una clave gpg, pero me pregunto qué hacer si la clave, por ejemplo, no está actualizada.

¿Hay alguna forma conveniente de descifrar y volver a cifrar todas las contraseñas almacenadas en el administrador de contraseñas con otra clave?

Willem Van Onsem
fuente

Respuestas:

21

Use pass init [-p path] <gpg-id>where <gpg-id>especifica la nueva clave gpg con la que desea cifrar sus contraseñas. Según la passpágina del manual ,

Si el gpg-id especificado es diferente de la clave utilizada en los archivos existentes, estos archivos se volverán a cifrar para usar el nuevo id.

Esto parece funcionar al menos en pass 1.6.5. Tenga en cuenta que necesitará acceso a la antigua clave privada gpg para descifrar y luego volver a cifrar sus contraseñas.

Advertencia 1

Si alguno de sus passdirectorios no se vuelve a cifrar con la nueva clave, puede ser que tenga un .gpg-idarchivo que anule cualquier gpg-id especificado en el nivel superior del password-storedirectorio. No abordaré cómo resolver este problema en esta pregunta, ya que probablemente sería un poco demasiado tangencial, pero diré que la passpágina del manual hace un buen trabajo al explicarlo.

Advertencia 2

Si su ~/.password-storedirectorio es un repositorio git (es decir, usted ejecutó una vez pass git init), tenga en cuenta que el cifrado anterior permanecerá en el historial de confirmación del repositorio git; si le preocupa una clave gpg potencialmente comprometida, entonces debe tomar los pasos necesarios para deshacerse de ese historial git.

Wayne Warren
fuente