网站首页 > 技术文章 正文
md5实际上也是一种哈希算法,它的输出是生成一个128位输出结果。如果输入两个不同的明文,那么就会输出两个不同的输出值,而且根据输出值,不能得到原始的明文,这是一个不可逆的过程。下面说说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加密解密平台可以查询很多复杂密文,支持多种算法,实时查询记录超过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
- 上一篇: 自动化中MD5和RSA加密解读! md5加密技术
- 下一篇: Base64和MD5加密?别傻傻分不清楚
猜你喜欢
- 2024-09-27 MD5 到底算不算一种加密算法? md5是数据加密算法吗
- 2024-09-27 在网站开发时你还是只用md5加密密码吗?
- 2024-09-27 通过一次安全处理暴露的问题 通过一次安全处理暴露的问题的英文
- 2024-09-27 加解密与HTTPS(3) 加解密服务器通讯异常
- 2024-09-27 Qt怎么使用MD5加密 md5在线加密解密工具
- 2024-09-27 Java加密体系(MD5算法) javamd5密钥加密解密
- 2024-09-27 Swift版StringExtention方法MD5加密
- 2024-09-27 浅谈MD5加密算法,头条官方工程师就是依此内容查重(小白勿进)
- 2024-09-27 用MD5加密为何不再安全了 md5加密后的值是唯一的吗
- 2024-09-27 openssl md5算法——Linux下(字符串加密、文件加密)
你 发表评论:
欢迎- 05-10如何优化数据库和前端之间的交互?
- 05-10前端代码优化小秘籍(前端优化24条建议)
- 05-10VS Code当中的15个神仙插件,值得收藏
- 05-10如何自己开发一个Google浏览器插件?
- 05-10前端流行框架Vue3教程:14. 组件传递Props效验
- 05-10吃了一年的SU,最好用的插件都在这了
- 05-10前端必看!这款神器让网站界面告别千篇一律
- 05-10程序员请收好:10个非常有用的 Visual Studio Code 插件
- 最近发表
- 标签列表
-
- 前端设计模式 (75)
- 前端性能优化 (51)
- 前端模板 (66)
- 前端跨域 (52)
- 前端md5加密 (49)
- 前端路由 (55)
- 前端数组 (65)
- 前端定时器 (47)
- 前端懒加载 (45)
- 前端接口 (46)
- Oracle RAC (73)
- oracle恢复 (76)
- oracle 删除表 (48)
- oracle 用户名 (74)
- oracle 工具 (55)
- oracle 内存 (50)
- oracle 导出表 (57)
- oracle查询数据库 (45)
- oracle约束 (46)
- oracle 中文 (51)
- oracle链接 (47)
- oracle的函数 (57)
- mac oracle (47)
- 前端调试 (52)
- 前端登录页面 (48)
本文暂时没有评论,来添加一个吧(●'◡'●)