CN115955307A - 用户密码加盐保护方法、装置、可读存储介质及电子设备 - Google Patents

用户密码加盐保护方法、装置、可读存储介质及电子设备 Download PDF

Info

Publication number
CN115955307A
CN115955307A CN202310226005.5A CN202310226005A CN115955307A CN 115955307 A CN115955307 A CN 115955307A CN 202310226005 A CN202310226005 A CN 202310226005A CN 115955307 A CN115955307 A CN 115955307A
Authority
CN
China
Prior art keywords
hash value
user
factor
ciphertext
password
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
CN202310226005.5A
Other languages
English (en)
Other versions
CN115955307B (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.)
Jiangsu Mandala Software Co ltd
Jiangxi Mandala Software Co ltd
Original Assignee
Jiangsu Mandala Software Co ltd
Jiangxi Mandala Software Co ltd
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 Jiangsu Mandala Software Co ltd, Jiangxi Mandala Software Co ltd filed Critical Jiangsu Mandala Software Co ltd
Priority to CN202310226005.5A priority Critical patent/CN115955307B/zh
Publication of CN115955307A publication Critical patent/CN115955307A/zh
Application granted granted Critical
Publication of CN115955307B publication Critical patent/CN115955307B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本发明公开了一种用户密码加盐保护方法、装置、可读存储介质及电子设备,该方法包括:获取用户的基本信息,并从基本信息中提取出不动信息,以根据不动信息确定基础加盐因子;利用预设算法将基础加盐因子进行加密形成秘钥因子,并将秘钥因子与用户的密码通过预设算法混合加密形成初步密文;将秘钥因子与初步密文进行异或运算得到中间密文,随机生成用户密码所需数量的随机数与中间密文拼接混淆形成用户最终密文,通过采用一用户一加盐因子策略,对加盐因子也进行二次加密,对于加密后的密文进行二次混淆,增强了密码的加密程度,加大了密码的破解难度,也避免加盐因子泄漏导致所有密码都泄漏。解决了现有技术中用户密码安全性低的问题。

Description

用户密码加盐保护方法、装置、可读存储介质及电子设备
技术领域
本发明涉及密码管理技术领域,特别涉及一种用户密码加盐保护方法、装置、存储介质及设备。
背景技术
用户的密码是个很重要的数据,不能外泄,现在系统一般都是用MD5对密码进行加密,因为MD5是一种不可逆转的加密方式,但是由于MD5产生的时间较长,现在很多人会采用撞库的方式去破解密码,这样就导致使用MD5进行加密的方式已经不再安全了,可能会导致数据外泄的问题。
发明内容
有鉴于此,本发明的目的在于提供一种用户密码加盐保护方法、装置、可读存储介质及电子设备,旨在解决现有技术中密码安全性低容易导致数据外泄的问题。
本发明是这样实现的:
一种用户密码加盐保护方法,所述方法包括:
获取用户的基本信息,并从所述基本信息中提取出不动信息,以根据所述不动信息确定基础加盐因子;
利用预设算法将所述基础加盐因子进行加密形成秘钥因子,并将所述秘钥因子与所述用户的密码通过所述预设算法混合加密形成初步密文;
将所述秘钥因子与初步密文进行异或运算得到中间密文,随机生成所述用户的密码所需数量的随机数与所述中间密文拼接混淆形成用户最终密文;
所述利用预设算法将所述基础加盐因子进行加密形成秘钥因子的步骤包括:
对所述不动信息进行哈希运算得到第一哈希值,将所述第一哈希值中的任意位与所述基础加盐因子进行合并后进行哈希计算得到第二哈希值;
将所述第一哈希值映射至预设坐标系中的原点,并以所述原点为顶点随机对角线的绘制矩形的第三哈希值确定区域;
以所述原点为发射点,根据所述第二哈希值确定对应的发射角度所射出的射线与所述第三哈希值确定区域的交点的坐标值对应为所述第三哈希值。
进一步的,上述用户密码加盐方法,其中,所述利用预设算法将所述基础加盐因子进行加密形成秘钥因子的步骤包括:
对所述不动信息进行哈希运算得到第一哈希值,将所述第一哈希值中的任意位与所述基础加盐因子进行合并后进行哈希计算得到第二哈希值;
对所述第一哈希值和所述第二哈希值进行哈希计算,得到第三哈希值加密后以得到所述秘钥因子。
进一步的,上述用户密码加盐保护方法,其中,所述不动信息包括所述用户的用户名,所述根据所述不动信息确定基础加盐因子的步骤包括:
按预设规则对所述用户的用户名进行加密,以根据所述用户的用户名确定所述基础加盐因子。
进一步的,上述用户密码加盐保护方法,其中,所述按预设规则对所述用户的用户名进行加密,以根据所述用户的用户名确定所述基础加盐因子的步骤包括:
对所述用户名进行拆解,以提取出所述用户名的字母部分、数字部分以及字符部分;
分别确定所述字母部分、数字部分以及字符部分的加密规则,并分别以所述加密规则对所述字母部分、数字部分以及字符部分进行加密;
对加密后的所述字母部分、数字部分以及字符部分进行预设顺序调换后的拼接以得到所述基础加盐因子。
进一步的,上述用户密码加盐保护方法,其中,所述随机生成所述用户的密码所需数量的随机数的步骤包括:
获取随机数生成函数,设定随机种子,以利用所述随机数生成函数生成随机数;
依次利用所述随机数生成函数生成随机数,以生成所述用户的密码所需数量的随机数。
进一步的,上述用户密码加盐保护方法,其中,所述中间密文的步骤之后还包括:
若判断到所述中间密文的长度低于预设长度,则将所述秘钥因子作为下一次加密的所述第一哈希值;
并将所述第一哈希值依次进行合并、哈希计算得到最新的秘钥因子,并与所述用户的密码混合加密直至所述中间密文的长度高于预设长度。
本发明的另一个目的在于提供一种用户密码加盐保护装置,所述装置包括:
获取模块,用于获取用户的基本信息,并从所述基本信息中提取出不动信息,以根据所述不动信息确定基础加盐因子;
加密模块,用于利用预设算法将所述基础加盐因子进行加密形成秘钥因子,并将所述秘钥因子与所述用户的密码通过所述预设算法混合加密形成初步密文;
生成模块,用于将所述秘钥因子与初步密文进行异或运算得到中间密文,随机生成所述用户的密码所需数量的随机数与所述中间密文拼接混淆形成用户最终密文;
所述加密模块包括:
计算单元,用于对所述不动信息进行哈希运算得到第一哈希值,将所述第一哈希值中的任意位与所述基础加盐因子进行合并后进行哈希计算得到第二哈希值;
映射单元,用于将所述第一哈希值映射至预设坐标系中的原点,并以所述原点为顶点随机对角线的绘制矩形的第三哈希值确定区域;
发射单元,用于以所述原点为发射点,根据所述第二哈希值确定对应的发射角度所射出的射线与所述第三哈希值确定区域的交点的坐标值对应为所述第三哈希值。
进一步的,上述用户密码加盐保护装置,其中,所述加密模块还包括:
合并单元,用于对所述不动信息进行哈希运算得到第一哈希值,将所述第一哈希值中的任意位与所述基础加盐因子进行合并后进行哈希计算得到第二哈希值;
加密单元,用于对所述第一哈希值和所述第二哈希值进行哈希计算,得到第三哈希值加密后以得到所述秘钥因子。
本发明的另一个目的在于提供一种可读存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如上述任意一项所述的方法的步骤。
本发明的另一个目的在于提供一种电子设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述的方法的步骤。
本发明通过获取用户的基本信息,并从基本信息中提取出不动信息,以根据不动信息确定基础加盐因子;利用预设算法将基础加盐因子进行加密形成秘钥因子,并将秘钥因子与用户的密码通过预设算法混合加密形成初步密文;将秘钥因子与初步密文进行异或运算得到中间密文,随机生成用户密码所需数量的随机数与中间密文拼接混淆形成用户最终密文。通过采用一用户一加盐因子策略,对于加盐因子本身也进行二次加密,对于加密后的密文进行二次混淆,避免固定加盐因子,采用动态加盐因子和二次混淆方式,增强了密码的加密程度,加大了密码的破解难度,也避免加盐因子泄漏导致所有密码都泄漏,解决了现有技术中用户密码安全性低而导致数据外泄的问题。
附图说明
图1 为本发明第一实施例中用户密码加盐保护方法的流程图;
图2 为本发明一实施例中用户密码加盐保护方法中的第三哈希值确定的示意图;
图3为本发明第二实施例中用户密码加盐保护装置的结构框图。
如下具体实施方式将结合上述附图进一步说明本发明。
具体实施方式
为了便于理解本发明,下面将参照相关附图对本发明进行更全面的描述。附图中给出了本发明的若干实施例。但是,本发明可以以许多不同的形式来实现,并不限于本文所描述的实施例。相反地,提供这些实施例的目的是使对本发明的公开内容更加透彻全面。
需要说明的是,当元件被称为“固设于”另一个元件,它可以直接在另一个元件上或者也可以存在居中的元件。当一个元件被认为是“连接”另一个元件,它可以是直接连接到另一个元件或者可能同时存在居中元件。本文所使用的术语“垂直的”、“水平的”、“左”、“右”以及类似的表述只是为了说明的目的。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。本文所使用的术语“及/或”包括一个或多个相关的所列类型的任意的和所有的组合。
用户的密码是个很重要的数据,不能外泄,现在系统一般都是用MD5对密码进行加密,因为MD5是一种不可逆转的加密方式,但是由于MD5产生的时间较长,现在很多人会采用撞库的方式去破解密码,这样就导致使用MD5进行加密的方式已经不再安全了,可能会导致数据外泄的问题。
以下将结合具体实施例和附图来详细说明如何提升用户密码的安全性以避免数据外泄。
实施例一
请参阅图1,所示为本发明第一实施例中的用户密码加盐保护方法,所述方法包括步骤S10~S12。
步骤S10,获取用户的基本信息,并从所述基本信息中提取出不动信息,以根据所述不动信息确定基础加盐因子。
其中,不动信息表示为用户基本信息中不会修改的信息,例如用户的用户名,根据不动信息确定基础加盐因子,具体的,可以直接以不动信息作为基础加盐因子。
进一步的,在本发明一些可选的实施例当中,所述不动信息包括所述用户的用户名,所述根据所述不动信息确定基础加盐因子的步骤包括:
按预设规则对所述用户的用户名进行加密,以根据所述用户的用户名确定所述基础加盐因子。
其中,对于基础加盐因子本身也进行加密,可以按预设的规则对用户的用户名进行加密,由于用户名的组合均是按既定的规则进行命名,例如,一般包括字母或者数字亦或者字母与数字的组合,对用户名进行加密,从而避免用户名容易破解而导致的基础加盐因子的泄露。
具体的,在本发明实施例当中,作为本发明的一种实施方式,用户名的编加密可以按照如下方式进行实施:
对所述用户名进行拆解,以提取出所述用户名的字母部分、数字部分以及字符部分;
分别确定所述字母部分、数字部分以及字符部分的加密规则,并分别以所述加密规则对所述字母部分、数字部分以及字符部分进行加密;
对加密后的所述字母部分、数字部分以及字符部分进行预设顺序调换后的拼接以得到所述基础加盐因子。
一般的,用户名一般包括字符部分,例如“.”、“-”等,字母部分“a”、“ch”以及数字部分“1”或者“2”等,可以分别确定字符部分,字母部分以及数字部分的加密规则,并分别对字符部分,字母部分以及数字部分进行加密后拼接得到对应的基础加盐因子,并且可以提前设定顺序,按预设顺序调换后的拼接,对加密后的密码进行混淆,又能保证加盐因子的唯一性,一用户一加盐,又保证了用户名的安全性。
步骤S11,利用预设算法将所述基础加盐因子进行加密形成秘钥因子,并将所述秘钥因子与所述用户的密码通过所述预设算法混合加密形成初步密文。
具体的,使用MD5算法将基础加盐因子进行加密,形成秘钥因子,并将秘钥因子与用户的密码通过MD5算法混合加密形成初步密文,对基础加盐因子本身也进行二次加密,增强了密码的加密程度,加大了密码的破解难度。
另外,在本发明一些可选的实施例当中,所述利用预设算法将所述基础加盐因子进行加密形成秘钥因子的步骤包括:
对所述不动信息进行哈希运算得到第一哈希值,将所述第一哈希值中的任意位与所述基础加盐因子进行合并后进行哈希计算得到第二哈希值;
对所述第一哈希值和所述第二哈希值进行哈希计算,得到第三哈希值加密后以得到所述秘钥因子。
其中,在本实施例中,将不动信息进行哈希运算得到第一哈希值,对第一哈希值的任意位与基础加盐因子(也即用户账号名)进行合并,以得到基础加盐因子的加盐后的用户账号名,对用户账号名的加盐账号进行哈希计算,以得到第二哈希值。其中,可以采用MD5等哈希算法,这里不予限制。
此外,第一哈希值和第二哈希值进行哈希计算,得到第三哈希值加密后以得到秘钥因子,本申请实施例将第一哈希值的任意位与用户账号合并后作为盐,并对该盐进行哈希计算,避免看出哪部分是账号以及哪部分是第一哈希值的部分哈希值,并且由于用户账号的唯一性,生成的盐也是唯一的,故而对用户账号名做多次哈希时的盐都是不同的。因此,当用户账号不同时,即使用户密码相同,最终生成的密文也不同。
另外,在本发明一些可选的实施例当中,还可以依序对第一哈希值的任意位进行和用户账号的合并,例如,可以提取第一哈希值的第一位,并在系统满足切换条件后提取第一哈希值的第二位,依次提取第一哈希值的第三位,从而实现第一哈希值任意位的动态切换,其中,切换条件为系统使用时间满足预设阈值或者系统第一哈希值使用次数满足预设次数中的其中一种。
进一步的,在本发明一些较佳的实施例当中,所述利用预设算法将所述基础加盐因子进行加密形成秘钥因子的步骤包括:
对所述不动信息进行哈希运算得到第一哈希值,将所述第一哈希值中的任意位与所述基础加盐因子进行合并后进行哈希计算得到第二哈希值;
将所述第一哈希值映射至预设坐标系中的原点,并以所述原点为顶点随机对角线的绘制矩形的第三哈希值确定区域;
以所述原点为发射点,根据所述第二哈希值确定对应的发射角度所射出的射线与所述第三哈希值确定区域的交点的坐标值对应为所述第三哈希值。
可以理解的,不同用户名信息的哈希运算结果很难相同,但对第一哈希值进行计算得到的第二哈希值可能会出现相同,如果对第一哈希值和第二哈希值进行哈希运算,那它们的哈希运算结果也会相同,就会出现加密的秘钥因子相同的情况。
因此,在本实施例当中,为了避免两个哈希值哈希运算后结果相同的情况,将所述第一哈希值映射至预设坐标系中的原点,并以所述原点为顶点随机对角线的绘制矩形的第三哈希值确定区域;
以所述原点为发射点,根据所述第二哈希值确定对应的发射角度所射出的射线与所述第三哈希值确定区域的交点的坐标值对应为所述第三哈希值。
具体的,如图2所示,将该原点 O 映射至预设坐标系中,并以该原点 O 为顶点、随机对角线的绘制矩形的第三哈希值确定区域 A,后第二哈希值确定对应的发射角度所射出的射线S与所述第三哈希值确定区域的交点的坐标值对应为第三哈希值,其中,第二哈希值确定对应的发射角度可以基于预设的角度与哈希值数据库,在确定第二哈希值后基于映射关系得到对应的发射角度。
步骤S12,将所述秘钥因子与初步密文进行异或运算得到中间密文,随机生成所述用户的密码所需数量的随机数与所述中间密文拼接混淆形成用户最终密文。
具体的,使用秘钥因子与初步密文进行异或运算得到中间密文,随机生成用户密码所需数量的随机数与中间密文拼接混淆,例如,在具体实施时,用户密码一般设置为6位数,随机生成6位随机数与中间密文拼接混淆,形成最终密文,对加密后的密文进行二次混淆,增强了密码的加密程度。
更具体的,在本发明一些可选的实施例当中,所述将所述秘钥因子与初步密文进行异或运算得到中间密文的步骤之后还包括:
若判断到所述中间密文的长度低于预设长度,则将所述秘钥因子作为下一次加密的所述第一哈希值;
并将所述第一哈希值依次进行合并、哈希计算得到最新的秘钥因子,并与所述用户的密码混合加密直至所述中间密文的长度高于预设长度。
为了保证一定的密码强度,通过设定预设的长度阈值,并判断到中间密文的长度是否低于预设长度,以在中间密文低于预设长度,对秘钥因子进行又一轮次的哈希计算,从而使得中间密文的长度高于预设长度,保证密码的强度。
所述随机生成所述用户的密码所需数量的随机数的步骤包括:
获取随机数生成函数,设定随机种子,以利用所述随机数生成函数生成随机数;
依次利用所述随机数生成函数生成随机数,以生成所述用户的密码所需数量的随机数。
其中,可以设定随机种子,利用随机生成函数生成随机数,以保证随机数的随机性,依次进行随机,在随机生成的相应的数量后得到用户密码所需数量的随机数。
示例性的,为了更清楚的解释本发明的具体实施过程,以用户名:jxmtl,密码:123456为例,获取用户的基本信息,并从所述基本信息中提取出不动信息,以根据所述不动信息确定基础加盐因子;利用预设算法将所述基础加盐因子进行加密形成秘钥因子,并将所述秘钥因子与所述用户的密码通过所述预设算法混合加密形成初步密文;将所述秘钥因子与初步密文进行异或运算得到中间密文,随机生成所述用户的密码所需数量的随机数与所述中间密文拼接混淆形成用户最终密文的具体实施过程为:
步骤1.用户名作为加盐因子m1,值为:jxmtl;
步骤2.使用加盐因子m1进行MD5加密,形成秘钥因子m2,值为:299A75BA6DC135C10409732EC722579E;
步骤3.使用秘钥因子m2与初始密码进行组合后MD5,组合后值:299A75BA6DC135C10409732EC722579E123456,初始密文m3值(MD5值):208CEAFADB406854B82E768746FE8631;
步骤4.使用秘钥因子m2与初步密文m3进行异或运算,中间密文m4值:091C7=@A>FC915K30<29?12MA7:05?;E;
步骤5.随机生成6位随机数与中间密文(m4)拼接混淆,形成最终密文m5值:091C7=@A>FC915K30<29?12MA7:05?;EWDH752。
综上,本发明上述实施例中的用户密码加盐保护用户密码加盐保护方法,通过获取用户的基本信息,并从基本信息中提取出不动信息,以根据不动信息确定基础加盐因子;利用预设算法将基础加盐因子进行加密形成秘钥因子,并将秘钥因子与用户的密码通过预设算法混合加密形成初步密文;将秘钥因子与初步密文进行异或运算得到中间密文,随机生成用户密码所需的数量的随机数与中间密文拼接混淆形成用户最终密文,采用一用户一加盐因子策略,对于加盐因子本身也进行二次加密,对于加密后的密文进行二次混淆,避免固定加盐因子,并且动态加盐因子和二次混淆方式,增强了密码的加密程度,加大了密码的破解难度,解决了现有技术中密码加密方式安全性低的问题。
实施例二
请参阅图3,所示为本发明第二实施例中提出的用户密码加盐保护装置,所述装置包括:
获取模块100,用于获取用户的基本信息,并从所述基本信息中提取出不动信息,以根据所述不动信息确定基础加盐因子;
加密模块200,用于利用预设算法将所述基础加盐因子进行加密形成秘钥因子,并将所述秘钥因子与所述用户的密码通过所述预设算法混合加密形成初步密文;
生成模块300,用于将所述秘钥因子与初步密文进行异或运算得到中间密文,随机生成所述用户的密码所需数量的随机数与所述中间密文拼接混淆形成用户最终密文;
所述加密模块包括:
计算单元,用于对所述不动信息进行哈希运算得到第一哈希值,将所述第一哈希值中的任意位与所述基础加盐因子进行合并后进行哈希计算得到第二哈希值;
映射单元,用于将所述第一哈希值映射至预设坐标系中的原点,并以所述原点为顶点随机对角线的绘制矩形的第三哈希值确定区域;
发射单元,用于以所述原点为发射点,根据所述第二哈希值确定对应的发射角度所射出的射线与所述第三哈希值确定区域的交点的坐标值对应为所述第三哈希值。
进一步地,在本发明一些可选的实施例当中,其中,所述加密模块还包括:
合并单元,用于对所述不动信息进行哈希运算得到第一哈希值,将所述第一哈希值中的任意位与所述基础加盐因子进行合并后进行哈希计算得到第二哈希值;
加密单元,用于对所述第一哈希值和所述第二哈希值进行哈希计算,得到第三哈希值加密后以得到所述秘钥因子。
进一步地,在本发明一些可选的实施例当中,其中,所述获取模块包括:
确定单元,用于按预设规则对所述用户的用户名进行加密,以根据所述用户的用户名确定所述基础加盐因子。
进一步地,在本发明一些可选的实施例当中,其中,所述确定单元具体用于:
对所述用户名进行拆解,以提取出所述用户名的字母部分、数字部分以及字符部分;
分别确定所述字母部分、数字部分以及字符部分的加密规则,并分别以所述加密规则对所述字母部分、数字部分以及字符部分进行加密;
对加密后的所述字母部分、数字部分以及字符部分进行预设顺序调换后的拼接以得到所述基础加盐因子。
进一步地,在本发明一些可选的实施例当中,其中,所述生成模块包括:
生成单元,用于获取随机数生成函数,设定随机种子,以利用所述随机数生成函数生成随机数;
随机单元,用于依次利用所述随机数生成函数生成随机数,以生成所述用户的密码所需数量的随机数。
进一步地,在本发明一些可选的实施例当中,其中,所述装置还包括:
合并模块,用于若判断到所述中间密文的长度低于预设长度,则将所述秘钥因子作为下一次加密的所述第一哈希值;
并将所述第一哈希值依次进行合并、哈希计算得到最新的秘钥因子,并与所述用户的密码混合加密直至所述中间密文的长度高于预设长度。
上述各模块被执行时所实现的功能或操作步骤与上述方法实施例大体相同,在此不再赘述。
综上,本发明上述实施例中的用户密码加盐保护装置,通过获取用户的基本信息,并从基本信息中提取出不动信息,以根据不动信息确定基础加盐因子;利用预设算法将基础加盐因子进行加密形成秘钥因子,并将秘钥因子与用户的密码通过预设算法混合加密形成初步密文;将秘钥因子与初步密文进行异或运算得到中间密文,随机生成用户密码所需的数量的随机数与中间密文拼接混淆形成用户最终密文,采用一用户一加盐因子策略,对于加盐因子本身也进行二次加密,对于加密后的密文进行二次混淆,避免固定加盐因子,并且动态加盐因子和二次混淆方式,增强了密码的加密程度,加大了密码的破解难度,解决了现有技术中密码加密方式安全性低的问题。
实施例三
本发明另一方面还提供一种可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现上述实施例一中所述的方法的步骤。
实施例四
本发明另一方面还提供一种电子设备,所述电子设备包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述实施例一中任意所述的方法的步骤。
以上各个实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
本领域技术人员可以理解,在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。
计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或它们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、 “示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

Claims (10)

1.一种用户密码加盐保护方法,其特征在于,所述方法包括:
获取用户的基本信息,并从所述基本信息中提取出不动信息,以根据所述不动信息确定基础加盐因子;
利用预设算法将所述基础加盐因子进行加密形成秘钥因子,并将所述秘钥因子与所述用户的密码通过所述预设算法混合加密形成初步密文;
将所述秘钥因子与初步密文进行异或运算得到中间密文,随机生成所述用户的密码所需数量的随机数与所述中间密文拼接混淆形成用户最终密文;
所述利用预设算法将所述基础加盐因子进行加密形成秘钥因子的步骤包括:
对所述不动信息进行哈希运算得到第一哈希值,将所述第一哈希值中的任意位与所述基础加盐因子进行合并后进行哈希计算得到第二哈希值;
将所述第一哈希值映射至预设坐标系中的原点,并以所述原点为顶点随机对角线的绘制矩形的第三哈希值确定区域;
以所述原点为发射点,根据所述第二哈希值确定对应的发射角度所射出的射线与所述第三哈希值确定区域的交点的坐标值对应为所述第三哈希值。
2.根据权利要求1所述的用户密码加盐保护方法,其特征在于,所述利用预设算法将所述基础加盐因子进行加密形成秘钥因子的步骤还包括:
对所述不动信息进行哈希运算得到第一哈希值,将所述第一哈希值中的任意位与所述基础加盐因子进行合并后进行哈希计算得到第二哈希值;
对所述第一哈希值和所述第二哈希值进行哈希计算,得到第三哈希值加密后以得到所述秘钥因子。
3.根据权利要求1所述的用户密码加盐保护方法,其特征在于,所述不动信息包括所述用户的用户名,所述根据所述不动信息确定基础加盐因子的步骤包括:
按预设规则对所述用户的用户名进行加密,以根据所述用户的用户名确定所述基础加盐因子。
4.根据权利要求3所述的用户密码加盐保护方法,其特征在于,所述按预设规则对所述用户的用户名进行加密,以根据所述用户的用户名确定所述基础加盐因子的步骤包括:
对所述用户名进行拆解,以提取出所述用户名的字母部分、数字部分以及字符部分;
分别确定所述字母部分、数字部分以及字符部分的加密规则,并分别以所述加密规则对所述字母部分、数字部分以及字符部分进行加密;
对加密后的所述字母部分、数字部分以及字符部分进行预设顺序调换后的拼接以得到所述基础加盐因子。
5.根据权利要求1所述的用户密码加盐保护方法,其特征在于,所述随机生成所述用户的密码所需数量的随机数的步骤包括:
获取随机数生成函数,设定随机种子,以利用所述随机数生成函数生成随机数;
依次利用所述随机数生成函数生成随机数,以生成所述用户的密码所需数量的随机数。
6.根据权利要求2所述的用户密码加盐保护方法,其特征在于,所述将所述秘钥因子与初步密文进行异或运算得到中间密文的步骤之后还包括:
若判断到所述中间密文的长度低于预设长度,则将所述秘钥因子作为下一次加密的所述第一哈希值;
并将所述第一哈希值依次进行合并、哈希计算得到最新的秘钥因子,并与所述用户的密码混合加密直至所述中间密文的长度高于预设长度。
7.一种用户密码加盐保护装置,其特征在于,所述装置包括:
获取模块,用于获取用户的基本信息,并从所述基本信息中提取出不动信息,以根据所述不动信息确定基础加盐因子;
加密模块,用于利用预设算法将所述基础加盐因子进行加密形成秘钥因子,并将所述秘钥因子与所述用户的密码通过所述预设算法混合加密形成初步密文;
生成模块,用于将所述秘钥因子与初步密文进行异或运算得到中间密文,随机生成所述用户的密码所需数量的随机数与所述中间密文拼接混淆形成用户最终密文;
所述加密模块包括:
计算单元,用于对所述不动信息进行哈希运算得到第一哈希值,将所述第一哈希值中的任意位与所述基础加盐因子进行合并后进行哈希计算得到第二哈希值;
映射单元,用于将所述第一哈希值映射至预设坐标系中的原点,并以所述原点为顶点随机对角线的绘制矩形的第三哈希值确定区域;
发射单元,用于以所述原点为发射点,根据所述第二哈希值确定对应的发射角度所射出的射线与所述第三哈希值确定区域的交点的坐标值对应为所述第三哈希值。
8.根据权利要求7所述的用户密码加盐保护装置,其特征在于,所述加密模块还包括:
合并单元,用于对所述不动信息进行哈希运算得到第一哈希值,将所述第一哈希值中的任意位与所述基础加盐因子进行合并后进行哈希计算得到第二哈希值;
加密单元,用于对所述第一哈希值和所述第二哈希值进行哈希计算,得到第三哈希值加密后以得到所述秘钥因子。
9.一种可读存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1至6中任意一项所述的方法的步骤。
10.一种电子设备,其特征在于,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如权利要求 1 至 6 任一所述的方法的步骤。
CN202310226005.5A 2023-03-10 2023-03-10 用户密码加盐保护方法、装置、可读存储介质及电子设备 Active CN115955307B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310226005.5A CN115955307B (zh) 2023-03-10 2023-03-10 用户密码加盐保护方法、装置、可读存储介质及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310226005.5A CN115955307B (zh) 2023-03-10 2023-03-10 用户密码加盐保护方法、装置、可读存储介质及电子设备

Publications (2)

Publication Number Publication Date
CN115955307A true CN115955307A (zh) 2023-04-11
CN115955307B CN115955307B (zh) 2023-05-23

Family

ID=85891215

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310226005.5A Active CN115955307B (zh) 2023-03-10 2023-03-10 用户密码加盐保护方法、装置、可读存储介质及电子设备

Country Status (1)

Country Link
CN (1) CN115955307B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116992495A (zh) * 2023-09-27 2023-11-03 江铃汽车股份有限公司 办公室文件加密存储方法、系统、存储介质及电子设备
CN117032592A (zh) * 2023-10-08 2023-11-10 湖南省金河计算机科技有限公司 一种基于区块链的收款机收款数据储存系统
CN117278986A (zh) * 2023-11-23 2023-12-22 浙江小遛信息科技有限公司 共享出行的数据处理方法和数据处理设备

Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105721390A (zh) * 2014-12-01 2016-06-29 阿里巴巴集团控股有限公司 一种加密存储方法和装置
CN106611128A (zh) * 2016-07-19 2017-05-03 四川用联信息技术有限公司 云存储中基于二次加密的数据验证和数据恢复算法
US20170235941A1 (en) * 2016-02-16 2017-08-17 Samsung Electronics Co., Ltd. Key generating method and apparatus using characteristic of memory
CN108134666A (zh) * 2018-02-07 2018-06-08 北京安博通科技股份有限公司 一种加密解密方法及装置
CN108197478A (zh) * 2017-08-08 2018-06-22 鸿秦(北京)科技有限公司 一种采用随机盐值的NandFlash加密文件系统
CN109687966A (zh) * 2017-10-18 2019-04-26 北京明特量化信息技术有限公司 加密方法及其系统
CN110519300A (zh) * 2019-09-24 2019-11-29 杭州字节信息技术有限公司 基于口令双向认证的客户端密钥安全存储方法
US20200013316A1 (en) * 2017-03-31 2020-01-09 Beijing Jingdong Shangke Information Technology Co., Ltd. Information Encryption Method and Device
CN111274557A (zh) * 2020-01-19 2020-06-12 广州数智网络科技有限公司 用于2d矢量图版权保护的鲁棒可逆水印算法
CN112311541A (zh) * 2020-11-16 2021-02-02 南京大学 一种基于外差测量的四态量子密钥分发方法及系统
CN113473360A (zh) * 2021-06-25 2021-10-01 湖北工业大学 一种基于位置服务的隐私保护配送服务系统及方法
CN113556321A (zh) * 2021-06-22 2021-10-26 杭州安恒信息技术股份有限公司 口令认证方法、系统、电子装置和存储介质
CN113626802A (zh) * 2021-08-23 2021-11-09 重庆第二师范学院 一种设备密码的登录验证系统及方法
CN114036565A (zh) * 2021-11-19 2022-02-11 上海勃池信息技术有限公司 隐私信息检索系统及隐私信息检索方法
US20220395748A1 (en) * 2021-06-09 2022-12-15 Nvidia Corporation Projective hash maps
US20230038135A1 (en) * 2021-07-23 2023-02-09 Arizona Board Of Regents On Behalf Of Northern Arizona University Salted hashing method for response-based cryptography

Patent Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105721390A (zh) * 2014-12-01 2016-06-29 阿里巴巴集团控股有限公司 一种加密存储方法和装置
US20170235941A1 (en) * 2016-02-16 2017-08-17 Samsung Electronics Co., Ltd. Key generating method and apparatus using characteristic of memory
CN106611128A (zh) * 2016-07-19 2017-05-03 四川用联信息技术有限公司 云存储中基于二次加密的数据验证和数据恢复算法
US20200013316A1 (en) * 2017-03-31 2020-01-09 Beijing Jingdong Shangke Information Technology Co., Ltd. Information Encryption Method and Device
CN108197478A (zh) * 2017-08-08 2018-06-22 鸿秦(北京)科技有限公司 一种采用随机盐值的NandFlash加密文件系统
CN109687966A (zh) * 2017-10-18 2019-04-26 北京明特量化信息技术有限公司 加密方法及其系统
CN108134666A (zh) * 2018-02-07 2018-06-08 北京安博通科技股份有限公司 一种加密解密方法及装置
CN110519300A (zh) * 2019-09-24 2019-11-29 杭州字节信息技术有限公司 基于口令双向认证的客户端密钥安全存储方法
CN111274557A (zh) * 2020-01-19 2020-06-12 广州数智网络科技有限公司 用于2d矢量图版权保护的鲁棒可逆水印算法
CN112311541A (zh) * 2020-11-16 2021-02-02 南京大学 一种基于外差测量的四态量子密钥分发方法及系统
US20220395748A1 (en) * 2021-06-09 2022-12-15 Nvidia Corporation Projective hash maps
CN113556321A (zh) * 2021-06-22 2021-10-26 杭州安恒信息技术股份有限公司 口令认证方法、系统、电子装置和存储介质
CN113473360A (zh) * 2021-06-25 2021-10-01 湖北工业大学 一种基于位置服务的隐私保护配送服务系统及方法
US20230038135A1 (en) * 2021-07-23 2023-02-09 Arizona Board Of Regents On Behalf Of Northern Arizona University Salted hashing method for response-based cryptography
CN113626802A (zh) * 2021-08-23 2021-11-09 重庆第二师范学院 一种设备密码的登录验证系统及方法
CN114036565A (zh) * 2021-11-19 2022-02-11 上海勃池信息技术有限公司 隐私信息检索系统及隐私信息检索方法

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
WEI-CHI KU等: "Weaknesses of Lee-Li-Hwang\'s hash-based password authentication scheme", 《ACM SIGOPS OPERATING SYSTEMS REVIEW》 *
何增颖;: "分形拓扑变幻的随机密钥生成算法研究", 计算机仿真 *
吴成宾;: "散列算法中一种盐值的实现", 成都大学学报(自然科学版) *
李兴望等: "一种带有盐度值的安全哈希加密算法的设计与实现", 《漳州师范学院学报(自然科学版) 》 *
祁鑫;魏美荣;蒋文保;: "口令加密算法安全性分析与对比", 网络空间安全 *
祝彦斌;王春玲;: "一种Hash特征隐藏的加盐信息摘要模型", 计算机技术与发展 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116992495A (zh) * 2023-09-27 2023-11-03 江铃汽车股份有限公司 办公室文件加密存储方法、系统、存储介质及电子设备
CN116992495B (zh) * 2023-09-27 2024-02-27 江铃汽车股份有限公司 办公室文件加密存储方法、系统、存储介质及电子设备
CN117032592A (zh) * 2023-10-08 2023-11-10 湖南省金河计算机科技有限公司 一种基于区块链的收款机收款数据储存系统
CN117032592B (zh) * 2023-10-08 2023-12-12 湖南省金河计算机科技有限公司 一种基于区块链的收款机收款数据储存系统
CN117278986A (zh) * 2023-11-23 2023-12-22 浙江小遛信息科技有限公司 共享出行的数据处理方法和数据处理设备
CN117278986B (zh) * 2023-11-23 2024-03-15 浙江小遛信息科技有限公司 共享出行的数据处理方法和数据处理设备

Also Published As

Publication number Publication date
CN115955307B (zh) 2023-05-23

Similar Documents

Publication Publication Date Title
CN115955307A (zh) 用户密码加盐保护方法、装置、可读存储介质及电子设备
CN106416124B (zh) 半确定性数字签名生成
RU2506637C2 (ru) Способ и устройство верификации динамического пароля
CN110113203B (zh) 一种用于加密模型的安全性评估的方法和设备
Chatzikonstantinou et al. Evaluation of cryptography usage in android applications
US20170097900A1 (en) Secure island computing system and method
CN105024803B (zh) 白箱实现中的行为指纹
CN115913553B (zh) 一种基于非线性映射的数据加密方法
CN106055936A (zh) 可执行程序数据包加密/解密方法及装置
CN115630355A (zh) 密码模块的安全评测方法、安全评测设备以及存储介质
CN105653902B (zh) 软件注册方法和装置,注册码生成方法和装置
CN115982761A (zh) 敏感信息处理方法、装置、电子设备和存储介质
WO2016063512A1 (ja) Macタグリスト生成装置、macタグリスト検証装置、macタグリスト生成方法、macタグリスト検証方法およびプログラム記録媒体
CN107026729B (zh) 用于传输软件的方法和装置
CN112199730A (zh) 一种终端上应用数据的处理方法、装置及电子设备
CN101795268B (zh) 一种增强用户安全模型安全性的方法和装置
CN111737747A (zh) 数据库保密方法、装置、设备及计算机存储介质
CN106452755A (zh) 基于客户端解密密文的重置保护口令的方法、装置及系统
CN108881664B (zh) 图像存储及打开方法、处理设备、处理系统、存储装置
CN114297597B (zh) 一种账户管理方法、系统、设备及计算机可读存储介质
CN111385083B (zh) 密钥保护方法及密钥保护系统
CN112580114B (zh) 一种信息处理方法、装置、设备及存储介质
CN114218597A (zh) 一种适用于企业内部隐私数据保密的方法及系统
CN113111396A (zh) 一种增强存储媒体安全性的方法及系统及装置及介质
CN100546242C (zh) 一种超级密码的生成和认证方法

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
CB03 Change of inventor or designer information
CB03 Change of inventor or designer information

Inventor after: Chen Caiwei

Inventor after: He Changhai

Inventor after: Zeng Zhongan

Inventor after: Fan Haidong

Inventor after: Ye Kai

Inventor after: Ding Chuan

Inventor after: Lu Bingqing

Inventor before: Chen Caiwei

Inventor before: Ji Zhengrong

Inventor before: He Changhai

Inventor before: Zeng Zhongan

Inventor before: Fan Haidong

Inventor before: Ye Kai

Inventor before: Ding Chuan

Inventor before: Lu Bingqing