CN105491030A - 一种网站用户密码加密和验证方法 - Google Patents

一种网站用户密码加密和验证方法 Download PDF

Info

Publication number
CN105491030A
CN105491030A CN201510845045.3A CN201510845045A CN105491030A CN 105491030 A CN105491030 A CN 105491030A CN 201510845045 A CN201510845045 A CN 201510845045A CN 105491030 A CN105491030 A CN 105491030A
Authority
CN
China
Prior art keywords
time
random code
verification
password
authentication sequence
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
Application number
CN201510845045.3A
Other languages
English (en)
Inventor
黄健
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Individual
Original Assignee
Individual
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Priority to CN201510845045.3A priority Critical patent/CN105491030A/zh
Publication of CN105491030A publication Critical patent/CN105491030A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0815Network architectures or network communication protocols for network security for authentication of entities providing single-sign-on or federations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)

Abstract

本发明属于网站用户密码加密与验证领域,主要包括以下步骤:用户来到登陆页面,输入密码并提交。如果密码输入时间不在登陆限定时间范围内则回到登陆页面。将登录密码、验证时间和随机码按顺序组合成验证序列,放入MD5运算DES对称加密运算,得到密钥。将密钥与验证信息匹配,如不匹配则回到登陆页面。将验证时间更新为当前时间,将随机码更新为由随机函数生成的长度大于2个字符的字符串,将登录密码、验证时间和随机码按顺序组合成验证序列,放入MD5运算DES对称加密运算,得到密钥将。将验证信息更新为密钥。本发明公开的一种网站用户密码加密和验证方法,能够解决由于现有技术中用户密码容易被恶意破解而造成信息安全性不高的问题。

Description

一种网站用户密码加密和验证方法
技术领域
本发明属于网络安全的保护网站用户数据领域,具体涉及一种网站用户密码加密和验证方法。
背景技术
现行网站的用户密码的保存,都是将明文或者只进行了简单的MD5加密得到的字符串保存在数据库中用户表的密码字段中,这样只要攻击者得到了数据库,就会很轻易的得到用户密码,攻击者除了会在本网站使用,还会拿到别的网站去尝试登陆,造成更大的破坏与损失。如去年的CSDN被爆就是用明文保存到数据库中,引发了密码泄露,而只用MD5加密的密码,如果用户密码不长,可以通过暴力输入就可以获得。而且这些密码保存到数据库中总是固定的,如明文的:123456,或者经过MD5加密的123456为:49ba59abbe56e057,使得黑客很容易猜到密码。此外,现在键盘木马的流行,使得用户的明文密码容易泄露。
发明内容
本发明的发明目的是:针对上述技术问题,提供一种网站用户密码加密和验证方法,本方法并不保存用户的实际明文密码,只保存经过MD5运算、DES对称加密运算后得到的密钥,以实现即使黑客攻破了网站数据库,取得了用户的密钥,也无法拿去别的网站使用;此外本方法使用了密码限定时间,登陆者点击提交的时间必须在限定时间范围内,由此防止黑客通过键盘木马等恶意软件取得了用户的明文密码来登陆网站系统。
为了解决上述技术问题,本发明技术方案为:
一种网站用户登录密码加密和验证方法,所述网站存储有验证时间、验证信息、随机码和登陆限定时间,包括以下步骤:
步骤1:当用户开始输入登录密码时,记录输入时间点,当用户输入完登录密码提交到服务器时,记录提交时间点;
步骤2:将所述提交时间点减去输入时间点,得到时间差,若时间差小于登陆限定时间;则进入步骤3,否则返回登录页面;
步骤3:将所述登录密码、验证时间和随机码按顺序组合成验证序列;
步骤4:将验证序列作为参数放入MD5运算DES对称加密运算,得到密钥;
步骤5:将所述密钥与所述验证信息进行匹配对比;若匹配,将所述验证时间更新为当前时间,将所述随机码更新为由随机函数生成的长度大于2个字符的字符串,进入步骤6;否则,返回登陆页面;
步骤6:将所述登录密码、验证时间和随机码按顺序组合成验证序列;
步骤7:将验证序列作为参数放入MD5运算、DES对称加密运算,得到密钥;
步骤8:将所述验证信息更新为密钥。
进一步地,所述MD5运算、DES对称加密运算,包括以下步骤:
步骤1:将所述验证序列中的随机码取出,按倒序重新组合随机码;
步骤2:将所述登录密码、验证时间和随机码按顺序重新组合成验证序列;
步骤3:将所述验证序列进行MD5运算,得到加密数据;
步骤4:将步骤3所述加密数据、服务器域名和服务器IP地址分别作为DES对称加密算法所需要的三个参数字段来参与DES对称加密运算,得到密钥;
本发明有益效果是:
(1)本方法并不保存用户的实际明文密码,即使黑客获得此字段也无法去别的网站使用;
(2)可以防止黑客通过键盘木马等恶意软件取得了用户的密码,到目标网站使用,特别针对网站管理员用户。
附图说明
图1为本发明的密码加密和验证方法的流程图。
具体实施方式
本发明公开了一种网站用户登录密码加密和验证方法。
以下结合附图对本发明实施进行说明。
实施例一:(普通用户的登录方式)
1、用户A登陆以前,网站数据库中存储有用户A验证时间、验证信息、随机码和登陆限定时间,其中验证时间为用户上次成功登陆网站时间,如(2015/10/2714:54:41),验证信息为用户上次成功登陆网站后由本发明的加密算法得到字符串,如(p73M3PPEa98lkGSGglXLWjHPEphVfsXhtpFs+siE/3HTj9m0YJFp/A==),随机码为用户上次成功登陆网站后由随机函数生成的长度大于2个字符的字符串,如(NJj),登陆限定时间为网站管理员为普通用户设置的统一的一个时间范围,用户必须在此时间范围内把密码输入完毕并提交到服务器,才能进入下一步,否则将会提示密码错误。此处的时间范围优选为0.5秒-20秒,最少设置为0.5秒的意义在于,一般来说,用户输入密码的时间,不会少于0.5秒,但是如果是黑客登陆,由于要尝试登陆的用户数量巨大,手工一个一个输入密码比较不现实,因此其用的可能会是自动化的密码登陆器,采用这种方法登陆的话,密码将会在0.5秒内完成,将被拒绝登陆。
2、用户A开始输入登录密码(密码为:abcdef)的时候,服务器记录输入时间点,当用户输入完登录密码提交到服务器时,记录提交时间点;
3、将所述提交时间点减去输入时间点,得到时间差,若时间差小于登陆限定时间;则进入步骤3,否则返回登录页面;
4、将所述登录密码、验证时间和随机码按顺序组合成验证序列,如(abcdef2015/10/2714:54:41NJj);将此验证序列作为参数放入MD5运算、DES对称加密运算,包括以下步骤:
步骤1:将所述验证序列中的随机码取出,按倒序重新组合随机码;
步骤2:将所述登录密码、验证时间和随机码按顺序重新组合成验证序列,即(abcdef2015/10/2714:54:41jJN);
步骤3:将所述验证序列进行MD5运算,即:
System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(Trim(“abcdef2015/10/2714:54:41jJN”),"MD5"),得到加密数据(27191FF766C57A48E1BF697BAD778F57);
步骤4:将步骤3所述加密数据(27191FF766C57A48E1BF697BAD778F57)、服务器域名(www.abc.com)和服务器IP地址(192.168.1.1)分别作为DES对称加密算法所需要的三个参数字段来参与DES对称加密运算,得到密钥(p73M3PPEa98lkGSGglXLWjHPEphVfsXhtpFs+siE/3HTj9m0YJFp/A==);
5、将所述密钥与所述验证信息进行匹配对比;若匹配,将所述验证时间更新为当前时间(2015/10/2714:54:41),将所述随机码更新为由随机函数生成的长度大于2个字符的字符串(Vfs),进入下一步;否则,返回登陆页面;
6、将所述登录密码、验证时间和随机码按顺序组合成验证序列,如(abcdef2015/10/2714:54:41Vfs,将此验证序列作为参数放入MD5运算、DES对称加密运算,包括以下步骤:
步骤1:将所述验证序列中的随机码取出,按倒序重新组合随机码;
步骤2:将所述登录密码、验证时间和随机码按顺序重新组合成验证序列,即(abcdef2015/10/2714:54:41sfV);
步骤3:将所述验证序列进行MD5运算,即:
System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(Trim(“abcdef2015/10/2714:54:41sfV”),"MD5"),得到加密数据(27191FF766C57A48E1BF697BAD778F57);
步骤4:将步骤3所述加密数据(8C76C9BB5933EEAC7B1A084145BFE31C)、服务器域名(www.abc.com)和服务器IP地址(192.168.1.1)分别作为DES对称加密算法所需要的三个参数字段来参与DES对称加密运算,得到密钥(campOLqgGV5Qq8vFKSoelm0nIcQ2aLm+1tfQs6Lg9aF5R/N/b3e7uQ==);
7、将所述验证信息更新为密钥。
实施例二:(网站管理员B的登录方式)
1、用户B登陆以前,网站数据库中存储有用户B验证时间、验证信息、随机码和登陆限定时间,其中验证时间为用户上次成功登陆网站时间,如(2015/10/2714:54:41),验证信息为用户上次成功登陆网站后由本发明的加密算法得到字符串,如:(p73M3PPEa98lkGSGglXLWjHPEphVfsXhtpFs+siE/3HTj9m0YJFp/A==),随机码为用户上次成功登陆网站后由随机函数生成的长度大于2个字符的字符串,如(NJj),登陆限定时间为网站管理员为普通用户设置的统一的一个时间范围,用户必须在此时间范围内把密码输入完毕并提交到服务器,才能进入下一步,否则将会提示密码错误。此处的时间范围优选为20秒-25秒,最少设置为20秒的意义在于,一般来说,不论是用户手工输入密码,还是使用密码登陆器输入密码,都不会长达20秒,因此将登陆限定时间范围设置在20秒-25秒的这一特定时间范围内,能规避以上风险。
2、用户A开始输入登录密码(密码为:abcdef)的时候,服务器记录输入时间点,当用户输入完登录密码提交到服务器时,记录提交时间点;
3、将所述提交时间点减去输入时间点,得到时间差,若时间差小于登陆限定时间;则进入步骤3,否则返回登录页面;
4、将所述登录密码、验证时间和随机码按顺序组合成验证序列,如(abcdef2015/10/2714:54:41NJj);将此验证序列作为参数放入MD5运算、DES对称加密运算,包括以下步骤:
步骤1:将所述验证序列中的随机码取出,按倒序重新组合随机码;
步骤2:将所述登录密码、验证时间和随机码按顺序重新组合成验证序列,即(abcdef2015/10/2714:54:41jJN);
步骤3:将所述验证序列进行MD5运算,即:
System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(Trim(“abcdef2015/10/2714:54:41jJN”),"MD5"),得到加密数据(27191FF766C57A48E1BF697BAD778F57);
步骤4:将步骤3所述加密数据(27191FF766C57A48E1BF697BAD778F57)、服务器域名(www.abc.com)和服务器IP地址(192.168.1.1)分别作为DES对称加密算法所需要的三个参数字段来参与DES对称加密运算,得到密钥(p73M3PPEa98lkGSGglXLWjHPEphVfsXhtpFs+siE/3HTj9m0YJFp/A==);
5、将所述密钥与所述验证信息进行匹配对比;若匹配,将所述验证时间更新为当前时间(2015/10/2714:54:41),将所述随机码更新为由随机函数生成的长度大于2个字符的字符串(Vfs),进入下一步;否则,返回登陆页面;
6、将所述登录密码、验证时间和随机码按顺序组合成验证序列,如(abcdef2015/10/2714:54:41Vfs,将此验证序列作为参数放入MD5运算、DES对称加密运算,包括以下步骤:
步骤1:将所述验证序列中的随机码取出,按倒序重新组合随机码;
步骤2:将所述登录密码、验证时间和随机码按顺序重新组合成验证序列,即(abcdef2015/10/2714:54:41sfV);
步骤3:将所述验证序列进行MD5运算,即:
System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(Trim(“abcdef2015/10/2714:54:41sfV”),"MD5"),得到加密数据(27191FF766C57A48E1BF697BAD778F57);
步骤4:将步骤3所述加密数据(8C76C9BB5933EEAC7B1A084145BFE31C)、服务器域名(www.abc.com)和服务器IP地址(192.168.1.1)分别作为DES对称加密算法所需要的三个参数字段来参与DES对称加密运算,得到密钥(campOLqgGV5Qq8vFKSoelm0nIcQ2aLm+1tfQs6Lg9aF5R/N/b3e7uQ==);
7、将所述验证信息更新为密钥。

Claims (2)

1.一种网站用户登录密码加密和验证方法,其特征在于,所述网站存储有验证时间、验证信息、随机码和登陆限定时间,包括以下步骤:
步骤1:当用户开始输入登录密码时,记录输入时间点,当用户输入完登录密码提交到服务器时,记录提交时间点;
步骤2:将所述提交时间点减去输入时间点,得到时间差,若时间差小于登陆限定时间;则进入步骤3,否则返回登录页面;
步骤3:将所述登录密码、验证时间和随机码按顺序组合成验证序列;
步骤4:将验证序列作为参数放入MD5运算DES对称加密运算,得到密钥;
步骤5:将所述密钥与所述验证信息进行匹配对比;若匹配,将所述验证时间更新为当前时间,将所述随机码更新为由随机函数生成的长度大于2个字符的字符串,进入步骤6;否则,返回登陆页面;
步骤6:将所述登录密码、验证时间和随机码按顺序组合成验证序列;
步骤7:将验证序列作为参数放入MD5运算、DES对称加密运算,得到密钥;
步骤8:将所述验证信息更新为密钥。
2.根据权利要求1所述的一种网站用户密码加密和验证方法,其特征在于:所述MD5运算、DES对称加密运算,包括以下步骤:
步骤1:将所述验证序列中的随机码取出,按倒序重新组合随机码;
步骤2:将所述登录密码、验证时间和随机码按顺序重新组合成验证序列;
步骤3:将所述验证序列进行MD5运算,得到加密数据;
步骤4:将步骤3所述加密数据、服务器域名和服务器IP地址作为DES对称加密算法所需要的三个参数字段来参与DES对称加密运算,得到密钥。
CN201510845045.3A 2015-11-27 2015-11-27 一种网站用户密码加密和验证方法 Pending CN105491030A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510845045.3A CN105491030A (zh) 2015-11-27 2015-11-27 一种网站用户密码加密和验证方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510845045.3A CN105491030A (zh) 2015-11-27 2015-11-27 一种网站用户密码加密和验证方法

Publications (1)

Publication Number Publication Date
CN105491030A true CN105491030A (zh) 2016-04-13

Family

ID=55677746

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510845045.3A Pending CN105491030A (zh) 2015-11-27 2015-11-27 一种网站用户密码加密和验证方法

Country Status (1)

Country Link
CN (1) CN105491030A (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107040514A (zh) * 2016-12-21 2017-08-11 北京安天网络安全技术有限公司 一种基于动态账号密码的防暴破方法、装置及系统
CN107391930A (zh) * 2017-07-21 2017-11-24 华北水利水电大学 山洪灾害分析评价系统及山洪灾害分析评价方法
CN107896145A (zh) * 2017-11-10 2018-04-10 郑州云海信息技术有限公司 一种接口调用防注入方法和系统
CN107911383A (zh) * 2017-12-04 2018-04-13 鼎点视讯科技有限公司 一种密码校验方法和装置
CN110943837A (zh) * 2019-12-13 2020-03-31 辽宁工程技术大学 一种基于改进md5加密算法的用户密码加密方法
CN111445365A (zh) * 2020-04-13 2020-07-24 申珊珊 一种在线远程教育系统
CN116644459A (zh) * 2023-07-27 2023-08-25 泰山学院 基于计算机软件开发的加密系统及方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101309278B (zh) * 2008-06-27 2011-07-06 腾讯科技(深圳)有限公司 一种在客户端保存加密数据的方法及系统
CN103326991A (zh) * 2012-03-20 2013-09-25 北京聚宝网络科技有限公司 一种用户密码加密存储及验证的方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101309278B (zh) * 2008-06-27 2011-07-06 腾讯科技(深圳)有限公司 一种在客户端保存加密数据的方法及系统
CN103326991A (zh) * 2012-03-20 2013-09-25 北京聚宝网络科技有限公司 一种用户密码加密存储及验证的方法

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107040514A (zh) * 2016-12-21 2017-08-11 北京安天网络安全技术有限公司 一种基于动态账号密码的防暴破方法、装置及系统
CN107391930A (zh) * 2017-07-21 2017-11-24 华北水利水电大学 山洪灾害分析评价系统及山洪灾害分析评价方法
CN107896145A (zh) * 2017-11-10 2018-04-10 郑州云海信息技术有限公司 一种接口调用防注入方法和系统
CN107911383A (zh) * 2017-12-04 2018-04-13 鼎点视讯科技有限公司 一种密码校验方法和装置
CN110943837A (zh) * 2019-12-13 2020-03-31 辽宁工程技术大学 一种基于改进md5加密算法的用户密码加密方法
CN110943837B (zh) * 2019-12-13 2023-06-06 辽宁工程技术大学 一种基于改进md5加密算法的用户密码加密方法
CN111445365A (zh) * 2020-04-13 2020-07-24 申珊珊 一种在线远程教育系统
CN116644459A (zh) * 2023-07-27 2023-08-25 泰山学院 基于计算机软件开发的加密系统及方法
CN116644459B (zh) * 2023-07-27 2023-10-20 泰山学院 基于计算机软件开发的加密系统及方法

Similar Documents

Publication Publication Date Title
CN105491030A (zh) 一种网站用户密码加密和验证方法
Thomas et al. Data breaches, phishing, or malware? Understanding the risks of stolen credentials
Lang et al. Security keys: Practical cryptographic second factors for the modern web
CN104469767B (zh) 一套移动办公系统中集成式安全防护子系统的实现方法
Bojinov et al. Kamouflage: Loss-resistant password management
Li et al. The {Emperor’s} new password manager: Security analysis of web-based password managers
TWI519992B (zh) 登錄驗證方法以及系統、電腦存儲介質
CN102685110B (zh) 一种基于指纹特征的通用用户注册认证方法及系统
CN104683354B (zh) 一种基于标识的动态口令系统
CN104618334A (zh) 动态二维码生成验证方法及系统
CN105827395A (zh) 一种网络用户认证方法
CN103780379A (zh) 密码加密方法和系统以及密码校验方法和系统
Lungu et al. Optimizing Anti-Phishing Solutions Based on User Awareness, Education and the Use of the Latest Web Security Solutions.
CN106027228A (zh) 一种网页标识的加解密方法及其加解密系统
Bagheri et al. Weaknesses in a new ultralightweight RFID authentication protocol with permutation—RAPP
CN105187382A (zh) 防止撞库攻击的多因子身份认证方法
Guirat et al. Formal verification of the W3C web authentication protocol
CN110071937A (zh) 基于区块链的登录方法、系统及存储介质
Liang et al. Secureweb: Protecting sensitive information through the web browser extension with a security token
Blue et al. A novel approach for secure identity authentication in legacy database systems
Vishal et al. SOAiCE: simulation of attacks in cloud computing environment
Gabor et al. Security issues related to e-learning education
Ahmed et al. Securing user credentials in web browser: review and suggestion
Xie et al. VOAuth: A solution to protect OAuth against phishing
Wang et al. Stronger user authentication for web browser

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20160413