密码学-数据完整性-单向散列函数md5

本文介绍了数据完整性的重要性,并重点讲解了单向散列函数,特别是MD5的使用。通过单向散列函数,可以检测文件是否被篡改,常用于软件校验和数字签名。文中提到了MD5的两种使用方法及其特点,并指出了其无法验证消息真实来源的缺点。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

简介

完整性用来确保信息没有被修改,也可以防止假冒的信息。

目前数据完整性的主要解决方案就是使用单向散列函数和加密算法。单向散列函数能够将一个文件映射成一段小的信息码并且不同文件散列之后的值是不同的。通常将原始文件使用单向散列函数处理得到一段信息码,然后将其加密,和文件一起保存。如果由人改动文件,那么我们在使用这个文件的时候就可以先使用单向散列函数对文件处理,得到信息码,可以和之前的信息码对比,如果没有发生变化说明文件没有被别人改动过,否则被改动过。

单向散列函数:有一个输入和一个输出,其中输入称之为消息,输出称之为散列值或消息码,单向散列函数也称之为哈希函数,杂凑函数。

  • 这里的信息不一定是文本文件,也可以是视频,声音,单向散列函数不需要知道消息的实际意义,无论任何消息,都会单纯的单作比特处理
  • 散列值的长度和消息的长度无关,单向散列函数都会计算出固定长度的散列值。

单向散列函数

单向散列函数的性质:

  • 根据任意长度的消息计算出固定长度的散列值
  • 能够快速的计算出散列值
  • 消息不同散列值也不同,也称之为雪崩效应
  • 具备单向性

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值