1 WEB SYSTEM密钥安全性能分析

当今的各种IT 系统都存在着设置用户名和 密码的环节,但如今存在着各种黑客软件能够破 解系统密码[1],对系统进行非法的登录和破坏,其安全性能存在着隐患。为了防止外人非法进入系 统,对系统中的重要数据进行盗用,就必须对密钥 进行加锁,即对密码字符进行加密。现在常用的 加密算法有4 种,它们分别是 SHA 加密算法、 RSA加密算法、DES加密算法和 MD5加密算法。 由于目前的IT 系统加密基本上采用 MD5加密算法对password进行加密,所以文中就 MD5加 密算法进行简单的介绍,并在IT 系统中做一些 实际应用改进,增强其在实践应用中被破解的难度。

2  IT系统中 MD5加密算法概述

rsa data security inc 的 ronald 1.Rivestmit 和laboratory for computer science 在90年代初 研究 出 了 MD5 加 密 算 法,即 信 息摘 要 算 法 Message-Digest algorithm 5 经过md2代md3代以及md4代的发展应用演化而来,就是把一个任意长度的字节串变换成一定长的大整数[3] 

MD5算法还应用到了数据结构中的散列算 法等思路,它是以512位的分组来处理输入系统 中字符数据,而且每一个分组又可以分为16个的 32位子分组,经过算法的一系列处理之后,最后4 组得到32位的分组,将这4组的32位分组进行 级联处理后将得到一串128的散列值,算法最后 得到的字符导入数据中有32位和16位两种。   

一般系统都是直接将加密的md5密钥值导 入到数据库中,如果网站存在注入性攻击或者安 全隐患时,破坏者很可能就获取系统中客户的密 码字符,或者通过黑客网站中的md5在线查询可 以得到用户的密码[5]

3 IT系统中 MD5加密算法的应用和改进 思路

  MD5算法由于在商业领域中的使用可以免 费,又加上该算法具有健壮的安全性,使得该算法 被广泛应用,目前在文件完整性校验、密码加密以 及数字签名等方面有较好的应用。基于此,下面 提出了一种 MD5加密算法在口令加密方面的改 进思路:  

1)先进行 MD5加密,得到32位和16位的密文值,并且利用内部排序算法对加密后的数值进行排序[6]MD5 - SORT(assword)。

2)最终利用叠加的思想得到的密码值为 P=H(Encrt-wd)&rand - ke(number),导入yppy数据库。

密码的验证过程和加密过程有些相似,先对 输入系统中的密码进行加密,接着对加密后的数 值进行排序,然后截取密码长度的字符串再一次进行 MD5加密,获得散列值 H(Encrt-wd)yppy

最后与数据中得密文值的前H(Encrt-wd)位进行比较,如果相等,则认为用户是授权

如果人们仅仅是进行一次简单的MD5加密就将其 值导入数据库的话,那么密码还是很不安全,还是 有可能被破解的,所以,文中提出的方法是针对这 一问题对加密的中间环节进行处理再加密,这样 的加密方法就不是原来意义上的 MD5加密了, 要破解它其概率是非常小的。

文中提出的方法是先通过对明文进行加密, 然后再进行排序,处理后利用原密码长度对排序 后的数值进行截取,最后再一次进行 MD5加密,获得散列值 H(Encrt-wd),使用随机函数yppy   rand - ke(number)产生 number位数的字符序 列,和散列值叠加在一起得到最终的密文值。最后得到的密文虽然是经过MD5加密,但是其值 已经大不一样。因此,通过MD5常规的一些破 解方法永远也不可能破解其原来初始密码值,从而保证了数据库中密钥数据的安全性。