![哈希值、签名和证书](https://linux22.com/image/153116/%E5%93%88%E5%B8%8C%E5%80%BC%E3%80%81%E7%AD%BE%E5%90%8D%E5%92%8C%E8%AF%81%E4%B9%A6.png)
PureOS 有 SHA256 下载验证,但我听说 SHA 不太安全。他们是否签署文件或提供关联的 .sig 文件?这样做真的会更安全吗?
答案1
您的问题似乎对几个概念有点困惑。让我们从基础开始。
哈希值、签名和证书
哈希通常用于确保完整性并防止有人篡改文件或消息。您已经拥有文件的哈希值的地方并且您相信您已获得正确的哈希值,您可以通过检查文件是否与哈希值匹配来检查您是否获得了正确的文件。但是您需要为每个新文件提供一个新的哈希值。
签名使用公钥/私钥对进行工作。它们用于验证某些内容是否由正确的发件人发送。您可以通过检查签名是否与其公钥匹配来验证发件人是否有权访问其私钥(超级秘密,只有发件人拥有)。但您需要已经知道并信任他们的公钥。
证书使这一点更进一步。如果您还没有发件人的公钥,则您的浏览器中可能已经嵌入了第三方证书颁发机构的公钥。您相信您的浏览器已就信任哪些证书颁发机构做出了正确的决定。您信任这些证书颁发机构来签署包含发件人公钥的证书。
PureOS 是做什么的
ISO 安装映像
据我所知,他们没有在他们的网站上签署安装 ISO。他们网站的证书(由 LetsEncrypt 提供)确认他们拥有该域名www.pureos.net。因此,如果您相信该域名的所有者是 PureOS,那么您就可以信任该网站上的内容。
在他们的网站上,他们发布了 ISO 的 SHA256 哈希值,请参阅 SHA256SUM 链接这一页。
下载 ISO 时,您可以使用 Linux 实用程序 sha256sum 或类似的 Windows 实用程序来验证 IOS 文件是否与哈希值匹配。
这是安全的,因为它告诉您网站的所有者是 ISO 文件的发送者。
包管理器
PureOS 附带其公共 PGP 密钥。当您apt-get update
创建存储库时,会检查主签名。该存储库包含所有包的 SHA256 哈希值。所以当你签收apt-get install
包裹时,可以检查签名。
apt-get install
因此,只要您自己不添加不可信的 GPG 公共密钥,您通过的任何内容都应该是安全的。
SHA256 在撰写本文时是安全的
您可能听说过 SHA1 不安全。 SHA 有多种不同形式。 SHA1 已不再用于任何与安全相关的用途,因为人们认为它太容易被破解。更准确地说,某人很可能能够生成与现有哈希匹配的新文件,而加密安全要求这是不可能的。
SHA1 已被更强大的形式(包括 SHA256)所取代。在撰写本文时(2019年5月)SHA256 还是非常安全的。