CN103685149B - 处理登陆服务器的密码的方法和装置 - Google Patents

处理登陆服务器的密码的方法和装置 Download PDF

Info

Publication number
CN103685149B
CN103685149B CN201210321269.0A CN201210321269A CN103685149B CN 103685149 B CN103685149 B CN 103685149B CN 201210321269 A CN201210321269 A CN 201210321269A CN 103685149 B CN103685149 B CN 103685149B
Authority
CN
China
Prior art keywords
password
account
index
character string
record
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.)
Expired - Fee Related
Application number
CN201210321269.0A
Other languages
English (en)
Other versions
CN103685149A (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.)
ZTE Corp
Original Assignee
ZTE Corp
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 ZTE Corp filed Critical ZTE Corp
Priority to CN201210321269.0A priority Critical patent/CN103685149B/zh
Priority to PCT/CN2013/079422 priority patent/WO2013170822A2/zh
Publication of CN103685149A publication Critical patent/CN103685149A/zh
Application granted granted Critical
Publication of CN103685149B publication Critical patent/CN103685149B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

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/083Network architectures or network communication protocols for network security for authentication of entities using passwords

Abstract

本发明提供一种处理登陆服务器的密码的方法和装置。所述处理登陆服务器的密码的方法,包括:获取用户登录服务器时输入的第一账号和第一密码;根据所述第一账号和所述第一密码,生成第一索引;查找所述第一账号对应的第二索引;根据所述第一索引和所述第二索引,查找第一密码表中的第一记录;获取所述第一记录中保存的第二密码;将所述第二密码和所述第一密码进行比较,生成比较结果;如果所述比较结果为相同,则允许所述用户登录。本发明能够提高保存密码的安全性。

Description

处理登陆服务器的密码的方法和装置
技术领域
本发明涉及网络安全技术领域,特别是指一种处理登陆服务器的密码的方法和装置。
背景技术
随着网络应用的快速发展,网络用户的账号信息被盗现象也日趋严重,网络安全成为一个不容忽视的问题。一个用户通常同时拥有多个网络账号,如网络游戏账号、网上银行账户、即时通信账号、电子邮箱账号等等,这些账号所代表的价值甚至超过人们的实物财产。但由于网络的虚拟性,网络窃贼难以被发现,因此网络盗窃现象及其严重,网络账号防盗技术就显得尤其重要。
通常,用户账号信息保存在服务器的数据库表中,这个表有个两个字段,一个字段保存用户账号,一个字段保存用户密码,一个用户占用用户信息表的一行,也就是一个数据记录。当用户登录时,程序将用户填写的信息与数据库表中的信息对照,如果用户账号和密码都准确无误,那么说明这个用户是合法用户,通过登录;反之,则是非法用户,不许用户通过。
将用户账号和密码直接保存在一张数据库表中,并没有进行任何保密措施,如果非法用户得到这个文件,轻易得就能获取用户账号和密码。如果一个不负责的服务器管理员,不需要任何技术手段,就可以查看服务器中的用户账号信息。
发明内容
本发明要解决的技术问题是提供一种处理登陆服务器的密码的方法和装置,能够提供服务器的密码的保存的安全性。
为解决上述技术问题,本发明的实施例提供技术方案如下:
一方面,提供一种处理登陆服务器的密码的方法,包括:
获取用户登录服务器时输入的第一账号和第一密码;
根据所述第一账号和所述第一密码,生成第一索引;
查找所述第一账号对应的第二索引;
根据所述第一索引和所述第二索引,查找第一密码表中的第一记录;
获取所述第一记录中保存的第二密码;
将所述第二密码和所述第一密码进行比较,生成比较结果;
如果所述比较结果为相同,则允许所述用户登录。
其中,所述根据所述第一索引和所述第二索引,查找第一密码表中的第一记录的步骤包括:
查找所述第一索引对应的第一密码表;在所述第一密码表中,查找所述第二索引对应的第一记录;或者
查找所述第二索引对应的第一密码表;在所述第一密码表中,查找所述第一索引对应的第一记录。
其中,所述根据所述第一账号和所述第一密码,生成第一索引的步骤包括:
根据所述第一账号和所述第一密码,生成第一字符串;
获取所述第一字符串中的至少一位的字符,并组合,生成第一索引。
其中,所述根据所述第一账号和所述第一密码生成第一字符串的步骤包括:
将所述第一账号和所述第一密码组成第二字符串;
通过加密算法,根据所述第二字符串生成第一字符串。
其中,所述将所述第二密码和所述第一密码进行比较,生成比较结果的步骤之前,所述方法还包括:
根据预定算法,对所述第一密码进行加密;
所述将所述第二密码和所述第一密码进行比较,生成比较结果的步骤具体为:将所述第二密码和加密后的所述第一密码进行比较,生成比较结果。
其中,所述根据预定算法,对所述第一密码进行加密的步骤包括:
根据所述第一账号和所述第一密码,生成第一字符串;
获取所述第一字符串的预定位的字符;
获取所述预定位的字符对应的加密算法;
根据所述加密算法,对所述第一密码进行加密。
其中,所述获取用户登录服务器时输入的账号和第一密码的步骤之前,所述方法还包括:
获取用户注册时的输入的第二账号和第三密码;
根据所述第二账号和所述第三密码,生成第三字符串;
获取所述第三字符串中的至少一位的字符,并组合,生成第三索引;
根据所述第三索引获取一第二密码表,在所述第二密码表中的一第二记录中保存所述第三密码;
获取所述第二记录的记录序号,作为第四索引;
建立所述第二账号和所述第四索引之间的对应关系。
其中,所述获取用户登录服务器时输入的第一账号和第一密码的步骤之前,所述方法还包括:
获取用户注册时输入的第二账号和第三密码;
根据所述第二账号和所述第三密码,生成第三字符串;
获取所述第三字符串中的至少一位的字符,并组合,生成第三索引;
根据所述第三索引获取一第二记录,在所述第二记录中保存所述第三密码;
获取所述第二记录所在的第三密码表的密码表序号,作为第四索引;
建立所述第二账号和所述第四索引之间的对应关系。
其中,所述根据所述第二账号和所述第三密码生成第三字符串的步骤包括:
将所述第二账号和所述第三密码组成第四字符串;
通过加密算法,根据所述第四字符串生成第三字符串。
所述在所述第二记录中保存所述第三密码的步骤包括,
根据预定算法,对所述第三密码进行加密;在所述第二记录中保存加密后的所述第三密码。
其中,所述根据预定算法,对所述第三密码进行加密的步骤包括:
根据所述第二账号和所述第三密码,生成第三字符串;
获取所述第三字符串的预定位的字符;
获取所述预定位的字符对应的加密算法;
根据所述加密算法,对所述第三密码进行加密。
另一方面,提供一种处理登陆服务器的密码的装置,包括:
第一获取单元,获取用户登录服务器时输入的第一账号和第一密码;
第一生成单元,根据所述第一账号和所述第一密码,生成第一索引;
第一查找单元,查找所述第一账号对应的第二索引;
第二查找单元,根据所述第一索引和所述第二索引,查找第一密码表中的第一记录;
第二获取单元,获取所述第一记录中保存的第二密码;
比较单元,将所述第二密码和所述第一密码进行比较,生成比较结果;
管理单元,如果所述比较结果为相同,则允许所述用户登录。
所述的处理登陆服务器的密码的装置,还包括:第一加密单元,根据预定算法,对所述第一密码进行加密;
所述比较单元具体为:将所述第二密码和加密后的所述第一密码进行比较,生成比较结果。
其中,所述的处理登陆服务器的密码的装置,还包括:
第三获取单元,获取用户注册时的输入的第二账号和第三密码;
第二生成单元,根据所述第二账号和所述第三密码,生成第三字符串;
第三生成单元,获取所述第三字符串中的至少一位的字符,并组合,生成第三索引;
第一保存单元,根据所述第三索引获取一第二密码表,在所述第二密码表中的一第二记录中保存所述第三密码;
第四获取单元,获取所述第二记录的记录序号,作为第四索引;
第一建立单元,建立所述第二账号和所述第四索引之间的对应关系。
其中,所述的处理登陆服务器的密码的装置,还包括:
第五获取单元,获取用户注册时输入的第二账号和第三密码;
第四生成单元,根据所述第二账号和所述第三密码,生成第三字符串;
第五生成单元,获取所述第三字符串中的至少一位的字符,并组合,生成第三索引;
第二保存单元,根据所述第三索引获取一第二记录,在所述第二记录中保存所述第三密码;
第六获取单元,获取所述第二记录所在的第三密码表的密码表序号,作为第四索引;
第二建立单元,建立所述第二账号和所述第四索引之间的对应关系。
本发明的实施例具有以下有益效果:
上述方案中,密码保存在一密码表的一记录中,并且需要通过第一索引和第二索引来获取密码的存储位置,因此,用户账号和密码不是简单地保存在一张数据库表,增加了密码的安全性。
附图说明
图1为本发明所述的一种处理登陆服务器的密码的方法的一实施例的流程示意图;
图2为本发明所述的一种处理登陆服务器的密码的方法的另一实施例的流程示意图;
图3为本发明所述的一种处理登陆服务器的密码的方法的另一实施例的流程示意图;
图4为本发明所述的处理登陆服务器的密码的方法的应用场景中终端注册服务器的流程示意图;
图5为本发明所述的处理登陆服务器的密码的方法的应用场景中终端登录服务器的流程示意图;
图6为本发明所述的一种处理登陆服务器的密码的装置的一实施例的结构示意图。
具体实施方式
为使本发明的实施例要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。
如图1所示,为本发明所述的一种处理登陆服务器的密码的方法,包括:
步骤11,获取用户登录服务器时输入的第一账号和第一密码;
步骤12,根据所述第一账号和所述第一密码,生成第一索引;
其中,步骤12包括:
步骤121,根据所述第一账号和所述第一密码,生成第一字符串;
步骤122,获取所述第一字符串中的至少一位的字符,并组合,生成第一索引。
其中,步骤121包括:
步骤1211,将所述第一账号和所述第一密码组成第二字符串;
步骤1212,通过加密算法,根据所述第二字符串生成第一字符串。
步骤13,查找所述第一账号对应的第二索引;
步骤14,根据所述第一索引和所述第二索引,查找第一密码表中的第一记录;
其中,在一应用场景中,第一索引为密码表索引,第二索引为记录索引。步骤14包括:
步骤141A,查找所述第一索引对应的第一密码表;
步骤142A,在所述第一密码表中,查找所述第二索引对应的第一记录;
或者,在一应用场景中,第一索引为记录索引,第二索引为密码表索引。步骤14包括:
步骤141B,查找所述第二索引对应的第一密码表;
步骤142B,在所述第一密码表中,查找所述第一索引对应的第一记录。
步骤15,获取所述第一记录中保存的第二密码;
步骤16,将所述第二密码和所述第一密码进行比较,生成比较结果;
步骤17,如果所述比较结果为相同,则允许所述用户登录。
可选的,步骤16之前,所述方法还包括:
步骤16A,根据预定算法,对所述第一密码进行加密;
相应的,步骤16具体为:将所述第二密码和加密后的所述第一密码进行比较,生成比较结果。
其中,步骤16A包括:
步骤16A1,根据所述第一账号和所述第一密码,生成第一字符串;
步骤16A2,获取所述第一字符串的预定位的字符;
步骤16A3,获取所述预定位的字符对应的加密算法;
步骤16A4,根据所述加密算法,对所述第一密码进行加密。
上述方案中,密码保存在一密码表的一记录中,并且需要通过第一索引和第二索引来获取密码的存储位置,因此,用户账号和密码不是简单地保存在一张数据库表,增加了密码的安全性。
如图2所示,为本发明所述的一种处理登陆服务器的密码的方法的一实施例,包括:
步骤21,获取用户注册时的输入的第二账号和第三密码;
步骤22,根据所述第二账号和所述第三密码,生成第三字符串;
步骤23,获取所述第三字符串中的至少一位的字符,并组合,生成第三索引;
步骤24,根据所述第三索引获取一第二密码表;在所述第二密码表中的一第二记录中保存所述第三密码;
步骤25,获取所述第二记录的记录序号,作为第四索引;
步骤26,建立所述第二账号和所述第四索引之间的对应关系。
上述步骤21-26为用户注册时的步骤。
步骤27,获取用户登录服务器时输入的第一账号和第一密码;
步骤28,根据所述第一账号和所述第一密码,生成第一索引;
步骤29,查找所述第一账号对应的第二索引;
步骤210,根据所述第一索引和所述第二索引,查找第一密码表中的第一记录;在该实施例中,第四索引和第二索引相同,与记录具有对应关系,第一索引和第三索引相同,与密码表具有对应关系。
其中,步骤210包括:步骤2101,查找所述第一索引对应的第一密码表;步骤2102,在所述第一密码表中,查找所述第二索引对应的第一记录。
步骤211,获取所述第一记录中保存的第二密码;
步骤212,将所述第二密码和所述第一密码进行比较,生成比较结果;
步骤213,如果所述比较结果为相同,则允许所述用户登录。
上述步骤27-213为用户登陆时的步骤。
在一应用场景中,其中,步骤22包括:
步骤221,将所述第二账号和所述第三密码组成第四字符串;
步骤222,通过加密算法,根据所述第四字符串生成第三字符串。
相应的,后续处理步骤中,步骤28包括:
步骤281,根据所述第一账号和所述第一密码,生成第一字符串;
步骤282,获取所述第一字符串中的至少一位的字符,并组合,生成第一索引。
其中,步骤281包括:
步骤2811,将所述第一账号和所述第一密码组成第二字符串;
步骤2812,通过加密算法,根据所述第二字符串生成第一字符串。
在一应用场景中,步骤24中的所述在所述第二密码表中的一第二记录中保存所述第三密码的步骤包括:
步骤241,根据预定算法,对所述第三密码进行加密;
步骤242,在所述第二记录中保存加密后的所述第三密码。
相应的,后续处理步骤中,步骤212之前,所述方法还包括:
步骤212A,根据预定算法,对所述第一密码进行加密;
步骤212具体为:将所述第二密码和加密后的所述第一密码进行比较,生成比较结果。
在一应用场景中,步骤241包括:
步骤2411,根据所述第二账号和所述第三密码,生成第三字符串;
步骤2412,获取所述第三字符串的预定位的字符;
步骤2413,获取所述预定位的字符对应的加密算法;也就是说,预先设置多个加密算法,并且建立不同字符和不同加密算法之间的对应关系。
步骤2414,根据所述加密算法,对所述第三密码进行加密。
相应的,后续处理步骤中,步骤212A步骤包括:
步骤212A1,根据所述第一账号和所述第一密码,生成第一字符串;
步骤212A2,获取所述第一字符串的预定位的字符;
步骤212A3,获取所述预定位的字符对应的加密算法;
步骤212A4,根据所述加密算法,对所述第一密码进行加密。
如图3所示,为本发明所述的一种处理登陆服务器的密码的方法,包括:
步骤31,获取用户注册时输入的第二账号和第三密码;
步骤32,根据所述第二账号和所述第三密码,生成第三字符串;
步骤33,获取所述第三字符串中的至少一位的字符,并组合,生成第三索引;
步骤34,根据所述第三索引获取一第二记录,在所述第二记录中保存所述第三密码;
步骤35,获取所述第二记录所在的第三密码表的密码表序号,作为第四索引;
步骤36,建立所述第二账号和所述第四索引之间的对应关系。
其中步骤31-36为用户注册时的步骤。
步骤37,获取用户登录服务器时输入的第一账号和第一密码;
步骤38,根据所述第一账号和所述第一密码,生成第一索引;
步骤39,查找所述第一账号对应的第二索引;
步骤310,根据所述第一索引和所述第二索引,查找第一密码表中的第一记录;在该实施例中,第四索引和第二索引相同,与密码表具有对应关系,第一索引和第三索引相同,与记录具有对应关系。
其中,步骤310包括:步骤3101,查找所述第二索引对应的第一密码表;步骤3102,在所述第一密码表中,查找所述第一索引对应的第一记录。
步骤311,获取所述第一记录中保存的第二密码;
步骤312,将所述第二密码和所述第一密码进行比较,生成比较结果;
步骤313,如果所述比较结果为相同,则允许所述用户登录。
其中步骤37-313为用户登陆时的步骤
在一应用场景中,其中,步骤32包括:
步骤321,将所述第二账号和所述第三密码组成第四字符串;
步骤322,通过加密算法,根据所述第四字符串生成第三字符串。
相应的,后续处理步骤中,步骤38包括:
步骤381,根据所述第一账号和所述第一密码,生成第一字符串;
步骤382,获取所述第一字符串中的至少一位的字符,并组合,生成第一索引。
其中,步骤381包括:
步骤3811,将所述第一账号和所述第一密码组成第二字符串;
步骤3812,通过加密算法,根据所述第二字符串生成第一字符串。
在一应用场景中,步骤34中的所述在第二记录中保存所述第三密码的步骤包括:
步骤341,根据预定算法,对所述第三密码进行加密;
步骤342,在所述第二记录中保存加密后的所述第三密码。
相应的,后续处理步骤中,步骤312之前,所述方法还包括:
步骤312A,根据预定算法,对所述第一密码进行加密;
步骤312具体为:将所述第二密码和加密后的所述第一密码进行比较,生成比较结果。
在一应用场景中,步骤341包括:
步骤3411,根据所述第二账号和所述第三密码,生成第三字符串;
步骤3412,获取所述第三字符串的预定位的字符;
步骤3413,获取所述预定位的字符对应的加密算法;
步骤3414,根据所述加密算法,对所述第三密码进行加密。
相应的,后续处理步骤中,步骤312A步骤包括:
步骤212A1,根据所述第一账号和所述第一密码,生成第一字符串;
步骤312A2,获取所述第一字符串的预定位的字符;
步骤312A3,获取所述预定位的字符对应的加密算法;
步骤312A4,根据所述加密算法,对所述第一密码进行加密。
以下描述本发明的应用场景。
本发明采用如下技术方案:服务器存在一张用户表、一张密码算法表和若干张密码表。账号表包含username和password-table两个字段,username字段保存用户的账号信息,password-table保存用户密码表索引,密码表索引表示密码保存在哪张张表中。密码算法表保存服务器支持的密码算法。密码表仅包含一个字段password,保存用户加密后的密码。
用户第一次注册时,通过预定协议将账号和密码发送到服务器。服务器收到消息后,首先将账号和密码组成第一字符串;通过MD5加密算法,根据第一字符串产生第二字符串;然后取这个字符串的第一位,根据字符串的第一位的值,从密码算法表中获取对应的加密算法;然后对用户的密码进行加密。再取字符串的前4位作为用户密码的记录索引,如果该索引对应在密码表1中的记录不为空。则查看该索引对应在密码表2中是否已经存在记录,直到产生的记录索引在密码表n中的记录为空,则将用户加密后的密码插入到第n张密码表的记录索引对应的记录中。记录索引表示密码保存在密码表中哪条记录。最后,将账号和对应密码表的表索引n插入到账号表中。
以后用户每次登录时,服务器收到用户的账号和密码后,首先将账号和密码组成第一字符串,通过MD5加密算法,根据第一字符串产生第二字符串;然后根据第二字符串的第一位的值,从密码算法表中获取对应的加密算法,对用户密码进行加密;然后取第二字符串的前4位作为用户的记录索引,再从用户表中获取用户的账号信息和密码表索引;根据记录索引,到密码表索引对应的密码表中获取用户保存在服务器中的密码;同时和登录消息中的密码进行比较,如果相同则用户合法,登录结束。
以下描述本发明所述的保存服务器用户密码的方法的实施例。
服务器端的数据库包含一张用户账号表、一张密码算法表和若干密码表。
用户账号表包含username和password-table两个字段,username字段保存用户的账号信息,password-table是用户的密码表索引,表示用户的密码保存在哪张密码表中。
密码算法表保存用户可以使用的密码加密算法。
密码表有若干张,根据服务器的用户量来决定。密码表仅包含一个字段password,保存用户加密后的密码。
图4为终端UE第一次注册服务器的流程,包括:
步骤201:用户UE发送注册消息到服务器,注册消息中包含用户账号和密码。
步骤202:服务器把账号和密码组成的字符串运用MD5算法进行加密,得到128位的字符串S。根据MD5算法的特性,这个字符串S是唯一的。
步骤203:取字符串S的第1位,作为密码算法索引,从算法表获取加密算法,对密码进行加密。
该步骤中,如果服务器中的密码算法的数量少于字符串第一位的可能取值的数量,则使用散列函数映射到密码算法表中。假如,密码算法表中有5种加密算法,而字符串第一位可能是0-9和a-z共36种情况,则使用一种哈希函数对字符串第一位进行计算,映射到该密码算法表中。
步骤204:取字符串的前4位作为用户在密码表中的记录索引password-index,首先在第一张密码表中查看第password-index条记录是否为空,如果不为空,则查看第二张密码表中第password-index条记录是否为空,直到一张密码表对应的第password-index条记录为空。
步骤205:把加密后的密码插入到该密码表的第password-index条记录,同时把该密码表作为用户的密码表索引table-index。
步骤206:将账号和table-index插入到用户账号表中,用户UE完成注册。
图5为终端UE登录服务器的流程,包括:
步骤301:用户UE发送注册消息到服务器,注册消息中包含账号和密码。
步骤302:同第一次注册服务器一样,服务器对账号和密码组成的字符串运用MD5算法进行加密,得到128位的字符串S。
步骤303:获取用户密码算法的流程同第一次注册服务器相同。
步骤304:从服务器的用户账号表中获取用户的账号和该用户的密码表索引table-index。
步骤305:取字符串的前4位作为用户的记录索引password-index,从第table-index张密码表中的第password-index条记录中获取用户密码。
步骤306:比较从密码表获取的密码和登录消息中包含的密码是否相同。
步骤307:如果两者密码相同,说明用户是合法用户,登录结束。
如图6所示,为本发明所述的一种处理登陆服务器的密码的装置,包括:
第一获取单元41,获取用户登录服务器时输入的第一账号和第一密码;
第一生成单元42,根据所述第一账号和所述第一密码,生成第一索引;
第一查找单元43,查找所述第一账号对应的第二索引;
第二查找单元44,根据所述第一索引和所述第二索引,查找第一密码表中的第一记录;
第二获取单元45,获取所述第一记录中保存的第二密码;
比较单元46,将所述第二密码和所述第一密码进行比较,生成比较结果;
管理单元47,如果所述比较结果为相同,则允许所述用户登录。
所述的处理登陆服务器的密码的装置,还包括:
第一加密单元48,根据预定算法,对所述第一密码进行加密;
所述比较单元46具体为:将所述第二密码和加密后的所述第一密码进行比较,生成比较结果。
所述的处理登陆服务器的密码的装置,还包括:
第三获取单元,获取用户注册时的输入的第二账号和第三密码;
第二生成单元,根据所述第二账号和所述第三密码,生成第三字符串;
第三生成单元,获取所述第三字符串中的至少一位的字符,并组合,生成第三索引;
第一保存单元,根据所述第三索引获取一第二密码表,在所述第二密码表中的一第二记录中保存所述第三密码;
第四获取单元,获取所述第二记录的记录序号,作为第四索引;
第一建立单元,建立所述第二账号和所述第四索引之间的对应关系。
可选的,所述的处理登陆服务器的密码的装置,还包括:
第五获取单元,获取用户注册时输入的第二账号和第三密码;
第四生成单元,根据所述第二账号和所述第三密码,生成第三字符串;
第五生成单元,获取所述第三字符串中的至少一位的字符,并组合,生成第三索引;
第二保存单元,根据所述第三索引获取一第二记录,在所述第二记录中保存所述第三密码;
第六获取单元,获取所述第二记录所在的第三密码表的密码表序号,作为第四索引;
第二建立单元,建立所述第二账号和所述第四索引之间的对应关系。
本发明提供一种保存服务器用户密码的方法,把账号和密码分别保存到两张不同的数据库表中,同时从密码算法表随机获取一种算法,对密码进行加密,再根据哈希算法,把加密后的密码随机插入到密码表中。这样即使有人非法获取整个数据库,由于无法获取用户对应在密码表中的索引,因此不能查看到用户在密码表中的密码,从而防止用户信息的泄漏,同时防止非法用户从服务器获取用户密码,提高了服务器的安全性,。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (14)

1.一种处理登陆服务器的密码的方法,其特征在于,包括:
获取用户登录服务器时输入的第一账号和第一密码;
根据所述第一账号和所述第一密码,生成第一索引;包括:
根据所述第一账号和所述第一密码,生成第一字符串;
获取所述第一字符串中的至少一位的字符,并组合,生成第一索引;
从服务器的用户账号表中查找所述第一账号对应的第二索引;
根据所述第一索引和所述第二索引,查找第一密码表中的第一记录;
获取所述第一记录中保存的第二密码;
将所述第二密码和所述第一密码进行比较,生成比较结果;
如果所述比较结果为相同,则允许所述用户登录。
2.根据权利要求1所述的处理登陆服务器的密码的方法,其特征在于,所述根据所述第一索引和所述第二索引,查找第一密码表中的第一记录的步骤包括:
查找所述第一索引对应的第一密码表;在所述第一密码表中,查找所述第二索引对应的第一记录;或者
查找所述第二索引对应的第一密码表;在所述第一密码表中,查找所述第一索引对应的第一记录。
3.根据权利要求1所述的处理登陆服务器的密码的方法,其特征在于,所述根据所述第一账号和所述第一密码生成第一字符串的步骤包括:
将所述第一账号和所述第一密码组成第二字符串;
通过加密算法,根据所述第二字符串生成第一字符串。
4.根据权利要求1所述的处理登陆服务器的密码的方法,其特征在于,所述将所述第二密码和所述第一密码进行比较,生成比较结果的步骤之前,所述方法还包括:
根据预定算法,对所述第一密码进行加密;
所述将所述第二密码和所述第一密码进行比较,生成比较结果的步骤具体为:将所述第二密码和加密后的所述第一密码进行比较,生成比较结果。
5.根据权利要求4所述的处理登陆服务器的密码的方法,其特征在于,所述根据预定算法,对所述第一密码进行加密的步骤包括:
根据所述第一账号和所述第一密码,生成第一字符串;
获取所述第一字符串的预定位的字符;
获取所述预定位的字符对应的加密算法;
根据所述加密算法,对所述第一密码进行加密。
6.根据权利要求1-5任一权利要求所述的处理登陆服务器的密码的方法,其特征在于,所述获取用户登录服务器时输入的账号和第一密码的步骤之前,所述方法还包括:
获取用户注册时的输入的第二账号和第三密码;
根据所述第二账号和所述第三密码,生成第三字符串;
获取所述第三字符串中的至少一位的字符,并组合,生成第三索引;
根据所述第三索引查找一第二密码表,在所述第二密码表中的一第二记录中保存所述第三密码;
获取所述第二记录的记录序号,作为第四索引;
建立所述第二账号和所述第四索引之间的对应关系。
7.根据权利要求1-5任一权利要求所述的处理登陆服务器的密码的方法,其特征在于,所述获取用户登录服务器时输入的第一账号和第一密码的步骤之前,所述方法还包括:
获取用户注册时输入的第二账号和第三密码;
根据所述第二账号和所述第三密码,生成第三字符串;
获取所述第三字符串中的至少一位的字符,并组合,生成第三索引;
根据所述第三索引查找一第二记录,在所述第二记录中保存所述第三密码;
获取所述第二记录所在的第三密码表的密码表序号,作为第四索引;
建立所述第二账号和所述第四索引之间的对应关系。
8.根据权利要求7所述的处理登陆服务器的密码的方法,其特征在于,所述根据所述第二账号和所述第三密码生成第三字符串的步骤包括:
将所述第二账号和所述第三密码组成第四字符串;
通过加密算法,根据所述第四字符串生成第三字符串。
9.根据权利要求7所述的处理登陆服务器的密码的方法,其特征在于,所述在所述第二记录中保存所述第三密码的步骤包括,
根据预定算法,对所述第三密码进行加密;在所述第二记录中保存加密后的所述第三密码。
10.根据权利要求9所述的处理登陆服务器的密码的方法,其特征在于,所述根据预定算法,对所述第三密码进行加密的步骤包括:
根据所述第二账号和所述第三密码,生成第三字符串;
获取所述第三字符串的预定位的字符;
获取所述预定位的字符对应的加密算法;
根据所述加密算法,对所述第三密码进行加密。
11.一种处理登陆服务器的密码的装置,其特征在于,包括:
第一获取单元,获取用户登录服务器时输入的第一账号和第一密码;
第一生成单元,根据所述第一账号和所述第一密码,生成第一索引;包括:
根据所述第一账号和所述第一密码,生成第一字符串;
获取所述第一字符串中的至少一位的字符,并组合,生成第一索引;
第一查找单元,从服务器的用户账号表中查找所述第一账号对应的第二索引;
第二查找单元,根据所述第一索引和所述第二索引,查找第一密码表中的第一记录;
第二获取单元,获取所述第一记录中保存的第二密码;
比较单元,将所述第二密码和所述第一密码进行比较,生成比较结果;
管理单元,如果所述比较结果为相同,则允许所述用户登录。
12.根据权利要求11所述的处理登陆服务器的密码的装置,其特征在于,还包括:第一加密单元,根据预定算法,对所述第一密码进行加密;
所述比较单元具体为:将所述第二密码和加密后的所述第一密码进行比较,生成比较结果。
13.根据权利要求11或12所述的处理登陆服务器的密码的装置,其特征在于,还包括:
第三获取单元,获取用户注册时的输入的第二账号和第三密码;
第二生成单元,根据所述第二账号和所述第三密码,生成第三字符串;
第三生成单元,获取所述第三字符串中的至少一位的字符,并组合,生成第三索引;
第一保存单元,根据所述第三索引获取一第二密码表,在所述第二密码表中的一第二记录中保存所述第三密码;
第四获取单元,获取所述第二记录的记录序号,作为第四索引;
第一建立单元,建立所述第二账号和所述第四索引之间的对应关系。
14.根据权利要求11或12所述的处理登陆服务器的密码的装置,其特征在于,还包括:
第五获取单元,获取用户注册时输入的第二账号和第三密码;
第四生成单元,根据所述第二账号和所述第三密码,生成第三字符串;
第五生成单元,获取所述第三字符串中的至少一位的字符,并组合,生成第三索引;
第二保存单元,根据所述第三索引获取一第二记录,在所述第二记录中保存所述第三密码;
第六获取单元,获取所述第二记录所在的第三密码表的密码表序号,作为第四索引;
第二建立单元,建立所述第二账号和所述第四索引之间的对应关系。
CN201210321269.0A 2012-09-03 2012-09-03 处理登陆服务器的密码的方法和装置 Expired - Fee Related CN103685149B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201210321269.0A CN103685149B (zh) 2012-09-03 2012-09-03 处理登陆服务器的密码的方法和装置
PCT/CN2013/079422 WO2013170822A2 (zh) 2012-09-03 2013-07-15 处理登陆服务器的密码的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210321269.0A CN103685149B (zh) 2012-09-03 2012-09-03 处理登陆服务器的密码的方法和装置

Publications (2)

Publication Number Publication Date
CN103685149A CN103685149A (zh) 2014-03-26
CN103685149B true CN103685149B (zh) 2017-07-21

Family

ID=49584383

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210321269.0A Expired - Fee Related CN103685149B (zh) 2012-09-03 2012-09-03 处理登陆服务器的密码的方法和装置

Country Status (2)

Country Link
CN (1) CN103685149B (zh)
WO (1) WO2013170822A2 (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105022941A (zh) * 2015-06-24 2015-11-04 上海斐讯数据通信技术有限公司 一种用户名密码的管理方法和系统
CN106549759A (zh) * 2015-09-16 2017-03-29 阿里巴巴集团控股有限公司 身份认证方法和装置
CN105227320B (zh) * 2015-10-28 2020-01-10 腾讯科技(深圳)有限公司 一种授权方法、服务器、终端及系统
CN106357412B (zh) * 2016-10-14 2019-11-26 国政通科技股份有限公司 一种核验身份信息的方法、装置及系统
CN109450925B (zh) * 2018-12-05 2021-09-28 国网浙江省电力有限公司杭州供电公司 用于电力二次系统运维的用户权限验证方法、装置及电子设备
CN110519060B (zh) * 2019-08-23 2022-03-29 湖南财政经济学院 一种密码生成及验证方法
CN112671786B (zh) * 2020-12-29 2022-06-28 科来网络技术股份有限公司 一种基于第三方认证的安全登陆的系统及方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1832401A (zh) * 2006-04-06 2006-09-13 陈珂 一种保护帐号密码安全的方法
CN101075873A (zh) * 2007-06-28 2007-11-21 腾讯科技(深圳)有限公司 内容输入方法及其系统
CN101159630A (zh) * 2007-11-09 2008-04-09 华为技术有限公司 流量监管方法、系统和宽带接入服务器
US7685430B1 (en) * 2005-06-17 2010-03-23 Sun Microsystems, Inc. Initial password security accentuated by triple encryption and hashed cache table management on the hosted site's server
CN101697540A (zh) * 2009-10-15 2010-04-21 浙江大学 一种p2p服务请求用户身份认证方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5418854A (en) * 1992-04-28 1995-05-23 Digital Equipment Corporation Method and apparatus for protecting the confidentiality of passwords in a distributed data processing system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7685430B1 (en) * 2005-06-17 2010-03-23 Sun Microsystems, Inc. Initial password security accentuated by triple encryption and hashed cache table management on the hosted site's server
CN1832401A (zh) * 2006-04-06 2006-09-13 陈珂 一种保护帐号密码安全的方法
CN101075873A (zh) * 2007-06-28 2007-11-21 腾讯科技(深圳)有限公司 内容输入方法及其系统
CN101159630A (zh) * 2007-11-09 2008-04-09 华为技术有限公司 流量监管方法、系统和宽带接入服务器
CN101697540A (zh) * 2009-10-15 2010-04-21 浙江大学 一种p2p服务请求用户身份认证方法

Also Published As

Publication number Publication date
WO2013170822A3 (zh) 2014-01-09
CN103685149A (zh) 2014-03-26
WO2013170822A2 (zh) 2013-11-21

Similar Documents

Publication Publication Date Title
CN103685149B (zh) 处理登陆服务器的密码的方法和装置
US10986073B2 (en) Vaultless tokenization engine
US9619659B1 (en) Systems and methods for providing information security using context-based keys
US20220343017A1 (en) Provision of risk information associated with compromised accounts
CN103227786B (zh) 一种网站登录信息填入方法及装置
CN104992119B (zh) 一种敏感信息防窃取的安全传输方法及系统
CN106027228B (zh) 一种网页标识的加解密方法及其加解密系统
CN104967693B (zh) 面向云存储的基于全同态密码技术的文档相似度计算方法
CN104243149B (zh) 加、解密方法,装置和服务器
US11184352B2 (en) Systems and methods for activating an authentication token within a communication platform
CN104348609A (zh) 一种非存储的密码管理算法
CN109462602A (zh) 登录信息存储方法、登录验证方法、装置、设备及介质
CN105743905A (zh) 一种实现安全登录的方法、设备、装置及系统
CN110071937A (zh) 基于区块链的登录方法、系统及存储介质
US20200145389A1 (en) Controlling Access to Data
KR20130063020A (ko) 통신 장치, 리마인더 장치 및 정보 기록 매체
CA2981202C (en) Hashed data retrieval method
CN101964792B (zh) 一种基于多状态映射的强认证方法
GB2595405A (en) Platform for generation of passwords and/or email addresses
US10277623B2 (en) Method of detection of comptromised accounts
US20180007079A1 (en) Provision of risk information associated with compromised accounts
KR101214502B1 (ko) 데이터 보안 장치
Jhaveri et al. Big data authentication and authorization using SRP protocol
Schneier Other block ciphers
KR102256231B1 (ko) 디지털 포렌식 데이터 복호화 장치

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20170721

Termination date: 20190903