一种用户密码混合加密的方法及系统的制作方法

文档序号:7775544阅读:1031来源:国知局
一种用户密码混合加密的方法及系统的制作方法
【专利摘要】本发明提供了一种用户密码混合加密的方法及系统,通过对具有用户特征的用户账号进行MD5加密算法进行加密运算,并将MD5加密后的密文取中间的两个字符转换成ASCII码,并利用ASCII码除5之后的余数从预先存储的余数与加密算法的对应关系表中选取下一步混合加密运算的顺序和加密算法,从而最终获取到用户账号混合加密运算后的密文,使用该密文进行用户账号的验证。所述方法和系统保证了每个用户账号对应其独有的加密算法,混合加密的顺序,大大的降低了用户账号被破解和泄漏的风险,增加了计算机平台使用的安全性。
【专利说明】一种用户密码混合加密的方法及系统
【技术领域】
[0001]本发明涉及计算机应用安全防护领域,尤其涉及的是一种用户密码混合加密的方法及系统。
【背景技术】
[0002]网络中,常见到的访问控制方法为采用用户账号的方式,也即是通过输入用户名和密码的方式对该用户账号是否具有访问权限进行验证,但是如果仅仅通过使用明文的方式存储用户账号是不安全的,用户账号容易泄漏。
[0003]现有技术中,为了加强用户账号的安全性,传统的加密方式是所有密码都使用唯一并相同的密匙或同一种或几种加密算法,此方法会造成当黑客获取到一个用户加密方法的顺序就能破解其它所有用户的原始密码。因此如果使用传统的加密方式,也存在极大的风险。
[0004]因此,现有技术存在缺陷,而有待于改进和发展。

【发明内容】

[0005]本发明的目的在于提供一种用户密码的混合加密的方法及系统,针对上述现有技术的缺陷,提供一种具有用户特征的混合加密方法,为用户提供方便,具有很高的体验度,增加了移动终端的使用的安全性。
[0006]本发明的技术方案如下:
一种用户密码混合加密的方法,其中,所述方法包括:
A、接收用户输入的用户账号,通过MD5加密算法对所述用户账号进行加密,得到加密后的密文;
B、取出位于所述密文中间的两个字符,获取所述两个字符所对应的ASCII码;
C、将获取到两个字符的ASCII码除5得到两个余数,根据得到的两个余数从预先存储的余数与加密算法的对应关系表中找出与所述两个余数所对应的两种加密算法;
D、取出在步骤A中获取的密文中间的16位字符,使用步骤C中获取的两种加密算法按照所述两个余数的先后顺序依次对所述16位字符进行运算,得到最终密文。
[0007]所述用户密码混合加密的方法,其中,在所述预先存储的余数与加密算法的对应关系表中余数与加密算法的对应关系为:
0对应DES加密算法、I对应AES加密算法、2对应Base64加密算法、3对应SHAl加密算法和4对应XXTEA加密算法。
[0008]所述用户密码混合加密的方法,其中,所述方法还包括步骤:
E、将步骤D中的得到的最终密文进行存储,用于用户下次使用用户账号登陆时验证使用。
[0009]所述用户密码混合加密的方法,其中,所述方法还包括步骤:
F、接收用户再次输入的用户账号,并使用所述步骤A-D对输入的用户账号进行加密运算,将获取到的密文与步骤E中所保存的最终密文进行比对,如果不相同,则判定此次输入的用户账号失败。
[0010]所述用户密码混合加密的方法,其中,所述方法还包括步骤:
G、当连续三次接收到步骤F中输入的用户账号失败的信号后,限制本次登录。
[0011]一种用户密码混合加密的系统,其中,所述系统包括以下模块:
接收输入模块,用于接收用户输入的用户账号,通过MD5加密算法对所述用户账号进行加密,得到加密后的密文;
ASCII码转换模块,用于从所述密文中取出位于中间的两个字符,获取所述两个字符所对应的ASCII码;
加密算法获取模块,用于将获取到两个字符的ASCII码除5得到两个余数,根据得到的两个余数从预先存储的余数与加密算法的对应关系表中找出与所述两个余数所对应的两种加密算法;
加密运算模块,用于取出接收输入模块中所获取的密文中间的16位字符,使用步骤C中获取的两种加密算法按照所述两个余数的先后顺序依次对所述16位字符进行运算,获取最终密文。
[0012]所述的用户密码混合加密的系统,其中,在所述预先存储的余数与加密算法的对应关系表中余数与加密算法的对应关系为:
0对应DES加密算法、I对应AES加密算法、2对应Base64加密算法、3对应SHAl加密算法和4对应XXTEA加密算法。
[0013]所述的用户密码混合加密的系统,其中,所述系统还包括:
存储结果模块,用于将加密运算模块中的得到的最终密文进行存储,用于用户下次使用用户账号登陆时验证使用。
[0014]所述的用户密码混合加密的系统,其中,所述系统还包括:
密码验证模块,用于接收用户再次输入的用户账号,并对输入的用户账号进行加密运算,将获取到的密文与存储结果模块中所保存的最终密文进行比对,如果不相同,则判定此次输入的用户账号失败。
[0015]所述的用户密码混合加密的系统,其中,所述系统还包括:
验证权项模块,用于当连续三次接收到密码验证模块中输入的用户账号验证失败的信号后,限制本次登录。
[0016]有益效果:本发明所提供的一种用户密码混合加密的方法及系统,通过对具有用户特征的用户账号进行相应的加密运算,从而可以防止其中一个用户的加密算法被破解后,无法通过相同的加密顺序、密匙进行还原其它用户的密码,从而保证用户原始密码的安全性,并且每个用户账号独具有的加密密匙、加密算法的顺序、加密的具体算法,可以极大保护被还原原始密码的难度,从而极大的增大了计算机平台上用户账号使用的安全性。
【专利附图】

【附图说明】
[0017]图1为本发明提供的一种用户密码混合加密的方法步骤流程图。
[0018]图2为本发明提供的一种用户密码混合加密的系统结构原理图。【具体实施方式】
[0019]本发明提供了一种用户密码混合加密的方法及系统,以下对结合附图本发明的实施例加以详细说明。
[0020]如图1所示为本发明所提供的一种用户密码混合加密的方法步骤流程图,如图所示,所述方法包括以下步骤:
S1、接收用户输入的用户账号,通过MD5加密算法对所述用户账号进行加密,得到加密后的密文。
[0021]将接收的用户输入的用户账号使用MD5加密算法进行加密。具体的,本步骤对用户账号进行MD5加密算法进行加密,获取到与用户账号所对应的两组加密后的密文。
[0022]S2、取出位于所述密文中间的两个字符,获取所述两个字符所对应的ASCII码。
[0023]将上面获取的加密后的密文中的位于中间的两个字符取出,获取到所述字符所对应的ASCII码,用于下一步加密运算。
[0024]S3、将获取到两个字符的ASCII码除5得到两个余数,根据得到的两个余数从预先存储的余数与加密算法的对应关系表中找出与所述两个余数所对应的两种加密算法。
[0025]将获取到的字符所对应的ASCII码,分别除5,得到这2个字符的所对应的余数,并从预先存储的余数与加密算法的对应关系表中获取所述余数对应的加密算法。
[0026]在所述预先存储的余数与加密算法的对应关系表中余数与加密算法的对应关系为:
0对应DES加密算法、I对应AES加密算法、2对应Base64加密算法、3对应SHAl加密算法和4对应XXTEA加密算法。
[0027]S4、取出在步骤SI中获取的密文中间的16位字符,使用步骤S3中获取的两种加密算法按照所述两个余数的先后顺序依次对所述16位字符进行运算,得到最终密文。
[0028]为了对上述方法进行更加详细的描述,下面举例对其进行说明:
假如用户输入的用户账号分别为:test和qtone,相同原始密码123456。
[0029]第I步:首先对用户帐号进行MD5加密算法加密。
[0030]test 进行 MD5 加密得到的密文为:098f6bcd4621d373cade4e832627b4f6。
[0031]qtone 进行 MD5 加密得到的密文为:e3ea67cb6ca4ca5c543ded5228566b5a。
[0032]第2步:取出加密获取到的密文中间的两个字符,将该两个字符的ASCII除5取余分别为:
Test获取到的密文中间的两个字符分别为3和c,3所对应的ASCII码为51,将51除5得到的余数为I ;c所对应的ASCII码为99,将99除5得到的余数为4。
[0033]qtone获取到的密文中间的两个字符分别为c和5,c所对应的ASCII码为99,将51除5得到的余数为4 ;5所对应的ASCII码为53,将53除5得到的余数为3。
[0034]第3步,由获取到的余数I和4以及4和3,并且从余数与加密算法的对应关系表中可以得到:
I所对应的加密算法为AES加密算法;4所对应的加密算法为XXTEA加密算法;3所对应的加密算法为SHAl加密算法。
[0035]第4步,从而可以确定混合加密算法的顺序和具体使用的加密算法为:
Test加密算法顺序是:先进行AES加密运算然后进行XXTEA加密运算。[0036]具体的,取出Test中在第I步中进行MD5加密运算获取到的32位字符中间的16位字符作为加密密钥进行上述顺序的加密运算,由上述32位字符可以得到其中间的16位字符为:4621d373cade4e83,将该结果进行AES加密运算获取到的结果为:4621d373cade4e83,然后再进行XXTEA加密运算获取的密文为:4621d373cade4e83,则使用用户名test最终获取得到的密文为:/yXAlqwbNRPwFFV5Xrl6iHQ/Kys=。
[0037]qtone加密算法顺序是:先进行XXTEA加密运算然后进行SHAl加密算法的运算。
[0038]具体的,取出qtone中在第I步中进行MD5加密运算获取到的32位字符中间的16位字符作为加密密钥进行上述顺序的加密运算,由上述32位字符可以得到其中间的16位字符为:6Ca4Ca5C543ded52,将该结果XXTEA加密运算然后进行SHAl加密算法的运算,则用户账号为 qtone 最终获取得到的密文为:8cc01f46dfe5e71ea790e4fal644418482c63b33。
[0039]可以想到的是,通过了上述步骤S1-S4中获取到的与用户账号相对应的最终密文需进行保存,以便在用户下次使用用户账号登陆时验证使用。
[0040]为了更好的对用户账号进行保护,则在上述方法的基础上,所述方法还包括步骤:
接收用户再次输入的用户账号,并使用所述步骤S1-S4对输入的用户账号进行加密运算,将获取到的密文与所保存的正确的用户账号对应的最终密文进行比对,如果不相同,则判定此次输入的用户账号失败。当连续三次接收到输入的用户账号失败的信号后,限制本次登录。防止恶意的对用户账号进行破解造成的账号密码的丢失。
[0041]在上述一种用户密码混合加密的方法的基础上,本发明还提供了一种用户密码混合加密的系统,如图2所示,所述系统包括以下模块:
接收输入模块10,用于接收用户输入的用户账号,通过MD5加密算法对所述用户账号进行加密,得到加密后的密文;其功能具体如上述步骤SI所述。
[0042]ASCII码转换模块20,用于从所述密文中取出位于中间的两个字符,获取所述两个字符所对应的ASCII码;其功能具体如上述步骤S2所述。
[0043]加密算法获取模块30,用于将获取到两个字符的ASCII码除5得到两个余数,根据得到的两个余数从预先存储的余数与加密算法的对应关系表中找出与所述两个余数所对应的两种加密算法;其功能具体如上述步骤S3所述。
[0044]加密运算模块40,用于取出接收输入模块中所获取的密文中间的16位字符,使用步骤C中获取的两种加密算法按照所述两个余数的先后顺序依次对所述16位字符进行运算,得到最终密文,其功能具体如上述步骤S4所述。
[0045]在所述预先存储的余数与加密算法的对应关系表中余数与加密算法的对应关系为:
0对应DES加密算法、I对应AES加密算法、2对应Base64加密算法、3对应SHAl加密算法和4对应XXTEA加密算法。
[0046]为了更好的对用户账号进行保护,所述系统还包括:
存储结果模块,用于将加密运算模块中的得到的最终密文进行存储,用于用户下次使用用户账号登陆时验证使用。
[0047]密码验证模块,用于接收用户再次输入的用户账号,并对输入的用户账号进行加密运算,将获取到的密文与存储结果模块中所保存的最终密文进行比对,如果不相同,则判定此次输入的用户账号失败;
验证权项模块,用于当连续三次接收到密码验证模块中输入的用户账号验证失败的信号后,限制本次登录。
[0048]本发明所提供的一种用户密码混合加密的方法及系统,通过对具有用户特征的用户账号进行MD5加密算法进行加密运算,并将MD5加密后的密文取中间的两个字符转换成ASCII码,并利用ASCII码除5之后的余数从预先存储的余数与加密算法的对应关系表中选取下一步混合加密运算的顺序和加密算法,从而最终获取到用户账号混合加密运算后的密文,使用该密文进行用户账号的验证。所述方法和系统保证了每个用户账号对应其独有的加密算法,混合加密的顺序,大大的降低了用户账号被破解和泄漏的风险,增加了计算机平台使用的安全性。
[0049]应当理解的是,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,而所有这些改进和变换都应属于本发明所附权利要求的保护范围。
【权利要求】
1.一种用户密码混合加密的方法,其特征在于,所述方法包括: A、接收用户输入的用户账号,通过MD5加密算法对所述用户账号进行加密,得到加密后的密文; B、取出位于所述密文中间的两个字符,获取所述两个字符所对应的ASCII码; C、将获取到两个字符的ASCII码除5得到两个余数,根据得到的两个余数从预先存储的余数与加密算法的对应关系表中找出与所述两个余数所对应的两种加密算法; D、取出在步骤A中获取的密文中间的16位字符,使用步骤C中获取的两种加密算法按照所述两个余数的先后顺序依次对所述16位字符进行运算,得到最终密文。
2.根据权利要求1所述用户密码混合加密的方法,其特征在于,在所述预先存储的余数与加密算法的对应关系表中余数与加密算法的对应关系为: O对应DES加密算法、I对应AES加 密算法、2对应Base64加密算法、3对应SHAl加密算法和4对应XXTEA加密算法。
3.根据权利要求1所述用户密码混合加密的方法,其特征在于,所述方法还包括步骤: E、将步骤D中得到的最终密文进行存储,用于用户下次使用用户账号登陆时验证使用。
4.根据权利要求2所述用户密码混合加密的方法,其特征在于,所述方法还包括步骤: F、接收用户再次输入的用户账号,并使用所述步骤A-D对输入的用户账号进行加密运算,将获取到的密文与步骤E中所保存的最终密文进行比对,如果不相同,则判定此次输入的用户账号失败。
5.根据权利要求4所述用户密码混合加密的方法,其特征在于,所述方法还包括步骤: G、当连续三次接收到步骤F中输入的用户账号失败的信号后,限制本次登录。
6.一种用户密码混合加密的系统,其特征在于,所述系统包括以下模块: 接收输入模块,用于接收用户输入的用户账号,通过MD5加密算法对所述用户账号进行加密,得到加密后的密文; ASCII码转换模块,用于从所述密文中取出位于中间的两个字符,获取所述两个字符所对应的ASCII码; 加密算法获取模块,用于将获取到两个字符的ASCII码除5得到两个余数,根据得到的两个余数从预先存储的余数与加密算法的对应关系表中找出与所述两个余数所对应的两种加密算法; 加密运算模块,用于取出接收输入模块中所获取的密文中间的16位字符,使用步骤C中获取的两种加密算法按照所述两个余数的先后顺序依次对所述16位字符进行运算,得到最终密文。
7.根据权利要求6所述的用户密码混合加密的系统,其特征在于,在所述预先存储的余数与加密算法的对应关系表中余数与加密算法的对应关系为: O对应DES加密算法、I对应AES加密算法、2对应Base64加密算法、3对应SHAl加密算法和4对应XXTEA加密算法。
8.根据权利要求6所述的用户密码混合加密的系统,其特征在于,所述系统还包括: 存储结果模块,用于将加密运算模块中的最终密文进行存储,用于用户下次使用用户账号登陆时验证使用。
9.根据权利要求8所述的用户密码混合加密的系统,其特征在于,所述系统还包括: 密码验证模块,用于接收用户再次输入的用户账号,并对输入的用户账号进行加密运算,将获取到的密文与存储结果模块中所保存的最终密文进行比对,如果不相同,则判定此次输入的用户账号失败。
10.根据权利要求9所述的用户密码混合加密的系统,其特征在于,所述系统还包括: 验证权项模块,用于当连续三次接收到密码验证模块中输入的用户账号验证失败的信号后,限制 本次登录。
【文档编号】H04L9/06GK103684758SQ201310540136
【公开日】2014年3月26日 申请日期:2013年11月5日 优先权日:2013年11月5日
【发明者】陈炽昌, 高祖辉, 曾详鑫, 黄振标 申请人:广东全通教育股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1