专题 C6:编码与哈希
哈希函数对比:MD5、SHA-256 与 SHA-512
选哈希算法不能靠习惯。要先分清你是在做兼容性校验,还是在做真正的安全场景。
完整性校验和安全防护不是一回事
如果只是做下载包校验、缓存指纹或遗留系统对接,团队通常更关心兼容性和速度;但一旦进入安全敏感场景,抗碰撞与抗预映像能力就变成硬要求。
这也是为什么 MD5 仍可能出现在旧系统里,但已经不适合新的安全决策链路。
工程上怎么选更稳
- 默认优先 SHA-256,适合大多数现代完整性校验场景。
- 策略或平台要求更长摘要时用 SHA-512。
- MD5 只在明确接受风险、并且需要遗留兼容时使用;如果需要真实性,还要配合 HMAC 或签名。
实用输入/输出示例
输入
部署产物 + 预期摘要 目标:下载后做完整性校验
输出
计算 SHA-256 / SHA-512 摘要 输出匹配或不匹配结论