作为上下文,这是我的钥匙圈的代表性示例:
sec rsa4096/MMMMMMMM 2018-01-01 [C] [expires: 2020-01-01]
uid [ultimate] Fred Flintstone <[email protected]>
ssb rsa4096/AAAAAAAA 2018-01-01 [S] [expires: 2020-01-01]
ssb rsa4096/BBBBBBBB 2018-01-01 [S] [expires: 2020-01-01]
我使用的是 gpg 版本 2.1.11。
如果我尝试MMMMMMMM
在具有 私钥材料的设备上使用我的 PGP 密钥BBBBBBBB
,一切都将按照我的预期进行 - gpg 会使用它BBBBBB
,因为它是最后一个(签名)子密钥。
但是,每当我尝试在仅具有(not )MMMMMMMM
的私钥材料的设备上使用时,我都会收到此错误:AAAAAAAA
BBBBBBBB
gpg: signing failed: No secret key
因为 gpg 正在尝试使用最后一个子项BBBBBBBB
.如果我手动指定要使用的确切子项,例如通过传递-u AAAAAAAA!
,那么它就可以工作,但我宁愿不必这样做,因为我在多台机器上共享我的配置。
有没有办法将 gpg 配置为使用私钥材料可用的最后一个子项,而不是绝对的最后一个子项?