1 / 18
文档名称:

哈希函数算法.docx

格式:docx   大小:93KB   页数:18页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

哈希函数算法.docx

上传人:miaoshen1985 2021/11/18 文件大小:93 KB

下载得到文件列表

哈希函数算法.docx

文档介绍

文档介绍:南昌大学实验报告
学生姓名:刘子涵 学 号: 8001712009 专业班级: 信安121班
实验类型:■ 验证 □综合 □ 设计 □ 创新 实验日期: 实验成绩:
一、实验项目名称
MD5/SHA(任选其一)哈希函数算法的实现
二、实验项目目的
掌握MD5/SHA哈希函数算法
实现MD5/SHA哈希函数算法
三、实验内容
掌握MD5/SHA哈希函数算法
    (1)了解MD5/SHA实现步骤。
(2)掌握MD5/SHA迭代函数。
实现MD5/SHA哈希函数算法
(1)代码实现MD5/SHA哈希函数算法。
(2)代码实现随意消息的MD5/SHA值。
四、主要仪器设备及耗材
操作系统:win7
工具:Mirsoft Visual C++
五、实验步骤
在MD5 算法中,首先需要对信息进行填充,使其字节长度与448 模512 同余,即信息的字节长度扩展至n*512+448,n 为一个正整数。填充的方法如下:在信息的后面填充第一位为1,其余各位均为0,直到满足上面的条件时才停止用0 对信息填充。然后,再在这个结果后面附加一个以64 位二进制表示的填充前信息长度。经过这两步的处理,现在的信息字节长度为n*512+448= (n+1)*512,即长度恰好是512 的整数倍,这样做的目的是为满足后面处理中后面处理中对信息长度的要求。n 个分组中第q 个分组表示为Yq。MD5 中有A、B、C、D,4 个32 位被称作链接变量的整数参数,它们的初始值分别为:A=01234567B=89abcdef,C=fedcba98,D=76543210
当设置好这个4 个链接变量后,就开始进入算法的4 轮循环运算。循环的次数是信息中512 位信息分组数目。首先将上面4 个链接变量复制到另外4 个变量中A 到AA,B 到BB,C 到CC,D 到DD,以备后面进行处理。然后进入主循环,主循环有4 轮,每轮循环都很相似。第1 轮进行16 次操作,每次操作对A、B、C 和D 中的其中3 个作一次非线性函数运算,然后将所得结果加上第4 个变量,文本的一个子分组和一个常数。再将所得结果向左循环移S 位,并加上A、B、C 或D 其中
之一。最后用该结果取代A、B、C 或D 其中之一。
以下是每次操作中用到的4 个非线性函数(每轮一个)。
F(B,C,D)=(B∧C)∨__________(ØB∧D)(此处需修改)
G(B,C,D)=(B∧D)∨(C∧ØD)
H(B,C,D)=B⊕C⊕D
I (B,C,D)=C⊕(B∨D)
(注:∧是与,∨是或,Ø是非,⊕是异或。)
2
下面为每一轮16 步操作中的4 次操作,16 步操作按照一定次序顺序进行。
FF(A,B,C,D,M[j],S,T[i])表示A=B+(A+(F(B,C,D)+M[j]+T[i])<<<S)
GG(A,B,C,D,M[j],S,T[i])表示A=B+(A+(G(G,C,D)+M[j]+T[i] )<<<S)
HH(A,B,C,D,M[j],S,T[i])表示A=B+(A+(H(B,C,D)+M[j]+T[i] )<<<S)
II (A,B,C,D,M[j],S,T[i])表示A=B+(A+(I (B,C,D)+M[j]+T[i] )<<<S)
(注:“+”定义为mod 232 的模运算。)
M[j]表示在第q 个512 位数据块中的第j 个32 位子分组,0≤j≤15。
常数T[i]可以有如下选择,在第i 步中,T[i]是4294967296*abs(sin(i))的整数部分(注:4294967296= 232 。),i 的单位是弧度。其中,T[i]是32 位的随机数源,它消除了输入数据中任何规律性的特征。表1-4 说明了四轮主循环中每轮16 步操作的具体步骤。
所有这些完成之后,将A、B、C、D 分别加上AA、BB、CC、DD。然后用下一分组
数据继续运行算法,最后的输出是A、B、C 和D 的级联。
#include <>
#include <>
#include <>
#include <>
typedef unsigned char *POINTER;
typedef unsigned short int UINT2;
typedef unsigned long int UINT4;
typedef struct

最近更新

流体力学与液压传动复习 30页

2025年社会心理学教案 20页

2025年社会单位消防安全责任人防火检查记录表.. 6页

一个基于客户机、服务器结构的工艺信息处理系.. 3页

2025年社交礼仪 8页

2025年示范家长学校申报材料 5页

注册人力资源管理师(薪酬管理与员工激励) 38页

“绿茶餐厅”战略管理分析 3页

2024年工伤保险市场分析报告 3页

“互联网+”与农产品营销模式创新融合的措施研.. 3页

‘黑比诺’葡萄不同叶龄叶片形态结构和功能变.. 3页

2024年安委会主要安全职责 2页

XBRL下的会计科目探讨 3页

2024年安全生产管理人员的安全职责 3页

TS30全站仪在复杂区测图中的应用 3页

2024年安全生产工作总结与计划 2页

2024年安全生产下半年工作计划范文(3篇) 8页

2024年安全教育培训试题附答案【培优】 12页

SAGD百吨锅炉工艺流程 3页

2024年安全事故看完心得体会 3页

小学期中考试总结校长发言稿锦集 12页

POSS改性卫星用白漆热控涂层的研究 3页

2025年商丘学院单招职业技能测试题库精编 61页

2025年长沙电力职业技术学院单招职业技能测试.. 61页

普通动物学第15章圆口纲 26页

2025年湖南城建职业技术学院单招职业技能测试.. 74页

党员出国备案表 1页

中级养老护理员练习题库与答案 15页

闽教版小学五年级英语下册教学计划 2页

世界河流和湖泊经典版课件 101页