APP下载

基于MD5与RSA算法的数字认证研究与实现

2010-12-21廖莎莎

黄山学院学报 2010年5期

廖莎莎

(黄山学院 现代教育技术中心,安徽 黄山 245041)

基于MD5与RSA算法的数字认证研究与实现

廖莎莎

(黄山学院 现代教育技术中心,安徽 黄山 245041)

分析数字认证技术,结合基于MD5和RSA算法的安全认证体制,给出详细的实现方法与测试结果,为网络信息安全提供了一套实用的参考方案。

信息安全;MD5;RSA;数字认证

1 引 言

2000年6月,美国国会在“全球和国家商务法(ESIGN法)”中批准了电子签名。这一立法避免了对仅仅基于电子形式的合同或者签名的争论,从而赋予电子签名以新的合法性。2005年4月1日《电子签名法》在我国开始正式实施,这部法律规定,可靠的电子签名与手写签名或盖章具有同等的法律效力。[1]电子签名技术有很多种,但目前比较成熟以及普遍被使用的电子签名技术是基于MD5与RSA算法数字签名技术。

2 理论基础

2.1 MD5算法

MD5算法可以简要的描述为MD5以512位分组来处理输入的信息,且每一分组又被划分为16个32位子分组,经过了一系列的处理后,算法的输出由四个32位分组组成,将这4个32位分组串联后将生成一个128位散列值。[2]

MD5算法步骤:

首先要计算分片信息,计算具体过程如下:

第二、三、四轮分别使用GG(a,b,c,d,M[i],s,ti),HH(a,b,c,d,M[i],s,ti)和II(a,b,c,d,M[i],s,ti),其中i自增。

6.每执行完上述四轮一次后,执行下面运算

7.对每个GroupContest[i]重复5,6操作,直到N+1个GroupContest[i]都完成,最终输出128位字符串ABCD作为数字指纹。

2.2 RSA算法

尽管公钥加密算法的种类有很多,但RSA对目前为止已知的所有密码攻击几乎都具备抵抗力。RSA算法的安全性基于分解大整数的困难性。计算两个大素数的乘积是容易的,但是把一个大合数分解成两个素数的积却是特别困难的。……

登录APP查看全文