Skip to content

模型Model

密码哈希函数

施工中 · 内容逐步修订

Cryptographic hash function

把任意长输入压缩到固定长度并要求原像、第二原像或碰撞难求的函数族。

形式陈述 ​

公开参数化的密码哈希函数族由两个统一的高效算法给出:概率多项式时间生成算法产生公开索引,确定性多项式时间求值算法在合法消息上计算摘要,

s←Gen(1λ),Hs:Mλ→{0,1}n(λ),Hs(m):=Eval(s,m).

这里 Eval 对所有由 Gen(1λ) 产生的 s 和合法 m∈Mλ 都必须高效终止。索引 s 与安全参数 λ 的关系由生成算法确定,通常公开给攻击者;无索引的单个固定哈希、带公开 seed 的函数族与带秘密密钥的 MAC 是不同对象。

三类安全性质必须分别指定攻击实验。碰撞实验给攻击者 (1λ,s),其输出 m≠m′ 且 Hs(m)=Hs(m′) 时获胜。第二原像实验还须规定挑战消息 m 的抽样分布,攻击者见到 (s,m) 后输出 m′≠m。原像实验须先从规定的消息分布抽取 m,令 y=Hs(m),再要求攻击者由 (s,y) 找到任一 m′ 使 Hs(m′)=y;若挑战者任意选择一个可能不在像中的 y,失败并不能表达抗原像性。按计算安全的量词,所有 PPT 攻击者的获胜概率都必须是可忽略函数。

直觉

密码哈希把消息压成固定长度的短“指纹”:摘要容易从文件算出,却应难以反向恢复原像、替换成同指纹内容或找到任意碰撞。三种困难来自不同挑战接口,不能不加条件地互相替换。抗碰撞能排除相应高效可采样挑战分布下的第二原像攻击,因为先采样消息再调用攻击者即可制造碰撞;但抗原像性还取决于消息分布及压缩程度,不能只凭性质名称推出。它是公开、无密钥的确定函数,所以不能单独提供消息来源认证;实际构造还要求域分离、无歧义编码和适当输出长度。

例子与边界

对理想随机函数做经典查询,取 q 个互异输入时共有 q(q−1)/2 对可能碰撞;当 q≪2n/2 时,碰撞概率约为 q(q−1)/2n+1。达到常数成功概率约需 2n/2 次查询,寻找一个独立随机目标的原像则约需 2n 次。这是理想模型中的通用攻击尺度,不是对任一现实哈希的无条件下界。SHA-256 常用于完整性组件,但单独附加公开哈希不能阻止攻击者同时修改消息和哈希;抗碰撞也不会把无密钥哈希变成消息认证码。普通程序哈希表只追求速度和均匀分布,不必满足密码安全。

SHA-256 输出 256 bit;修改一个输入 bit 通常会大幅改变摘要,但“雪崩效应”只是设计现象,不等价于安全证明。校验下载文件时,若摘要来自可信渠道,可检测传输篡改;若攻击者能同时替换文件与网页上的摘要,普通哈希无法认证。

消息分布也会压倒输出长度:若原像挑战从公开的十条固定消息中均匀抽取,攻击者枚举这十条并比较摘要即可获胜,即便摘要有 256 bit。这不是碰撞攻击,而是挑战输入本身没有足够不确定性。

密码哈希不是密码存储的直接方案:快速哈希会帮助攻击者大规模猜测,应使用带盐、内存困难的专用 KDF。长度扩展等性质也使直接写 H(k‖m) 不一定是安全 MAC,应使用 HMAC 等标准构造。

固定输入长度的压缩函数 h:{0,1}b+n→{0,1}n 只是构造部件;可变长哈希通常再用迭代结构、填充和域分离把它扩展到 Mλ。随机预言机是所有参与者共享、响应一致且可自适应查询的理想随机函数;ROM 证明不会在选择某个现实哈希后自动变成标准模型定理。

哈希到曲线将输出对象换为合法曲线点:先扩展为域元素,再经确定映射与点加法完成P256编码。它与点反序列化的输入域不同;输出满足曲线方程也不足以证明适用于理想群随机预言机,还须检查域分离、映射分布及上层所需性质。

推论与应用

密码哈希用于签名、承诺、口令派生、Merkle 树、内容寻址和消息认证构造。抗碰撞性是其核心性质,消息认证码在哈希上加入密钥实现认证;数字签名常采用 hash-then-sign,Merkle 树、内容寻址和承诺则依赖摘要绑定长数据。通用哈希控制随机函数族对预先固定输入对的碰撞概率,可用于信息论 MAC 与提取器;它既不等于现实哈希的抗碰撞性,也不等于 ROM。

参考资料
  • Jonathan Katz and Yehuda Lindell, Introduction to Modern Cryptography, 3rd ed., CRC Press, 2020,Chs. 2–12。
  • Oded Goldreich, Foundations of Cryptography, Vol. 1, Cambridge University Press, 2001,Chs. 1–4。
  • Dan Boneh and Victor Shoup, A Graduate Course in Applied Cryptography, version 0.6, 2023,作者公开教材,§8.1,抗碰撞实验及参数化函数族。
关系图谱21 个相邻概念 · 3 类关系

拖动节点调整位置。

显示关系

显示:依赖

  1. 前置三跳
  2. 前置二跳
  3. 前置一跳
  4. 当前条目
  5. 后续一跳
  6. 后续二跳
  7. 后续三跳
文字版关系按与当前条目的最短距离分组
类型化关系