CN110474864B - 一种注册、登录移动应用程序的方法及电子设备 - Google Patents

一种注册、登录移动应用程序的方法及电子设备 Download PDF

Info

Publication number
CN110474864B
CN110474864B CN201810445331.4A CN201810445331A CN110474864B CN 110474864 B CN110474864 B CN 110474864B CN 201810445331 A CN201810445331 A CN 201810445331A CN 110474864 B CN110474864 B CN 110474864B
Authority
CN
China
Prior art keywords
electronic device
user
information
password
user name
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
CN201810445331.4A
Other languages
English (en)
Other versions
CN110474864A (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 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 CN201810445331.4A priority Critical patent/CN110474864B/zh
Publication of CN110474864A publication Critical patent/CN110474864A/zh
Application granted granted Critical
Publication of CN110474864B publication Critical patent/CN110474864B/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/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0861Network architectures or network communication protocols for network security for authentication of entities using biometrical features, e.g. fingerprint, retina-scan
    • 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/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • 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

Abstract

本申请实施例提供一种注册、登录移动应用程序的方法及电子设备,涉及安全技术领域,能够提高用户注册和登录移动应用程序的安全性,防止用户密码泄漏。具体方案为:电子设备在触摸屏上显示第一App的注册界面,注册界面包括用户名输入区和密码输入区;电子设备接收用户在用户名输入区输入的用户名和在密码输入区输入的密码;电子设备生成随机字符串;电子设备根据密码和随机字符串生成私钥和公钥,私钥和公钥配对使用;电子设备向第一App的验证服务器发送注册请求信息,注册请求信息包括用户名、公钥和随机字符串。本申请实施例用于注册和登录App。

Description

一种注册、登录移动应用程序的方法及电子设备
技术领域
本申请实施例涉及电子技术领域,尤其涉及一种注册、登录移动应用程序的方法及电子设备。
背景技术
在用户通过手机等电子设备使用安装的移动应用程序(application,App)时,用户需要通过电子设备登录App对应的验证服务器。验证服务器根据用户输入的密码对用户的身份进行验证,并在验证通过后才允许用户通过电子设备使用该App。
在现有登录过程中,参见图1,电子设备101将用户名和密码发送给验证服务器102,验证服务器102上存储有用户注册时输入的密码,验证服务器102上存储的密码为明文形式、可逆加密形式或不可逆哈希(HASH)形式,验证服务器102在接收到用户请求登录时发送的密码后,将接收到的密码与存储的密码进行比对,以验证用户的身份是否合法。
在现有登录过程中,若电子设备与验证服务器的传输通道发生泄漏(例如存在传输层安全(transport layer security,TLS)漏洞),则将导致用户密码在传输过程中泄漏。并且,若验证服务器的校验环境存在不安全因素(例如验证服务器的运行环境存在木马),则也将导致用户密码的泄漏。
发明内容
本申请实施例提供一种注册、登录移动应用程序的方法及电子设备,能够提高用户登录过程的安全性,防止用户密码泄漏。
为达到上述目的,本申请实施例采用如下技术方案:
第一方面,本申请技术方案提供了一种注册移动应用程序的方法,该方法在具有触摸屏的电子设备中实现,该方法包括:电子设备在触摸屏上显示第一移动应用程序的注册界面,注册界面包括用户名输入区和密码输入区。电子设备接收用户在用户名输入区输入的用户名和在密码输入区输入的密码。电子设备生成随机字符串。电子设备根据密码和随机字符串生成私钥和公钥,私钥和公钥配对使用。电子设备向第一移动应用程序的验证服务器发送注册请求信息,注册请求信息包括用户名、公钥和随机字符串。
在该方案中,电子设备在注册时未将用户输入的密码发送给验证服务器进行保存,因而不会发生密码的传输泄露;验证服务器中并未保存用户的密码,因而也不会发生由于验证服务器的校验环境不安全而导致的密码泄露。并且,电子设备根据随机字符串生成私钥和公钥,可以使得在采用相同用户名和密码登录不同应用程序时,电子设备生成的校验值不同,从而避免不同应用程序之间校验值的交叉泄露。
第二方面,本申请技术方案提供了一种注册移动应用程序的方法,该方法在具有触摸屏的电子设备中实现,该方法包括:电子设备在触摸屏上显示设置界面,设置界面包括用户名输入区和密码输入区。电子设备接收用户在用户名输入区输入的用户名和在密码输入区输入的密码。当电子设备检测到针对第一移动应用程序对应的第一应用控件的第一操作时,电子设备生成第一随机字符串。电子设备根据密码和第一随机字符串生成第一私钥和第一公钥,第一私钥和第一公钥配对使用。电子设备向第一移动应用程序的验证服务器发送第一注册请求信息,第一注册请求信息包括用户名、第一公钥和第一随机字符串。当电子设备检测到针对第二移动应用程序对应的第二应用控件的第二操作时,电子设备生成第二随机字符串。电子设备根据密码和第二随机字符串生成第二私钥和第二公钥,第二私钥和第二公钥配对使用。电子设备向第二移动应用程序的验证服务器发送第二注册请求信息,第二注册请求信息包括用户名、第二公钥和第二随机字符串。
在该方案中,电子设备可以采用相同的用户名和密码预先、同时注册多个移动应用程序,减少注册移动应用程序的次数,避免用户记忆多组用户名和密码,提高用户使用体验。
结合上述任意方面,在一种可能的实现中,第一移动应用程序为微信或支付宝。
第三方面,本申请技术方案提供了一种登录移动应用程序的方法,该方法在具有触摸屏的电子设备中实现,该方法包括:电子设备在触摸屏上显示第一移动应用程序的登录界面,登录界面包括提示信息,提示信息用于提示用户输入激活信息,激活信息包括生物特征信息。电子设备接收用户输入的激活信息。若激活信息与预设的激活信息一致,则电子设备获取与预设的激活信息对应的第一用户名和第一私钥。电子设备向第一移动应用程序的验证服务器发送登录请求信息,登录请求信息包括第一用户名,第一用户名用于验证服务器确定与第一用户名对应的第一公钥。电子设备根据第一私钥对第一信息进行签名并生成校验值。电子设备将校验值发送给验证服务器,校验值用于验证服务器根据第一公钥进行验签。
在该方案中,用户不需要在登录时繁琐地输入用户名和密码,而可以通过简单、自然且安全的生物特征信息就可以自动获取用户名和私钥,从而可以减少根据密码生成私钥的步骤,减少用户的输入操作,提高登录过程的安全性。
在一种可能的实现中,第一用户名为第一设备标识。
在该方案中,电子设备在出厂时已经注册了各移动应用程序,用户不需要在登录时繁琐地输入用户名和密码,而可以通过简单、自然且安全的生物特征信息就可以自动获取用户名和私钥,从而可以减少根据密码生成私钥的步骤,减少用户的输入操作,提高登录过程的安全性。
在另一种可能的实现中,电子设备中保存有用户名、私钥与预设激活信息的对应关系。
第四方面,本申请技术方案提供了一种登录移动应用程序的方法,该方法在具有触摸屏的电子设备中实现,该方法包括:电子设备在触摸屏上显示第一移动应用程序的登录界面,登录界面包括用户名输入区和密码输入区。电子设备接收用户在用户名输入区输入的第一用户名,第一用户名用于第一移动应用程序的验证服务器确定与第一用户名对应的第一公钥。电子设备向验证服务器发送登录请求信息,登录请求信息包括第一用户名。电子设备接收验证服务器发送的与第一用户名对应的第一随机字符串。电子设备接收用户在密码输入区输入的第一密码。电子设备根据第一密码和第一随机字符串生成第一私钥。电子设备根据第一私钥对第一信息进行签名并生成校验值。电子设备将校验值发送给验证服务器,校验值用于验证服务器根据第一公钥进行验签。
在该方案中,由于电子设备并未将密码发送给验证服务器进行验证,因而不会出现在传输过程中泄漏密码的问题,也不会出现由于校验环境不安全导致密码泄露的问题。并且,电子设备根据随机字符串生成私钥和公钥,可以使得在采用相同用户名和密码登录不同应用程序时,电子设备生成的校验值不同,从而避免不同应用程序之间校验值的交叉泄露。
第五方面,本申请技术方案提供了一种登录移动应用程序的方法,该方法在具有触摸屏的电子设备中实现,该方法包括:电子设备在触摸屏上显示第一移动应用程序的登录界面,登录界面包括提示信息,提示信息用于提示用户输入激活信息,激活信息包括生物特征信息。电子设备接收用户输入的激活信息。若激活信息与预设的激活信息一致,则电子设备获取与预设的激活信息对应的注册信息,该注册信息包括第一用户名和第一密码。电子设备向第一移动应用程序的验证服务器发送登录请求信息,登录请求信息包括第一用户名,第一用户名用于验证服务器确定与第一用户名对应的第一公钥。电子设备根据第一密码生成第一私钥。电子设备根据第一私钥对第一信息进行签名并生成校验值。电子设备将校验值发送给验证服务器,校验值用于验证服务器根据第一公钥进行验签。
在该方案中,用户不需要在登录时繁琐地输入用户名和密码,而可以通过简单、自然且安全的生物特征信息就可以自动获取用户名和密码,从而可以减少用户的输入操作,提高登录过程的安全性。
在一种可能的实现中,电子设备中保存有注册信息与预设激活信息的对应关系,注册信息包括用户名、密码以及用户名和密码的对应关系。
在另一种可能的实现中,电子设备根据第一密码生成第一私钥之前,该方法还包括:电子设备接收验证服务器发送的第一随机字符串。电子设备根据第一密码生成第一私钥包括:电子设备根据第一密码和第一随机字符串生成第一私钥。
其中,电子设备根据随机字符串生成私钥和公钥,可以使得在采用相同用户名和密码登录不同应用程序时,电子设备生成的校验值不同,从而避免不同应用程序之间校验值的交叉泄露。
在另一种可能的实现中,注册信息还包括第一随机字符串。电子设备根据第一密码生成第一私钥包括:电子设备根据第一密码和第一随机字符串生成第一私钥。
第六方面,本申请技术方案提供了一种登录移动应用程序的方法,该方法在具有触摸屏的电子设备中实现,该方法包括:电子设备在触摸屏上显示第一移动应用程序的登录界面,登录界面包括用户名输入区。电子设备接收用户在用户名输入区输入的第一用户名,第一用户名用于第一移动应用程序的验证服务器确定与第一用户名对应的第一公钥。电子设备向验证服务器发送登录请求信息,登录请求信息包括第一用户名。电子设备显示提示信息,提示信息用于提示用户输入激活信息,激活信息包括生物特征信息。电子设备接收用户输入的激活信息。若激活信息与预设的激活信息一致,则电子设备获取与预设的激活信息对应的注册信息,该注册信息包括第一密码。电子设备根据第一密码生成第一私钥。电子设备根据第一私钥对第一信息进行签名并生成校验值。电子设备将校验值发送给验证服务器,校验值用于验证服务器根据公钥进行验签。
在该方案中,用户不需要在登录时输入密码,而可以通过简单、自然且安全的生物特征信息自动获取密码,从而可以减少用户的输入操作,提高登录过程的安全性。
第七方面,一种登录移动应用程序的方法,该方法在具有触摸屏的电子设备中实现,该方法包括:电子设备在触摸屏上显示第一移动应用程序的登录界面,登录界面包括用户名输入区。电子设备接收用户在用户名输入区输入的第一用户名,第一用户名用于第一移动应用程序的验证服务器确定与第一用户名对应的第一公钥。电子设备向验证服务器发送登录请求信息,登录请求信息包括第一用户名,第一用户名用于验证服务器确定与第一用户名对应的第一公钥。电子设备显示提示信息,提示信息用于提示用户输入激活信息,激活信息包括生物特征信息。电子设备接收用户输入的激活信息。若激活信息与预设的激活信息一致,则电子设备获取与预设的激活信息对应的第一私钥。电子设备根据保存的第一私钥对第一信息进行签名并生成校验值,第一私钥与第一用户名对应。电子设备将校验值发送给验证服务器,校验值用于验证服务器根据公钥进行验签。
在该方案中,用户不需要在登录时输入密码,而可以通过简单、自然且安全的生物特征信息自动获取私钥,从而可以减少根据密码生成私钥的步骤,减少用户的输入操作,提高登录过程的安全性。
结合上述第三方面至第七方面中的任意方面,在一种可能的实现中,电子设备接收验证服务器发送的第一信息。
结合上述第三方面至第七方面中的任意方面,在一种可能的实现中,第一信息包括第二随机字符串。
这样,验证服务器每次获取的第一信息可以不同或大概率不同,电子设备每次根据第一信息生成的校验值也不同或者大概率不同。即使校验值在某次或某几次传输过程中被截获,则由于电子设备每次发送的校验值都不同或者大概率不同,截获者并不知道电子设备下一次发送的校验值是什么,因而截获者无法仿冒正确的第一校验值,从而无法仿冒合法的用户身份登录微信的验证服务器,这样就增强了登录移动应用程序的安全性。
第八方面,本申请技术方案提供了一种注册移动应用程序的方法,该方法包括:验证服务器接收电子设备发送的注册请求信息,注册请求信息包括用户名、公钥和随机字符串。验证服务器保存注册信息,注册信息包括用户名、公钥、字符串以及用户名与公钥和字符串的对应关系。
在该方案中,验证服务器接收注册时电子设备发送的用户输入的用户名、公钥和随机字符串并保存,并未接收用户的密码,因而不会发生密码的传输泄露。验证服务器中也并未保存用户的密码,因而也不会发生由于验证服务器的校验环境不安全而导致的密码泄露。因此,本申请技术方案提供的注册方法可以提高用户密码的安全性。
第九方面,本申请技术方案提供了一种登录移动应用程序的方法,该方法包括:验证服务器接收电子设备发送的登录请求信息,登录请求信息包括第一用户名。验证服务器确定与第一用户名对应的第一公钥和第一随机字符串。验证服务器将第一随机字符串发送给电子设备,第一随机字符串用于电子设备生成第一私钥,第一私钥用于电子设备生成校验值。验证服务器接收电子设备发送的校验值。验证服务器根据第一公钥对校验值进行验签以获得校验信息。验证服务器根据校验信息和第一信息确定是否允许电子设备登录。
在该方案中,在登录移动应用程序时,验证服务器接收的是私钥对第一信息签名后的校验值,并未接收电子设备请求登录时发送的密码,因而也不会根据用户的密码进行用户身份验证,因此不会出现在传输过程中泄漏密码的技术问题,也不会出现由于校验环境不安全导致密码泄露的问题。
在一种可能的实现中,验证服务器中保存有注册信息,注册信息包括用户名、公钥、随机字符串以及用户名与公钥和随机字符串的对应关系。
在另一种可能的实现中,在验证服务器接收电子设备发送的登录请求信息之后,该方法还包括:验证服务器获取第一信息;验证服务器向电子设备发送第一信息,第一信息用于电子设备生成校验值。
在另一种可能的实现中,第一信息包括第二随机字符串。
第十方面,本申请技术方案提供了一种电子设备,包括:触摸屏,用于显示第一移动应用程序的注册界面,注册界面包括用户名输入区和密码输入区。输入单元,用于接收用户在用户名输入区输入的用户名和在密码输入区输入的密码。生成单元,用于生成随机字符串。生成单元还用于,根据密码和随机字符串生成私钥和公钥,私钥和公钥配对使用。发送单元,用于向第一移动应用程序的验证服务器发送注册请求信息,注册请求信息包括用户名、公钥和随机字符串。
第十一方面,本申请技术方案提供了一种电子设备,包括:显示单元,用于在显示单元上显示设置界面,设置界面包括用户名输入区和密码输入区。输入单元,用于接收用户在用户名输入区输入的用户名和在密码输入区输入的密码。生成单元,用于当检测到针对第一移动应用程序对应的第一应用控件的第一操作时,电子设备生成第一随机字符串。生成单元还用于,根据密码和第一随机字符串生成第一私钥和第一公钥,第一私钥和第一公钥配对使用。发送单元,用于向第一移动应用程序的验证服务器发送第一注册请求信息,第一注册请求信息包括用户名、第一公钥和第一随机字符串。生成单元还用于,当检测到针对第二移动应用程序对应的第二应用控件的第二操作时,电子设备生成第二随机字符串。生成单元还用于,根据密码和第二随机字符串生成第二私钥和第二公钥,第二私钥和第二公钥配对使用。发送单元还用于,向第二移动应用程序的验证服务器发送第二注册请求信息,第二注册请求信息包括用户名、第二公钥和第二随机字符串。
结合第十方面或第十一方面,在一种可能的实现中,第一移动应用程序为微信或支付宝。
第十二方面,本申请技术方案提供了一种电子设备,包括:显示单元,用于显示第一移动应用程序的登录界面,登录界面包括提示信息,提示信息用于提示用户输入激活信息,激活信息包括生物特征信息。输入单元,用于接收用户输入的激活信息。获取单元,用于获取与预设的激活信息对应的第一用户名和第一私钥。发送单元,用于向第一移动应用程序的验证服务器发送登录请求信息,登录请求信息包括第一用户名,第一用户名用于验证服务器确定与第一用户名对应的第一公钥。生成单元,用于根据第一私钥对第一信息进行签名并生成校验值。发送单元还用于,将校验值发送给验证服务器,校验值用于验证服务器根据公钥进行验签。
在一种可能的实现中,第一用户名为第一设备标识。
在另一种可能的实现中,电子设备中保存有注册信息与预设激活信息的对应关系,注册信息包括用户名、私钥以及用户名与私钥的对应关系。
在另一种可能的实现中,电子设备还包括:接收单元,用于在生成单元根据第一私钥对第一信息进行签名并生成校验值之前,接收验证服务器发送的第一信息。
在另一种可能的实现中,第一信息包括第二随机字符串。
第十三方面,本申请技术方案提供了一种电子设备,包括:显示单元,用于显示第一移动应用程序的登录界面,登录界面包括用户名输入区和密码输入区。输入单元,用于接收用户在用户名输入区输入的第一用户名,第一用户名用于第一移动应用程序的验证服务器确定与第一用户名对应的第一公钥。发送单元,用于向验证服务器发送登录请求信息,登录请求信息包括第一用户名。接收单元,用于接收验证服务器发送的与第一用户名对应的第一随机字符串。输入单元还用于,接收用户在密码输入区输入的第一密码。生成单元,用于根据第一密码和第一随机字符串生成第一私钥。生成单元还用于,根据第一私钥对第一信息进行签名并生成校验值。发送单元还用于,将校验值发送给验证服务器,校验值用于验证服务器根据第一公钥进行验签。
第十四方面,本申请技术方案提供了一种电子设备,包括:显示单元,用于显示第一移动应用程序的登录界面,登录界面包括提示信息,提示信息用于提示用户输入激活信息,激活信息包括生物特征信息。输入单元,用于接收用户输入的激活信息。获取单元,用于若激活信息与预设的激活信息一致,则获取与预设的激活信息对应的注册信息,该注册信息包括第一用户名和第一密码。发送单元,用于向第一移动应用程序的验证服务器发送登录请求信息,登录请求信息包括第一用户名,第一用户名用于验证服务器确定与第一用户名对应的第一公钥。生成单元,用于根据第一密码生成第一私钥。生成单元还用于,根据第一私钥对第一信息进行签名并生成校验值。发送单元还用于,将校验值发送给验证服务器,校验值用于验证服务器根据公钥进行验签。
在一种可能的实现中,电子设备中保存有注册信息与预设激活信息的对应关系,注册信息包括用户名、密码以及用户名和密码的对应关系。
在另一种可能的实现中,接收单元还用于,在生成单元根据第一密码生成第一私钥之前,接收验证服务器发送的第一随机字符串。生成单元具体用于,根据第一密码和第一随机字符串生成第一私钥。
在另一种可能的实现中,注册信息还包括第一随机字符串。生成单元具体用于,根据第一密码和第一随机字符串生成第一私钥。
第十五方面,本申请技术方案提供了一种电子设备,包括:显示单元,用于显示第一移动应用程序的登录界面,登录界面包括用户名输入区。输入单元,用于接收用户在用户名输入区输入的第一用户名,第一用户名用于第一移动应用程序的验证服务器确定与第一用户名对应的第一公钥。发送单元,用于向验证服务器发送登录请求信息,登录请求信息包括第一用户名。显示单元还用于显示提示信息,提示信息用于提示用户输入激活信息,激活信息包括生物特征信息。输入单元还用于接收用户输入的激活信息。获取单元,用于若激活信息与预设的激活信息一致,则获取与预设的激活信息对应的注册信息,该注册信息包括第一密码。生成单元,用于根据第一密码生成第一私钥,根据第一私钥对第一信息进行签名并生成校验值。发送单元还用于,将校验值发送给验证服务器,校验值用于验证服务器根据公钥进行验签。
第十六方面,本申请技术方案提供了一种电子设备,包括:显示单元,用于显示第一移动应用程序的登录界面,登录界面包括用户名输入区。输入单元,用于接收用户在用户名输入区输入的第一用户名,第一用户名用于第一移动应用程序的验证服务器确定与第一用户名对应的第一公钥。发送单元,电子设备向验证服务器发送登录请求信息,登录请求信息包括第一用户名,第一用户名用于验证服务器确定与第一用户名对应的第一公钥。显示单元还用于显示提示信息,提示信息用于提示用户输入激活信息,激活信息包括生物特征信息。输入单元还用于接收用户输入的激活信息。获取单元,用于若激活信息与预设的激活信息一致,则获取与预设的激活信息对应的第一私钥。生成单元,用于根据保存的第一私钥对第一信息进行签名并生成校验值,第一私钥与第一用户名对应。发送单元还用于,电子设备将校验值发送给验证服务器,校验值用于验证服务器根据公钥进行验签。
第十七方面,本申请技术方案提供了一种验证服务器,包括:接收单元,用于接收电子设备发送的注册请求信息,注册请求信息包括用户名、公钥和随机字符串。保存单元,用于保存注册信息,注册信息包括用户名、公钥、字符串以及用户名与公钥和字符串的对应关系。
第十八方面,本申请技术方案提供了一种验证服务器,包括:接收单元,用于接收电子设备发送的登录请求信息,登录请求信息包括第一用户名。确定单元,用于确定与第一用户名对应的第一公钥和第一随机字符串。发送单元,用于将第一随机字符串发送给电子设备,第一随机字符串用于电子设备生成第一私钥,第一私钥用于电子设备生成校验值。接收单元还用于,接收电子设备发送的校验值。处理单元,用于根据第一公钥对校验值进行验签以获得校验信息。确定单元还用于,根据校验信息和第一信息确定是否允许电子设备登录。
在一种可能的实现中,验证服务器中保存有注册信息,注册信息包括用户名、公钥、随机字符串以及用户名与公钥和随机字符串的对应关系。
在另一种可能的实现中,验证服务器还包括获取单元,用于在接收单元接收电子设备发送的登录请求信息之后,获取第一信息。发送单元还用于向电子设备发送第一信息,第一信息用于电子设备生成校验值。
在另一种可能的实现中,第一信息包括第二随机字符串。
另一方面,本申请技术方案提供了一种电子设备,包括一个或多个处理器和一个或多个存储器。该一个或多个存储器与一个或多个处理器耦合,一个或多个存储器用于存储计算机程序代码,计算机程序代码包括计算机指令,当一个或多个处理器执行计算机指令时,使得电子设备执行上述任一方面任一项可能的实现中的注册或登录移动应用程序的方法。
另一方面,本申请技术方案提供了一种计算机存储介质,包括计算机指令,当计算机指令在电子设备上运行时,使得电子设备执行上述任一方面任一项可能的实现中的注册或登录移动应用程序的方法。
另一方面,本申请技术方案提供了一种计算机程序产品,当计算机程序产品在电子设备上运行时,使得电子设备执行上述任一方面任一项可能的设计中的注册或登录移动应用程序的方法。
另一方面,本申请技术方案提供了一种验证服务器,包括一个或多个处理器和一个或多个存储器。该一个或多个存储器与一个或多个处理器耦合,一个或多个存储器用于存储计算机程序代码,计算机程序代码包括计算机指令,当一个或多个处理器执行计算机指令时,使得验证服务器执行上述任一方面任一项可能的实现中的注册或登录移动应用程序的方法。
另一方面,本申请技术方案提供了一种计算机存储介质,包括计算机指令,当计算机指令在验证服务器上运行时,使得验证服务器执行上述任一方面任一项可能的实现中的注册或登录移动应用程序的方法。
另一方面,本申请技术方案提供了一种计算机程序产品,当计算机程序产品在验证服务器上运行时,使得验证服务器执行上述任一方面任一项可能的设计中的注册或登录移动应用程序的方法。
另一方面,本申请技术方案提供了一种系统,包括上述方面中的电子设备和验证服务器。
附图说明
图1为现有技术提供的一种登录过程示意图;
图2为本申请实施例提供的一种系统示意图;
图3为本申请实施例提供的一种手机的结构示意图;
图4a-图4b为本申请实施例提供的一组界面示意图;
图5a-图5d为本申请实施例提供的另一组界面示意图;
图6a-图6d为本申请实施例提供的另一组界面示意图;
图7a-图7d为本申请实施例提供的另一组界面示意图;
图8为本申请实施例提供的一种注册过程示意图;
图9a-图9b为本申请实施例提供的另一组界面示意图;
图10为本申请实施例提供的一种登录过程示意图;
图11a-图11b为本申请实施例提供的另一组界面示意图;
图12a-图12b为本申请实施例提供的另一组界面示意图;
图13为本申请实施例提供的另一种登录过程示意图;
图14为本申请实施例提供的另一种注册过程示意图;
图15为本申请实施例提供的另一种登录过程示意图;
图16-图17为本申请实施例提供的用户名、密码与验证服务器的对应关系图;
图18为本申请实施例提供的一种用户名、密码与电子设备的关系图;
图19a-图19f为本申请实施例提供的另一组界面示意图;
图20为本申请实施例提供的另一种登录过程示意图;
图21a-图21f为本申请实施例提供的另一组界面示意图;
图22a-图22b为本申请实施例提供的另一组界面示意图;
图23a-图23g为本申请实施例提供的另一组界面示意图;
图24a-图24l为本申请实施例提供的另一组界面示意图;
图25a-图25d为本申请实施例提供的另一组界面示意图;
图26a-图26b为本申请实施例提供的公私钥模块与业务的对应关系图;
图27a-图27d为本申请实施例提供的另一组界面示意图;
图28-图30为本申请实施例提供的注册方法流程图;
图31-图34为本申请实施例提供的登录方法流程图;
图35-图37为本申请实施例提供的电子设备的结构示意图;
图38-图40为本申请实施例提供的验证服务器的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。其中,在本申请实施例的描述中,除非另有说明,“/”表示或的意思,例如,A/B可以表示A或B;本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,在本申请实施例的描述中,“多个”是指两个或多于两个。
以下,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本申请实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。
本申请实施例提供的登录方法及设备可以应用于如图2所示的系统架构。如图2所示,该系统架构可以包括:至少一个电子设备201和验证服务器202。其中,验证服务器202用于在用户请求登录时验证用户的身份是否合法。当电子设备201的身份合法时,验证服务器202允许电子设备201登录。验证服务器202还可以用于为用户提供业务,例如该业务可以是手机安装的微信、微博或淘宝等App或者网站提供的应用等。
需要注意的是,在本申请实施例中,登录业务与登录业务的验证服务器具有相同的含义。例如登录微信与登录微信的验证服务器表述的意义相同。用户请求登录或电子设备请求登录可以理解为用户通过电子设备请求登录。
在本申请一些实施例中,电子设备201可以是还包含其他功能诸如个人数字助理和/或音乐播放器功能的便携式电子设备,诸如手机、平板电脑、具备无线通讯功能的可穿戴设备(如智能手表)等。便携式电子设备的示例性实施例包括但不限于搭载
Figure GDA0001722605280000081
或者其他操作系统的便携式电子设备。上述便携式电子设备也可以是其他便携式电子设备,诸如具有触敏表面(例如触控面板)的膝上型计算机(laptop)等。还应当理解的是,在本申请其他一些实施例中,上述电子设备也可以不是便携式电子设备,而是具有触敏表面(例如触控面板)的台式计算机。
示例性地,如图3所示,本申请实施例中的电子设备201可以为手机300。下面以手机300为例对实施例进行具体说明。应该理解的是,图示手机300仅是电子设备的一个范例,并且手机300可以具有比图中所示出的更多的或者更少的部件,可以组合两个或更多的部件,或者可以具有不同的部件配置。图中所示出的各种部件可以在包括一个或多个信号处理和/或专用集成电路在内的硬件、软件或硬件和软件的组合中实现。
如图3所示,手机300具体可以包括:一个或多个处理器301、射频(radiofrequency,RF)电路302、存储器303、触摸屏304、蓝牙装置305、一个或多个传感器306、Wi-Fi装置307、定位装置308、音频电路309、外设接口310以及电源系统311等部件。这些部件可通过一根或多根通信总线或信号线(图3中未示出)进行通信。本领域技术人员可以理解,图3中示出的硬件结构并不构成对手机300的限定,手机300可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
下面结合图3对手机300的各个部件进行具体的介绍:
处理器301是手机300的控制中心,利用各种接口和线路连接手机300的各个部分,通过运行或执行存储在存储器303内的应用程序,以及调用存储在存储器303内的数据和指令,执行手机300的各种功能和处理数据。在一些实施例中,处理器301可包括一个或多个处理单元;处理器301还可以集成应用处理器和调制解调处理器;其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器301中。举例来说,处理器301可以是华为技术有限公司制造的麒麟960芯片。在本申请一些实施例中,上述处理器301用于对用户的身份信息进行验证。在本申请其他一些实施例中,上述处理器301还可以包括指纹验证芯片,用于对采集到的指纹进行验证。
射频电路302可用于在收发信息或通话过程中,无线信号的接收和发送。具体地,射频电路302可以将基站的下行数据接收后,给处理器301处理;另外,将涉及上行的数据发送给基站。通常,射频电路包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器、双工器等。此外,射频电路302还可以通过无线通信和其他设备通信。无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统、通用分组无线服务、码分多址、宽带码分多址、长期演进、电子邮件、短消息服务等。
存储器303用于存储应用程序以及数据,处理器301通过运行存储在存储器303的应用程序以及数据,执行手机300的各种功能以及数据处理。存储器303主要包括存储程序区以及存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等);存储数据区可以存储根据使用手机300时所创建的数据(比如音频数据、电话本等)。此外,存储器303可以包括高速随机存取存储器,还可以包括非易失存储器,例如磁盘存储器件、闪存器件或其他非易失性固态存储器件等。存储器303可以存储各种操作系统,例如苹果公司所开发的
Figure GDA0001722605280000091
操作系统,谷歌公司所开发的
Figure GDA0001722605280000092
操作系统等。示例性地,存储器303中存储了与本申请实施例相关的应用程序,例如taskcard store、推特、电话本、微博或微信等,存储器303中还存储可与本申请实施例注册登录相关的信息,例如用户名信息。
触摸屏304可以包括触敏表面304-1和显示器304-2。其中,触敏表面304-1(例如触控面板)可采集手机300的用户在其上或附近的触摸事件(比如用户使用手指、触控笔等任何适合的物体在触敏表面304-1上或在触敏表面304-1附近的操作),并将采集到的触摸信息发送给其他器件例如处理器301。其中,用户在触敏表面304-1附近的触摸事件可以称之为悬浮触控;悬浮触控可以是指,用户无需为了选择、移动或拖动目标(例如App图标等)而直接接触触控板,而只需用户位于手机300附近以便执行所想要的功能。在悬浮触控的应用场景下,术语“触摸”、“接触”等不会暗示用于直接接触触摸屏304,而是在其附近或接近的接触。能够进行悬浮触控的触敏表面304-1可以采用电容式、红外光感以及超声波等实现。触敏表面304-1可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再发送给处理器301,触摸控制器还可以接收处理器301发送的指令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型来实现触敏表面304-1。显示器(也称为显示屏)304-2可用于显示由用户输入的信息或提供给用户的信息以及手机300的各种菜单。可以采用液晶显示器、有机发光二极管等形式来配置显示器304-2。触敏表面304-1可以覆盖在显示器304-2之上,当触敏表面304-1检测到在其上或附近的触摸事件后,传送给处理器301以确定触摸事件的类型,随后处理器301可以根据触摸事件的类型在显示器304-2上提供相应的视觉输出。虽然在图2中,触敏表面304-1与显示屏304-2是作为两个独立的部件来实现手机300的输入和输出功能,但是在某些实施例中,可以将触敏表面304-1与显示屏304-2集成而实现手机300的输入和输出功能。可以理解的是,触摸屏304是由多层材料堆叠而成,本申请实施例中只展示出了触敏表面(层)和显示屏(层),其他层在本申请实施例中不予赘述。另外,在本申请其他一些实施例中,触敏表面304-1可以覆盖在显示器304-2之上,并且触敏表面304-1的尺寸大于显示屏304-2的尺寸,使得显示屏304-2全部覆盖在触敏表面304-1下面,或者,上述触敏表面304-1可以以全面板的形式配置在手机300的正面,也即用户在手机300正面的触摸均能被手机感知,这样就可以实现手机正面的全触控体验。在其他一些实施例中,触敏表面304-1以全面板的形式配置在手机300的正面,显示屏304-2也可以以全面板的形式配置在手机300的正面,这样在手机的正面就能够实现无边框的结构。在本申请其他一些实施例中,触摸屏304还可以包括一系列的压力传感器阵列,可以使得手机感测触摸事件所施加给触摸屏304的压力。
手机300还可以包括蓝牙装置305,用于实现手机300与其他短距离的电子设备(例如手机、智能手表等)之间的数据交换。本申请实施例中的蓝牙装置可以是集成电路或者蓝牙芯片等。
手机300还可以包括至少一种传感器306,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节触摸屏304的显示器的亮度,接近传感器可在手机300移动到耳边时,关闭显示器的电源。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等。
在本申请一些实施例中,传感器306还可以包括指纹传感器。例如,可以在手机300的背面(例如后置摄像头的下方)配置指纹传感器,或者在手机300的正面(例如触摸屏304的下方)配置指纹传感器。另外,也可以通过在触摸屏304中配置指纹传感器来实现指纹识别功能,即指纹传感器可以与触摸屏304集成在一起来实现手机300的指纹识别功能。在这种情况下,该指纹传感器可以配置在触摸屏304中,可以是触摸屏304的一部分,也可以以其他方式配置在触摸屏304中。另外,该指纹传感器还可以被实现为全面板指纹传感器,因此,可以把触摸屏304看成是任何位置都可以进行指纹采集的一个面板。该指纹传感器可以将采集到的指纹发送给处理器301,以便处理器301对该指纹进行处理(例如指纹验证等)。本申请实施例中的指纹传感器可以采用任何类型的感测技术,包括但不限于光学式、电容式、压电式或超声波传感技术等。
此外,至于手机300,还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不予赘述。
Wi-Fi装置307,用于为手机300提供遵循Wi-Fi相关标准协议的网络接入,手机300可以通过Wi-Fi装置307接入到Wi-Fi接入点,进而帮助用户收发电子邮件、浏览网页和访问流媒体等,它为用户提供了无线的宽带互联网访问。在其他一些实施例中,该Wi-Fi装置307也可以作为Wi-Fi无线接入点,可以为其他电子设备提供Wi-Fi网络接入。
定位装置308,用于为手机300提供地理位置。可以理解的是,该定位装置308具体可以是全球定位系统(global positioning system,GPS)、北斗卫星导航系统等定位系统的接收器。定位装置308在接收到上述定位系统发送的地理位置后,将该信息发送给处理器301处理,或者发送给存储器303保存。在另外的一些实施例中,该定位装置308可以是辅助全球卫星定位系统(assisted global positioning system,AGPS)的接收器,AGPS是一种在移动辅助配合下进行GPS定位的运行方式,它可以利用基站的信号,配合GPS卫星信号,可以让手机300定位的速度更快;在AGPS系统中,该定位装置308可通过与辅助定位服务器(例如手机300的定位服务器)的通信而获得定位辅助。AGPS系统通过作为辅助服务器来协助定位装置308完成测距和定位服务,在这种情况下,辅助定位服务器通过无线通信网络与电子设备例如手机300的定位装置308(即GPS接收器)通信而提供定位协助。在另外的一些实施例中,该定位装置308也可以是基于Wi-Fi接入点的定位技术。由于每一个Wi-Fi接入点都有一个全球唯一的媒体访问控制(media access control,MAC)地址,电子设备在开启Wi-Fi的情况下即可扫描并收集周围的Wi-Fi接入点的广播信号,因此可以获取到Wi-Fi接入点广播出来的MAC地址;电子设备将这些能够标示Wi-Fi接入点的数据(例如MAC地址)通过无线通信网络发送给位置服务器,由位置服务器检索出每一个Wi-Fi接入点的地理位置,并结合Wi-Fi广播信号的强弱程度,计算出该电子设备的地理位置并发送到该电子设备的定位装置308中。
音频电路309、扬声器312、麦克风313可提供用户与手机300之间的音频接口。音频电路309可将接收到的音频数据转换后的电信号,传输到扬声器312,由扬声器312转换为声音信号输出;另一方面,麦克风313将收集的声音信号转换为电信号,由音频电路309接收后转换为音频数据,再将音频数据输出至RF电路302以发送给比如一个手机,或者将音频数据输出至存储器303以便进一步处理。
外设接口310,用于为外部的输入/输出设备(例如键盘、鼠标、外接显示器、外部存储器、用户识别模块卡等)提供各种接口。例如通过通用串行总线接口与鼠标连接,通过用户识别模块卡的卡槽上的金属触点与电信运营商提供的用户识别模块(subscriberidentity module,SIM)卡连接。外设接口310可以被用来将上述外部的输入/输出外围设备耦接到处理器301和存储器303。
可以理解的是,手机300还可以包括给各个部件供电的电源系统311(比如电池和电源管理芯片),电池可以通过电源管理芯片与处理器301逻辑相连,从而通过电源系统311实现管理充电、放电、以及功耗管理等功能。
尽管图3未示出,手机300还可以包括摄像头,例如前置摄像头、后置摄像头,其中,前置摄像头可以用于捕捉人脸特征信息,处理器301可以对该人脸特征信息进行人脸识别,进而进行后续处理。手机300还可以包括闪光灯、微型投影装置、近场通信(near fieldcommunication,NFC)装置等,在此不予赘述。
如图4a所示,为手机300中触摸屏上显示的一个用户界面400,该用户界面400中可以包括状态栏403、可隐藏的导航栏406、时间和天气Widget,还有多个应用程序的图标例如微博的图标404、支付宝的图标405、相机的图标402以及微信图标401等。其中,状态栏403中可以包括运营商的名称(例如中国移动)、时间、Wi-Fi图标、信号强度和当前的剩余电量。导航栏406中可以包括后退(back)键图标、主屏幕键图标和前进键图标等。此外,可以理解的是,在其他一些实施例中,状态栏403中还可以包括蓝牙图标、移动网络(例如,4G)、闹钟图标和外接设备图标等。还可以理解的是,在其他一些实施例中,在主屏幕的界面中还可以包括Dock栏,Dock栏中可以包括常用的App的图标等。当手机检测到用户的手指(或触控笔等)针对某一App图标的触摸事件后,响应于该触摸事件,手机可以打开与该App图标对应的App的用户界面。例如,当手机检测到用户的手指触摸相机的图标402的事件后,则参见图4b,响应于用户的手指407触摸相机的图标402的事件,打开相机的服务界面。
在其他一些实施例中,该手机300还可以包括主屏幕键。该主屏幕键可以是实体按键,也可以是虚拟按键(或称软按键)。该主屏幕键用于根据用户的操作,将触摸屏上显示的GUI返回到主屏幕的某一页面,这样可以方便用户随时查看主屏幕并对主屏幕中的控件(例如图标)进行操作。上述操作具体可以是用户按下主屏幕键,也可以是用户在短时间内连续两次按下主屏幕键,还可以是用户长按主屏幕键。在本申请其他一些实施例中,主屏幕键还可以集成指纹传感器402,这样用户可以在按下主屏幕键的时候,电子设备随之进行指纹采集,进而对用户身份进行确认。
以下实施例均可以在具有上述硬件结构的电子设备201(例如手机300、平板电脑等)中实现。以下实施例将以电子设备为手机300为例,对本申请实施例提供的注册、登录方法进行阐述。
在本申请一些实施例中,参见图5a和图5b,在第一电子设备显示的用户界面400上,当用户手指407点击业务图标,例如点击微信图标401时,第一电子设备检测到用户的手指407点击该图标的操作。响应于用户点击微信图标401操作,第一电子设备在触摸屏上可以全屏显示微信的注册/登录界面500。如图5b所示,在注册/登录界面500上,第一电子设备还可以向用户呈现(播放声音或显示画面)第一提示信息501,以提示用户当前采用的是安全模式,用户输入的密码是安全的,微信的验证服务器不会获知用户的密码等。如果用户是第一次使用微信,那么用户可以点击图5b中的注册按钮502请求注册微信。当第一电子设备检测到用户点击注册按钮502时,响应于该点击操作,第一电子设备可以显示如图5c所示的注册界面504。该注册界面504中可以包括用户名输入区505、密码输入区506以及注册按钮507。其中,用户名输入区505用于接收用户对第一用户名的输入,密码输入区506用于接收用户对第一密码的输入。其中,用户名可以作为用户的标识信息,以便验证服务器来区别不同的用户;用户名具体可以是银行账号、序列号、昵称、手机号、邮箱地址或其他用户自定义的字符串等。示例性的,参见图5c,用户输入的第一用户名为“John”,输入的第一密码为“286346xtr”。在第一电子设备检测到用户的手指点击注册按钮502的操作后,响应于该点击操作,第一电子设备在触摸屏上可以显示如图5d所示的注册完成界面。在该注册完成界面中,注册完成提示框508表明用户已经完成在微信中的注册,表明微信的验证服务器接收并保存了与注册相关的信息(例如第一用户名)。登录按钮509用于用户请求登录微信的验证服务器。
在本申请另一些实施例中,参见图6a和6b,在第一电子设备显示的用户界面400上,第一电子设备响应于用户的手指407点击微信图标401的操作,在触摸屏上显示微信的注册/登录界面600。如图6b所示,第一电子设备可以在注册/登录界面600上显示安全模式选项框601和传统模式选项框602。其中,安全模式选项框601包括登录按钮603和注册按钮604,传统模式选项框602包括登录按钮605和注册按钮606。当用户选择安全模式选项框601中的按钮时,第一电子设备采用本申请实施例提供的安全方法进行注册和登录,验证服务器不会接收到第一电子设备发送的用户密码,注册和登录过程的安全性更高。当用户选择传统模式选项框602中的按钮时,第一电子设备采用现有技术中的方法进行注册和登录,验证服务器会接收到用户输入的明文密码,注册和登录过程的安全性较低。
示例性地,当用户点击安全模式选项框601中的注册按钮604时,响应于该点击操作,第一电子设备可以显示如图6c所示的注册界面607。其中,注册界面607上可以包括用户名输入区608,密码输入区609和注册按钮610。在注册完成后,第一电子设备还可以显示如图6d所示的注册完成界面。注册完成界面中可以包括注册完成提示框611和登录按钮612。
在本申请另一些实施例中,参见图7a和7b,在第一电子设备显示的用户界面400上,第一电子设备响应于用户点击微信图标401的操作,在触摸屏上显示微信的注册/登录界面700。如图7b所示,注册/登录界面700上显示有登录按钮701和注册按钮702。当用户点击图7b中的注册按钮702时,第一电子设备可以显示如图7c所示的注册界面703。该注册界面703可以包括用户名输入区704、密码输入区705、安全模式注册按钮706和传统模式注册按钮707。在第一电子设备检测到用户的手指点击安全模式注册按钮706的操作后,响应于该点击操作,第一电子设备在触摸屏上可以显示如图7d所示的注册完成界面。
在本申请其他一些实施例中,在第一电子设备检测到用户点击微信图标401操作时,若用户首次使用微信业务,则第一电子设备在触摸屏上可以显示微信的注册界面504、注册界面607或注册界面703。示例性的,若第一电子设备首次检测到用户点击微信图标401的操作,或者若第一电子设备上未保存有与微信注册相关的信息(例如注册微信时的用户名等)等,则第一电子设备可以确定用户首次使用微信业务。
在本申请实施例中,当用户在图5c、图6c或图7c中的密码输入区输入了第一密码后,在用户点击图5c中的注册按钮507、图6c中的注册按钮610或图7c中的安全模式注册按钮706之前,响应于该输入第一密码的操作,第一电子设备可以根据上述第一密码生成第一私钥和与其配对的第一公钥。该第一私钥和第一公钥用于用户请求登录微信验证服务器时的身份验证。
当用户点击图5c中的注册按钮507、图6c中的注册按钮610或图7c中的安全模式注册按钮706时,响应于该点击操作,如图8所示,第一电子设备801向微信的验证服务器802发送注册请求信息。该注册请求信息中可以包括第一用户名和第一公钥。验证服务器802接收到上述注册请求信息后,保存第一用户名、第一公钥、以及第一用户名与第一公钥的对应关系。在本申请其他一些实施例中,验证服务器802可以响应于该注册请求信息,通过无线网络向第一电子设备801发送注册响应信息,以通知第一电子设备801注册成功。在接收到注册成功的注册响应信息后,第一电子设备可以在触摸屏上显示注册成功的提示信息。示例性的,该提示信息可以为图5d、与6d或图7d中的完成注册提示框。
在本申请实施例提供的注册方法中,第一电子设备将业务注册时用户输入的用户名和公钥发送给验证服务器,并未将用户输入的密码发送给验证服务器,因而不会发生密码的传输泄露。验证服务器中并未保存用户的密码,因而也不会发生由于验证服务器的校验环境不安全而导致的密码泄露。因此,本申请实施例提供的注册方法可以提高用户密码的安全性。
在微信注册完成后,用户想要使用微信的相关业务时,可以通过第一电子设备请求登录。
示例性的,在微信注册完成后,当用户打开图5b、图6b或图7b所示的注册/登录界面,点击注册/登录界面中的登录按钮时;或者,在微信注册完成后,当用户点击图5d、图6d或图7d所示的注册完成界面中的登录按钮时,第一电子设备响应于用户的点击操作,在触摸屏上显示登录界面。
在本申请一些实施例中,参见图9a,登录界面900包括用户名输入区901、密码输入区902和登录按钮903。第一电子设备检测到用户点击登录按钮903后,响应于该点击操作,如图10所示,第一电子设备801向验证服务器802发送登录请求信息。该登录请求信息包括上述输入的第一用户名。第一电子设备801检测到用户在密码输入区的输入后,根据用户输入的密码生成第一私钥,根据第一私钥对第一信息进行签名并生成第一校验值。第一电子设备801将第一校验值发送给验证服务器802。验证服务器802在接收到上述登录请求信息和第一校验值后,根据保存的与第一用户名对应的第一公钥进行验签,从而验证验签获得的验证信息与第一信息是否匹配。若匹配,则验证服务器确定用户的身份合法。当验证服务器确定用户的身份合法时,验证服务器允许第一电子设备登录。
其中,关于第一信息的具体说明可以参见下文的相关描述。签名(即数字签名)是指附加在数据单元上的一些数据,或是对数据单元所作的密码变换。这种数据或变换允许数据单元的接收者用以确认数据单元的来源和数据单元的完整性并保护数据,防止被人伪造。验签是对被签名的数据和签名结果进行校验的过程。如数据被篡改,将导致和签名结果不匹配;而非法用户无法对非法数据生成合法的签名结果。因此验签过程可以保证数据没有被伪造。“匹配”是指验证信息与第一信息一致或符合特定的计算关系,例如校验信息经过HASH计算后的结果与第一信息一致。举例来说,若第一信息为:c0c8e1a56497;第一公钥为:
517653d004801d44b69f4fc6a115abff7ff563e3ac589caa1f1f14b5d94ad41ba5517cbb7c3fa2c4b92d739dbc22201f298b99f2fef84a96364ef8b65cafd6829;第一校验值为:
a6cce3c11300d10036ac9c2055ffc4cf5723f7baf31b1beb1183e27b4f0da79259f83270440c642c28461574bc4de9011a5fa58fb04e6c4a6ce82be5072d5143;则根据第一公钥进行验签获得的校验信息也为c0c8e1a56497,即校验信息与第一信息匹配。
如图10所示,当验证服务器802确定用户的身份合法时,还可以向第一电子设备1001发送登录响应信息,以通知第一电子设备801登录成功。第一电子设备801在成功登录验证服务器后,可以向微信的验证服务器发送业务请求,并向用户显示微信服务界面。示例性的,微信服务界面可以如图9b所示的界面904。
在本申请其他一些实施例中,第一电子设备可以保存微信注册过程中生成的第一私钥。在用户后续请求登录验证服务器时,第一电子设备可以根据保存的第一私钥生成第一校验值,从而根据第一校验值进行身份验证。示例性的,在用户请求登录时,参见图11a,登录界面1100包括用户名输入区1101和登录按钮1102。当用户输入第一用户名并点击登录按钮1102时,第一电子设备响应于该点击操作向验证服务器发送登录请求信息,该登录请求信息包括上述输入的第一用户名。第一电子设备根据之前注册时保存的第一私钥生成第一校验值,并发送给验证服务器进行身份验证。在身份验证通过后,如图11b所示,第一电子设备可以显示微信服务界面。
在本申请其他一些实施例中,第一电子设备可以保存微信注册过程中用户输入的第一用户名和生成的第一私钥。示例性的,参见图12a,登录界面1200包括用户名显示区1201、登录按钮1202和用户切换按钮1203。用户名显示区1201用于显示用户注册时保存的第一用户名。用户切换按钮1203用于用户切换登录时使用的账号。当用户点击登录按钮1202时,第一电子设备响应于该点击操作向验证服务器发送登录请求信息,该登录请求信息包括保存的第一用户名。第一电子设备根据之前注册时保存的第一私钥生成第一校验值,并发送给验证服务器进行身份验证。在身份验证通过后,如图12b所示,第一电子设备可以显示微信服务界面。
在本申请其他一些实施例中,第一电子设备可以保存微信注册过程中用户输入的第一密码。在用户后续请求登录验证服务器时,第一电子设备可以根据保存的第一密码生成第一私钥。示例性的,在用户请求登录时,登录界面可以如图11a所示。当用户在用户面输入区输入第一用户名,并点击登录按钮1102时,第一电子设备响应于该点击操作向验证服务器发送登录请求信息,该登录请求信息包括上述输入的第一用户名。第一电子设备根据之前注册时保存的第一密码生成第一私钥,从而根据第一私钥生成第一校验值,并发送给验证服务器进行身份验证。
在本申请其他一些实施例中,第一电子设备可以保存微信注册过程中用户输入的第一用户名和第一密码。示例性的,在用户请求登录时,登录界面可以如图12a所示。当用户点击登录按钮1202时,第一电子设备响应于该点击操作向验证服务器发送登录请求信息,该登录请求信息包括保存的第一用户名。第一电子设备根据之前注册时保存的第一密码生成第一私钥,根据第一私钥生成第一校验值,并发送给验证服务器进行身份验证。
在本申请其他一些实施例中,第一电子设备可以保存微信注册过程中用户输入的第一用户名和第一私钥,或者保存微信注册过程中用户输入的第一用户名和第一密码。在微信注册完成后,用户打开图5b、图6b或图7b所示的注册/登录界面,点击注册/登录界面中的登录按钮;或者,在微信注册完成后,用户点击图5d、图6d或图7d所示的注册完成界面中的登录按钮。第一电子设备响应于用户的点击操作,向验证服务器发送登录请求信息,该登录请求信息包括上述输入的第一用户名。第一电子设备根据之前注册时保存的第一密码生成第一私钥,从而根据第一私钥生成第一校验值,并发送给验证服务器进行身份验证。也就是说,在该方案中,第一电子设备可以不显示登录界面。第一电子设备可以在身份验证成功后直接显示微信服务界面。
在本申请一些实施例中,上述第一信息为第一电子设备与验证服务器约定的信息。示例性的,第一信息可以为与验证服务器约定的第一电子设备的设备标识,例如设备序列号或MAC地址等。再示例性的,第一电子设备可以与验证服务器约定一个第一信息集合。第一信息集合包括大量的信息条数。第一信息集合中的每条信息可以是一个字符串。第一电子设备在每次请求登录时,按照与验证服务器约定的顺序,从第一信息集合中选择一条信息并生成第一校验值。示例性的,第一信息集合可以参见如下表1:
表1
编号 信息
1 41b6a51517cb
2 60192f4fc56a
3 86435ef586ba
n c5309ba62f24
在本申请实施例提供的注册和登录方案中,由于第一电子设备并未将第一密码发送给验证服务器进行验证,因而不会出现在传输过程中泄漏第一密码的技术问题,以及由于校验环境不安全导致第一密码泄露的问题。
在第一电子设备每次按照与验证服务器约定的顺序(例如从第一个编号到最后一个编号的次序循环),从第一信息集合中选择一条信息并生成第一校验值的情况下,第一电子设备每次生成第一校验值时依据的第一信息不同或者大概率不同,因而第一电子设备每次发送的第一校验值也不同或者大概率不同。即使第一校验值在某次或某几次传输过程中被截获,则由于第一电子设备每次发送的第一校验值都不同或者大概率不同,截获者并不知道第一电子设备下一次发送的第一校验值是什么,因而截获者无法仿冒正确的第一校验值,从而无法仿冒合法的用户身份登录微信的验证服务器,这样就增强了登录网站或App的安全性。
在本申请其他一些实施例中,上述第一信息也可以不是第一电子设备与验证服务器约定的信息,而是从验证服务器接收的信息。如图13所示,验证服务器802在接收到第一电子设备801发送的登录请求信息后,可以向第一电子设备801发送第一信息。第一电子设备根据从验证服务器接收到的第一信息生成第一校验值。
在本申请一些实施例中,验证服务器中可以保存有一个预设的第二信息集合,该第二信息集合包括大量的信息条数,每条信息可以是一个字符串。验证服务器在每次接收到第一电子设备发送的登录请求信息后,可以随机地或按照预设顺序从第二信息集合中选择一条信息作为第一信息发送给第一电子设备,以便第一电子设备生成第一校验值。
在该方案中,第一电子设备并未将明文形式的第一密码发送给验证服务器进行验证,因而不会出现在传输过程中泄漏第一密码的问题以及由于校验环境不安全导致第一密码泄露的问题。并且,在验证服务器随机地或按照预设顺序从第二信息集合中选择一条信息作为第一信息发送给第一电子设备,以便于第一电子设备生成第一校验值。在该情况下,验证服务器每次发送的第一信息不同或者大概率不同,第一电子设备每次依据第一信息生成的第一校验值也不同或者大概率不同。因此,即使第一校验值在某次或某几次传输过程中被截获,则由于第一电子设备每次发送的第一校验值都不同或大概率不同,截获者并不知道第一电子设备下一次发送的第一校验值是什么,因而截获者无法仿冒正确的第一校验值,从而无法仿冒合法的用户身份登录微信的验证服务器。也就是说,采用该方案可以提高用户登录过程的安全性,使得用户身份无法被仿冒。
在本申请其他一些实施例中,该第一信息为验证服务器随机生成的字符串(例如,是一段6字节随机数c0c8e1a56497(16进制表示));或者,该第一信息为验证服务器随机生成的数字或字符串与预设信息的组合。例如,该预设信息可以是第二信息集合中的信息。这样,在第一电子设备请求登录时,验证服务器每次发送给第一电子设备的第一信息不同,第一电子设备每次依据第一信息生成的第一校验值也不同。因此,即使第一校验值在某次或某几次传输过程中被截获,则由于第一电子设备每次发送的第一校验值不同,截获者并不知道第一电子设备下一次发送的第一校验值是什么,因而截获者无法仿冒正确的第一校验值,从而无法仿冒合法的用户身份登录微信的验证服务器。
可见,采用本申请实施例提供的注册和登录方法,验证服务器不会获知用户的密码,该注册和登录方案为安全的实现方案。采用该种方案进行注册和登录的模式可以称为安全模式。
在本申请另一些实施例中,当用户点击图5c中的注册按钮507、图6c中的注册按钮610或图7c中的安全模式注册按钮706时,参见图14,第一电子设备801接收用户输入的第一用户名和第一密码后,还可并生成第一盐(salt)值。其中,salt是随机生成的一组字符串。示例性的,salt可以为一段8字节随机数036D7E9AFE2A368D(16进制表示)。而后,第一电子设备801根据第一密码和第一salt生成第一私钥和第一公钥。如图14所示,第一电子设备801将第一用户名、第一salt和第一公钥发送给验证服务器802。验证服务器802保存第一用户名与第一公钥的对应关系,以及第一用户名与第一salt的对应关系。示例性的,如下表2所示,验证服务器802可以建立一个数据库,该数据库中的主键(key)是用户名,每个用户名关联各自在注册时的salt和公钥。
表2
主键(用户名) salt 公钥
John 036D7E9AFE2A368D 公钥1
Susan 7B11085AAFF780341 公钥2
Abel 563EA54B3AC58AC1 公钥3
Daniel 39BAE6D4A94BF325 公钥n
在采用图14所示的方式注册微信后,参见图15,当用户通过第一电子设备801请求登录验证服务器802时,第一电子设备801将用户输入的第一用户名发送给验证服务器802。如图15所示,验证服务器802将与第一用户名对应的第一salt发送给第一电子设备801。第一电子设备801根据第一salt和用户输入的第一密码生成第一私钥,根据第一私钥对第一信息进行签名从而生成第一校验值;或者,第一电子设备根据保存的第一私钥对第一信息进行签名从而生成第一校验值。第一电子设备将生成的第一校验值发送给验证服务器802。验证服务器802根据与第一用户名对应的第一公钥对第一校验值进行验签,从而确定验签时获得的验证信息与第一信息是否匹配。若匹配,则验证服务器802确定用户的身份合法。其中,第一信息可以参照上述实施例中的相关描述。如图15中的虚线框所示,第一信息可以是第一电子设备801从验证服务器802接收的信息。
另外,第一电子设备801还可以采用与注册和登录微信的验证服务器802相同的方法(即采用安全模式),注册和登录其他业务(例如微博、支付宝、Gmail邮箱等)对应的验证服务器。其中,参见图16,微信的验证服务器1601、支付宝的验证服务器1602以及微博的验证服务器160n等使用了不同的用户名和密码。或者,参见图17,微信的验证服务器1601、支付宝的验证服务器1602以及微博的验证服务器160n等使用了相同的用户名和密码。
在第一电子设备注册业务时生成salt的情况下,若注册的业务不同,则注册时生成的salt也不同。这样,即使如图17所示,用户为了记忆方便在注册多个业务采用了相同的第一密码,则由于不同业务对应的salt不同,因而不同业务对应的私钥和公钥也不同,第一电子设备根据不同的私钥生成的校验值也不同。因此,在多个业务对应同一密码时,明文密码不会被泄露,即使其中一个业务的校验值发生泄露,其他业务的校验值也不容易根据泄露的校验值进行仿冒,因而可以防止业务之间校验值的交叉泄露。而在现有技术中,当多个业务对应同一密码时,若其中一个业务的密码发生传输泄露或校验环境泄露,则相当于其他业务的密码均被泄露,其他业务的业务也将遭受被攻击的风险。
此外,在第一电子设备在注册业务时生成salt的情况下,若注册的用户名不同,则注册时生成的salt也不同。这样,即使用户注册时输入的第一密码一样,不同用户名对应的salt不同,不同用户名对应的公钥和私钥也不同,第一电子设备生成的校验值也不同,不同用户名之间的校验值不容易被仿冒。或者,在第一电子设备生成salt的情况下,若第一密码不同,则salt也可以不同,这样,不同第一密码对应的不同私钥(和公钥)之间的差异较大,校验值之间的差异也较大,更不容易被仿冒。
另外,需要说明的是,当采用图1所示的现有登录方法时,还可能存在密码的存储泄露。例如,当验证服务器中存储的是明文形式或可逆加密形式的密码时,若攻击者入侵验证服务器,对验证服务器的数据库进行拖库攻击,则攻击者可以获取用户的明文密码,从而发生密码的存储泄露。再例如,当验证服务器中存储的是MD5或SHA256等单向不可逆HASH形式的密码时,则可能由于发生碰撞攻击而泄露用户的密码。
而在本申请实施例提供的方案中,验证服务器中存储的是公钥,或者存储的是公钥和salt,因而即使公钥或salt被泄露,攻击者也无法根据公钥或salt获得用户的密码,也无法根据公钥或salt仿冒用户的密码或校验值,因而不会发生存储泄露,安全性更高。而且,由于验证服务器不会获取到用户的密码,因而无需其他证明或第三方认证评测,用户也可以信任验证服务器。
在本申请其他一些实施例中,参见图18,在用户通过第一电子设备801注册微信之后,还可以使用第二电子设备1801登录微信的验证服务器802,而不限于仅能通过第一电子设备801登录验证服务器802。具体的,第二电子设备1801可以根据第一电子设备801注册微信时的第一用户名和第一密码,按照本申请上述实施例提供的方法请求登录验证服务器802。并且,在请求登录的过程中,验证服务器802不会获取到用户的明文密码。也就是说,用户在某个电子设备上注册一个业务后,可以在其他任意的电子设备上安全登录微信的验证服务器。更进一步地,如图18所示,在用户使用第二电子设备1801登录验证服务器802后,还可以再通过第一电子设备801按照本申请上述实施例提供的登录方法请求登录验证服务器802。
在本申请其他一些实施例中,当第一电子设备保存了注册过程中生成的第一私钥时,在第一私钥的保存时间超过第一时间阈值后,第一私钥的保存时效过期,在第一电子设备再次请求登录或发起业务时,第一电子设备可以通过上述实施例描述的方法重新生成第一私钥(例如,根据第一密码或者根据第一密码和第一salt生成第一私钥)。
在本申请其他一些实施例中,当第一电子设备保存了注册过程中生成的第一私钥时,第一电子设备还可以保存有预设激活信息的对应关系。例如,该预设激活信息包括预设手势、语音、指纹、人脸等生物特征信息等。在第一电子设备保存第一私钥后,当第一电子设备后续请求登录验证服务器时,可以提示用户输入激活信息。在用户输入的激活信息与预设激活信息匹配时,第一电子设备激活与预设激活信息对应的第一私钥,从而根据第一私钥生成第一校验值。或者,在成功登录验证服务器后的时间超过第一时间阈值后,第一私钥的保存时效过期,第一电子设备请求登录或发起业务时,第一电子设备可以提示用户输入激活信息,并在用户输入的激活信息与预设激活信息匹配时,获取与预设激活信息对应的第一私钥,从而根据第一私钥生成第一校验值。这样,用户可以通过简单地或更为自然的手势、语音、指纹、人脸等生物特征信息获取第一私钥,从而提高登录的安全性。
示例性的,第一电子设备还包括指纹区域,在微信注册完成后,当用户点击图5a所示的用户界面400上的微信图标401时;或者,在微信注册完成后,用户打开图5b、图6b或图7b所示的注册/登录界面,点击注册/登录界面中的登录按钮时;或者,在微信注册完成后,用户点击图5d、图6d或图7d所示的注册完成界面中的登录按钮时,参见图19a-图19f,第一电子设备还可以显示提示信息1901以提示用户录入指纹,并在指纹录入正确时激活第一密码,从而成功登录微信的验证服务器。
当用户通过第一电子设备注册微信后,通过第二电子设备请求登录验证服务器时,由于第二电子设备上未保存有与第一用户名对应的第一私钥,因而第二电子设备生成第一私钥;或者,若验证服务器确定未接收过第二电子设备在请求登录时发送的第一用户名,则通知第二电子设备生成第一私钥。具体的,第二电子设备可以通过上述实施例描述的方法生成第一私钥,例如根据第二电子设备可以根据第一密码生成第一私钥,或者可以根据第一密码和第一salt生成第一私钥。在用户使用第二电子设备登录验证服务器后,再使用第一电子设备请求登录验证服务器时,第一电子设备保存有之前注册微信或登录验证服务器时生成的第一私钥,因此第一电子设备可以根据保存的第一私钥生成第一校验值,而不需要再重新生成一次第一私钥,因而可以减少第一电子设备生成第一私钥的操作。
在本申请其他一些实施例中,当第一电子设备保存了注册过程用户输入的第一密码时,在第一电子设备保存第一密码的时间超过第二时间阈值后,第一密码的保存时效过期,在第一电子设备请求登录或发起业务时,第一电子设备可以提示用户输入密码。第一电子设备在提示用户输入密码时可以显示第一用户名,以提示用户输入与第一用户名对应的第一密码。可选地,第一电子设备在提示用户输入密码时,可以不显示第一用户名,默认用户名为上一次输入的用户名;或者,第一电子设备在提示用户输入密码时,还可以提示用户输入用户名。
在本申请一些实施例中,当第一电子设备保存了注册过程用户输入的第一密码时,第一电子设备还可以保存有预设激活信息与第一密码的对应关系。在首次请求登录验证服务器,第一电子设备保存第一密码后,当第一电子设备再次请求登录验证服务器时,第一电子设备可以提示用户输入激活信息,并在用户输入的激活信息与预设激活信息匹配时,获取与预设激活信息对应的第一密码,从而根据第一密码生成第一私钥。或者,在成功登录验证服务器后的时间超过第二时间阈值后,第一密码的保存时效过期,第一电子设备请求登录或发起业务时,第一电子设备可以提示用户输入激活信息,并在用户输入的激活信息与预设激活信息匹配时,获取与预设激活信息对应的第一密码,从而根据第一密码生成第一私钥。这样,用户不需要繁琐地再次输入第一密码,而可以通过简单地或更为自然的手势、语音、指纹、人脸等生物特征信息获取第一密码,从而提高登录的安全性。
示例性的,第一电子设备还包括指纹区域,在微信注册完成后,当用户点击图5a所示的用户界面400上的微信图标401时;或者,在微信注册完成后,用户打开图5b、图6b或图7b所示的注册/登录界面,点击注册/登录界面中的登录按钮时;或者,在微信注册完成后,用户点击图5d、图6d或图7d所示的注册完成界面中的登录按钮时,参见图19a-图19f,第一电子设备还可以显示提示信息1901以提示用户录入指纹,并在指纹录入正确时激活第一密码,从而成功登录微信的验证服务器。
当用户通过第一电子设备注册微信后,通过第二电子设备首次请求登录验证服务器时,由于第二电子设备上未保存有第一密码,第二电子设备需要获取用户输入的第一密码;或者,若验证服务器确定没有接收过第二电子设备在请求登录时发送的第一用户名,则通知第二电子设备获取密码。第二电子设备可以提示用户输入用户名和密码。并且,第二电子设备首次登录成功后还可以保存第一密码。在用户使用第二电子设备登录验证服务器后,再使用第一电子设备请求登录验证服务器时,第一电子设备保存有之前注册微信或首次登录验证服务器时生成的第一密码,因而第一电子设备可以根据保存的第一密码生成第一私钥,而不需要用户再次输入密码。这样,可以在安全登录的前提下,减少用户的操作,提高用户使用体验。
在本申请其他一些实施例中,当第一电子设备保存了注册过程中用户输入的第一用户名和第一密码时,在保存时间超过第二时间阈值后,保存的信息时效过期,在第一电子设备请求登录或发起业务时,第一电子设备可以提示用户输入用户名和密码。
在本申请其他一些实施例中,第一电子设备还可以预先保存有预设激活信息与第一用户名和第一密码的对应关系,用户不需要繁琐地再次输入第一密码和第一用户名,而可以通过简单地或更为自然的手势、语音或指纹、面部信息等生物特征信息获取第一密码和第一用户名。示例性的,参见图19a-图19b,在请求登录时,用户不需要输入用户名和密码,当用户输入的指纹信息与预设指纹信息匹配时,获取与预设指纹信息对应的第一用户名和第一密码,从而根据第一密码生成第一私钥,根据第一私钥生成第一校验值,并将第一用户名和第一校验值发送给验证服务器。
在本申请其他一些实施例中,第一电子设备还可以预先保存有预设激活信息与第一用户名和第一私钥的对应关系,用户不需要繁琐地再次输入第一密码和第一用户名,而可以通过简单地或更为自然的手势、语音或指纹、面部信息等生物特征信息获取第一私钥和第一用户名。示例性的,参见图19a-图19b,在请求登录时,用户不需要输入用户名和密码,当用户输入的指纹信息与预设指纹信息匹配时,获取与预设指纹信息对应的第一用户名和第一私钥,从而根据第一私钥生成第一校验值,并将第一用户名和第一校验值发送给验证服务器。
当用户通过第一电子设备注册微信后,通过第二电子设备首次请求登录验证服务器时,由于第二电子设备上未保存有第一用户名和第一密码,第二电子设备需要获取用户输入的第一用户名和第一密码;或者,若验证服务器确定没有接收过第二电子设备在请求登录时发送的第一用户名,则通知第二电子设备获取第一用户名和第一密码。第二电子设备可以提示用户输入用户名和密码。并且,第二电子设备首次登录成功后还可以保存第一用户名和第一密码。在用户使用第二电子设备登录验证服务器后,再使用第一电子设备请求登录验证服务器时,第一电子设备保存有之前注册时生成的第一用户名和第一密码,因而第一电子设备可以根据保存的第一用户名发送登录请求,并根据保存的第一密码生成第一私钥,而不需要用户再次输入用户名和密码。可见,该方案可以在安全登录的前提下,减少用户的输入操作,提高用户的使用体验。
当用户通过第一电子设备注册微信后,通过第二电子设备请求登录验证服务器时,第二电子设备上未保存有第一用户名和第一密码。若第二电子设备之前通过其他用户名登录过微信,则用户可以通过“切换用户”选项输入第一用户名和第一密码;若第二电子设备之前未通过其他用户名登录过验证服务器,则可以提示用户输入用户名和密码,此时用户可以输入第一用户名和第一密码进行登录。
另外,当用户通过第一电子设备注册微信后,通过第二电子设备请求登录验证服务器时,若第二电子设备根据自己的系统版本确定不支持安全模式,则第二电子设备采用现有技术中的传统模式请求登录验证服务器。其中,电子设备产品发布时的相关官方文档或白皮书中通常有是否支持该安全模式的记载。
在本申请另外一些实施例中,在第一电子设备通过安全模式登录验证服务器后,微信可以作为一个主身份应用授权其他业务安全登录,而其他应用不需要再进行注册。例如,参见图20,在第一电子设备成功登录微信的验证服务器后,当第一电子设备请求登录微博或QQ等其他业务对应的验证服务器时,其他业务对应的验证服务器可以从微信验证服务器获取校验凭据(token),并向微信验证服务器发起token校验,从而验证用户的身份是否合法。这样,用户只需要注册一个业务就可以安全登录多个业务,可以减少用户的注册此时,该种方式对于用户来说更为方便,体验较好。
在本申请另外一些实施例中,在第一电子设备注册业务时生成salt的情况下,第一电子设备可以采用同一组用户名和密码安全注册和登录多个业务对应的验证服务器,而不需记忆多组用户名和密码,以及每组用户名和密码与每个业务的对应关系。其中,由于不同业务对应的salt不同,因而第一电子设备生成的不同业务对应的公私钥对也互不相同。例如,微信、支付宝和微博均采用用户名为“John”,密码为“286346xtr”进行注册,但微信、支付宝和微博对应的公私钥对可以互不相同。
在本申请一些实施例中,第一电子设备可以采用同一组用户名和密码分别注册和登录多个业务对应的多个验证服务器。该注册和登录流程可以参见上述实施例中第一电子设备注册和登录验证服务器的具体流程。在该方案中,用户只需记忆并使用一组用户名和密码就可以安全注册和登录多个业务对应的验证服务器。
在本申请另一些实施例中,在采用第一用户名和第一密码注册微信时,第一电子设备可以提示用户设置采用第一用户名和第一密码进行注册和登录的其他业务。在设置其他业务后,第一电子设备向微信和其他业务的验证服务器发送注册请求信息,该注册请求信息包括第一用户名和第一密码。也就相当于,第一电子设备采用第一用户名和第一密码同时批量地注册了一个业务集合,该业务集合包括微信和用户设置的其他业务。在业务集合中,除微信以外的其他业务不需要再单独进行注册。因而,该方案可以减少用户注册业务的次数,减少用户的操作,提高用户的使用体验。
示例性的,参见图21d,在采用第一用户名和第一密码注册微信时,第一电子设备可以显示提示信息2101以提示用户是否要添加使用第一用户名和第一密码进行注册的其它业务。当用户点击立即设置按钮2102时,第一电子设备进入添加业务的界面2103。界面2103上显示有输入框2104和添加符2105。用户可以在输入框2104内输入想要添加的业务名称。用户通过点击添加符2105可以添加一个新的输入框。如图21e和21f所示,用户添加了使用第一用户名和第一密码进行注册的微博和支付宝。此外,在图21f中,微博右边的叉号2106用于删除已添加的微博这一业务。在用户设置可微博和支付宝的情况下,第一电子设备可以向微信、微博和支付宝发送注册请求信息,该注册请求信息包括第一用户名和第一密码。
在本申请一些实施例中,在批量注册一个业务集合后,第一电子设备可以根据第一用户名和第一密码采用上述实施例提供的方法请求登录验证服务器集合中的任意业务。在第一电子设备请求登录验证服务器集合中的业务时,第一电子设备还可以向用户提示正在使用安全模式,请根据安全模式注册的用户名和密码登录。示例性的,在图21f中注册支付宝之后,当第一电子设备首次使用支付宝时,如图22b所示,第一电子设备可以显示提示信息2201以提示用户输入批量注册时设置的用户名和密码。
在本申请另一些实施例中,在业务集合中的任意一个业务成功登录后,第一电子设备可以自动登录业务集合中其他业务对应的验证服务器,而不需要其他业务对应的验证服务器验证用户的身份是否合法,因而可以减少用户请求登录的操作。其中,自动登录是指,第一电子设备自动根据注册时的用户名向业务的验证服务器发送登录请求,根据密码生成私钥和校验值,并将校验值发送给验证服务器;验证服务器验证用户身份合法,允许用户登录。自动登录过程是第一电子设备自动进行的,不需要用户输入用户名和密码,因而不需要用户的参与,用户对身份验证过程无感知,因此用户的使用体验更佳。并且,在第一电子设备登录验证服务器集合中其他业务对应的验证服务器时,第一电子设备还可以提示用户正在采用安全模式自动登录。
示例性的,在图21f中注册支付宝之后,当第一电子设备首次使用支付宝时,参见图23a-图23b,第一电子设备可以自动安全登录支付宝的验证服务器,显示支付宝服务页面;或者,参见图23c-图23e,第一电子设备显示提示信息2301以提示用户正在使用安全模式自动登录,而后显示支付宝服务页面;或者,参见图23f-图23g,第一电子设备自动登录支付宝的验证服务器,并显示支付宝服务界面后,显示提示信息2302以提示用户已通过安全模式自动登录。
在本申请另一些实施例中,参见图24a,第一电子设备的系统设置中提供了安全模式设置。通过该系统设置,用户可以统一设置用户名、密码和多个业务的对应关系。
示例性地,参见图24b和图24c,或者参见图24d,用户可以设置一个全局的用户名和密码,并设置与该用户名和密码对应的至少一个业务。具体的,参见图24g,用户可以选择第一电子设备本地安装的业务应用。或者,参见图24i,用户可以选择第一电子设备默认支持的业务。或者,参见图24l,用户可以选择第一电子手动设置业务。其中,在图24e至图24l中,触摸屏上还可以包括删除符或添加符。
在一种情况下,在用户输入全局的用户名和密码后,第一电子设备可以立即根据该用户名和密码发送注册请求消息,从而统一、批量地注册该至少一个业务;而后,第一电子设备可以采用类似图22b、图23a-图23g所示的方法登录该至少一个业务对应的验证服务器。
示例性的,在图24d所示的场景下,在用户输入用户名和密码后,当用户选择微信对应的复选框时,第一电子设备生成第一私钥和第一公钥;电子设备向微信的验证服务器发送注册请求信息,注册请求信息包括用户输入的用户名和第一公钥,注册请求信息中还可以包括第一salt。当用户选择支付宝对应的复选框时,第一电子设备生成第二私钥和第二公钥;电子设备向微信的验证服务器发送注册请求信息,注册请求信息包括用户输入的用户名和第二公钥,注册请求信息中还可以包括第二salt。也就是说,第一电子设备批量注册了微信和支付宝等多个业务。
在另一种情况下,在用户输入全局的用户名和密码后,第一电子设备可以在用户请求注册该至少一个业务中的任意业务时,才根据该全局的用户名和密码发送注册请求消息,从而自动注册该任意业务,且在注册时不需要用户再次输入用户名和密码。因而,可以减少用户注册业务时输入用户名和密码的操作。
在本申请另一些实施例中,参见图25a-图25d,用户可以设置多个安全组,每个安全组包括一组用户名和密码,以及至少一个业务。不同登入组中的用户名和/或密码可以不同也可以相同,本申请实施例不作具体限定。每个安全组中业务的设置可以与图24c-图24l中所示的方法类似,这里不再赘述。在一种情况下中,每个安全组中的业务可以对应同一种类型。示例性的,该类型可以包括视频类、社交类、浏览器类、办公类、音乐类、游戏类、安全杀毒类、下载类、系统工具类、阅读类或翻译类等等。例如,社交类业务可以包括微信、脸书(facebook)和QQ等。
在本申请一些实施例中,参见图26a,第一电子设备801中可以包括一个公私钥生成模块,用于生成私钥和公钥。在一种情况下,该公私钥生成模块可以是第一电子设备801统一的服务接口,不同业务均通过该统一的服务接口生成各自对应的公钥和私钥。在另一种情况下,该公私钥生成模块可以是一个预置的软件功能包(例如,为spk格式的软件程序),每个业务均可以将该软件功能包加载到自己的代码内。
在本申请其他一些实施例中,参见图26b,第一电子设备801中可以包括多个公私钥生成模块,且每个业务分别对应一个公私钥生成模块。每个业务分别通过对应的公私钥生成模块生成公钥和私钥。
由以上描述可知,在本申请实施例中,公私钥模块可以根据第三信息生成公私钥,该第三信息可以包括密码或者包括密码和salt。公私钥模块生成公私钥的方法可以包括:公私钥模块根据第三信息进行派生(指根据一组数据生成另一组数据)以获得中间结果。公私钥模块根据中间结果生成公私钥对。其中,派生算法可以包括但不限于HASH算法、HMAC算法、CMAC算法或GMAC算法等一系列单向算法。例如,该HASH算法可以包括PBKDF2、SCRYPT、MD5或SHA256等算法。示例性的,当采用PBKDF2算法时,该中间结果可以为PBKDF2(password,salt,count)。其中,count为PBKDF2算法中的迭代次数,例如可取1000次。公私钥模块具体可以根据中间结果,采用非对称密码算法生成公私钥对。例如,该非对称密码算法可以包括ECDSA算法、RSA算法或NTRU算法等。示例性的,当采用ECDSA算法时,公私钥生成模块可以将中间结果通过取模的方式映射到ECDSA私钥的空间,并使用私钥与基点做标量乘操作获得对应的公钥。
示例性的,若采用ECDSA算法生成公私钥,密码为123456,salt为一段8字节随机数036D7E9AFE2A368D(16进制表示),则生成的私钥为一个32字节长的值:
00dc39ba64a94ca331b55890db444b87a54c7b44a9cf5fea6a0d7c958d06fb8d;
生成的公钥为一个64字节长的值,如:
517653d004801d44b69f4fc6a115abff7ff563e3ac589caa1f1f14b5d94ad41ba5517cbb7c3fa2c4b92d739dbc22201f298b99f2fef84a96364ef8b65cafd6829。
另外,当第一电子设备保存私钥、密码或用户名中的至少一个时,一种情况下,第一电子设备可以统一保存各业务与私钥、密码或用户名中的至少一个的对应关系;另一种情况下,第一电子设备中的各业务可以分别保存本业务对应的使用、密码或用户名中的至少一个。
可以理解的是,电子设备根据自身的系统版本,可以确定是否支持安全模式。或者,若电子设备中保存有与用户名和应用对应的私钥,则电子设备可以确定支持安全模式。或者,电子设备存储了特定的标识位字段,用于作为是否支持安全模式的标识。
在本申请一些实施例中,若电子设备支持安全模式,则可以向验证服务器发送第一指示标识(例如在登录请求中发送该第一指示标识),电子设备和验证服务器之间采用安全模式对用户的身份进行验证。否则,电子设备和验证服务器之间可以采用传统模式进行身份验证。
在本申请另一些实施例中,若电子设备支持安全模式,则电子设备可以在登录请求中携带用于指示自身系统版本号的第二指示标识,电子设备和验证服务器之间采用安全模式对用户的身份进行验证。否则,电子设备和验证服务器之间可以采用传统模式进行身份验证。
在本申请其他一些实施例中,电子设备(例如第一电子设备、第二电子设备)出厂时可以预设有设备标识、私钥以及设备标识与私钥的对应关系,业务的验证服务器上预设有设备标识、公钥以及设备标识与公钥的对应关系。其中,同一设备标识对应的公钥和私钥配对使用。其中,设备标识可以是国际移动设备身份码(international mobile equipmentidentity,IMEI)、国际移动用户识别码(international mobile subscriberidentification number,IMSI)、移动设备识别码(mobile equipment identifier,MEID)、序列号(serial number,SN)、集成电路卡识别码(Integrate circuit card identity,ICCID)、媒体介入控制层(media access control,MAC)地址或电话号码等。需要说明的是,本申请实施例中涉及的设备标识也可以是电子设备在软件层面获取的诸如全局唯一标识符(globally unique identifier,GUID)、通用唯一识别码(universally uniqueidentifier,UUID)、实例标识符(Instance ID)、安卓设备的标识符(Android ID)等,本申请实施例对设备标识的具体形式不做任何限制。
用户可以在电子设备上设置指纹、人脸、指静脉等生物特征信息并保存。在用户使用业务时,电子设备可以提示用户输入生物特征信息。当电子设备检测到用户输入生物特征信息后,对用户输入的生物特征信息与之前保存的生物特征信息进行匹配验证。若两者匹配,则电子设备根据保存的私钥对设备标识进行签名,从而生成校验值。电子设备将设备标识和校验值发送给验证服务器。验证服务器从保存的多个公钥中,确定与登录请求中的设备标识对应的公钥。验证服务器根据公钥对校验值进行验签以获得校验信息。若校验信息与设备标识匹配,则验证服务器确定用户身份合法,允许电子设备登录业务的验证服务器。
示例性的,参见图27a-图27d,当用户想要使用(例如首次使用)的业务为微信,预先设置的生物特征信息为指纹时,电子设备可以提示用户输入指纹信息。若用户输入的指纹信息与之前保存的指纹信息相匹配,则电子设备可以在成功登录微信的验证服务器后,显示微信服务界面。
在该方案中,电子设备出厂时预设有设备标识、私钥以及设备标识与私钥的对应关系,业务的验证服务器上预设有设备标识、公钥以及设备标识与公钥的对应关系。也就相当于,电子设备出厂时已经对业务进行了注册。在使用电子设备时,用户不需要进行业务注册就可以登录业务的验证服务器。并且,在登录业务的验证服务器时,用户不需要输入用户名或密码等信息,而只需要简单地通过指纹、人脸、指静脉等生物特征信息就可以登录业务,因而电子设备的使用效率会进一步提高,同时,用户的使用体验更好。
结合上述实施例及相应的附图,本申请实施例提供一种注册移动应用程序(App)的方法,该方法可以在具有图3所示的硬件/软件结构的电子设备中实现。如图28所示,该方法可以包括以下步骤:
步骤2801、电子设备在触摸屏上显示第一移动应用程序的注册界面,注册界面包括用户名输入区和密码输入区。
其中,该第一移动应用程序可以是微信、支付宝或微博等App。示例性地,如图5c所示,电子设备的触摸屏上显示了微信(即第一移动应用程序)的注册界面504,注册界面504包括用户名输入区505和密码输入区506。示例性地,如图6c所示,电子设备的触摸屏上显示了微信的注册界面607,注册界面607包括用户名输入区608和密码输入区609。示例性地,如图7c所示,电子设备的触摸屏上显示了微信的注册界面703,注册界面703包括用户名输入区704和密码输入区705。
步骤2802、电子设备接收用户在用户名输入区输入的用户名和在密码输入区输入的密码。
示例性的,如图5c、图6c或图7c所示,电子设备接收到用户在用户名输入区输入的用户名为“John”,在密码输入区输入的密码为“286346xtr”。
步骤2803、电子设备生成随机字符串。
关于随机字符串(salt)的描述可以参见上述实施例中的说明。其中,电子设备请求注册的移动应用程序不同,则注册时生成的salt也不同。
步骤2804、电子设备根据密码和随机字符串生成私钥和与私钥配对的公钥。
其中,随机字符串用于电子设备生成私钥和公钥,私钥用于电子设备生成校验值,公钥用于验证服务器对校验值进行验签。由于电子设备请求注册的移动应用程序不同,注册时生成的salt也不同。因而,即使用户为了记忆方便在注册多个移动应用程序采用了相同的用户名和密码,则由于不同移动应用程序对应的salt不同,因而不同移动应用程序对应的私钥和公钥也不同,电子设备根据不同的私钥生成的校验值也不同。
具体的,电子设备可以根据密码派生得到中间结果,然后根据中间结果和非对称密码算法生成公私钥对。示例性的,派生算法可以包括但不限于HASH算法、HMAC算法、CMAC算法或GMAC算法等单向算法。示例性的,非对称密码算法可以包括ECDSA算法、RSA算法或NTRU算法等。
步骤2805、电子设备向第一移动应用程序的验证服务器发送注册请求信息,注册请求信息包括用户名、公钥和随机字符串。
示例性的,当用户注册微信时使用的用户名为“John”,生成的公钥为“517653d004801d44b69f4fc6a115abff7ff563e3ac589caa1f1f14b5d94ad41ba5517cbb7c3fa2c4b92d739dbc22201f298b99f2fef84a96364ef8b65cafd6829”时,电子设备可以将用户名和公钥通过注册请求信息发送给验证服务器,以便于验证服务器保存用户名、公钥、随机字符串及他们之间的对应关系。
在本申请实施例提供的注册移动应用程序的方法中,电子设备将注册时用户输入的用户名、公钥和随机字符串发送给验证服务器进行保存,并未将用户输入的密码发送给验证服务器,因而不会发生密码的传输泄露。验证服务器中并未保存用户的密码,因而也不会发生由于验证服务器的校验环境不安全而导致的密码泄露。因此,本申请实施例提供的注册方法可以提高用户密码的安全性。
在本申请其他一些实施例中,在步骤2805之后,该方法还可以包括:
步骤2806、电子设备接收验证服务器返回的注册响应信息。
步骤2807、电子设备响应于该注册响应信息呈现提示信息,该提示信息表明注册成功。
这样,用户可以及时获知是否完成注册过程。示例性的,该提示信息可以是图5d中的注册完成提示框508,图6d中的注册完成提示框611或图7d中的注册完成提示框708。
在本申请其他一些实施例中,附图虽未示出,但在上述步骤2801之前,该方法还可以包括:
步骤2808、电子设备在触摸屏上显示第一移动应用程序的注册/登录界面,该注册/登录界面包括注册按钮。
示例性地,如图5b所示,显示了微信(即第一移动应用程序)的注册/登录界面500,注册/登录界面500包括注册按钮502。示例性的,如图6b所示,显示了微信的注册/登录界面600,注册/登录界面600包括注册按钮604。示例性的,如图7b所示,显示了微信的注册/登录界面700,注册/登录界面700包括注册按钮702。
步骤2809、电子设备检测到针对注册按钮的触摸手势。
示例性地,该触摸手势可以是图5b、图6b或图7b所示的对微信的注册/登录界面中的注册按钮的点击操作;在本申请其他一些实施例中,该触摸手势也可以是用户的手指对注册按钮的长按或者重压手势。在本申请实施例中对上述触摸手势不做具体限定。
上述步骤2801具体包括:电子设备响应于上述触摸手势,在触摸屏上显示第一移动应用程序的注册界面。
结合上述实施例及相应的附图,本申请另一实施例提供一种注册移动应用程序的方法,该方法可以在具有图3所示的硬件/软件结构的电子设备中实现。如图29所示,该方法可以包括以下步骤:
步骤2901、电子设备在触摸屏上显示设置界面,设置界面包括用户名输入区和密码输入区。
示例性的,该设置界面可以包括如图24b或如图24d所示的界面。
步骤2902、电子设备接收用户在用户名输入区输入的用户名和在密码输入区输入的密码。
示例性的,如图21b所示,电子设备接收用户输入的用户名为“John”,用户输入的密码为“286346xtr”。
步骤2903、当电子设备检测到针对第一移动应用程序对应的第一应用控件的第一操作时,电子设备生成第一随机字符串。
其中,应用控件用于设置应用程序。可以理解的是,设置界面可以是一个界面或多个界面,第一应用控件与用户名输入区域和密码输入区域可以在设置界面的同一界面上,也可以在设置界面的不同界面上,本申请实施例不予具体限定。示例性的,第一应用控件可以为如图24d所示的微信对应的复选框。
步骤2904、电子设备根据密码和第一随机字符串生成第一私钥和第一公钥,第一私钥和第一公钥配对使用。
其中,电子设备根据密码和随机字符串生成私钥和公钥的过程可以参见上述实施例中的相关描述,这里不予赘述。
步骤2905、电子设备向第一移动应用程序的验证服务器发送第一注册请求信息,第一注册请求信息包括用户名、第一公钥和第一随机字符串。
也就是说,当用户设置微信这一应用程序时,电子设备根据设置界面上输入的用户名和密码以及生产的第一随机字符串请求注册微信。
步骤2906、当电子设备检测到针对第二移动应用程序对应的第二应用控件的第二操作时,电子设备生成第二随机字符串。
示例性的,第二应用控件可以为如图24d所示的支付宝对应的复选框。
步骤2907、电子设备根据密码和第二随机字符串生成第二私钥和第二公钥,第二私钥和第二公钥配对使用。
步骤2908、电子设备向第二移动应用程序的验证服务器发送第二注册请求信息,第二注册请求信息包括用户名、第二公钥和第二随机字符串。
也就是说,当用户设置支付宝这一应用程序时,电子设备根据设置界面上输入的用户名和密码以及生成的第二随机字符串请求注册支付宝,第二随机字符串与第一随机字符串不同。
其中,当用户为了记忆方便在注册微信和支付宝时采用了相同的用户名和密码时,由于第二随机字符串与第一随机字符串不同,因而微信对应的第一私钥和第一公钥与支付宝对应的第二私钥和第二公钥也不同,电子设备根据不同的私钥生成的校验值也不同。
在本申请实施例提供的注册移动应用程序的方法中,电子设备可以采用相同的用户名和密码注册多个移动应用程序。即,电子设备可以预先、同时注册多个移动应用程序,减少注册移动应用程序的次数,避免用户记忆多组用户名和密码,提高用户使用体验。
并且,在本申请实施例提供的注册方法中,电子设备将注册时用户输入的用户名、公钥和随机字符串发送给验证服务器进行保存,并未将用户输入的密码发送给验证服务器,因而不会发生密码的传输泄露。验证服务器中并未保存用户的密码,因而也不会发生由于验证服务器的校验环境不安全而导致的密码泄露。因此,本申请实施例提供的注册方法可以提高用户密码的安全性。
在本申请其他一些实施例中,在上述步骤2905和步骤2908之后,电子设备还可以接收验证服务器发送的注册响应信息,这里不再赘述。
在本申请其他一些实施例中,在上述注册的相关步骤之后,该注册移动应用程序的方法还可以包括:电子设备保存用户名、密码、预设激活信息或私钥中的至少一种。用户后续可以根据电子设备中保存的用户名、密码、预设激活信息或私钥中的至少一种请求登录,从而减少用户的信息输入操作。
结合上述实施例及相应的附图,本申请另一实施例提供一种注册移动应用程序的方法,该方法可以在验证服务器中实现。如图30所示,该方法可以包括以下步骤:
步骤3001、验证服务器接收电子设备发送的注册请求信息,注册请求信息包括用户名、公钥和随机字符串。
步骤3002、验证服务器保存注册信息,注册信息包括用户名、公钥、字符串以及用户名与公钥和字符串的对应关系。
验证服务器保存的注册信息用于在后续电子设备请求登录时,根据注册信息进行用户身份验证。示例性的,验证服务器中保存的用户名、公钥和随机字符串(salt)之间的对应关系可以参见上述表2。
在本申请实施例提供的注册方法中,验证服务器接收注册时电子设备发送的用户输入的用户名、公钥和随机字符串并保存,并未接收用户的密码,因而不会发生密码的传输泄露。验证服务器中也并未保存用户的密码,因而也不会发生由于验证服务器的校验环境不安全而导致的密码泄露。因此,本申请实施例提供的注册方法可以提高用户密码的安全性。
结合上述实施例及相应的附图,本申请另一实施例提供一种登录移动应用程序的方法,该方法基于图28或图29所示的注册方法,可以在具有图3所示的硬件/软件结构的电子设备中实现。如图31所示,该方法可以包括:
步骤3101、电子设备在触摸屏上显示第一移动应用程序的登录界面,登录界面包括提示信息,提示信息用于提示用户输入激活信息,激活信息包括生物特征信息。
其中,生物特征信息可以包括但不限于指纹、人脸、虹膜、指静脉和耳廓等。示例性的,在用户请求登录微信(即第一移动应用程序)时,例如,在用户点击桌面上的微信图标后,如图19a或图27b所示,电子设备可以提示用户输入指纹信息(即生物特征信息)。示例性的,该提示信息可以是图19a中的提示信息1901。
步骤3102、电子设备接收用户输入的激活信息。
示例性的,如图27b所示,电子设备可以接收用户输入的指纹信息。
步骤3103、若激活信息与预设的激活信息一致,则电子设备获取与预设的激活信息对应的第一用户名和第一私钥。
步骤3104、电子设备向第一移动应用程序的验证服务器发送登录请求信息,登录请求信息包括第一用户名,第一用户名用于验证服务器确定与第一用户名对应的第一公钥。
步骤3105、电子设备根据第一私钥对第一信息进行签名并生成校验值。
步骤3106、电子设备将校验值发送给验证服务器,校验值用于验证服务器根据第一公钥进行验签。
其中,关于签名、验签以及电子设备生成校验值的过程的说明可以参见前述实施例中的相关描述,这里不再赘述。在激活信息与预设的激活信息一致时,电子设备自动获取与预设的激活信息对应的第一用户名和第一私钥,自动执行步骤3104-3106,从而将校验值发送给验证服务器,便于验证服务器根据校验值确定是否允许电子设备登录。也就是说,用户可以通过生物特征信息自动登录,而不需要输入用户名和密码。
具体的,电子设备中可以保存有注册信息与预设激活信息的对应关系,该注册信息可以包括用户名、私钥以及用户名与私钥的对应关系。当激活信息与预设的激活信息一致时,电子设备可以自动获取与预设的激活信息对应的注册信息中的用户名和私钥。
在本申请实施例提供的登录方法中,用户不需要在登录时繁琐地输入用户名和密码,而可以通过简单、自然且安全的生物特征信息就可以自动获取用户名和私钥,从而可以减少根据密码生成私钥的步骤,减少用户的输入操作,提高登录过程的安全性。
并且,在本申请实施例提供的登录方法中,由于电子设备并未将密码发送给验证服务器进行验证,因而不会出现在传输过程中泄漏密码的技术问题,也不会出现由于校验环境不安全导致密码泄露的问题。
在本申请实施例中,电子设备在每次请求登录时,用于生成校验值的第一信息可以不同或大概率不同。这样,电子设备每次发送的校验值也不同或者大概率不同。即使校验值在某次或某几次传输过程中被截获,则由于电子设备每次发送的校验值都不同或者大概率不同,截获者并不知道电子设备下一次发送的校验值是什么,因而截获者无法仿冒正确的第一校验值,从而无法仿冒合法的用户身份登录微信的验证服务器,这样就增强了登录移动应用程序的安全性。
在本申请一些实施例中,上述第一信息为电子设备与验证服务器约定的信息。示例性的,第一信息可以为如表1所示的第一信息集合中的信息。
在本申请另一些实施例中,第一信息为电子设备从验证服务器接收的信息。该种情况下,在上述步骤3105之前,该方法可以包括:
步骤3107、电子设备接收验证服务器发送的第一信息。
在本申请一些实施例中,验证服务器发送的第一信息中可以包括随机字符串。这样,验证服务器每次向电子设备发送的第一信息均不相同。
本申请另一实施例提供了一种登录移动应用程序的方法,该方法与图31描述的登录方法的区别在于,当激活信息与预设的激活信息一致时,电子设备获取的是与预设的激活信息对应的第一用户名和第一密码,而不是与预设的激活信息对应的第一用户名和第一私钥。电子设备根据第一密码生成第一私钥,从而根据第一私钥生成校验值。
本申请另一实施例提供了一种登录移动应用程序的方法,该方法与图31描述的登录方法的区别在于,当激活信息与预设的激活信息一致时,电子设备获取的是与预设的激活信息对应的第一用户名和第一密码,而不是与预设的激活信息对应的第一用户名和第一私钥。电子设备在向验证服务器发送登录请求信息后接收电子设备发送的第一随时字符串,电子设备根据第一密码和第一随机字符串生成第一私钥,从而根据第一私钥生成校验值。
本申请另一实施例提供了一种登录移动应用程序的方法,该方法与图31描述的登录方法的区别在于,当激活信息与预设的激活信息一致时,电子设备获取的是与预设的激活信息对应的第一用户名、第一密码和第一随机字符串,而不是与预设的激活信息对应的第一用户名和第一私钥。电子设备根据第一密码和第一随机字符串生成第一私钥,从而根据第一私钥生成校验值。
由图28或图29所示的注册过程可知,若电子设备请求注册的移动应用程序不同,则注册时生成的随机字符串也不同。这样,即使用户为了记忆方便在注册多个移动应用程序采用了相同的用户名和密码,则由于不同移动应用程序对应的随机字符串不同,因而不同移动应用程序对应的私钥和公钥也不同,电子设备根据不同的私钥生成的校验值也不同。因此,在使用相同的用户名和密码注册多个移动应用程序时,明文密码不会被泄露,即使其中一个移动应用程序的校验值发生泄露,其他移动应用程序的校验值也不容易根据泄露的校验值进行仿冒,因而可以防止移动应用程序之间校验值的交叉泄露,提高登录过程的安全性。
结合上述实施例及相应的附图,本申请另一实施例提供一种登录移动应用程序的方法,该方法可以在具有图3所示的硬件/软件结构的电子设备中实现。如图32所示,该方法可以包括:
步骤3201、电子设备在触摸屏上显示第一移动应用程序的登录界面,登录界面包括提示信息,提示信息用于提示用户输入激活信息,激活信息包括生物特征信息。
示例性的,如图27a所示,在用户首次或再次请求登录微信(即第一移动应用程序)时,如图27b所示,电子设备可以提示用户输入指纹信息(即生物特征信息)。
步骤3202、电子设备接收用户输入的激活信息。
示例性的,如图27b所示,电子设备可以接收用户输入的指纹信息。
步骤3203、若激活信息与预设的激活信息一致,则电子设备获取与预设的激活信息对应的第一设备标识和第一私钥。
示例性的,设备标识可以是IMEI、IMSI、MEID、SN、ICCID、MAC地址或电话号码等。
步骤3204、电子设备向第一移动应用程序的验证服务器发送登录请求信息,登录请求信息包括第一设备标识,第一设备标识用于验证服务器确定与第一设备标识对应的第一公钥。
步骤3205、电子设备根据第一私钥对第一信息进行签名并生成校验值。
步骤3206、电子设备将校验值发送给验证服务器,校验值用于验证服务器根据公钥进行验签。
在激活信息与预设的激活信息一致时,电子设备自动获取与预设的激活信息对应的第一设备标识和第一私钥,自动执行步骤3204-3206,从而将校验值发送给验证服务器,便于验证服务器根据校验值确定是否允许电子设备登录。也就是说,用户可以通过生物特征信息自动登录,而不需要输入用户名和密码。
在本申请一些实施例中,电子设备在出厂时可以保存有注册信息,在用户设置预设激活信息后,电子设备可以保存注册信息与预设激活信息的对应关系。其中,该注册信息可以包括设备标识、私钥以及设备标识与私钥的对应关系。当激活信息与预设的激活信息一致时,电子设备可以自动获取与预设的激活信息对应的注册信息中的设备标识和私钥。
在本申请实施例提供的登录方法中,电子设备在出厂时已经注册了各移动应用程序,用户不需要在登录时繁琐地输入用户名和密码,而可以通过简单、自然且安全的生物特征信息就可以自动获取用户名和私钥,从而可以减少根据密码生成私钥的步骤,减少用户的输入操作,提高登录过程的安全性。
并且,在本申请实施例提供的登录方法中,由于电子设备并未将密码发送给验证服务器进行验证,因而不会出现在传输过程中泄漏密码的技术问题,也不会出现由于校验环境不安全导致密码泄露的问题。
此外,第一信息也可以是与验证服务器约定的信息或者从验证服务器接收到的信息。
当第一信息为从验证服务器接收的信息时,第一信息也可以包括随机字符串,这里不予赘述。在步骤3205之前,该方法还可以包括:
步骤3207、电子设备接收验证服务器发送的第一信息。
结合上述实施例及相应的附图,本申请另一实施例提供一种登录移动应用程序的方法,该方法基于图28或图29所示的注册方法,可以在具有图3所示的硬件/软件结构的电子设备中实现。如图33所示,该方法可以包括:
步骤3301、电子设备在触摸屏上显示第一移动应用程序的登录界面,登录界面包括用户名输入区和密码输入区。
示例性的,如图9a所示,电子设备的触摸屏显示了微信(第一移动应用程序)的登录界面900,登录界面900上包括用户名输入区901和密码输入区902。
步骤3302、电子设备接收用户在用户名输入区输入的第一用户名,第一用户名用于第一移动应用程序的验证服务器确定与第一用户名对应的第一公钥。
示例性的,如图9a所示,电子设备接收用户输入的第一用户名为“John”。
步骤3303、电子设备向验证服务器发送登录请求信息,登录请求信息包括第一用户名。
步骤3304、电子设备接收验证服务器发送的与第一用户名对应的第一随机字符串。
步骤3305、电子设备接收用户在密码输入区输入的第一密码。
示例性的,如图9a所示,电子设备接收用户输入的第一密码为“286346”。
步骤3306、电子设备根据第一密码和第一随机字符串生成第一私钥。
步骤3307、电子设备根据第一私钥对第一信息进行签名并生成校验值。
步骤3308、电子设备将校验值发送给验证服务器,校验值用于验证服务器根据第一公钥进行验签。
在本申请实施例提供的登录移动应用程序的方法中,由于电子设备并未将密码发送给验证服务器进行验证,因而不会出现在传输过程中泄漏密码的问题,也不会出现由于校验环境不安全导致密码泄露的问题。
并且,由图28或29所示的注册方法可知,当使用相同的用户名和密码注册时,不同移动应用程序对应的用于生成私钥的随机字符串不同,因而不同移动应用程序对应的私钥、公钥和校验值都不同,可以防止不同应用程序之间校验值的交叉泄露,提高登录的安全性。
此外,第一信息也可以是与验证服务器约定的信息或者从验证服务器接收到的信息。
当第一信息为从验证服务器接收的信息时,第一信息也可以包括随机字符串,这里不予赘述。在步骤3307之前,该方法还可以包括:
步骤3309、电子设备接收验证服务器发送的第一信息。
结合上述实施例及相应的附图,本申请另一实施例提供一种登录移动应用程序的方法,该方法基于图30所示的注册方法,可以在验证服务器中实现。如图34所示,该方法可以包括以下步骤:
步骤3401、验证服务器接收电子设备发送的登录请求信息,登录请求信息包括第一用户名。
步骤3402、验证服务器确定与第一用户名对应的第一公钥和第一随机字符串。
步骤3403、验证服务器将第一随机字符串发送给电子设备,第一随机字符串用于电子设备生成第一私钥,第一私钥用于电子设备生成校验值。
步骤3404、验证服务器接收电子设备发送的校验值。
步骤3405、验证服务器根据第一公钥对校验值进行验签以获得校验信息。
步骤3406、验证服务器根据校验信息和第一信息确定是否允许电子设备登录。
在本申请实施例提供的登录方法中,验证服务器接收的是私钥对第一信息签名后的校验值,并未接收电子设备请求登录时发送的密码,因而也不会根据用户的密码进行用户身份验证,因此不会出现在传输过程中泄漏密码的技术问题,也不会出现由于校验环境不安全导致密码泄露的问题。
具体的,验证服务器中可以保存有注册信息,注册信息包括用户名、公钥、随机字符串以及用户名与公钥和随机字符串的对应关系。
在本申请其他一些实施例中,在步骤3401之后,该方法还可以包括:
步骤3407、验证服务器获取第一信息。
步骤3408、验证服务器向电子设备发送第一信息,第一信息用于电子设备生成校验值。
具体的,验证服务器每次获取的第一信息可以不同或大概率不同,例如第一信息包括第二随机字符串。这样,电子设备每次根据第一信息发送的校验值也不同或者大概率不同。即使校验值在某次或某几次传输过程中被截获,则由于电子设备每次发送的校验值都不同或者大概率不同,截获者并不知道电子设备下一次发送的校验值是什么,因而截获者无法仿冒正确的校验值,从而无法仿冒合法的用户身份登录微信的验证服务器,这样就增强了登录移动应用程序的安全性。
结合上述实施例及相应的附图,本申请另一实施例提供一种注册和登录移动应用程序的方法,该方法可以在具有图3所示的硬件/软件结构的电子设备中实现。该方法可以包括以下步骤:
步骤301、电子设备在触摸屏上显示设置界面,设置界面包括用户名输入区和密码输入区。
步骤302、电子设备接收用户在用户名输入区输入的用户名和在密码输入区输入的密码。
步骤303、当电子设备检测到针对第一移动应用程序对应的第一应用控件的第一操作时,电子设备生成第一随机字符串。
步骤304、电子设备根据密码和第一随机字符串生成第一私钥和第一公钥,第一私钥和第一公钥配对使用。
步骤305、电子设备向第一移动应用程序的验证服务器发送第一注册请求信息,第一注册请求信息包括用户名、第一公钥和第一随机字符串。
步骤306、电子设备接收第一移动应用程序的验证服务器发送的注册响应信息。
步骤307、当电子设备检测到针对第二移动应用程序对应的第二应用控件的第二操作时,电子设备生成第二随机字符串。
步骤308、电子设备根据密码和第二随机字符串生成第二私钥和第二公钥,第二私钥和第二公钥配对使用。
步骤309、电子设备向第二移动应用程序的验证服务器发送第二注册请求信息,第二注册请求信息包括用户名、第二公钥和第二随机字符串。
步骤310、电子设备接收第二移动应用程序的验证服务器发送的注册响应信息。
步骤311、电子设备接收用户输入的预设激活信息并保存预设激活信息与注册信息的对应关系,预设激活信息包括生物特征信息,注册信息包括第一注册信息和第二注册信息,第一注册信息包括用户名和第一私钥,第二注册信息包括用户名和第二私钥。
步骤312、电子设备在检测到用户针对于第一移动应用程序的操作时,在触摸屏上显示第一移动应用程序的登录界面,登录界面包括提示信息,提示信息用于提示用户输入激活信息。
步骤313、电子设备接收用户输入的激活信息。
步骤314、若激活信息与预设的激活信息一致,则电子设备获取与预设的激活信息对应的用户名和第一私钥。
步骤315、电子设备向第一移动应用程序的验证服务器发送登录请求信息,登录请求信息包括用户名,用户名用于第一移动应用程序的验证服务器确定与用户名对应的第一公钥。
步骤316、电子设备接收验证服务器发送的第一信息。
步骤317、电子设备根据第一私钥对第一信息进行签名并生成校验值。
步骤318、电子设备将校验值发送给第一移动应用程序的验证服务器,校验值用于第一移动应用程序的验证服务器根据公钥进行验签。
步骤319、在检测到用户针对于第二移动应用程序的操作时,在触摸屏上显示第二移动应用程序的登录界面,登录界面包括提示信息,提示信息用于提示用户输入激活信息。
步骤320、电子设备接收用户输入的激活信息。
步骤321、若激活信息与预设的激活信息一致,则电子设备获取与预设的激活信息对应的用户名和第二私钥。
步骤322、电子设备向第一移动应用程序的验证服务器发送登录请求信息,登录请求信息包括用户名,用户名用于第二移动应用程序的验证服务器确定与用户名对应的第二公钥。
步骤323、电子设备接收验证服务器发送的第一信息,该第一信息包括随机字符串。
步骤324、电子设备根据第二私钥对第一信息进行签名并生成校验值。
步骤325、电子设备将校验值发送给第二移动应用程序的验证服务器,校验值用于第二移动应用程序的验证服务器根据公钥进行验签。
在本申请实施例提供的注册和登录移动应用程序的方案中,由于电子设备并未将密码发送给验证服务器进行保存和验证,因而不会出现在传输过程中泄漏密码的技术问题,也不会出现由于校验环境不安全而导致密码泄露的问题。
此外,值得注意的是,在现有技术中,电子设备向验证服务器发送的密码通常为一串有限长度的数据,例如6-8位长度的字母数字组合。在本申请上述实施例中,电子设备向验证服务器发送的公钥和校验值通常具有固定的格式,且与密码的位数不同。以ECDSA-256为例,公钥和校验值都是一串64-byte(字节)长的字符串,且存在匹配关系。
可以理解的是,为了实现上述功能,电子设备包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例可以根据上述方法示例对电子设备、服务器进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
在采用对应各个功能划分各个功能模块的情况下,图35示出了上述实施例中涉及的电子设备的一种可能的组成示意图,如图35所示,该电子设备3500可以包括:显示单元3501、输入单元3502、生成单元3503、发送单元3504和接收单元3505。
在本申请一些实施例中,显示单元3501可以用于支持电子设备3500执行图28所示注册方法中的步骤2801和步骤2807。输入单元3502可以用于支持电子设备3500执行图28所示注册方法中的步骤2802。生成单元3503可以用于支持电子设备3500执行图28所示注册方法中的步骤2803和步骤2804。发送单元3504可以用于支持电子设备3500执行图28所示注册方法中的步骤2805。接收单元3505可以用于支持电子设备3500执行图28所示注册方法中的步骤2806。
在本申请另一些实施例中,显示单元3501可以用于支持电子设备3500执行图29所示注册方法中的步骤2901。输入单元3502可以用于支持电子设备3500执行图29所示注册方法中的步骤2902。生成单元3503可以用于支持电子设备3500执行图29所示注册方法中的步骤2903、步骤2904、步骤2906和步骤2907。发送单元3504可以用于支持电子设备3500执行图29所示注册方法中的步骤2905和步骤2908。
在采用集成单元的情况下,可将上述输入单元3502和生成单元3503集成为处理模块,将上述显示单元3501集成为显示模块,将上述发送单元3504和接收单元3505集成为通信模块。
需要说明的是,上述方法实施例涉及的各步骤的所有相关内容均可以援引到对应功能模块的功能描述,在此不再赘述。
本申请实施例提供的电子设备,用于执行上述注册移动应用程序的方法,因此可以达到与图5a-图27d中描述的注册移动应用程序的方法相同的效果。
在采用对应各个功能划分各个功能模块的情况下,图36示出了上述实施例中涉及的电子设备的一种可能的组成示意图,如图36所示,该电子设备3600可以包括:显示单元3601、输入单元3602、生成单元3603、发送单元3604、接收单元3605和获取单元3606。
在本申请一些实施例中,显示单元3601可以用于支持电子设备3600执行图31所示登录方法中的步骤3101。输入单元3602可以用于支持电子设备3600执行图31所示登录方法中的步骤3102。生成单元3603可以用于支持电子设备3600执行图31所示登录方法中的步骤3105。发送单元3604可以用于支持电子设备3600执行图31所示登录方法中的步骤3104和步骤3106。接收单元3605可以用于支持电子设备3600执行图31所示登录方法中的步骤3107。获取单元3606可以用于支持电子设备3600执行图31所示登录方法中的步骤3103。
在本申请其他一些实施例中,显示单元3601可以用于支持电子设备3600执行图32所示登录方法中的步骤3201。输入单元3602可以用于支持电子设备3600执行图32所示登录方法中的步骤3202。生成单元3603可以用于支持电子设备3600执行图32所示登录方法中的步骤3205。发送单元3604可以用于支持电子设备3600执行图32所示登录方法中的步骤3204和步骤3206。接收单元3605可以用于支持电子设备3600执行图32所示登录方法中的步骤3207。获取单元3606可以用于支持电子设备3600执行图32所示登录方法中的步骤3203。
在本申请其他一些实施例中,显示单元3601可以用于支持电子设备3600执行图33所示登录方法中的步骤3301。输入单元3602可以用于支持电子设备3600执行图33所示登录方法中的步骤3302和步骤3306。生成单元3603可以用于支持电子设备3600执行图33所示登录方法中的步骤3309和步骤3308。发送单元3604可以用于支持电子设备3600执行图33所示登录方法中的步骤3303、步骤3304。接收单元3605可以用于支持电子设备3600执行图33所示登录方法中的步骤3305和步骤3307。
在采用集成单元的情况下,可将上述输入单元3602、生成单元3603和获取单元3606集成为处理模块,将上述显示单元3601集成为显示模块,将上述发送单元3604和接收单元3605集成为通信模块。
需要说明的是,上述方法实施例涉及的各步骤的所有相关内容均可以援引到对应功能模块的功能描述,在此不再赘述。
本申请实施例提供的电子设备,用于执行上述登录移动应用程序的方法,因此可以达到与图5a-图27d中描述的登录移动应用程序的方法相同的效果。
如图37所示,本申请另一实施例公开了一种电子设备3700,该电子设备3700可以包括:触摸屏3701,其中,触摸屏3701包括触敏表面3706和显示屏3707;一个或多个处理器3702;存储器3703;多个应用程序3708;以及一个或多个计算机程序3704,上述各器件可以通过一个或多个通信总线3705连接。其中该一个或多个计算机程序3704被存储在上述存储器3703中并被配置为被该一个或多个处理器3702执行,该一个或多个计算机程序3704包括指令,上述指令可以用于使得电子设备3700执行如图28、图29、图31、图32或图33中任一附图中的相关方法步骤实现上述实施例中的注册或登录移动应用程序的方法。
其中,处理器3702可以是中央处理器(central processing unit,CPU),图形处理器(graphics processing unit,GPU),通用处理器,数字信号处理器(digital signalprocessor,DSP)。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器3702也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等等。
显示屏3707可以用于显示由用户输入的信息、提供给用户的信息以及终端的各种菜单的设备,具体可以采用液晶显示器、有机发光二极管等形式来配置显示器。触敏表面3706可以用于采集在其上或附近的触摸事件,并将采集到的触摸信息发送给其他器件(例如处理器等)。
存储器3703可以包括存储器件、闪存器件或其他易失性固态存储器件等。
当然,电子设备3700包括但不限于上述所列举的器件,例如,上述电子设备3700还可以包括射频电路、定位装置、传感器等等,当电子设备3700包含有其他的器件时,上述电子设备3700可以为图3所示的手机。
本申请另外一些实施例还提供了一种计算机存储介质,该计算机存储介质中存储有计算机程序代码,当上述处理器执行该计算机程序代码时,该电子设备执行如图28、图29、图31、图32或图33中任一附图中的相关方法步骤实现上述实施例中的注册或登录移动应用程序的方法。
本申请另外一些实施例还提供了一种计算机程序产品,当该计算机程序产品在计算机上运行时,使得计算机执行如图28、图29、图30或图31中任一附图中的相关方法步骤实现上述实施例中的注册或登录移动应用程序的方法。
本申请另外一些实施例还提供了一种电子设备,电子设备包括处理器和存储器,存储器用于存储计算机程序代码,计算机程序代码包括计算机指令,当处理器执行计算机指令时,控制设备执行如图28、图29、图31、图32或图33中任一附图中的相关方法步骤实现上述实施例中的注册或登录移动应用程序的方法。该电子设备可以是一个集成电路IC,也可以是一个片上系统(system on chip,SOC)。其中集成电路可以是通用集成电路,也可以是一个现场可编程门阵列(field programmable gate array,FPGA),也可以是一个专用集成电路(application specific integrated circuit,ASIC)。
本申请另外一些实施例还提供了一种注册和登录移动应用程序的装置,该装置具有实现上述方法实际中电子设备行为的功能。功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括一个或多个与上述功能相对应的模块。
其中,本申请实施例提供的电子设备、计算机存储介质、计算机程序产品或装置均用于执行上文所提供的对应的方法,因此,其所能达到的有益效果可参考上文所提供的对应的方法中的有益效果,此处不再赘述。
在采用对应各个功能划分各个功能模块的情况下,图38示出了上述实施例中涉及的验证服务器的一种可能的组成示意图,如图38所示,该验证服务器3800可以包括:接收单元3801、和保存单元3802。
其中,接收单元3801可以用于支持验证服务器3800执行图30所示注册方法中的步骤3001。保存单元3802可以用于支持验证服务器3800执行图30所示注册方法中的步骤3002。
需要说明的是,上述方法实施例涉及的各步骤的所有相关内容均可以援引到对应功能模块的功能描述,在此不再赘述。
本申请实施例提供的电子设备,用于执行上述登录移动应用程序的方法,因此可以达到与图5a-图27d中描述的注册移动应用程序的方法相同的效果。
在采用对应各个功能划分各个功能模块的情况下,图39示出了上述实施例中涉及的验证服务器的一种可能的组成示意图,如图39所示,该验证服务器3900可以包括:接收单元3901、确定单元3902、发送单元3903、处理单元3904和获取单元3905。
其中,接收单元3901可以用于支持验证服务器3900执行图34所示登录方法中的步骤3401、步骤3404。确定单元3902可以用于支持验证服务器3900执行图34所示登录方法中的步骤3402、步骤3406。发送单元3903可以用于支持验证服务器3900执行图34所示登录方法中的步骤3403、步骤3408。处理单元3904可以用于支持验证服务器3900执行图34所示登录方法中的步骤3405。获取单元3905可以用于支持验证服务器3900执行图34所示登录方法中的步骤3407。
在采用集成单元的情况下,可将上述确定单元3902、处理单元3904和获取单元3905集成为处理模块,将上述发送单元3903和接收单元3901集成为通信模块。
需要说明的是,上述方法实施例涉及的各步骤的所有相关内容均可以援引到对应功能模块的功能描述,在此不再赘述。
本申请实施例提供的电子设备,用于执行上述登录移动应用程序的方法,因此可以达到与图5a-图27d中描述的登录移动应用程序的方法相同的效果。
如图40所示,本申请另一实施例公开了一种电子设备4000,该电子设备4000可以包括:包括至少一个处理器4001,通信总线4002,存储器4003、至少一个通信接口4004以及计算机程序4005。上述各器件可以通过通信总线4002连接。其中,计算机程序4005被存储在上述存储器4003中并被配置为被该至少一个处理器4001执行,该计算机程序4005包括指令,上述指令可以用于使得验证服务器4000执行如图30中的相关方法步骤实现上述实施例中的注册移动应用程序的方法,或图34中的相关方法步骤实现上述实施例中的登录移动应用程序的方法。
本申请另一实施例还提供了一种系统,可以包括如图35-37中所示的电子设备和图38-40中所示的验证服务器。电子设备和验证服务器用于执行上述方法实施例中的注册和登录移动应用程序的方法。
需要说明的是,本申请实施例中对单元的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。本发明实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
上述实施例中所用,根据上下文,术语“当…时”可以被解释为意思是“如果…”或“在…后”或“响应于确定…”或“响应于检测到…”。类似地,根据上下文,短语“在确定…时”或“如果检测到(所陈述的条件或事件)”可以被解释为意思是“如果确定…”或“响应于确定…”或“在检测到(所陈述的条件或事件)时”或“响应于检测到(所陈述的条件或事件)”。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本申请实施例的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如DVD)或者半导体介质(例如固态硬盘)等。
为了解释的目的,前面的描述是通过参考具体实施例来进行描述的。然而,上面的示例性的讨论并非意图是详尽的,也并非意图要将本申请限制到所公开的精确形式。根据以上教导内容,很多修改形式和变型形式都是可能的。选择和描述实施例是为了充分阐明本申请的原理及其实际应用,以由此使得本领域的其他技术人员能够充分利用具有适合于所构想的特定用途的各种修改的本申请以及各种实施例。

Claims (19)

1.一种注册移动应用程序的方法,所述方法在具有触摸屏的电子设备中实现,其特征在于,所述方法包括:
所述电子设备在所述触摸屏上显示第一移动应用程序的注册界面,所述注册界面包括用户名输入区和密码输入区;
所述电子设备接收用户在所述用户名输入区输入的用户名和在所述密码输入区输入的密码;
所述电子设备生成随机字符串;
所述电子设备根据所述密码和所述随机字符串生成私钥和公钥,所述私钥和所述公钥配对使用;
所述电子设备向所述第一移动应用程序的验证服务器发送注册请求信息,所述注册请求信息包括所述用户名、所述公钥和所述随机字符串。
2.一种注册移动应用程序的方法,所述方法在具有触摸屏的电子设备中实现,其特征在于,所述方法包括:
所述电子设备在所述触摸屏上显示设置界面,所述设置界面包括用户名输入区和密码输入区;
所述电子设备接收用户在所述用户名输入区输入的用户名和在所述密码输入区输入的密码;
当所述电子设备检测到针对第一移动应用程序对应的第一应用控件的第一操作时,所述电子设备生成第一随机字符串;
所述电子设备根据所述密码和所述第一随机字符串生成第一私钥和第一公钥,所述第一私钥和所述第一公钥配对使用;
所述电子设备向所述第一移动应用程序的验证服务器发送第一注册请求信息,所述第一注册请求信息包括所述用户名、所述第一公钥和所述第一随机字符串;
当所述电子设备检测到针对第二移动应用程序对应的第二应用控件的第二操作时,所述电子设备生成第二随机字符串;
所述电子设备根据所述密码和所述第二随机字符串生成第二私钥和第二公钥,所述第二私钥和所述第二公钥配对使用;
所述电子设备向所述第二移动应用程序的验证服务器发送第二注册请求信息,所述第二注册请求信息包括所述用户名、所述第二公钥和所述第二随机字符串。
3.根据权利要求1或2所述的方法,其特征在于,所述第一移动应用程序为微信或支付宝。
4.一种登录移动应用程序的方法,所述方法在具有触摸屏的电子设备中实现,其特征在于,所述方法包括:
所述电子设备在所述触摸屏上显示第一移动应用程序的登录界面,所述登录界面包括提示信息,所述提示信息用于提示用户输入激活信息,所述激活信息包括生物特征信息;
所述电子设备接收用户输入的激活信息;
若所述激活信息与预设的激活信息一致,则所述电子设备获取与所述预设的激活信息对应的第一用户名和第一私钥;
所述电子设备向所述第一移动应用程序的验证服务器发送登录请求信息,所述登录请求信息包括所述第一用户名,所述第一用户名用于所述验证服务器确定与所述第一用户名对应的第一公钥;所述第一私钥和第一公钥由电子设备根据密码和第一随机字符串生成,所述第一随机字符串由所述电子设备检测到针对第一移动应用程序对应的第一应用控件的第一操作时生成;
所述电子设备根据所述第一私钥对第一信息进行签名并生成校验值;
所述电子设备将所述校验值发送给所述验证服务器,所述校验值用于所述验证服务器根据所述第一公钥进行验签。
5.根据权利要求4所述的方法,其特征在于,所述第一用户名为第一设备标识。
6.根据权利要求5所述的方法,其特征在于,所述电子设备中保存有注册信息与预设激活信息的对应关系,所述注册信息包括用户名、私钥以及所述用户名与所述私钥的对应关系。
7.根据权利要求4-6任一项所述的方法,其特征在于,在所述电子设备根据所述第一私钥对第一信息进行签名并生成校验值之前,所述方法还包括:
所述电子设备接收所述验证服务器发送的所述第一信息。
8.根据权利要求7所述的方法,其特征在于,所述第一信息包括第二随机字符串。
9.一种电子设备,其特征在于,包括:
显示单元,用于显示第一移动应用程序的注册界面,所述注册界面包括用户名输入区和密码输入区;
输入单元,用于接收用户在所述用户名输入区输入的用户名和在所述密码输入区输入的密码;
生成单元,用于生成随机字符串;
所述生成单元还用于,根据所述密码和所述随机字符串生成私钥和公钥,所述私钥和所述公钥配对使用;
发送单元,用于向所述第一移动应用程序的验证服务器发送注册请求信息,所述注册请求信息包括所述用户名、所述公钥和所述随机字符串。
10.一种电子设备,其特征在于,包括:
显示单元,用于在所述显示单元上显示设置界面,所述设置界面包括用户名输入区和密码输入区;
输入单元,用于接收用户在所述用户名输入区输入的用户名和在所述密码输入区输入的密码;
生成单元,用于当检测到针对第一移动应用程序对应的第一应用控件的第一操作时,所述电子设备生成第一随机字符串;
所述生成单元还用于,根据所述密码和所述第一随机字符串生成第一私钥和第一公钥,所述第一私钥和所述第一公钥配对使用;
发送单元,用于向所述第一移动应用程序的验证服务器发送第一注册请求信息,所述第一注册请求信息包括所述用户名、所述第一公钥和所述第一随机字符串;
所述生成单元还用于,当检测到针对第二移动应用程序对应的第二应用控件的第二操作时,所述电子设备生成第二随机字符串;
所述生成单元还用于,根据所述密码和所述第二随机字符串生成第二私钥和第二公钥,所述第二私钥和所述第二公钥配对使用;
所述发送单元还用于,向所述第二移动应用程序的验证服务器发送第二注册请求信息,所述第二注册请求信息包括所述用户名、所述第二公钥和所述第二随机字符串。
11.根据权利要求9或10所述的电子设备,其特征在于,所述第一移动应用程序为微信或支付宝。
12.一种电子设备,其特征在于,包括:
显示单元,用于显示第一移动应用程序的登录界面,所述登录界面包括提示信息,所述提示信息用于提示用户输入激活信息,所述激活信息包括生物特征信息;
检测单元,用于接收用户输入的激活信息;
获取单元,用于获取与预设的激活信息对应的第一用户名和第一私钥;
发送单元,用于向所述第一移动应用程序的验证服务器发送登录请求信息,所述登录请求信息包括所述第一用户名,所述第一用户名用于所述验证服务器确定与所述第一用户名对应的第一公钥;所述第一私钥和第一公钥由电子设备根据密码和第一随机字符串生成,所述第一随机字符串由所述电子设备检测到针对第一移动应用程序对应的第一应用控件的第一操作时生成;
生成单元,用于根据所述第一私钥对第一信息进行签名并生成校验值;
所述发送单元还用于,将所述校验值发送给所述验证服务器,所述校验值用于所述验证服务器根据所述第一公钥进行验签。
13.根据权利要求12所述的电子设备,其特征在于,所述第一用户名为第一设备标识。
14.根据权利要求13所述的电子设备,其特征在于,所述电子设备中保存有注册信息与预设激活信息的对应关系,所述注册信息包括用户名、私钥以及所述用户名与所述私钥的对应关系。
15.根据权利要求12-14任一项所述的电子设备,其特征在于,还包括:
接收单元,用于在处理单元根据所述第一私钥对第一信息进行签名并生成校验值之前,接收所述验证服务器发送的所述第一信息。
16.根据权利要求15所述的电子设备,其特征在于,所述第一信息包括第二随机字符串。
17.一种电子设备,其特征在于,包括一个或多个处理器和一个或多个存储器;
所述一个或多个存储器与所述一个或多个处理器耦合,所述一个或多个存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令,当所述一个或多个处理器执行所述计算机指令时,所述电子设备执行如权利要求1-3任一项所述的注册移动应用程序的方法或4-8任一项所述的登录移动应用程序的方法。
18.一种计算机存储介质,其特征在于,包括计算机指令,当所述计算机指令在电子设备上运行时,使得所述电子设备执行如权利要求1-3任一项所述的注册移动应用程序的方法或4-8任一项所述的登录移动应用程序的方法。
19.一种计算机程序产品,其特征在于,当所述计算机程序产品在计算机上运行时,使得所述计算机执行如权利要求1-3任一项所述的注册移动应用程序的方法或4-8任一项所述的登录移动应用程序的方法。
CN201810445331.4A 2018-05-10 2018-05-10 一种注册、登录移动应用程序的方法及电子设备 Active CN110474864B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810445331.4A CN110474864B (zh) 2018-05-10 2018-05-10 一种注册、登录移动应用程序的方法及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810445331.4A CN110474864B (zh) 2018-05-10 2018-05-10 一种注册、登录移动应用程序的方法及电子设备

Publications (2)

Publication Number Publication Date
CN110474864A CN110474864A (zh) 2019-11-19
CN110474864B true CN110474864B (zh) 2021-05-07

Family

ID=68503950

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810445331.4A Active CN110474864B (zh) 2018-05-10 2018-05-10 一种注册、登录移动应用程序的方法及电子设备

Country Status (1)

Country Link
CN (1) CN110474864B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111460434A (zh) * 2020-03-24 2020-07-28 北京大米未来科技有限公司 一种登录认证方法、装置、存储介质及电子设备
CN111444551B (zh) * 2020-04-25 2023-06-13 中信银行股份有限公司 账户的注册与登录方法、装置、电子设备及可读存储介质
CN111753170B (zh) * 2020-07-04 2021-08-17 上海德吾信息科技有限公司 一种大数据快速检索系统及方法
CN113709115B (zh) * 2021-08-10 2023-06-06 亚信科技(成都)有限公司 认证方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105574403A (zh) * 2015-12-14 2016-05-11 魅族科技(中国)有限公司 一种应用控制方法及终端
CN105871867A (zh) * 2016-04-27 2016-08-17 腾讯科技(深圳)有限公司 身份认证方法、系统及设备
CN106034122A (zh) * 2015-03-16 2016-10-19 联想(北京)有限公司 一种信息处理方法、电子设备及服务器
CN106131062A (zh) * 2016-08-23 2016-11-16 努比亚技术有限公司 登录服务器及网页同步登录方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9727715B2 (en) * 2014-09-07 2017-08-08 Michael Boodaei Authentication method and system using password as the authentication key

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106034122A (zh) * 2015-03-16 2016-10-19 联想(北京)有限公司 一种信息处理方法、电子设备及服务器
CN105574403A (zh) * 2015-12-14 2016-05-11 魅族科技(中国)有限公司 一种应用控制方法及终端
CN105871867A (zh) * 2016-04-27 2016-08-17 腾讯科技(深圳)有限公司 身份认证方法、系统及设备
CN106131062A (zh) * 2016-08-23 2016-11-16 努比亚技术有限公司 登录服务器及网页同步登录方法

Also Published As

Publication number Publication date
CN110474864A (zh) 2019-11-19

Similar Documents

Publication Publication Date Title
US11488234B2 (en) Method, apparatus, and system for processing order information
CN109600223B (zh) 验证方法、激活方法、装置、设备及存储介质
US11934505B2 (en) Information content viewing method and terminal
CN111066284B (zh) 一种业务证书管理方法、终端及服务器
US9703971B2 (en) Sensitive operation verification method, terminal device, server, and verification system
US10547609B2 (en) Method, apparatus, and system for controlling intelligent device, and storage medium
US10078599B2 (en) Application access control method and electronic apparatus implementing the same
US20180026949A1 (en) System and method for providing vehicle information based on personal authentication and vehicle authentication
CN107222485B (zh) 一种授权方法以及相关设备
CN110474864B (zh) 一种注册、登录移动应用程序的方法及电子设备
CN111542822B (zh) 用于共享屏幕数据的电子装置和方法
US20150319173A1 (en) Co-verification method, two dimensional code generation method, and device and system therefor
KR20180041532A (ko) 전자 장치들 간 연결 방법 및 장치
US20160112415A1 (en) Method of providing information security and electronic device thereof
WO2016082194A1 (zh) 消息处理方法及装置
US11017066B2 (en) Method for associating application program with biometric feature, apparatus, and mobile terminal
CN107483213B (zh) 一种安全认证的方法、相关装置及系统
CN108234124B (zh) 身份验证方法、装置与系统
CN107451813B (zh) 支付方法、支付设备和支付服务器
CN104954126B (zh) 敏感操作验证方法、装置及系统
EP4187425A1 (en) Key management method, key management device, and computing device
WO2016078504A1 (zh) 身份鉴权方法和装置
WO2018108062A1 (zh) 身份验证方法、装置及存储介质
EP4187422A1 (en) Security architecture system, cryptographic operation method for security architecture system, and computing device
CN108234412B (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