CN111107095A - 一种基于混合加密的大众密码管理系统 - Google Patents

一种基于混合加密的大众密码管理系统 Download PDF

Info

Publication number
CN111107095A
CN111107095A CN201911366745.9A CN201911366745A CN111107095A CN 111107095 A CN111107095 A CN 111107095A CN 201911366745 A CN201911366745 A CN 201911366745A CN 111107095 A CN111107095 A CN 111107095A
Authority
CN
China
Prior art keywords
user
database
data
information
module
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.)
Granted
Application number
CN201911366745.9A
Other languages
English (en)
Other versions
CN111107095B (zh
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.)
Huainan Normal University
Original Assignee
Huainan Normal University
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 Huainan Normal University filed Critical Huainan Normal University
Priority to CN201911366745.9A priority Critical patent/CN111107095B/zh
Publication of CN111107095A publication Critical patent/CN111107095A/zh
Application granted granted Critical
Publication of CN111107095B publication Critical patent/CN111107095B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • H04L63/0442Network 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 wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • 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/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0631Substitution permutation network [SPN], i.e. cipher composed of a number of stages or rounds each involving linear and nonlinear transformations, e.g. AES algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3006Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters
    • H04L9/302Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters involving the integer factorization problem, e.g. RSA or quadratic sieve [QS] schemes

Landscapes

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

Abstract

本发明公开了一种基于混合加密的大众密码管理系统,包括:用户登录认证模块,用于采用MD5和RSA,对用户登录密码进行认证;用户界面构建模块,用于采用HTML5和CSS、框架Vue,构建基于WWW浏览器的用户界面;用户信息管理模块,用于采用AES和编码算法BASE64,将用户数据加密存入所述数据库中,用于将用户数据解密后显示在用户界面上;系统构建模块,用于采用架构B/S、协议SSL/TLS,构建密码管理系统。本发明仅需要一个密码就可以记住平时日常使用的全部密码,采用MD5twithRSA双重保险,保证用户主密码安全,使用AES轻量级且安全度高的加密算法,极大的减轻了服务器负担;用户界面通过WWW浏览器来实现,将系统功能实现的核心部分集中到服务器上,简化了系统的开发、维护和使用。

Description

一种基于混合加密的大众密码管理系统
技术领域
本发明涉及密码管理技术领域,更具体的涉及一种基于混合加密的大众密码管理系统。
背景技术
现在人们已经进入网络信息大爆炸时代,每个人都会产生大量的账号和密码。随着计算机、互联网的发展,密码成为了验证用户身份的一个最常用的手段,密码的安全也就关系到了用户信息的安全,如何妥善保管海量账号密码,并对非法入侵进行及时的管控,已经成为隐私安全的突出问题。密码很麻烦,也很难记住,有时密码可以被猜到,很容易被破解。虽然有些人试图用指纹和面部扫描技术来取代密码,但这两种方法都不完美,许多人仍然会求助于可靠但令人沮丧的密码。良好的解决方案,不仅可以保护个人隐私和财产,净化网络环境,同时对于社会的和谐、网络隐私生态的健康、国家的发展都有重要的现实意义。国内外类似密码管理软件中比较有名的密码管理软件有1password,lastpass,keepass,Dashlane,但由于上手难度较大,如KeePass。或是服务器不在国内而无法保证国内用户数据安全,如LastPass服务器在美国。导致很多人并不知道有类似软件的存在,依旧使用传统的将密码记在本子上或者将所有网站密码设置成同一个密钥,使所有平台账号安全处于危险之中。近年来我国互联网发送了用户明文密码泄露等几起重大的密码泄露事件,大量用户由于在多个网站使用了相同密码导致用户需要逐个修改各个账号的密码以确保安全。这些实际上暴露了用户使用简单密码和单一密码的巨大风险,为了消除这些风险,许多用户采用不同服务使用不同密码的策略,同时加强密码的强度,不再使用好记的简单密码。这样在安全性提高的同时也带来了记忆困难、输入麻烦、保存不安全等问题。互联网已经完全融入到我们的日常生活中,各种网络服务和软件的登录密码对于我们来说都是非常重要的,在经常浏览各大网站以及使用各种APP时,账号和密码的安全问题越来越突出,我们常常因设置的账号密码过于简单,账号被人盗用而发布有害信息。并且随着某些软件长时间不用,就会忘记一些账号密码,尤其是用户名和密码。
目前,密码的保存和使用工具主要有笔记类工具、在线密码管理服务、本地密码管理服务三类,其中,笔记类工具是将密码明文记录在相应的笔记里,风险很大;在线密码管理服务使用一个主密码将所有密码加密存储在服务器中,安全性有所加强,但是所有风险集中在了主密码上,一旦主密码泄露,所有密码都会被泄露;本地密码管理软件能通过权限等多种机制保证安全性,但是操作相对繁杂,不适合日常使用。而且目前的密码保存使用工具都没有考虑到复杂密码输入的问题,仍需要用户短暂记忆后手动输入,十分不便。
发明内容
本发明实施例提供一种基于混合加密的大众密码管理系统,用以解决上述背景技术中存在的技术问题。
本发明实施例提供一种基于混合加密的大众密码管理系统,包括:用户登录认证模块、用户界面构建模块、用户信息管理模块、数据库和系统构建模块;
所述用户登录认证模块,用于采用消息摘要算法MD5和非对称加密算法RSA,对用户登录密码进行认证;
所述用户界面构建模块,用于采用网页构建标准HTML5和CSS、用户界面构建框架Vue,构建基于WWW浏览器的用户界面;
所述用户信息管理模块,用于采用高级加密标准AES和编码算法BASE64,将用户数据加密存入所述数据库中,并且用于将用户数据解密后显示在用户界面上;
所述数据库,用于保存用户登陆认证信息和用户数据加解密信息;
所述系统构建模块,用于采用浏览器/服务器模式架构B/S、网络安全加密协议SSL/TLS,构建包括用户登录认证模块、用户信息管理模块、数据库、用户界面构建模块的密码管理系统。
进一步地,所述用户登录认证模块,具体用于:
为数据库服务器和用户服务器生成RSA密钥对,其中,数据库服务器持有私钥,用户服务器持有公钥;
将用户首次注册账号和密码通过MD5数字摘要后存入数据库服务器;
当用户请求登陆时,将数据库服务器用户账号信息通过私钥签名传入用户服务器中,用户服务器通过公钥验证后,与用户当前提交的账号和密码的MD5值对比,当对比成功后允许用户登陆,当对比失败后拒绝用户登陆。
进一步地,本发明实施例提供一种基于混合加密的大众密码管理系统,还包括:自学习异地登陆模块;所述自学习异地登陆模块,用于:
当用户登陆时,提交用户公网IP地址,并检查用户登陆地址是否在IP表中,若用户登陆的地址在IP表中允许用户登陆,并更改IP表中该地址的最后登陆时间,反之需要用户输入用户注册时生成的专属密钥,通过User表进行匹配密钥是否正确,匹配成功后允许用户登陆,并将该地址添加到IP表中,密钥匹配失败,拒绝用户登陆。
进一步地,所述IP表中通过时间字段判断当前时间和最后一次登陆时间是否超过一个月,当超过一个月时删除记录。
进一步地,所述用户信息管理模块,具体用于:
为每个用户生成密钥串:将不同用户生成的密钥串存放在文本文件中保存起来,在使用时文本文件的数据读出重新生成密钥串;
对用户数据加密:采用cipher.doFinal函数对用户数据进行加密形成字节数组,将字节数组中的信息采用BASE64编码转换成字符串存入数据库中;
对用户数据解密:将用户加密的数据从数据库中取出,采用BASE64解码生成字符数组,然后通过cipher.doFinal函数将数据解密,并显示用户数据。
进一步地,所述用户信息管理模块,还用于:用户数据添加子模块、用户数据删除子模块、用户基本信息修改子模块、用户查询子模块和用户退出子模块。
进一步地,所述用户数据添加子模块,用于采用DoPost函数接受用户信息,通过SQL语句查询,查看用户需要存入的信息是否存入到了数据库;假如数据库中没有用户要插入的数据,则采用SQL语句的insert存入到数据库中,假如数据库中有用户需要存入数据库的信息,则提醒用户插入重复;
所述用户数据删除子模块,用于将用户从浏览器上输入的要删除的账号信息,进行AES加密,采用SQL语句进行查询,查看数据库中是否有用户要删除的数据;假如数据库中有用户要删除的账号信息,则采用SQL的delete语句进行删除,假如数据库中没有用户要删除的账号信息,则提醒用户删除失败。
进一步地,所述用户基本信息修改子模块,用于将用户传入的备注信息和账号信息进行AES加密,与数据库已存入的用户数据进行匹配,如果匹配到已存入的用户数据,则将用户修改的信息录入数据库中,如果数据库中数据与用户需要修改的数据不匹配,则提醒用户数据不存在,修改出错。
进一步地,所述用户查询子模块,用于将保存的用户个人密钥取出,获取用户专属的AES密钥;采用SQL语句select语句将该用户存入数据库中的数据进行解密取出,显示给用户查看。
进一步地,所述数据库为采用数据库管理工具Mysql构建的数据库。
本发明实施例提供一种基于混合加密的大众密码管理系统,与现有技术相比,其有益效果如下:
本发明采用B/S框架作为整体架构,MD5和RSA算法作为用户账号主密码验证桥梁,采用AES算法和BASE64编码为用户所提交需要保管的信息进行加密上传到服务器和解密在浏览器显示;Mysql数据库存储用户信息数据。系统页面搭建采用HTML5+CSS和Vue框架将用户存储信息呈现出来;服务器搭建采用Tomcat 8.5.39中的SSL/TLS协议保证用户信息传输安全。即使用本系统仅需要一个密码就可以记住平时日常使用的全部密码,采用MD5twithRSA双重保险,保证用户主密码安全,使用AES轻量级且安全度高的加密算法,极大的减轻了服务器负担;提醒用户更换主密码,防止密码泄露,保证主密码安全,系统集成高复杂度随机复杂密码生成功能,帮助用户更好维护自身密码安全;本发明的用户界面是通过WWW浏览器来实现,将系统功能实现的核心部分集中到服务器上,避免我们再去下载软件系统,简化了系统的开发、维护和使用;本发明操作简单便捷,将大量复杂加密数据交互操作封装到底层,真正做到面向大众用户,能够有效的保障用户的数据安全,以及友好的管理界面,快捷的管理功能,让只需要会计算机基本操作,有大量不同的密码需要管理的用户就可以上手本系统。
附图说明
图1为本发明实施例提供的喷泉模型示意图;
图2为本发明实施例提供的基于混合加密的大众密码管理系统功能示意图;
图3为本发明实施例提供的RSA工作流程示意图;
图4为本发明实施例提供的用户账号密码错误界面;
图5为本发明实施例提供的用户主页面;
图6为本发明实施例提供的添加信息界面;
图7为本发明实施例提供的添加信息完成后显示界面;
图8为本发明实施例提供的修改信息界面;
图9为本发明实施例提供的修改信息完成后显示界面;
图10为本发明实施例提供的删除信息界面;
图11为本发明实施例提供的删除信息完成后显示界面;
图12为本发明实施例提供的用户登陆界面。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参见图1~3,本发明实施例提供一种基于混合加密的大众密码管理系统,该系统包括:用户登录认证模块、用户界面构建模块、用户信息管理模块、数据库和系统构建模块。
用户登录认证模块,用于采用消息摘要算法MD5和非对称加密算法RSA,对用户登录密码进行认证。
用户界面构建模块,用于采用网页构建标准HTML5和CSS、用户界面构建框架Vue,构建基于WWW浏览器的用户界面。
用户信息管理模块,用于采用高级加密标准AES和编码算法BASE64,将用户数据加密存入所述数据库中,并且用于将用户数据解密后显示在用户界面上。
数据库,用于保存用户登陆认证信息和用户数据加解密信息。
系统构建模块,用于采用浏览器/服务器模式架构B/S、网络安全加密协议SSL/TLS,构建包括用户登录认证模块、用户信息管理模块、数据库、用户界面构建模块的密码管理系统。
需要说明的是,目前大多数密码管理软件采用C/S架构,电脑上即客户端——服务器,手机则对应的是APP——服务器。占用电脑手机内存,且涉及侵犯用户个人隐私的权限,对用户生活带来了不便影响。采用B/S架构,可以避免上述情况发生,当用户在使用软件服务的情况下,保护用户隐私安全,本系统采用B/S框架,所以用户的登陆认证,以及用户需提交到系统的信息加密解密作为系统的设计核心。即采用MD5withRSA算法作为用户登陆认证,AES算法和BASE64编码作为用户提交到系统信息的加解密。页面搭建采用HTML5+CSS和Vue框架。采用Mysql作为本系统数据库,保存用户登陆认证和用户信息加解密数据。本系统开发遵循软件工程流程,保证系统的可用性和后期维护,系统升级的可能。本系统采用喷泉模型(图1)进行开发,其中喷泉模型是一种支持面向对象的开发模型,体现迭代和无间隙特征。迭代:各开发活动常常重复工作多次,相关功能在每次迭代中随之加入系统。无间隙:开发活动之间不存在明显边界。
为了解决大量账户信息容易忘记、被窃取的问题,以及需要记忆大量复杂的密码来保证安全,密码的记忆和输入变得越来越困难,本发明在研究了文本记录、浏览器自动保存密码、本地化用户密码的基础上,提出了基于B/S架构、Tomcat 8.5.39中的SSL/TLS协议、AES/BASE64技术、MD5withRSA技术、Vue.js的防泄露密码使用管理系统的设计,帮助用户记忆大量密码以及方便输入,提醒用户更换密码保证账号安全。
下面对用户登录认证模块、用户界面构建模块、用户信息管理模块、数据库和系统构建模块进行具体说明:
用户登陆认证
采用MD5withRSA技术作为用户登陆的认证技术,其中主要流程如图3所示。
本发明为数据库服务器和用户服务器生成RSA密钥对,其中数据库服务器持有私钥,用户服务器持有公钥。将用户首次注册账号密码时通过MD5数字摘要后存入数据库服务器。当用户请求登陆时,将数据库服务器用户账号信息通过私钥签名传入用户服务器中,用户服务器通过公钥验证后,与用户当前提交系统的账号和密码的MD5值对比,对比成功后允许用户登陆系统,当验证失败时拒绝用户登陆系统。
实现流程:初始化密钥对;生成RSA密钥对,其中RSAPublicKey作为公钥,RSAPrivateKey作为私钥;执行加密,将数据库服务器中的数据进行私钥加密传入用户服务器;验证签名,用户服务器将数据库服务器中传来的数据通过公钥验证后与当前用户输入系统的信息比对是否一致。
自学习异地登陆技术
当用户登陆时,系统向服务器提交用户公网IP地址,并检查用户登陆地址是否在IP表中。若用户登陆的地址在IP表中允许用户登陆系统,并更改IP表中该地址的最后登陆时间。反之,需要用户输入用户注册时系统生成的专属密钥,通过User表进行匹配密钥是否正确,匹配成功后允许用户登陆系统,并将该地址添加到IP表中。密钥匹配失败,拒绝用户登陆系统。
IP表中通过时间字段判断当前时间和最后一次登陆时间是否超过一个月,当超过一个月时删除记录。这样既可以减少表的记录提升工作效率也可以间接加强了异地登陆安全认证问题。
实验流程:获取公网IP;查询IP是否在IP表中,当IP地址在IP表中允许用户访问系统并修改IP表中最后一次登陆时间。当用户的登陆的地址不在此表中时,需要用户输入密钥通过User表中查询密钥是否存在。存在允许用户等系统,不存在时拒绝用户登陆系统;当用户的数据不在此表中,让用户输入密钥通过User表中查询密钥是否存在,存在允许用户等系统,不存在时拒绝用户登陆系统;删除IP表中登陆记录大于1个月记录的触发器。
用户数据增加删除
前面介绍了如何用AES进行数据加解密,接下来将介绍如何将数据存入数据库和数据删除实现。
用户添加:其中DoPost函数接受前台发来的信息。将用户从浏览器添加到账号信息经过封装好的AES加密函数加密后进行SQL语句查询看用户需要存入的信息是否存入到了数据库,假如库中没有用户要插入的数据采用sql语句的insert存入到数据库中,假如库中有用户需要存入数据库的信息,则由前台提醒用户插入重复。本发明为用户提供复杂密码生成密钥算法,帮助用户设置更复杂的密码,极大的保证用户数据安全。
用户删除:将用户从浏览器上输入的要删除的账号信息,传入后台,经过AES加密进行加密,采用sql语句进行查询,进行匹配库中是否有用户要删除的数据。如果有采用sql的delete语句进行删除,假如库中没有用户要删除的账号信息,则由前台提醒用户删除失败数据中没有要删除的数据。
数据加解密技术
本系统采用AES算法和BASE64编码将用户数据加密存入数据库,当用户需要查看时将数据进行解密显示在浏览器上,方便用户随时随地查看。AES简介高级加密标准。
实现流程:为每个用户生成密钥串;KeyGenerator.getInstace(“AES”)不同用户生成密钥存放在文本文件中保存起来,在使用时文本文件的数据读出重新生成密钥,方便用户加密解密;将用户数据加密,采用cipher.doFinal函数对用户信息进行加密成字节数组,将字节数组中信息采用BASE64编码转换成字符串存入数据库中;用户数据解密,将用户加密的数据从数据库中取出,采用BASE64解码生成字符数组,然后通过cipher.doFinal函数将数据解密,传到前端给用户显示数据。
用户基本信息修改
这个模块主要功能就是对用户已录入系统的信息进行修改,避免用户进行删除再插入的这种多余操作,方便用户使用。将用户前台传入的备注信息和账号信息传入后端服务器,有服务器将用户传入的数据进行AES加密,与数据库已存入用户的数据进行匹配,如果匹配到用户存入的信息,将用户修改的信息录入数据库中,如果库中数据与用户需要修改的数据不匹配,由前台提醒用户数据不在系统中,修改出错。
用户查询
先将保存在服务器中的用户个人密钥取出,获取用户专属的AES密钥,用于下一步解密操作。采用SQL语句select语句将该用户存在数据库中的数据进行解密取出,由前台VUE框架进行显示让用户查看。
系统架构
本系统采用B/S作为整体框架,采用MD5withRSA和AES作为底层数据库加密,保护底层安全。所谓B/S架构即浏览器和服务器模式,在这种架构下,用户界面是通过WWW浏览器来实现,极少部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现,这种模式统一了客户端,将系统功能实现的核心部分集中到服务器上,避免我们再去下载软件系统,简化了系统的开发、维护和使用,大大减少了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低用户的总体成本。本系统主要采用B/S架构且面向大众,操作简单易学,功能强大,能够有效地帮助用户管理账户与密码,为生活带来便利。
而对于C/S架构而言,其主要采用两层结构。服务器负责数据的管理,客户机负责完成与用户的交互任务。客户端需要安装专门的客户端软件,相比较于B/S架构,客户端安装时工作量大,而且任何一台电脑都会出问题,那么在此基础上,维护和升级成本非常高。并且客户端的操作系统一般也会受到限制,所以并不是任何用户都可以适用,传统的C/S体系结构虽然采用的是开放模式,但只是系统开发一级的开放性,在特定的应用中无论是Client端还是Server端都还需要特定的软件支持,由于没能提供用户真正期望的开放环境,C/S结构的软件需要针对不同的操作系统开发不同版本的软件,加之产品的更新换代十分快,已经很难适应百台电脑以上局域网用户同时使用,而且代价高,效率低。所以相比较而言,只需要会计算机基本操作,并且有大量不同的密码需要管理的用户就可以上手本系统,贴心为大众用户提供安全服务。
综上所述,本发明采用B/S框架作为设计核心,希望能跟市面上C/S架构的密码管理软件区分开,保证用户可以随时随地查看自己的信息,不需要安装客户端或APP占用电脑和手机的空间。采用B/S架构不需要客户端和APP的那样像让用户授权权限更好的让用户能够更好保护自己的隐私。
进一步,本发明采用MD5withRSA加密,通过MD5数字签名将用户信息进行签名再采用RSA非对称加密进一步保护用户数据安全,为用户主账号信息上了二道锁,进一步保护用户安全。众所周知,支付宝使用的是RSA算法进行数据加密。在支付宝开源SDK中提供了RSA工具类,可以方便的对数据进行加解密。所以采用MD5withRSA加密会比多层MD5加密和SHA加密更加安全可靠。用户信息存储采用AES加密,这种轻量级且安全度高的加密会比非对称加密运算速度更快,且安全性高。
进一步,本发明的操作友好简单,仅需要一个密码就可以记住全部密码。使用本系统的用户,只需要记住自己的主密码就可以,就可以进入系统进行账号密码管理,且系统提醒用户更换密码主密码安全。作品操作简单,将大量复杂加密数据交互操作封装到底层,真正做到面向大众用户,只需要会计算机基本操作,就可以对系统进行信息录入,修改和删除,自带复杂密码算法,更好的帮助用户更好的保护自身账号。
进一步,本发明提出了一个新型的密码使用管理系统的设计,帮助用户记忆大量不同的密码,同时也能方便地在计算机中进行输入。本发明的密码管理系统,还可以为用户提供友好的管理界面,快捷的管理功能,方便、准确的记录网站用户名与密码,以及各种有效的信息,对于大众而言,使网民的冲浪之旅更加安全、方便、快捷。
系统测试
1、登陆测试
为了测试方便(用户实际登陆必须经过强口令认证),将用户名设置为admin,密码设置成admin。当输入错误的密码时,如123456进行报错,提醒用户账号密码错误,阻止非法用户进入系统,参见图4。当用户输入正确密码时,进入用户主页面,参见图5。
2、添加信息测试
添加平台信息为“信息安全作品赛”,账号123456,密码xxaqzps123,参见图6。用户界面显示信息,参见图7。
3、修改信息测试
将密码修改成系统自带复杂密码,以保证用户用户的数据安全,当用户需要登陆时可以直接登陆本系统查看密码,参见图8。修改完成后用户界面显示,参见图9。
4、删除信息测试
删除信息用户测试界面,参见图10。删除完成后用户界面显示,参见图11。
5、退出测试
当用户按下退出键时返回用户登陆界面,参见图12。
测试结果表明:本系统能够有效地帮助用户管理大量账户密码以及有效防止黑客攻破获取用户信息,大大提高了安全性能。
以上公开的仅为本发明的几个具体实施例,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (10)

1.一种基于混合加密的大众密码管理系统,其特征在于,包括:用户登录认证模块、用户界面构建模块、用户信息管理模块、数据库和系统构建模块;
所述用户登录认证模块,用于采用消息摘要算法MD5和非对称加密算法RSA,对用户登录密码进行认证;
所述用户界面构建模块,用于采用网页构建标准HTML5和CSS、用户界面构建框架Vue,构建基于WWW浏览器的用户界面;
所述用户信息管理模块,用于采用高级加密标准AES和编解码算法BASE64,将用户数据加密存入所述数据库中,并且用于将用户数据解密后显示在用户界面上;
所述数据库,用于保存用户登陆认证信息和用户数据加解密信息;
所述系统构建模块,用于采用浏览器/服务器模式架构B/S、网络安全加密协议SSL/TLS,构建包括用户登录认证模块、用户信息管理模块、数据库、用户界面构建模块的密码管理系统。
2.如权利要求1所述的基于混合加密的大众密码管理系统,其特征在于,所述用户登录认证模块,具体用于:
为数据库服务器和用户服务器生成RSA密钥对,其中,数据库服务器持有私钥,用户服务器持有公钥;
将用户首次注册账号和密码通过消息摘要算法MD5数字摘要后存入数据库服务器;
当用户请求登陆时,将数据库服务器用户账号信息通过私钥签名传入用户服务器中,用户服务器通过公钥验证后,与用户当前提交的账号和密码的消息摘要算法MD5值对比,当对比成功后允许用户登陆,当对比失败后拒绝用户登陆。
3.如权利要求1所述的基于混合加密的大众密码管理系统,其特征在于,还包括:自学习异地登陆模块;所述自学习异地登陆模块,用于:
当用户登陆时,提交用户公网IP地址,并检查用户登陆地址是否在IP表中,若用户登陆的地址在IP表中允许用户登陆,并更改IP表中该地址的最后登陆时间,反之需要用户输入用户注册时生成的专属密钥,通过User表进行匹配密钥是否正确,匹配成功后允许用户登陆,并将该地址添加到IP表中,密钥匹配失败,拒绝用户登陆。
4.如权利要求3所述的基于混合加密的大众密码管理系统,其特征在于,所述IP表中通过时间字段判断当前时间和最后一次登陆时间是否超过一个月,当超过一个月时删除记录。
5.如权利要求1所述的基于混合加密的大众密码管理系统,其特征在于,所述用户信息管理模块,具体用于:
为每个用户生成密钥串:将不同用户生成的密钥串存放在文本文件中保存起来,在使用时文本文件的数据读出重新生成密钥串;
对用户数据加密:采用cipher.doFinal函数对用户数据进行加密形成字节数组,将字节数组中的信息采用编解码算法BASE64编码转换成字符串存入数据库中;
对用户数据解密:将用户加密的数据从数据库中取出,采用编解码算法BASE64解码生成字符数组,然后通过cipher.doFinal函数将数据解密,并显示用户数据。
6.如权利要求1所述的基于混合加密的大众密码管理系统,其特征在于,所述用户信息管理模块,还用于:用户数据添加子模块、用户数据删除子模块、用户基本信息修改子模块、用户查询子模块和用户退出子模块。
7.如权利要求6所述的基于混合加密的大众密码管理系统,其特征在于,
所述用户数据添加子模块,用于采用DoPost函数接受用户信息,通过SQL语句查询,查看用户需要存入的信息是否存入到了数据库;假如数据库中没有用户要插入的数据,则采用SQL语句的insert存入到数据库中,假如数据库中有用户需要存入数据库的信息,则提醒用户插入重复;
所述用户数据删除子模块,用于将用户从浏览器上输入的要删除的账号信息,进行高级加密标准AES加密,采用SQL语句进行查询,查看数据库中是否有用户要删除的数据;假如数据库中有用户要删除的账号信息,则采用SQL的delete语句进行删除,假如数据库中没有用户要删除的账号信息,则提醒用户删除失败。
8.如权利要求6所述的基于混合加密的大众密码管理系统,其特征在于,所述用户基本信息修改子模块,用于将用户传入的备注信息和账号信息进行高级加密标准AES加密,与数据库已存入的用户数据进行匹配,如果匹配到已存入的用户数据,则将用户修改的信息录入数据库中,如果数据库中数据与用户需要修改的数据不匹配,则提醒用户数据不存在,修改出错。
9.如权利要求6所述的基于混合加密的大众密码管理系统,其特征在于,所述用户查询子模块,用于将保存的用户个人密钥取出,获取用户专属的高级加密标准AES密钥;采用SQL语句select语句将该用户存入数据库中的数据进行解密取出,显示给用户查看。
10.如权利要求1所述的基于混合加密的大众密码管理系统,其特征在于,所述数据库为采用数据库管理工具Mysql构建的数据库。
CN201911366745.9A 2019-12-26 2019-12-26 一种基于混合加密的大众密码管理系统 Active CN111107095B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911366745.9A CN111107095B (zh) 2019-12-26 2019-12-26 一种基于混合加密的大众密码管理系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911366745.9A CN111107095B (zh) 2019-12-26 2019-12-26 一种基于混合加密的大众密码管理系统

Publications (2)

Publication Number Publication Date
CN111107095A true CN111107095A (zh) 2020-05-05
CN111107095B CN111107095B (zh) 2022-05-24

Family

ID=70425490

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911366745.9A Active CN111107095B (zh) 2019-12-26 2019-12-26 一种基于混合加密的大众密码管理系统

Country Status (1)

Country Link
CN (1) CN111107095B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112149177A (zh) * 2020-09-16 2020-12-29 河北盖隆网络科技有限公司 一种网络信息安全的双向保护方法和系统
CN114070557A (zh) * 2021-11-16 2022-02-18 中国银行股份有限公司 一种密码密钥的分发管理方法及系统
CN114254280A (zh) * 2021-12-13 2022-03-29 福建智康云医疗科技有限公司 一种人工智能大数据分析处理管理方法以及中台

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102325026A (zh) * 2011-07-14 2012-01-18 易讯天空计算机技术(深圳)有限公司 账号密码安全加密系统
CN103220139A (zh) * 2013-04-19 2013-07-24 中国建设银行股份有限公司 Atm的保险箱密码的管理方法和系统
CN106845177A (zh) * 2016-12-26 2017-06-13 广州市申迪计算机系统有限公司 密码管理方法及系统
CN107579972A (zh) * 2017-09-01 2018-01-12 掌阅科技股份有限公司 密码管理方法、电子设备、计算机存储介质
US20180278593A1 (en) * 2017-03-23 2018-09-27 Honeywell Internationa Inc. Systems and methods for reducing cyber security incidents with intelligent password management

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102325026A (zh) * 2011-07-14 2012-01-18 易讯天空计算机技术(深圳)有限公司 账号密码安全加密系统
CN103220139A (zh) * 2013-04-19 2013-07-24 中国建设银行股份有限公司 Atm的保险箱密码的管理方法和系统
CN106845177A (zh) * 2016-12-26 2017-06-13 广州市申迪计算机系统有限公司 密码管理方法及系统
US20180278593A1 (en) * 2017-03-23 2018-09-27 Honeywell Internationa Inc. Systems and methods for reducing cyber security incidents with intelligent password management
CN107579972A (zh) * 2017-09-01 2018-01-12 掌阅科技股份有限公司 密码管理方法、电子设备、计算机存储介质

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112149177A (zh) * 2020-09-16 2020-12-29 河北盖隆网络科技有限公司 一种网络信息安全的双向保护方法和系统
CN114070557A (zh) * 2021-11-16 2022-02-18 中国银行股份有限公司 一种密码密钥的分发管理方法及系统
CN114254280A (zh) * 2021-12-13 2022-03-29 福建智康云医疗科技有限公司 一种人工智能大数据分析处理管理方法以及中台
CN114254280B (zh) * 2021-12-13 2024-03-15 福建智康云医疗科技有限公司 一种人工智能大数据分析处理管理方法以及中台

Also Published As

Publication number Publication date
CN111107095B (zh) 2022-05-24

Similar Documents

Publication Publication Date Title
US11470054B2 (en) Key rotation techniques
CN105103488B (zh) 借助相关联的数据的策略施行
CN100533456C (zh) 安全代码生成方法和使用方法及用于其的可编程设备
US9858401B2 (en) Securing transactions against cyberattacks
JP2020167744A (ja) フェデレーテッドキー管理
US8555079B2 (en) Token management
CN111107095B (zh) 一种基于混合加密的大众密码管理系统
JP6572461B1 (ja) データ管理システムおよびデータ管理方法
CN102932136B (zh) 用于管理加密密钥的系统和方法
JP2020009500A (ja) データセキュリティサービス
US8789150B2 (en) System and method for user authentication
US9300639B1 (en) Device coordination
US20130208893A1 (en) Sharing secure data
CN107409129B (zh) 使用访问控制列表和群组的分布式系统中的授权
CN110084599A (zh) 密钥处理方法、装置、设备和存储介质
CN100459495C (zh) 一种公开加密方式的口令动态加密输入方法
Al-Sarayreh et al. A trade-off model of software requirements for balancing between security and usability issues
KR101379854B1 (ko) 공인인증서 패스워드를 보호하는 장치 및 방법
JP5361850B2 (ja) アクセス管理システム
US11558371B2 (en) Authentication system(s) with multiple authentication modes using one-time passwords of increased security
KR20090050152A (ko) 단말기의 정보 관리 장치 및 그 방법
Maqbali Strengthening Password-Based Authentication
Gaata et al. JOURNAL LA MULTIAPP
Ghimire Data encryption in Android
Aziz et al. Web Based Locker Booking System with Multifactor Authentication for Wajasakti Sdn Bhd

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant