Используйте pass init [-p path] <gpg-id>
где <gpg-id>
указывает новый ключ gpg, с помощью которого вы хотите зашифровать ваши пароли. Согласно pass
справочной странице ,
Если указанный идентификатор gpg отличается от ключа, используемого в любых существующих файлах, эти файлы будут повторно зашифрованы для использования нового идентификатора.
Кажется, это работает по крайней мере в pass 1.6.5
. Обратите внимание, что вам потребуется доступ к старому секретному ключу gpg, чтобы расшифровать, а затем повторно зашифровать ваши пароли.
Предостережение 1
Если какой-либо из ваших pass
каталогов не перешифровывается с помощью нового ключа, возможно, он содержит .gpg-id
файл, который переопределяет любой gpg-id, указанный на верхнем уровне password-store
каталога. Я не буду рассказывать о том, как решить эту проблему в этом вопросе, так как это, вероятно, будет слишком касательно, но я скажу, что pass
справочная страница довольно неплохо объясняет это.
Предостережение 2
Если ваш ~/.password-store
каталог является git-репо (то есть вы когда-то запускали pass git init
), пожалуйста, обратите внимание, что старое шифрование останется в истории коммитов git-репо; если вы беспокоитесь о потенциально скомпрометированном ключе gpg, вам следует предпринять все необходимые шаги, чтобы избавиться от этой истории git.