ComSec 6

ComSec 6


11.1 安全Hash函数需要具有哪些特性?

  1. 输入长度可变, H H H能用于任何大小的数据分组
  2. H H H产生定长输出
  3. 对任意给定的 x x x H ( x ) H(x) H(x)要相对易于计算,使得软硬件实现都实际可行
  4. 具有单向性,对任意给定的码 y y y,寻求 x x x使得 H ( x ) = y H(x)=y H(x)=y在计算上不可行
  5. 具有弱抗碰撞性,任意给定分组 x x x,寻求不等于 x x x x ′ x' x,使得 H ( x ) = H ( x ′ ) H(x)=H(x') H(x)=H(x)在计算上不可行
  6. 具有强抗碰撞性,寻求任何的 ( x , x ′ ) (x,x') (x,x)对,使得 H ( x ) = H ( x ′ ) H(x)=H(x') H(x)=H(x)在计算上不可行
  7. 具有伪随机性 H H H的输出满足伪随机性测试标准

11.2 弱抗碰撞性和强抗碰撞性之间的区别是什么?

  • 弱抗碰撞性:给定Hash值 h h h,找到满足 H ( y ) = h 的 y H(y)=h的y H(y)=hy在计算上不可行。 y y y是随机选择,尝试计算其Hash值直到碰撞出现。对于 m m m位的Hash值,穷举规模大约是 2 m − 1 2^{m-1} 2m1
  • 强抗碰撞性:试图找到两个数据块 x 和 y , 满 足 H ( x ) = H ( y ) x和y,满足H(x)=H(y) xyH(x)=H(y)。对于 m m m位的Hash值,需要经历大约是 2 m / 2 2^{m/2} 2m/2

11.3 Hash函数中的压缩函数的作用是什么?

Hash函数中重复使用了压缩函数,压缩函数输入是定长的,在每一次使用时需要输入前一步得出的 n n n位结果和一个 b b b位分组,输出是一个 n n n位分组。如果压缩函数具有抗碰撞能力,那么Hash函数也具有抗碰撞能力

11.7 给出海绵结构的定义

海绵结构是一种简单的迭代结构,与其他迭代Hash函数的结构相似。海绵结构分为两个阶段,一个是吸水阶段,一个是挤压阶段。在海绵函数中,输入消息被分块为固定长度的分组。每个分组逐次作为每轮迭代的输入,同时上轮迭代的输出也反馈至下轮的迭代中,最终产生一组输出块。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值