我们有一个包,我们正在尝试创建一个独立的签名,以确保另一端可以确信它来自我们。
我知道如何在创建密钥对时指定正确的身份,因为gpg --gen-key
具体要求身份。我也知道如何导出给定标识的公钥和私钥:
gpg --export me@somewhere.com --armour --output key.public
gpg --export-secret-keys me@somewhere.com --armour --output key.private
并且应在接收端分发和导入公钥以进行验证:
gpg --import key.public
但是(我的第一个问题),我不知道在单个身份可能有多个身份的情况下如何指定特定的密钥对。例如,假设我们有两个密钥对me@somewhere.com
,一个用于软件安装包,另一个用于安全shell访问。我如何只出口其中一对?
我的第二个问题更多地与生成和验证文档上的签名有关。
命令如何:
gpg --detach-sig inputDoc --output detachedSigDoc
实际上知道用于创建签名的密钥对?我看到有一个--local-user
允许你“指定用于签名的用户ID”,但是当给定身份有多个密钥对时,它是如何工作的?
在任何情况下,该gpg --verify
选项似乎没有等效的操作,那么我们如何指定在检查文件源时使用的密钥对?
对于它的价值,我们使用的是GnuPG版本1,因为我们使用的是嵌入式系统。