ComSec作业六:Hash

ComSec作业六:Hash

11.1

在这里插入图片描述
11.1 安全Hash函数需要具有哪些特性?

需求描述
输入长度可变 H H H 可应用于任意大小的数据块
输出长度固定 H H H 产生定长的输出
效率对任意给定的x,计算 H ( x ) H(x) H(x) 比较容易,用硬件和软件均可实现
单向性对于任意给定的Hash吗h,找到满足 H ( y ) = h H(y)=h H(y)=h y y y 在计算上是不可行的
弱抗碰撞性对于任何给定的分块 x x x ,找到满足 y ≠ x y\neq x y=x H ( x ) = H ( y ) H(x)=H(y) H(x)=H(y) y y y 在计算上是不可行的
强抗碰撞性找到任何满足 H ( x ) = H ( y ) H(x)=H(y) H(x)=H(y) 的偶对 ( x , y ) (x,y) (x,y) 在计算上是不可行的
伪随机性 H H H 的输出满足伪随机测试标准

11.2

在这里插入图片描述
11.2 弱抗碰撞和强抗碰撞之间的区别是什么?
弱抗碰撞性:对于任何给定的分块 x x x,找到满足 y ≠ x y\neq x y=x H ( x ) = H ( y ) H(x)=H(y) H(x)=H(y) y y y 在计算上是不可行的、
强抗碰撞性:找到任何满足 H ( x ) = H ( y ) H(x)=H(y) H(x)=H(y) 的偶对 ( x , y ) (x,y) (x,y) 在计算上是不可行的

从定义上,一个函数如果是抗强碰撞的,那么同时是抗弱碰撞的,但是反之则不一定成立
对于弱抗碰撞,攻击者对给定的 H a s h Hash Hash 函数值 h h h,试图找到满足 H ( y ) = h H(y)=h H(y)=h y y y。穷举攻击的方法是随机选择 y y y,尝试计算其 H a s h Hash Hash 值直到碰撞出现。对于 m m m 位的 H a s h Hash Hash 值,穷举规模大约是 2 m 2^m 2m。对于攻击者平均尝试次数为 2 m − 1 2^{m-1} 2m1,才能找到一个满足 H ( y ) = h H(y)=h H(y)=h y y y 。而强抗碰撞性,攻击者试图找到两个消息或数据块 x x x y y y,满足 H ( x ) = H ( y ) H(x)=H(y) H(x)=H(y)。相比弱抗碰撞,其穷举规模相对更小一些。

11.3

在这里插入图片描述
11.3 Hash函数中的压缩函数的作用是什么?
压缩函数将输入的n位数和一个 b b b 位分组,变成为一个 n n n 位的分组。通常 b > n b>n b>n,因此称为压缩。

11.7

在这里插入图片描述
11.7 给出海绵结构的定义
在海绵函数中,输入长度和输出长度都可变的消息被分块为固定长度的分组。每个分组逐次作为每轮迭代的输入,同时上轮迭代的输出也反馈至下轮的迭代中,最终产生一组输出块。
海绵函数由三组参数定义:
f = f= f= 内部函数,用于处理每轮的输入分组
r = r= r= 输入分组的位长度,称其为位速率(bitrate)
p a d = pad= pad= 填充算法

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值