单向函数与抗碰撞哈希函数的关系探究
1. 单向函数与目标抗碰撞哈希函数
单向函数是密码学中的重要概念,它具有正向计算容易,反向计算困难的特性。而抗碰撞哈希函数则要求很难找到两个不同的输入,使得它们的哈希值相同。
任何压缩的抗碰撞函数,实际上任何压缩的第二原像抗性函数,都是单向的。但反之不成立,即单向函数不一定能直接产生抗碰撞哈希函数。不过,单向函数是构造目标抗碰撞哈希函数的关键要素。
如果存在安全的单向函数,那么就存在安全的目标抗碰撞哈希函数。这一结果具有重要意义,因为基于目标抗碰撞哈希函数可以构建密码学签名方案,所以单向函数的存在意味着安全签名方案的存在。
2. 从单向性构建抗碰撞哈希函数的可能性分析
虽然单向函数能推出目标抗碰撞哈希函数的存在,但对于抗碰撞哈希函数,情况并非如此。目前来看,不太可能从单向函数构造出抗碰撞哈希函数。具体来说,不存在从单向函数(甚至单向置换)通过黑盒构造得到安全抗碰撞哈希函数的方法。
3. 黑盒分离
在密码学构造中,当从一个密码学原语Q构造另一个原语P时,通常会采用黑盒构造。即把原语Q作为黑盒使用,只依赖其输入输出接口,而不关心其具体实现。为了证明安全性,会给出一个从攻击P的对手构造攻击Q的对手的方法,这种方法称为从P到Q的黑盒归约。
为了排除从抗碰撞哈希函数到单向置换的黑盒归约的存在,需要先明确定义完全黑盒归约:
- 完全黑盒归约:从原语P到原语Q的完全黑盒归约由两个PPT预言机图灵机M和AQ组成,满足两个条件:
- P可以从Q构造:对于所有实现Q的(可能低效的)图灵机N,MN实现P。
- 攻破P意味着攻破Q:
超级会员免费看
订阅专栏 解锁全文
1221

被折叠的 条评论
为什么被折叠?



