ใช้pass init [-p path] <gpg-id>
ที่ซึ่ง<gpg-id>
ระบุคีย์ gpg ใหม่ที่คุณต้องการเข้ารหัสรหัสผ่านของคุณ ตามที่pass
หน้าคน ,
หาก gpg-id ที่ระบุแตกต่างจากรหัสที่ใช้ในไฟล์ที่มีอยู่ไฟล์เหล่านี้จะถูกเข้ารหัสใหม่เพื่อใช้รหัสใหม่
ดูเหมือนว่าจะทำงานอย่างน้อยpass 1.6.5
ระบบ โปรดทราบว่าคุณจะต้องเข้าถึงกุญแจส่วนตัวของ gpg เพื่อถอดรหัสและเข้ารหัสรหัสผ่านของคุณอีกครั้ง
คำเตือน 1
หากpass
ไดเรกทอรีใด ๆ ของคุณไม่เข้ารหัสลับใหม่ด้วยคีย์ใหม่อาจเป็นได้ว่ามี.gpg-id
ไฟล์ที่แทนที่ gpg-id ใด ๆ ที่ระบุไว้ที่ระดับบนสุดของpassword-store
ไดเรกทอรี ฉันจะไม่ครอบคลุมวิธีการแก้ปัญหานี้ในคำถามนี้เพราะมันอาจจะเป็นวงเล็ก ๆ น้อย ๆ แต่ฉันจะบอกว่าpass
หน้าคนทำงานค่อนข้างดีในการอธิบาย
ข้อแม้ 2
หาก~/.password-store
ไดเรกทอรีของคุณเป็น repo git (เช่นคุณวิ่งครั้งเดียวpass git init
) โปรดทราบว่าการเข้ารหัสเก่าจะยังคงอยู่ในประวัติการกระทำของ git repo; หากข้อกังวลของคุณเกี่ยวกับคีย์ gpg ที่อาจถูกบุกรุกคุณควรทำตามขั้นตอนใด ๆ ที่จำเป็นต่อการลบประวัติคอมไพล์