使用SHA-256,你的安全存储库变得更安全

JFrog Artifactory与SHA-256

Artifactory从头到尾进行了独特的设计,以最佳方式管理二进制文件,并具有有效支持任何格式的包的能力。实现这种灵活性的关键特性之一是Checksum-Based存储。而所有的工件文件都在几个选项之一中进行存储和管理二进制存储在Artifactory的支持下,文件的元数据(包括校验和)在Artifactory中进行维护数据库。Artifactory使用工件的SHA1值作为到二进制存储中文件物理位置的映射。这允许对文件的许多操作(如复制、移动、删除等)作为数据库事务执行,从而使它们具有高性能。但这些校验和还发挥了另一个重要作用。它们是验证下载的任何工件完整性的一种方法。这已经有效了好几年,但最近,谷歌宣布首次成功的SHA1碰撞(即他们设法用相同的SHA1摘要创建了两个不同的文件。)但是不要担心,您的Artifactory存储库是安全的。我们很高兴地宣布,新发布的JFrog Artifactory 5.5原生支持SHA-256校验和,使您的存储库更加安全。

对SHA-256的本机支持为二进制工件提供了更安全的环境,并支持需要更强的SHA-256来验证文件完整性的工具。随着加密技术和计算能力的进步,我们认识到需要支持SHA-256,为我们的客户努力生产的二进制文件提供一个更安全的环境。

SHA1有什么问题?

SHA-1接受任何文件的内容,并计算一个160位的哈希值(基本上是一长串数字和字母),作为该特定文件的加密指纹。

JFrog Artifactory与SHA-256

随着密码学研究的发展和计算能力的提高,来自谷歌和阿姆斯特丹CWI研究所的研究人员成功地创建了两个具有相同SHA1哈希值的文件——这就是我们所说的碰撞攻击。

JFrog Artifactory与SHA-256

碰撞攻击意味着一个文件可以冒充另一个文件,从而可能出现不同的安全漏洞,例如伪造数字签名文件或HTTPS证书。在Artifactory的上下文中,一个工件理论上可以模拟另一个工件,这意味着您期望下载一个工件,但是得到其他的东西。

进入sha - 256

SHA-256散列比SHA1强得多,消除了冲突的风险。我们认为,我们必须提供这种能力,让我们的客户对Artifactory提供的安全措施充满信心。

JFrog Artifactory与SHA-256

为你的藏物防弹

为了减轻SHA1冲突攻击的风险,您可以迁移到SHA-256,这正是Artifactory 5.5允许您做的。通过升级到版本5.5,您可以将数据库迁移到使用SHA-256校验和,使您的存储库更加安全,因为没有人能够模拟您的工件。

如果您正在运行Artifactory OSS或Artifactory Pro,您可以继续并升级到这个最新版本

如果您正在运行Artifactory Enterprise HA集群,那么这个更复杂的设置将具有特殊升级说明。一定要认真按照这些说明去做。

但也要注意,升级到5.5意味着Artifactory将能够计算SHA-256校验和,实际上,任何上传到存储库的新工件都将自动计算其SHA-256校验和。为了计算所有现有工件的SHA-256校验和,您需要迁移数据库,但是不用担心,我们将详细说明怎么做呢?

展望未来

添加对SHA-256校验和的支持是一个巨大的进步,因为即使在Google和公司破解了SHA1之后,Artifactory仍然可以提供100%的保证,您下载的工件确实是您要求的工件,并且它是目前唯一的repository manager可以这样做。但这只是第一步。接下来,我们将把二进制存储也迁移到基于SHA2的存储上,将Artifactory的安全性提升到一个新的水平。