首页/安全/加密与证书速查/哈希截断与指纹长度
本包目录(305 条)
加密算法基础95 条
TLS 与 HTTPS60 条证书与 PKI30 条OpenSSL 实战30 条证书运维排查49 条密钥管理41 条

哈希截断与指纹长度

把摘要截断使用会按位削弱强度:截断到 n 位后抗碰撞约 n/2、抗前像约 n 位;证书指纹、消息 ID 等场景需要明确长度约定。

加密与证书速查安全更新于 2026-10-12
规律截断到 n 位 → 抗碰撞约 n/2 位
示例SHA-256 截断为 128 位后抗碰撞约 64 位
常见用法证书指纹展示(SHA-256 全长 32 字节)
注意双方约定必须一致

查看证书指纹

查看证书指纹
openssl x509 -in cert.pem -noout -fingerprint -sha256
openssl x509 -in cert.pem -noout -fingerprint -sha1   # 仅为兼容查看,不建议用于校验
人工核对指纹容易出错(长串字符),建议用脚本比对并输出位逐字节差异。

易错点

  • 把 SHA-256 截断到 128 位后当「128 位安全」使用是高估:抗碰撞只剩约 64 位
  • 不同系统对指纹展示格式(大小写、冒号分隔)处理不同,脚本比对要先规范化

数据来源与参考

  • NIST SP 800-107 Rev.1(哈希的截断使用)
  • FIPS 180-4
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌