47【md5的不可逆性】

md5的运算规则就是取数据摘要,比如我们设计一个规则,排除第2个字符
那么123运算后的结果是13,我们无法通过13得出原来的数据是123,因为也可以是1a3

md5就是以上面这种类型的规则为核心去创建的,因此从原则上来说,md5是无法还原的,因为可以有无数种数据的md5相同

那有的人可能会问了,既然有无数种数据的md5相同,那为什么还可以使用md5来验证数据的合法性?

这是因为需求的原因,比如我加载我自己的DLL我会验证md5是否一致,以此判断我的DLL是否被你修改过,虽然你可以找到一段数据的md5和我DLL的md5相同,但是你这段数据还是DLL吗,还能被我的程序加载吗?

所以,使用md5来验证数据的合法性,并不代表着每一个md5对应着唯一的一个数据,而在于对方几乎不可能找出一个又能使用md5又相同的数据

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

学编程的闹钟

自愿打赏

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值