hash算法的设计与实现(基础)

hash算法的设计与实现(基础)

ID:20350352

大小:232.92 KB

页数:15页

时间:2018-10-11

hash算法的设计与实现(基础)_第1页
hash算法的设计与实现(基础)_第2页
hash算法的设计与实现(基础)_第3页
hash算法的设计与实现(基础)_第4页
hash算法的设计与实现(基础)_第5页
资源描述:

《hash算法的设计与实现(基础)》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、—、目的1、深入理解和掌握经典密码学算法中哈希算法的过程,及其在实现保密通讯中的应用;2、深入理解和掌握经典密码学算法中哈希算法的综合应用,重点体现在MD5和SHA1的综合应用;二、要求设计和实现哈希算法,需要具备以下功能:1.采用hash算法(包括MD5及SHA-1两种)计算明文摘要;2.实现对相同或不同明文所产生摘要的差异比较。3.界面简洁、交互操作性强。三、开发环境开发环境.•MicrosoftWindows8.1ProWithUpdatex64OnBootCamp5.1MacBookProWithR

2、etinaME865CHAMicrosoftVisualStudio2013UltimateUpdate4x86初次测试环境:MicrosoftWindows8.1ProWithUpdatex64OnBootCamp5.1MacBookProWithRetinaME865CHA最终测试环境:MicrosoftWindows7ProfessionalServicePack1AnyPcrsoanlComputer说明:本程序的编译软件环境巾Win8.1Pro中的VS2013通过,硬件平台巾MacBookProW

3、ithRetina通过,在其他软件/硬件平台上未经过严格的测试,可能存在细微的差别。原理MD5:对MD5算法简要的叙述可以为:MD5以512位分组来处理输入的信息,且每一分组乂被划分为16个32位子分组,经过了一系列的处理后,算法的输山由四个32位分组组成,将这四个32位分组级联后将生成一个128位散列值。第一步填充:如果输入信息的长度(bit)对512求余的结果不等于448,就需要填充使得对512求余的结果等于448。填充的方法是填充一个1和n个0。填充完后,信息的长度就为N*512+448(bit)。第

4、二步记录信息长度:用64位来存储填充前信息长度。这64位加在第一步结果的后面,这样信息长度就变为N*512+448+64=(N+l)*512位。第三步装入+小•准的幻数(四个整数):标准的幻数(物理顺序)是(A={01234567)16,B=(89ABCDEF)16,C=(FEDCBA98)16,D=(76543210)16)o如果在程序屮定义应该是(A=0X67452301L,B=0XEFCDAB89L,C=0X98BADCFEL,D=0X10325476L)。第叫步叫轮循环运算:循环的次数是分组的个数(

5、N+1)1)将每一512字节细分成16个小组,每个小组64位(8个字节)2)先认识四个线性函数(&是与,

6、是或,〜是非,A是异或)F(X,Y,Z)=(X&Y)

7、((〜X)&Z)G(X,Y,Z)=(X&Z)

8、(Y&(〜Z))H(X,Y,Z)=XAYAZI(X,Y,Z)=YA(X

9、(〜Z))3)设Mj表示消息的第j个子分组(从0到15),«

10、a=b+((a+G(b,c,d)+Mj+ti)«

11、,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,0x8b44f7af)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

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,0xc040b340)GG(c,d,a,b,M11,14,0x265e5a51)GG(b,c,d,a,M0,20,0xe9b6c7aa)GG(a,b,c,d,M5,5,0xd62f10

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

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

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