![]() |
如何验证 Tor 源代码? - 可打印的版本 +- Netflix优惠码论坛 (https://www.sinovoter.com) +-- 版块: 合租专栏 (https://www.sinovoter.com/forum-18.html) +--- 版块: Surge与各类代理加速器合租 (https://www.sinovoter.com/forum-57.html) +--- 主题: 如何验证 Tor 源代码? (/thread-7458.html) |
如何验证 Tor 源代码? - netflix - 08-04-2023 注意:这些说明用于验证 Tor 源代码。 请按照正确的说明验证Tor 浏览器的签名。 数字签名是确保某个包是由其开发者生成且未被篡改的过程。下面我们解释为什么它很重要,以及如何验证您下载的tor 源代码是我们创建的并且未被某些攻击者修改。 下载页面上的每个文件都附带两个文件,分别标记为“checksum”和“sig”,其名称与包相同,扩展名分别为“.sha256sum”和“.sha256sum.asc”。 该.asc文件将验证.sha256sum文件(包含包的校验和)是否未被篡改。验证签名后(请参阅下文了解如何进行验证),可以通过以下方式验证包完整性: 代码: $ sha256sum -c *.sha256sum 这些文件可让您验证您下载的文件是否正是我们想要您获取的文件。这会因网络浏览器而异,但通常您可以通过右键单击“sig”和“校验和”链接并选择“文件另存为”选项来下载此文件。 例如,tor-0.4.6.7.tar.gz伴随着tor-0.4.6.7.tar.gz.sha256sum.asc. 这些是示例文件名,与您下载的文件名不完全匹配。 我们现在展示如何在不同操作系统上验证下载文件的数字签名。请注意,签名的日期是在包裹签名时注明的。因此,每次上传新文件时,都会生成具有不同日期的新签名。只要您验证了签名,您就不必担心报告的日期可能会有所不同。 安装 GnuPG 首先,您需要安装 GnuPG,然后才能验证签名。 对于 Windows 用户:
对于 macOS 用户:
对于 GNU/Linux 用户:
获取 Tor 开发者密钥 以下密钥可以对 tarball 进行签名。不要指望所有这些,它可能会根据谁可以发布而有所不同。 代码: Alexander Færøy: 514102454D0A87DB0767A1EBBE6A0531C18A9179 您可以通过上面提供的链接或以下方式获取密钥: 代码: $ gpg --auto-key-locate nodefault,wkd --locate-keys ahf@torproject.org 这应该向您显示类似的内容(对于 nickm): 代码: gpg: key FE43009C4607B1FB: public key "Nick Mathewson <nickm@torproject.org>" imported 如果您收到错误消息,则表明出现了问题,并且在弄清楚为什么不起作用之前您无法继续。您也许可以使用解决方法(使用公钥)部分来导入密钥。 导入密钥后,您可以将其保存到文件中(此处通过其指纹进行识别): 代码: $ gpg --output ./tor.keyring --export 0x2133BC600AB133E1D826D173FE43009C4607B1FB 此命令会将密钥保存到在 path 处./tor.keyring(即当前目录中)找到的文件中。如果./tor.keyring运行此命令后不存在,则说明出现了问题,并且在弄清楚为什么这不起作用之前您无法继续。 验证签名 要验证您下载的包的签名,您需要下载相应的.sha256sum.asc签名文件和.sha256sum文件本身,并使用要求 GnuPG 验证您下载的文件的命令进行验证。 下面的示例假设您将这两个文件下载到“下载”文件夹中。请注意,这些命令使用示例文件名,您的命令将有所不同:您将下载与 9.0 不同的版本,并且您可能没有选择英语 (en-US) 版本。 对于 Windows 用户: 代码: gpgv --keyring .\tor.keyring Downloads\tor-0.4.6.10.tar.gz.sha256sum.asc Downloads\tor-0.4.6.10.tar.gz.sha256sum 代码: gpgv --keyring ./tor.keyring ~/Downloads/tor-0.4.6.10.tar.gz.sha256sum.asc ~/Downloads/tor-0.4.6.10.tar.gz.sha256sum 代码: gpgv --keyring ./tor.keyring ~/Downloads/tor-0.4.6.10.tar.gz.sha256sum.asc ~/Downloads/tor-0.4.6.10.tar.gz.sha256sum 该命令的结果应该产生类似这样的结果(取决于签署它的密钥): 代码: gpgv: Signature made Mon 16 Aug 2021 04:44:27 PM -03 如果您收到包含“没有这样的文件或目录”的错误消息,则可能是前面的步骤之一出了问题,或者您忘记了这些命令使用示例文件名,而您的命令会略有不同。 您可能还想了解有关 GnuPG 的更多信息。 验证校验和 现在我们验证了校验和的签名,我们需要验证包的完整性。 对于 Windows 用户: 代码: certUtil -hashfile tor-0.4.6.10.tar.gz.sha256sum SHA256 代码: shasum -a 256 tor-0.4.6.10.tar.gz.sha256sum 代码: sha256sum -c tor-0.4.6.10.tar.gz.sha256sum |