单向散列函数

目录

1.概念:

2.特点:

1.根据任意长度的消息计算出固定长度的散列值:

2.能够快速计算出散列值

3.消息不同散列值也不同

4.单向性

3.专有名词

4.单向散列函数的实际应用

1.检查软件是否被篡改

2.基于口令的加密(PBE)

3.消息认证码

4.数字签名

5.伪随机数生成器

6.一次性口令

5.单项散列函数的具体例子

1.MD4和MD5(MD是消息摘要的缩写)

MD5

2.SHA-1、SHA-256、SHA-384、SHA-512

SHA-1


1.概念:

单向散列函数有一个输入和一个输出,其中输入的称为消息,输出的称为散列值。单项散列函数可以根据消息的内容计算出散列值,而散列值就可以被用来检查消息的完整性。

2.特点:

1.根据任意长度的消息计算出固定长度的散列值:

首先,单项散列函数的输入必须是任意长度的消息。其次,无论输入多长的消息,单项散列函数必须能够生成长度较短且固定的散列值。

2.能够快速计算出散列值

3.消息不同散列值也不同:

为了能够确认完整性,消息中哪怕只有1比特的改变,也必须有很高的概率产生不同的散列值

4.单向性:

无法通过散列值反算出消息

提醒:尽管单向散列函数所产生的散列值是和原来的消息完全不同的比特序列,但是单项散列函数并不是一种加密,因此无法通过解密将散列值还原位原来的消息

3.专有名词

1.碰撞:两个不同的消息产生同一个散列值的情况称为碰撞

2.抗碰撞性:难以发生碰撞的性质

3.弱抗碰撞性:要找到和该消息具有相同的散列值的另一条消息是非常困难的,这一性质称为弱抗碰撞性

4.强抗碰撞性:要找到散列值相同的两条消息是非常困难的,在这里,散列值可以是任意值

(密码技术中使用的单向散列函数,不仅要具备弱抗碰撞性,还必须具备强抗碰撞性)

5.单向散列函数也称为消息摘要函数、哈希函数或者杂凑函数,输入单向散列函数的消息也称为原像,输出的散列值也称为消息摘要或者指纹

4.单向散列函数的实际应用

1.检查软件是否被篡改

很多软件,都会把通过单向散列函数计算出的散列值公布在自己的官方网站上,用户下载完之后,可以自行计算散列值,然后与官方网站上公布的散列值进行比对,进而判断软件是否被篡改

2.基于口令的加密(PBE)

3.消息认证码

消息认证码是将“发送者和接收者之间的共享密钥”和“消息”进行混合后计算出的散列值

4.数字签名

5.伪随机数生

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值