CN102710416A - 一种社交网站用的密码加密方法 - Google Patents
一种社交网站用的密码加密方法 Download PDFInfo
- Publication number
- CN102710416A CN102710416A CN201210195743XA CN201210195743A CN102710416A CN 102710416 A CN102710416 A CN 102710416A CN 201210195743X A CN201210195743X A CN 201210195743XA CN 201210195743 A CN201210195743 A CN 201210195743A CN 102710416 A CN102710416 A CN 102710416A
- Authority
- CN
- China
- Prior art keywords
- ciphertext
- client
- character string
- password
- key
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Abstract
本发明公开了一种社交网站用的密码加密方法,在现有的MD5加密之前,对密码字符串进行了强错乱,大大降低了被加密字符串的逻辑性,并且在进行MD5加密之前还采用了Crypt加密处理,使得MD5加密的原文是毫无逻辑关系的字符串。这导致黑客破译密文需要全新的,现在还不存在的,数据大巨大的原文/密文对照数据库,大大增加了黑客破译密文的难度,增加了密码的安全性。同时,本发明的加密流程完全在客户端上进行,用户输入的密码字符串完全不经过服务器,即使黑客攻破了服务器防火墙,也只能找到密钥和密文,而不能找到密码字符串的痕迹,增加了密码的安全性。
Description
技术领域
本发明涉及一种密码加密方法,尤其涉及一种社交网站用的密码加密方法。
背景技术
MD5的全称是Message-Digest Algorithm 5,在90年代初有MIT的计算机科学实验室和RSA Data Security Inc发明。MD5将任意长度的字符串变换呈一个128bit的大整数,并且是一个不可逆的字符串变换方法。MD5加密模块就是具有MD5加密功能的模块。
现有的社交网站通常将密码直接采用MD5方法进行加密。虽然运用MD5方法加密是不可逆的,但是现在黑客拥有了数据量巨大的MD5原文/密文对照数据库,能快速破译常用密码的MD5密文,并且社交网站中用户的密码基本都是常用密码,这使得用户密码的安全性大大降低了。
发明内容
本发明的目的在于,提供一种社交网站用的密码加密方法。该密码加密方法能够增加黑客对密文的破译难度,以现有的技术手段难以实现对密文的破译,大大增加了用户密码的安全性。
为解决上述技术问题,本发明提供的技术方案如下:一种社交网站用的密码加密方法,包括以下步骤:
A.客户端与服务器交流生成密钥X,然后客户端利用密钥X及用户输入的密码产生附加密钥Y,并利用密钥X及附加密钥Y对用户输入的密码进行强错乱,产生错乱密文a;
B.客户端对错乱密文a进行第一次非线性不可逆加密,产生中间密文b;
C. 客户端对中间密文b进行第二次非线性不可逆加密,产生最终密文c;
D. 客户端将密钥X、附加密钥Y和最终密文c发送至服务器端,服务器端储存密钥X、附加密钥Y和最终密文c。
前述的社交网站用的密码加密方法,步骤A中,所述的通过客户端与服务器交流生成密钥X,具体是客户端接收到用户输入的密码字符串P后,将字符串个数a1发送至服务器端,服务器端根据字符串个数a1生成密钥X,然后将密钥X返回客户端。
前述的社交网站用的密码加密方法中,所述的服务器端根据字符串个数a1生成密钥X,具体是服务器端根据字符串个数a1随机生成不大于字符串个数a1的正数a2和a3, a2和a3即为密钥X。
前述的社交网站用的密码加密方法中,所述的客户端利用密钥X及用户输入的密码产生附加密钥Y,并利用密钥X及附加密钥Y对用户输入的密码进行强错乱,产生错乱密文a,具体是
A1.客户端将字符串个数a1除以a2后取整加在密码字符串一端,客户端将字符串个数a1除以a3后取整加在密码字符串另一端,得到中间字符串a5;
A2. 客户端随机生成小于字符串a5中字符个数的正整数N ,N即为附加密钥Y;
A3.客户端截取字符串a5中位置连续的N位字符并加在密码字符串一端,得到错乱密文a。
前述的社交网站用的密码加密方法,步骤B中,所述的客户端对错乱密文a进行第一次非线性不可逆加密,产生中间密文b,具体为客户端利用crypt加密模块加密错乱密文a,得到中间密文b。
前述的社交网站用的密码加密方法,步骤C中,所述的客户端对中间密文b进行第二次非线性不可逆加密,产生最终密文c,具体为客户端利用MD5加密模块加密中间密文b,得到最终密文c。
Crypt是基于Data Encryption Standard(DES)的演算法,是一个不可逆的加密方法,适用于对密码的加密。Crypt加密模块就是具有Crypt加密功能的模块。
与现有技术相比,本发明在现有的MD5加密之前,对密码字符串进行了强错乱处理,大大降低了被加密字符串的逻辑性,并且在进行MD5加密之前还采用了Crypt加密处理,使得MD5加密的原文是毫无逻辑关系的字符串。这导致黑客破译密文需要全新的,现在还不存在的,数据量巨大的原文/密文对照数据库,大大增加了黑客破译密文的难度,增加了密码的安全性。同时,本发明的加密流程完全在客户端上进行,用户输入的密码字符串完全不经过服务器,即使黑客攻破了服务器防火墙,也只能找到密钥和密文,而不能找到密码字符串的痕迹,增加了密码的安全性。
附图说明
图1是本发明的流程图。
下面结合附图和实施例对本发明作进一步的说明,但并不作为对本发明限制的依据。
具体实施方式
一种社交网站用的密码加密方法,包括以下步骤:
A.客户端与服务器交流生成密钥X,然后客户端利用密钥X及用户输入的密码产生附加密钥Y,并利用密钥X及附加密钥Y对用户输入的密码进行强错乱,产生错乱密文a;
B.客户端对错乱密文a进行第一次非线性不可逆加密,产生中间密文b;
C. 客户端对中间密文b进行第二次非线性不可逆加密,产生最终密文c;
D. 客户端将密钥X、附加密钥Y和最终密文c发送至服务器端,服务器端储存密钥X、附加密钥Y和最终密文c。
步骤A中,所述的通过客户端与服务器交流生成密钥X,具体是客户端接收到用户输入的密码字符串P后,将字符串个数a1发送至服务器端,服务器端根据字符串个数a1生成密钥X,然后将密钥X返回客户端。
所述的服务器端根据字符串个数a1生成密钥X,具体是服务器端根据字符串个数a1随机生成不大于字符串个数a1的正数a2和a3, a2和a3即为密钥X。
所述的客户端利用密钥X及用户输入的密码产生附加密钥Y,并利用密钥X及附加密钥Y对用户输入的密码进行强错乱,产生错乱密文a,具体是
A1.客户端将字符串个数a1除以a2后取整加在密码字符串一端,客户端将字符串个数a1除以a3后取整加在密码字符串另一端,得到中间字符串a5;
A2. 客户端随机生成小于字符串a5中字符个数的正整数N ,N即为附加密钥Y;
A3.客户端截取字符串a5中位置连续的N位字符并加在密码字符串一端,得到错乱密文a。
步骤B中,所述的客户端对错乱密文a进行第一次非线性不可逆加密,产生中间密文b,具体为客户端利用crypt加密模块加密错乱密文a,得到中间密文b。
步骤C中,所述的客户端对中间密文b进行第二次非线性不可逆加密,产生最终密文c,具体为客户端利用MD5加密模块加密中间密文b,得到最终密文c。
实施例1。
一种社交网站用的密码加密方法,如图1所示,包括以下步骤:
A.客户端与服务器交流生成密钥X,然后客户端利用密钥X及用户输入的密码产生附加密钥Y,并利用密钥X及附加密钥Y对用户输入的密码进行强错乱,产生错乱密文a;
B.客户端对错乱密文a进行第一次非线性不可逆加密,产生中间密文b;
C. 客户端对中间密文b进行第二次非线性不可逆加密,产生最终密文c;
D. 客户端将密钥X、附加密钥Y和最终密文c发送至服务器端,服务器端储存密钥X、附加密钥Y和最终密文c。
步骤A具体是:
客户端接收到用户输入的密码字符串P后,将字符串个数a1发送至服务器端,服务器端根据字符串个数a1随机生成不大于字符串个数a1的正数a2和a3,a2和a3即为密钥X,然后将密钥X返回客户端。客户端将字符串个数a1除以a2后取整加在密码字符串一端,客户端将字符串个数a1除以a3后取整加在密码字符串另一端,得到中间字符串a5;客户端随机生成小于字符串a5中字符个数的正整数N ,N即为附加密钥Y;客户端截取字符串a5中位置连续的N位字符并加在密码字符串一端,得到错乱密文a。
步骤B具体是,客户端利用crypt加密模块加密错乱密文a,得到中间密文b。
步骤C具体是,客户端利用MD5加密模块加密中间密文b,得到最终密文c。
步骤D具体是,客户端将密钥X、附加密钥Y和最终密文c发送至服务器端,服务器端储存密钥X、附加密钥Y和最终密文c。
下面结合具体内容做进一步描述。
客户输入密码字符串P“123456”。
步骤A,客户端接收到用户输入的密码字符串P“123456”后,将字符串个数a1“6”发送至服务器端,服务器端根据字符串个数a1“6”随机生成不大于字符串个数a1的正数a2“4”和a3“5.5”,a2“4”和a3“5.5”即为密钥X,然后将密钥X返回客户端。客户端将字符串个数a1“6”除以a2“4”后取整加在密码字符串首端,客户端将字符串个数a1“6”除以a3“5.5”后取整加在密码字符串尾端,得到中间字符串a5“11234561”;客户端随机生成小于字符串a5中字符个数8的正整数N“5” ,N即为附加密钥Y;客户端截取字符串a5中位置连续的5位字符并加在密码字符串首端,得到错乱密文a“11234123456”。
步骤B,客户端利用crypt加密模块加密错乱密文a“11234123456”,得到中间密文b“$1$bD0.Ii3.$5it0nMf6tC5Zw8lVepXc70”。
步骤C,客户端利用MD5加密模块加密中间密文b“$1$bD0.Ii3.$5it0nMf6tC5Zw8lVepXc70”,得到最终密文c “bbe624819466bfa098509f52459466db”。
步骤D,客户端将密钥X(包含a2和a3)、附加密钥Y(包含N)和最终密文c“bbe624819466bfa098509f52459466db”发送至服务器端,服务器端储存密钥X、附加密钥Y和最终密文c。
当用户需要验证密码时,服务器端将该用户对应的密钥及附加密钥发送至客户端,然后客户端利用既定的密钥及附加密钥的对用户输入的字符串进行加密,并将加密后的密文发送至服务器端,若服务器验证加密后的密文与最终密文c一致,则验证成功。
Claims (6)
1.一种社交网站用的密码加密方法,其特征在于,包括以下步骤:
A.客户端与服务器交流生成密钥X,然后客户端利用密钥X及用户输入的密码产生附加密钥Y,并利用密钥X及附加密钥Y对用户输入的密码进行强错乱,产生错乱密文a;
B.客户端对错乱密文a进行第一次非线性不可逆加密,产生中间密文b;
C. 客户端对中间密文b进行第二次非线性不可逆加密,产生最终密文c;
D. 客户端将密钥X、附加密钥Y和最终密文c发送至服务器端,服务器端储存密钥X、附加密钥Y和最终密文c。
2.根据权利要求1所述的社交网站用的密码加密方法,其特征在于:步骤A中,所述的通过客户端与服务器交流生成密钥X,具体是客户端接收到用户输入的密码字符串P后,将字符串个数a1发送至服务器端,服务器端根据字符串个数a1生成密钥X,然后将密钥X返回客户端。
3.根据权利要求2所述的社交网站用的密码加密方法,其特征在于:所述的服务器端根据字符串个数a1生成密钥X,具体是服务器端根据字符串个数a1随机生成不大于字符串个数a1的正数a2和a3, a2和a3即为密钥X。
4.根据权利要求3所述的社交网站用的密码加密方法,其特征在于:所述的客户端利用密钥X及用户输入的密码产生附加密钥Y,并利用密钥X及附加密钥Y对用户输入的密码进行强错乱,产生错乱密文a,具体是
A1.客户端将字符串个数a1除以a2后取整加在密码字符串一端,客户端将字符串个数a1除以a3后取整加在密码字符串另一端,得到中间字符串a5;
A2. 客户端随机生成小于字符串a5中字符个数的正整数N ,N即为附加密钥Y;
A3.客户端截取字符串a5中位置连续的N位字符并加在密码字符串一端,得到错乱密文a。
5.根据权利要求1所述的社交网站用的密码加密方法,其特征在于:步骤B中,所述的客户端对错乱密文a进行第一次非线性不可逆加密,产生中间密文b,具体为客户端利用crypt加密模块加密错乱密文a,得到中间密文b。
6.根据权利要求1所述的社交网站用的密码加密方法,其特征在于:步骤C中,所述的客户端对中间密文b进行第二次非线性不可逆加密,产生最终密文c,具体为客户端利用MD5加密模块加密中间密文b,得到最终密文c。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210195743XA CN102710416A (zh) | 2012-06-14 | 2012-06-14 | 一种社交网站用的密码加密方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210195743XA CN102710416A (zh) | 2012-06-14 | 2012-06-14 | 一种社交网站用的密码加密方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102710416A true CN102710416A (zh) | 2012-10-03 |
Family
ID=46902988
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210195743XA Pending CN102710416A (zh) | 2012-06-14 | 2012-06-14 | 一种社交网站用的密码加密方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102710416A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102882675A (zh) * | 2012-10-18 | 2013-01-16 | 杭州也要买电子商务有限公司 | 社交网站用的密码加密方法 |
CN103684758A (zh) * | 2013-11-05 | 2014-03-26 | 广东全通教育股份有限公司 | 一种用户密码混合加密的方法及系统 |
CN110944006A (zh) * | 2019-12-10 | 2020-03-31 | 浙江清华长三角研究院 | 一种提供匿名保护的密码黑名单查询方法及其应用 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030005299A1 (en) * | 2001-06-29 | 2003-01-02 | International Business Machines Corporation | User authorization management system using a meta-password and method for same |
CN1425987A (zh) * | 2001-12-10 | 2003-06-25 | 中国科学院软件研究所 | 强化错乱的分组密码加密方法 |
US20050125698A1 (en) * | 2003-12-05 | 2005-06-09 | Microsoft Corporation | Methods and systems for enabling secure storage of sensitive data |
CN101237320A (zh) * | 2008-02-04 | 2008-08-06 | 西安理工大学 | 利用无穷维超混沌构造单向散列函数进行密码保护的方法 |
US20080288776A1 (en) * | 2007-05-17 | 2008-11-20 | Estsoft Corp. | Security method using virtual keyboard |
CN101384032A (zh) * | 2007-09-06 | 2009-03-11 | 中国银联股份有限公司 | 密码短消息屏蔽方法、发送方法及存储方法 |
CN102158468A (zh) * | 2011-01-26 | 2011-08-17 | 清华大学 | 一种在社交网络服务中分享和获取数据的方法 |
CN102316112A (zh) * | 2011-09-16 | 2012-01-11 | 李建成 | 网络应用中的密码验证方法及系统 |
-
2012
- 2012-06-14 CN CN201210195743XA patent/CN102710416A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030005299A1 (en) * | 2001-06-29 | 2003-01-02 | International Business Machines Corporation | User authorization management system using a meta-password and method for same |
CN1425987A (zh) * | 2001-12-10 | 2003-06-25 | 中国科学院软件研究所 | 强化错乱的分组密码加密方法 |
US20050125698A1 (en) * | 2003-12-05 | 2005-06-09 | Microsoft Corporation | Methods and systems for enabling secure storage of sensitive data |
US20080288776A1 (en) * | 2007-05-17 | 2008-11-20 | Estsoft Corp. | Security method using virtual keyboard |
CN101384032A (zh) * | 2007-09-06 | 2009-03-11 | 中国银联股份有限公司 | 密码短消息屏蔽方法、发送方法及存储方法 |
CN101237320A (zh) * | 2008-02-04 | 2008-08-06 | 西安理工大学 | 利用无穷维超混沌构造单向散列函数进行密码保护的方法 |
CN102158468A (zh) * | 2011-01-26 | 2011-08-17 | 清华大学 | 一种在社交网络服务中分享和获取数据的方法 |
CN102316112A (zh) * | 2011-09-16 | 2012-01-11 | 李建成 | 网络应用中的密码验证方法及系统 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102882675A (zh) * | 2012-10-18 | 2013-01-16 | 杭州也要买电子商务有限公司 | 社交网站用的密码加密方法 |
CN103684758A (zh) * | 2013-11-05 | 2014-03-26 | 广东全通教育股份有限公司 | 一种用户密码混合加密的方法及系统 |
CN103684758B (zh) * | 2013-11-05 | 2016-06-15 | 广东全通教育股份有限公司 | 一种用户密码混合加密的方法及系统 |
CN110944006A (zh) * | 2019-12-10 | 2020-03-31 | 浙江清华长三角研究院 | 一种提供匿名保护的密码黑名单查询方法及其应用 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105760764B (zh) | 一种嵌入式存储设备文件的加解密方法、装置及终端 | |
Dyer et al. | Protocol misidentification made easy with format-transforming encryption | |
CN104333580B (zh) | 一种基于云服务的账户管理系统及其方法 | |
CN106788995B (zh) | 文件加密方法及装置 | |
CN102684877B (zh) | 一种进行用户信息处理的方法及装置 | |
US9455833B2 (en) | Behavioral fingerprint in a white-box implementation | |
US9608822B2 (en) | Method for generating an HTML document that contains encrypted files and the code necessary for decrypting them when a valid passphrase is provided | |
CN103716157A (zh) | 分组多密钥加密方法及装置 | |
SE539602C2 (en) | Generating a symmetric encryption key | |
GB2528959A (en) | Encoder, decoder and method | |
CN103731475A (zh) | 一种数据保护系统 | |
CN102833244A (zh) | 利用指纹信息认证的通信方法 | |
CN104967693A (zh) | 面向云存储的基于全同态密码技术的文档相似度计算方法 | |
CN108809936B (zh) | 一种基于混合加密算法的智能移动终端身份验证方法及其实现系统 | |
CN105812366A (zh) | 服务器、反爬虫系统和反爬虫验证方法 | |
CN104660551A (zh) | 一种基于webservice的数据库访问装置及方法 | |
CN103414727A (zh) | 针对input密码输入框的加密保护系统及其使用方法 | |
CN108683706A (zh) | 一种基于nb-iot云锁通讯的加密算法及其验证方法 | |
CN105827582A (zh) | 一种通信加密方法、装置和系统 | |
CN106778292B (zh) | 一种Word加密文档的快速还原方法 | |
CN104038336A (zh) | 一种基于3des的数据加密方法 | |
CN106549756B (zh) | 一种加密的方法及装置 | |
Gayathri et al. | Hybrid cryptography for random-key generation based on ECC algorithm | |
CN102882675A (zh) | 社交网站用的密码加密方法 | |
CN104683111A (zh) | 一种基于md5的加密方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20121003 |