[发明专利]一种哈希密文再加密方法及再加密后的解密方法有效
申请号: | 201410198900.1 | 申请日: | 2014-05-11 |
公开(公告)号: | CN103942501B | 公开(公告)日: | 2017-01-18 |
发明(设计)人: | 龚星宇 | 申请(专利权)人: | 西安科技大学 |
主分类号: | G06F21/62 | 分类号: | G06F21/62;H04L9/30 |
代理公司: | 西安创知专利事务所61213 | 代理人: | 谭文琰 |
地址: | 710054 *** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 哈希密文 再加 方法 解密 | ||
技术领域
本发明属于加密技术领域,具体涉及一种哈希密文再加密方法及再加密后的解密方法。
背景技术
现有的用户名加密的技术有MD5、SHA等加密手段。MD5加密的主要方式是将用户的明文进行哈希加密形成密文,然后将密文存储在数据库里面,以后用户登录时,将其输入的密码转换成MD5码后与数据库存储的密文进行比对,判断是否一致。虽然密码在经过MD5加密后的128bit的大整数是无法通过数学方式解密的,换句话说就是,即使你看到源程序和算法描述,也无法将一个MD5的值变换回原始的字符串,从数学原理上说,是因为原始的字符串有无穷多个,这有点像不存在反函数的数学函数。但是,这样的加密方式并不意味着百分之百的安全。原因在于,现在很多网络的资源可以通过使用字典方式来枚举MD5码的密文,从而通过这种对应的方式破解MD5加密之后的密文,获得用户登录密码的明文。虽然,MD5码加密不存在逆过程,对于较为复杂的用户密码,MD5码加密之后很难通过枚举的手段进行破译。但是,数量众多的用户密码并不都是复杂的密码,这就为用户的信息安全带来了大量的问题。例如:有一用户的登录密码为“mynewpassword”,在http://tool.chinaz.com/Tools/MD5.aspx网站经过MD5加密之后,其密文为“8E70383C69F7A3B7EA3F71B02F3E9731”,系统将此密文存储到数据库中,日后登录时进行比对,判断登录用户身份是否合法。但是,此密文一旦泄露,虽然无法使用数学方式反解,但我们还是可以通过其他手段取得其对应的明文,例如,在http://www.md5.com.cn/md5这个网站中,可以将密文“8E70383C69F7A3B7EA3F71B02F3E9731”输入到对话框中,点击MD5Crack按钮后,与其对应的明文“mynewpassword”就会被显示出来。经过试验,对于并不是很复杂的用户密码的MD5密文,该网站都可以对其进行解密。从这一点就可以说明,现在广泛使用的MD5加密手段并不是十分的可靠。SHA加密与MD5加密相似,均由MD4加密导出,是美国国家标准技术研究所发布的国家标准FIPS PUB180,最新的标准已经于2008年更新到FIPS PUB180-3。其中规定了SHA-1,SHA-224,SHA-256,SHA-384,和SHA-512这几种单向散列算法。SHA-1,SHA-224和SHA-256适用于长度不超过2^64二进制位的消息,SHA-384和SHA-512适用于长度不超过2^128二进制位的消息;SHA加密的思想是接收一段明文,然后以一种不可逆的方式将它转换成一段(通常更小)密文,也可以简单的理解为取一串输入码(称为预映射或信息),并把它们转化为长度较短、位数固定的输出序列即散列值(也称为信息摘要或信息认证代码)的过程。SHA加密的强度与MD5加密也很相似,也存在不是十分可靠的缺陷。为了解决以上问题,现有技术中有时会对密文进行其它格式的编码转码,例如,对哈希密文进行ASCII,GB2312或者UTF8编码,或者转换成Base64字符串,但是,编码转码方式简单,非常容易被破解。因此,需要有一种新的加密手段对MD5加密后的密文再次进行加密,即便数据库中的密文泄露之后,也很难使用这种枚举方式进行破译。另外,现有技术对用户明文进行加密,得到密文,若再次对密文进行加密,虽然可以提高密文的加密强度,但是所带来的加密解密开销会大大增加。
发明内容
本发明所要解决的技术问题在于针对上述现有技术中的不足,提供一种高效、快速、能够进一步加强原始哈希密文的安全性、加密开销小、实用性强的哈希密文再加密方法。
为解决上述技术问题,本发明采用的技术方案是:一种哈希密文再加密方法,其特征在于该方法包括以下步骤:
步骤一、设定一个固定的第一噪声插入位置N1,或者设定一种取得第一噪声插入位置N1的静态策略;其中,N1为自然数且N1<L3,L3为原始哈希密文的长度且为自然数;
步骤二、从所述第一噪声插入位置N1处将原始哈希密文分成前半哈希密文和第一后半哈希密文;
步骤三、随机生成一个噪声字符串,所述噪声字符串的长度L1的取值范围为0<L1<10,L1为自然数;
步骤四、在所述第一后半哈希密文中随机找一个插入所述噪声字符串的第二噪声插入位置N2,并在所述第二噪声插入位置N2处插入所述噪声字符串,形成带噪声后半哈希密文;其中,N2的取值范围为0<N2<10,N2为自然数且N2<L2,L2为所述第一后半哈希密文的长度且为自然数;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安科技大学,未经西安科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410198900.1/2.html,转载请声明来源钻瓜专利网。