文档下载 文档下载导航
设为首页 | 加入收藏
搜索 请输入内容:  
 导航当前位置: 文档下载 > 所有分类 > IT/计算机 > 计算机软件及应用 > MD5算法简介及编程实现
侵权投诉

MD5算法简介及编程实现

本文主要包含如下内容:MD5算法概述、处理步骤、编程实现以及安全性分析。

实验三 MD5算法

实验目的:

1.了解哈希函数的概念和功能,以及一些典型的哈希函数

2.进一步理解MD5算法的概念及结构,掌握MD5算法对数据的处理过程

3.通过编程模拟MD5算法的处理步骤

实验内容:

一.MD5算法概述

MD5算法是一种消息摘要算法(Message Digest Algorithm),此算法以任意长度的信息(message)作为输入进行计算,产生一个128-bit(16-byte)的指纹或报文摘要(fingerprint or message digest)。两个不同的message产生相同message digest的几率相当小,从一个给定的message digest逆向产生原始message更是困难,因此MD5算法适合用在数字签名应用中。MD5实现简单,在32位的机器上运行速度也相当快,当然实际应用也不仅仅局限于数字签名。

MD5算法的处理步骤:

第一步:增加填充

增加padding使得数据长度(bit为单位)模512为448。

如果数据长度正好是模512为448,增加512个填充bit,也就是说填充的个数为1-512。 第一个bit为1,其余全部为0。(即第一个字节为0x80)

第二步:补足长度

将数据长度转换为64bit的数值,如果长度超过64bit所能表示的数据长度的范围,值保留最后64bit,

增加到前面填充的数据后面,使得最后的数据为512bit的整数倍。也就是32bit的16倍的整数倍。

在RFC1321中,32bit称为一个word。

第三步:初始化变量:

用到4个变量,分别为A、B、C、D,均为32bit长。初始化为:

A: 0x01234567

B: 0x89abcdef

C: 0xfedcba98

D: 0x76543210

第四步:数据处理

首先定义4个辅助函数:

F(X,Y,Z) = XY v not(X) Z

G(X,Y,Z) = XZ v Y not(Z)

H(X,Y,Z) = X xor Y xor Z

I(X,Y,Z) = Y xor (X v not(Z))

其中:XY表示按位与,X v Y表示按位或,not(X)表示按位取反。xor表示按位异或。 函数中的X、Y、Z均为32bit。

第五步:输出

最后得到的ABCD为输出结果,共128bit。A为低位,D为高位。

第1页

你可能喜欢

热门文档

相关文档

  • MD5算法实现 JAVA

    MD5算法实现 JAVA_计算机软件及应用_IT/计算机_专业资料。MD5加密算法实现,编程语言JAVA,可直接运行! 是最好的实例public class MD5 { static final int S11 ...

  • MD5简介

    MD5算法简介及编程实现 8页 3下载券 MD5算法简介及两种实现方... 6页 1...MD5 简介 所谓 MD5,即"Message-Digest Algorithm 5(信息-摘要算法)",它由 ...

  • MD5算法简介及两种实现方法(使用WindowsAPI函数)

    MD5算法简介及两种实现方法(使用WindowsAPI函数)_IT/计算机_专业资料 暂无评价0人阅读0次下载举报文档 MD5算法简介及两种实现方法(使用WindowsAPI函数)_IT/...

  • MD5的介绍 算法和实现

    MD5的介绍 算法和实现MD5的介绍 算法和实现隐藏>> MD5 的介绍 算法和实现 ...MD5 在编程中的实现 下面来看看如何在 C 语言和 VB 中实现 MD5 算法 */ ...

  • MD5算法的设计与实现

    MD5算法的设计与实现_机械/仪表_工程科技_专业资料。实验三 MD5 算法的设计...三、实验内容: 1、 MD5 算法简介: Message Digest Algorithm MD5(中文名为...

  • MD5算法及其JAVA程序设计

    这将在下面两节介绍。 8.2 微型 MD5 的设计为了分析的方便 MD5 算法中 F ... java实现MD5算法 1页 免费 面向对象程序设计2009-2... 12页 1下载券...

  • MD5算法详细介绍

    MD5算法详细介绍_理学_高等教育_教育专区。MD5算法详细介绍MD5 算法详细介绍 ...当你按照我上面所说的方法实现 md5 算法以后,你可以用以下几个信息对你做出来...

  • md5算法

    md5算法_工学_高等教育_教育专区。实际编程了解MD5算法的加密和解密过程,加深对...我们下面从 MD5 入手来介绍 HASH 算法的实现机制。 MD 系列单向散列函数是由 ...

  • MD5算法简介

    19页 免费 MD5算法 8页 免费 MD5算法实现 1页 免费喜欢此文档的还喜欢...●MD5算法简介 MD5算法是单向散列算法的一种。单向散列算法也称为HASH算法,是一...

  • MD5算法及C++实现

    MD5算法及C++实现_IT/计算机_专业资料。算法 程序相关MD5算法及C++实现 ajumail 发表于 2005-05-26 近日要用到文件校验算法,查看了一下相关资料,得到以下理论与...

站点地图 | 文档上传 | 侵权投诉 | 手机版
本站所有资源均来自互联网,本站只负责收集和整理,均不承担任何法律责任,如有侵权等其它行为请联系我们.
文档下载 Copyright 2013 doc.guandang.net All Rights Reserved.  -  email