So ändern Sie den gpg-Schlüssel des Passwortspeichers

15

Man kann es passals Passwort-Manager verwenden, um Passwörter zu speichern.

Eine Sache, die aus dem Handbuch nicht klar hervorgeht, ist, ob es möglich ist, den verwendeten gpg-Schlüssel einfach zu ändern. Man initialisiert den Passwortspeicher mit einem gpg-Schlüssel, aber ich frage mich, was ich tun soll, wenn der Schlüssel zum Beispiel veraltet ist.

Gibt es eine bequeme Möglichkeit, alle im Passwort-Manager gespeicherten Passwörter mit einem anderen Schlüssel zu entschlüsseln und neu zu verschlüsseln?

Willem Van Onsem
quelle

Antworten:

20

Use pass init [-p path] <gpg-id>where <gpg-id>gibt den neuen gpg-Schlüssel an, mit dem Sie Ihre Passwörter verschlüsseln möchten. Nach der passManpage ,

Wenn sich die angegebene GPG-ID von dem in vorhandenen Dateien verwendeten Schlüssel unterscheidet, werden diese Dateien neu verschlüsselt, um die neue ID zu verwenden.

Das scheint zumindest in zu funktionieren pass 1.6.5. Bitte beachten Sie, dass Sie Zugriff auf den alten privaten gpg-Schlüssel benötigen, um Ihre Passwörter zu entschlüsseln und anschließend neu zu verschlüsseln.

Einschränkung 1

Wenn eines Ihrer passVerzeichnisse nicht mit dem neuen Schlüssel neu verschlüsselt wird, enthält es möglicherweise eine .gpg-idDatei, die alle auf der obersten Ebene des password-storeVerzeichnisses angegebenen gpg- IDs überschreibt . Ich werde in dieser Frage nicht darauf eingehen, wie dieses Problem gelöst werden kann, da es wahrscheinlich ein wenig zu tangential wäre, aber ich werde sagen, dass die passManpage es ziemlich gut erklärt.

Vorsichtsmaßnahme 2

Wenn es sich bei Ihrem ~/.password-storeVerzeichnis um ein Git-Repo handelt (dh, Sie haben es einmal ausgeführt pass git init), beachten Sie bitte, dass die alte Verschlüsselung im Commit-Verlauf des Git-Repos verbleibt. Wenn es um einen potenziell kompromittierten GPG-Schlüssel geht, sollten Sie alle erforderlichen Schritte unternehmen, um diesen GPG-Verlauf zu beseitigen.

Wayne Warren
quelle