6 个月前我更改了我的 GPG 密钥密码。在 shell 中它似乎工作正常。但加密文件可以通过两种方式解密:
- 使用终端中的命令
gpg file.txt.asc
- 新密码有效。旧密码无效。(这是正确的) - 在通过终端运行的 bash 脚本中
sh /absolute/path/script.sh
我插入#!/bin/bash
一行gpg file.txt.asc
-新密码无效。只有旧密码有效。
所以我无法使用脚本解密文件。
.gnupg
文件夹已移至加密位置,并且已通过符号链接回原始位置gpg --edit-key
我尝试使用以及更改密码gpg2 --edit-key
(两者的工作方式相同)- gpg 缓存已被清除,我还尝试删除密钥并再次将其导入
答案1
我终于明白了:
- gpg 和 gpg2 中有不同的密钥
- 我有一个别名
alias gpg="gpg2"
- 脚本正在使用“gpg”工作,而 shell 正在使用 gpg2 工作(尽管我当时并不这么认为)