CN107241184B - 基于改良aes的个人密码生成和管理方法 - Google Patents

基于改良aes的个人密码生成和管理方法 Download PDF

Info

Publication number
CN107241184B
CN107241184B CN201710442508.0A CN201710442508A CN107241184B CN 107241184 B CN107241184 B CN 107241184B CN 201710442508 A CN201710442508 A CN 201710442508A CN 107241184 B CN107241184 B CN 107241184B
Authority
CN
China
Prior art keywords
password
user
encryption
aes
information
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.)
Active
Application number
CN201710442508.0A
Other languages
English (en)
Other versions
CN107241184A (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.)
Northwestern Polytechnical University
Original Assignee
Northwestern Polytechnical 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 Northwestern Polytechnical University filed Critical Northwestern Polytechnical University
Priority to CN201710442508.0A priority Critical patent/CN107241184B/zh
Publication of CN107241184A publication Critical patent/CN107241184A/zh
Application granted granted Critical
Publication of CN107241184B publication Critical patent/CN107241184B/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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)

Abstract

本发明公开了一种基于改良AES的个人密码生成和管理方法,用于解决现有密码生成方法安全性差的技术问题。技术方案是在生成自定义密码后,再次调用AES加密,与加密过程相反,存储时将之前生成的密码作为原码,将用户的原始密码作为加密的密钥,将密码再次加密后存储在本地,并加入验证标志位。提取本地的密码时,先接收用户的原始密码进行预解密操作,若验证标志位与加密前相同,则密码提取成功。在常用地登录的用户在加密时将自身的硬盘号、MAC地址作为加密因子输入。由于硬盘号、MAC地址为用户唯一凭证,其作为加密因子参与密码的生成过程。另外,改良AES的行转移及列混淆过程进一步提高了加密过程的安全性。

Description

基于改良AES的个人密码生成和管理方法
技术领域
本发明属于计算机账号密码安全技术领域,特别涉及一种基于改良AES的个人密码生成和管理方法。
背景技术
随着互联网技术的日新月异,需要用户登录的网站和软件也越来越多。许多用户为了方便,将同一密码应用于不同场景,甚至还将该密码应用于事关财产安全的支付应用。这无疑给网络黑客的“撞库”破解提供了方便,也非常不利于用户个人的信息和财产安全。
然而,一些用户在不同的场景应用不同的密码,同样存在问题。在用户的账号和密码数量不断增加时,很难精确的记忆所有的账号和密码信息,同时,对于一些冷门的网站和应用,用户往往在注册之后就因长时间未登录而遗忘密码信息。
当然,目前存在一些解决这类问题的技术和方法。文献“申请公布号是CN105897412A的中国发明专利”公开了一种网站密码生成方法及装置。该方法通过接收用户输入的自定义密钥,网站信息,通过固定的加密方式自动生成网站密码。该方法存在的问题是,没有密码管理部分,已加密的密码无法存储,每次登陆均需要运行加密程序,十分繁琐;而且,该方法采用固定的加密方式,若用户的自定义密钥与加密方式泄漏,无异于泄漏了自身所有网站密码,风险性大大增加。
发明内容
为了克服现有密码生成方法安全性差的不足,本发明提供一种基于改良AES的个人密码生成和管理方法。该方法在自定义密钥加密的基础上,增加了密码生成后的管理功能。在生成自定义密码后,再次调用AES加密,与加密过程相反,存储时将之前生成的密码作为原码,将用户的原始密码作为加密的密钥,将密码再次加密后存储在本地,并加入验证标志位。提取本地的密码时,先接收用户的原始密码进行预解密操作,若验证标志位与加密前相同,则密码提取成功。提取成功的所有密码明文显示,并提供增、删、改、查功能。在常用地登录的用户在加密时将自身的硬盘号、MAC地址作为加密因子输入。由于硬盘号、MAC地址为用户唯一凭证,其作为加密因子参与密码的生成过程。另外,改良AES的行转移及列混淆过程进一步提高了加密过程的安全性。
本发明解决其技术问题所采用的技术方案:一种基于改良AES的个人密码生成和管理方法,其特点是包括以下步骤:
步骤一、接收用户的初始密码。
用户输入自设密码,包含数字、字母和符号且长度不做限制。接收到用户的输入以后,密码加密模块将该密码存入字符串中,作为加密的原码等待被加密。
步骤二、接收密码的应用场景。
用户选择接收密码的应用场景,该应用场景是某一个网站、某一个软件或者自己的某一个账号。系统接收到用户的输入以后,将该应用场景转化为字符串并作为加密因子,等待被构成密钥。
步骤三、判断是否需要读取设备的唯一标识。
若用户只有一台常用终端,则将加入设备的唯一标识作为加密因子。若用户拥有多台终端,则不应该将加入设备唯一标识作为加密因子。
步骤四、生成16位的加密密钥。
根据用户选择的应用场景和设备标识情况进行构造。若信息量刚好等于16位,则直接构造加密密钥,若信息量大于或者小于16位,则以循环冗余迭代的方式构造16位的加密密钥。
步骤五、改良的AES加密。
变更AES列混淆和行转移方式,使得在用户的初始密码、密码应用场景以及加密方式均泄漏时,保证生成的密码具有安全性。
步骤六、接收用户的密码要求。
若有些场景不支持密码粘贴,只能用户手动输入,则要求生成的密码不能过长;若些场景不支持特殊符号作为密码,则要求生成的密码不能带有符号。
步骤七、生成随机密码。
经过改良的AES加密算法加密过后,用户的原密码变为与加密因子相关的N个十六进制两位数所组成的字符串。根据用户的输出要求,对上述字符串的循环冗余进行迭代,多对一映射,生成符合用户要求的随机密码。
步骤八、密码信息加密。
在保存用户的密码信息之前,将提取所有已经生成的随机密码和对应的加密信息,并将其作为改良的AES加密的原码。新的16位加密密钥的构成将有所改变:设备的唯一凭证依旧作为用户的可选项,若用户选择了该项,则会在在加密文件中设置与解密相关的标志位;必选项则变成了用户输入的初始密码。重复步骤一到步骤五。
步骤九、密码信息存储。
在密码信息加密之后,在加密后的信息中添加2种标志位,验证标志位和配置标志位。验证标志位通过预解密验证用户输入密码是否正确;配置标志位标志用户在加密时是否使用设备唯一标识作为加密因子。然后,将2种标志位以二进制的形式保存在本地。
密码解密及查询过程如下:
步骤十、读取加密的二进制文件。
对存储在本地的二进制文件进行读取操作,保存为字符串形式。
步骤十一、验证用户的初始密码。
接收用户的初始密码并进行预解密,若验证标志位相同,则密码合法;若验证标志位不相同,提醒用户重新输入。
步骤十二、生成16位解密密钥。
将初始密码和可选的设备唯一标识,采用与加密过程相同的冗余迭代方式形成16位解密密钥。
步骤十三、改良的AES解密。
进行与加密过程互为逆过程的AES解密操作。
步骤十四、用户的增删改查。
将得到解密后的密码明文显示,用户对信息进行增加、删除、更改和查询。增加,即调用密码加密过程,生成适用于新的应用场景下的密码;删除,即删除那些用户认为无用的或者不再符合应用要求的密码信息;更改,即在同一应用场景下,重新生成位数、组成不同的新密码;查询,即以树形文件列表的方式显示出所有的密码及其应用背景信息。
本发明的有益效果是:该方法在自定义密钥加密的基础上,增加了密码生成后的管理功能。在生成自定义密码后,再次调用AES加密,与加密过程相反,存储时将之前生成的密码作为原码,将用户的原始密码作为加密的密钥,将密码再次加密后存储在本地,并加入验证标志位。提取本地的密码时,先接收用户的原始密码进行预解密操作,若验证标志位与加密前相同,则密码提取成功。提取成功的所有密码明文显示,并提供增、删、改、查功能。在常用地登录的用户在加密时将自身的硬盘号、MAC地址作为加密因子输入。由于硬盘号、MAC地址为用户唯一凭证,其作为加密因子参与密码的生成过程。另外,改良AES的行转移及列混淆过程进一步提高了加密过程的安全性。
下面结合附图和具体实施方式对本发明作详细说明。
附图说明
图1是本发明基于改良AES的个人密码生成和管理方法的方框图。
图2是本发明方法实施例中密码生成及存储方法的流程图。
图3是本发明方法实施例中密码解密及查询方法的流程图。
具体实施方式
参照图1-3。本发明基于改良AES的个人密码生成和管理方法具体步骤如下:
本发明方法包含两个模块:初始密码验证模块和用户账号密码管理模块。
其中,初始密码验证模块包括:初始密码的读取和验证,设备唯一标识的读取,加密密钥的构成,加密文件的解析。
用户账号密码管理模块包括:用户账号密码的导入和导出,已生成密码的查询和删除,根据用户应用场景和要求生成新的随机密码。
密码生成及存储过程具体如下:
步骤一、接收用户的初始密码。
该过程为用户个人输入,密码一般为自己的常用密码,可以包含数字,字母,符号且长度不做限制。接收到用户的输入以后,密码加密模块将该密码存入字符串中,作为加密的原码等待被加密。
步骤二、接收密码的应用场景。
该过程为用户人为选择,应用场景可以是某一个网站,某一个软件或者自己的某一个账号。系统接收到用户的输入以后,将该应用场景转化为字符串并作为加密因子,等待被构成密钥。
步骤三、判断是否需要读取设备的唯一标识。
该过程为用户自选,选择的原则为:若用户只有一台常用终端,则加入设备的唯一标识作为加密因子可以大大提高密码的安全性。即使黑客窃取了用户的初始密码且破解了该加密方式,也会因为无法伪造设备唯一标识而解密失败;相反,若用户拥有多台终端,为了实现加密密码的一致性,不应该加入设备唯一标识作为加密因子。
步骤四、生成16位的加密密钥。
根据用户选择的应用场景,设备标识的情况来进行构造。若信息量刚好等于16位,则直接构造密钥,若信息量大于或者小于16位,则以循环冗余迭代的方式构造16位的密钥。
步骤五、改良的AES加密。
AES算法一直以其简单,安全的优点被广泛应用。但是,由于其算法的开源,使得在密钥泄漏的情况下信息安全变得岌岌可危。本方法通过变更了AES列混淆和行转移的方式,使得在用户的初始密码,密码应用场景,加密方式均泄漏的极限条件下,依旧可以保证生成的密码具有良好的安全性。
步骤六、接收用户的密码要求。
由于密码的应用场景不同,用户对密码的要求也会有所不同。例如:有些场景不支持密码粘贴,只能用户手动输入,这种环境要求生成的密码不能过长;还有些场景不支持特殊符号作为密码,这就要求生成的密码不能带有符号。为了应对以上情况,本发明支持用户选择生成密码的位数和构成成分。
步骤七、生成随机密码。
经过改良的AES加密算法加密过后,用户的原密码已经成为了与加密因子相关的N个十六进制两位数所组成的字符串。根据用户的输出要求,本发明通过对上述字符串的循环冗余迭代,多对一映射,可以生成符合用户要求的随机密码。值得一提的是,由于本方法采用的是多对一的映射,即在知晓了用户的随机密码,应用环境的情况下,也无法通过反向解密来重构出用户的初始密码,进一步提高了用户信息的安全性。
步骤八、密码信息加密。
在保存用户的密码信息之前,本发明将提取所有已经生成的随机密码和对应的加密信息,并将其作为改良的AES加密的原码。新的16位加密密钥的构成将有所改变:设备的唯一凭证依旧作为用户的可选项,若用户选择了该项,则会在在加密文件中设置与解密相关的标志位;必选项则变成了用户输入的初始密码。之后进行重复步骤一到步骤五。
步骤九、密码信息存储。
在密码信息加密之后,本方法将在加密后的信息中添加2种标志位,验证标志位:通过预解密可以验证用户输入密码的正确与否;配置标志位:标志用户在加密时是否使用设备唯一标识作为加密因子。然后,将该文件以二进制的形式保存在本地。
密码解密及查询过程具体如下:
步骤十、读取加密的二进制文件。
在解密之前,需要对加密过的文件进行按位读取,并保存为字符串形式。通过对加密过程的分析,文件中的验证标志位和配置标志位需要进行特殊分析。
步骤十一、验证用户的初始密码。
为保证安全性,本发明在解密之前需要验证一次用户的初始密码。与现有技术不同的是该密码验证并不是简单的字符串比对,由加密过程可知,本发明没有明文保存用户的密码信息,而是在加密文件中预设了验证标志位。用户在输入密码后,本发明将进行一次预解密,若解密的标志位与加密前相同,则密码输入合法;反之,提醒用户重新输入。
步骤十二、生成16位解密密钥。
在AES算法中,必须保证加密密钥和解密密钥的一致性。所以,与加密对应的,用户输入的合法的初始密码即为解密密钥的必选项;通过对加密文件配置标志位的分析,可以确定是否将设备唯一标识作为加密因子。而且,解密密钥也必须采用与加密过程相同的循环冗余迭代方式,这样才能保证密钥的一致性。
步骤十三、改良的AES解密。
与加密过程互为逆过程。相应的,解密过程中的列混淆和行转移方式要与加密过程对应,以保证数据的正确性。
步骤十四、用户的增删改查。
在得到解密后的信息后,用户可以对信息进行增加、删除、更改和查询。增加:调用密码加密过程,生成适用于新的应用场景下的密码;删除:删除那些用户认为无用的或者不再符合应用要求的密码信息;更改:在同一应用场景下,重新生成位数、组成不同的新密码,主要应用于密码泄露的情况;查询:以树形文件列表的方式显示出所有的密码及其应用背景信息。

Claims (1)

1.一种基于改良AES的个人密码生成和管理方法,其特征在于包括以下步骤:
步骤一、接收用户的初始密码;
用户输入自设密码,包含数字、字母和符号且长度不做限制;接收到用户的输入以后,密码加密模块将该密码存入字符串中,作为加密的原码等待被加密;
步骤二、接收密码的应用场景;
用户选择接收密码的应用场景,该应用场景是某一个网站、某一个软件或者自己的某一个账号;系统接收到用户的输入以后,将该应用场景转化为字符串并作为加密因子,等待来构成加密密钥;
步骤三、判断是否需要读取设备的唯一标识;
若用户只有一台常用终端,则将加入设备的唯一标识作为加密因子;若用户拥有多台终端,则不应该将加入设备唯一标识作为加密因子;
步骤四、生成16位的加密密钥;
若用户选择将设备标识作为加密因子,则将应用场景和设备标识共同作为加密因子来构造加密密钥;若用户没有选择将设备标识作为加密因子,则仅将应用场景作为加密因子来构造加密密钥;在构造加密密钥时,若信息量刚好等于16位,则直接构造加密密钥,若信息量大于或者小于16位,则以循环冗余迭代的方式构造16位的加密密钥;
步骤五、改良的AES加密;
通过变更AES列混淆和行转移方式对AES加密算法进行改良,并使用改良后的AES加密算法进行就加密;
步骤六、接收用户的密码要求;
步骤七、生成随机密码;
经过改良的AES加密算法加密过后,用户的原码变为与加密因子相关的N个十六进制两位数所组成的字符串;根据用户的密码要求,对上述字符串的循环冗余进行迭代,多对一映射,生成符合用户要求的随机密码;
步骤八、密码信息加密;
在保存由用户的初始密码生成的随机密码信息之前,将提取所有已经生成的随机密码和对应的加密信息,并将其作为改良的AES加密的原码;新的16位加密密钥的构成将有所改变:设备的唯一标识依旧作为用户的可选项,若用户选择了该项,则会在在加密文件中设置与解密相关的标志位;必选项则变成了用户输入的初始密码;重复步骤一到步骤五;
步骤九、密码信息存储;
在密码信息加密之后,在加密后的信息中添加2种标志位,验证标志位和配置标志位;验证标志位通过预解密验证用户输入密码是否正确;配置标志位标志用户在加密时是否使用设备唯一标识作为加密因子;然后,将2种标志位以二进制的形式保存在本地;
密码解密及查询过程如下:
步骤十、读取加密的二进制文件;
对存储在本地的二进制文件进行读取操作,保存为字符串形式;
步骤十一、验证用户的初始密码;
接收用户的初始密码并进行预解密,若验证标志位相同,则密码合法;若验证标志位不相同,提醒用户重新输入;
步骤十二、生成16位解密密钥;
将初始密码和可选的设备唯一标识,采用与加密过程相同的冗余迭代方式形成16位解密密钥;
步骤十三、改良的AES解密;
进行与加密过程互为逆过程的AES解密操作;
步骤十四、用户的增删改查;
将得到解密后的密码明文显示,用户对信息进行增加、删除、更改和查询;增加,即调用密码加密过程,生成适用于新的应用场景下的密码;删除,即删除那些用户认为无用的或者不再符合应用要求的密码信息;更改,即在同一应用场景下,重新生成位数、组成不同的新密码;查询,即以树形文件列表的方式显示出所有的密码及其应用背景信息。
CN201710442508.0A 2017-06-13 2017-06-13 基于改良aes的个人密码生成和管理方法 Active CN107241184B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710442508.0A CN107241184B (zh) 2017-06-13 2017-06-13 基于改良aes的个人密码生成和管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710442508.0A CN107241184B (zh) 2017-06-13 2017-06-13 基于改良aes的个人密码生成和管理方法

Publications (2)

Publication Number Publication Date
CN107241184A CN107241184A (zh) 2017-10-10
CN107241184B true CN107241184B (zh) 2021-04-02

Family

ID=59987540

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710442508.0A Active CN107241184B (zh) 2017-06-13 2017-06-13 基于改良aes的个人密码生成和管理方法

Country Status (1)

Country Link
CN (1) CN107241184B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109064596B (zh) * 2018-07-25 2021-07-13 云丁智能科技(北京)有限公司 密码管理方法、装置及电子设备
CN111079128B (zh) * 2019-12-11 2021-09-28 腾讯科技(深圳)有限公司 一种数据处理方法、装置、电子设备以及存储介质
CN111597547B (zh) * 2020-05-26 2023-04-28 中国联合网络通信集团有限公司 一种密码管理的方法和系统
CN112311771B (zh) * 2020-09-30 2022-05-24 新华三大数据技术有限公司 一种管理用户接入设备的方法、管理设备和网络设备
CN113744824B (zh) * 2021-08-05 2023-10-24 上海道拓医药科技股份有限公司 互联网医院的电子处方流转管理方法和系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103618705A (zh) * 2013-11-20 2014-03-05 浪潮电子信息产业股份有限公司 开放云平台下一种个人密码管理工具及方法
CN104283668A (zh) * 2014-07-24 2015-01-14 山东大学(威海) 基于移动终端获得应用密码的方法及装置
CN106411516A (zh) * 2016-12-07 2017-02-15 北京海泰方圆科技股份有限公司 固定密码生成方法和装置及动态令牌

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9197408B2 (en) * 2013-05-10 2015-11-24 Sap Se Systems and methods for providing a secure data exchange

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103618705A (zh) * 2013-11-20 2014-03-05 浪潮电子信息产业股份有限公司 开放云平台下一种个人密码管理工具及方法
CN104283668A (zh) * 2014-07-24 2015-01-14 山东大学(威海) 基于移动终端获得应用密码的方法及装置
CN106411516A (zh) * 2016-12-07 2017-02-15 北京海泰方圆科技股份有限公司 固定密码生成方法和装置及动态令牌

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
《基于古典密码学的密码生成器设计》;白燕,楼燚航;《电子世界》;20140830;全文 *

Also Published As

Publication number Publication date
CN107241184A (zh) 2017-10-10

Similar Documents

Publication Publication Date Title
US11516201B2 (en) Encryption and decryption techniques using shuffle function
CN107241184B (zh) 基于改良aes的个人密码生成和管理方法
KR102493744B1 (ko) 생체 특징에 기초한 보안 검증 방법, 클라이언트 단말, 및 서버
US9646161B2 (en) Relational database fingerprinting method and system
US9740849B2 (en) Registration and authentication of computing devices using a digital skeleton key
TWI683567B (zh) 安全校驗方法、裝置、伺服器及終端
CN107302539B (zh) 一种电子身份注册及认证登录的方法及其系统
US8958562B2 (en) Format-preserving cryptographic systems
CN106161006B (zh) 一种数字加密算法
EP3110099B1 (en) Device authentication
CN108023874A (zh) 单点登录的校验装置、方法及计算机可读存储介质
CN104283668B (zh) 基于移动终端获得应用密码的方法及装置
CN109462602A (zh) 登录信息存储方法、登录验证方法、装置、设备及介质
US11695740B2 (en) Anonymization method and apparatus, device, and storage medium
CN111327629B (zh) 身份验证方法、客户端和服务端
CN112632524A (zh) 一种增强密码安全性的方法及终端
CN108512657B (zh) 一种密码生成方法及装置
CN116346415A (zh) 一种工控plc系统的多因素登录认证方法、装置及plc系统
TWI640928B (zh) 二維條碼產生及解譯系統及方法
CN113656816B (zh) 一种文本加密方法
CN109660348B (zh) 一种密码记录系统
Sarang et al. A Secured Two-Factor Authentication Protocol for One-Time Money Account
CN116055135A (zh) 基于大数据平台的数据加解密方法
CN114238915A (zh) 数字证书添加方法、装置、计算机设备和存储介质
TWI283121B (en) Encryption and decryption method depending to modules

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