MD5实际上也是一种哈希算法,它的输出是生成一个128位输出结果。如果输入两个不同的明文,那么就会输出两个不同的输出值,而且根据输出值,不能得到原始的明文,这是一个不可逆的过程。下面说说md5加密原理以及md5有哪些用途,帮助大家更好地了解md5相关的知识。
md5算法流程图
md5加密原理
md5以512位分组来处理输入的信息,每一分组又被划分为16个32位子分组。经过了一系列的处理后,算法的输出由四个32位分组组成,将这四个32位分组级联后将生成一个128位散列值。
在MD5算法中,首先需要对信息进行填充,填充方法如下:先在信息后面填充一个1,之后就是无数个0,直到使其字节长度对512求余数的结果等于448,即(n*512) 448 ,为什么要使余数为448呢,因为剩下的512-448 等于64位 是用于表示填充前的信息长度。加上剩下的64位,即(n 1)*512,长度刚刚好是512的整数倍数。
然后就与链接变量进行循环运算,得出结果。MD5中有四个32位被称作链接变量(Chaining Variable)的整数参数,它们分别为:A=0x01234567,B=0x89abcdef,C=0xfedcba98,D=0x76543210。当设置好这四个链接变量后,就开始进入算法的四轮循环运算。
md5如何解密
通过网上免费的md5加密解密平台(md5.cn),用户可以轻松地对md5进行解密。md5解密方法:打开网站后,输入密文(如:f03e8a370aa8dc80f63a6d67401a692ae72fa530),点击查询,等一会即可得到密文。
md5.cn
MD5加密解密平台可以查询很多复杂密文,支持多种算法,实时查询记录超过24万亿条,共占用160T硬盘,成功率95%以上。
md5有以下3个用途
一、防止被篡改
1、比如发送一个电子文档,发送前,先得到md5的输出结果a。然后在对方收到电子文档后,对方也得到一个md5的输出结果b。如果a与b一样就代表中途未被篡改。
2、比如我提供文件下载,为了防止不法分子在安装程序中添加木马,我可以在网站上公布由安装文件得到的md5输出结果。
3、SVN在检测文件是否在CheckOut后被修改过,也是用到了MD5。
二、防止直接看到明文
现在很多网站在数据库存储用户的密码的时候都是存储用户密码的md5值。这样就算不法分子得到数据库的用户密码的MD5值,也无法知道用户的密码。
三、防止抵赖(数字签名)
这需要一个第三方认证机构。例如A写了一个文件,认证机构对此文件用md5算法产生摘要信息并做好记录。若以后A说这文件不是他写的,权威机构只需对此文件重新产生摘要信息,然后跟记录在册的摘要信息进行比对,相同的话,就证明是A写的了。这就是所谓的“数字签名”。
以上就是md5加密解密的原理以及md5的相关用途。值得注意的是:md5不是加密算法。因为md5算法得到的消息是不完整的,无法通过摘要的数据得到原始数据。
进群了解网络安全技术,分享免费工具、技术文章,欢迎大家加入。
哈客部落:https://www.hake.cc/
免费MD5加密解密:https://md5.cn/
靶场实训学院:http://gf.md5.com/
哈客部落官方交流群1群:863658976
MD5加密解密官方交流群1群:857548361
靶场实训学院官方交流群1群:870204559
Copyright © 2024 妖气游戏网 www.17u1u.com All Rights Reserved