我正在学习使用 GPG。我创建了一个密钥对,密码为“a”,以确保我不会输错密码。创建密钥对后,我立即输入
gpg --edit-key id
gpg> fpr
gpg> sign
然后,GnuPG 提示输入密码,但它提示我输入我当天早些时候创建的密钥,而不是我通过 指定的密钥id
。我输入了要签名的密钥的密码,您记得它只有字母 a。它抱怨这是错误的密码。我可以看到密码可以用于其他事情,例如更改密码等等。
那么为什么我应该使用与我想要签名的密钥不同的密码呢?
答案1
那么为什么我应该使用与我想要签名的密钥不同的密码呢?
因为整點签名的一大特点是生成签名的密钥与被签名的密钥不同。换句话说,该sign
命令并非旨在使用其自身来签名密钥(这是在密钥生成过程中自动完成的,因此没有单独的命令),其目的是使用您当前的默认密钥来签名其他人的密钥。
这样的操作只需要签名者的“私钥”,而不需要目标的私钥——例如,如果你正在签署同事的密钥,那么要求你提供私钥是没有意义的。他们的密碼。
您应该能够使用该gpg -u
选项选择不同的私钥进行密钥和数据签名(例如,如果您想使用个人密钥 B 签署工作密钥 A),但如上所述,签署密钥与自身一旦您添加 UID 或子密钥(协议需要此类“子密钥绑定签名”)就会自动完成,因此没有必要再次手动执行此操作。