在某些情况下,我将使用一个没有安装gpg的系统,我不想花时间设置它并获得安装pub key。 我只想查看提交的签名,并将其复制到另一个系统来validation它。 我似乎无法find一个方法来查看签署与出gpg被安装。 Git只给出一个错误,当我尝试使用任何git命令来查看它时,gpg未安装。
有没有一种方法来查看git pgp签名的提交与pgp签名钉在没有gpg安装在系统上?
我一直在寻找答案,并没有发现任何使用。 感谢您提供任何帮助或指示。
有没有一种方法来查看git pgp签名的提交与pgp签名钉在没有gpg安装在系统上?
我不会这么期待的。 如果你想看详细信息,至少需要一个用于读取OpenPGP数据包的解析器,以及从属于该数据库的密钥中获取信息的完整实现。 GnuPG是唯一相关的免费软件OpenGP实现(除了Go语言和Bouncy Castle for Java / C#的库)。 虽然有一个简化的实现gpgv
仅用于验证签名,但不会被git连接,无论如何,您都必须安装额外的软件(精简的GnuPG软件包)。
此外,OpenPGP签名不包括证书(公钥)。 要实际查看签名,您必须获取它们 – 也是由GnuPG执行的操作。 最后,要真正验证另一个设备上的签名,不仅需要签名,还需要签名的数据(因此,git目录)。
我很惊讶有一个Linux发行版默认没有安装GnuPG,大多数软件包管理器都使用它来验证软件包,而且它应该可以在所有发行版的软件库中使用。
我没有成功地尝试一个破解git想要验证的签名(在$PATH
转储输入中名为gpg
的脚本),但是看起来git正在做一些进一步的检查或通信。