CN103139136A - 一种密码的管理方法和设备 - Google Patents
一种密码的管理方法和设备 Download PDFInfo
- Publication number
- CN103139136A CN103139136A CN2011103731594A CN201110373159A CN103139136A CN 103139136 A CN103139136 A CN 103139136A CN 2011103731594 A CN2011103731594 A CN 2011103731594A CN 201110373159 A CN201110373159 A CN 201110373159A CN 103139136 A CN103139136 A CN 103139136A
- Authority
- CN
- China
- Prior art keywords
- password
- hash
- hash algorithm
- stored
- verified
- 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
Links
Images
Landscapes
- Storage Device Security (AREA)
Abstract
本申请公开了一种密码的管理方法和设备,该方法包括:服务器获得待存储的用户名和密码;所述服务器选择HASH算法,并利用所述HASH算法对所述待存储的密码进行HASH处理,获得待存储的HASH密码;所述服务器查询用于记录HASH算法与HASH算法标识的对应关系的HASH算法对应结构,确定所述HASH算法对应的HASH算法标识;所述服务器在用于记录用户名与HASH密码的对应关系的用户数据结构中记录所述HASH算法标识、所述待存储的用户名、以及所述待存储的HASH密码之间的对应关系;所述HASH算法对应结构与所述用户数据结构位于不同的受限区域。本申请实施例中,通过将HASH算法对应结构与用户数据结构存储在不同的受限区域,有效减轻了攻击者入侵可能带来的危害。
Description
技术领域
本申请涉及通信技术领域,尤其涉及一种密码的管理方法和设备。
背景技术
在密码的存储过程中,需要将用户输入的用户名和密码存储到同一个持久存储(例如,关系型数据库的一张或数张表)中。在存储密码时,当前的主流方式是采用md5(或变形)HASH(哈希)算法对密码进行单向散列后,将所得到的HASH值保存在持久存储的密码字段中。
在密码的校验过程中,需要提示用户输入自身的用户名和密码,以确定是否校验通过。在校验密码时,需要对用户输入的密码进行HASH算法(此时的HASH算法与存储密码时的HASH算法相同)的运算,之后判断用户输入的用户名以及经过运算的密码、与持久存储中存储的用户名和HASH值是否一致,如果一致,则校验通过,认定用户为合法用户,否则校验不通过,认定用户为未经授权的用户。
在实现本申请的过程中,发明人发现现有技术中至少存在以下问题:
对于当前采用的密码存储方式,攻击者在攻入保存用户账号的持久存储后,只要获得有限个用户名和密码的HASH值,就可能获知采用的HASH算法是什么(如获知采用的HASH算法为md5算法),继而可以通过和标准HASH算法的结果进行比对的方法,最终得到用户的原始密码,从而可以通过密码的校验过程,造成巨大的损失。
发明内容
本申请实施例提供一种密码的管理方法和设备,以保证密码存储的安全性,有效减轻了了攻击者入侵可能带来的危害。
为了达到上述目的,本申请实施例提供一种密码的管理方法,包括:
服务器获得待存储的用户名和密码;
所述服务器选择HASH算法,并利用所述HASH算法对所述待存储的密码进行HASH处理,获得待存储的HASH密码;
所述服务器查询用于记录HASH算法与HASH算法标识的对应关系的HASH算法对应结构,确定所述HASH算法对应的HASH算法标识;
所述服务器在用于记录用户名与HASH密码的对应关系的用户数据结构中记录所述HASH算法标识、所述待存储的用户名、以及所述待存储的HASH密码之间的对应关系;
所述HASH算法对应结构与所述用户数据结构位于不同的受限区域。
本申请实施例提供一种密码的管理设备,包括:
获得模块,用于获得待存储的用户名和密码;
处理模块,用于选择HASH算法,并利用所述HASH算法对所述待存储的密码进行HASH处理,获得待存储的HASH密码;
确定模块,用于查询用于记录HASH算法与HASH算法标识的对应关系的HASH算法对应结构,确定所述HASH算法对应的HASH算法标识;
记录模块,用于在用于记录用户名与HASH密码的对应关系的用户数据结构中记录所述HASH算法标识、所述待存储的用户名、以及所述待存储的HASH密码之间的对应关系;
所述HASH算法对应结构与所述用户数据结构位于不同的受限区域。
与现有技术相比,本申请实施例至少具有以下优点:通过将HASH算法对应结构与用户数据结构存储在不同的受限区域,有效减轻了攻击者(即黑客)入侵可能带来的危害。
附图说明
为了更清楚地说明本申请的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例一提供的一种密码的管理方法流程示意图;
图2是本申请实施例二提供的一种密码的管理方法流程示意图;
图3是本申请实施例三提供的一种密码的管理设备结构示意图。
具体实施方式
下面将结合本申请中的附图,对本申请中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
实施例一
本申请实施例一提供一种密码的管理方法,该方法应用于包括服务器和用户设备的网络系统中,服务器上至少维护有HASH算法对应结构和用户数据结构,HASH算法对应结构用于记录HASH算法与HASH算法标识的对应关系,用户数据结构用于记录用户名与HASH密码的对应关系。
需要注意的是,HASH算法对应结构和用户数据结构可以通过表格(即库表)的方式实现,也可以通过其他方式实现,例如,通过文件方式实现、通过磁带方式实现等。后续以表格方式举例说明,如表1所示的HASH算法对应结构以及表2所示的用户数据结构,在用户数据结构中的用户数据字段为用户的具体信息(如身高、体重等),后续不再说明。
表1
HASH算法 | HASH算法标识 |
HASH算法A | 1 |
HASH算法B | 2 |
表2
用户名 | HASH密码 | 用户数据字段 |
用户A | HASH密码A | Data1-n |
用户B | HASH密码B | Data2-n |
基于在服务器上维护的HASH算法对应结构和用户数据结构,如图1所示,该密码的管理方法包括以下步骤:
步骤101,服务器获得待存储的用户名和密码。
在密码的存储过程(如用户在服务器上的注册过程)中,用户会通过用户设备向服务器输入用户名和密码,之后,服务器可获得用户输入的用户名和密码,该用户名和密码为待存储的用户名和密码。
步骤102,服务器选择HASH算法。
服务器上可配置有多种HASH算法(如HASH算法A、HASH算法B等),在获得待存储的用户名和密码后,服务器可以任意选择(如随机选择)一种HASH算法,该HASH算法用于对待存储的密码进行处理。
步骤103,服务器利用选择的HASH算法对待存储的密码进行HASH处理,获得待存储的HASH密码。
例如,在选择的HASH算法为HASH算法A时,则服务器利用HASH算法A对待存储的密码进行HASH处理,获得待存储的HASH密码,具体的算法过程本申请实施例中不再赘述。
本申请实施例中,在选择了HASH算法后,服务器还需要查询HASH算法对应结构,以确定HASH算法对应的HASH算法标识;例如,当选择的HASH算法为HASH算法A时,则通过查询HASH算法对应结构可知对应的HASH算法标识为1。
步骤104,服务器在用户数据结构中记录HASH算法标识、待存储的用户名、以及待存储的HASH密码之间的对应关系。
以待存储的用户名为用户C,经过步骤103所获得的待存储的HASH密码为HASH密码C,选择的HASH算法为HASH算法A为例,则可以在用户数据结构中记录表3所示的对应关系。
表3
HASH算法标识 | 用户名 | HASH密码 |
1 | 用户C | HASH密码C |
上述处理过程为密码的存储过程,在密码的校验过程(如用户通过注册的密码访问服务器上的内容时,服务器需要对用户输入的密码进行检验,以确定是否允许用户访问)中,还可以包括以下步骤:
步骤105,服务器获得待校验的用户名和密码。
在密码的校验过程中,用户会通过用户设备向服务器输入用户名和密码,服务器可获得用户输入的用户名和密码,该用户名和密码为待校验的用户名和密码(之前已经存储有对应的用户名和密码,此时需要对密码进行校验)。
步骤106,服务器利用待校验的用户名查询用户数据结构中记录的用户名,获得对应的HASH算法标识。
例如,待校验的用户名为用户C,则通过查询用户数据结构,可知对应的HASH算法标识为1。
步骤107,服务器利用获得的HASH算法标识查询HASH算法对应结构,确定HASH算法标识对应的HASH算法。
例如,服务器利用HASH算法标识1查询表1所示的HASH算法对应结构,可知对应的HASH算法为HASH算法A。
步骤108,服务器利用确定的HASH算法对待校验的密码进行HASH处理,获得待校验的HASH密码。
例如,服务器利用HASH算法A对待校验的密码进行HASH处理,获得待校验的HASH密码。
步骤109,当待校验的HASH密码与在用户数据结构中查询到的用户名所对应的HASH密码相同时,则服务器确定校验通过,否则确定校验不通过。
例如,在用户数据结构中查询到的用户名为用户C,对应的HASH密码为HASH密码C时,则当待校验的HASH密码为密码C时,服务器确定校验通过;当待校验的HASH密码不是密码C时,服务器校验不通过。
本申请实施例中,需要将HASH算法对应结构与用户数据结构存储在不同的受限区域,该受限区域为:只有通过验证以及授权等处理后,才可以访问的区域,即普通用户和攻击者无法访问的区域。例如,将HASH算法对应结构和用户数据结构存储在不同的服务器(受限服务器)上;又例如,将用户数据结构存储在服务器的数据库上,并以程序源代码方式存储HASH算法对应结构(HASH算法可以在具体的程序代码中指定和扩展)。
因此,通过将HASH算法对应结构与用户数据结构存储在不同的受限区域,有效减轻了攻击者(如黑客)入侵可能带来的危害。例如,当攻击者获得用户数据结构中的信息时,由于攻击者没有获知HASH算法对应结构中的信息,且不同用户所采用的HASH算法会不同,因此攻击者无法通过获得的信息获知采用的HASH算法是什么,继而无法得到用户的原始密码,也就无法通过密码的校验过程,从而保证了访问的安全性,避免了攻击所造成的损失。又例如,当攻击者获得HASH算法对应结构中的信息时,由于攻击者没有获知用户数据结构中的信息,因此保证了访问的安全性,避免了攻击所造成的损失。
本申请实施例中,步骤103利用HASH算法获得待存储的HASH密码时,服务器还可以利用干扰位信息获得待存储的HASH密码,即利用HASH算法对待存储的密码和干扰位信息进行HASH处理,获得待存储的HASH密码。该过程可通过加料散列(SALT)的算法实现,加料散列为:对HASH的原始数据进行干扰的加料数据,也称为干扰数据。
基于此,步骤104在用户数据结构中记录对应关系时,需要在对应关系中记录干扰位信息;步骤108在利用确定的HASH算法获得待校验的HASH密码时,服务器还需要通过查询用户数据结构获得对应的干扰位信息,并利用干扰位信息获得待校验的HASH密码,即利用HASH算法对待校验的密码和干扰位信息进行HASH处理,获得待校验的HASH密码。
如表4所示,其为添加了干扰位信息的用户数据结构,通过表4可知,服务器在利用HASH算法A对待存储的密码以及SALT-1(干扰位信息)进行HASH处理后,可得到HASH密码C。
表4
HASH算法标识 | 用户名 | HASH密码 | SALT |
1 | 用户C | HASH密码C | SALT-1 |
本申请实施例中,通过增加其他的数据(SALT)来影响最终生成的HASH密码,从而可以进一步避免攻击者入侵可能带来的危害。例如,不同的用户即使采用相同HASH算法,则由于SALT(干扰数据)的存在,仍然可能取到不同的HASH密码值;因此,即使攻击者得到了一些HASH密码值(非侵入数据库方式取得),攻击者所得到的HASH密码值也没有太大的意义。
实施例二
本申请实施例二提供一种密码的管理方法,该方法应用于包括服务器和用户设备的网络系统中,服务器上至少维护有HASH算法对应结构、系统共享密码对应结构和用户数据结构,HASH算法对应结构用于记录HASH算法与HASH算法标识的对应关系,系统共享密码对应结构用于记录系统共享密码与系统共享密码版本的对应关系,用户数据结构用于记录用户名与HASH密码的对应关系。
需要注意的是,HASH算法对应结构、系统共享密码对应结构和用户数据结构可以通过表格(即库表)的方式实现,也可以通过其他方式实现,例如,通过文件方式实现、通过磁带方式实现等。后续以表格方式举例说明。HASH算法对应结构和用户数据结构如表1和表2所示,系统共享密码对应结构如表5所示。
表5
系统共享密码 | 系统共享密码版本 |
系统共享密码A | 1 |
系统共享密码B | 2 |
基于在服务器上维护的HASH算法对应结构、系统共享密码对应结构和用户数据结构,如图2所示,该密码的管理方法包括以下步骤:
步骤201,服务器获得待存储的用户名和密码。在密码的存储过程中,用户会通过用户设备向服务器输入用户名和密码,之后,服务器可获得用户输入的用户名和密码,该用户名和密码为待存储的用户名和密码。
步骤202,服务器选择HASH算法以及选择系统共享密码。
服务器上可配置有多种HASH算法,在获得待存储的用户名和密码后,服务器可以任意选择一种HASH算法。此外,服务器上还可以配置多个系统共享密码(如系统共享密码A、系统共享密码B等),在获得待存储的用户名和密码后,服务器可以任意选择(如随机选择)一个系统共享密码。
步骤203,服务器利用选择的HASH算法对待存储的密码和系统共享密码进行HASH处理,获得待存储的HASH密码。
例如,在选择的HASH算法为HASH算法A、选择的系统共享密码为系统共享密码A时,则服务器利用HASH算法A对待存储的密码和系统共享密码A进行HASH处理,获得待存储的HASH密码,具体的算法过程本申请实施例中不再赘述。
本申请实施例中,在选择了HASH算法后,服务器还需要查询HASH算法对应结构,以确定HASH算法对应的HASH算法标识;例如,当选择的HASH算法为HASH算法A时,则通过查询HASH算法对应结构可知对应的HASH算法标识为1。在选择了系统共享密码后,服务器还需要查询系统共享密码对应结构,以确定系统共享密码对应的系统共享密码版本;例如,当选择的系统共享密码为系统共享密码A时,则通过查询系统共享密码对应结构可知对应的系统共享密码版本为1。
步骤204,服务器在用户数据结构中记录HASH算法标识、系统共享密码版本、待存储的用户名、以及待存储的HASH密码之间的对应关系。
以待存储的用户名为用户D,经过步骤203所获得的待存储的HASH密码为HASH密码D,选择的HASH算法为HASH算法A,选择的系统共享密码为系统共享密码A为例,则可以在用户数据结构中记录表6所示的对应关系。
表6
HASH算法标识 | 系统共享密码版本 | 用户名 | HASH密码 |
1 | 1 | 用户D | HASH密码D |
上述处理过程为密码的存储过程,在密码的校验过程中,还可以包括以下步骤:
步骤205,服务器获得待校验的用户名和密码。
在密码的校验过程中,用户会通过用户设备向服务器输入用户名和密码,服务器可获得用户输入的用户名和密码,该用户名和密码为待校验的用户名和密码。
步骤206,服务器利用待校验的用户名查询用户数据结构中记录的用户名,获得对应的HASH算法标识和系统共享密码版本。
例如,待校验的用户名为用户D,则通过查询用户数据结构,可知对应的HASH算法标识为1,对应的系统共享密码版本为1。
步骤207,服务器利用获得的HASH算法标识查询HASH算法对应结构,确定HASH算法标识对应的HASH算法,以及利用获得的系统共享密码版本查询系统共享密码对应结构,确定系统共享密码版本对应的系统共享密码。
例如,服务器利用HASH算法标识1查询HASH算法对应结构,可知对应的HASH算法为HASH算法A;利用系统共享密码版本1查询系统共享密码对应结构,可知对应的系统共享密码为系统共享密码A。
步骤208,服务器利用确定的HASH算法对待校验的密码和确定的系统共享密码进行HASH处理,获得待校验的HASH密码。
例如,服务器利用HASH算法A对待校验的密码和系统共享密码A进行HASH处理,获得待校验的HASH密码。
步骤209,当待校验的HASH密码与在用户数据结构中查询到的用户名所对应的HASH密码相同时,则服务器确定校验通过,否则确定校验不通过。
例如,在用户数据结构中查询到的用户名为用户D,对应的HASH密码为HASH密码D时,则当待校验的HASH密码为密码D时,服务器确定校验通过;当待校验的HASH密码不是密码D时,服务器校验不通过。
本申请实施例中,需要将HASH算法对应结构、系统共享密码对应结构、以及用户数据结构存储在不同的受限区域,该受限区域为:只有通过验证以及授权等处理后,才可以访问的区域,即普通用户和攻击者无法访问的区域。例如,将HASH算法对应结构、系统共享密码对应结构、和用户数据结构存储在不同的服务器(受限服务器)上;又例如,将用户数据结构存储在服务器的数据库上,并以程序源代码方式存储HASH算法对应结构(HASH算法可以在具体的程序代码中指定和扩展),以及将系统共享密码对应结构存储在生产环境的文件系统(如磁盘)中,并加以权限保护。
因此,通过将HASH算法对应结构、系统共享密码对应结构、以及用户数据结构存储在不同的受限区域,有效减轻了了攻击者入侵可能带来的危害。例如,当攻击者获得用户数据结构中的信息时,由于攻击者没有获知HASH算法对应结构和系统共享密码对应结构中的信息,且不同用户所采用的HASH算法会不同,不同用户所采用的系统共享密码对应结构也不同;因此攻击者无法通过获得的信息获知采用的HASH算法是什么,继而无法得到用户的原始密码(即使知道HASH算法是什么,也无法获知系统共享密码,继而无法得到用户的原始密码),也就无法通过密码的校验过程,从而保证了访问的安全性,避免了攻击所造成的损失。又例如,当攻击者获得HASH算法对应结构中的信息或者系统共享密码对应结构中的信息时,也可以保证访问的安全性。
本申请实施例中,步骤203利用HASH算法获得待存储的HASH密码时,服务器还可以利用干扰位信息获得待存储的HASH密码,即利用HASH算法对待存储的密码、系统共享密码和干扰位信息进行HASH处理,获得待存储的HASH密码。该过程可通过加料散列(SALT)的算法实现,加料散列为:对HASH的原始数据进行干扰的加料数据,也称为干扰数据。
基于此,步骤204在用户数据结构中记录对应关系时,需要在对应关系中记录干扰位信息;步骤208在利用确定的HASH算法获得待校验的HASH密码时,服务器还需要通过查询用户数据结构获得对应的干扰位信息,并利用干扰位信息获得待校验的HASH密码,即利用HASH算法对待校验的密码、系统共享密码和干扰位信息进行HASH处理,获得待校验的HASH密码。
如表7所示,为添加了干扰位信息的用户数据结构,通过表7可知,服务器在利用HASH算法A对待存储的密码、系统共享密码A以及SALT-2(干扰位信息)进行HASH处理后,可得到HASH密码D。
表7
HASH算法标识 | 系统共享密码版本 | SALT | 用户名 | HASH密码 |
1 | 1 | SALT-2 | 用户D | HASH密码D |
本申请实施例中,通过增加其他的数据(SALT)来影响最终生成的HASH密码,从而可以进一步避免攻击者入侵可能带来的危害。例如,不同的用户即使采用相同HASH算法,则由于SALT(干扰数据)的存在,仍然可能取到不同的HASH密码值;因此,即使攻击者得到了一些HASH密码值(非侵入数据库方式取得),攻击者所得到的HASH密码值也没有太大的意义。
为了更加清楚的阐述本申请实施例的具体实现,以选择的HASH算法为Bcrypt算法(基于BLOWFISH算法的用于密码HASH的一种算法),选择的系统共享密码为system_shared_password对具体实现进行说明。
本申请实施例的步骤203中,服务器可计算出hash中间值{hmac_result}=
hmac_create_operation(user_password+system_shared_password);
并可计算bcrypt结果{bcrypt_result}=
bcrypt_create_operation((hmac_result+salt)bcrypt_iterations)。
hmac_result为hash中间值,hmac_create_operation为hash中间值的计算算法,user_password+system为待存储的密码,system_shared_password为系统共享密码;bcrypt_result为待存储的HASH密码,bcrypt_create_operation为选择的Bcrypt算法,salt为干扰位信息,bcrypt iterations为Bcrypt算法的信息。
实施例三
基于与上述方法同样的申请构思,本申请实施例中还提供了一种密码的管理设备(即服务器),如图3所示,该设备包括:
获得模块11,用于获得待存储的用户名和密码;
处理模块12,用于选择HASH算法,并利用所述HASH算法对所述待存储的密码进行HASH处理,获得待存储的HASH密码;
确定模块13,用于查询用于记录HASH算法与HASH算法标识的对应关系的HASH算法对应结构,确定所述HASH算法对应的HASH算法标识;
记录模块14,用于在用于记录用户名与HASH密码的对应关系的用户数据结构中记录所述HASH算法标识、所述待存储的用户名、以及所述待存储的HASH密码之间的对应关系;
所述HASH算法对应结构与所述用户数据结构位于不同的受限区域。
所述获得模块11,还用于获得待校验的用户名和密码;
所述确定模块13,还用于利用所述待校验的用户名查询所述用户数据结构中记录的用户名,获得对应的HASH算法标识,并利用获得的HASH算法标识查询所述HASH算法对应结构,确定HASH算法标识对应的HASH算法;
所述处理模块12,还用于利用确定的HASH算法对所述待校验的密码进行HASH处理,获得待校验的HASH密码;以及,
当所述待校验的HASH密码与在所述用户数据结构中查询到的用户名所对应的HASH密码相同时,确定校验通过,否则确定校验不通过。
所述处理模块12,具体用于选择系统共享密码,并利用所述HASH算法对所述待存储的密码和所述系统共享密码进行HASH处理,获得待存储的HASH密码;
所述确定模块13,还用于查询用于记录系统共享密码与系统共享密码版本的对应关系的系统共享密码对应结构,并确定所述系统共享密码对应的系统共享密码版本;
所述记录模块14,具体用于在所述用户数据结构中记录所述HASH算法标识、所述系统共享密码版本、所述待存储的用户名、以及所述待存储的HASH密码之间的对应关系;
所述HASH算法对应结构、所述系统共享密码对应结构、以及所述用户数据结构位于不同的受限区域。
所述获得模块11,还用于获得待校验的用户名和密码;
所述确定模块13,还用于利用所述待校验的用户名查询所述用户数据结构中记录的用户名,获得对应的HASH算法标识和系统共享密码版本,并利用获得的HASH算法标识查询所述HASH算法对应结构,确定HASH算法标识对应的HASH算法,以及利用获得的系统共享密码版本查询所述系统共享密码对应结构,确定系统共享密码版本对应的系统共享密码;
所述处理模块12,还用于利用确定的HASH算法对所述待校验的密码和确定的系统共享密码进行HASH处理,获得待校验的HASH密码;以及,
当所述待校验的HASH密码与在所述用户数据结构中查询到的用户名所对应的HASH密码相同时,确定校验通过,否则确定校验不通过。
所述处理模块12,还用于在利用所述HASH算法获得待存储的HASH密码时,利用干扰位信息获得待存储的HASH密码;在利用确定的HASH算法获得待校验的HASH密码时,通过查询所述用户数据结构获得对应的干扰位信息,并利用所述干扰位信息获得待校验的HASH密码;
所述记录模块14,还用于在所述用户数据结构中记录所述对应关系时,在所述对应关系中记录所述干扰位信息。
其中,本申请装置的各个模块可以集成于一体,也可以分离部署。上述模块可以合并为一个模块,也可以进一步拆分成多个子模块。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。
本领域技术人员可以理解附图只是一个优选实施例的示意图,附图中的模块或流程并不一定是实施本申请所必须的。
本领域技术人员可以理解实施例中的装置中的模块可以按照实施例描述进行分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
以上公开的仅为本申请的几个具体实施例,但是,本申请并非局限于此,任何本领域的技术人员能思之的变化都应落入本申请的保护范围。
Claims (10)
1.一种密码的管理方法,其特征在于,包括:
服务器获得待存储的用户名和密码;
所述服务器选择HASH算法,并利用所述HASH算法对所述待存储的密码进行HASH处理,获得待存储的HASH密码;
所述服务器查询用于记录HASH算法与HASH算法标识的对应关系的HASH算法对应结构,确定所述HASH算法对应的HASH算法标识;
所述服务器在用于记录用户名与HASH密码的对应关系的用户数据结构中记录所述HASH算法标识、所述待存储的用户名、以及所述待存储的HASH密码之间的对应关系;
所述HASH算法对应结构与所述用户数据结构位于不同的受限区域。
2.如权利要求1所述的方法,其特征在于,所述服务器在用户数据结构中记录所述HASH算法标识、所述待存储的用户名、以及所述待存储的HASH密码之间的对应关系,之后还包括:
所述服务器获得待校验的用户名和密码;
所述服务器利用所述待校验的用户名查询所述用户数据结构中记录的用户名,获得对应的HASH算法标识,并利用获得的HASH算法标识查询所述HASH算法对应结构,确定HASH算法标识对应的HASH算法;
所述服务器利用确定的HASH算法对所述待校验的密码进行HASH处理,获得待校验的HASH密码;
当所述待校验的HASH密码与在所述用户数据结构中查询到的用户名所对应的HASH密码相同时,则所述服务器确定校验通过,否则确定校验不通过。
3.如权利要求1所述的方法,其特征在于,所述服务器利用所述HASH算法对所述待存储的密码进行HASH处理,获得待存储的HASH密码,包括:
所述服务器选择系统共享密码,并利用所述HASH算法对所述待存储的密码和所述系统共享密码进行HASH处理,获得待存储的HASH密码;
所述服务器在用户数据结构中记录所述HASH算法标识、所述待存储的用户名、以及所述待存储的HASH密码之间的对应关系,包括:
所述服务器查询用于记录系统共享密码与系统共享密码版本的对应关系的系统共享密码对应结构,确定所述系统共享密码对应的系统共享密码版本;
所述服务器在所述用户数据结构中记录所述HASH算法标识、所述系统共享密码版本、所述待存储的用户名、以及所述待存储的HASH密码之间的对应关系;
所述HASH算法对应结构、所述系统共享密码对应结构、以及所述用户数据结构位于不同的受限区域。
4.如权利要求3所述的方法,其特征在于,所述服务器在所述用户数据结构中记录所述HASH算法标识、所述系统共享密码版本、所述待存储的用户名、以及所述待存储的HASH密码之间的对应关系,之后还包括:
所述服务器获得待校验的用户名和密码;
所述服务器利用所述待校验的用户名查询所述用户数据结构中记录的用户名,获得对应的HASH算法标识和系统共享密码版本,并利用获得的HASH算法标识查询所述HASH算法对应结构,确定HASH算法标识对应的HASH算法,以及利用获得的系统共享密码版本查询所述系统共享密码对应结构,确定系统共享密码版本对应的系统共享密码;
所述服务器利用确定的HASH算法对所述待校验的密码和确定的系统共享密码进行HASH处理,获得待校验的HASH密码;
当所述待校验的HASH密码与在所述用户数据结构中查询到的用户名所对应的HASH密码相同时,则所述服务器确定校验通过,否则确定校验不通过。
5.如权利要求2或4所述的方法,其特征在于,所述方法还包括:
在利用所述HASH算法获得待存储的HASH密码时,所述服务器利用干扰位信息获得待存储的HASH密码;在所述用户数据结构中记录所述对应关系时,在所述对应关系中记录所述干扰位信息;
在利用确定的HASH算法获得待校验的HASH密码时,所述服务器通过查询所述用户数据结构获得对应的干扰位信息,并利用所述干扰位信息获得待校验的HASH密码。
6.一种密码的管理设备,其特征在于,包括:
获得模块,用于获得待存储的用户名和密码;
处理模块,用于选择HASH算法,并利用所述HASH算法对所述待存储的密码进行HASH处理,获得待存储的HASH密码;
确定模块,用于查询用于记录HASH算法与HASH算法标识的对应关系的HASH算法对应结构,确定所述HASH算法对应的HASH算法标识;
记录模块,用于在用于记录用户名与HASH密码的对应关系的用户数据结构中记录所述HASH算法标识、所述待存储的用户名、以及所述待存储的HASH密码之间的对应关系;
所述HASH算法对应结构与所述用户数据结构位于不同的受限区域。
7.如权利要求6所述的设备,其特征在于,
所述获得模块,还用于获得待校验的用户名和密码;
所述确定模块,还用于利用所述待校验的用户名查询所述用户数据结构中记录的用户名,获得对应的HASH算法标识,并利用获得的HASH算法标识查询所述HASH算法对应结构,确定HASH算法标识对应的HASH算法;
所述处理模块,还用于利用确定的HASH算法对所述待校验的密码进行HASH处理,获得待校验的HASH密码;以及,
当所述待校验的HASH密码与在所述用户数据结构中查询到的用户名所对应的HASH密码相同时,确定校验通过,否则确定校验不通过。
8.如权利要求6所述的设备,其特征在于,
所述处理模块,具体用于选择系统共享密码,并利用所述HASH算法对所述待存储的密码和所述系统共享密码进行HASH处理,获得待存储的HASH密码;
所述确定模块,还用于查询用于记录系统共享密码与系统共享密码版本的对应关系的系统共享密码对应结构,并确定所述系统共享密码对应的系统共享密码版本;
所述记录模块,具体用于在所述用户数据结构中记录所述HASH算法标识、所述系统共享密码版本、所述待存储的用户名、以及所述待存储的HASH密码之间的对应关系;
所述HASH算法对应结构、所述系统共享密码对应结构、以及所述用户数据结构位于不同的受限区域。
9.如权利要求8所述的设备,其特征在于,
所述获得模块,还用于获得待校验的用户名和密码;
所述确定模块,还用于利用所述待校验的用户名查询所述用户数据结构中记录的用户名,获得对应的HASH算法标识和系统共享密码版本,并利用获得的HASH算法标识查询所述HASH算法对应结构,确定HASH算法标识对应的HASH算法,以及利用获得的系统共享密码版本查询所述系统共享密码对应结构,确定系统共享密码版本对应的系统共享密码;
所述处理模块,还用于利用确定的HASH算法对所述待校验的密码和确定的系统共享密码进行HASH处理,获得待校验的HASH密码;以及,
当所述待校验的HASH密码与在所述用户数据结构中查询到的用户名所对应的HASH密码相同时,确定校验通过,否则确定校验不通过。
10.如权利要求7或9所述的设备,其特征在于,
所述处理模块,还用于在利用所述HASH算法获得待存储的HASH密码时,利用干扰位信息获得待存储的HASH密码;在利用确定的HASH算法获得待校验的HASH密码时,通过查询所述用户数据结构获得对应的干扰位信息,并利用所述干扰位信息获得待校验的HASH密码;
所述记录模块,还用于在所述用户数据结构中记录所述对应关系时,在所述对应关系中记录所述干扰位信息。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110373159.4A CN103139136B (zh) | 2011-11-22 | 2011-11-22 | 一种密码的管理方法和设备 |
HK13108314.7A HK1181208A1 (zh) | 2011-11-22 | 2013-07-16 | 種密碼的管理方法和設備 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110373159.4A CN103139136B (zh) | 2011-11-22 | 2011-11-22 | 一种密码的管理方法和设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103139136A true CN103139136A (zh) | 2013-06-05 |
CN103139136B CN103139136B (zh) | 2016-06-08 |
Family
ID=48498452
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110373159.4A Active CN103139136B (zh) | 2011-11-22 | 2011-11-22 | 一种密码的管理方法和设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN103139136B (zh) |
HK (1) | HK1181208A1 (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017035823A1 (en) * | 2015-09-04 | 2017-03-09 | Hewlett Packard Enterprise Development Lp | Password generation with key and derivation parameter |
CN107104787A (zh) * | 2017-04-26 | 2017-08-29 | 山东开创云软件有限公司 | 一种对抗密码破解的密码设置方法 |
CN107615797A (zh) * | 2015-05-25 | 2018-01-19 | 邵通 | 一种隐藏用户标识数据的装置、方法和系统 |
CN109194483A (zh) * | 2018-08-10 | 2019-01-11 | 北京首汽智行科技有限公司 | 基于区块链的数据校验方法 |
CN110300158A (zh) * | 2019-06-05 | 2019-10-01 | 黄疆 | 基于ad域映射访问nas的方法和系统 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070074038A1 (en) * | 2005-09-29 | 2007-03-29 | International Business Machines Corporation | Method, apparatus and program storage device for providing a secure password manager |
CN101022340A (zh) * | 2007-03-30 | 2007-08-22 | 武汉烽火网络有限责任公司 | 实现城域以太网交换机接入安全的智能控制方法 |
CN101127600A (zh) * | 2006-08-14 | 2008-02-20 | 华为技术有限公司 | 一种用户接入认证的方法 |
CN101291224A (zh) * | 2007-04-17 | 2008-10-22 | 美国博通公司 | 在通信系统中处理数据的方法和系统 |
CN101777978A (zh) * | 2008-11-24 | 2010-07-14 | 华为终端有限公司 | 一种基于无线终端的数字证书申请方法、系统及无线终端 |
CN101815091A (zh) * | 2010-03-12 | 2010-08-25 | 薛明 | 密码提供设备、密码认证系统和密码认证方法 |
CN102045169A (zh) * | 2010-12-10 | 2011-05-04 | 厦门市美亚柏科信息股份有限公司 | 一种新口令认证方法和装置 |
-
2011
- 2011-11-22 CN CN201110373159.4A patent/CN103139136B/zh active Active
-
2013
- 2013-07-16 HK HK13108314.7A patent/HK1181208A1/zh unknown
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070074038A1 (en) * | 2005-09-29 | 2007-03-29 | International Business Machines Corporation | Method, apparatus and program storage device for providing a secure password manager |
CN101127600A (zh) * | 2006-08-14 | 2008-02-20 | 华为技术有限公司 | 一种用户接入认证的方法 |
CN101022340A (zh) * | 2007-03-30 | 2007-08-22 | 武汉烽火网络有限责任公司 | 实现城域以太网交换机接入安全的智能控制方法 |
CN101291224A (zh) * | 2007-04-17 | 2008-10-22 | 美国博通公司 | 在通信系统中处理数据的方法和系统 |
CN101777978A (zh) * | 2008-11-24 | 2010-07-14 | 华为终端有限公司 | 一种基于无线终端的数字证书申请方法、系统及无线终端 |
CN101815091A (zh) * | 2010-03-12 | 2010-08-25 | 薛明 | 密码提供设备、密码认证系统和密码认证方法 |
CN102045169A (zh) * | 2010-12-10 | 2011-05-04 | 厦门市美亚柏科信息股份有限公司 | 一种新口令认证方法和装置 |
Non-Patent Citations (2)
Title |
---|
吴成宾: "散列算法中一种盐值的实现", 《成都大学学报:自然科学版》, vol. 25, no. 2, 30 June 2006 (2006-06-30) * |
王岁花等: "基于.NET的分布式系统用户密码加密方案设计", 《信阳师范学院学报:自然科学版》, vol. 20, no. 2, 10 April 2007 (2007-04-10) * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107615797A (zh) * | 2015-05-25 | 2018-01-19 | 邵通 | 一种隐藏用户标识数据的装置、方法和系统 |
WO2017035823A1 (en) * | 2015-09-04 | 2017-03-09 | Hewlett Packard Enterprise Development Lp | Password generation with key and derivation parameter |
CN108292992A (zh) * | 2015-09-04 | 2018-07-17 | 慧与发展有限责任合伙企业 | 利用密钥和推导参数进行密码生成 |
US10715320B2 (en) | 2015-09-04 | 2020-07-14 | Hewlett Packard Enterprise Development Lp | Password generation with key and derivation parameter |
CN107104787A (zh) * | 2017-04-26 | 2017-08-29 | 山东开创云软件有限公司 | 一种对抗密码破解的密码设置方法 |
CN109194483A (zh) * | 2018-08-10 | 2019-01-11 | 北京首汽智行科技有限公司 | 基于区块链的数据校验方法 |
CN110300158A (zh) * | 2019-06-05 | 2019-10-01 | 黄疆 | 基于ad域映射访问nas的方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN103139136B (zh) | 2016-06-08 |
HK1181208A1 (zh) | 2013-11-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10326795B2 (en) | Techniques to provide network security through just-in-time provisioned accounts | |
US10999311B2 (en) | Risk score generation for assets of an enterprise system utilizing user authentication activity | |
US20170324728A1 (en) | Resource access control for virtual machines | |
US20170195334A1 (en) | Computer readable storage media for tiered connection pooling and methods and systems for utilizing same | |
US10587596B1 (en) | Framework for authenticating new users | |
US9369450B1 (en) | Methods preserving user identities during login and related systems, devices, and machines | |
US11146553B2 (en) | Systems and methods for online fraud detection | |
US11075765B2 (en) | Scope-based certificate deployment | |
US20120030576A1 (en) | Reducing the value of a browser fingerprint | |
CN103139136A (zh) | 一种密码的管理方法和设备 | |
CN110750793B (zh) | 一种漏洞扫描方法及装置 | |
US20150350214A1 (en) | Individualized audit log access control for virtual machines | |
US20200134169A1 (en) | Managing passwords | |
US20190089688A1 (en) | Twin factor authentication for controller | |
US10594693B2 (en) | Electronic device identification | |
US10171471B2 (en) | Evidence-based role based access control | |
US10332569B2 (en) | System and method for dynamic caching | |
US20140157383A1 (en) | Access management system and method | |
US20190104147A1 (en) | Intrusion investigation | |
US11463426B1 (en) | Vaultless authentication | |
KR102018348B1 (ko) | 사용자 행동 분석 기반의 목표계정 탈취 감지 장치 | |
US10951600B2 (en) | Domain authentication | |
US10841285B2 (en) | Networked security system | |
US10073975B2 (en) | Application integrity verification in multi-tier architectures | |
US11784996B2 (en) | Runtime credential requirement identification for incident response |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 1181208 Country of ref document: HK |
|
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: GR Ref document number: 1181208 Country of ref document: HK |