#比特币#比特币迎来新技术更新,Core开发者教你如何验证客户端( 三 )


一旦你有了这两个“assert”文件 , 你就可以通过运行来检查签名(将文件名调整为特定的.assert.sig
gpg --verify bitcoin-core-linux-0.19-build.assert.sig如果这步成功了 , 你就会得到下面的结果:
gpg: Signature made Sun 19 Jan 2020 03:47:15 AM UTCgpg: using RSA key E463A93F5F3117EEDE6C7316BD02942421F4889Fgpg: Good signature from “Luke Dashjr ” [ultimate]注意密钥的指纹是粗体显示的 。 该指纹必须要和你在步骤1中验证的密钥匹配 , 否则它可能是由其他人签名的!关于“好签名”的部分也很重要 , 而名字和电子邮件地址却不重要 , 如果指纹是错误的 , 这两个都可能是伪造的 。
假设一切顺利 , 你现在知道“.assert”文件是由所述密钥的控制者提供担保的 , 并且可继续验证你的实际程序文件 , 是否是该“.assert”文件中列出的 。
【#比特币#比特币迎来新技术更新,Core开发者教你如何验证客户端】
步骤3:验证文件本身要验证程序文件 , 必须首先对其进行加密哈希验证(基本上是提取其指纹) 。
这是通过一个简单的命令完成的(注意替换你正在验证的实际文件名!):
Linux: sha256sum bitcoin-0.19.0.1.knots20200104-powerpc64le-linux-gnu.tar.gzWindows: certUtil -hashfile bitcoin-0.19.0.1.knots20200104-win64.zip SHA256macOS: shasum -a 256 bitcoin-0.19.0.1.knots20200104-osx-unsigned.dmg这将输出如下内容:
d370692590c4546ac0de250da91c6c288d9ee5252f1a4b857a5b80c4e3d81149 bitcoin-0.19.0.1.knots20200104-powerpc64le-linux-gnu.tar.gz这是文件内容的指纹 , 后跟指定的文件名 。
现在 , 在任何纯文本编辑器/查看器中打开“.assert”文件 , 并查找该指纹 。 它应该在顶部的“out_manifest”部分 , 如果你到达了“in_manifest”或“base_manifests” , 那么你已经走得太远了 。
如果你在“.assert”文件中找到了它 , 那么你已经验证了你拥有的文件 , 是与签名者所担保的文件是相同的(你将在指纹右侧的“.assert”文件中看到它们的文件名 , 它可能与你的文件名是相同的) 。
而如果“.assert”文件中缺少该文件 , 则可能表示你使用了错误的“.assert”文件 , 或者你的文件是不匹配的(在这种情况下 , 你将在预期的文件名旁看到另一个指纹) 。 如果文件已列出 , 但有着不同的指纹 , 请不要打开文件 , 而是保存它(我们可能会要求您提供副本) , 并与受影响项目的安全团队联系 。