哈希长度与碰撞情况

哈希长度与碰撞情况

以下是各种常见长度的哈希函数及其碰撞情况分析:

哈希长度 (bit) 常见算法 碰撞情况 碰撞年份 发明年份 状态
128-bit MD5 存在已知有效碰撞攻击 2004 年 1992 年 已过时,不推荐使用
160-bit SHA-0, SHA-1, RIPEMD-160 SHA-0: 存在已知有效碰撞攻击 SHA-0: 2004 年 SHA-0: 1993 年 SHA-0: 已弃用,不推荐使用
SHA-1: 存在已知有效碰撞攻击 SHA-1: 2017 年 SHA-1: 1995 年 已过时,不推荐使用
256-bit SHA-256, SHA-3-256 暂无已知有效碰撞攻击 - SHA-256: 2001 年 安全,广泛使用
384-bit SHA-384 暂无已知有效碰撞攻击 - 2001 年 安全,高安全性需求
512-bit SHA-512, SHA-3-512 暂无已知有效碰撞攻击 - SHA-512: 2001 年 非常安全,高性能需求

碰撞情况说明

  • 128-bit (MD5):

    • MD5 是一种输出为 128 位的哈希算法,但由于其设计的安全性不足,早在 2004 年就被发现可以有效制造碰撞。
    • MD5 于 1992 年被发明,不适合任何需要密码学安全性的场景,仅可用于低安全性完整性校验。
  • 160-bit (SHA-0, SHA-1, RIPEMD-160):

    • SHA-0 是 SHA 系列的初代版本,存在严重的设计缺陷,在 2004 年被证明可以制造碰撞。SHA-0 于 1993 年发明。
    • SHA-1 作为输出 160 位的主流算法,在 2017 年被证实可以通过理论和实践攻击制造碰撞。SHA-1 于 1995 年发明。
    • RIPEMD-160 虽尚未有公开的碰撞记录,但不如更高位算法安全。
  • 256-bit (SHA-256, SHA-3-256):

    • 目前没有已知的碰撞攻击。
    • SHA-256 于 2001 年被发明,适合绝大多数场景,如数字签名、区块链和数据完整性验证。
  • 384-bit (SHA-384):

    • 为高安全需求设计,未有任何已知的碰撞攻击。
    • SHA-384 于 2001 年发明,适用于密钥交换、长时间数据存储等高安全性应用。
  • 512-bit (SHA-512, SHA-3-512):

    • 提供极高的安全性,特别适用于对抗潜在的量子计算威胁。
    • SHA-512 于 2001 年发明,性能消耗较高,适合长期存储的场景。
posted @ 2024-12-11 21:40  笔墨绘星河1  阅读(14)  评论(0编辑  收藏  举报