原像、第二原像、碰撞;随机预言机;生日攻击

三个问题
原像

  给定一个消息摘要 y y y,是否可以找到 x x x使得 h ( x ) = y h(x)=y h(x)=y
  若原像问题可解,则称 ( x , y ) (x,y) (x,y)为有效对;若不能解则称原像稳固。

第二原像

  给定一个消息 x x x,其对应Hash值为 y = h ( x ) y=h(x) y=h(x),是否可以找到 x ′ ≠ x x'\not=x x=x使得 h ( x ′ ) = y h(x')=y h(x)=y
  若第二原像可解,则称 ( x ′ , h ( x ) ) (x',h(x)) (x,h(x))为有效对;若不可解则称第二原像稳固。

碰撞

  不给定,问是否可以找到 x ′ ≠ x x'\not=x x=x使得 h ( x ′ ) = h ( x ) h(x')=h(x) h(x)=h(x)
  若碰撞问题可解,则可产生两个有效对 ( x , y ) (x,y) (x,y) ( x ′ = y ) (x'=y) (x=y),其中 y = h ( x ′ ) = h ( x ) y=h(x')=h(x) y=h(x)=h(x);若不能有效解决则称碰撞稳固。

随机预言机

  对任何输入都回传一个真正均匀随机的输出,不过对相同的输入,该预言机每次都会用同一方法输出。换句话说,随机预言机是一个将所有可能输入与输出作随机映射的函数。
  令 F X , Y F^{X,Y} FX,Y是为所有从 X → Y X→Y XY的函数集合,假定 ∣ X ∣ = N |X|=N X=N ∣ Y ∣ = M |Y|=M Y=M,随机从 F X , Y F^{X,Y} FX,Y中选出一个Hash函数 h : X → Y h: X→Y h:XY ,对于任意的输入 x x x,其输出值是均匀的,计算 h ( x ) h(x) h(x)的唯一方法是询问随机预言机。

生日攻击

  对于一个概率界限 ε ( 0 < ε < 1 ) \varepsilon(0<\varepsilon<1) ε(0<ε<1),找一个整数 k k k,使得对于 k k k个两两互异的值 x 1 , x 2 , … , x k ∈ X x_1,x_2,\dots,x_k\in X x1,x2,,xkX k k k个函数值 f ( x 1 ) , f ( x 2 ) , … , f ( x k ) f(x_1),f(x_2),\dots,f(x_k) f(x1),f(x2),,f(xk)对某些 i ≠ j i\not=j i=j,有 P r [ f ( x i ) = f ( x j ) ] ≥ ε Pr[f(x_i)=f(x_j)]\geq\varepsilon Pr[f(xi)=f(xj)]ε,即在 k k k个函数值中,以不小于 ε \varepsilon ε的概率发生碰撞。产生碰撞是一个 ( ε , O ( ( M ) ) ) (\varepsilon,O(\sqrt(M))) (ε,O(( M)))的算法。
  对一个输出空间大小为 M M M的随机函数,只需计算大概 M \sqrt M M 个函数值,就能以一个不可忽略的概率发现一个碰撞。
  Hash函数的输出空间大小必须有一个下界,长度为 ∣ h ∣ |h| h的Hash函数,只需要 2 ∣ h ∣ 2 2^{\frac{|h|}{2}} 22h个随机哈希值就可以以一个不可忽略的概率产生一个碰撞。目前至少为160比特,抗生日攻击的强度至少为 2 80 2^{80} 280

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

D-A-X

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值