ComSec HW6 Hash

本文详细介绍了安全Hash函数的必备特性,包括单向性、弱抗碰撞性和强抗碰撞性,并阐述了弱抗碰撞性与强抗碰撞性之间的区别。同时,解释了压缩函数在Hash函数中的作用,它将长输入转化为固定长度的输出。此外,还定义了海绵结构,一种结合吸水和挤压阶段的Hash函数构造方法,用于处理不同长度的输入并产生固定长度的输出。
摘要由CSDN通过智能技术生成

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

H能用于任何大小的数据分组;
H产生定长输出;
对任意给定的x, H(x)要相对易于计算,使得软硬件实现都实际可行;
单向性:对任意给定的码y, 寻求x使得H(x)=y在计算上不可行;
弱抗碰撞性:任意给定分组x, 寻求不等于x的x’, 使得H(x)= H(x’)在计算上不可行;
强抗碰撞性:寻求任何的(x,x’)对,使得H(x)=H(x’)在计算上不可行;

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

弱抗碰撞性是任意给定分组x, 寻求不等于x的x’, 使得H(x)= H(x’)在计算上不可行;强抗碰撞性是寻求任何的(x,x’)对,使得H(x)=H(x’)在计算上不可行; 前者的x是给定的,而后者是不给定的,因而强抗碰撞性的要求要比弱抗碰撞性的要求的要高。

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

压缩函数将一个较长的,固定长度的输入处理后,返回一个较短的,固定长度的输出。Hash函数是一种基于压缩函数的不断重复压缩输入的分组和前次压缩处理的结果,知道整个消息都被压缩完毕的过程,最后的输出作为整个消息的hash值。在这个过程中,任意长度的消息被破碎成一定长度的分组,分组的长度取决于压缩函数。并且出于安全的角度,对未填充满的分组作相应的数据填充

11.7 给出海绵结构的定义

海绵结构分为吸水阶段和挤压阶段。海绵函数接收一定长度的输入,然后输出一定长度的输出,中间包含了有限个内部状态。在海绵函数中,输入消息被分块为固定长度的分组。每个分组逐次作为每轮迭代的输入,同时上轮迭代的输出也反馈至下轮的迭代中,最终产生一组输出块。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值