下载此文档

MD5消息摘要算法实现及改进.docx


文档分类:通信/电子 | 页数:约7页 举报非法文档有奖
1/7
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/7 下载此文档
文档列表 文档介绍
MD5消息摘要算法实现及改进.docx2012-07-19######艸#####201益溺T9#####師2-07-19########(中国工商银行泉州市分行福建泉州362000)【摘要】:MD5消息摘要算法通过对一个任意长度的消息进行处理产牛一个I古I定长度的"消息摘要",可利用该”消息摘要"进行数字签名和密码加密。本文在传统算法流程的基础上作了进•步的改进,提高了该算法的运算效率。【关键字】:MD5算法,(MIT),被互联网电了邮件保密协议(PEM)指定为消息压縮值算法之一,用于数字签名前对消息进行安全的压缩;日•为不可逆算法。MD5算法描述MD5算法是以任意长度的消息作为输入,输出一个长度I古I定为128bit的消息摘要,其传统运算流程见图1。,传统的算法运算流程是先对初始消息进行预处理(使其长度变为512bit的整数倍),再进行报文分组的划分和逻辑处理。而本文对此作了改进,具体流程如图2所示。首矢根据初始消息长度的不同将其分为:①初始长度W5l2bi(,且初始长度W448bit:②初始长度W512bit,且448bit<初始匕度W512bit;③初始长度〉512bit,口剩余消息(初始消息在划分、处理完所有满足分组条件后的剩余部分)的长度W448bit;④初始t度>;512bit,且448bitv剩余消息长度W5l2bit四种情况。若为①②(包括分纟且的划分和逻辑处理);若为③④情况则有所不同,首先运用话环结构不断地将初始消息中满足分组划分条件的内容拷贝到一个事先定义好的5l2bit大的分组存储区小进行分织的逻辑处理,然后对剩余消息进行填充和分组划分,并将前面处现所得到的中间变虽代入分组进行运算,最后得到128bit消息摘耍的输出。同时,在编程实现时,将大量的计算和查找操作直接用相应值代替。源,又大大降低了算法的运算强度,同吋捉高了算法的运行速度。改进后算法的伪代码如下:MD5Encr>p(Slring(MS(ring)VarMD5Operation(MContext);End;>数的定义与初始化鉴于对MD5算法的运算流程做了改进。因此,有必要先对运算中所用到的•系列参数进行数据结构的定义和初始化。(的数据类型。MD5Content=RecordChaVar:MD5QiaVar;Len:MD5Len;Buller:MDSBuflcr;End;其中,MD5ChaVar为含有4个元素的DWORD数组,分别表示四个链接变童;MD5Len由2个DWORD元索组成,共64位,用于存放消息长度;MD5Buffer为含有64个元素的BYTE数组,共512位,存放曲前待处理的报文分组内容。,它包含了传统流程中附加填充比特、附加消息长度和初始化MD缓心区三个步骤小的部分操作。关键代码如下:ProcedureNtt)5ParaReady<VarContext:MD5Content)BeginWithContextdoBegin“

MD5消息摘要算法实现及改进 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数7
  • 收藏数0 收藏
  • 顶次数0
  • 上传人ttteee8
  • 文件大小69 KB
  • 时间2020-08-05