Use pass init [-p path] <gpg-id>
onde <gpg-id>
especifica a nova chave gpg com a qual você deseja criptografar suas senhas. De acordo com a pass
man page ,
Se o gpg-id especificado for diferente da chave usada em qualquer arquivo existente, esses arquivos serão criptografados novamente para usar o novo ID.
Isso parece funcionar pelo menos em pass 1.6.5
. Observe que você precisará acessar a antiga chave privada gpg para descriptografar e, em seguida, criptografar novamente suas senhas.
Advertência 1
Se algum dos seus diretórios pass
não for criptografado com a nova chave, pode ser que ele tenha um arquivo .gpg-id
que substitui qualquer gpg-id especificado no nível superior do diretório password-store
. Não vou abordar como resolver este problema nesta questão, pois seria provavelmente um pouco tangencial demais, mas direi que a página pass
man faz um bom trabalho explicando isso.
Advertência 2
Se o seu diretório ~/.password-store
for um git repo (ou seja, você executou pass git init
ao mesmo tempo), observe que a criptografia antiga permanecerá no histórico de confirmação do git repo; Se a sua preocupação for sobre uma chave gpg potencialmente comprometida, então você deve tomar as medidas necessárias para se livrar dessa história do git.