MD5算法流程图

MD5算法原理和流程

转载:https://www.zybuluo.com/DingCao-HJJ/note/202937
直接代码实现:https://blog.csdn.net/xhhjin/article/details/8450686

MD5

原理

将输入信息text的位数按照特定的方法填充至512的整数倍,然后每512位为一个分组M[i]进行处理。
每个分组又将分为16个32位的子分组,经过一系列循环后将产4个32位的散列值a, b, c, d,作为下一个分组的输入。
最终,将a, b, c, d组合起来即可得到text的MD5值。

流程

MD5流程
**

MD5流程

**

详细操作步骤

主流程

主流程

填充信息

在这里插入图片描述

分组处理信息

在这里插入图片描述

主循环

在这里插入图片描述
其中,FGHI操作分别是:
F( X ,Y ,Z ) = ( X & Y ) | ( (~X) & Z )
G( X ,Y ,Z ) = ( X & Z ) | ( Y & (~Z) )
H( X ,Y ,Z ) =X ^ Y ^ Z
I( X ,Y ,Z ) =Y ^ ( X | (~Z) )

语句
a = (a + fun + k[j] + N[index]) << s[j]
中的<<操作表示循环左移位。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值