web-dev-qa-db-fra.com

Comment changer la clé gpg du magasin de mots de passe du passe

On peut utiliser pass comme gestionnaire de mots de passe pour stocker les mots de passe.

Une chose qui n’est pas claire dans le manuel est de savoir s’il est possible de changer facilement la clé gpg utilisée. On initialise le magasin de mots de passe avec une clé gpg, mais je me demande quoi faire si la clé, par exemple, devient obsolète.

Existe-t-il un moyen pratique de décrypter et de rechiffrer tous les mots de passe stockés dans le gestionnaire de mots de passe avec une autre clé?

15
Willem Van Onsem

Utilisez pass init [-p path] <gpg-id><gpg-id> spécifie la nouvelle clé gpg avec laquelle vous souhaitez chiffrer vos mots de passe. Selon le pass page de manuel ,

Si le gpg-id spécifié est différent de la clé utilisée dans les fichiers existants, ces fichiers seront recryptés pour utiliser le nouvel identifiant.

Cela semble fonctionner au moins dans pass 1.6.5. Veuillez noter que vous aurez besoin d'accéder à l'ancienne clé privée gpg pour pouvoir décrypter puis recrypter vos mots de passe.

Mise en garde 1

Si l'un de vos répertoires pass ne se recrypte pas avec la nouvelle clé, il se peut qu'il comporte un fichier .gpg-id qui remplace tout identifiant gpg spécifié au niveau supérieur du répertoire password-store. Je ne traiterai pas de la façon de résoudre ce problème dans cette question car ce serait probablement un peu trop tangentiel, mais je dirai que la page de manuel pass permet de l'expliquer assez bien.

Mise en garde 2

Si votre répertoire ~/.password-store est un référentiel git (c'est-à-dire que vous avez déjà exécuté pass git init), veuillez noter que l'ancien chiffrement restera dans l'historique de validation du référentiel git; si votre préoccupation concerne une clé gpg potentiellement compromise, vous devez prendre toutes les mesures nécessaires pour supprimer l'historique de ce git.

18
Wayne Warren