CyberGlossary

密码学

密码学哈希函数

别称: 哈希函数, 消息摘要

定义

将任意长度输入映射为固定长度摘要的确定性单向函数,具备抗碰撞、抗原像和抗第二原像三大安全性质。

密码学哈希函数将任意长度输入压缩为固定长度的输出(摘要),并满足三大性质:原像抗性(已知 H(x) 难以找出 x)、第二原像抗性(给定 x,难以找到 x' ≠ x 使 H(x') = H(x))、碰撞抗性(难以找到任何 x ≠ x' 使其哈希相同)。它同时具备确定性、高速度以及伪随机输出特征。哈希函数是数字签名、消息认证码(HMAC、KMAC)、密码存储(与 Argon2、scrypt 等 KDF 结合)、完整性校验、Merkle 树、区块链与内容寻址等的基础。MD5 与 SHA-1 已被破解(存在实用碰撞),仅可用于无安全要求的遗留用途;SHA-256、SHA-3 与 BLAKE2/BLAKE3 是当前推荐的家族。

示例

  • Git 使用 SHA-1(正向 SHA-256 过渡)来标识提交与对象。
  • TLS 证书指纹通常是 SHA-256 哈希。

相关术语