CN109922035B - 密码重置的方法、请求端和校验端 - Google Patents

密码重置的方法、请求端和校验端 Download PDF

Info

Publication number
CN109922035B
CN109922035B CN201811514952.XA CN201811514952A CN109922035B CN 109922035 B CN109922035 B CN 109922035B CN 201811514952 A CN201811514952 A CN 201811514952A CN 109922035 B CN109922035 B CN 109922035B
Authority
CN
China
Prior art keywords
user
information
account
verification
request
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
CN201811514952.XA
Other languages
English (en)
Other versions
CN109922035A (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.)
Huawei Cloud Computing Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to PCT/CN2018/120815 priority Critical patent/WO2019114784A1/zh
Priority to EP18889772.2A priority patent/EP3716564B1/en
Publication of CN109922035A publication Critical patent/CN109922035A/zh
Priority to US16/899,163 priority patent/US11388194B2/en
Application granted granted Critical
Publication of CN109922035B publication Critical patent/CN109922035B/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/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
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/126Applying verification of the received information the source of the received data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1483Countermeasures against malicious traffic service impersonation, e.g. phishing, pharming or web spoofing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • H04L63/166Implementing security features at a particular protocol layer at the transport layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/60Context-dependent security
    • H04W12/69Identity-dependent
    • H04W12/71Hardware identity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2131Lost password, e.g. recovery of lost or forgotten passwords

Abstract

本申请提供了一种密码重置的方法、请求端和校验端,该方法包括校验端接收请求密码重置的账号;在判断该账号为有效账号的情况下,该校验端向该请求端发送第一确认信息,该第一确认信息用于使该请求端向用户显示与该账号关联的第一绑定信息,并向用户请求确认是否向与该账号关联的第一通信地址发送验证信息;在判断该账号为无效账号的情况下,该校验端根据该账号生成与该账号对应的第二绑定信息,并向该请求端发送与该第一确认信息的形式相同的第二确认信息,其中,该第二确认信息用于使该请求端向用户显示该第二绑定信息,并向用户请求确认是否向与该账号关联的第二通信地址发送验证信息。本申请实施例能够保证用户体验性且避免密码重置漏洞。

Description

密码重置的方法、请求端和校验端
技术领域
本申请涉及身份认证领域,特别涉及一种密码重置的方法、请求端和校验端。
背景技术
在请求端(例如,客户端)登陆应用程序时,请求端一般通过账号和密码请求应用的校验端校验身份。如果用户忘记了登陆密码,将使得用户无法访问应用程序中相应的服务。为了恢复用户对服务的访问,应用程序的请求端的登陆界面需要为用户提供“忘记密码”、“找回密码”或“密码重置”等功能来重置账号对应的密码,以获得登陆应用的新密码。
如果重置密码机制有缺陷,将会成为整个应用程序的漏洞被攻击者利用。因为即使黑客暴力破解不了用户的原始密码,但黑客可以利用重置密码机制的漏洞去成功重置账号的密码。
因此,如何避免重置密码机制的漏洞成为亟待解决的问题。
发明内容
本申请提供一种密码重置的方法、请求端和校验端,能够保证用户体验性的基础上减少或避免密码重置的漏洞。
第一方面,提供了一种重置密码的方法,应用于包括请求端与校验端的系统中,该请求端需通过账号和密码请求该校验端校验身份,该方法包括:
该校验端接收该请求端发送的请求密码重置的账号;
在判断该账号为有效账号的情况下,该校验端向该请求端发送第一确认信息,该第一确认信息用于使该请求端向用户显示与该账号关联的第一绑定信息,并向用户请求确认是否向与该账号关联的第一通信地址发送验证信息,其中,该第一绑定信息为该账号对应的用户已知的信息;
或者,在判断该账号为无效账号的情况下,该校验端根据该账号生成与该账号对应的第二绑定信息,并向该请求端发送与该第一确认信息的形式相同的第二确认信息,其中,该第二确认信息用于使该请求端向用户显示该第二绑定信息,并向用户请求确认是否向与该账号对应的第二通信地址发送验证信息,该第二绑定信息与该第一绑定信息的形式相同。
应理解,本申请实施例中,在校验端校验账号有效时,通过请求端显示与该账号关联的用户已知的第一绑定信息,该第一绑定信息是校验端预存的信息,无需校验端生成。在校验端校验账号无效时,则校验端生成一个与无效账号对应的、形式与第一确认信息一致的第二确认信息,并返回给请求端界面。也就是说,只有在账号无效的情况下,校验端才会生成绑定信息(第二绑定信息),在账号有效的情况下,校验端无需生成绑定信息。
因此,本申请通过为无效账号生成一个对应的、与第一确认信息形式一致的假确认信息(即第二确认信息),由于假的确认信息要求与真实账号的对应确认信息形式上一致。这样,黑客无法通过确认信息来判定输入账号的有效性。因此,本申请实施例能够解决黑客利用服务器返回的关于“无效账号”的提示信息来枚举有效账号问题,能够提高系统的安全性能。
并且,本申请中通过采用一个用户已知的信息或预置信息作为确认信息。对于黑客来说,在黑客不知道账号是否有效的情况下,同样无法知悉账号对应的确认信息。所以,当服务器返回确认信息时,黑客无法辨认确认信息的真假。但是,对于正常用户来说,如果输错账号,可以通过已知信息或预置信息(即上述第一绑定信息)来辨认返回的信息不属于自己(要么是他人的确认信息,要么是假的确认信息)。因此,本申请实施例同样能够解决用户无法及时感知“输入无效账号”和“误输入他人账号”的”问题,能够提高用户体验。
可选地,在第一方面的一些实现方式中,该密码包括个人识别码PIN、密钥、私钥或该用户设置的字符串;
该账号包括邮箱地址、手机号、第三方应用的账号或该用户向该校验端注册的字符串。
请求端在获取第一确认信后,可以向用户显示第一绑定信息,且向用户请求是否向第一通信地址发送验证信息。例如,请求端显示的内容为“第一绑定信息为xx,请确认是否向账号关联的第一通信地址发送验证信息”。应理解这种情况下该第一绑定信息可以为直接显示的信息(即显示出具体的地址是多少),而该第一通信地址的具体地址信息可以不显示出来。
可选地,在第一方面的一些实现方式中,该第一绑定信息为该第一通信地址,该第二绑定信息为该第二通信地址。
也就是说,请求端获取第一确认信息后,可以向用户请求“确认是否向第一通信地址发送验证信息”。这里第一通信地址即为上述的第一绑定信息,且第一通信地址为直接显示的信息(即显示出具体的地址是多少)。
应理解,本申请实施例可以采用多种算法生成与无效账号对应的第二绑定信息,只要针对多次输入的同一的无效账号仅生成相同的一个绑定信息即可,本申请实施例并不限于此。
可选地,在第一方面的一些实现方式中,在判断该账号为无效账号的情况下,该校验端根据该账号生成与该账号对应的第二绑定信息,包括:
该校验端根据该账号以及第一密钥生成与该账号对应的该第二绑定信息。
具体而言,为了防范了解假确认信息生成过程的恶意的内部人员(例如,程序员或知情人员等),在生成假确认信息时,本申请实施例在生成第二绑定信息时,可以引入一个秘密(也可以称为密钥),例如密钥字符串。校验端保存该秘密,并让该秘密参与生成假确认信息。因此,上述恶意的内部人员在不知道秘密的情况下,无法判定假确认信息和无效账号的关系。
因此,本申请实施例在生成无效账号假的确认信息前,引入一个密钥,该密钥与无效账号一起来生成假的确认信息(第二绑定信息)。这样,即使了解假确认信息生成过程的恶意的内部人员,在不知道秘密的情况下,也无法判定假确认信息和无效账号的关系。本申请实施例能够提高系统的安全性能。
可选地,在第一方面的一些实现方式中,该校验端根据该账号以及第一预设密钥生成与该账号对应的该第二绑定信息,包括:
该校验端获取该第一密钥;
该校验端将该第一密钥和该账号组合在一起,生成组合数据,
该校验端根据该组合数据采用第一函数算法生成该第二绑定信息,其中,该第一函数算法用于生成与一个输入信息唯一对应的输出信息。
应理解,本申请实施例中第一函数算法可以为多种算法,例如,为基于随机种子的生成算法、基于哈希的生成算法或基于迭代的生成算法等,要针对相同的一个输入信息(组合数据)该第一函数算法能生成唯一对应的输出信息(第二绑定信息)即可,本申请实施例并不限于此。
可选地,在第一方面的一些实现方式中,所述第一通信地址和所述第二通信地址为匿名化的信息,
其中,所述第一确认信息具体用于使所述请求端向用户请求确认是否向与所述账号关联的第一通信地址发送验证信息,并使所述请求端请求用户输入所述第一通信地址匿名化的部分;
其中,所述第二确认信息具体用于使所述请求端向用户请求确认是否向与所述账号关联的第二通信地址发送验证信息,并使所述请求端请求用户输入所述第二通信地址匿名化的部分。
可选地,在第一方面的一些实现方式中,所述方法还包括:
所述校验端获取所述请求端发送的用户确认发送验证信息的消息,所述用户确认发送验证信息的消息携带所述用户输入的所述匿名化部分;
在所述账号为有效账号且所述用户输入的匿名化部分正确的情况下,所述校验端向所述第一通信地址发送所述验证信息,并向所述请求端发送第四响应消息,所述第四响应消息用于使所述请求端提示所述用户所述校验端已向所述第一通信地址发送验证信息;
或者,
在所述账号为无效账号或者所述用户输入的匿名化部分错误的情况下,所述校验端直接向所述请求端发送与所述第四响应消息的形式相同的第五响应消息,所述第五响应消息用于使所述请求端提示所述用户所述校验端已向所述第二通信地址发送验证信息。
可选地,在第一方面的一些实现方式中,所述方法还包括:
所述校验端获取所述请求端发送的用户确认发送验证信息的消息,所述用户确认发送验证信息的消息携带所述用户输入的所述匿名化部分;
在所述账号为有效账号且所述用户输入的匿名化部分正确的情况下,所述校验端向所述请求端发送第六确认消息,所述第六确认消息用于使所述请求端请求用户确认所述账号关联的第六绑定信息,其中,所述第六绑定信息为所述账号对应的用户已知的信息;
在所述校验端获取所述请求端发送的用户确认所述第六绑定信息的消息后,所述校验端向所述第一通信地址发送所述验证信息,并向所述请求端发送第六响应消息,所述第六响应消息用于使所述请求端提示所述用户所述校验端已向所述第一通信地址发送验证信息;
或者,所述方法还包括:
所述校验端获取所述请求端发送的用户确认发送验证信息的消息,所述用户确认发送验证信息的消息携带所述用户输入的所述匿名化部分;
在所述账号为无效账号或所述用户输入的匿名化部分错误的情况下,所述校验端根据所述账号和/或所述用户输入的匿名化部分生成与所述账号对应的第七绑定信息,并向所述请求端发送第七确认消息,所述第七确认消息用于使所述请求端请求用户确认所述账号关联的第七绑定信息,其中,所述第七绑定信息与所述第六绑定信息的形式相同;
在所述校验端获取所述请求端发送的用户确认所述第七绑定信息的消息后,所述校验端直接向所述请求端发送与所述第六响应消息的形式相同的第七响应消息,所述第七响应消息用于使所述请求端提示所述用户所述校验端已向所述第二通信地址发送验证信息。
在返回确认信息的时候,本申请实施例可以要求用户输入已知的预置信息(例如,输入预值信息的匿名化部分)。服务器只有在账号有效而且输入的预置信息正确的情况下才会触发真正的发送操作,进而本申请能够避免暴力破解对正常用户的干扰。
可选地,在第一方面的一些实现方式中,该方法还包括:
该校验端获取该请求端发送的该用户确认发送验证信息的消息;
在该账号为有效账号的情况下,该校验端向该第一通信地址发送该验证信息,并向该请求端发送第一响应消息,该第一响应消息用于提示该用户该校验端已向该第一通信地址发送验证信息;
或者,
在该账号为无效账号的情况下,该校验端直接向该请求端发送与该第一响应消息的形式相同的第二响应消息,该第二响应消息用于提示该用户该校验端已向该第二通信地址发送验证信息。
因此,本申请通过为无效账号生成一个对应的、形式一致的假确认信息,而且无论用户在返回假的确认信息上的客户端界面上做任何操作,服务器都返回一个与有效账号相同一致的响应消息。首先,假的确认信息要求与真实账号的对应确认信息形式上一致。这样,黑客无法通过确认信息来判定输入账号的有效性。并且,无论用户在返回假的确认信息上的客户端界面上做任何操作,服务器都返回一个与有效账号相同一致的响应消息。这样,黑客同样无法通过响应消息来判定输入账号有效性。综上,本申请解决了现有方法中黑客利用服务器返回的关于“无效账号”的提示信息来枚举有效账号问题。
可选地,在第一方面的一些实现方式中,,在账号无效的情况下,如果无效用户在“输入手机验证码”界面上,做任何输入,校验端可以直接返回“所输入手机验证码无效”。
可选的,在账号有效的情况下,如果用户在“输入手机验证码”界面上输入了错误的验证信息,则校验端同样可以直接返回“所输入手机验证码无效”。
由于黑客没办法收到短信验证码,他不清楚在请求端显示“所输入手机验证码无效”时,是对应无效账号的反馈,还是对应有效账号的输入错误的反馈。因此,能够避免密码重置的漏洞。
可选地,在第一方面的一些实现方式中,该方法还包括:
在该校验端确定用户通过该请求端连续请求对无效账号重置密码的次数达到预设次数阈值的情况下,锁定该请求端对该校验端的请求。
由于无效账号无法获取验证信息,因此,无效账号无法进行后续的密码重置过程。在实际应用中,攻击者可能会连续的对多个无效账号申请密码重置,有可能会导致网络拥堵,影响系统性能。针对此问题,在本申请实施例中,在该服务器校验端确定用户通过该请求端连续请求对无效账号重置密码的次数达到预设次数阈值的情况下,锁定该请求端对该服务器校验端的访问请求。应理解,预设次数阈值可以是系统预设的值,例如可以为6次、8次或12次等,本申请实施例并不限于此。
本申请实施例通过锁定请求端,能够防止攻击者的恶意攻击,提升系统性能。
可选地,在第一方面的一些实现方式中,该方法还包括:
该校验端获取该用户发送的验证信息;
该校验端在校验该验证信息准确的情况下,向该请求端返回密码重置界面;
该校验端获取该请求端提交的该用户通过该密码重置界面输入的新密码。
应理解,前文描述了本申请实施例中描述了在用户输入的验证信息准确的情况下,校验端即可以向请求端返回密码重置界面,以使得用户进行密码重置。
然而,这种情况下,一旦当用户的客户端(例如,手机或电脑等)被控制或者客户端丢失,或者账号被破解,会存在安全隐患。例如,攻击者获取到用户的账号后,攻击者在通过该客户端请求密码重置的过程中,当破解了校验端发送的第一验证信息的情况下,该攻击者可以通过该验证信息进行密码重置,进而能够登录该账号,存在较大安全问题。
因此,鉴于此问题,本申请实施例中,为了提高安全性能,可以设置多次验证的过程,
可选地,在第一方面的一些实现方式中,该验证信息为第一验证信息,在该账号为有效账号的情况下,该方法还包括:
该校验端获取该用户发送的该第一验证信息;
在该校验端校验该第一验证信息准确的情况下,该校验端向该请求端发送第三确认信息,该第三确认信息用于使该请求端向该用户显示与该账号关联的第五绑定信息,并向该用户请求确认是否向与该账号关联的第三通信地址发送第二验证信息,其中,该第五绑定信息为该账号对应的该用户已知的信息。
可选地,在第一方面的一些实现方式中,该方法还包括:
该校验端获取该请求端发送的该用户确认发送该第二验证信息的消息;
该校验端向该第三通信地址发送该第二验证信息,并向该请求端发送第三响应消息,该第三响应消息用于提示该用户该校验端已向该第三通信地址发送该第二验证信息。
可选地,在第一方面的一些实现方式中,该方法还包括:
该校验端获取该用户发送的该第二验证信息;
该校验端在校验该第二验证信息准确的情况下,向该请求端返回密码重置界面;
该校验端获取该请求端提交的该用户通过该密码重置界面输入的新密码。
因此,本申请实施例通过两次或多次验证的过程,能够阻止攻击者的攻击,提高密码重置的安全性。
因此,本申请实施例通过两次或多次验证的过程,能够阻止攻击者的攻击,提高密码重置的安全性。
可选地,在第一方面的一些实现方式中,该第一绑定信息、该第二绑定新和该第三绑定信息均为匿名化的信息。
例如,假设绑定信息为邮箱地址,请求端可以根据以下匿名化规则显示绑定信息:保留邮箱校验端、邮箱名称的前两位和后两位字符,其他字符用星号代替。或者,假设绑定信息为手机号,请求端可以根据以下匿名化规则显示绑定信息:保留前三位和后四位,其他字符用星号代替。
应理解,本申请实施例还可以采用匿名化的方式显示绑定信息,本申请实施例并不限于此。例如,在绑定信息为用户姓名时,可以仅显示用户的姓氏,用户的名用星号代替,例如,绑定信息为“张三”则请求端可以向用户显示“该账号的关系的绑定信息为张*,本申请实施例并不限于此。
本申请实施例通过显示匿名化的信息,能够避免攻击者通过输入有效账号来泄露账号对应的个人数据,保护用户的隐私安全
可选地,在第一方面的一些实现方式中,该第一确认信息在用于使该请求端向用户显示与该账号关联的第一绑定信息,并向用户请求确认是否向与该账号关联的第一通信地址发送验证信息的同时,还用于该请求端向该用户显示与该账号关联的第三绑定信息,该第三绑定信息为该账号对应的用户已知的信息;
该第二确认信息在用于使该请求端向用户显示与该账号关联的第二绑定信息,并向用户请求确认是否向该第二通信地址发送验证信息的同时,还用于该请求端向该用户显示与该账号对应的第四绑定信息,该第四绑定信息为该校验端生成的与该第三绑定信息形式相同的信息。
因此,本申请实施例通过显示多个绑定信息,能够降低匿名显示带来的信息碰撞的问题,能够提升用户体验。
第二方面,提供了一种重置密码的方法,应理解,第二方面描述的请求端侧的方法与第一方面描述的校验端侧的方法相对应,请求端侧的方法可以参考校验端侧的描述,为避免重复,此处适当省略详细描述。
具体的,应用于包括请求端与校验端的系统中,该请求端需要通过账号和密码访问该校验端,该方法包括:
该请求端向该校验端发送请求密码重置的账号;
在该校验端判断该账号为有效账号的情况下,该请求端接收该校验端发送的第一确认信息,该第一确认信息用于使该请求端向用户显示与该账号关联的第一绑定信息,并向用户请求确认是否向与该账号关联的第一通信地址发送验证信息,其中,该第一绑定信息为该账号对应的用户已知的信息;
或者,在该校验端判断该账号为无效账号的情况下,该请求端接收该校验端发送的与该第一确认信息的形式相同的第二确认信息,其中,该第二确认信息用于使该请求端向用户显示该第二绑定信息,并向用户请求确认是否向与该账号对应的第二通信地址发送验证信息,该第二绑定信息是该校验端根据该账号生成的与该账号对应的信息,该第二绑定信息与该第一绑定信息的形式相同。
因此,本申请通过为无效账号生成一个对应的、与第一确认信息形式一致的假确认信息(即第二确认信息),由于假的确认信息要求与真实账号的对应确认信息形式上一致。这样,黑客无法通过确认信息来判定输入账号的有效性。因此,本申请实施例能够解决黑客利用服务器返回的关于“无效账号”的提示信息来枚举有效账号问题,能够提高系统的安全性能。
并且,本申请中通过采用一个用户已知的信息或预置信息作为确认信息。对于黑客来说,在黑客不知道账号是否有效的情况下,同样无法知悉账号对应的确认信息。所以,当服务器返回确认信息时,黑客无法辨认确认信息的真假。但是,对于正常用户来说,如果输错账号,可以通过已知信息或预置信息(即上述第一绑定信息)来辨认返回的信息不属于自己(要么是他人的确认信息,要么是假的确认信息)。因此,本申请实施例同样能够解决用户无法及时感知“输入无效账号”和“误输入他人账号”的”问题,能够提高用户体验。
可选地,在第二方面的一些实现方式中,该第一绑定信息为该第一通信地址,
该第二绑定信息为该第二通信地址。
可选地,在第二方面的一些实现方式中,该方法还包括:
该请求端向该校验端发送该用户确认发送验证信息的消息;
在该账号为有效账号的情况下,该请求端获取该校验端发送的第一响应消息,该第一响应消息用于提示该用户该校验端已向该第一通信地址发送验证信息,其中,该第一响应消息是该校验端向该第一通信地址发送该验证信息之后发送的;
或者,
在该账号为无效账号的情况下,该请求端获取该校验端发送的与该第一响应消息的形式相同的第二响应消息,该第二响应消息用于提示该用户该校验端已向该第二通信地址发送验证信息,其中,该第二响应消息是该校验端获取该确认发送验证信息的消息后直接发送的。
可选地,在第二方面的一些实现方式中,该第一确认信息在用于使该请求端向用户显示与该账号关联的第一绑定信息,并向用户请求确认是否向与该账号关联的第一通信地址发送验证信息的同时,还用于该请求端向该用户显示与该账号关联的第三绑定信息,该第三绑定信息为该账号对应的用户已知的信息;
该第二确认信息在用于使该请求端向用户显示与该账号关联的第二绑定信息,并向用户请求确认是否向该第二通信地址发送验证信息的同时,还用于该请求端向该用户显示与该账号对应的与该第一绑定信息形式相同的第四绑定信息,该第四绑定信息为该校验端生成的与该第三绑定信息形式相同的信息。
可选地,在第二方面的一些实现方式中,所述第一通信地址和所述第二通信地址为匿名化的信息,
其中,所述第一确认信息具体用于使所述请求端向用户请求确认是否向与所述账号关联的第一通信地址发送验证信息,并使所述请求端请求用户输入所述第一通信地址匿名化的部分;
所述第二确认信息具体用于使所述请求端向用户请求确认是否向与所述账号关联的第二通信地址发送验证信息,并使所述请求端请求用户输入所述第二通信地址匿名化的部分。
可选地,在第二方面的一些实现方式中,所述方法还包括:
所述请求端向所述校验端发送用户确认发送验证信息的消息,所述用户确认发送验证信息的消息携带所述用户输入的所述匿名化部分;
所述请求端接收所述校验端发送的第四响应消息,所述第四响应消息是所述校验端在所述账号为有效账号且所述用户输入的匿名化部分正确的情况下,且所述校验端向所述第一通信地址发送所述验证信息后发送的,所述第四响应消息用于使所述请求端提示所述用户所述校验端已向所述第一通信地址发送验证信息;
或者,
所述请求端接收所述校验端直接发送的与所述第四响应消息的形式相同的第五响应消息,所述第五响应消息是所述校验端在所述账号为无效账号或者所述用户输入的匿名化部分错误的情况下发送的,所述第五响应消息用于使所述请求端提示所述用户所述校验端已向所述第二通信地址发送验证信息。
可选地,在第二方面的一些实现方式中,所述方法还包括:
所述请求端向所述校验端发送用户确认发送验证信息的消息,所述用户确认发送验证信息的消息携带所述用户输入的所述匿名化部分;
所述请求端接收所述校验端发送的第六确认消息,所述第六确认消息是所述校验端在所述账号为有效账号且所述用户输入的匿名化部分正确的情况下发送的,所述第六确认消息用于使所述请求端请求用户确认所述账号关联的第六绑定信息,其中,所述第六绑定信息为所述账号对应的用户已知的信息;
所述请求端向所述校验端发送用户确认所述第六绑定信息的消息;
所述请求端接收所述校验端发送的第六响应消息,所述第六响应消息是所述校验端向所述第一通信地址发送所述验证信息后发送的,所述第六响应消息用于使所述请求端提示所述用户所述校验端已向所述第一通信地址发送验证信息;
或者,所述方法还包括:
所述请求端向所述校验端发送用户确认发送验证信息的消息,所述用户确认发送验证信息的消息携带所述用户输入的所述匿名化部分;
所述请求端接收所述校验端发送的第七确认消息,所述第七确认消息是所述校验端在所述账号为无效账号或所述用户输入的匿名化部分错误的情况下发送的,所述第七确认消息用于使所述请求端请求用户确认所述账号关联的第七绑定信息,其中,所述第七绑定信息与所述第六绑定信息的形式相同,第七绑定信息是所述校验端根据所述账号和/或所述用户输入的匿名化部分生成的;
所述请求端向所述校验端发送用户确认所述第七绑定信息的消息;
所述请求端接收所述校验端直接发送的与所述第六响应消息形式相同的第七响应消息,所述第七响应消息用于使所述请求端提示所述用户所述校验端已向所述第二通信地址发送验证信息。
可选地,在第二方面的一些实现方式中,该方法还包括:
该请求端获取该校验端发送的密码重置界面,该密码重置界面是该校验端在验证该用户发送的验证信息准确后发送的;
该请求端向该校验端提交该用户通过该密码重置界面输入的新密码。
可选地,在第二方面的一些实现方式中,该验证信息为第一验证信息,在该账号为有效账号的情况下,该方法还包括:
该请求端接收该校验端发送的第三确认信息,该第三确认信息用于使该请求端向该用户显示与该账号关联的第五绑定信息,并向该用户请求确认是否向与该账号关联的第三通信地址发送第二验证信息,其中,该第五绑定信息为该账号对应的该用户已知的信息,该第三确认信息是该校验端获取该用户发送的该第一验证信息后发送的。
可选地,在第二方面的一些实现方式中,该方法还包括:
该请求端向该校验端发送该用户确认发送该第二验证信息的消息;
该请求端接收该校验端发送的第三响应消息,该第三响应消息用于提示该用户该校验端已向该第三通信地址发送该第二验证信息,该第三响应消息是该校验端向该第三通信地址发送该第二验证信息后发送的。
可选地,在第二方面的一些实现方式中,该方法还包括:
该请求端获取该校验端发送的密码重置界面,该密码重置界面是该校验端在验证该用户发送的该第二验证信息准确后发送的;
该请求端向该校验端提交该用户通过该密码重置界面输入的新密码。
可选地,在第二方面的一些实现方式中,该第一绑定信息、该第二绑定信息和该第三绑定信息均为匿名化的信息。
可选地,在第二方面的一些实现方式中,该密码包括个人识别码PIN、密钥、私钥或该用户设置的字符串;
该账号包括邮箱地址、手机号、第三方应用的账号或该用户向该校验端注册的字符串。
第三方面,提供了一种校验端,所述校验端包括用于执行第一方面或第一方面任一种可能实现方式中的方法的各个模块或单元。
第四方面,提供了一种请求端,所述请求端包括用于执行第二方面或第二方面任一种可能实现方式中方法的各个模块或单元。
第五方面,提供了一种校验端,包括收发器、处理器和存储器。该处理器用于控制收发器收发信号,该存储器用于存储计算机程序,该处理器用于从存储器中调用并运行该计算机程序,使得该校验端设备执行第一方面及其可能实现方式中的方法。
第六方面,提供了一种请求端,包括收发器、处理器、显示器和存储器。该处理器用于控制收发器收发信号,控制显示器显示信息,该存储器用于存储计算机程序,该处理器用于从存储器中调用并运行该计算机程序,使得该请求端执行第二方面及其可能实现方式中的方法。
第七方面,提供了一种计算机可读介质,其上存储有计算机程序,该计算机程序被计算机执行时实现第一方面或第一方面的任一种可能的实现方式中的方法。
第八方面,提供了一种计算机可读介质,其上存储有计算机程序,该计算机程序被计算机执行时实现第二方面或第二方面的任一种可能的实现方式中的方法。
第九方面,提供了一种计算机程序产品,该计算机程序产品被计算机执行时实现第一方面或第一方面的任一种可能的实现方式中的方法。
第十方面,提供了一种计算机程序产品,该计算机程序产品被计算机执行时实现第二方面或第二方面的任一种可能的实现方式中的方法。
附图说明
图1是本申请实施例可以应用的系统架构示意图。
图2是根据本申请一个实施例的密码重置的方法流程示意图。
图3是根据本申请另一实施例的密码重置的方法流程示意图。
图4是根据本申请另一实施例的密码重置的方法流程示意图。
图5是根据本申请一个实施例的密码重置过程中请求端显示的界面示意图。
图6是根据本申请另一实施例的密码重置过程中请求端显示的界面示意图。
图7是根据本申请另一实施例的密码重置过程中请求端显示的界面示意图。
图8是根据本申请另一实施例的密码重置过程中请求端显示的界面示意图。
图9是根据本申请另一实施例的密码重置过程中请求端显示的界面示意图。
图10是根据本申请另一实施例的密码重置过程中请求端显示的界面示意图。
图11是根据本申请另一实施例的密码重置过程中请求端显示的界面示意图。
图12是根据本申请另一实施例的密码重置过程中请求端显示的界面示意图。
图13是根据本申请另一实施例的密码重置过程中请求端显示的界面示意图。
图14是根据本申请另一实施例的密码重置过程中请求端显示的界面示意图。
图15是根据本申请一个实施例的生成绑定信息的方法流程示意图。
图16是根据本申请另一实施例的生成绑定信息的方法流程示意图。
图17是根据本申请另一实施例的密码重置过程中请求端显示的界面示意图。
图18是根据本申请另一实施例的密码重置过程中请求端显示的界面示意图。
图19是根据本申请另一实施例的密码重置过程中请求端显示的界面示意图。
图20是根据本申请另一实施例的密码重置过程中请求端显示的界面示意图。
图21是根据本申请另一实施例的密码重置过程中请求端显示的界面示意图。
图22是根据本申请另一实施例的密码重置过程中请求端显示的界面示意图。
图23是根据本申请另一实施例的密码重置过程中请求端显示的界面示意图。
图24是根据本申请另一实施例的密码重置过程中请求端显示的界面示意图。
图25是根据本申请另一实施例的密码重置过程中请求端显示的界面示意图。
图26是根据本申请另一实施例的密码重置过程中请求端显示的界面示意图。
图27是根据本申请另一实施例的密码重置过程中请求端显示的界面示意图。
图28是根据本申请另一实施例的密码重置的方法流程示意图。
图29是根据本申请另一实施例的密码重置的方法流程示意图。
图30是根据本申请另一实施例的密码重置过程中请求端显示的界面示意图。
图31是根据本申请另一实施例的密码重置过程中请求端显示的界面示意图。
图32是根据本申请另一实施例的密码重置过程中请求端显示的界面示意图。
图33是根据本申请另一实施例的密码重置过程中请求端显示的界面示意图。
图34是根据本申请另一实施例的密码重置过程中请求端显示的界面示意图。
图35是根据本申请另一实施例的密码重置过程中请求端显示的界面示意图。
图36是根据本申请另一实施例的密码重置过程中请求端显示的界面示意图。
图37是根据本申请一个实施例的校验端的示意框图。
图38是根据本申请一个实施例的请求端的示意框图。
图39是根据本申请另一实施例的校验端的示意框图。
图40是根据本申请另一实施例的请求端的示意框图。
具体实施方式
下面将结合附图,对本申请中的技术方案进行描述。
应理解,本申请实施例主要应用于包括请求端与校验端的系统中,该请求端需通过账号和密码请求校验端校验身份。在身份校验合法后,该请求端可以访问服务器。
应理解,本申请实施例中校验端可以是服务器,即校验端和服务器是合一的设备,这种情况下,服务器自身校验请求端,当服务器校验请求端的身份合法后,该请求端可以访问服务器。可选地,校验端也可以是第三方设备,也即校验端和服务器是两个独立的设备,这种情况下,校验端仅进行校验,当校验端校验请求端的身份合法后,该请求端才可以访问服务器。
应理解,本申请实施例中请求端也可以称为客户端。该客户端可以包括手机、平板电脑、个人数字助理(personal digital assistant,PDA)、笔记本电脑、智能电视、台式电脑、销售终端(point of sales,POS)车载设备、可穿戴设备等可以请求校验端进行校验的电子设备,本申请实施例并不限于此。本申请实施例中请求端和服务器可以构成主从架构,请求端和服务器的结构模式可以包括客户/服务器(Client/Server,C/S)模式或浏览器/服务器(Browser/Server,B/S)模式等,本申请实施例并不限于此。
可选地,本申请实施例中服务器可以是另外一个客户端,这种情况下,请求端与服务器的通信演变为对等网络(Peer to Peer,P2P)通信,本申请实施例并不限于此。
图1是本申请实施例可以应用的系统架构示意图。
如图1所示的系统100包括请求端110、校验端120,可选地,该系统100中还可以包括用户联系设备130。图1中所显示的用户140,负责在请求端界面触发重置密码请求、输入账号、辨认确认信息、输入二次验证信息、以及从用户联系设备获取验证信息等。
应理解,请求端110可以是安装在设备或装置上的应用客户端,也可以是硬件设备,校验端120可以是服务器也可以是第三方专门用于校验的设备,本申请实施例并不限定实现请求端和校验端功能的具体形态。
本申请实施例中,系统100中各个组成部分的功能描述如下:
请求端:负责为用户提供操作界面、将用户的输入传送给校验端、以及显示有关校验端返回的响应信息。
校验端:负责处理用户的重置密码请求、验证账号的有效性、获取有效账号的确认信息、为无效账号生成假的确认信息、对涉及个人数据的确认信息进行匿名化、向客户端返回相应的响应信息、以及向用户联系设备发送验证码信息。
用户联系设备:负责接收校验端发来的验证信息,并将验证信息提供给用户。
应理解,本申请实施例中用户联系设备可以与请求端为同一设备,用户联系设备也可以为其他设备,例如为另一个客户端设备,本申请实施例并不限于此。
具体而言,用户可以从请求端通过账号和密码通过通信通道请求校验端进行校验,在通过校验后,请求端可以登陆到服务器上,然后访问服务器上提供的服务。当用户忘记密码时,校验端可以为用户提供重置密码的功能,使得用户可以恢复对服务器的访问。
如果重置密码机制有缺陷,将会成为整个应用程序的漏洞被攻击者利用。因为即使黑客暴力破解不了用户的原始密码,但黑客可以利用重置密码机制的漏洞去成功重置账号的密码。
鉴于此,本申请实施例提供了一种密码重置的机制,能够在保证用户体验性的基础上减少或避免密码重置的漏洞,避免了黑客通过重置密码机制的漏洞来破解账号的登陆密码的问题。
为了使得本申请实施例的方案更容易理解,在描述本申请实施例之前,下面首先结合图2和图3介绍两种密码重置的方法。
图2是根据本申请一个实施例的密码重置的方法。具体地,如图2所示的方法包括:
201,用户通过请求端向校验端发送重置密码的请求。
202,校验端处理重置密码请求,并向请求端返回验证界面。
203,用户在请求端的验证界面上输入账号并发往校验端做校验。
204,校验端校验账号,如果账号有效,则返回账号对应的用户已知信息(或预置信息)到请求端给用户作再次确认。之后执行步骤206
205,如果账号无效,则校验端返回关于“账号无效”的信息,并在请求端界面提示用户。
206,用户通过返回请求端的信息进行再次确认。如果确认上述用户已知信息是属于自己的或者是准确的,则通过请求端发送确认信息给校验端;否则,返回201重新发起重置密码请求。
207,校验端收到确认信息后,向账号关联的联系信息(例如邮箱或手机号)发送验证信息(例如验证码或者带验证Token的链接)。
208,用户在联系信息对应的设备(即用户联系设备,例如邮箱客户端或手机终端)上获取验证信息,并通过请求端发往校验端做二次校验。
209,校验端对请求端发来验证信息进行校验,如果校验通过,则向请求端发送重置密码界面;如果校验不通过,则终止重置密码过程。
210,用户在请求端重置密码界面上重新设置新的密码并提交给校验端。
211,校验端存储账号和对应的新密码,以用于认证用户访问校验端的权限。
图2所示的方法在重置密码过程中,如果用户在请求端界面输入的账号(或者账号对应的联系信息)无效,校验端会返回有关“无效”的信息并在请求端界面中提示用户。为了避免用户因误输入他人的账号(或账号对应的联系方式)导致校验端给他人发送验证信息,而造成他人的干扰,校验端在对账号进行有效性校验成功后,向用户返回一个账号对应的用户已知信息(或者预置信息)让用户进行再次确认。当用户对已知信息(或者预置信息)进行再次确认后,才向账号对应的联系信息发送验证信息。
图2所示的密码重置方法,当用户输入无效账号时,用户可以及时在请求端界面上得到提示;当输入有效而非本人账号时,通过返回的用户已知信息或者预置信息可以进行及时判断和确认,避免用户需要登录联系信息设备才能确认是否账号输入正确,同时避免给其他用户造成干扰,用户体验和感知性较好。然而,图2所示的方法存在“账号枚举”的漏洞的问题,即黑客利用校验端返回的关于“无效账号”的提示信息来枚举有效账号。导致黑客可以利用枚举到的大量账号进行暴力破解。因此,图2所示的方法存在较大安全隐患。
图3是根据本申请一个实施例的密码重置的方法。具体地,如图3所示的方法包括:
301,用户通过请求端向校验端发送重置密码的请求。
302,校验端处理重置密码请求,并向用户返请求端回验证界面。
303,用户在请求端验证界面上输入账号并发往校验端做校验。
304,校验端校验账号,如果账号有效,向账号关联的联系信息(例如邮箱或手机号)发送验证信息(例如验证码或者带验证Token的链接);如果账号无效,则不作“发验证信息”的处理操作。
305,校验端统一返回一致的响应信息给请求端,例如“已经向账号关联的联系设备邮箱发送包含验证信息的密码重置连接”。
也就是说,不管账号是否有效,校验端均向请求端返回形式和内容一致的响应信息。
306,用户在联系信息对应的设备(邮箱校验端或手机终端)上获取验证信息,并通过请求端发往校验端做二次校验。
307,校验端对用户发来验证信息进行校验,如果校验通过,则向用户请求端返回送重置密码界面;如果校验不通过,则终止重置密码过程。
308,用户在请求端重置密码界面上重新设置新的密码并提交给校验端。
309,校验端存储账号和对应的新密码,以用于认证用户访问校验端的权限。
图3所示的密码重置方法由于校验端返回的响应信息针对“有效账号”和“无效账号”是无差异化的,所以黑客无法通过响应信息来判定所输入的账号是否有效。但是,正常用户同样无法判定自己所输入的账号是否属于自己,导致用户体验和感知不好。例如,当用户输错账号时,用户无法及时在界面上感知,而需要到联系信息对应的设备上(即用户联系设备例如登陆邮箱或者翻看手机)等待验证信息的到达,用户可能要等待一段时间才能确认是信息延迟导致还是输错了账号。
另外,当用户误输入其他账号时,由于用户无法及时感知和阻止,后台服务器会向其他账号对应的联系信息发送验证信息,会给他人造成干扰。例如,其他用户会误以为自己账号信息被恶意泄露或自己账号信息正在被黑客攻击而感动恐慌。
因此,在如图2所示的密码重置方法中,返回用户可判断“账号有效性”的响应信息,存在“账号枚举”的漏洞。在图3所示的密码重置方法中通过牺牲用户在重置密码过程的用户体验来换取重置密码过程的安全性。导致在图3所示的密码重置方法中,用户无法及时感知“输入无效账号”和“误输入他人账号”的主要原因是服务器没有返回用户可以判断的任何响应信息。
鉴于上述问题,本申请实施例巧妙地提出了一种密码重置的方法,能够解决图3方法中“用户无法判断账号是否属于自己”的问题。同时,本申请实施例在用户判断“账号是否属于自己”的过程中,能够解决图2方法中“黑客可以容易地通过服务器返回的响应信息形式判定所输入账号是否有效”的问题。
也就是说,本申请实施例的密码重置的方法,能够同时解决重置密码过程中安全性和友好性(用户体验)的矛盾。攻击者在密码重置过程中无法通过服务器返回的响应信息判断账号的有效性,而正常用户可以判断输入账号是否属于自己。
具体而言,本申请实施例中,服务器在判断账号有效性后,如果账号是有效的,则返回账号关联的确认信息到客户端给用户确认;如果账号是无效的,同样返回一个假的确认信息到客户端给用户确认。
在黑客不知道账号是否有效的情况下,黑客同样不知道有效账号或无效账号对应的确认信息。所以对于服务器返回的确认信息,黑客无法判断是来自有效账号的真实确认信息,还是来自无效账号假的确认信息。因此,本申请实施例解决了图2中“账号枚举”的问题。并且,由于确认信息是用户已知的信息或用户预置信息,正常用户可以从返回的确认信息辨认该确认信息是否与自己相关。如果用户判定确认信息与自己无关,表明账号输入有误或者误输入他人账号。因此,本申请实施例也解决了图3中“用户无法判断确认信息是否与自己相关”的问题。
下面结合图4详细描述本申请实施例的密码重置的方法。
应理解,图4所示的方法可以应用于图1所示的系统架构中,具体地,如图4所示的方法400包括:
401,请求端发送重置密码请求。
具体的,用户通过请求端界面的“忘记密码”链接发送重置密码的请求给校验端。
例如,如图5所示,用户在通过请求端显示的登录界面登录账户时,如果用户忘密码时。用户可以通过“忘记密码”链接发送密码重置的请求给校验端。
应理解,图5仅是示例性的,图5中的“忘记密码”可以触发密码重置功能,用户点击“忘记密码”后,请求端可以向校验端发送密码重置的请求。此处“忘记密码”也可以替换成“找回密码”“重置密码”等,本申请实施例并不限于此。
应理解,本申请实施例中的账号可以包括邮箱地址、手机号、第三方应用的账号、所述用户向所述校验端注册的字符串或用户的脸部特征或指纹等生物特征,本申请实施例并不限于此。
应理解,本申请实施例中,账号的密码可以包括个人识别码(personalidentification number,PIN)、密钥、私钥、所述用户设置的字符串、或用户的脸部特征或指纹等生物特征,本申请实施例并不限于此。
应理解,本申请实施例中,请求端和校验端之间的通信协议可以为安全套接字层上的超文本传输协议(Hyper Text Transfer Protocol over Secure Socket Layer,HTTPS)、安全文件传送协议(Secure File Transfer Protocol,SFTP)、传输控制协议(Transmission Control Protocol,TCP)、用户数据报协议(User Datagram Protocol,UDP)等通信协议,本申请实施例并不限于此。
402,校验端向请求端返回验证界面。
具体的,校验端处理重置密码请求,并向请求端返回输入账号的验证界面。
例如,如图6所示,校验端在获取到请求端发送的重置密码请求后,向客户端返回请输入账号的界面。
例如,校验端可以在返回的消息中带着一个用于承载输入账号的参数,在用户输入账号后,校验端可以从该参数中获取所输入的账号。
403,请求端发送请求密码重置的账号。
例如,所述请求端向所述校验端发送用户输入的请求密码重置的账号;
相应的,所述校验端接收所述请求端发送的用户输入的请求密码重置的账号;
也就是说,用户在请求端的验证界面上输入账号,并发往校验端做校验。
例如,如图7所示,用户输入的账号为“IOTSecurity”,在用户输入账号时,可以通过点击提交按钮将该账号发送至校验端。
上述步骤402和403中显示了用户直接输入账号并提交账号的情况。
可替代地,作为另一实施例,在步骤402中的图6校验端在获取到请求端发送的重置密码请求后,向客户端返回请输入账号的界面的同时,还可以通过客户端显示输入验证码,其中,该验证码可以是校验端随机生成的,本申请实施例并不限于此。
对应的,步骤403中的图7在用户输入账号和验证码后,通过提交按钮将该账号和验证码发送至校验端。
本申请实施例通过增加用户输入验证码的选项,能够防止机器不停的恶意发送需要密码重置的账号的问题,提升系统安全性。
404,针对有效账号,校验端发送第一确认信息。
具体的,在判断所述账号为有效账号的情况下,所述校验端向所述请求端发送第一确认信息,所述第一确认信息用于使所述请求端向用户显示与所述账号关联的第一绑定信息,并向用户请求确认是否向与所述账号关联的第一通信地址发送验证信息,其中,所述第一绑定信息为所述账号对应的所述用户已知的信息。
也就是说,校验端校验账号,如果账号有效,则返回账号的第一绑定信息(或预置信息)进行用户的再次确认。
应理解,本申请实施例中,账号关联的第一绑定信息可以为用户已知的任意信息。
用户可以预先将该第一绑定信息与账号关联在一起,例如,用户在注册该账号时可以关联该第一绑定信息,或者用户在使用该账号的过程中关联该第一绑定信息,本申请实施例并不限于此。
该第一绑定信息例如可以为用户的手机号、用户的邮箱地址、用户的联系地址、用户姓名、用户工号、某一地名、用户的家乡、用户的某一亲属名、用户的爱好或者用户的学校名等任意用户已知信息,本申请实施例并不限于此。
例如,第一绑定信息可以为与账号关联的用户已知的邮箱地址:corenet@huawei.com或手机号:13888888888”。
请求端在获取第一确认信后,可以向用户显示第一绑定信息,且向用户请求是否向第一通信地址发送验证信息。例如,请求端显示的内容为“第一绑定信息为xx,请确认是否向账号关联的第一通信地址发送验证信息”。应理解这种情况下该第一绑定信息可以为直接显示的信息(即显示出具体的地址是多少),而该第一通信地址的具体地址信息可以不显示出来。
例如,如图8所示,在该第一绑定信息为手机号13888888888时,请求端在获取到校验端发送的第一确认信息后,可以向用户显示“该账号关联的第一绑定信息为13888888888,请确认是否向第一通信地址发送验证信息。”
可选地,所述第一绑定信息可以为所述第一通信地址。这种情况下,第一绑定信息与第一通信地址为同一个信息。
也就是说,请求端获取第一确认信息后,可以向用户请求“确认是否向第一通信地址发送验证信息”。这里第一通信地址即为上述的第一绑定信息,且第一通信地址为直接显示的信息(即显示出具体的地址是多少)。
例如,在该第一绑定信息为手机号13888888888时,图8可以用图9替代,如图9所示,请求端向用户显示“请确认是否往手机号13888888888发送验证信息”。这种情况下,该手机号即是上述的第一绑定信息,也是上述的第一通信地址。
再例如,在该第一绑定信息为邮箱地址:corenet@huawei.com时如图10所示,请求端向用户显示“请确认是否往邮箱corenet@huawei.com发送验证信息”。这种情况下,该邮箱即是上述的第一绑定信息,也是上述的第一通信地址。
应理解,第一确认信息可以包括上述请求端向用户显示的内容,例如,该第一确认信息为“该账号的关系的第一绑定信息为13888888888,请确认是否向第一通信地址发送验证信息”或者,该第一确认信息为“请确认是否往邮箱corenet@huawei.com发送验证信息”等等。可选地,该第一确认信息可以仅包括第一绑定信息,这种情况下,请求端可以按照默认设置向用户显示上述内容,也就是说,在这种情况下,请求端在获取到第一绑定信息后,按照默认设置即可向用户显示图8至图10所示的内容。
应理解,前文图8至图10中描述了请求端明文显示第一绑定信息的情况,可选地,作为另一实施例,为了避免用户的个人隐私的泄露,在显示第一绑定信息时可以进行匿名化显示。也就是说,该第一绑定信息为匿名化的信息。
例如,如图11所示,假设第一绑定信息为邮箱地址,请求端可以根据以下匿名化规则显示第一绑定信息:保留邮箱校验端、邮箱名称的前两位和后两位字符,其他字符用星号代替。或者,如图12所示,假设第一绑定信息为手机号,请求端可以根据以下匿名化规则显示第一绑定信息:保留前三位和后四位,其他字符用星号代替。
应理解,本申请实施例还可以采用匿名化的方式显示第一绑定信息,本申请实施例并不限于此。例如,在第一绑定信息为用户姓名时,可以仅显示用户的姓氏,用户的名用星号代替,例如,第一绑定信息为“张三”则请求端可以向用户显示“该账号的关系的第一绑定信息为张*,请确认是否向第一通信地址发送验证信息”等等,本申请实施例并不限于此。
本申请实施例通过显示匿名化的信息,能够避免攻击者通过输入有效账号来泄露账号对应的个人数据,保护用户的隐私安全。
405,针对无效账号,校验端发送与第一确认信息形式相同的第二确认信息。需要说明的是,本申请中所述形式相同,指组成结构和表现方式相同。即第一确认信息的组成结构和表现方式与第二确认信息相同。
具体而言,在判断所述账号为无效账号的情况下,所述校验端根据所述账号生成与所述账号对应的第二绑定信息,并向所述请求端发送与所述第一确认信息的形式相同的第二确认信息,其中,所述第二确认信息用于使所述请求端向用户显示所述第二绑定信息,并向用户请求确认是否向与所述账号对应的第二通信地址发送验证信息,所述第二绑定信息与所述第一绑定信息的形式相同。
应理解,第二通信地址也可以是校验端根据无效账号生成的,该第二通信地址可以为假的通信地址或者没有意义的通信地址,在实际应用中,校验端不会像该第二通信地址发送验证信息。该第二通信地址与用户输入的无效账号一一对应,即不同的无效账号对应的第二通信地址不同。
也就是说,校验端校验账号,如果账号无效,则校验端生成一个与无效账号对应的、形式与第一确认信息形式一致的假确认信息,并返回给请求端界面。
应理解,本申请实施例中,在校验端校验账号有效时,通过请求端显示与该账号关联的用户已知的第一绑定信息,该第一绑定信息是校验端预存的信息,无需校验端生成。在校验端校验账号无效时,则校验端生成一个与无效账号对应的、形式与第一确认信息一致的第二确认信息,并返回给请求端界面。也就是说,只有在账号无效的情况下,校验端才会生成绑定信息(第二绑定信息),在账号有效的情况下,校验端无需生成绑定信息。
本申请通过为无效账号生成一个对应的、与第一确认信息形式一致的假确认信息(即第二确认信息),由于假的确认信息要求与真实账号的对应确认信息形式上一致。这样,黑客无法通过确认信息来判定输入账号的有效性。因此,本申请实施例能够解决黑客利用服务器返回的关于“无效账号”的提示信息来枚举有效账号问题,能够提高系统的安全性能。
并且,本申请中通过采用一个用户已知的信息或预置信息作为确认信息。对于黑客来说,在黑客不知道账号是否有效的情况下,同样无法知悉账号对应的确认信息。所以,当服务器返回确认信息时,黑客无法辨认确认信息的真假。但是,对于正常用户来说,如果输错账号,可以通过已知信息或预置信息(即上述第一绑定信息)来辨认返回的信息不属于自己(要么是他人的确认信息,要么是假的确认信息)。因此,本申请实施例同样能够解决用户无法及时感知“输入无效账号”和“误输入他人账号”的”问题,能够提高用户体验。
可选地,作为另一实施例,校验端可以根据账号生成与该账号唯一对应的第二绑定信息。
例如,校验端可以根据无效账号通过第一函数算法(例如,基于随机种子的生成算法、基于哈希的生成算法或基于迭代的生成算法等)生成与无效账号唯一对应的第二绑定信息,本申请实施例并不限于此。
应理解,本申请实施例可以采用多种算法生成与无效账号对应的第二绑定信息,只要针对多次输入的同一的无效账号仅生成相同的一个绑定信息即可,本申请实施例并不限于此。
可选地,作为另一实施例,与第一绑定信息类似,该第二绑定信息也可以与第二通信地址为同一信息,本申请实施例并不限于此。
以所述第一绑定信息为所述第一通信地址,所述第二绑定信息为所述第二通信地址为例,如图13所示,假设,用户在步骤403输入一个无效账号“invalidAccount”,则校验端生成一个与该账号对应的假绑定信息(即第二绑定信息)dk****Yo@qq.com并发给用户进行确认。
再例如,如图14所示,假设,用户在步骤403输入一个无效账号“invalidAccount”,则校验端生成一个与该账号对应的假绑定信息(即第二绑定信息)157****3426并发给用户进行确认。
应理解,第二绑定信息的形式与第一绑定信息的形式相同,并且请求端显示第二绑定信息的方式与显示第一绑定信息的方式相同。例如,与显示第一绑定信息的方式对应,请求端可以通过匿名的方式或明文的方式显示该第二绑定信息。
可选地,作为另一实施例,判断所述账号为无效账号的情况下,所述校验端根据所述账号生成与所述账号对应的第二绑定信息,包括:
所述校验端根据所述账号以及第一密钥生成与所述账号对应的所述第二绑定信息。
具体而言,为了防范了解假确认信息生成过程的恶意的内部人员(例如,程序员或知情人员等),在生成假确认信息时,本申请实施例在生成第二绑定信息时,可以引入一个秘密(也可以称为密钥),例如密钥字符串。校验端保存该秘密,并让该秘密参与生成假确认信息。因此,上述恶意的内部人员在不知道秘密的情况下,无法判定假确认信息和无效账号的关系。
因此,本申请实施例在生成无效账号假的确认信息前,引入一个密钥,该密钥与无效账号一起来生成假的确认信息(第二绑定信息)。这样,即使了解假确认信息生成过程的恶意的内部人员,在不知道秘密的情况下,也无法判定假确认信息和无效账号的关系。本申请实施例能够提高系统的安全性能。
具体地,作为另一实施例,述校验端根据所述账号以及第一预设密钥生成与所述账号对应的所述第二绑定信息,包括:
所述校验端获取所述第一密钥;
所述校验端将所述第一密钥和所述账号组合在一起,生成组合数据,
所述校验端根据所述组合数据采用第一函数算法生成所述第二绑定信息,其中,所述第一函数算法用于生成与一个输入信息唯一对应的输出信息。
应理解,本申请实施例中第一函数算法可以为多种算法,例如,为基于随机种子的生成算法、基于哈希的生成算法或基于迭代的生成算法等,要针对相同的一个输入信息(组合数据)该第一函数算法能生成唯一对应的输出信息(第二绑定信息)即可,本申请实施例并不限于此。
例如,以基于随机种子的生成算法生成第二绑定信息而言,校验端可以将无效账号和密钥字符串的拼接串作为随机种子,然后基于这个随机种子来生成假的确认信息(第二确认信息)。以下描述校验端通过基于随机种子的生成算法为无效账号生成如图15显示的唯一假匿名化邮箱或如图16显示的唯一假匿名化手机号的具体过程。
下面,描述假匿名化邮箱的生成方法。
例如,假设真匿名化邮箱的形式为保留邮箱校验端、邮箱名称的前两位和后两位字符,其他字符用星号表示。为了保持与有效账号的匿名化邮箱形式上一致,要求假匿名化邮箱显示邮箱校验端、邮箱名称的前两位和后两位字符,其他字符用星号表示。
假设用于生成假的匿名化邮箱的密钥字符串为“secretString”,其通过校验端密钥Key加密保存在存储系统(数据库或文件系统)中,假设无效账号为”invalidAccount”。假匿名化邮箱的生成过程如图15所示,可以包括如下步骤:
1501,校验端从存储系统(数据库或者文件系统)获取密钥字符串的密文。
1502,校验端利用密钥Key解密密钥字符串,得到密钥字符串明文“secretString”。
1503,校验端将密钥字符串“secretString”和无效账号”invalidAccount”拼接在一起得到拼接串seed=secretString||invalidAccount(即上述组合数据)。
1504,校验端将拼接串设为随机数发生器的随机种子。
1505,校验端通过设好随机种子的随机数发生器生成6个伪随机数index1,index2,index3,index4,index5和index6。
其中index1用来从邮箱校验端列表中随机选择一个邮箱校验端作为假邮箱的邮箱校验端。例如,邮箱校验端列表为{"@qq.com","@163.com","@hotmail.com","@gmail.com","@sina.com"};
index2、index3,index4,index5用来从字符列表中选择一个随机的字符分别作为假邮箱名称的第一个、第二个、最后一个、倒数第二个的字符。例如,可选的字符列表为
{0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ}。
index6用来随机选择显示星号“*”的数量。假如,星号数量可以从整数列表中{3,4,5,6,7}中随机选取。
应理解,本申请实施例中,如果作为随机种子的拼接串seed相同,则每次生成的随机数index1,index2,index3,index4,index5和index6也相同,以保证无效账号和假匿名化邮箱的对应。
1506,校验端根据随机数index1,index2,index3,index4,index5和index6获取相应位置的字符,并根据匿名化邮箱的显示规则拼接成一个字符串作为无效账号假的匿名化邮箱。
假如,用户在403输入一个无效账号“invalidAccount”,则校验端生成一个一一对应的假确认信息“dk****Yo@qq.com”并发给用户进行确认。
下面,描述假匿名化手机号的生成方法。
例如,假设真匿名化手机号的形式为保留前三位和后四位,其他字符用星号代替。为了保持与有效账号的匿名化手机号形式上一致,要求假匿名化手机号显示手机号的前三位和后四位字符,其他字符用星号表示。
假设用于生成假的匿名化手机号的密钥字符串为“secretString”,其通过校验端密钥Key加密保存在存储系统(数据库或文件系统)中,假设无效账号为”invalidAccount”。假匿名化手机号的生成过程如图16所示,可以包括如下步骤:
1601,校验端从存储系统(数据库或者文件系统)获取密钥字符串的密文。
1602,校验端利用密钥Key解密密钥字符串,得到密钥字符串明文“secretString”。
1603,校验端将密钥字符串“secretString”和无效账号”invalidAccount”拼接在一起得到拼接串seed=secretString||invalidAccount(即上述组合数据)。1604,校验端将拼接串seed设为随机数发生器的随机种子。
1605,校验端通过设好随机种子的随机数发生器生成6个伪随机数index1,index2,index3,index4,index5和index6。
index1,index2、index3,index4,index5和index6用来从字符列表{0123456789}中选择一个随机的字符分别作为假匿名化手机号的第二个、第三个、最后一个、倒数第二个、倒数第三个、倒数第四个的字符。
应理解,本申请实施例中,如果作为随机种子的拼接串seed相同,则每次生成的随机数index1,index2,index3,index4,index5和index6也相同,以保证无效账号和假匿名化手机号对应。
1606,校验端根据随机数index1,index2,index3,index4,index5和index6获取相应位置的字符。手机号的第一个字符默认为1,其他位置字符采用星号“*”代替。最后,将所有位置的字符拼串成一个字符串作为无效账号假的匿名化手机号。
假如,用户在403输入一个无效账号“invalidAccount”,则校验端生成一个一一对应的假确认信息“157****3426”并发给用户进行确认。
应理解,上文介绍了组合数据为无效账号与密钥拼接成串的形式,可选地,组合数据可以是无效账号和密钥的任意组合形式,本申请实施例并不限于此。
上文介绍了一种基于随机种子的生成算法生成第二绑定信息的过程,可选地,本申请实施例还可以通过其他的算法,例如,基于哈希算法的生成算法、迭代算法等其他算法,生成第二绑定信息,只要这些算法只要针对相同的一个输入信息(组合数据)能生成唯一对应的输出信息(即与第一绑定信息形式一致的第二绑定信息)即可,本申请实施例并不限于此。
应注意,本申请实施例中,在步骤404和405中由于可以通过匿名化的方式显示第一绑定信息和第二绑定信息,然而这种情况会导致用户已知信息的碰撞。
举例来说,当第一账号绑定的手机为13888888888,第二账号绑定的手机号为13889998888,那么这两个手机号通过匿名化的显示均为138****8888。这种情况当用户误将第一账号输成了第二账号的情况下,用户在看到显示的手机号为“138****8888”的情况下,以为自己是输入的第一账号,因此,可以确认校验端发送验证信息,这种情况下,会使得其他用户的手机即13889998888接收到验证信息,而第一用户的手机即13888888888没有接收到验证信息,影响用户体验。
因此,为了避免信息的碰撞,可替代地,作为另一实施例,
上述步骤404可以替换为以下内容:
所述第一确认信息在用于使所述请求端向用户显示与所述账号关联的第一绑定信息,并向用户请求确认是否向与所述账号关联的第一通信地址发送验证信息的同时,还用于所述请求端向所述用户显示与所述账号关联的第三绑定信息,所述第三绑定信息为所述账号对应的所述用户已知的信息;
应理解,第三绑定信息同样为用户已知的信息,第三绑定信息的定义与第一绑定信息类似,为避免重复,此处不再赘述。应注意,本申请实施例中,第一绑定信息和第三绑定信息不同。
例如,如图17所示,在该第一绑定信息为邮箱地址:co***et@huawei.com时,
在该第三绑定信息为手机号138****8888时,请求端在获取到校验端发送的第一确认信息后,可以向用户显示“该请确认是否往邮箱co***et@huawei.com发送验证信息,其中账号的手机为:138****8888。”
类似地,上述步骤405可以替换为以下内容:
所述第二确认信息在用于使所述请求端向用户显示与所述账号关联的第二绑定信息,并向用户请求确认是否向所述第二通信地址发送验证信息的同时,还用于所述请求端向所述用户显示与所述账号对应的第四绑定信息,所述第四绑定信息为所述校验端生成的与所述第三绑定信息形式相同的信息。
应理解,第四绑定信息为校验端生成的另一对应该账号的信息,具体的,第四绑定信息的定义及生成方法与第二绑定信息类似,为避免重复,此处不再赘述。
同样的,在无效账号的时候,需要为无效账号生成多个假的确认信息。应注意,本申请实施例中,第二绑定信息和第四绑定信息不同。
例如,如图18所示,在该第二绑定信息为邮箱地址:dk****Yo@qq.com时,
在该第三绑定信息为手机号157****3426时,请求端在获取到校验端发送的第一确认信息后,可以向用户显示“该请确认是否往邮箱dk****Yo@qq.com发送验证信息,其中账号的手机为:157****3426。”
应理解,上面介绍了请求端同时匿名显示两个绑定信息的情况,可选地,本申请实施例中可以同时三个或者更多个绑定信息,本申请实施例并不限于此。
因此,本申请实施例通过显示多个绑定信息,能够降低匿名显示带来的信息碰撞的问题,能够提升用户体验。
406,请求端发送用户确认发送验证信息的消息。
具体的,所述请求端向所述校验端发送所述用户确认发送验证信息的消息;相应的,所述校验端获取所述请求端发送的所述用户确认发送验证信息的消息。
例如,在用户通过返回的信息进行再次确认。如图19或图20所示,如果用户根据绑定信息确认该账号是属于自己的账号时,则发送确认信息给校验端;否则,返回401重新发起重置密码请求。
应理解,在本申请实施例中,用户可以通过多种方式返回401重新发起重置密码请求,例如,用户可以重新访问“忘记密码”链接,或者通过浏览器的返回按钮,或者用于通过专用于触发重置密码请求“按钮””重新发送重置密码请求,本申请实施例并不限于此。
407,针对有效账号,校验端向第一通信地址发送验证信息,并向请求端发送第一响应消息。
具体的,所述校验端获取所述请求端发送的所述用户确认发送验证信息的消息;在所述账号为有效账号的情况下,所述校验端向所述第一通信地址发送所述验证信息,并向所述请求端发送第一响应消息,所述第一响应消息用于提示所述用户所述校验端已向所述第一通信地址发送验证信息;
也就是说,校验端收到确认信息后,如果账号是有效的,则向账号关联的联系信息(即第一通信地址)(例如邮箱或手机号)发送验证信息(例如验证码或者带验证Token的链接),并向用户请求端界面发送有关发送验证信息的消息(即第一响应信息)。
例如,如图21所示,针对邮箱设备,校验端可以通过SMTP邮件传输协议向账号关联的邮箱发带验证信息的重置链接,并向请求端发送第一响应消息,该第一响应消息用于提示所示用户“我们已经通过您所确认的电子邮件发送了重置密码连接,请查看您的电子邮件”
如图22所示针对手机号,校验端可以通过SMPP、CMPP、SMGP等短信协议向手机号发送验证码信息,并向请求端发送第一响应消息,该第一响应消息用于提示所述用户所述校验端已向所述第一通信地址发送验证信息;并向用户显示处于等待输入验证信息的界面。
408,针对无效账号,校验端向请求端发送与第一响应消息的形式相同的第二响应消息。
具体而言,在所述账号为无效账号的情况下,所述校验端直接向所述请求端发送与所述第一响应消息的形式相同的第二响应消息,所述第二响应消息用于提示所述用户所述校验端已向所述第二通信地址发送验证信息。
也就是说,如果账号是无效的,则直接向用户请求端发送407相同一致的响应消息。
例如,如图23,校验端向无效账号直接展示发送验证信息的提示界面。
如图24所示,对于手机号验证的场景,在账号无效的情况下,用户也是处于等待验证码到达的界面,也就是说校验端向无效账号直接展示发送验证信息到手机的提示界面。
因此,本申请通过为无效账号生成一个对应的、形式一致的假确认信息,而且无论用户在返回假的确认信息上的客户端界面上做任何操作,服务器都返回一个与有效账号相同一致的响应消息。首先,假的确认信息要求与真实账号的对应确认信息形式上一致。这样,黑客无法通过确认信息来判定输入账号的有效性。并且,无论用户在返回假的确认信息上的客户端界面上做任何操作,服务器都返回一个与有效账号相同一致的响应消息。这样,黑客同样无法通过响应消息来判定输入账号有效性。综上,本申请解决了图2方法中黑客利用服务器返回的关于“无效账号”的提示信息来枚举有效账号问题。
可选地,作为另一实施例,在账号无效的情况下,如果无效用户在“输入手机验证码”界面上,做任何输入,校验端可以直接返回“所输入手机验证码无效”。
可选的,在账号有效的情况下,如果用户在“输入手机验证码”界面上输入了错误的验证信息,则校验端同样可以直接返回“所输入手机验证码无效”。
由于黑客没办法收到短信验证码,他不清楚在请求端显示“所输入手机验证码无效”时,是对应无效账号的反馈,还是对应有效账号的输入错误的反馈。因此,能够避免密码重置的漏洞。
由于无效账号无法获取验证信息,因此,无效账号无法进行后续的密码重置过程。在实际应用中,攻击者可能会连续的对多个无效账号申请密码重置,有可能会导致网络拥堵,影响系统性能。针对此问题,在本申请实施例中,在所述服务器校验端确定用户通过所述请求端连续请求对无效账号重置密码的次数达到预设次数阈值的情况下,锁定所述请求端对所述服务器校验端的访问请求。应理解,预设次数阈值可以是系统预设的值,例如可以为6次、8次或12次等,本申请实施例并不限于此。
本申请实施例通过锁定请求端,能够防止攻击者的恶意攻击,提升系统性能。
409,校验端获取验证信息。
具体而言,输入有效账号且账号属于自己的用户可以在联系信息对应的设备(邮箱校验端或手机终端)上获取验证信息,并发往校验端做二次校验。
例如,账号IOTSecurity登陆邮箱huawei@qq.com,并打开电子邮件。通过点击电子邮件中的重置链接发往校验端做二次校验。
或者,例如,如图25所示,对于手机验证的场景,账号IOTSecurity翻看手机读取验证验证码,并输入到界面中,点击“验证码验证”发往校验端做二次验证。
应理解,该验证信息可以是用户通过请求端发送至校验端的,可选地,该验证信息也可以是用户通过用户联系设备直接发送至校验端的,本申请实施例并不限于此。
而对于输入无效账号的用户,由于校验端不会往无效账号的联系信息发验证信息,因此用户也无法收到带验证信息的重置密码链接或从手机号读取验证码信息进行下一步的操作。因此,本申请实施例能够提高系统的安全性。
应理解,本申请实施例中,所述验证信息是所述校验端随机生成的,所述验证信息具有对抗当前暴力破解的安全强度。
410,校验端向请求端返回密码重置界面。
具体而言,所述校验端在校验所述验证信息准确的情况下,向所述请求端返回密码重置界面;
例如,如图26所示,校验端对用户发来验证信息进行校验,如果校验通过,则发送重置密码界面;如果校验不通过,则终止重置密码过程并删除先前生成的验证信息。
411,请求端提交新密码。
具体而言,所述校验端获取所述请求端提交的所述用户通过所述密码重置界面输入的新密码。
例如,如图27所示,用户在重置密码界面上重新设置新的密码并提交给校验端。
412,校验端保存新密码。
具体的,校验端存储账号和对应的新密码,以用于认证用户访问校验端的权限。
应理解,前文描述了本申请实施例中描述了在用户输入的验证信息准确的情况下,校验端即可以向请求端返回密码重置界面,以使得用户进行密码重置。
然而,这种情况下,一旦当用户的客户端(例如,手机或电脑等)被控制或者客户端丢失,或者账号被破解,会存在安全隐患。例如,攻击者获取到用户的账号后,攻击者在通过该客户端请求密码重置的过程中,当破解了校验端发送的第一验证信息的情况下,该攻击者可以通过该验证信息进行密码重置,进而能够登录该账号,存在较大安全问题。
因此,鉴于此问题,本申请实施例中,为了提高安全性能,可以设置多次验证的过程,例如,如图28所示,本申请实施例在一次验证成功后,可以进行二次验证。具体的,如图28所示的方法可以包括:
2801,请求端发送重置密码请求。
2802,校验端向请求端返回验证界面。
2803,请求端发送用户输入的请求密码重置的账号。
2804,针对有效账号,校验端发送第一确认信息。
2805,针对无效账号,校验端发送与第一确认信息形式相同的第二确认信息。
2806,请求端发送用户确认发送验证信息的消息。
2807,针对有效账号,校验端向第一通信地址发送验证信息,并向请求端发送第一响应消息。
2808,针对无效账号,校验端向请求端发送与第一响应消息的形式相同的第二响应消息。
2809,请求端向校验端发送验证信息。
应理解,步骤2801-2809与步骤401-409对应,为避免重复,此处不再详述。
2810,校验端向请求端发送第三确认消息。
具体地,上述步骤2809中的验证信息可以为第一验证信息,所述校验端获取所述用户发送的所述第一验证信息后,在所述校验端校验所述第一验证信息准确的情况下,所述校验端向所述请求端发送第三确认信息,所述第三确认信息用于使所述请求端向所述用户显示与所述账号关联的第五绑定信息,并向所述用户请求确认是否向与所述账号关联的第三通信地址发送第二验证信息,其中,所述第五绑定信息为所述账号对应的所述用户已知的信息。
也就是说,在第一验证信息验证通过后,本申请实施例还可以通过发送第三确认消息再次对用户进行验证。
例如,第一验证信息是校验端向账号的关联的手机发送的信息,第二验证信息可以是与账号关联的邮箱发送的信息。或者,第一验证信息是校验端向账号的关联的邮箱发送的信息,第二验证信息可以是与账号关联的手机发送的信息,本申请实施例并不限于此。
应理解,第二验证信息为校验端生成的信息,第二验证信息与第一验证信息的定义类似,为避免重复,此处不再赘述。应理解,第二验证信息与第一验证信息不同。
应理解,第五绑定信息与第一绑定信息的定义类似,为避免重复,此处不再赘述。
2811,请求端发送用户确认发送第二验证信息的消息。
所述请求端向所述服务校验端获取发送所述用户确认发送所述第二验证信息的消息。
具体的,步骤2811中请求端发送用户确认发送第二验证信息的消息的具体过程与步骤2806中请求端发送用户确认发送第一验证信息的消息类似,为避免重复,此处不再详述。
2812,校验端向第三通信地址发送第二验证信息,并向请求端发送第三响应消息。
具体的,所述服务器校验端向所述第三通信地址发送所述第二验证信息,并向所述请求端发送第三响应消息,所述第三响应消息用于提示所述用户所述服务器校验端已向所述第三通信地址发送所述第二验证信息。
具体的,步骤2812中校验端发送第二验证信息即第三响应消息的具体过程与步骤2807中校验端发送第一验证信息和第一响应消息的过程类似,为避免重复,此处不再赘述。
2813,校验端获取第二验证信息。
应理解,步骤2813中校验端获取第二验证信息的具体过程与步骤2809中获取第一验证信息的过程类似,为避免重复,此处不再赘述。
2814,校验端向请求端返回密码重置界面。
2815,请求端提交新密码。
2816,校验端保存新密码。
应理解,步骤2814-2816与步骤410-412对应,为避免重复,此处不再赘述。
因此,本申请实施例通过两次或多次验证的过程,能够阻止攻击者的攻击,提高密码重置的安全性。
应理解,前文结合图1至图28描述了通过匿名显示第一绑定信息和第二绑定信息的例子,正常用户通过是否向账号关联的通信地址发送验证信息的确认信息,即能识别出所输入账号是否属于自己,从而避免给其他用户造成干扰。如果用户输入错误账号,服务器依然会返回一个假的确认信息,使得黑客攻击者无法通过确认信息识别出所输入的账号是否有效以防止“账号枚举”攻击。但是,黑客可以通过暴力输入所有账号,然后点击“确认发送验证信息或确认获取验证信息,可以给暴力输入中的有效账号发送验证信息,从而对正常用户造成干扰。
因此,为了防止黑客通过暴力输入账号给正常用户造成干扰,在返回确认信息的时候,本申请实施例可以要求用户输入已知的预置信息(例如,输入预值信息的匿名化部分)。服务器只有在账号有效而且输入的预置信息正确的情况下才会触发真正的发送操作,进而本申请能够避免暴力破解对正常用户的干扰。
具体地,下面结合图29进行详细描述。
如图29所示,本申请实施例在用户提交修改密码的账号后,让用户确认是否往账号绑定的匿名化显示的地址发送验证信息,并让用户补全匿名化的部分。具体的,如图29所示的方法可以包括:
2901,请求端发送重置密码请求。
2902,校验端向请求端返回验证界面。
2903,请求端发送用户输入的请求密码重置的账号。
应理解,步骤2801-2803与步骤401-403对应,为避免重复,此处不再详述。
2904,针对有效账号,校验端发送第一确认信息。
其中,所述第一确认信息具体用于使所述请求端向用户请求确认是否向与所述账号关联的匿名化显示的第一通信地址发送验证信息,并使所述请求端请求用户输入所述第一通信地址匿名化的部分。
例如,如图30所示,在账号有效的情况下,该第一通信地址为corenet@huawei.com,则请求端向用户显示“请确认是否往邮箱co***et@huawei.com发送验证信息,并补齐匿名化部分co et@huawei.com”。
在例如,如图31所示,在账号有效的情况下,该第一通信地址为13812345888,则请求端向用户显示“请确认是否往手机号138****888获取验证信息,并补齐匿名化部分138888”。
2905,针对无效账号,校验端发送与第一确认信息形式相同的第二确认信息。
所述第二确认信息具体用于使所述请求端向用户请求确认是否向与所述账号关联的第二通信地址发送验证信息,并使所述请求端请求用户输入所述第二通信地址匿名化的部分。
应理解,该第二通信地址是与用户输入的无效账号一一对应的,该第二通信地址是该校验端根据无效账号生成的,具体地,第二通信地址的生成方式可以参考上文中的描述,此处不再赘述。
2906,请求端发送用户确认发送验证信息的消息。
所述校验端获取所述请求端发送的用户确认发送验证信息的消息,所述用户确认发送验证信息的消息携带所述用户输入的所述匿名化部分;
在所述账号为有效账号且所述用户输入的匿名化部分正确的情况下,所述校验端向所述请求端发送第六确认消息,所述第六确认消息用于使所述请求端请求用户确认所述账号关联的第六绑定信息,其中,所述第六绑定信息为所述账号对应的用户已知的信息;
在所述校验端获取所述请求端发送的用户确认所述第六绑定信息的消息后,所述校验端向所述第一通信地址发送所述验证信息,并向所述请求端发送第六响应消息,所述第六响应消息用于使所述请求端提示所述用户所述校验端已向所述第一通信地址发送验证信息;
或者,
所述校验端获取所述请求端发送的用户确认发送验证信息的消息,所述用户确认发送验证信息的消息携带所述用户输入的所述匿名化部分;
在所述账号为无效账号或所述用户输入的匿名化部分错误的情况下,所述校验端根据所述账号和/或所述用户输入的匿名化部分生成与所述账号对应的第七绑定信息,并向所述请求端发送第七确认消息,所述第七确认消息用于使所述请求端请求用户确认所述账号关联的第七绑定信息,其中,所述第七绑定信息与所述第六绑定信息的形式相同;
在所述校验端获取所述请求端发送的用户确认所述第七绑定信息的消息后,所述校验端直接向所述请求端发送与所述第六响应消息的形式相同的第七响应消息,所述第七响应消息用于使所述请求端提示所述用户所述校验端已向所述第二通信地址发送验证信息。
具体而言,如图32或图33所示,用户输入匿名化部分并点击确认发送验证信息。之后,请求端向用户显示账号绑定的信息,以让用户再次确认。可选地,如果步骤2904或2905中账号关联的通信地址为邮箱,则步骤2906中的账号绑定的信息为手机号。或者,步骤2904或2905中账号关联的通信地址为手机,则步骤2906中的账号绑定的信息为邮箱。
可选地,步骤2906中账号绑定的信息还可以为其他信息,例如,为匿名化显示的用户的姓名、职业、工号等信息。
如图34所示,请求端向用户显示以下信息“请确认您的第二预值信息(对应上文中的第六绑定信息或第七绑定信息):手机号138****8888”。
应理解,第六绑定信息是预值的信息,可以是用户已知的信息,第七绑定信息是校验端生成的与用户输入的账号和/或匿名部分一一对应的信息。
在用户再次点击确认后,在用户输入的账号和匿名化部分都正确的情况下,校验端向账号对应的第一通信地址发送验证信息,请求端向用户显示已发送验证信息。
或者,在用户输入的账号和匿名化部分存在错误的情况下,校验端不发送验证信息,请求端向用户显示已发送验证信息。
具体而言,对应有效账号,针对图30而言,如图35所示,请求端向用户显示以下信息:“我们已经通过您所确认的电子邮件发送了重置密码连接,请查看您的电子邮件”
再例如,针对图31而言,请求端向用户显示如图36所示的信息,等待验证信息。
例如,针对无效账号,校验端不发送验证信息,请求端显示如图35或36类似的信息。
具体而言,校验端收到用户输入的匿名化部分。如果所输入的匿名化部分和账号都是有效的,则发送第六确认消息,使得用户可以确认先前输入的预置信息或账号是否正确。如果用户发现第六绑定信息并不是之前有效账号绑定的信息,可以让用户确认之前的输入可能有误,能够让用户及时改正以重新输入。如果用户输入的预置信息或账号有错,则服务返回一个与第六确认信息形式一样的,并且和错误账号一一对应的假确认信息(即第七确认信息)给用户,能够避免外界破解。
可替代地,在实际应用中,在用户确认校验端发送验证信息后,也可以不需要再次让用户确认另一个绑定信息。也就是说可以没有图32所示的步骤。
具体而言,所述校验端获取所述请求端发送的用户确认发送验证信息的消息,所述用户确认发送验证信息的消息携带所述用户输入的所述匿名化部分;
在所述账号为有效账号且所述用户输入的匿名化部分正确的情况下,所述校验端向所述第一通信地址发送所述验证信息,并向所述请求端发送第四响应消息,所述第四响应消息用于使所述请求端提示所述用户所述校验端已向所述第一通信地址发送验证信息;
例如,针对图30而言,如图35所示,请求端向用户显示以下信息:“我们已经通过您所确认的电子邮件发送了重置密码连接,请查看您的电子邮件”
再例如,针对图31而言,请求端向用户显示如图36所示的信息,等待验证信息。
或者,在所述账号为无效账号或者所述用户输入的匿名化部分错误的情况下,所述校验端直接向所述请求端发送与所述第四响应消息的形式相同的第五响应消息,所述第五响应消息用于使所述请求端提示所述用户所述校验端已向所述第二通信地址发送验证信息。例如,针对无效账号,显示如图35或36类似的信息。
这种情况下,没有让用户再次确认的过程,能够较少交互,降低重置密码的总时间。
2907,针对有效账号,校验端向第一通信地址发送验证信息,并向请求端发送第一响应消息。
具体地,请求端向用户显示如图33或图34所示的内容。
2908,针对无效账号,校验端向请求端发送与第一响应消息的形式相同的第二响应消息。
具体地,请求端向用户显示如图33或图34所示的内容。
2909,校验端获取验证信息。
2910,校验端向请求端返回密码重置界面。
2911,请求端提交新密码。
2912,校验端保存新密码。
应理解,步骤2907-2912与步骤407-412对应,为避免重复,此处不再赘述。
因此,本申请实施例通过两次或多次验证的过程,能够阻止攻击者的攻击,提高密码重置的安全性。
应理解,上文中图1至图36的例子,仅仅是为了帮助本领域技术人员理解本申请实施例,而非要将本申请实施例限于所例示的具体数值或具体场景。本领域技术人员根据所给出的图1至图36的例子,显然可以进行各种等价的修改或变化,这样的修改或变化也落入本申请实施例的范围内。应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
上文中,结合图1至图36详细描述了本申请实施例的密码重置的方法,下面结合图37和图39描述本申请实施例的校验端,结合图38和图40描述本申请实施例的请求端。
图37是是根据本申请一个实施例的校验端示意框图。应用于包括请求端与校验端的系统中,所述请求端需通过账号和密码请求所述校验端校验身份,图37所示的校验端3700包括:处理单元3710和收发单元3720。
具体地,所述收发单元用于接收所述请求端发送的请求密码重置的账号;
在判断所述账号为有效账号的情况下,所述收发单元还用于向所述请求端发送第一确认信息,所述第一确认信息用于使所述请求端向用户显示与所述账号关联的第一绑定信息,并向用户请求确认是否向与所述账号关联的第一通信地址发送验证信息,其中,所述第一绑定信息为所述账号对应的用户已知的信息;
或者,在判断所述账号为无效账号的情况下,所述处理单元用于根据所述账号生成与所述账号对应的第二绑定信息,所述收发单元还用于向所述请求端发送与所述第一确认信息的形式相同的第二确认信息,其中,所述第二确认信息用于使所述请求端向用户显示所述第二绑定信息,并向用户请求确认是否向与所述账号对应的第二通信地址发送验证信息,所述第二绑定信息与所述第一绑定信息的形式相同。
因此,本申请通过为无效账号生成一个对应的、与第一确认信息形式一致的假确认信息(即第二确认信息),由于假的确认信息要求与真实账号的对应确认信息形式上一致。这样,黑客无法通过确认信息来判定输入账号的有效性。因此,本申请实施例能够解决黑客利用服务器返回的关于“无效账号”的提示信息来枚举有效账号问题,能够提高系统的安全性能。
并且,本申请中通过采用一个用户已知的信息或预置信息作为确认信息。对于正常用户来说,如果输错账号,可以通过已知信息或预置信息(即上述第一绑定信息)来辨认返回的信息不属于自己。因此,本申请实施例同样能够解决用户无法及时感知“输入无效账号”和“误输入他人账号”的”问题,能够提高用户体验。
可选地,作为另一实施例,所述第一绑定信息为所述第一通信地址,所述第二绑定信息为所述第二通信地址。
可选地,作为另一实施例,所述收发单元还用于:
获取所述请求端发送的所述用户确认发送验证信息的消息;
在所述账号为有效账号的情况下,向所述第一通信地址发送所述验证信息,并向所述请求端发送第一响应消息,所述第一响应消息用于提示所述用户所述校验端已向所述第一通信地址发送验证信息;
或者,
在所述账号为无效账号的情况下,直接向所述请求端发送与所述第一响应消息的形式相同的第二响应消息,所述第二响应消息用于提示所述用户所述校验端已向所述第二通信地址发送验证信息。
可选地,作为另一实施例,所述第一确认信息在用于使所述请求端向用户显示与所述账号关联的第一绑定信息,并向用户请求确认是否向与所述账号关联的第一通信地址发送验证信息的同时,还用于所述请求端向所述用户显示与所述账号关联的第三绑定信息,所述第三绑定信息为所述账号对应的用户已知的信息;
所述第二确认信息在用于使所述请求端向用户显示与所述账号关联的第二绑定信息,并向用户请求确认是否向所述第二通信地址发送验证信息的同时,还用于所述请求端向所述用户显示与所述账号对应的第四绑定信息,所述第四绑定信息为所述处理单元生成的与所述第三绑定信息形式相同的信息。
可选地,作为另一实施例,在判断所述账号为无效账号的情况下,所述处理单元具体用于根据所述账号以及第一密钥生成与所述账号对应的所述第二绑定信息。
可选地,作为另一实施例,所述处理单元具体用于获取所述第一密钥;
将所述第一密钥和所述账号组合在一起,生成组合数据,
根据所述组合数据采用第一函数算法生成所述第二绑定信息,其中,所述第一函数算法用于生成与一个输入信息唯一对应的输出信息。
可选地,作为另一实施例,所述第一通信地址和所述第二通信地址为匿名化的信息,
其中,所述第一确认信息具体用于使所述请求端向用户请求确认是否向与所述账号关联的第一通信地址发送验证信息,并使所述请求端请求用户输入所述第一通信地址匿名化的部分;
其中,所述第二确认信息具体用于使所述请求端向用户请求确认是否向与所述账号关联的第二通信地址发送验证信息,并使所述请求端请求用户输入所述第二通信地址匿名化的部分。
可选地,作为另一实施例,所述收发单元还用于:
获取所述请求端发送的用户确认发送验证信息的消息,所述用户确认发送验证信息的消息携带所述用户输入的所述匿名化部分;
在所述账号为有效账号且所述用户输入的匿名化部分正确的情况下,向所述第一通信地址发送所述验证信息,并向所述请求端发送第四响应消息,所述第四响应消息用于使所述请求端提示所述用户所述校验端已向所述第一通信地址发送验证信息;
或者,
在所述账号为无效账号或者所述用户输入的匿名化部分错误的情况下,直接向所述请求端发送与所述第四响应消息的形式相同的第五响应消息,所述第五响应消息用于使所述请求端提示所述用户所述校验端已向所述第二通信地址发送验证信息。
可选地,作为另一实施例,所述收发单元还用于:
获取所述请求端发送的用户确认发送验证信息的消息,所述用户确认发送验证信息的消息携带所述用户输入的所述匿名化部分;
在所述账号为有效账号且所述用户输入的匿名化部分正确的情况下,向所述请求端发送第六确认消息,所述第六确认消息用于使所述请求端请求用户确认所述账号关联的第六绑定信息,其中,所述第六绑定信息为所述账号对应的用户已知的信息;
在获取所述请求端发送的用户确认所述第六绑定信息的消息后,向所述第一通信地址发送所述验证信息,并向所述请求端发送第六响应消息,所述第六响应消息用于使所述请求端提示所述用户所述校验端已向所述第一通信地址发送验证信息;
或者,所述收发单元还用于:
获取所述请求端发送的用户确认发送验证信息的消息,所述用户确认发送验证信息的消息携带所述用户输入的所述匿名化部分;
在所述账号为无效账号或所述用户输入的匿名化部分错误的情况下,根据所述账号和/或所述用户输入的匿名化部分生成与所述账号对应的第七绑定信息,并向所述请求端发送第七确认消息,所述第七确认消息用于使所述请求端请求用户确认所述账号关联的第七绑定信息,其中,所述第七绑定信息与所述第六绑定信息的形式相同;
在获取所述请求端发送的用户确认所述第七绑定信息的消息后,直接向所述请求端发送与所述第六响应消息的形式相同的第七响应消息,所述第七响应消息用于使所述请求端提示所述用户所述校验端已向所述第二通信地址发送验证信息。
可选地,作为另一实施例,所述处理单元还用于在所述校验端确定用户通过所述请求端连续请求对无效账号重置密码的次数达到预设次数阈值的情况下,锁定所述请求端对所述校验端的请求。
可选地,作为另一实施例,所述收发单元还用于:
获取所述用户发送的验证信息;
在校验所述验证信息准确的情况下,向所述请求端返回密码重置界面;
获取所述请求端提交的所述用户通过所述密码重置界面输入的新密码。
可选地,作为另一实施例,所述验证信息为第一验证信息,在所述账号为有效账号的情况下,所述收发单元还用于:
获取所述用户发送的所述第一验证信息;
在所述校验端校验所述第一验证信息准确的情况下,向所述请求端发送第三确认信息,所述第三确认信息用于使所述请求端向所述用户显示与所述账号关联的第五绑定信息,并向所述用户请求确认是否向与所述账号关联的第三通信地址发送第二验证信息,其中,所述第五绑定信息为所述账号对应的所述用户已知的信息。
可选地,作为另一实施例,所述收发单元还用于:
获取所述请求端发送的所述用户确认发送所述第二验证信息的消息;
向所述第三通信地址发送所述第二验证信息,并向所述请求端发送第三响应消息,所述第三响应消息用于提示所述用户所述校验端已向所述第三通信地址发送所述第二验证信息。
可选地,作为另一实施例,所述收发单元还用于:
获取所述用户发送的所述第二验证信息;
在校验所述第二验证信息准确的情况下,向所述请求端返回密码重置界面;
获取所述请求端提交的所述用户通过所述密码重置界面输入的新密码。
可选地,作为另一实施例,所述第一绑定信息、所述第二绑定新和所述第三绑定信息均为匿名化的信息。
可选地,作为另一实施例,所述密码包括个人识别码PIN、密钥、私钥或所述用户设置的字符串;
所述账号包括邮箱地址、手机号、第三方应用的账号或所述用户向所述校验端注册的字符串。
应理解,图37所示的校验端能够实现图1至图36方法实施例中涉及校验端的各个过程,校验端3700中的各个模块的操作和/或功能,分别为了实现图1至图36中的方法实施例中的相应流程,具体可参见上述方法实施例中的描述,为避免重复,此处适当省略详述描述。
图38是是根据本申请一个实施例的请求端示意框图。应用于包括请求端与校验端的系统中,所述请求端需通过账号和密码请求所述校验端校验身份,图38所示的请求端3800包括:处理单元3810、收发单元3820和显示单元3830。
具体地,所述处理单元用于控制所述收发单元向所述校验端发送请求密码重置的账号;
在所述校验端判断所述账号为有效账号的情况下,接收所述校验端发送的第一确认信息,所述第一确认信息用于使所述显示单元向用户显示与所述账号关联的第一绑定信息,并向用户请求确认是否向与所述账号关联的第一通信地址发送验证信息,其中,所述第一绑定信息为所述账号对应的用户已知的信息;
或者,在所述校验端判断所述账号为无效账号的情况下,接收所述校验端发送的与所述第一确认信息的形式相同的第二确认信息,其中,所述第二确认信息用于使所述显示单元向用户显示所述第二绑定信息,并向用户请求确认是否向与所述账号对应的第二通信地址发送验证信息,所述第二绑定信息是所述校验端根据所述账号生成的与所述账号对应的信息,所述第二绑定信息与所述第一绑定信息的形式相同。
因此,本申请通过为无效账号生成一个对应的、与第一确认信息形式一致的假确认信息(即第二确认信息),由于假的确认信息要求与真实账号的对应确认信息形式上一致。这样,黑客无法通过确认信息来判定输入账号的有效性。因此,本申请实施例能够解决黑客利用服务器返回的关于“无效账号”的提示信息来枚举有效账号问题,能够提高系统的安全性能。
并且,本申请中通过采用一个用户已知的信息或预置信息作为确认信息。对于正常用户来说,如果输错账号,可以通过已知信息或预置信息(即上述第一绑定信息)来辨认返回的信息不属于自己。因此,本申请实施例同样能够解决用户无法及时感知“输入无效账号”和“误输入他人账号”的”问题,能够提高用户体验。
可选地,作为另一实施例,所述第一绑定信息为所述第一通信地址,所述第二绑定信息为所述第二通信地址。
可选地,作为另一实施例,所述收发单元还用于:
向所述校验端发送所述用户确认发送验证信息的消息;
在所述账号为有效账号的情况下,获取所述校验端发送的第一响应消息,所述第一响应消息用于提示所述用户所述校验端已向所述第一通信地址发送验证信息,其中,所述第一响应消息是所述校验端向所述第一通信地址发送所述验证信息之后发送的;
或者,
在所述账号为无效账号的情况下,获取所述校验端发送的与所述第一响应消息的形式相同的第二响应消息,所述第二响应消息用于提示所述用户所述校验端已向所述第二通信地址发送验证信息,其中,所述第二响应消息是所述校验端获取所述确认发送验证信息的消息后直接发送的。
可选地,作为另一实施例,所述第一确认信息在用于使所述显示单元向用户显示与所述账号关联的第一绑定信息,并向用户请求确认是否向与所述账号关联的第一通信地址发送验证信息的同时,还用于所述显示单元向所述用户显示与所述账号关联的第三绑定信息,所述第三绑定信息为所述账号对应的用户已知的信息;
所述第二确认信息在用于使所述显示单元向用户显示与所述账号关联的第二绑定信息,并向用户请求确认是否向所述第二通信地址发送验证信息的同时,还用于所述显示单元向所述用户显示与所述账号对应的与所述第一绑定信息形式相同的第四绑定信息,所述第四绑定信息为所述校验端生成的与所述第三绑定信息形式相同的信息。
可选地,作为另一实施例,所述第一通信地址和所述第二通信地址为匿名化的信息,
其中,所述第一确认信息具体用于使所述请求端向用户请求确认是否向与所述账号关联的第一通信地址发送验证信息,并使所述请求端请求用户输入所述第一通信地址匿名化的部分;
所述第二确认信息具体用于使所述请求端向用户请求确认是否向与所述账号关联的第二通信地址发送验证信息,并使所述请求端请求用户输入所述第二通信地址匿名化的部分。
可选地,作为另一实施例,所述收发单元还用于:
向所述校验端发送用户确认发送验证信息的消息,所述用户确认发送验证信息的消息携带所述用户输入的所述匿名化部分;
端接收所述校验端发送的第四响应消息,所述第四响应消息是所述校验端在所述账号为有效账号且所述用户输入的匿名化部分正确的情况下,且所述校验端向所述第一通信地址发送所述验证信息后发送的,所述第四响应消息用于使所述请求端提示所述用户所述校验端已向所述第一通信地址发送验证信息;
或者,
接收所述校验端直接发送的与所述第四响应消息的形式相同的第五响应消息,所述第五响应消息是所述校验端在所述账号为无效账号或者所述用户输入的匿名化部分错误的情况下发送的,所述第五响应消息用于使所述请求端提示所述用户所述校验端已向所述第二通信地址发送验证信息。
可选地,作为另一实施例,所述收发单元还用于:
向所述校验端发送用户确认发送验证信息的消息,所述用户确认发送验证信息的消息携带所述用户输入的所述匿名化部分;
接收所述校验端发送的第六确认消息,所述第六确认消息是所述校验端在所述账号为有效账号且所述用户输入的匿名化部分正确的情况下发送的,所述第六确认消息用于使所述请求端请求用户确认所述账号关联的第六绑定信息,其中,所述第六绑定信息为所述账号对应的用户已知的信息;
向所述校验端发送用户确认所述第六绑定信息的消息;
接收所述校验端发送的第六响应消息,所述第六响应消息是所述校验端向所述第一通信地址发送所述验证信息后发送的,所述第六响应消息用于使所述请求端提示所述用户所述校验端已向所述第一通信地址发送验证信息;
或者,所述收发单元还用于:
所述请求端向所述校验端发送用户确认发送验证信息的消息,所述用户确认发送验证信息的消息携带所述用户输入的所述匿名化部分;
所述请求端接收所述校验端发送的第七确认消息,所述第七确认消息是所述校验端在所述账号为无效账号或所述用户输入的匿名化部分错误的情况下发送的,所述第七确认消息用于使所述请求端请求用户确认所述账号关联的第七绑定信息,其中,所述第七绑定信息与所述第六绑定信息的形式相同,第七绑定信息是所述校验端根据所述账号和/或所述用户输入的匿名化部分生成的;
所述请求端向所述校验端发送用户确认所述第七绑定信息的消息;
所述请求端接收所述校验端直接发送的与所述第六响应消息形式相同的第七响应消息,所述第七响应消息用于使所述请求端提示所述用户所述校验端已向所述第二通信地址发送验证信息。
可选地,作为另一实施例,所述收发单元还用于:
获取所述校验端发送的密码重置界面,所述密码重置界面是所述校验端在验证所述用户发送的验证信息准确后发送的;
向所述校验端提交所述用户通过所述密码重置界面输入的新密码。
可选地,作为另一实施例,所述验证信息为第一验证信息,在所述账号为有效账号的情况下,所述收发单元还用于:
接收所述校验端发送的第三确认信息,所述第三确认信息用于使所述请求端向所述用户显示与所述账号关联的第五绑定信息,并向所述用户请求确认是否向与所述账号关联的第三通信地址发送第二验证信息,其中,所述第五绑定信息为所述账号对应的所述用户已知的信息,所述第三确认信息是所述校验端获取所述用户发送的所述第一验证信息后发送的。
可选地,作为另一实施例,所述收发单元还用于:
向所述校验端发送所述用户确认发送所述第二验证信息的消息;
接收所述校验端发送的第三响应消息,所述第三响应消息用于提示所述用户所述校验端已向所述第三通信地址发送所述第二验证信息,所述第三响应消息是所述校验端向所述第三通信地址发送所述第二验证信息后发送的。
可选地,作为另一实施例,所述收发单元还用于:
获取所述校验端发送的密码重置界面,所述密码重置界面是所述校验端在验证所述用户发送的所述第二验证信息准确后发送的;
向所述校验端提交所述用户通过所述密码重置界面输入的新密码。
可选地,作为另一实施例,所述第一绑定信息、所述第二绑定信息和所述第三绑定信息均为匿名化的信息。
可选地,作为另一实施例,所述密码包括个人识别码PIN、密钥、私钥或所述用户设置的字符串;
所述账号包括邮箱地址、手机号、第三方应用的账号或所述用户向所述校验端注册的字符串。
应理解,图38所示的请求端能够实现图1至图36方法实施例中涉及请求端的各个过程,请求端3800中的各个模块的操作和/或功能,分别为了实现图1至图36中的方法实施例中的相应流程,具体可参见上述方法实施例中的描述,为避免重复,此处适当省略详述描述。
图39示出了根据本申请实施例的校验端3900的示意性框图。具体地,如图39所示,该校验端3900包括:处理器3910和收发器3920,处理器3910和收发器3920相连,可选地,该校验端3900还包括存储器3930,存储器3930与处理器3910相连,其中,处理器3910、存储器3930和收发器3920之间通过内部连接通路互相通信,传递控制和/或数据信号。该存储器3930可以用于存储指令,该处理器3910用于执行该存储器3930存储的指令,控制收发器3920收发送信息或信号,控制器3910在执行存储器3930中的指令能够完成上述图1至图36方法实施例中涉及校验端的各个过程。为避免重复,此处不再赘述。
应理解,校验端3900可以与上述图37中的校验端3700相对应,校验端3700中的处理单元3710的功能可以由处理器3910实现,收发单元3720的功能可以由收发器3920实现,显示单元3730的功能可以由显示器3940实现。
因此,本申请通过为无效账号生成一个对应的、与第一确认信息形式一致的假确认信息(即第二确认信息),由于假的确认信息要求与真实账号的对应确认信息形式上一致。这样,黑客无法通过确认信息来判定输入账号的有效性。因此,本申请实施例能够解决黑客利用服务器返回的关于“无效账号”的提示信息来枚举有效账号问题,能够提高系统的安全性能。
并且,本申请中通过采用一个用户已知的信息或预置信息作为确认信息。对于正常用户来说,如果输错账号,可以通过已知信息或预置信息(即上述第一绑定信息)来辨认返回的信息不属于自己。因此,本申请实施例同样能够解决用户无法及时感知“输入无效账号”和“误输入他人账号”的”问题,能够提高用户体验。
图40示出了根据本申请实施例的请求端4000的示意性框图。具体地,如图40所示,该请求端4000包括:处理器4010和收发器4020,处理器4010和收发器4020相连,可选地,该请求端4000还包括存储器4030,存储器4030与处理器4010相连,可选地,该请求端4000还可以包括显示器4040,其中,处理器4010、存储器4030、显示器4040和收发器4020之间通过内部连接通路互相通信,传递控制和/或数据信号。该存储器4030可以用于存储指令,显示器4040用于向用户显示信息,该处理器4010用于执行该存储器4030存储的指令,控制收发器4020收发送信息或信号,控制器4010在执行存储器4030中的指令能够完成上述图1至图36方法实施例中涉及请求端的各个过程。为避免重复,此处不再赘述。
应理解,请求端4000可以与上述图38中的请求端3800相对应,请求端3800中的处理单元3810的功能可以由处理器4010实现,收发单元3820的功能可以由收发器4020实现。
因此,本申请通过为无效账号生成一个对应的、与第一确认信息形式一致的假确认信息(即第二确认信息),由于假的确认信息要求与真实账号的对应确认信息形式上一致。这样,黑客无法通过确认信息来判定输入账号的有效性。因此,本申请实施例能够解决黑客利用服务器返回的关于“无效账号”的提示信息来枚举有效账号问题,能够提高系统的安全性能。
并且,本申请中通过采用一个用户已知的信息或预置信息作为确认信息。对于正常用户来说,如果输错账号,可以通过已知信息或预置信息(即上述第一绑定信息)来辨认返回的信息不属于自己。因此,本申请实施例同样能够解决用户无法及时感知“输入无效账号”和“误输入他人账号”的”问题,能够提高用户体验。
应理解,该请求端4000还可以包括其它部件,例如,输入单元、通信单元、外设接口等组件。这些组件通过一条或多条总线进行通信。本领域技术人员可以理解,图中示出的请求端的结构并不构成对本申请的限定,它既可以是总线形结构,也可以是星型结构,还可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。在本申请实施方式中。
输入单元用于实现用户与请求端的交互和/或信息输入到移动终端中。例如,输入单元可以接收用户输入的数字或字符信息,以产生与用户设置或功能控制有关的信号输入。在本申请具体实施方式中,输入单元可以是触控面板,也可以是其他人机交互界面,例如实体输入键、麦克风等,还可是其他外部信息撷取装置,例如摄像头等。触控面板,也称为触摸屏或触控屏,可收集用户在其上触摸或接近的操作动作。比如用户使用手指、触笔等任何适合的物体或附件在触控面板上或接近触控面板的位置的操作动作,并根据预先设定的程式驱动相应的连接装置。可选的,触控面板可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸操作,并将检测到的触摸操作转换为电信号,以及将所述电信号传送给触摸控制器;触摸控制器从触摸检测装置上接收所述电信号,并将它转换成触点坐标,再送给处理单元。所述触摸控制器还可以接收处理单元发来的命令并执行。此外,可以采用电阻式、电容式、红外线(Infrared)以及表面声波等多种类型实现触控面板。在本申请的其他实施方式中,输入单元所采用的实体输入键可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。麦克风形式的输入单元可以收集用户或环境输入的语音并将其转换成电信号形式的、处理单元可执行的命令。
处理器为请求端的控制中心,利用各种接口和线路连接整个请求端的各个部分,通过运行或执行存储在存储单元内的软件程序和/或模块,以及调用存储在存储单元内的数据,以执行请求端的各种功能和/或处理数据。
所述通信单元用于建立通信信道,使请求端通过所述通信信道以连接至校验端,并通过所述通信信道与所述校验端交互数据。
显示器4040也可以称为输出单元,输出单元可以包括但不限于影像输出单元、声音输出和触感输出单元。影像输出单元用于输出文字、图片和/或视频。所述影像输出单元可包括显示面板,例如采用LCD(Liquid Crystal Display,液晶显示器)、OLED(OrganicLight-Emitting Diode,有机发光二极管)、场发射显示器(field emission display,简称FED)等形式来配置的显示面板。或者所述影像输出单元可以包括反射式显示器,例如电泳式(electrophoretic)显示器,或利用光干涉调变技术(Interferometric Modulation ofLight)的显示器。所述影像输出单元可以包括单个显示器或不同尺寸的多个显示器。在本申请的具体实施方式中,上述输入单元所采用的触控面板亦可同时作为输出单元的显示面板。例如,当触控面板检测到在其上的触摸或接近的手势操作后,传送给处理单元以确定触摸事件的类型,随后处理单元根据触摸事件的类型在显示面板上提供相应的视觉输出。虽然输入单元与输出单元是作为两个独立的部件来实现移动终端的输入和输出功能,但是在某些实施例中,可以将触控面板与显示面板集成一体而实现移动终端的输入和输出功能。例如,所述影像输出单元可以显示各种图形化用户接口(Graphical User Interface,简称GUI)以作为虚拟控制组件,包括但不限于窗口、卷动轴、图标及剪贴簿,以供用户通过触控方式进行操作。
应注意,本申请实施例中的处理器(例如,图39至图40中的处理器)可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法实施例的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器、数字信号处理器(digital signal processor,DSP)、专用集成电路(applicationspecific integrated crcuit,ASIC)、现成可编程门阵列(field programmable gatearray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
可以理解,本申请实施例中的存储器(例如,图39至图40中的存储器)可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(randomaccess memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(dynamicRAM,DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data rate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(direct rambus RAM,DR RAM)。应注意,本文描述的系统和方法的存储器旨在包括但不限于这些和任意其它适合类型的存储器。
所述应用程序包括安装在请求端上的任何应用,包括但不限于浏览器、电子邮件、即时消息服务、文字处理、键盘虚拟、窗口小部件(Widget)、加密、数字版权管理、语音识别、语音复制、定位(例如由全球定位系统提供的功能)、音乐播放等等。
应理解,本申请实施例中的收发单元或收发器也可以称为通信单元。
本申请实施例还提供了一种处理装置,包括处理器和接口;所述处理器,用于执行上述任一方法实施例中的重置密码的方法。
应理解,上述处理装置可以是一个芯片。例如,该处理装置可以是现场可编程门阵列(Field-Programmable Gate Array,FPGA),可以是专用集成芯片(ApplicationSpecific Integrated Circuit,ASIC),还可以是系统芯片(System on Chip,SoC),还可以是中央处理器(Central Processor Unit,CPU),还可以是网络处理器(NetworkProcessor,NP),还可以是数字信号处理电路(Digital Signal Processor,DSP),还可以是微控制器(Micro Controller Unit,MCU),还可以是可编程控制器(Programmable LogicDevice,PLD)或其他集成芯片。
本申请实施例还提供一种系统,其包括前述的请求端和校验端,所述请求端需通过账号和密码请求所述校验端校验身份。
本申请实施例还提供了一种计算机可读介质,其上存储有计算机程序,该计算机程序被计算机执行时实现上述任一方法实施例的方法。
本申请实施例还提供了一种计算机程序产品,该计算机程序产品被计算机执行时实现上述任一方法实施例的方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行该计算机指令时,全部或部分地产生按照本申请实施例该的流程或功能。该计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。该计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,该计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digitalsubscriber line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。该计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。该可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如,高密度数字视频光盘(digitalvideo disc,DVD))、或者半导体介质(例如,固态硬盘(solid state disk,SSD))等。
应理解,上述处理装置可以是一个芯片,该处理器可以通过硬件来实现也可以通过软件来实现,当通过硬件实现时,该处理器可以是逻辑电路、集成电路等;当通过软件来实现时,该处理器可以是一个通用处理器,通过读取存储器中存储的软件代码来实现,改存储器可以集成在处理器中,可以位于该处理器之外,独立存在。
应理解,本文中涉及的第一、第二、第三、第四以及各种数字编号仅为描述方便进行的区分,并不用来限制本申请实施例的范围。
在本说明书中使用的术语“部件”、“模块”、“系统”等用于表示计算机相关的实体、硬件、固件、硬件和软件的组合、软件、或执行中的软件。例如,部件可以是但不限于,在处理器上运行的进程、处理器、对象、可执行文件、执行线程、程序和/或计算机。通过图示,在计算设备上运行的应用和计算设备都可以是部件。一个或多个部件可驻留在进程和/或执行线程中,部件可位于一个计算机上和/或分布在2个或更多个计算机之间。此外,这些部件可从在上面存储有各种数据结构的各种计算机可读介质执行。部件可例如根据具有一个或多个数据分组(例如来自与本地系统、分布式系统和/或网络间的另一部件交互的二个部件的数据,例如通过信号与其它系统交互的互联网)的信号通过本地和/或远程进程来通信。
应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本申请的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
另外,本文中术语“系统”和“网络”在本文中常被可互换使用。本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
应理解,在本申请实施例中,“与A相应的B”表示B与A相关联,根据A可以确定B。但还应理解,根据A确定B并不意味着仅仅根据A确定B,还可以根据A和/或其它信息确定B。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本申请实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本申请可以用硬件实现,或固件实现,或它们的组合方式来实现。当使用软件实现时,可以将上述功能存储在计算机可读介质中或作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是计算机能够存取的任何可用介质。以此为例但不限于:计算机可读介质可以包括RAM、ROM、EEPROM、CD-ROM或其他光盘存储、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质。此外。任何连接可以适当的成为计算机可读介质。例如,如果软件是使用同轴电缆、光纤光缆、双绞线、数字用户线(DSL)或者诸如红外线、无线电和微波之类的无线技术从网站、服务器或者其他远程源传输的,那么同轴电缆、光纤光缆、双绞线、DSL或者诸如红外线、无线和微波之类的无线技术包括在所属介质的定影中。如本申请所使用的,盘(Disk)和碟(disc)包括压缩光碟(CD)、激光碟、光碟、数字通用光碟(DVD)、软盘和蓝光光碟,其中盘通常磁性的复制数据,而碟则用激光来光学的复制数据。上面的组合也应当包括在计算机可读介质的保护范围之内。
总之,以上所述仅为本申请技术方案的较佳实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (50)

1.一种重置密码的方法,其特征在于,应用于包括请求端与校验端的系统中,所述请求端需通过账号和密码请求所述校验端校验身份,所述方法包括:
所述校验端接收所述请求端发送的请求密码重置的账号;
在判断所述账号为有效账号的情况下,所述校验端向所述请求端发送第一确认信息,所述第一确认信息用于使所述请求端向用户显示与所述账号关联的第一绑定信息,并向用户请求确认是否向与所述账号关联的第一通信地址发送验证信息,其中,所述第一绑定信息为所述账号对应的用户已知的信息;
在判断所述账号为无效账号的情况下,所述校验端根据所述账号生成与所述账号对应的第二绑定信息,并向所述请求端发送与所述第一确认信息的形式相同的第二确认信息,其中,所述第二确认信息用于使所述请求端向用户显示所述第二绑定信息,并向用户请求确认是否向与所述账号对应的第二通信地址发送验证信息,所述第二绑定信息与所述第一绑定信息的形式相同。
2.根据权利要求1所述的方法,其特征在于,
所述第一绑定信息为所述第一通信地址,
所述第二绑定信息为所述第二通信地址。
3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
所述校验端获取所述请求端发送的所述用户确认发送验证信息的消息;
在所述账号为有效账号的情况下,所述校验端向所述第一通信地址发送所述验证信息,并向所述请求端发送第一响应消息,所述第一响应消息用于提示所述用户所述校验端已向所述第一通信地址发送验证信息;
或者,
在所述账号为无效账号的情况下,所述校验端直接向所述请求端发送与所述第一响应消息的形式相同的第二响应消息,所述第二响应消息用于提示所述用户所述校验端已向所述第二通信地址发送验证信息。
4.根据权利要求1或2所述的方法,其特征在于,
所述第一确认信息在用于使所述请求端向用户显示与所述账号关联的第一绑定信息,并向用户请求确认是否向与所述账号关联的第一通信地址发送验证信息的同时,还用于使所述请求端向所述用户显示与所述账号关联的第三绑定信息,所述第三绑定信息为所述账号对应的用户已知的信息;
所述第二确认信息在用于使所述请求端向用户显示与所述账号关联的第二绑定信息,并向用户请求确认是否向所述第二通信地址发送验证信息的同时,还用于使所述请求端向所述用户显示与所述账号对应的第四绑定信息,所述第四绑定信息为所述校验端生成的与所述第三绑定信息形式相同的信息。
5.根据权利要求1或2所述的方法,其特征在于,在判断所述账号为无效账号的情况下,所述校验端根据所述账号生成与所述账号对应的第二绑定信息,包括:
所述校验端根据所述账号以及第一密钥生成与所述账号对应的所述第二绑定信息。
6.根据权利要求5所述的方法,其特征在于,
所述校验端根据所述账号以及第一预设密钥生成与所述账号对应的所述第二绑定信息,包括:
所述校验端获取所述第一密钥;
所述校验端将所述第一密钥和所述账号组合在一起,生成组合数据,
所述校验端根据所述组合数据采用第一函数算法生成所述第二绑定信息,其中,所述第一函数算法用于生成与一个输入信息唯一对应的输出信息。
7.根据权利要求2所述的方法,其特征在于,
所述第一通信地址和所述第二通信地址为匿名化的信息,
其中,所述第一确认信息具体用于使所述请求端向用户请求确认是否向与所述账号关联的第一通信地址发送验证信息,并使所述请求端请求用户输入所述第一通信地址匿名化的部分;
其中,所述第二确认信息具体用于使所述请求端向用户请求确认是否向与所述账号关联的第二通信地址发送验证信息,并使所述请求端请求用户输入所述第二通信地址匿名化的部分。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
所述校验端获取所述请求端发送的用户确认发送验证信息的消息,所述用户确认发送验证信息的消息携带所述用户输入的所述匿名化部分;
在所述账号为有效账号且所述用户输入的匿名化部分正确的情况下,所述校验端向所述第一通信地址发送所述验证信息,并向所述请求端发送第四响应消息,所述第四响应消息用于使所述请求端提示所述用户所述校验端已向所述第一通信地址发送验证信息;
或者,
在所述账号为无效账号或者所述用户输入的匿名化部分错误的情况下,所述校验端直接向所述请求端发送与所述第四响应消息的形式相同的第五响应消息,所述第五响应消息用于使所述请求端提示所述用户所述校验端已向所述第二通信地址发送验证信息。
9.根据权利要求7所述的方法,其特征在于,
所述方法还包括:
所述校验端获取所述请求端发送的用户确认发送验证信息的消息,所述用户确认发送验证信息的消息携带所述用户输入的所述匿名化部分;
在所述账号为有效账号且所述用户输入的匿名化部分正确的情况下,所述校验端向所述请求端发送第六确认消息,所述第六确认消息用于使所述请求端请求用户确认所述账号关联的第六绑定信息,其中,所述第六绑定信息为所述账号对应的用户已知的信息;
在所述校验端获取所述请求端发送的用户确认所述第六绑定信息的消息后,所述校验端向所述第一通信地址发送所述验证信息,并向所述请求端发送第六响应消息,所述第六响应消息用于使所述请求端提示所述用户所述校验端已向所述第一通信地址发送验证信息;
或者,所述方法还包括:
所述校验端获取所述请求端发送的用户确认发送验证信息的消息,所述用户确认发送验证信息的消息携带所述用户输入的所述匿名化部分;
在所述账号为无效账号或所述用户输入的匿名化部分错误的情况下,所述校验端根据所述账号和/或所述用户输入的匿名化部分生成与所述账号对应的第七绑定信息,并向所述请求端发送第七确认消息,所述第七确认消息用于使所述请求端请求用户确认所述账号关联的第七绑定信息,其中,所述第七绑定信息与所述第六绑定信息的形式相同;
在所述校验端获取所述请求端发送的用户确认所述第七绑定信息的消息后,所述校验端直接向所述请求端发送与所述第六响应消息的形式相同的第七响应消息,所述第七响应消息用于使所述请求端提示所述用户所述校验端已向所述第二通信地址发送验证信息。
10.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
在所述校验端确定用户通过所述请求端连续请求对无效账号重置密码的次数达到预设次数阈值的情况下,锁定所述请求端对所述校验端的请求。
11.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
所述校验端获取所述用户发送的验证信息;
所述校验端在校验所述验证信息准确的情况下,向所述请求端返回密码重置界面;
所述校验端获取所述请求端提交的所述用户通过所述密码重置界面输入的新密码。
12.根据权利要求1或2所述的方法,其特征在于,所述验证信息为第一验证信息,在所述账号为有效账号的情况下,所述方法还包括:
所述校验端获取所述用户发送的所述第一验证信息;
在所述校验端校验所述第一验证信息准确的情况下,所述校验端向所述请求端发送第三确认信息,所述第三确认信息用于使所述请求端向所述用户显示与所述账号关联的第五绑定信息,并向所述用户请求确认是否向与所述账号关联的第三通信地址发送第二验证信息,其中,所述第五绑定信息为所述账号对应的所述用户已知的信息。
13.根据权利要求12所述的方法,其特征在于,所述方法还包括:
所述校验端获取所述请求端发送的所述用户确认发送所述第二验证信息的消息;
所述校验端向所述第三通信地址发送所述第二验证信息,并向所述请求端发送第三响应消息,所述第三响应消息用于提示所述用户所述校验端已向所述第三通信地址发送所述第二验证信息。
14.根据权利要求13所述的方法,其特征在于,所述方法还包括:
所述校验端获取所述用户发送的所述第二验证信息;
所述校验端在校验所述第二验证信息准确的情况下,向所述请求端返回密码重置界面;
所述校验端获取所述请求端提交的所述用户通过所述密码重置界面输入的新密码。
15.根据权利要求12所述的方法,其特征在于,
所述第一绑定信息、所述第二绑定信息和第三绑定信息均为匿名化的信息,所述第三绑定信息为所述账号对应的用户已知的信息。
16.根据权利要求1或2所述的方法,其特征在于,
所述密码包括个人识别码PIN、密钥、私钥或所述用户设置的字符串;
所述账号包括邮箱地址、手机号、第三方应用的账号或所述用户向所述校验端注册的字符串。
17.一种重置密码的方法,其特征在于,应用于包括请求端与校验端的系统中,所述请求端需要通过账号和密码访问所述校验端,所述方法包括:
所述请求端向所述校验端发送请求密码重置的账号;
在所述校验端判断所述账号为有效账号的情况下,所述请求端接收所述校验端发送的第一确认信息,所述第一确认信息用于使所述请求端向用户显示与所述账号关联的第一绑定信息,并向用户请求确认是否向与所述账号关联的第一通信地址发送验证信息,其中,所述第一绑定信息为所述账号对应的用户已知的信息;
或者,在所述校验端判断所述账号为无效账号的情况下,所述请求端接收所述校验端发送的与所述第一确认信息的形式相同的第二确认信息,其中,所述第二确认信息用于使所述请求端向用户显示第二绑定信息,并向用户请求确认是否向与所述账号对应的第二通信地址发送验证信息,所述第二绑定信息是所述校验端根据所述账号生成的与所述账号对应的信息,所述第二绑定信息与所述第一绑定信息的形式相同。
18.根据权利要求17所述的方法,其特征在于,
所述第一绑定信息为所述第一通信地址,
所述第二绑定信息为所述第二通信地址。
19.根据权利要求17或18所述的方法,其特征在于,所述方法还包括:
所述请求端向所述校验端发送所述用户确认发送验证信息的消息;
在所述账号为有效账号的情况下,所述请求端获取所述校验端发送的第一响应消息,所述第一响应消息用于提示所述用户所述校验端已向所述第一通信地址发送验证信息,其中,所述第一响应消息是所述校验端向所述第一通信地址发送所述验证信息之后发送的;
或者,
在所述账号为无效账号的情况下,所述请求端获取所述校验端发送的与所述第一响应消息的形式相同的第二响应消息,所述第二响应消息用于提示所述用户所述校验端已向所述第二通信地址发送验证信息,其中,所述第二响应消息是所述校验端获取所述确认发送验证信息的消息后直接发送的。
20.根据权利要求17或18所述的方法,其特征在于,
所述第一确认信息在用于使所述请求端向用户显示与所述账号关联的第一绑定信息,并向用户请求确认是否向与所述账号关联的第一通信地址发送验证信息的同时,还用于所述请求端向所述用户显示与所述账号关联的第三绑定信息,所述第三绑定信息为所述账号对应的用户已知的信息;
所述第二确认信息在用于使所述请求端向用户显示与所述账号关联的第二绑定信息,并向用户请求确认是否向所述第二通信地址发送验证信息的同时,还用于所述请求端向所述用户显示与所述账号对应的与所述第一绑定信息形式相同的第四绑定信息,所述第四绑定信息为所述校验端生成的与所述第三绑定信息形式相同的信息。
21.根据权利要求18所述的方法,其特征在于,
所述第一通信地址和所述第二通信地址为匿名化的信息,
其中,所述第一确认信息具体用于使所述请求端向用户请求确认是否向与所述账号关联的第一通信地址发送验证信息,并使所述请求端请求用户输入所述第一通信地址匿名化的部分;
所述第二确认信息具体用于使所述请求端向用户请求确认是否向与所述账号关联的第二通信地址发送验证信息,并使所述请求端请求用户输入所述第二通信地址匿名化的部分。
22.根据权利要求21所述的方法,其特征在于,所述方法还包括:
所述请求端向所述校验端发送用户确认发送验证信息的消息,所述用户确认发送验证信息的消息携带所述用户输入的所述匿名化部分;
所述请求端接收所述校验端发送的第四响应消息,所述第四响应消息是所述校验端在所述账号为有效账号且所述用户输入的匿名化部分正确的情况下,且所述校验端向所述第一通信地址发送所述验证信息后发送的,所述第四响应消息用于使所述请求端提示所述用户所述校验端已向所述第一通信地址发送验证信息;
或者,
所述请求端接收所述校验端直接发送的与所述第四响应消息的形式相同的第五响应消息,所述第五响应消息是所述校验端在所述账号为无效账号或者所述用户输入的匿名化部分错误的情况下发送的,所述第五响应消息用于使所述请求端提示所述用户所述校验端已向所述第二通信地址发送验证信息。
23.根据权利要求21所述的方法,其特征在于,所述方法还包括:
所述请求端向所述校验端发送用户确认发送验证信息的消息,所述用户确认发送验证信息的消息携带所述用户输入的所述匿名化部分;
所述请求端接收所述校验端发送的第六确认消息,所述第六确认消息是所述校验端在所述账号为有效账号且所述用户输入的匿名化部分正确的情况下发送的,所述第六确认消息用于使所述请求端请求用户确认所述账号关联的第六绑定信息,其中,所述第六绑定信息为所述账号对应的用户已知的信息;
所述请求端向所述校验端发送用户确认所述第六绑定信息的消息;
所述请求端接收所述校验端发送的第六响应消息,所述第六响应消息是所述校验端向所述第一通信地址发送所述验证信息后发送的,所述第六响应消息用于使所述请求端提示所述用户所述校验端已向所述第一通信地址发送验证信息;
或者,所述方法还包括:
所述请求端向所述校验端发送用户确认发送验证信息的消息,所述用户确认发送验证信息的消息携带所述用户输入的所述匿名化部分;
所述请求端接收所述校验端发送的第七确认消息,所述第七确认消息是所述校验端在所述账号为无效账号或所述用户输入的匿名化部分错误的情况下发送的,所述第七确认消息用于使所述请求端请求用户确认所述账号关联的第七绑定信息,其中,所述第七绑定信息与所述第六绑定信息的形式相同,第七绑定信息是所述校验端根据所述账号和/或所述用户输入的匿名化部分生成的;
所述请求端向所述校验端发送用户确认所述第七绑定信息的消息;
所述请求端接收所述校验端直接发送的与所述第六响应消息形式相同的第七响应消息,所述第七响应消息用于使所述请求端提示所述用户所述校验端已向所述第二通信地址发送验证信息。
24.一种校验端装置,其特征在于,应用于包括请求端装置与校验端装置的系统中,所述请求端装置需通过账号和密码请求所述校验端装置校验身份,所述校验端装置包括:
处理单元和收发单元;
所述收发单元用于接收所述请求端装置发送的请求密码重置的账号;
在判断所述账号为有效账号的情况下,所述收发单元还用于向所述请求端装置发送第一确认信息,所述第一确认信息用于使所述请求端装置向用户显示与所述账号关联的第一绑定信息,并向用户请求确认是否向与所述账号关联的第一通信地址发送验证信息,其中,所述第一绑定信息为所述账号对应的用户已知的信息;
或者,在判断所述账号为无效账号的情况下,所述处理单元用于根据所述账号生成与所述账号对应的第二绑定信息,所述收发单元还用于向所述请求端装置发送与所述第一确认信息的形式相同的第二确认信息,其中,所述第二确认信息用于使所述请求端装置向用户显示所述第二绑定信息,并向用户请求确认是否向与所述账号对应的第二通信地址发送验证信息,所述第二绑定信息与所述第一绑定信息的形式相同。
25.根据权利要求24所述的校验端装置,其特征在于,
所述第一绑定信息为所述第一通信地址,
所述第二绑定信息为所述第二通信地址。
26.根据权利要求24或25所述的校验端装置,其特征在于,所述收发单元还用于:
获取所述请求端装置发送的所述用户确认发送验证信息的消息;
在所述账号为有效账号的情况下,向所述第一通信地址发送所述验证信息,并向所述请求端装置发送第一响应消息,所述第一响应消息用于提示所述用户所述校验端装置已向所述第一通信地址发送验证信息;
或者,
在所述账号为无效账号的情况下,直接向所述请求端装置发送与所述第一响应消息的形式相同的第二响应消息,所述第二响应消息用于提示所述用户所述校验端装置已向所述第二通信地址发送验证信息。
27.根据权利要求24或25所述的校验端装置,其特征在于,
所述第一确认信息在用于使所述请求端装置向用户显示与所述账号关联的第一绑定信息,并向用户请求确认是否向与所述账号关联的第一通信地址发送验证信息的同时,还用于所述请求端装置向所述用户显示与所述账号关联的第三绑定信息,所述第三绑定信息为所述账号对应的用户已知的信息;
所述第二确认信息在用于使所述请求端装置向用户显示与所述账号关联的第二绑定信息,并向用户请求确认是否向所述第二通信地址发送验证信息的同时,还用于所述请求端装置向所述用户显示与所述账号对应的第四绑定信息,所述第四绑定信息为所述处理单元生成的与所述第三绑定信息形式相同的信息。
28.根据权利要求24或25所述的校验端装置,其特征在于,在判断所述账号为无效账号的情况下,所述处理单元具体用于根据所述账号以及第一密钥生成与所述账号对应的所述第二绑定信息。
29.根据权利要求28所述的校验端装置,其特征在于,
所述处理单元具体用于获取所述第一密钥;
将所述第一密钥和所述账号组合在一起,生成组合数据,
根据所述组合数据采用第一函数算法生成所述第二绑定信息,其中,所述第一函数算法用于生成与一个输入信息唯一对应的输出信息。
30.根据权利要求25所述的校验端装置,其特征在于,
所述第一通信地址和所述第二通信地址为匿名化的信息,
其中,所述第一确认信息具体用于使所述请求端向用户请求确认是否向与所述账号关联的第一通信地址发送验证信息,并使所述请求端请求用户输入所述第一通信地址匿名化的部分;
其中,所述第二确认信息具体用于使所述请求端向用户请求确认是否向与所述账号关联的第二通信地址发送验证信息,并使所述请求端请求用户输入所述第二通信地址匿名化的部分。
31.根据权利要求30所述的校验端装置,其特征在于,所述收发单元还用于:
获取所述请求端发送的用户确认发送验证信息的消息,所述用户确认发送验证信息的消息携带所述用户输入的所述匿名化部分;
在所述账号为有效账号且所述用户输入的匿名化部分正确的情况下,向所述第一通信地址发送所述验证信息,并向所述请求端发送第四响应消息,所述第四响应消息用于使所述请求端提示所述用户所述校验端已向所述第一通信地址发送验证信息;
或者,
在所述账号为无效账号或者所述用户输入的匿名化部分错误的情况下,直接向所述请求端发送与所述第四响应消息的形式相同的第五响应消息,所述第五响应消息用于使所述请求端提示所述用户所述校验端已向所述第二通信地址发送验证信息。
32.根据权利要求30所述的校验端装置,其特征在于,
所述收发单元还用于:
获取所述请求端发送的用户确认发送验证信息的消息,所述用户确认发送验证信息的消息携带所述用户输入的所述匿名化部分;
在所述账号为有效账号且所述用户输入的匿名化部分正确的情况下,向所述请求端发送第六确认消息,所述第六确认消息用于使所述请求端请求用户确认所述账号关联的第六绑定信息,其中,所述第六绑定信息为所述账号对应的用户已知的信息;
在获取所述请求端发送的用户确认所述第六绑定信息的消息后,向所述第一通信地址发送所述验证信息,并向所述请求端发送第六响应消息,所述第六响应消息用于使所述请求端提示所述用户所述校验端已向所述第一通信地址发送验证信息;
或者,所述收发单元还用于:
获取所述请求端发送的用户确认发送验证信息的消息,所述用户确认发送验证信息的消息携带所述用户输入的所述匿名化部分;
在所述账号为无效账号或所述用户输入的匿名化部分错误的情况下,根据所述账号和/或所述用户输入的匿名化部分生成与所述账号对应的第七绑定信息,并向所述请求端发送第七确认消息,所述第七确认消息用于使所述请求端请求用户确认所述账号关联的第七绑定信息,其中,所述第七绑定信息与所述第六绑定信息的形式相同;
在获取所述请求端发送的用户确认所述第七绑定信息的消息后,直接向所述请求端发送与所述第六响应消息的形式相同的第七响应消息,所述第七响应消息用于使所述请求端提示所述用户所述校验端已向所述第二通信地址发送验证信息。
33.根据权利要求24或25所述的校验端装置,其特征在于,
所述处理单元还用于在所述校验端装置确定用户通过所述请求端装置连续请求对无效账号重置密码的次数达到预设次数阈值的情况下,锁定所述请求端装置对所述校验端装置的请求。
34.根据权利要求24或25所述的校验端装置,其特征在于,所述收发单元还用于:
获取所述用户发送的验证信息;
在校验所述验证信息准确的情况下,向所述请求端装置返回密码重置界面;
获取所述请求端装置提交的所述用户通过所述密码重置界面输入的新密码。
35.根据权利要求24或25所述的校验端装置,其特征在于,所述验证信息为第一验证信息,在所述账号为有效账号的情况下,所述收发单元还用于:
获取所述用户发送的所述第一验证信息;
在所述校验端装置校验所述第一验证信息准确的情况下,向所述请求端装置发送第三确认信息,所述第三确认信息用于使所述请求端装置向所述用户显示与所述账号关联的第五绑定信息,并向所述用户请求确认是否向与所述账号关联的第三通信地址发送第二验证信息,其中,所述第五绑定信息为所述账号对应的所述用户已知的信息。
36.根据权利要求35所述的校验端装置,其特征在于,所述收发单元还用于:
获取所述请求端装置发送的所述用户确认发送所述第二验证信息的消息;
向所述第三通信地址发送所述第二验证信息,并向所述请求端装置发送第三响应消息,所述第三响应消息用于提示所述用户所述校验端装置已向所述第三通信地址发送所述第二验证信息。
37.根据权利要求36所述的校验端装置,其特征在于,所述收发单元还用于:
获取所述用户发送的所述第二验证信息;
在校验所述第二验证信息准确的情况下,向所述请求端装置返回密码重置界面;
获取所述请求端装置提交的所述用户通过所述密码重置界面输入的新密码。
38.根据权利要求35所述的校验端装置,其特征在于,
所述第一绑定信息、所述第二绑定信息和第三绑定信息均为匿名化的信息,所述第三绑定信息为所述账号对应的用户已知的信息。
39.根据权利要求24或25所述的校验端装置,其特征在于,
所述密码包括个人识别码PIN、密钥、私钥或所述用户设置的字符串;
所述账号包括邮箱地址、手机号、第三方应用的账号或所述用户向所述校验端装置注册的字符串。
40.一种请求端装置,其特征在于,应用于包括请求端装置与校验端装置的系统中,所述请求端装置需要通过账号和密码访问所述校验端装置,所述请求端装置包括:
处理单元、收发单元和显示单元;
所述处理单元用于控制所述收发单元向所述校验端装置发送请求密码重置的账号;
在所述校验端装置判断所述账号为有效账号的情况下,接收所述校验端装置发送的第一确认信息,所述第一确认信息用于使所述显示单元向用户显示与所述账号关联的第一绑定信息,并向用户请求确认是否向与所述账号关联的第一通信地址发送验证信息,其中,所述第一绑定信息为所述账号对应的用户已知的信息;
或者,在所述校验端装置判断所述账号为无效账号的情况下,接收所述校验端装置发送的与所述第一确认信息的形式相同的第二确认信息,其中,所述第二确认信息用于使所述显示单元向用户显示第二绑定信息,并向用户请求确认是否向与所述账号对应的第二通信地址发送验证信息,所述第二绑定信息是所述校验端装置根据所述账号生成的与所述账号对应的信息,所述第二绑定信息与所述第一绑定信息的形式相同。
41.根据权利要求40所述的请求端装置,其特征在于,
所述第一绑定信息为所述第一通信地址,
所述第二绑定信息为所述第二通信地址。
42.根据权利要求40或41所述的请求端装置,其特征在于,所述收发单元还用于:
向所述校验端装置发送所述用户确认发送验证信息的消息;
在所述账号为有效账号的情况下,获取所述校验端装置发送的第一响应消息,所述第一响应消息用于提示所述用户所述校验端装置已向所述第一通信地址发送验证信息,其中,所述第一响应消息是所述校验端装置向所述第一通信地址发送所述验证信息之后发送的;
或者,
在所述账号为无效账号的情况下,获取所述校验端装置发送的与所述第一响应消息的形式相同的第二响应消息,所述第二响应消息用于提示所述用户所述校验端装置已向所述第二通信地址发送验证信息,其中,所述第二响应消息是所述校验端装置获取所述确认发送验证信息的消息后直接发送的。
43.根据权利要求40或41所述的请求端装置,其特征在于,
所述第一确认信息在用于使所述显示单元向用户显示与所述账号关联的第一绑定信息,并向用户请求确认是否向与所述账号关联的第一通信地址发送验证信息的同时,还用于所述显示单元向所述用户显示与所述账号关联的第三绑定信息,所述第三绑定信息为所述账号对应的用户已知的信息;
所述第二确认信息在用于使所述显示单元向用户显示与所述账号关联的第二绑定信息,并向用户请求确认是否向所述第二通信地址发送验证信息的同时,还用于所述显示单元向所述用户显示与所述账号对应的与所述第一绑定信息形式相同的第四绑定信息,所述第四绑定信息为所述校验端装置生成的与所述第三绑定信息形式相同的信息。
44.根据权利要求41所述的请求端装置,其特征在于,
所述第一通信地址和所述第二通信地址为匿名化的信息,
其中,所述第一确认信息具体用于使所述请求端向用户请求确认是否向与所述账号关联的第一通信地址发送验证信息,并使所述请求端请求用户输入所述第一通信地址匿名化的部分;
所述第二确认信息具体用于使所述请求端向用户请求确认是否向与所述账号关联的第二通信地址发送验证信息,并使所述请求端请求用户输入所述第二通信地址匿名化的部分。
45.根据权利要求44所述的请求端装置,其特征在于,所述收发单元还用于:
向所述校验端发送用户确认发送验证信息的消息,所述用户确认发送验证信息的消息携带所述用户输入的所述匿名化部分;
端接收所述校验端发送的第四响应消息,所述第四响应消息是所述校验端在所述账号为有效账号且所述用户输入的匿名化部分正确的情况下,且所述校验端向所述第一通信地址发送所述验证信息后发送的,所述第四响应消息用于使所述请求端提示所述用户所述校验端已向所述第一通信地址发送验证信息;
或者,
接收所述校验端直接发送的与所述第四响应消息的形式相同的第五响应消息,所述第五响应消息是所述校验端在所述账号为无效账号或者所述用户输入的匿名化部分错误的情况下发送的,所述第五响应消息用于使所述请求端提示所述用户所述校验端已向所述第二通信地址发送验证信息。
46.根据权利要求44所述的请求端装置,其特征在于,
所述收发单元还用于:
向所述校验端发送用户确认发送验证信息的消息,所述用户确认发送验证信息的消息携带所述用户输入的所述匿名化部分;
接收所述校验端发送的第六确认消息,所述第六确认消息是所述校验端在所述账号为有效账号且所述用户输入的匿名化部分正确的情况下发送的,所述第六确认消息用于使所述请求端请求用户确认所述账号关联的第六绑定信息,其中,所述第六绑定信息为所述账号对应的用户已知的信息;
向所述校验端发送用户确认所述第六绑定信息的消息;
接收所述校验端发送的第六响应消息,所述第六响应消息是所述校验端向所述第一通信地址发送所述验证信息后发送的,所述第六响应消息用于使所述请求端提示所述用户所述校验端已向所述第一通信地址发送验证信息;
或者,所述收发单元还用于:
所述请求端向所述校验端发送用户确认发送验证信息的消息,所述用户确认发送验证信息的消息携带所述用户输入的所述匿名化部分;
所述请求端接收所述校验端发送的第七确认消息,所述第七确认消息是所述校验端在所述账号为无效账号或所述用户输入的匿名化部分错误的情况下发送的,所述第七确认消息用于使所述请求端请求用户确认所述账号关联的第七绑定信息,其中,所述第七绑定信息与所述第六绑定信息的形式相同,第七绑定信息是所述校验端根据所述账号和/或所述用户输入的匿名化部分生成的;
所述请求端向所述校验端发送用户确认所述第七绑定信息的消息;
所述请求端接收所述校验端直接发送的与所述第六响应消息形式相同的第七响应消息,所述第七响应消息用于使所述请求端提示所述用户所述校验端已向所述第二通信地址发送验证信息。
47.一种计算机可读存储介质,其特征在于,包括计算机程序,当所述计算机程序在计算机上运行时,使得所述计算机执行如权利要求1至13中任一项所述的方法。
48.一种重置密码的系统,其特征在于,包括如权利要求24-39中任一项所述的校验端装置和权利要求40-46中任一项所述的请求端装置。
49.根据权利要求48所述的重置密码的系统,其特征在于,所述系统还包括用户联系设备,所述用户联系设备用于接收校验端装置发送的验证信息。
50.根据权利要求48或49所述的重置密码的系统,其特征在于,所述用户联系设备与所述请求端装置为同一个设备。
CN201811514952.XA 2017-12-13 2018-12-12 密码重置的方法、请求端和校验端 Active CN109922035B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
PCT/CN2018/120815 WO2019114784A1 (zh) 2017-12-13 2018-12-13 密码重置的方法、请求端和校验端
EP18889772.2A EP3716564B1 (en) 2017-12-13 2018-12-13 Method for resetting password, request terminal and check terminal
US16/899,163 US11388194B2 (en) 2017-12-13 2020-06-11 Identity verification and verifying device

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201711330350 2017-12-13
CN2017113303504 2017-12-13

Publications (2)

Publication Number Publication Date
CN109922035A CN109922035A (zh) 2019-06-21
CN109922035B true CN109922035B (zh) 2021-11-19

Family

ID=66959899

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811514952.XA Active CN109922035B (zh) 2017-12-13 2018-12-12 密码重置的方法、请求端和校验端

Country Status (2)

Country Link
US (1) US11388194B2 (zh)
CN (1) CN109922035B (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110535643B (zh) * 2019-09-09 2023-05-23 飞天诚信科技股份有限公司 一种防止重置密码被窃取的方法及系统
CN111552944A (zh) * 2020-04-28 2020-08-18 成都新潮传媒集团有限公司 一种登录验证方法及装置
CN111767535A (zh) * 2020-06-18 2020-10-13 中国建设银行股份有限公司 一种线上重置银行卡密码的方法和装置
CN112165473B (zh) * 2020-09-22 2022-08-16 杭州安恒信息技术股份有限公司 一种任意账号密码重置逻辑漏洞的检测方法、装置及介质
CN112968895B (zh) * 2021-02-23 2022-06-24 浙江大华技术股份有限公司 重置密码方法及装置、存储介质和电子装置
CN112887340B (zh) * 2021-04-28 2022-01-04 深圳市科力锐科技有限公司 密码重置方法、装置、业务管理终端及存储介质
US20220414226A1 (en) * 2021-06-25 2022-12-29 Citrix Systems, Inc. Systems and methods for dynamic detection of vulnerable credentials
CN114978552B (zh) * 2022-06-15 2023-06-27 中国联合网络通信集团有限公司 邮箱验证码的安全管理方法、装置、设备及介质
CN115758374B (zh) * 2022-11-04 2023-08-04 杭州孝道科技有限公司 一种账号枚举漏洞检测方法、系统及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103179098A (zh) * 2011-12-23 2013-06-26 阿里巴巴集团控股有限公司 一种网络账号的密码找回方法和装置
CN103442002A (zh) * 2013-08-23 2013-12-11 北京网秦天下科技有限公司 用于重置密码的设备和方法
CN103795724A (zh) * 2014-02-07 2014-05-14 陈珂 一种基于异步动态口令技术的保护账户安全的方法
CN104239779A (zh) * 2014-10-12 2014-12-24 张忠义 用户密码遗忘后的重置方法
CN104301110A (zh) * 2014-10-10 2015-01-21 刘文清 应用于智能终端的身份验证方法、身份验证设备和系统
CN104579667A (zh) * 2013-10-28 2015-04-29 腾讯科技(深圳)有限公司 一种账户密码的管理方法、相关装置及系统

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8646051B2 (en) * 2004-09-10 2014-02-04 At&T Intellectual Property I, L.P. Automated password reset via an interactive voice response system
US8078881B1 (en) 2004-11-12 2011-12-13 Liu Gary G Password resetting method
US20080120508A1 (en) 2006-11-20 2008-05-22 Utstarcom, Inc. Method and Apparatus for Facilitating the Resetting of a Presently Used Password
US20100125906A1 (en) * 2008-11-19 2010-05-20 Palo Alto Research Center Incorporated Resetting a forgotten password using the password itself as authentication
US9355244B2 (en) * 2013-12-24 2016-05-31 Tencent Technology (Shenzhen) Company Limited Systems and methods for password reset
CN104182666B (zh) 2014-08-25 2017-05-24 广东欧珀移动通信有限公司 一种密码重置方法及装置
CN105989484A (zh) 2015-02-13 2016-10-05 阿里巴巴集团控股有限公司 一种密码重置方法和装置
CN105868621A (zh) 2016-03-25 2016-08-17 深圳市万普拉斯科技有限公司 一种密码重置方法和装置
CN106411517B (zh) 2016-12-14 2019-05-31 北京小米移动软件有限公司 一种密码重置方法及装置
CN106845181A (zh) 2017-01-17 2017-06-13 联想(北京)有限公司 一种密码的获取方法及电子设备

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103179098A (zh) * 2011-12-23 2013-06-26 阿里巴巴集团控股有限公司 一种网络账号的密码找回方法和装置
CN103442002A (zh) * 2013-08-23 2013-12-11 北京网秦天下科技有限公司 用于重置密码的设备和方法
CN104579667A (zh) * 2013-10-28 2015-04-29 腾讯科技(深圳)有限公司 一种账户密码的管理方法、相关装置及系统
CN103795724A (zh) * 2014-02-07 2014-05-14 陈珂 一种基于异步动态口令技术的保护账户安全的方法
CN104301110A (zh) * 2014-10-10 2015-01-21 刘文清 应用于智能终端的身份验证方法、身份验证设备和系统
CN104239779A (zh) * 2014-10-12 2014-12-24 张忠义 用户密码遗忘后的重置方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
The Password Reset MitM Attack;Nethanel Gelernter,etc.;《2017 IEEE Symposium on Security and Privacy》;20170626;全文 *

Also Published As

Publication number Publication date
US11388194B2 (en) 2022-07-12
CN109922035A (zh) 2019-06-21
US20200304541A1 (en) 2020-09-24

Similar Documents

Publication Publication Date Title
CN109922035B (zh) 密码重置的方法、请求端和校验端
US11716315B2 (en) Disposable browsers and authentication techniques for a secure online user environment
JP6701364B2 (ja) パスワードなしのコンピュータログインのサービス支援モバイルペアリングのためのシステム及び方法
US10223524B1 (en) Compromised authentication information clearing house
US7770002B2 (en) Multi-factor authentication
US9838384B1 (en) Password-based fraud detection
US9246904B2 (en) Secure web container for a secure online user environment
US10176318B1 (en) Authentication information update based on fraud detection
AU2017225754A1 (en) Secure mobile device two-factor authentication
US10924464B2 (en) Automatic credential rotation
US10554641B2 (en) Second factor authorization via a hardware token device
KR20170140215A (ko) 거래 시큐리티를 위한 방법 및 시스템
US20210399897A1 (en) Protection of online applications and webpages using a blockchain
EP3716564B1 (en) Method for resetting password, request terminal and check terminal
TW202209228A (zh) 可中斷連接之交易驗證系統及方法
US10491391B1 (en) Feedback-based data security
US11356481B1 (en) Preventing phishing attempts of one-time passwords
Saini Comparative Analysis of Top 5, 2-Factor Authentication Solutions
KR20140043628A (ko) 보안 로그인 처리 방법
TW202207112A (zh) 交互判斷合法性的交易驗證系統及方法
TW202145099A (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
TR01 Transfer of patent right

Effective date of registration: 20220209

Address after: 550025 Huawei cloud data center, jiaoxinggong Road, Qianzhong Avenue, Gui'an New District, Guiyang City, Guizhou Province

Patentee after: Huawei Cloud Computing Technology Co.,Ltd.

Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen

Patentee before: HUAWEI TECHNOLOGIES Co.,Ltd.

TR01 Transfer of patent right