早教吧作业答案频道 -->其他-->
MD5的实现1.问题描述MD5以512比特一块的方式处理输入的消息文本,每个块又划分为十六个32比特的子块。算法的输出由四个32比特的块组成,将它们级联成一个128比特的Hash值。①首先填充
题目详情
MD5的实现
1.问题描述
MD5以512比特一块的方式处理输入的消息文本,每个块又划分为十六个32比特的子块。算法的输出由四个32比特的块组成,将它们级联成一个128比特的Hash值。
①首先填充消息使填充后的长度恰好为一个比512的倍数小64的数。填充方法是附一个“1”在消息后面,再补多个“0”。然后,在其后附上64比特的消息长度(填充前)的二进制表示。算法中使用了四个32比特的变量A、B、C、D,先把这四个变量初始化为:
A=01234567,B=89ABCDEF,C=FEDCBA98,D=76543210
称它们为链接变量。
3 接着进行算法的主循环,循环的次数是消息中512比特的块的数目。
将上面四个变量复制到另外的变量中:A到AA,B到BB,C到CC,D到DD。
主循环有四轮, 每一轮由16次操作组成。F、G、H、I函数,FF、GG、HH、II四种操作详见教材P116-P118。所有这些步骤进行完之后,将A、B、C、D分别加上AA、BB、CC、DD,然后用下一块数据继续进行算法。
③最后的输出是A、B、C、D的级联。
2.基本要求
以MD5(x)的形式实现,x为01串。
3. 实现提示
注意消息文本、各种变量的类型及其类型转换。
1.问题描述
MD5以512比特一块的方式处理输入的消息文本,每个块又划分为十六个32比特的子块。算法的输出由四个32比特的块组成,将它们级联成一个128比特的Hash值。
①首先填充消息使填充后的长度恰好为一个比512的倍数小64的数。填充方法是附一个“1”在消息后面,再补多个“0”。然后,在其后附上64比特的消息长度(填充前)的二进制表示。算法中使用了四个32比特的变量A、B、C、D,先把这四个变量初始化为:
A=01234567,B=89ABCDEF,C=FEDCBA98,D=76543210
称它们为链接变量。
3 接着进行算法的主循环,循环的次数是消息中512比特的块的数目。
将上面四个变量复制到另外的变量中:A到AA,B到BB,C到CC,D到DD。
主循环有四轮, 每一轮由16次操作组成。F、G、H、I函数,FF、GG、HH、II四种操作详见教材P116-P118。所有这些步骤进行完之后,将A、B、C、D分别加上AA、BB、CC、DD,然后用下一块数据继续进行算法。
③最后的输出是A、B、C、D的级联。
2.基本要求
以MD5(x)的形式实现,x为01串。
3. 实现提示
注意消息文本、各种变量的类型及其类型转换。
▼优质解答
答案和解析
如下代码是md5的一个简单实现,md5_encode函数接收一个文件名,计算该文件的16进制的md5值,要改成你的需求,只需输入输出改一下即可,函数最后计算出的A、B、C、D既是要求的值,要注意的是,这里为了简便,利用了硬...
看了 MD5的实现1.问题描述MD...的网友还看了以下:
英语强调句特殊句型的解释..强调句的特殊疑问句形式强调句型的陈述句形式和一般疑问句形式一般还好理解 2020-05-22 …
1.疑问句.2.反意问句.3.特殊疑问句.怎么改1.疑问句。2.反意问句。特殊疑问句。4.否定句还 2020-06-08 …
特殊疑问句变成强调句的问题特殊疑问词+is/was+强调部分为什么是特殊疑问句的强调结构这个形式? 2020-06-14 …
古典概型解答题格式问题在题目没有特别要求写出基本事件或列举时,答题是否一定要列举或画树状图或列表? 2020-07-11 …
英语语法1.can后的动词形式有什么特点?2.can随人称变化而变化吗?3.can的否定形式是什么 2020-07-20 …
求助关于二阶常系数非齐次线性微分方程求特解形式问题关于二阶常系数非齐次线性微分方程求特解y*形式的 2020-07-31 …
whatcan'thedowhathecan'tdo哪个对否定形式的特殊疑问句,否定形式的特殊疑问句 2020-11-01 …
学生敬请老师解答:areyoureadyornot?是一般疑问句形式的选择疑问句,还是特殊疑问句型式 2020-11-07 …
一般现在时的定义,标志,举例1肯定式2否定式3一般疑问式4特殊疑问式用同样方法列举一般过去式以及现在 2020-12-13 …
统计学判断求答案!1.应用统计学是研究如何根据样本数据去推断总体数量特征的方法.2.标志按其性质可以 2021-01-05 …