md5加密解密算法的描述

md5加密解密算法的描述

ID:11111561

大小:39.50 KB

页数:9页

时间:2018-07-10

md5加密解密算法的描述_第1页
md5加密解密算法的描述_第2页
md5加密解密算法的描述_第3页
md5加密解密算法的描述_第4页
md5加密解密算法的描述_第5页
资源描述:

《md5加密解密算法的描述》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、MD5算法描述对MD5算法简要的叙述可以为:MD5以512位分组来处理输入的信息,且每一分组又被划分为16个32位子分组,经过了一系列的处理后,算法的输出由四个32位分组组成,将这四个32位分组级联后将生成一个128位散列值。  在MD5算法中,首先需要对信息进行填充,使其字节长度对512求余的结果等于448。因此,信息的字节长度(BitsLength)将被扩展至N*512+448,即N*64+56个字节(Bytes),N为一个正整数。填充的方法如下,在信息的后面填充一个1和无数个0,直到满足上面

2、的条件时才停止用0对信息的填充。然后,在在这个结果后面附加一个以64位二进制表示的填充前信息长度。经过这两步的处理,现在的信息字节长度=N*512+448+64=(N+1)*512,即长度恰好是512的整数倍。这样做的原因是为满足后面处理中对信息长度的要求。  MD5中有四个32位被称作链接变量(ChainingVariable)的整数参数,他们分别为:A=0x01234567,B=0x89abcdef,C=0xfedcba98,D=0x76543210。  当设置好这四个链接变量后,就开始进入算

3、法的四轮循环运算。循环的次数是信息中512位信息分组的数目。  将上面四个链接变量复制到另外四个变量中:A到a,B到b,C到c,D到d。  主循环有四轮(MD4只有三轮),每轮循环都很相似。第一轮进行16次操作。每次操作对a、b、c和d中的其中三个作一次非线性函数运算,然后将所得结果加上第四个变量,文本的一个子分组和一个常数。再将所得结果向右环移一个不定的数,并加上a、b、c或d中之一。最后用该结果取代a、b、c或d中之一。以一下是每次操作中用到的四个非线性函数(每轮一个)。   F(X,Y,Z)

4、=(X&Y)

5、((~X)&Z)   G(X,Y,Z)=(X&Z)

6、(Y&(~Z))   H(X,Y,Z)=X^Y^Z   I(X,Y,Z)=Y^(X

7、(~Z))   (&是与,

8、是或,~是非,^是异或)  这四个函数的说明:如果X、Y和Z的对应位是独立和均匀的,那么结果的每一位也应是独立和均匀的。F是一个逐位运算的函数。即,如果X,那么Y,否则Z。函数H是逐位奇偶操作符。   设Mj表示消息的第j个子分组(从0到15),<<

9、i)表示a=b+((a+(F(b,c,d)+Mj+ti)<<

10、12,0xe8c7b756)   FF(c,d,a,b,M2,17,0x242070db)FF(b,c,d,a,M3,22,0xc1bdceee)   FF(a,b,c,d,M4,7,0xf57c0faf)   FF(d,a,b,c,M5,12,0x4787c62a)   FF(c,d,a,b,M6,17,0xa8304613)   FF(b,c,d,a,M7,22,0xfd469501)   FF(a,b,c,d,M8,7,0x698098d8)   FF(d,a,b,c,M9,12,0x8b4

11、4f7af)   FF(c,d,a,b,M10,17,0xffff5bb1)   FF(b,c,d,a,M11,22,0x895cd7be)   FF(a,b,c,d,M12,7,0x6b901122)   FF(d,a,b,c,M13,12,0xfd987193)   FF(c,d,a,b,M14,17,0xa679438e)   FF(b,c,d,a,M15,22,0x49b40821)  第二轮   GG(a,b,c,d,M1,5,0xf61e2562)   GG(d,a,b,c,M6,9,

12、0xc040b340)   GG(c,d,a,b,M11,14,0x265e5a51)   GG(b,c,d,a,M0,20,0xe9b6c7aa)   GG(a,b,c,d,M5,5,0xd62f105d)   GG(d,a,b,c,M10,9,0x02441453)   GG(c,d,a,b,M15,14,0xd8a1e681)   GG(b,c,d,a,M4,20,0xe7d3fbc8)   GG(a,b,c,d,M9,5,0x21e1cde6)   GG(d,a,b,c,M

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。