CN110493202B - 登录令牌的生成及验证方法、装置和服务器 - Google Patents
登录令牌的生成及验证方法、装置和服务器 Download PDFInfo
- Publication number
- CN110493202B CN110493202B CN201910691438.1A CN201910691438A CN110493202B CN 110493202 B CN110493202 B CN 110493202B CN 201910691438 A CN201910691438 A CN 201910691438A CN 110493202 B CN110493202 B CN 110493202B
- Authority
- CN
- China
- Prior art keywords
- token
- user
- login
- original data
- plaintext
- 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
Images
Classifications
-
- 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
-
- 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/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
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/321—Cryptographic 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 a third party or a trusted authority
- H04L9/3213—Cryptographic 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 a third party or a trusted authority using tickets or tokens, e.g. Kerberos
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)
- Storage Device Security (AREA)
Abstract
本发明实施例适用于信息技术领域,提供了一种登录令牌的生成及验证方法、装置和服务器,所述登录令牌的生成方法包括:接收用户通过浏览器提交的登录请求,对登录请求中包含的用户ID和密码进行验证;在验证成功后,获取浏览器信息以及用户信息;按照预先定义的拼接方式和拼接顺序,将用户ID、用户信息、浏览器信息拼接成密钥明文;基于用户ID和预设的令牌过期时间生成原始数据明文,采用预设的第一加密算法对原始数据明文进行加密,得到原始数据;采用预设的第二加密算法对预先生成的标头、原始数据和密钥明文进行加密,得到动态密钥;将标头、原始数据和动态密钥组合成登录令牌,提高了登录令牌及系统的安全性。
Description
技术领域
本发明属于信息技术领域,特别是涉及一种登录令牌的生成方法、一种登录令牌的验证方法、一种登录令牌的生成装置、一种登录令牌的验证装置、一种服务器及一种计算机可读存储介质。
背景技术
登录令牌(token)是服务端生成的一串字符串,作为客户端进行请求的一个标识。在用户第一次登录时,服务端会生成一个令牌并将此令牌返回给客户端。此后,在由客户端发起某个请求时,只需在请求中携带上该令牌即可,无需再次输入用户名和密码。
现有技术中,服务端通常是根据用户登录时使用的用户名和密码来生成登录令牌。这种生成方式过于简单,只需要验证用户名和密码即可,生成的令牌极其容易被盗取。另一方面,当用户再次发起针对服务端的请求时,由于令牌在生成后的一段时间内不会发生变化,即使在用户再次发起请求时他的用户信息和权限已经发生了变更,仍然可以继续使用原令牌进行操作,安全性较低。
发明内容
有鉴于此,本发明实施例提供了一种登录令牌的生成及验证方法、装置和服务器,以解决现有技术中登录令牌的生成方式过于简单,极其容易被盗取,安全性较低的问题。
本发明实施例的第一方面提供了一种登录令牌的生成方法,包括:
接收用户通过浏览器提交的登录请求,对所述登录请求中包含的用户ID和密码进行验证;
在验证所述用户ID和密码成功后,获取所述浏览器的浏览器信息以及所述用户的用户信息;
按照预先定义的拼接方式和拼接顺序,将所述用户ID、所述用户信息、所述浏览器信息拼接成密钥明文;
基于所述用户ID和预设的令牌过期时间生成原始数据明文,采用预设的第一加密算法对所述原始数据明文进行加密,得到原始数据;
采用预设的第二加密算法对预先生成的标头、所述原始数据和所述密钥明文进行加密,得到动态密钥,所述标头通过采用所述第一加密算法对预置的标头明文进行加密得到;
将所述标头、所述原始数据和所述动态密钥组合成登录令牌。
本发明实施例的第二方面提供了一种登录令牌的验证方法,包括:
接收用户通过浏览器提交的操作请求,所述操作请求中包含上一次签发的登录令牌;
从所述登录令牌中提取所述用户的用户ID;
获取与所述用户ID相对应的所述用户的用户信息以及所述浏览器的浏览器信息;
按照预先定义的拼接方式和拼接顺序,将所述用户ID、所述用户信息、所述浏览器信息拼接成验证令牌的密钥明文;
基于所述用户ID和预设的令牌过期时间生成验证令牌的原始数据明文,采用预设的第一加密算法对所述验证令牌的原始数据明文进行加密,得到验证令牌的原始数据;
采用预设的第二加密算法对预先生成的验证令牌的标头、所述验证令牌的原始数据和所述验证令牌的密钥明文进行加密,得到验证令牌的动态密钥,所述验证令牌的标头通过采用所述第一加密算法对预置的验证令牌的标头明文进行加密得到;
将所述验证令牌的标头、所述验证令牌的原始数据和所述验证令牌的动态密钥组合成验证令牌。
采用所述验证令牌对所述登录令牌进行验证。
本发明实施例的第三方面提供了一种登录令牌的生成装置,包括:
登录请求接收模块,用于接收用户通过浏览器提交的登录请求,对所述登录请求中包含的用户ID和密码进行验证;
信息获取模块,用于在验证所述用户ID和密码成功后,获取所述浏览器的浏览器信息以及所述用户的用户信息;
密钥明文拼接模块,用于按照预先定义的拼接方式和拼接顺序,将所述用户ID、所述用户信息、所述浏览器信息拼接成密钥明文;
原始数据加密模块,用于基于所述用户ID和预设的令牌过期时间生成原始数据明文,采用预设的第一加密算法对所述原始数据明文进行加密,得到原始数据;
动态密钥加密模块,用于采用预设的第二加密算法对预先生成的标头、所述原始数据和所述密钥明文进行加密,得到动态密钥,所述标头可以通过采用所述第一加密算法对预置的标头明文进行加密得到;
登录令牌组合模块,用于将所述标头、所述原始数据和所述动态密钥组合成登录令牌。
本发明实施例的第四方面提供了一种登录令牌的验证装置,包括:
接收模块,用于接收用户通过浏览器提交的操作请求,所述操作请求中包含上一次签发的登录令牌;
提取模块,用于从所述登录令牌中提取所述用户的用户ID;
获取模块,用于获取与所述用户ID相对应的所述用户的用户信息以及所述浏览器的浏览器信息;
拼接模块,用于按照预先定义的拼接方式和拼接顺序,将所述用户ID、所述用户信息、所述浏览器信息拼接成验证令牌的密钥明文;
第一加密模块,用于基于所述用户ID和预设的令牌过期时间生成验证令牌的原始数据明文,采用预设的第一加密算法对所述验证令牌的原始数据明文进行加密,得到验证令牌的原始数据;
第二加密模块,用于采用预设的第二加密算法对预先生成的验证令牌的标头、所述验证令牌的原始数据和所述验证令牌的密钥明文进行加密,得到验证令牌的动态密钥,所述验证令牌的标头通过采用所述第一加密算法对预置的验证令牌的标头明文进行加密得到;
组合模块,用于将所述验证令牌的标头、所述验证令牌的原始数据和所述验证令牌的动态密钥组合成验证令牌。
验证模块,用于采用所述验证令牌对所述登录令牌进行验证。
本发明实施例的第五方面提供了一种服务器,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述第一方面所述登录令牌的生成方法的步骤。
本发明实施例的第六方面提供了一种服务器,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述第二方面所述登录令牌的验证方法的步骤。
本发明实施例的第七方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上述第一方面所述登录令牌的生成方法的步骤。
本发明实施例的第八方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上述第二方面所述登录令牌的验证方法的步骤。
与现有技术相比,本发明实施例包括以下优点:
本发明实施例,在接收到用户通过浏览器提交的登录请求后,可以首先对该登录请求中包含的用户ID和密码进行验证,若验证成功,则可以获取浏览器信息和用户信息,并按照预先定义的拼接方式和拼接顺序,将用户ID、用户信息和浏览器信息拼接成密钥明文;然后,可以采用预设的第一加密算法对预置的标头明文进行加密得到标头,基于用户ID和预设的令牌过期时间生成原始数据明文并采用第一加密算法对原始数据明文进行加密得到原始数据;进而采用预设的第二加密算法对标头、原始数据和密钥明文进行加密得到动态密钥,最终将标头、原始数据和动态密钥组合成登录令牌。由于现有的登录令牌通常使用固定密钥生成,客户端请求一旦被黑客截取后使得登录令牌极其容易被破解或被盗用,安全性较低。本实施例根据请求方的用户信息、浏览器信息以及IP地址等生成令牌,增强了生成登录令牌的复杂性,可以防止异地登录和跨浏览器操作;同时,在生成登录令牌时加入用户权限相关的信息,也使得在用户权限发生变化后,相应的登录令牌会立即失效,从而可以反映用户权限的变更情况,阻止未授权操作,提高了登录令牌及系统的安全性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一个实施例的一种登录令牌的生成方法的步骤流程示意图;
图2是本发明一个实施例的一种动态密钥的生成过程示意图;
图3是本发明一个实施例的一种登录令牌的验证方法的步骤流程示意图;
图4是本发明一个实施例的一种登录令牌的生成装置的示意图;
图5是本发明一个实施例的一种登录令牌的验证装置的示意图;
图6是本发明一个实施例的一种服务器的示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本发明实施例。然而,本领域技术人员应当清楚,在没有这些具体细节的其他实施例中也可以实现本发明。在其他情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本发明的描述。
下面通过具体实施例来说明本发明的技术方案。
参照图1,示出了本发明一个实施例的一种登录令牌的生成方法的步骤流程示意图,具体可以包括如下步骤:
S101、接收用户通过浏览器提交的登录请求,对所述登录请求中包含的用户ID和密码进行验证;
需要说明的是,本方法可以应用于需要用户登录后才能执行操作的各类系统中。例如,网上银行系统、证券交易系统等等。本实施例对本方法具体所应用的场景不作限定。
一般地,对于上述系统,用户在通过输入用户ID和密码提交登录请求后,服务端可以生成一个登录令牌,并返回给客户端,该登录令牌可以被存储在客户端闪存中。用户后续在系统中进行操作时只需携带上该登录令牌即可,而无需再次输入用户ID和密码等验证信息。本实施例所描述的即是服务端生成登录令牌的过程。
上述客户端是能够承载相应系统的各个组件,并允许用户在其中进行操作以实现各种功能的程序。该程序可以是独立安装于终端设备上的客户端软件程序,也可以是基于浏览器提供的系统网页程序,本实施例对此不作限定。客户端需要与服务端互相配合运行,上述服务端即是与客户端通信连接的后台服务器。
独立安装于终端设备上的客户端软件程序通常内置有浏览器程序,通过浏览器程序可以生成一登录界面,用于用户的登录操作。因此,无论用户是在独立的客户端软件程序还是在基于浏览器的系统网页程序中所进行的登录操作均可以看作是在浏览器中完成的。也即,用户可以通过浏览器向服务端提交登录请求。
为了便于理解,本实施例统一以客户端是基于浏览器提供的系统网页程序为例进行后续的介绍和说明。即,用户直接在浏览器中进行操作以完成各项功能。
通常,用户在提交登录请求时,需要在系统的登录界面中输入用户ID和密码,服务端在接收到上述登录请求后,可以对用户ID和密码进行验证,以确认该用户ID是否具有访问当前系统的权限。
S102、在验证所述用户ID和密码成功后,获取所述浏览器的浏览器信息以及所述用户的用户信息;
服务端在接收到用户ID和密码后,可以在数据库中查找该用户ID对应的密码是否与接收到的密码相同。如果相同,可以认为该用户ID具有访问当前系统的权限;否则,可以拒绝该用户ID的登录请求。
在完成对用户ID和密码的验证后,服务端可以进一步获取浏览器信息以及用户信息,以生成登录令牌。
本实施例中的浏览器信息可以包括浏览器的名称、版本信息以及该浏览器当前所处的网络环境信息中的至少一种,上述网络环境信息可以包括当前的网络环境的IP地址。
这些浏览器信息可以是在用户第一次登陆系统时采集得到的。即,用户在第一次登陆系统后,系统可以识别用户当前使用的是何种类型的浏览器,并对该浏览器的信息进行保存。当然,根据实际需要,获取到的浏览器信息还可以包括其他类型的信息,本实施例对此不作限定。
本实施例中的用户信息除用户ID外,还可以包括当前用户的权限信息和登录登出信息。用户的权限信息包括是用户状态、用户等级、用户角色以及用户角色最后一次更新时间中的至少一种,而登录登出信息则可以包括用户在该系统中的最后一次登录时间和最后一次登出时间等。这些权限信息和登录登出信息可以从服务端的数据库中获取。当然,与浏览器信息类似,上述各类权限信息及登录登出信息所包含的内容也可以根据实际需要的不同具体确定,本实施例对此亦不作限定。
上述浏览器信息以及用户信息均可以以字符串的形式进行表示。例如,上述浏览器信息包括浏览器的名称:Mozilla;版本信息:5.0;IP地址:127.0.0.1等等。
现有的登录令牌通常在生成后的一段时间内不会变化,无法在用户信息和权限变更后阻止未授权操作,也无法有效感知异地或多浏览器同时的操作,本实施例通过获取用户信息以及当前使用的浏览器的信息用于生成登录令牌可以有效地提高系统的安全性。在用户跨浏览器登录时,若用户ID和登录密码验证通过,则新的浏览器信息会被保存并继续执行登录令牌的生成这一操作。但在用户返回原浏览器进行操作时,由于最后一次登录时间及浏览器信息已被更新,故原登录令牌会失效。所以,在本实施例中,当用户跨浏览器操作时,原浏览器的登录会失效,其目的是保证在同一会话中用户只可使用同一浏览器的同一窗口进行操作,但当用户在另一个会话中重新登录并验证通过后,之前的会话则会立即失效。
S103、按照预先定义的拼接方式和拼接顺序,将所述用户ID、所述用户信息、所述浏览器信息拼接成密钥明文;
在服务端生成登录令牌的过程中,获取到的用户ID、用户信息和浏览器信息可以用于按照一定的拼接方式和拼接顺序拼接成密钥明文,该密钥明文在按照某种特定的加密算法进行加密后,可以得到动态密钥。
具体地,可以使用某种分隔符对获取到的各种信息进行分隔。例如,可以使用竖线分隔符“|”将两两不同的信息进行分隔。
作为本发明的一种示例,在使用竖线分隔符并按照某种拼接顺序拼接得到的一种密钥明文可以表示为:
6|127.0.0.1|Mozilla/5.0(Windows NT 10.0;WOW64)AppleWebKit/537.36(KHTML,like Gecko)Chrome/62.0.3202.94Safari/537.36|Thu Jan 31 17:51:57CST2019|Mon Feb 11 15:19:39CST 2019|Mon Feb 11 14:59:09CST 2019|1|0|63fde500-2dcd-11e9-b37b-95aef6d46d16|5|Thu Jan 31 17:43:06CST 2019|
在上述密钥明文中,使用竖线分隔符“|”分隔开的各个字符串分别表示一种具体的信息。例如,“6”表示用户ID,“127.0.0.1”表示IP地址,其后的各个字符串也分别表示在生成登录令牌时需要使用到的其他各类信息。
S104、基于所述用户ID和预设的令牌过期时间生成原始数据明文,采用预设的第一加密算法对所述原始数据明文进行加密,得到原始数据;
通常,原始数据文明至少包含用户ID和令牌过期时间,令牌过期时间表示当前生成的登录令牌应该在什么时候过期,即,不可用。
根据用户ID和令牌过期时间生成原始数据明文后,可以采用预设的第一加密算法对其进行加密,加密后得到的字符串即是作为登录令牌一部分的原始数据。
上述第一加密算法可以是BASE64算法。BASE64是一种基于64个可打印字符来表示二进制数据的表示方法。由于2的6次方等于64,所以每6个比特为一个单元,对应某个可打印字符。三个字节有24个比特,对应于4个BASE64单元,即3个字节需要用4个可打印字符来表示。当然,根据实际使用需求的不同,也可以采用其他算法对原始数据明文进行加密,本实施例对此不作限定。
作为一种示例,原始数据明文可以表示为:{"sub":"user","iss":"oneconnect","exp":"1549871380","userID":"6"}。
其中,sub表示该登录令牌所面向的用户,iss表示该登录令牌的签发者,exp为令牌过期时间,这里是一个unix时间戳,userID即是用户ID。
采用BASE64算法对上述原始数据明文进行加密后,得到的原始数据为:eyJzdWliOiJ1c2VyliwiaXNzljoib25Ly29ubmVjdClslmV4cCl6MTU0OTg3MTM4MCwidXNlcklkljoiNiJ9.
S105、采用预设的第二加密算法对预先生成的标头、所述原始数据和所述密钥明文进行加密,得到动态密钥,所述标头通过采用所述第一加密算法对预置的标头明文进行加密得到;
一般地,对预置的标头明文进行加密时所使用的算法可以是与对原始数据明文进行加密时所使用的算法相同的。因此,可以使用第一加密算法即BASE64算法对标头明文进行加密,得到标头。
标头可以看作是登录令牌的头部,用于描述关于该登录令牌最基本的信息。例如,登录令牌的类型以及签名所用的算法等等。
作为一种示例,标头明文可以表示为:{"typ":"JWT","alg":"HS256"}。
其中,typ表示登录令牌的类型,alg指明了签名算法采用的是HS256。
上述标头明文在采用BASE64加密后,得到的标头可以表示为:eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.
在得到标头、原始数据以及密钥明文后,可以采用另一种加密算法即第二加密算法对上述标头、原始数据以及密钥明文进行加密,从而得到动态密钥。
上述第二加密算法可以是HmacSHA256算法。Hmac(Hash-based MessageAuthentication Code)是密钥相关的哈希运算消息认证码,可以运算哈希算法,以一个密钥和一个消息为输入,生成一个消息摘要作为输出。Hmac包含有很多种哈希加密算法,HmacSHA256便是其中的一种。
如图2所示,是本发明一个实施例的一种动态密钥的生成过程示意图。按照图2所示的过程,标头明文和原始数据明文可以采用相同的BASE64算法加密,得到的两个字符串作为标头和原始数据。然后,标头、原始数据和密钥明文可以采用HmacSHA256算法加密,得到动态密钥。
作为本实施例的一种示例,在采用HmacSHA256算法,对标头为eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9,原始数据为eyJzdWliOiJ1c2VyliwiaXNzljoib25Ly29ubmVjdClslmV4cCl6MTU0OTg3MTM4MCwidXNlcklkljoiNiJ9,密钥明文为6|127.0.0.1|Mozilla/5.0(Windows NT 10.0;WOW64)AppleWebKit/537.36(KHTML,like Gecko)Chrome/62.0.3202.94Safari/537.36|Thu Jan 31 17:51:57CST 2019|Mon Feb 11 15:19:39CST2019|Mon Feb 11 14:59:09CST 2019|1|0|63fde500-2dcd-11e9-b37b-95aef6d46d16|5|Thu Jan 31 17:43:06CST 2019|的数据进行加密后,得到的动态密钥可以表示为:pwXj8KoRbRN5iJFdNopiOTcinBIvejve9myJgKI8FC8.
S106、将所述标头、所述原始数据和所述动态密钥组合成登录令牌。
登录令牌一般包括标头、原始数据和动态密钥。在分别得到上述数据后,可以依次排列上述标头、原始数据和动态密钥,并以点分隔符分隔标头、原始数据和动态密钥,以组成登录令牌。
具体地,标头明文和原始数据明文可以采用相同的BASE64算法加密,得到的两个字符串作为标头和原始数据。然后,标头、原始数据和密钥明文可以采用HmacSHA256算法加密,得到动态密钥。最后,将标头、原始数据和动态密钥按照一定顺序组合即可得到相应的登录令牌。
例如,登录令牌可以表示为eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWliOiJ1c2VyliwiaXNzljoib25Ly29ubmVjdClslmV4cCl6MTU0OTg3MTM4MCwidXNlcklkljoiNiJ9.pwXj8KoRbRN5iJFdNopiOTcinBIvejve9myJgKI8FC8.
上述登录令牌在生成后会被返回至客户端,存储在客户端闪存中,供用户在系统中执行下一次操作时与操作请求一同提交至服务端进行验证。
在本发明实施例中,在接收到用户通过浏览器提交的登录请求后,可以首先对该登录请求中包含的用户ID和密码进行验证,若验证成功,则可以获取浏览器信息和用户信息,并按照预先定义的拼接方式和拼接顺序,将用户ID、用户信息和浏览器信息拼接成密钥明文;然后,可以采用预设的第一加密算法对预置的标头明文进行加密得到标头,基于用户ID和预设的令牌过期时间生成原始数据明文并采用第一加密算法对原始数据明文进行加密得到原始数据;进而采用预设的第二加密算法对标头、原始数据和密钥明文进行加密得到动态密钥,最终将标头、原始数据和动态密钥组合成登录令牌。由于现有的登录令牌通常使用固定密钥生成,客户端请求一旦被黑客截取后使得登录令牌极其容易被破解或被盗用,安全性较低。本实施例根据请求方的用户信息、浏览器信息以及IP地址等生成令牌,增强了生成登录令牌的复杂性,可以防止异地登录和跨浏览器操作;同时,在生成登录令牌时加入用户权限相关的信息,也使得在用户权限发生变化后,相应的登录令牌会立即失效,从而可以反映用户权限的变更情况,阻止未授权操作,提高登录令牌及系统的安全性。
参照图3,示出了本发明一个实施例的一种登录令牌的验证方法的步骤流程示意图,具体可以包括如下步骤:
S301、接收用户通过浏览器提交的操作请求,所述操作请求中包含上一次签发的登录令牌;
需要说明的是,本方法可以应用于需要用户登录后才能执行操作的各类系统中。例如,网上银行系统、证券交易系统等等。本实施例对本方法具体所应用的场景不作限定。
通常,用户在成功登录系统后,会接收到由服务端签发的有效登录令牌,该登录令牌一般被保存在客户端的闪存中。当用户在系统中执行下一次操作时,可以认为发起了对服务端的一次操作请求,上述登录令牌将被包含在该操作请求中。
以网上银行系统为例。用户在输入用户ID和密码向服务端发起登录请求后,服务端可以即时完成对用户ID和密码的验证。若验证成功,则允许用户登录网上银行系统,并生成一登录令牌返回至客户端。在用户登录系统的一段时间后,该用户若要进行某项操作,例如转账操作,则可以通过点击系统中的特定按钮向服务端发起该请求,该请求中应当携带有服务端在先签发的登录令牌。
服务端在接收到用户的登录请求并在验证用户ID和密码成功后生成登录令牌的过程可以参见前述登录令牌的生成方法实施例中的详细描述,本实施例对此不再赘述。
S302、从所述登录令牌中提取所述用户的用户ID;
通常,登录令牌是一段编译过的字符串,包含三部分,即标头、原始数据和动态密钥。在对该字符串进行相应的处理后,可以提取出令牌中携带的用户ID。
因此,服务端在接收到客户端提交的操作请求以及操作请求中携带的登录令牌后,可以首先识别登录令牌中的原始数据。
如前述登录令牌的生成方法实施例中所介绍的,标头、原始数据和动态密钥在组合成登录令牌时是按照一定顺序排列并以点分隔符分隔开的。所以,在识别登录令牌中的原始数据时,可以首先确定原始数据在生成该登录令牌时的排列顺序,然后根据上述排列顺序从该登录令牌中提取出原始数据。
例如,对于登录令牌eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWliOiJ1c2VyliwiaXNzljoib25Ly29ubmVjdClslmV4cCl6MTU0OTg3MTM4MCwidXNlcklkljoiNiJ9.pwXj8KoRbRN5iJFdNopiOTcinBIvejve9myJgKI8FC8,由于该令牌是按照标头、原始数据和动态密钥排列的,各个部分之间以点分隔符分隔,因此可以识别出其中的原始数据为eyJzdWliOiJ1c2VyliwiaXNzljoib25Ly29ubmVjdClslmV4cCl6MTU0OTg3MTM4MCwidXNlcklkljoiNiJ9.
另一方面,原始数据是按照某一特定的加密算法即第一加密算法对原始数据明文进行加密后得到的,因此,在识别出登录令牌中的原始数据后,可以采用与第一加密算法相对应的解密算法对原始数据进行解密,得到原始数据明文。
例如,服务端在生成登录令牌时,采用的是BASE64加密算法对原始数据原文进行加密。那么,在进行解密时,也应当采用BASE64解密算法。
在采用BASE64解密算法对原始数据eyJzdWliOiJ1c2VyliwiaXNzljoib25Ly29ubmVjdClslmV4cCl6MTU0OTg3MTM4MCwidXNlcklkljoiNiJ9进行解密后,得到的原始数据明文为{"sub":"user","iss":"oneconnect","exp":"1549871380","userID":"6"}。
然后,可以从原始数据明文中提取当前用户的用户ID,即,userID为6。
S303、获取与所述用户ID相对应的所述用户的用户信息以及所述浏览器的浏览器信息;
S304、按照预先定义的拼接方式和拼接顺序,将所述用户ID、所述用户信息、所述浏览器信息拼接成验证令牌的密钥明文;
S305、基于所述用户ID和预设的令牌过期时间生成验证令牌的原始数据明文,采用预设的第一加密算法对所述验证令牌的原始数据明文进行加密,得到验证令牌的原始数据;
S306、采用预设的第二加密算法对预先生成的验证令牌的标头、所述验证令牌的原始数据和所述验证令牌的密钥明文进行加密,得到验证令牌的动态密钥,所述验证令牌的标头通过采用所述第一加密算法对预置的验证令牌的标头明文进行加密得到;
S307、将所述验证令牌的标头、所述验证令牌的原始数据和所述验证令牌的动态密钥组合成验证令牌;
在本发明实施例中,在从用户提交的操作请求所携带的登录令牌中提取出用户ID后,可以获取与该用户ID相对应的用户信息以及用户当前所使用的浏览器的信息,并按照预先定义的拼接方式和拼接顺序,将用户ID、用户信息、浏览器信息拼接成密钥明文。在基于用户ID和预设的令牌过期时间生成原始数据明文,采用预设的第一加密算法对原始数据明文进行加密得到原始数据;以及,采用第一加密算法对预置的标头明文进行加密得到标头后,从而可以采用预设的第二加密算法对上述标头、原始数据和密钥明文进行加密,得到动态密钥,进而将标头、原始数据和动态密钥组合成验证令牌。
需要说明的是,由于服务端生成验证令牌的过程与生成登录令牌的过程类似,本实施例对此描述得较为简单,相关细节可以参见前述登录令牌的生成方法实施例中步骤S102-S106的介绍,本实施例不再赘述。
S308、采用所述验证令牌对所述登录令牌进行验证。
服务端在生成验证令牌后,可以对接收到的登录令牌进行验证,以确定该用户当前是否具备继续在系统中进行操作的权限。
具体地,服务端可以判断接收到的登录令牌与实时生成的验证令牌是否相同。若登录令牌与验证令牌相同,则可以认为验证通过。此时,为了保证用户能够继续在系统中进行后续操作,可以扩展登录令牌的令牌过期时间,然后基于扩展后的令牌过期时间生成新登录令牌,并将新登录令牌返回至浏览器。例如,扩展后的令牌过期时间可以是当前时间+10分钟。
另一方面,若登录令牌与验证令牌不同,则可以认为在用户登录系统至当前提交操作请求的这一段时间内,用户的登录环境或权限中至少有一项发生了变化,为了保证系统的安全性,服务端此时可以强制用户退出当前的登录状态,提示用户重新登录。
在本发明实施例中,由于用户在系统中发起的每次操作请求都包含有上一次签发的有效登录令牌,使得服务端可以从登录令牌中提取用户ID,并根据用户ID从数据库中获取最新的用户权限信息、最近登录登出信息以及浏览器信息。然后,在对上述信息进行整合后可以生成验证令牌以完成对当前接收到的登录令牌进行智能验证。待验证成功后,可以扩展令牌的有效期,生成新的令牌,否则,则强制要求用户重新登录。本实施例在接收到用户的操作请求时,可以基于最新的用户信息和权限进行实时验证,并进行智能比对,动态刷新生成新的令牌,保证令牌的即时有效性及正确性,提高系统安全性。
需要说明的是,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
参照图4,示出了本发明一个实施例的一种登录令牌的生成装置的示意图,具体可以包括如下模块:
登录请求接收模块401,用于接收用户通过浏览器提交的登录请求,对所述登录请求中包含的用户ID和密码进行验证;
信息获取模块402,用于在验证所述用户ID和密码成功后,获取所述浏览器的浏览器信息以及所述用户的用户信息;
密钥明文拼接模块403,用于按照预先定义的拼接方式和拼接顺序,将所述用户ID、所述用户信息、所述浏览器信息拼接成密钥明文;
原始数据加密模块404,用于基于所述用户ID和预设的令牌过期时间生成原始数据明文,采用预设的第一加密算法对所述原始数据明文进行加密,得到原始数据;
动态密钥加密模块405,用于采用预设的第二加密算法对预先生成的标头、所述原始数据和所述密钥明文进行加密,得到动态密钥,所述标头可以通过采用所述第一加密算法对预置的标头明文进行加密得到;
登录令牌组合模块406,用于将所述标头、所述原始数据和所述动态密钥组合成登录令牌。
在本发明实施例中,所述登录令牌组合模块406具体可以包括如下子模块:
登录令牌组合子模块,用于依次排列所述标头、所述原始数据和所述动态密钥,并以点分隔符分隔所述标头、所述原始数据和所述动态密钥,以组成登录令牌。
在本发明实施例中,所述浏览器信息可以包括所述浏览器的名称、版本信息以及所述浏览器当前所处的网络环境信息中的至少一种,所述网络环境信息可以包括当前的网络环境的IP地址;
所述用户信息可以包括所述用户的权限信息和登录登出信息,所述权限信息可以包括用户状态、用户等级、用户角色以及用户角色最后一次更新时间中的至少一种,所述登录登出信息可以包括最后一次登录时间和最后一次登出时间。
参照图5,示出了本发明一个实施例的一种登录令牌的验证装置的示意图,具体可以包括如下模块:
接收模块501,用于接收用户通过浏览器提交的操作请求,所述操作请求中包含上一次签发的登录令牌;
提取模块502,用于从所述登录令牌中提取所述用户的用户ID;
获取模块503,用于获取与所述用户ID相对应的所述用户的用户信息以及所述浏览器的浏览器信息;
拼接模块504,用于按照预先定义的拼接方式和拼接顺序,将所述用户ID、所述用户信息、所述浏览器信息拼接成验证令牌的密钥明文;
第一加密模块505,用于基于所述用户ID和预设的令牌过期时间生成验证令牌的原始数据明文,采用预设的第一加密算法对所述验证令牌的原始数据明文进行加密,得到验证令牌的原始数据;
第二加密模块506,用于采用预设的第二加密算法对预先生成的验证令牌的标头、所述验证令牌的原始数据和所述验证令牌的密钥明文进行加密,得到验证令牌的动态密钥,所述验证令牌的标头可以通过采用所述第一加密算法对预置的验证令牌的标头明文进行加密得到;
组合模块507,用于将所述验证令牌的标头、所述验证令牌的原始数据和所述验证令牌的动态密钥组合成验证令牌。
验证模块508,用于采用所述验证令牌对所述登录令牌进行验证。
在本发明实施例中,所述提取模块502具体可以包括如下子模块:
原始数据识别子模块,用于识别所述登录令牌中的登录令牌的原始数据;
原始数据解密子模块,用于采用与所述第一加密算法相对应的解密算法对所述登录令牌的原始数据进行解密,得到登录令牌的原始数据明文;
用户ID提取子模块,用于从所述登录令牌的原始数据明文中提取所述用户的用户ID。
在本发明实施例中,所述原始数据识别子模块具体可以包括如下单元:
排列顺序确定单元,用于确定登录令牌的原始数据在生成所述登录令牌时的排列顺序;
原始数据提取单元,用于根据所述排列顺序从所述登录令牌中提取出所述登录令牌的原始数据。
在本发明实施例中,所述验证模块508具体可以包括如下子模块:
登录令牌判断子模块,用于判断所述登录令牌与所述验证令牌是否相同;
新登录令牌生成子模块,用于在所述登录令牌与所述验证令牌相同时,扩展所述登录令牌的令牌过期时间,基于扩展后的令牌过期时间生成新登录令牌,并将所述新登录令牌返回至所述浏览器;
强制退出子模块,用于在所述登录令牌与所述验证令牌不同时,强制所述用户退出当前的登录状态。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述得比较简单,相关之处参见方法实施例部分的说明即可。
参照图6,示出了本发明一个实施例的一种服务器的示意图。如图6所示,本实施例的服务器600包括:处理器610、存储器620以及存储在所述存储器620中并可在所述处理器610上运行的计算机程序621。所述处理器610执行所述计算机程序621时实现上述登录令牌的生成方法以及上述登录令牌的验证方法各个实施例中的步骤,例如图1所示的步骤S101至S106以及图3所示的步骤S301至S308。或者,所述处理器610执行所述计算机程序621时实现上述各装置实施例中各模块/单元的功能,例如图4所示模块401至406的功能以及图5所示模块501至508的功能。
示例性的,所述计算机程序621可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器620中,并由所述处理器610执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段可以用于描述所述计算机程序621在所述服务器600中的执行过程。例如,所述计算机程序621可以被分割成登录请求接收模块、信息获取模块、密钥明文拼接模块、原始数据加密模块、动态密钥加密模块和登录令牌组合模块,上述登录请求接收模块、浏览器信息及用户信息获取模块、密钥明文拼接模块、原始数据加密模块、动态密钥加密模块和登录令牌组合模块具体功能如下:
登录请求接收模块,用于接收用户通过浏览器提交的登录请求,对所述登录请求中包含的用户ID和密码进行验证;
信息获取模块,用于在验证所述用户ID和密码成功后,获取所述浏览器的浏览器信息以及所述用户的用户信息;
密钥明文拼接模块,用于按照预先定义的拼接方式和拼接顺序,将所述用户ID、所述用户信息、所述浏览器信息拼接成密钥明文;
原始数据加密模块,用于基于所述用户ID和预设的令牌过期时间生成原始数据明文,采用预设的第一加密算法对所述原始数据明文进行加密,得到原始数据;
动态密钥加密模块,用于采用预设的第二加密算法对预先生成的标头、所述原始数据和所述密钥明文进行加密,得到动态密钥,所述标头可以通过采用所述第一加密算法对预置的标头明文进行加密得到;
登录令牌组合模块,用于将所述标头、所述原始数据和所述动态密钥组合成登录令牌。
或者,所述计算机程序621还可以被分割成接收模块、提取模块、获取模块、拼接模块、第一加密模块、第二加密模块、组合模块和验证模块,上述接收模块、提取模块、获取模块、拼接模块、第一加密模块、第二加密模块、组合模块和验证模块具体功能如下:
接收模块,用于接收用户通过浏览器提交的操作请求,所述操作请求中包含上一次签发的登录令牌;
提取模块,用于从所述登录令牌中提取所述用户的用户ID;
获取模块,用于获取与所述用户ID相对应的所述用户的用户信息以及所述浏览器的浏览器信息;
拼接模块,用于按照预先定义的拼接方式和拼接顺序,将所述用户ID、所述用户信息、所述浏览器信息拼接成登录令牌的密钥明文;
第一加密模块,用于基于所述用户ID和预设的令牌过期时间生成登录令牌的原始数据明文,采用预设的第一加密算法对所述登录令牌的原始数据明文进行加密,得到登录令牌的原始数据;
第二加密模块,用于采用预设的第二加密算法对预先生成的登录令牌的标头、所述登录令牌的原始数据和所述登录令牌的密钥明文进行加密,得到登录令牌的动态密钥,所述登录令牌的标头通过采用所述第一加密算法对预置的登录令牌的标头明文进行加密得到;
组合模块,用于将所述登录令牌的标头、所述登录令牌的原始数据和所述登录令牌的动态密钥组合成验证令牌。
验证模块,用于采用所述验证令牌对所述登录令牌进行验证。
所述服务器600可以是云端服务器等计算设备。所述服务器600可包括,但不仅限于,处理器610、存储器620。本领域技术人员可以理解,图6仅仅是服务器600的一种示例,并不构成对服务器600的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述服务器600还可以包括输入输出设备、网络接入设备、总线等。
所述处理器610可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器620可以是所述服务器600的内部存储单元,例如服务器600的硬盘或内存。所述存储器620也可以是所述服务器600的外部存储设备,例如所述服务器600上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等等。进一步地,所述存储器620还可以既包括所述服务器600的内部存储单元也包括外部存储设备。所述存储器620用于存储所述计算机程序621以及所述服务器600所需的其他程序和数据。所述存储器620还可以用于暂时地存储已经输出或者将要输出的数据。
以上所述实施例仅用以说明本发明的技术方案,而非对其限制。尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。
Claims (10)
1.一种登录令牌的生成方法,其特征在于,包括:
接收用户通过浏览器提交的登录请求,对所述登录请求中包含的用户ID和密码进行验证;
在验证所述用户ID和密码成功后,获取所述浏览器的浏览器信息以及所述用户的用户信息;
按照预先定义的拼接方式和拼接顺序,将所述用户ID、所述用户信息、所述浏览器信息拼接成密钥明文;
基于所述用户ID和预设的令牌过期时间生成原始数据明文,采用预设的第一加密算法对所述原始数据明文进行加密,得到原始数据;
采用预设的第二加密算法对预先生成的标头、所述原始数据和所述密钥明文进行加密,得到动态密钥,所述标头通过采用所述第一加密算法对预置的标头明文进行加密得到;
将所述标头、所述原始数据和所述动态密钥组合成登录令牌。
2.根据权利要求1所述的方法,其特征在于,所述将所述标头、所述原始数据和所述动态密钥组合成登录令牌的步骤包括:
依次排列所述标头、所述原始数据和所述动态密钥,并以点分隔符分隔所述标头、所述原始数据和所述动态密钥,以组成登录令牌。
3.根据权利要求1所述的方法,其特征在于,所述浏览器信息包括所述浏览器的名称、版本信息以及所述浏览器当前所处的网络环境信息中的至少一种,所述网络环境信息包括当前的网络环境的IP地址;
所述用户信息包括所述用户的权限信息和登录登出信息,所述权限信息包括用户状态、用户等级、用户角色以及用户角色最后一次更新时间中的至少一种,所述登录登出信息包括最后一次登录时间和最后一次登出时间。
4.一种登录令牌的验证方法,其特征在于,包括:
接收用户通过浏览器提交的操作请求,所述操作请求中包含上一次签发的登录令牌;
从所述登录令牌中提取所述用户的用户ID;
获取与所述用户ID相对应的所述用户的用户信息以及所述浏览器的浏览器信息;
按照预先定义的拼接方式和拼接顺序,将所述用户ID、所述用户信息、所述浏览器信息拼接成验证令牌的密钥明文;
基于所述用户ID和预设的令牌过期时间生成验证令牌的原始数据明文,采用预设的第一加密算法对所述验证令牌的原始数据明文进行加密,得到验证令牌的原始数据;
采用预设的第二加密算法对预先生成的验证令牌的标头、所述验证令牌的原始数据和所述验证令牌的密钥明文进行加密,得到验证令牌的动态密钥,所述验证令牌的标头通过采用所述第一加密算法对预置的验证令牌的标头明文进行加密得到;
将所述验证令牌的标头、所述验证令牌的原始数据和所述验证令牌的动态密钥组合成验证令牌;
采用所述验证令牌对所述登录令牌进行验证。
5.根据权利要求4所述的方法,其特征在于,所述从所述登录令牌中提取所述用户的用户ID的步骤包括:
识别所述登录令牌中的登录令牌的原始数据;
采用与所述第一加密算法相对应的解密算法对所述登录令牌的原始数据进行解密,得到登录令牌的原始数据明文;
从所述登录令牌的原始数据明文中提取所述用户的用户ID。
6.根据权利要求5所述的方法,其特征在于,所述识别所述登录令牌中的登录令牌的原始数据的步骤包括:
确定登录令牌的原始数据在生成所述登录令牌时的排列顺序;
根据所述排列顺序从所述登录令牌中提取出所述登录令牌的原始数据。
7.根据权利要求4所述的方法,其特征在于,所述采用所述验证令牌对所述登录令牌进行验证的步骤包括:
判断所述登录令牌与所述验证令牌是否相同;
若所述登录令牌与所述验证令牌相同,则扩展所述登录令牌的令牌过期时间,基于扩展后的令牌过期时间生成新登录令牌,并将所述新登录令牌返回至所述浏览器;
若所述登录令牌与所述验证令牌不同,则强制所述用户退出当前的登录状态。
8.一种登录令牌的验证装置,其特征在于,包括:
接收模块,用于接收用户通过浏览器提交的操作请求,所述操作请求中包含上一次签发的登录令牌;
提取模块,用于从所述登录令牌中提取所述用户的用户ID;
获取模块,用于获取与所述用户ID相对应的所述用户的用户信息以及所述浏览器的浏览器信息;
拼接模块,用于按照预先定义的拼接方式和拼接顺序,将所述用户ID、所述用户信息、所述浏览器信息拼接成验证令牌的密钥明文;
第一加密模块,用于基于所述用户ID和预设的令牌过期时间生成验证令牌的原始数据明文,采用预设的第一加密算法对所述验证令牌的原始数据明文进行加密,得到验证令牌的原始数据;
第二加密模块,用于采用预设的第二加密算法对预先生成的验证令牌的标头、所述验证令牌的原始数据和所述验证令牌的密钥明文进行加密,得到验证令牌的动态密钥,所述验证令牌的标头通过采用所述第一加密算法对预置的验证令牌的标头明文进行加密得到;
组合模块,用于将所述验证令牌的标头、所述验证令牌的原始数据和所述验证令牌的动态密钥组合成验证令牌;
验证模块,用于采用所述验证令牌对所述登录令牌进行验证。
9.一种服务器,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求4至7任一项所述登录令牌的验证方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求4至7任一项所述登录令牌的验证方法的步骤。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910691438.1A CN110493202B (zh) | 2019-07-29 | 2019-07-29 | 登录令牌的生成及验证方法、装置和服务器 |
SG11202004800QA SG11202004800QA (en) | 2019-07-29 | 2019-09-24 | Login token generation method and apparatus, login token verification method and apparatus, and server |
PCT/CN2019/107549 WO2021017128A1 (zh) | 2019-07-29 | 2019-09-24 | 登录令牌的生成及验证方法、装置和服务器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910691438.1A CN110493202B (zh) | 2019-07-29 | 2019-07-29 | 登录令牌的生成及验证方法、装置和服务器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110493202A CN110493202A (zh) | 2019-11-22 |
CN110493202B true CN110493202B (zh) | 2021-11-02 |
Family
ID=68548638
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910691438.1A Active CN110493202B (zh) | 2019-07-29 | 2019-07-29 | 登录令牌的生成及验证方法、装置和服务器 |
Country Status (3)
Country | Link |
---|---|
CN (1) | CN110493202B (zh) |
SG (1) | SG11202004800QA (zh) |
WO (1) | WO2021017128A1 (zh) |
Families Citing this family (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111131202A (zh) * | 2019-12-12 | 2020-05-08 | 厦门市美亚柏科信息股份有限公司 | 基于多重信息认证的身份认证方法及系统 |
CN111131284B (zh) * | 2019-12-30 | 2022-07-01 | 飞天诚信科技股份有限公司 | 信息验证方法、装置、电子设备及计算机可读存储介质 |
CN111342964B (zh) * | 2020-05-15 | 2020-08-11 | 深圳竹云科技有限公司 | 单点登录方法、装置及系统 |
CN111898110A (zh) * | 2020-08-05 | 2020-11-06 | 苏州朗动网络科技有限公司 | 用户身份信息的获取方法、装置、服务器和存储介质 |
US11683325B2 (en) * | 2020-08-11 | 2023-06-20 | Capital One Services, Llc | Systems and methods for verified messaging via short-range transceiver |
CN112437078A (zh) * | 2020-11-20 | 2021-03-02 | 腾讯科技(深圳)有限公司 | 文件存储方法、装置、设备及计算机可读存储介质 |
CN112560067A (zh) * | 2020-12-25 | 2021-03-26 | 平安普惠企业管理有限公司 | 基于令牌权限校验的访问方法、装置、设备及存储介质 |
CN112699350B (zh) * | 2020-12-30 | 2024-02-27 | 中国邮政储蓄银行股份有限公司 | 登录验证方法及装置 |
CN114817897A (zh) * | 2021-01-18 | 2022-07-29 | 千寻位置网络有限公司 | 终端设备的安全加固方法 |
CN112685718A (zh) * | 2021-02-02 | 2021-04-20 | 卡瓦科尔牙科医疗器械(苏州)有限公司 | 基于OAuth协议在同账号多端登录时使原访问令牌失效的方法 |
CN113065160A (zh) * | 2021-04-12 | 2021-07-02 | 浙江环玛信息科技有限公司 | 智慧法院数据传输方法及系统 |
CN113271296B (zh) * | 2021-04-28 | 2023-08-04 | 北京沃东天骏信息技术有限公司 | 一种登录权限管理的方法和装置 |
CN113177215B (zh) * | 2021-04-30 | 2023-02-28 | 作业帮教育科技(北京)有限公司 | 一种用户登录凭证的处理方法及装置 |
CN113434889B (zh) * | 2021-07-07 | 2024-07-26 | 数字广东网络建设有限公司 | 业务数据的访问方法、装置、设备和存储介质 |
CN113609425A (zh) * | 2021-07-15 | 2021-11-05 | 西安四叶草信息技术有限公司 | 网页数据处理方法及系统 |
CN113922986B (zh) * | 2021-09-09 | 2024-02-09 | 南京优飞保科信息技术有限公司 | 一种多终端权限管理方法和设备 |
CN113742676B (zh) * | 2021-09-13 | 2024-04-19 | 北京锐安科技有限公司 | 一种登录管理方法、装置、服务器、系统及存储介质 |
CN113992417B (zh) * | 2021-10-28 | 2024-05-31 | 深圳永安在线科技有限公司 | 基于动态验签的反欺诈动态识别方法、装置及相关设备 |
CN114401094A (zh) * | 2021-12-27 | 2022-04-26 | 中国电信股份有限公司 | 一种令牌的生成、校验方法及装置 |
CN114301683B (zh) * | 2021-12-29 | 2024-05-10 | 四创科技有限公司 | 一种保证令牌安全性的方法与系统 |
CN114338192B (zh) * | 2021-12-30 | 2023-06-06 | 苏州浪潮智能科技有限公司 | 一种web请求的安全处理方法、装置、设备及介质 |
CN114598478B (zh) * | 2022-03-10 | 2024-04-19 | 北京明略昭辉科技有限公司 | 数据加密的方法、装置、电子设备和存储介质 |
CN114826757A (zh) * | 2022-05-11 | 2022-07-29 | 中国农业银行股份有限公司 | 一种身份认证方法及装置 |
CN115051809A (zh) * | 2022-06-15 | 2022-09-13 | 道和邦(广州)电子信息科技有限公司 | SMG-wscomm-Msession-ECToken一种基于加密CookieToken免登录认证动态令牌技术 |
CN115408675B (zh) * | 2022-11-01 | 2023-02-07 | 湖北芯擎科技有限公司 | eFuse Key的生成方法、装置、设备及存储介质 |
CN116680673B (zh) * | 2023-06-20 | 2024-04-16 | 深圳市彤兴电子有限公司 | 显示器的身份校验方法、装置以及计算机设备 |
CN118473838B (zh) * | 2024-07-15 | 2024-09-20 | 神州医疗科技股份有限公司 | 一种基于动态令牌技术的医疗知识分发方法及系统 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103457738A (zh) * | 2013-08-30 | 2013-12-18 | 优视科技有限公司 | 基于浏览器的登陆处理方法及系统 |
CN104378376A (zh) * | 2014-11-18 | 2015-02-25 | 深圳中兴网信科技有限公司 | 基于soa的单点登录方法、认证服务器和浏览器 |
US9325696B1 (en) * | 2012-01-31 | 2016-04-26 | Google Inc. | System and method for authenticating to a participating website using locally stored credentials |
CN105721502A (zh) * | 2016-04-11 | 2016-06-29 | 上海上实龙创智慧能源科技股份有限公司 | 一种用于浏览器客户端和服务器的授权访问方法 |
CN106101103A (zh) * | 2016-06-14 | 2016-11-09 | 乐视控股(北京)有限公司 | 用户账户登录方法、装置及系统 |
CN107733847A (zh) * | 2017-07-25 | 2018-02-23 | 上海壹账通金融科技有限公司 | 平台登录网站方法、装置、计算机设备以及可读存储介质 |
CN107733653A (zh) * | 2017-10-09 | 2018-02-23 | 用友网络科技股份有限公司 | 用户权限鉴定方法及系统和计算机设备 |
CN107749855A (zh) * | 2017-10-30 | 2018-03-02 | 武汉烽火信息集成技术有限公司 | 基于客户端的单点登录身份认证方法及系统 |
CN109150910A (zh) * | 2018-10-11 | 2019-01-04 | 平安科技(深圳)有限公司 | 登录令牌生成及验证方法、装置及存储介质 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7702794B1 (en) * | 2004-11-16 | 2010-04-20 | Charles Schwab & Co. | System and method for providing silent sign on across distributed applications |
CN104580074B (zh) * | 2013-10-14 | 2018-08-24 | 阿里巴巴集团控股有限公司 | 客户端应用的登录方法及其相应的服务器 |
US20180212956A1 (en) * | 2017-01-24 | 2018-07-26 | Ca, Inc. | Anonymous token authentication |
CN108737326B (zh) * | 2017-04-14 | 2021-03-30 | 北京京东尚科信息技术有限公司 | 用于进行令牌验证的方法、系统、装置及电子设备 |
CN107948155A (zh) * | 2017-11-24 | 2018-04-20 | 重庆金融资产交易所有限责任公司 | 密码校验方法、装置、计算机设备和计算机可读存储介质 |
-
2019
- 2019-07-29 CN CN201910691438.1A patent/CN110493202B/zh active Active
- 2019-09-24 SG SG11202004800QA patent/SG11202004800QA/en unknown
- 2019-09-24 WO PCT/CN2019/107549 patent/WO2021017128A1/zh active Application Filing
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9325696B1 (en) * | 2012-01-31 | 2016-04-26 | Google Inc. | System and method for authenticating to a participating website using locally stored credentials |
CN103457738A (zh) * | 2013-08-30 | 2013-12-18 | 优视科技有限公司 | 基于浏览器的登陆处理方法及系统 |
CN104378376A (zh) * | 2014-11-18 | 2015-02-25 | 深圳中兴网信科技有限公司 | 基于soa的单点登录方法、认证服务器和浏览器 |
CN105721502A (zh) * | 2016-04-11 | 2016-06-29 | 上海上实龙创智慧能源科技股份有限公司 | 一种用于浏览器客户端和服务器的授权访问方法 |
CN106101103A (zh) * | 2016-06-14 | 2016-11-09 | 乐视控股(北京)有限公司 | 用户账户登录方法、装置及系统 |
CN107733847A (zh) * | 2017-07-25 | 2018-02-23 | 上海壹账通金融科技有限公司 | 平台登录网站方法、装置、计算机设备以及可读存储介质 |
CN107733653A (zh) * | 2017-10-09 | 2018-02-23 | 用友网络科技股份有限公司 | 用户权限鉴定方法及系统和计算机设备 |
CN107749855A (zh) * | 2017-10-30 | 2018-03-02 | 武汉烽火信息集成技术有限公司 | 基于客户端的单点登录身份认证方法及系统 |
CN109150910A (zh) * | 2018-10-11 | 2019-01-04 | 平安科技(深圳)有限公司 | 登录令牌生成及验证方法、装置及存储介质 |
Non-Patent Citations (2)
Title |
---|
企业单点登录方案与系统集成应用;周游舟;《四川职业技术学院学报》;20180215(第01期);全文 * |
基于Cookie的Web平台身份认证机制的研究与设计;胡锦玲等;《江西科学》;20180210(第01期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
SG11202004800QA (en) | 2021-03-30 |
WO2021017128A1 (zh) | 2021-02-04 |
CN110493202A (zh) | 2019-11-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110493202B (zh) | 登录令牌的生成及验证方法、装置和服务器 | |
CN106330850B (zh) | 一种基于生物特征的安全校验方法及客户端、服务器 | |
US8185942B2 (en) | Client-server opaque token passing apparatus and method | |
US20180097806A1 (en) | Multi factor user authentication on multiple devices | |
CN109587162B (zh) | 登录验证方法、装置、终端、密码服务器及存储介质 | |
US8769636B1 (en) | Systems and methods for authenticating web displays with a user-recognizable indicia | |
US20100217975A1 (en) | Method and system for secure online transactions with message-level validation | |
CN112637131A (zh) | 用户身份认证方法、装置、设备和存储介质 | |
WO2020018182A1 (en) | Public-private key pair protected password manager | |
CN106685973A (zh) | 记住登录信息的方法及装置、登录控制方法及装置 | |
JP2006301992A (ja) | 認証管理方法及びシステム | |
US11153093B2 (en) | Protection of online applications and webpages using a blockchain | |
Ye et al. | Formal analysis of a single sign-on protocol implementation for android | |
WO2021107755A1 (en) | A system and method for digital identity data change between proof of possession to proof of identity | |
US12107956B2 (en) | Information processing device, information processing method, and non-transitory computer readable storage medium | |
CN113872989B (zh) | 基于ssl协议的认证方法、装置、计算机设备和存储介质 | |
CN114944921A (zh) | 登录认证方法、装置、电子设备及存储介质 | |
CN111600701B (zh) | 一种基于区块链的私钥存储方法、装置及存储介质 | |
CN108292997B (zh) | 认证控制系统及方法、服务器装置、客户装置、认证方法及记录介质 | |
CN111291398B (zh) | 基于区块链的认证方法、装置、计算机设备及存储介质 | |
JP4998314B2 (ja) | 通信制御方法および通信制御プログラム | |
CN109474431A (zh) | 客户端认证方法及计算机可读存储介质 | |
Wong et al. | Towards Biometric-based Authentication for Cloud Computing. | |
CN114172664B (zh) | 数据加密、数据解密方法、装置、电子设备及存储介质 | |
CN114697113A (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 |