【发布时间】:2016-02-22 10:30:55
【问题描述】:
在 github 上使用来自未知第三方的代码时,我总是确保检查代码是否存在可能危及我系统安全性的明显后门。
我正在审查的存储库的特定状态可能绑定到一个 git 标记和一个提交哈希。 我们知道,一个 git 标签的内容可以很容易地改变。所以再次下载源代码并根据版本标签信任它肯定是不安全的。
我的问题是:当重新下载源代码时,我是否可以相信,如果我根据完整提交哈希检查特定提交,这与我之前查看的代码 100% 相同?
这个问题的重点根本不是 sha1 冲突发生的概率(因为计算冲突比计算特定的 sha1 哈希要容易得多 - 希望 - 目前几乎不可能?),但是是否每个文件都是此 sha1 总和的一部分,因此更改总是会触发不同的哈希。
【问题讨论】: