CN110971396B - 一种应用程序的登录方法及其对应系统 - Google Patents
一种应用程序的登录方法及其对应系统 Download PDFInfo
- Publication number
- CN110971396B CN110971396B CN201811141858.4A CN201811141858A CN110971396B CN 110971396 B CN110971396 B CN 110971396B CN 201811141858 A CN201811141858 A CN 201811141858A CN 110971396 B CN110971396 B CN 110971396B
- Authority
- CN
- China
- Prior art keywords
- character string
- client
- server
- target
- target character
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0863—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving passwords or one-time passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/083—Network architectures or network communication protocols for network security for authentication of entities using passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请公开了一种应用程序的登录方法及其对应系统。该方法包括:在检测到目标应用的客户端待登录服务器时,判断客户端中是否存在目标字符串,其中,目标字符串是服务器基于目标应用的用户名和密码生成的字符串;若客户端中存在目标字符串的情况下,客户端向服务器发送目标字符串;在目标字符串符合登录条件的情况下,客户端成功登录服务器。通过本申请,解决了相关技术中密码登录方式不安全的问题。
Description
技术领域
本申请涉及密码登陆领域,具体而言,涉及一种应用程序的登录方法及其对应系统。
背景技术
“密码保存”是指系统以加密的方式存储用户名及其对应的密码,进而在用户二次登录时,可以快速获取存储的用户名及其对应的密码,进行自动登录。避免用户在二次登录时,需要重新输入密码,造成登录繁琐的问题。
在现有技术中,系统虽然对用户名及其对应的密码进行加密存储,但是系统使用用户名及其对应的密码进行访问时,用户名及其对应的密码在传输过程中仍有被拦截获取,导致用户信息泄露的可能。
针对相关技术中密码登录方式不安全的问题,目前尚未提出有效的解决方案。
发明内容
本申请提供一种应用程序的登录方法及其对应系统,以解决相关技术中密码登录方式不安全的问题。
根据本申请的一个方面,提供了一种应用程序的登录方法,应用于目标应用的客户端。该方法包括:在检测到目标应用的客户端待登录服务器时,判断所述客户端中是否存在目标字符串,其中,所述目标字符串是服务器基于目标应用的用户名和密码生成的字符串;若所述客户端中存在目标字符串的情况下,所述客户端向服务器发送目标字符串;在所述目标字符串符合登录条件的情况下,所述客户端成功登录所述服务器。
可选地,在判断所述客户端中是否存在目标字符串之后,所述方法还包括:若所述客户端中不存在目标字符串的情况下,所述客户端确定所述目标应用的用户名和密码,并将所述用户名和所述密码发送至所述服务器;在所述用户名和所述密码符合登录条件的情况下,所述客户端成功登录所述服务器,并接收并存储所述服务器发送的目标字符串。
可选地,在所述客户端向服务器发送目标字符串之后,所述方法还包括:在所述目标字符串不符合登录条件的情况下,所述客户端清除存储的所述目标字符串,并继续执行确定所述目标应用的用户名和密码,并将所述用户名和所述密码发送至所述服务器的步骤。
可选地,所述客户端确定所述目标应用的用户名和密码,并将所述用户名和所述密码发送至所述服务器包括:所述客户端确定所述目标应用的用户名和所述用户名对应的密码;所述客户端依据公钥对所述用户名和所述密码进行加密处理,获取第一字符串,其中,所述公钥由所述服务器生成;所述客户端将所述第一字符串发送至所述服务器。
可选地,所述第一字符串中还包括:第一随机字符和第一时间数据,其中,所述第一时间数据是所述第一字符串的生成时间。
根据本申请的另一方面,提供了另一种应用程序的登录方法,应用于目标应用的服务器。该方法包括:在检测到目标应用的客户端待登录服务器时,所述服务器获取所述客户端发送的字符串;判断所述字符串是否为目标字符串,其中,所述目标字符串是服务器基于目标应用的用户名和密码生成的字符串;在所述字符串为所述目标字符串,且在所述目标字符串符合登录条件的情况下,所述服务器允许所述客户端成功登录。
可选地,在判断所述字符串是否为目标字符串之后,所述方法还包括:在所述字符串不为所述目标字符串,且所述字符串中包含的用户名和密码符合登录条件的情况下,所述服务器允许所述客户端成功登录;以及所述服务器依据所述用户名和所述密码生成目标字符串,并将生成的目标字符串发送至客户端。
可选地,在所述服务器依据所述用户名和所述密码生成目标字符串,并将生成的目标字符串发送至客户端之后,所述方法还包括:所述服务器存储生成的目标字符串,并在预设时间段后清除存储的所述目标字符串;在判断出所述客户端发送的字符串为目标字符串之后,所述方法还包括:判断所述服务器是否存储所述目标字符串,其中,若所述服务器存储所述目标字符串,则确认所述目标字符串符合登录条件,若所述服务器未存储所述目标字符串,则确定所述目标字符串不符合登录条件。
可选地,所述服务器依据所述用户名和所述密码生成目标字符串,并将所述生成的目标字符串发送至客户端包括:所述服务器获取公钥和所述公钥匹配的私钥;所述服务器依据所述用户名和所述密码生成第二字符串,并依据所述私钥对所述第二字符串进行加密处理得到目标字符串;所述服务器将所述目标字符串和所述公钥发送至客户端,以及存储所述私钥。
可选地,所述第二字符串中还包括:第二随机字符和第二时间数据,其中,所述第二时间数据是所述第二字符串的生成时间。
根据本申请的另一方面,提供了一种应用程序的登录系统。该系统包括:客户端,用于在检测到目标应用的客户端待登录服务器时,判断所述客户端中是否存在目标字符串,若所述客户端中存在目标字符串的情况下,所述客户端向服务器发送目标字符串;服务器,用于在检测到目标应用的客户端待登录服务器时,获取所述客户端发送的字符串,并判断所述字符串是否为目标字符串,若所述字符串为所述目标字符串,且所述目标字符串符合登录条件,所述服务器则允许所述客户端成功登录,其中,所述目标字符串是服务器基于目标应用的用户名和密码生成的字符串。
可选地,所述客户端,还用于在检测到目标应用的客户端待登录服务器时,且判断出所述客户端中不存在目标字符串的情况下,所述客户端确定所述目标应用的用户名和密码,并将所述用户名和所述密码发送至所述服务器;所述服务器,还用于在检测到目标应用的客户端待登录服务器时,获取所述客户端发送的字符串,并在判断出所述字符串不为所述目标字符串,且所述字符串中包含的用户名和密码符合登录条件的情况下,所述服务器则允许所述客户端成功登录,并依据所述用户名和所述密码生成目标字符串,以及将生成的目标字符串发送至客户端。
通过本申请客户端采用以下步骤:在检测到目标应用的客户端待登录服务器时,判断所述客户端中是否存在目标字符串,其中,所述目标字符串是服务器基于目标应用的用户名和密码生成的字符串;若所述客户端中存在目标字符串的情况下,所述客户端向服务器发送目标字符串;在所述目标字符串符合登录条件的情况下,所述客户端成功登录所述服务器;解决了相关技术中密码登录方式不安全的问题。进而避免使用明文密码登陆服务器不安全的情况发生,并极大地增加了目标应用的客户端登录服务器的安全性。
附图说明
构成本申请的一部分的附图用来提供对本申请的进一步理解,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是根据本申请实施例提供的一种应用程序的登录方法的流程图;
图2是根据本申请实施例提供的一种可选的应用程序的登录方法的流程图一;
图3是根据本申请实施例提供的一种可选的应用程序的登录方法的流程图二;
图4是根据本申请实施例提供的另一种应用程序的登录方法的流程图;
图5是根据本申请实施例提供的另一种可选的应用程序的登录方法的流程图三;
图6是根据本申请实施例提供的另一种可选的应用程序的登录方法的流程图四;
图7是根据本申请实施例提供的一种应用程序的登录系统的示意图;以及
图8根据本申请实施例的提供的一种可选的应用程序的登录系统的登录流程图。
具体实施方式
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
针对应用程序的客户端,本申请的实施例提供了一种的应用程序的登录方法。
图1是根据本申请实施例的一种应用程序的登录方法的流程图。如图1所示,该方法包括以下步骤:
步骤S102,在检测到目标应用的客户端待登录服务器时,判断客户端中是否存在目标字符串,其中,目标字符串是服务器基于目标应用的用户名和密码生成的字符串。
步骤S104,若客户端中存在目标字符串的情况下,客户端向服务器发送目标字符串。
步骤S106,在目标字符串符合登录条件的情况下,客户端成功登录服务器。
本申请实施例提供的一种应用程序的登录方法,通过在检测到目标应用的客户端待登录服务器时,判断客户端中是否存在目标字符串,其中,目标字符串是服务器基于目标应用的用户名和密码生成的字符串;若客户端中存在目标字符串的情况下,客户端向服务器发送目标字符串;在目标字符串符合登录条件的情况下,客户端成功登录服务器,解决了相关技术中密码登录方式不安全的问题。
也即,通过在客户端存储不包含用户密码的目标字符串,并依据该目标字符串登录服务器,达到了在不使用密码登陆的情况下,令客户端安全登录服务器的技术效果。
需要说明的是:上述目标字符串是由服务器基于目标应用的用户名和密码生成的。此外,该服务器在生成目标字符串之后,将该目标字符串发送至客户端,此时客户端基于接收到的目标字符串,在下一次登录服务器时,将该目标字符串发送至服务器以便登录该服务器。
针对上述登录条件,在一个可选的示例中,服务器判断得出客户端发送的目标字符串是该服务器在历史时间段内发送给该客户端的目标字符串时,确定该目标字符串满足登录条件,其中,历史时间段可以为固定的历史时间段,也可以为据客户端发送目标字符串的时间点预设时长的历史时间段。
进一步地,在判断客户端中是否存在目标字符串之后,本申请实施例提供的应用程序的登录方法还包括:若客户端中不存在目标字符串的情况下,客户端确定目标应用的用户名和密码,并将用户名和密码发送至服务器;在用户名和密码符合登录条件的情况下,客户端成功登录服务器,并接收并存储服务器发送的目标字符串。
也即,如图2所示,本申请实施例提供的应用程序的登录方法包括:在检测到目标应用的客户端待登录服务器时,判断客户端中是否存在目标字符串;若客户端中存在目标字符串的情况下,客户端向服务器发送目标字符串;若客户端中不存在目标字符串的情况下,客户端确定目标应用的用户名和密码,并将用户名和密码发送至服务器。
其中,在目标字符串符合登录条件的情况下,客户端成功登录服务器;在用户名和密码符合登录条件的情况下,客户端成功登录服务器,并接收并存储服务器发送的目标字符串。
需要说明的是:在用户名和密码符合登录条件的情况下,客户端还会接收并存储服务器发送的目标字符串,此时,客户端在下一次登录服务器时,则可以使用服务器发送的目标字符串直接登录,而不再需要重新确定用户名和该用户名对应密码了。也即,本申请实施例提供的应用程序的登录方法则通过上述技术特征,达到了在客户端依据用户名和密码获取到登录许可之后,则可以在后续登录中直接使用获取到的目标字符串进行登录,而不再需要用户输入用户名和密码的技术效果。
需要说明的是,在一种可选的示例中,目标字符串符合的登录条件,与用户名和密码符合登录条件并不相同,正如上述示例所言,目标字符串的登录条件是检查服务器中是否存储该目标字符串,而用户名和密码的登录条件是服务器中是否存储有该用户名,且该密码是否与该用户名对应。
进一步地,在客户端向服务器发送目标字符串之后,本申请实施例提供的应用程序的登录方法还包括:在目标字符串不符合登录条件的情况下,客户端清除存储的目标字符串,并继续执行确定目标应用的用户名和密码,并将用户名和密码发送至服务器的步骤。
也即,如图3所示,本申请实施例提供的应用程序的登录方法包括:在检测到目标应用的客户端待登录服务器时,判断客户端中是否存在目标字符串;若客户端中存在目标字符串的情况下,客户端向服务器发送目标字符串;若客户端中不存在目标字符串的情况下,客户端确定目标应用的用户名和密码,并将用户名和密码发送至服务器。
其中,若目标字符串符合登录条件的情况下,客户端成功登录服务器;若目标字符串不符合登录条件的情况下,客户端清除存储的目标字符串,并继续执行确定目标应用的用户名和密码,并将用户名和密码发送至服务器的步骤。
需要说明的是:在目标字符串不符合登录条件的情况下,客户端清除存储的目标字符串,避免了客户端在下一次登录服务器时,仍然使用该不符合登录条件的目标字符串登录服务器的情况发生,达到了减少该方法的冗余的流程步骤,简化本实施例提供的应用程序的登录方法的流程的技术效果。
此外,在目标字符串不符合登录条件的情况下,再继续执行确定目标应用的用户名和密码,并将用户名和密码发送至服务器的步骤,完善了本申请实施例提供的应用程序的登录方法的流程步骤,使该方法的流程步骤形成完善的闭环形式。也即,本方法达到了即便在目标字符串不符合登录条件的情况下,本方法仍可以触发其他流程步骤,使客户端成功登录服务器的技术效果。
具体的,针对本申请实施例提供的应用程序的登录方法中,客户端确定目标应用的用户名和密码,并将用户名和密码发送至服务器的步骤流程,其具体还可以包括:客户端确定目标应用的用户名和用户名对应的密码;客户端依据公钥对用户名和密码进行加密处理,获取第一字符串,其中,公钥由服务器生成;客户端将第一字符串发送至服务器。
举例说明,客户端获取用户输入的用户名和该用户名对应的密码,并使用服务器生成的公钥对该用户名和密码进行加密处理,最后将加密处理后的用户名和密码发送至服务器,以便登录该服务器。
需要说明的是,用户名和该用户名对应的密码可以是用户在本次客户端登录服务器时输入的,也可以是用户在本次客户端登录服务器之前输入的。
还需要说明的是:上述公钥是客户端在上一次使用用户名和密码成功登录服务器时,服务器发送给客户端的。也即,客户端在上一次使用用户名和密码成功登录服务器时,服务器不仅仅发送目标字符串给客户端,服务器还同时给客户端发送了该公钥。也即,每次客户端使用用户名和密码成功登录服务器之后,该公钥更新替换一次,此时,即便该用户名和密码被拦截获取,由于加密公钥不断变化,因此拦截人员也无法破解加密的用户名和密码,进而达到了保障用户信息安全的技术效果。
在一个可选的示例中,第一字符串中还包括:第一随机字符和第一时间数据,其中,第一时间数据是第一字符串的生成时间。也即通过令第一字符串包含第一随机字符和第一时间数据增加第一字符串的唯一性,避免出现重复的第一字符串,进而避免出现基于第一字符串生成的相同的目标字符串。
针对目标应用的服务器,本申请实施例还提供了另一种应用程序的登录方法。
需要说明的是,本申请实施例的另一种应用程序的登录方法的执行主体与本申请实施例所提供的一种应用程序的登录方法的执行主体相对应。以下对本申请实施例提供的另一种应用程序的登录方法进行介绍。
图4是根据本申请实施例的另一种应用程序的登录方法的流程图。如图4所示,该方法包括以下步骤:
步骤S402:在检测到目标应用的客户端待登录服务器时,服务器获取客户端发送的字符串。
步骤S404:判断字符串是否为目标字符串,其中,目标字符串是服务器基于目标应用的用户名和密码生成的字符串。
步骤S406:在字符串为目标字符串,且在目标字符串符合登录条件的情况下,服务器允许客户端成功登录。
本申请实施例提供的另一种应用程序的登录方法,通过在检测到目标应用的客户端待登录服务器时,服务器获取客户端发送的字符串;判断字符串是否为目标字符串,其中,目标字符串是服务器基于目标应用的用户名和密码生成的字符串;在字符串为目标字符串,且在目标字符串符合登录条件的情况下,服务器允许客户端成功登录,解决了相关技术中相关技术中密码登录方式不安全的问题。
也即,通过令客户端发送服务器生成的目标字符串,并令服务器依据该目标字符串确定是否允许该客户端成功登录,达到了在不直接使用密码登录的情况下,令客户端安全登录服务器的技术效果。
需要说明的是:上述目标字符串虽然说是由服务器基于目标应用的用户名和密码生成的,但是该目标字符串中并不包含该密码信息,在一个可选的示例中,目标字符串可以是服务器基于用户名和密码生成的通次用唯一识别码(uuid),其中,该通用唯一识别码可以让每个生成的目标字符串均为唯一的辨识信息,如此一来,每次生成的目标字符串均不相同,此时就不需要考虑目标字符串重复的问题了,也即,服务器在接收到客户端发送的目标字符串之后,可以依据该目标字符串确定其唯一对应的目标应用的账号,进而允许客户端上的该账号登陆该服务器。
针对上述登录条件,在一个可选的示例中,服务器判断得出客户端发送的目标字符串是该服务器在历史时间段内发送给该客户端的目标字符串时,确定该目标字符串满足登录条件,其中,历史时间段可以为固定的历史时间段,也可以为据客户端发送目标字符串的时间点预设时长的历史时间段。
进一步地,在判断字符串是否为目标字符串之后,本申请实施例提供的应用程序的登录方法还包括:在字符串不为目标字符串,且字符串中包含的用户名和密码符合登录条件的情况下,服务器允许客户端成功登录;以及服务器依据用户名和密码生成目标字符串,并将生成的目标字符串发送至客户端。
也即,如图5所示,本申请实施例提供的应用程序的登录方法包括:在检测到目标应用的客户端待登录服务器时,服务器获取客户端发送的字符串;判断字符串是否为目标字符串;在字符串为目标字符串,且在目标字符串符合登录条件的情况下,服务器允许客户端成功登录;而在字符串不为目标字符串,但是字符串中包含的用户名和密码符合登录条件的情况下,服务器仍然允许客户端成功登录。
其中,在字符串中包含的用户名和密码符合登录条件的情况下,服务器还会依据用户名和密码生成目标字符串,并将生成的目标字符串发送至客户端。
需要说明的是:在客户端发送的字符串中包含的用户名和密码符合登录条件的情况下,服务器还会依据该用户名和密码生成目标字符串,并将该生成的目标字符串发送至客户端,以便客户端下一次登录服务器时,可以使用服务器生成的目标字符串直接登录,而不再需要再次获取用户名和密码了。
此外,值得注意的是:在另一个可选的示例中,目标应用的同一个账号可能对应多个不同时间段生成的目标字符串,举例说明,客户端上的账号A通过用户名和密码登陆服务器之后,服务器向该客户端发送该账号A对应的目标字符串,此时客户端可以通过目标字符串再次直接登录账号A,但是若客户端再次依据用户名和密码登陆服务器之后,服务器会再次依据该用户名和密码向客户端发送一个新的目标字符串。也即,每当服务器接收到客户端发送的用户名和密码,且用户名和密码符合登录条件的情况下,服务器均会依据该用户名和密码生成一个新的目标字符串。
进一步地,在服务器依据用户名和密码生成目标字符串,并将生成的目标字符串发送至客户端之后,本申请实施例提供的应用程序的登录方法还包括:服务器存储生成的目标字符串,并在预设时间段后清除存储的目标字符串。
基于此,在判断出客户端发送的字符串为目标字符串之后,申请实施例提供的应用程序的登录方法还包括:判断服务器是否存储目标字符串,其中,若服务器存储目标字符串,则确认目标字符串符合登录条件,若服务器未存储目标字符串,则确定目标字符串不符合登录条件。
也即,如图6所示,本申请实施例提供的应用程序的登录方法包括:在检测到目标应用的客户端待登录服务器时,服务器获取客户端发送的字符串;判断字符串是否为目标字符串;在字符串为目标字符串,且目标字符串存储于服务器中的情况下,服务器允许客户端成功登录;在字符串不为目标字符串,且字符串中包含的用户名和密码符合登录条件的情况下,服务器允许客户端成功登录。
其中,在字符串中包含的用户名和密码符合登录条件的情况下,服务器依据用户名和密码生成目标字符串,并将生成的目标字符串发送至客户端,以及存储生成的目标字符串,并且在预设时间段后清除存储的目标字符串。
需要说明的是:在字符串中包含的用户名和密码符合登录条件的情况下,服务器不仅仅将依据该用户名和密码生成的目标字符串发送给客户端,同时还存储该目标字符串预设时间段,并以服务器是否存储该目标字符串判断该目标字符串是否符合登录条件,达到了有效地监控目标字符串的登录条件,避免因目标字符串过多而导致登录安全性下降的情况发生。
此外,为了提高登录安全性,在另一种可选的示例中,若客户端针对同一个账户两次使用用户名和密码登陆成功,且服务器也两次基于该账户的用户名和密码生成目标字符串的情况下,服务器在第二次生成目标字符串时,清除第一次生成的目标字符串,以避免同一个账号匹配多个目标字符串,导致登录安全性下降的情况发生。
进一步地,考虑到用户可能使用公共终端上安装的客户端登录应用账号,为了避免服务器向公共终端发送目标字符串,导致用户信息泄露的情况发生,在一种可选的示例,服务器在仅仅接收到客户端发送的符合登录条件的用户名和密码的情况下,服务器仅仅允许该客户端成功登录;而在服务器不仅仅接收到客户端发送的符合登录条件的用户名和密码,同时还接收到客户端发送的目标指令的情况下,服务器也不仅仅只允许客户端成功登录,同时还向客户端发送目标字符串。其中,目标指令用于指示服务器基于客户端发送的用户名和密码生成目标字符串,并将该目标字符串发送至客户端。
具体的,针对实施例提供的应用程序的登录方法中,服务器依据用户名和密码生成目标字符串,并将生成的目标字符串发送至客户端的步骤流程,其具体还可以包括:服务器获取公钥和公钥匹配的私钥;服务器依据用户名和密码生成第二字符串,并依据私钥对第二字符串进行加密处理得到目标字符串;服务器将目标字符串和公钥发送至客户端,以及存储私钥。
需要说明的是:公钥和私钥俗称不对称加密,其中,使用这个密钥对的时候,如果使用其中一个密码加密一段数据,则必须使用另一个密钥才能解密。例如,使用公钥加密的数据必须使用私钥才能解密,如果使用私钥加密的数据也必须使用公钥才能解密。
基于此,上述服务器不仅仅依据用户名和密码生成第二字符串,同时还生成一对密钥(公钥和私钥),并令密钥中的私钥对其生成的第二字符串进行加密处理,达到了增加目标字符串传输的安全性。
值得注意的是:服务器将公钥发送至客户端之后,客户端会在下次使用用户名和密码登录该服务器时,使用服务器发送的公钥对用户名和密码进行加密处理,并将加密处理后的用户名和密码发送至服务器,此时,服务器依据存储的私钥对经加密处理的用户名和密码进行解密,以判断用户名和密码是否符合登录条件。而本申请实施例提供的应用程序的登录方法通过上述技术手段提高了登录安全性,避免了客户端使用用户名和密码直接登录服务器时,用户名和密码被截获导致用户信息泄露的情况发生。
此外,服务器是在每次获取到符合登录条件的用户名和密码之后,就生成一组新的密钥(公钥和私钥),并将该组密钥中的公钥发送至客户端,以便客户端在下一次发送用户名和密码时使用新的公钥进行加密处理,也即,在本申请的应用程序的登录方法中,客户端在使用公钥对用户名和密码进行加密处理之后,便对该公钥进行更新处理,以防止公钥多次使用,导致增加公钥被破解的几率,进而影响用户信息安全的情况发生。也即,上述技术手段达到了令客户端在对用户名和密码进行加密处理时每次使用的公钥均不相同,即服务器生成的每组密钥仅能使用一次的技术效果。
基于上述内容,在一个可选的示例中,服务器在使用私钥对客户端发送的第一字符串(用户名和密码)进行解密处理之后,便清除存储的该私钥。同理,在另一可选的示例中,服务器经过预设时间段判断存储的私钥中是否存储目标私钥,若存在目标私钥则清除存储的目标私钥,其中,该目标私钥为服务器对客户端发送的第一字符串(用户名和密码)进行解密处理时已经使用过的私钥。
在一个可选的示例中,第二字符串中还包括:第二随机字符和第二时间数据,其中,第二时间数据是第二字符串的生成时间。也即通过令第二字符串包含第二随机字符和第二时间数据增加第二字符串的唯一性,避免出现重复的目标字符串。
本申请实施例还提供了一种应用程序的登录系统,需要说明的是,本申请实施例的应用程序的登录系统可以用于执行本申请实施例所提供的用于一种应用程序的登录方法和另一种应用程序的登录方法。以下对本申请实施例提供的应用程序的登录系统进行介绍。
图7是根据本申请实施例的应用程序的登录系统的示意图。如图7所示,该装置包括:客户端71和服务器73。
客户端,用于在检测到目标应用的客户端待登录服务器时,判断客户端中是否存在目标字符串,若客户端中存在目标字符串的情况下,客户端向服务器发送目标字符串。
服务器,用于在检测到目标应用的客户端待登录服务器时,获取客户端发送的字符串,并判断字符串是否为目标字符串,若字符串为目标字符串,且目标字符串符合登录条件,服务器则允许客户端成功登录,其中,目标字符串是服务器基于目标应用的用户名和密码生成的字符串。
在一个可选的示例中,客户端,还用于在检测到目标应用的客户端待登录服务器时,且判断出客户端中不存在目标字符串的情况下,客户端确定目标应用的用户名和密码,并将用户名和密码发送至服务器;服务器,还用于在检测到目标应用的客户端待登录服务器时,获取客户端发送的字符串,并在判断出字符串不为目标字符串,且字符串中包含的用户名和密码符合登录条件的情况下,服务器则允许客户端成功登录,并依据用户名和密码生成目标字符串,以及将生成的目标字符串发送至客户端。
本申请实施例提供的应用程序的登录系统,通过客户端和服务器,解决了相关技术中密码登录方式不安全的问题。进而避免使用明文密码登陆服务器不安全的情况发生,并极大地增加了目标应用的客户端登录服务器的安全性。
下面结合另一种实施例对本发明做出说明。
图8是根据本申请实施例的提供的一种可选的应用程序的登录系统的登录流程图,如图8所示,该流程具体如下所示:
1.用户在客户端程序中第一次输入用户名和密码,并选择保存密码选项;
2.客户端用预定的公钥加密密码;
3.客户端将“使用公钥加密后的密码+时间戳+随机数”,发送到服务器端验证;
4.服务器验证用户输入的用户名及密码是否正确;
5.如用户名和密码正确,设定用户登录状态防止重复登录,并生成新的公钥和私钥,其中,公钥和私钥相对应;
6.服务器依据密码生成一个uuid的识别码,以确定“uuid+用户名+随机数+时间戳”的字符串;
7.服务器使用私钥对上述“uuid+用户名+随机数+时间戳”的字符串进行加密处理,生成加密字符串;
8.服务器将步骤7中生成的加密字符串保存在服务器端的缓存中,并将公钥和加密字符串发送给客户端保存,其中,服务器还针对加密字符串设置有过期时间,若过期后加密字符串会被清除;
9.客户端收到服务器端发送的公钥和加密字符串,保存在客户端本地;
10.在用户第二次登录时,客户端直接发送步骤7保存的加密字符串至服务器,也即,不需要用户再次输入用户名和密码,且直接在密码框中设置随机字符即可;
11.服务器收到加密的字符串后,会在缓存中查看有无此字符串,如有则认为客户端登录成功,否则登录失败
12.客户端在登录失败后清除本地保存的加密字符串,并重新执行步骤1的流程
并且,本发明至少可以实现以下技术效果:
1.不用传送用户的明文密码,登录安全性高;
2.服务器可灵活调控加密字符串的有效期,即使在加密字符串泄露后仍能有效保护用户信息;
3.服务器和客户端每次生成字符串时,均使用不同的公钥或私钥进行加密处理,使相同的密码在加密后得到不同的字符串;
4.使用uuid表示密码,令加密字符串各不相同。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。存储器是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (9)
1.一种应用程序的登录方法,其特征在于,该方法包括:
在检测到目标应用的客户端待登录服务器时,判断所述客户端中是否存在目标字符串;
若所述客户端中存在目标字符串的情况下,所述客户端向服务器发送目标字符串;
在所述目标字符串符合登录条件的情况下,所述客户端成功登录所述服务器;
若所述客户端中不存在目标字符串的情况下,所述客户端确定所述目标应用的用户名和密码,并将所述用户名和所述密码发送至所述服务器,包括:所述客户端确定所述目标应用的用户名和所述用户名对应的密码;所述客户端依据公钥对所述用户名和所述密码进行加密处理,获取第一字符串,其中,所述公钥由所述服务器生成;所述客户端将所述第一字符串发送至所述服务器;
所述客户端在上一次使用用户名和密码成功登录所述服务器时,所述服务器发送目标字符串给所述客户端,还同时给所述客户端发送了所述公钥,每次所述客户端使用用户名和密码成功登录服务器之后,所述公钥更新替换一次;
其中,所述目标字符串是所述服务器基于所述用户名和所述密码生成的通用唯一识别码;
其中,所述目标字符串的登录条件是检查所述服务器中是否存储该目标字符串;
若所述服务器存储所述目标字符串,则确认所述目标字符串符合登录条件,若所述服务器未存储所述目标字符串,则确定所述目标字符串不符合登录条件。
2.根据权利要求1所述的方法,其特征在于,在判断所述客户端中是否存在目标字符串之后,所述方法还包括:
在所述用户名和所述密码符合登录条件的情况下,所述客户端成功登录所述服务器,并接收并存储所述服务器发送的目标字符串。
3.根据权利要求2所述的方法,其特征在于,在所述客户端向服务器发送目标字符串之后,所述方法还包括:
在所述目标字符串不符合登录条件的情况下,所述客户端清除存储的所述目标字符串,并继续执行确定所述目标应用的用户名和密码,并将所述用户名和所述密码发送至所述服务器的步骤。
4.一种应用程序的登录方法,其特征在于,该方法包括:
在检测到目标应用的客户端待登录服务器时,所述服务器获取所述客户端发送的字符串;
判断所述字符串是否为目标字符串;
在所述字符串为所述目标字符串,且在所述目标字符串符合登录条件的情况下,所述服务器允许所述客户端成功登录;
若所述客户端中不存在目标字符串的情况下,所述客户端确定所述目标应用的用户名和密码,并将所述用户名和所述密码发送至所述服务器,包括:所述客户端确定所述目标应用的用户名和所述用户名对应的密码;所述客户端依据公钥对所述用户名和所述密码进行加密处理,获取第一字符串,其中,所述公钥由所述服务器生成;所述客户端将所述第一字符串发送至所述服务器;
所述客户端在上一次使用用户名和密码成功登录所述服务器时,所述服务器发送目标字符串给所述客户端,还同时给所述客户端发送了所述公钥,每次所述客户端使用用户名和密码成功登录服务器之后,所述公钥更新替换一次;
其中,所述目标字符串是所述服务器基于所述用户名和所述密码生成的通用唯一识别码;
其中,所述目标字符串的登录条件是检查所述服务器中是否存储该目标字符串;
若所述服务器存储所述目标字符串,则确认所述目标字符串符合登录条件,若所述服务器未存储所述目标字符串,则确定所述目标字符串不符合登录条件。
5.根据权利要求4所述的方法,其特征在于,在判断所述字符串是否为目标字符串之后,所述方法还包括:
在所述字符串不为所述目标字符串,且所述字符串中包含的用户名和密码符合登录条件的情况下,所述服务器允许所述客户端成功登录;以及
所述服务器依据所述用户名和所述密码生成目标字符串,并将生成的目标字符串发送至客户端。
6.根据权利要求5所述的方法,其特征在于,
在所述服务器依据所述用户名和所述密码生成目标字符串,并将生成的目标字符串发送至客户端之后,所述方法还包括:所述服务器存储生成的目标字符串,并在预设时间段后清除存储的所述目标字符串;
在判断出所述客户端发送的字符串为目标字符串之后,所述方法还包括:判断所述服务器是否存储所述目标字符串,其中,若所述服务器存储所述目标字符串,则确认所述目标字符串符合登录条件,若所述服务器未存储所述目标字符串,则确定所述目标字符串不符合登录条件。
7.根据权利要求6所述的方法,其特征在于,所述服务器依据所述用户名和所述密码生成目标字符串,并将所述生成的目标字符串发送至客户端包括:
所述服务器获取公钥和所述公钥匹配的私钥;
所述服务器依据所述用户名和所述密码生成第二字符串,并依据所述私钥对所述第二字符串进行加密处理得到目标字符串;
所述服务器将所述目标字符串和所述公钥发送至客户端,以及存储所述私钥。
8.一种应用程序的登录系统,其特征在于,包括:
客户端,用于在检测到目标应用的客户端待登录服务器时,判断所述客户端中是否存在目标字符串,若所述客户端中存在目标字符串的情况下,所述客户端向服务器发送目标字符串;
服务器,用于在检测到目标应用的客户端待登录服务器时,获取所述客户端发送的字符串,并判断所述字符串是否为目标字符串,若所述字符串为所述目标字符串,且所述目标字符串符合登录条件,所述服务器则允许所述客户端成功登录;
若所述客户端中不存在目标字符串的情况下,所述客户端确定所述目标应用的用户名和密码,并将所述用户名和所述密码发送至所述服务器,包括:所述客户端确定所述目标应用的用户名和所述用户名对应的密码;所述客户端依据公钥对所述用户名和所述密码进行加密处理,获取第一字符串,其中,所述公钥由所述服务器生成;所述客户端将所述第一字符串发送至所述服务器;
所述客户端在上一次使用用户名和密码成功登录所述服务器时,所述服务器发送目标字符串给所述客户端,还同时给所述客户端发送了所述公钥,每次所述客户端使用用户名和密码成功登录服务器之后,所述公钥更新替换一次;
其中,所述目标字符串是所述服务器基于所述用户名和所述密码生成的通用唯一识别码;
其中,所述目标字符串的登录条件是检查所述服务器中是否存储该目标字符串;
若所述服务器存储所述目标字符串,则确认所述目标字符串符合登录条件,若所述服务器未存储所述目标字符串,则确定所述目标字符串不符合登录条件。
9.根据权利要求8所述的登录系统,其特征在于,
所述客户端,还用于在检测到目标应用的客户端待登录服务器时,且判断出所述客户端中不存在目标字符串的情况下,所述客户端确定所述目标应用的用户名和密码,并将所述用户名和所述密码发送至所述服务器;
所述服务器,还用于在检测到目标应用的客户端待登录服务器时,获取所述客户端发送的字符串,并在判断出所述字符串不为所述目标字符串,且所述字符串中包含的用户名和密码符合登录条件的情况下,所述服务器则允许所述客户端成功登录,并依据所述用户名和所述密码生成目标字符串,以及将生成的目标字符串发送至客户端。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811141858.4A CN110971396B (zh) | 2018-09-28 | 2018-09-28 | 一种应用程序的登录方法及其对应系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811141858.4A CN110971396B (zh) | 2018-09-28 | 2018-09-28 | 一种应用程序的登录方法及其对应系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110971396A CN110971396A (zh) | 2020-04-07 |
CN110971396B true CN110971396B (zh) | 2023-08-25 |
Family
ID=70027876
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811141858.4A Active CN110971396B (zh) | 2018-09-28 | 2018-09-28 | 一种应用程序的登录方法及其对应系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110971396B (zh) |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106685973B (zh) * | 2016-12-30 | 2019-09-20 | 东软集团股份有限公司 | 记住登录信息的方法及装置、登录控制方法及装置 |
-
2018
- 2018-09-28 CN CN201811141858.4A patent/CN110971396B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN110971396A (zh) | 2020-04-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106612180B (zh) | 实现会话标识同步的方法及装置 | |
CN108111497B (zh) | 摄像机与服务器相互认证方法和装置 | |
US20200302043A1 (en) | Authentication system | |
CN111107073B (zh) | 应用自动登录方法、装置、计算机设备和存储介质 | |
US11146554B2 (en) | System, method, and apparatus for secure identity authentication | |
US11240008B2 (en) | Key management method, security chip, service server and information system | |
WO2015177728A1 (en) | Password-based authentication | |
US20200344075A1 (en) | Secure provisioning of keys | |
CN111970109B (zh) | 一种数据传输方法及系统 | |
CN110362984B (zh) | 多设备运行业务系统的方法及装置 | |
CN113395406B (zh) | 一种基于电力设备指纹的加密认证方法及系统 | |
KR20150135032A (ko) | Puf를 이용한 비밀키 업데이트 시스템 및 방법 | |
US11483165B2 (en) | Certificate renewal method, apparatus, system, medium, and device | |
CN114172664B (zh) | 数据加密、数据解密方法、装置、电子设备及存储介质 | |
EP3820186A1 (en) | Method and apparatus for transmitting router security information | |
CN110492989B (zh) | 私钥的处理方法、访问方法和对应方法的介质、装置 | |
CN112261103A (zh) | 一种节点接入方法及相关设备 | |
CN110971396B (zh) | 一种应用程序的登录方法及其对应系统 | |
CN105100030B (zh) | 访问控制方法、系统和装置 | |
CN111200599A (zh) | 一种访问认证方法、装置、设备及可读存储介质 | |
CN114626050A (zh) | 一种认证方法、装置、设备及介质 | |
EP3908948A1 (en) | Service trust status | |
CN117353920B (zh) | 一种密钥派生方法、处理器和相关设备 | |
US11509468B2 (en) | Method and system for verifying secret decryption capability of escrow agents | |
EP3433992B1 (en) | Cloud storage of data |
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 |