MD5の初了解
来源:互联网 发布:淘宝卖家怎么拉黑买家 编辑:程序博客网 时间:2024/06/06 08:26
听到这个东西很久了,可是就不知道是如何实现的,借着学习Shiro认证的机会,我也了解了一下MD5,百度百科已经很给力了(先附上百度的图
),但是我想按照我的思维画个高清无码大图图,这样以后忘了的时候可以用这个帮助了解。以下是我自己画的图
参数
①初始化 A,B,C,D四个16进制数(每一个变量给出的数值是高字节存于内存低地址,低字节存于内存高地址,即大端字节序。在程序中变量A、B、C、D的值分别为0x67452301,0xEFCDAB89,0x98BADCFE,0x10325476)
②一个有16个数据的数组(s)(每个函数四个值)
③常数(4294967296*abs(sin(i))) i指的是弧度(i=1,2…64)(ti)
方法
四个方法依次是
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) )
FF(a ,b,c ,d ,Mj ,s ,ti )操作为a = b + ( (a + F(b,c,d)+Mj + ti)<< s)
GG(a ,b ,c ,d ,Mj,s ,ti )操作为 a= b + ( (a + G(b,c,d) +Mj +ti) << s)
HH(a ,b ,c ,d ,Mj,s ,ti)操作为 a= b + ( (a + H(b,c,d) +Mj +ti) << s)
II(a ,b ,c ,d ,Mj,s ,ti)操作为 a= b + ( (a + I(b,c,d) +Mj +ti) << s)
消息X通过MD5加密后的内容为a,b,c,d依次输出内容(注意次数输出的a,b,c,d是以大端节字序来表示的)
- MD5の初了解
- MD5了解
- MD5算法了解(JAVA实现)
- md5加密以及大概逻辑的了解
- 趣图带你了解什么是MD5算法
- MD5初涉猎
- md5
- MD5
- MD5
- MD5
- MD5
- MD5
- MD5
- MD5
- md5
- MD5
- MD5
- MD5
- java集合工具类---Collections/Arrays
- iOS开发之UITableView的两种类型(plain和group)
- 链式运动实例 运动框架应用 微博
- IOS UINavigationBar
- Lua笔记:Sprite及ImageView类型替换新的图片资源
- MD5の初了解
- Axure学习心得二——中继器
- yum -y
- 第三章第二十九题20150425
- 康和富利比亚迪店 购车送大礼包
- PHP 批量生成静态html
- iOS8 模拟器键盘输入中文
- C++ 中 strcpy、strcpy_s、strncpy、strlcpy的异同
- Background-customer