vlambda博客
学习文章列表

开发者正为Git开发新的哈希算法

Git源码管理系统是基于SHA‑1哈希算法,Git库储存的不同对象类型都使用SHA‑1哈希来进行识别。LinusTorvalds在设计Git时并没有考虑SHA‑1有一天可能会不安全,他没有设计能切换到不同哈希算法的功能,而哈希类型深入到代码之中。



但SHA‑1已经迟暮,Google在2017年宣布了对SHA-1哈希算法的首个成功碰撞攻击。所谓碰撞攻击是指两个不同的信息产生了相同的哈希值。

今年早些时候,研究人员将攻击成本降至4.5万美元,未来几年攻击成本还会继续下降。使用SHA-1的项目需要尽快切换到更安全的哈希算法。

在考虑了多个替代之后,Git社区在2018年宣布它的下一代哈希算法将是SHA‑256。对小的项目来说,过渡到SHA‑256比较容易,但对Linux内核这样庞大的项目来说,这并非轻而易举。