跳到主要内容
uencoder

SHA-1

SHA-1 是 NSA 设计的 160 位加密哈希函数,2017 年 Google 公布 SHAttered 碰撞,已被各标准弃用。

用途

提供 160 位消息摘要,曾用于 TLS 证书与 Git,因碰撞攻击被淘汰。

机制

将输入按 512 位块处理,维护 160 位状态(5 个 32 位字)。每块经 80 步非线性变换更新状态。2017 年 SHAttered 攻击以约 2^63 复杂度构造碰撞。

用例

  • Git 对象哈希(正迁移 SHA-256)
  • HMAC-SHA1(仍安全)
  • 遗留数字证书
  • 教学示例

示例

  • 输入
    hello
    输出
    aaf4c61ddcc5e8a2dabeede0f3bde2d0d4b2f2

    160 bits = 40 hex characters

常见错误

Using SHA-1 for signatures in new systems
Use SHA-256 or SHA-3

相关词条

相关工具

参考链接