CN112865981B - 一种令牌获取、验证方法及装置 - Google Patents
一种令牌获取、验证方法及装置 Download PDFInfo
- Publication number
- CN112865981B CN112865981B CN202110140617.3A CN202110140617A CN112865981B CN 112865981 B CN112865981 B CN 112865981B CN 202110140617 A CN202110140617 A CN 202110140617A CN 112865981 B CN112865981 B CN 112865981B
- Authority
- CN
- China
- Prior art keywords
- token
- signature
- requester
- validity period
- original text
- 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
- 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/3247—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 digital signatures
-
- 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/0807—Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
-
- 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/0876—Network 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
-
- 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
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)
- Power Engineering (AREA)
- Storage Device Security (AREA)
Abstract
本发明提供了一种令牌获取、验证方法及装置,可以应用于金融领域,其中,获取方法包括:根据接收到的请求方唯一标识和预设的令牌有效期生成签名原文;使用私钥对签名原文进行签名;根据签名原文、签名和管理节点预先生成的混淆数生成令牌并返回至请求方。本申请通过将请求方的唯一标识、有效期和签名信息等写入令牌,使得分布式系统中单个节点生成的令牌可被该系统中的其他节点通过验签方式识别,使得令牌的颁发与识别摆脱对外部存储的依赖,提高可用性,同时,令牌中的签名公私钥、算法可以随时调整。
Description
技术领域
本申请属于分布式系统技术领域,具体地讲,涉及一种令牌获取、验证方法及装置。
背景技术
令牌是一种较为常见的第三方接入的验证方式。实际中,在服务器端生成令牌,并将令牌颁发给第三方,第三方获取到令牌后可以使用令牌发起交易并通过系统的验证。
而在分布式系统中,由于分布式系统由多个节点组成,令牌在其中一个节点生成,而验证令牌的节点与生成令牌的节点通常不是同一个,为了使某一节点生成的令牌可以在另外一个节点中被识别,需要在节点生成令牌时将令牌写入数据库、分布式缓存等外部存储设备中,从而达到多节点间令牌识别的目的。因此,现有的令牌验证方式面临着依赖外部存储的问题,在外部存储不可用的情况下,令牌验证也不可用,系统无法正常对外服务,当前的令牌验证方式对外部存储的依赖已经严重影响到令牌系统的可用性。
发明内容
本申请提供了一种令牌获取、验证方法及装置,以至少解决目前分布式系统的多个节点间的令牌验证方式对外部存储依赖严重的问题。
根据本申请的一个方面,提供了一种令牌获取方法,包括:
根据接收到的请求方唯一标识和预设的令牌有效期生成签名原文;
使用私钥对签名原文进行签名;
根据签名原文、签名和管理节点预先生成的混淆数生成令牌并返回至请求方。
在一实施例中,令牌获取方法还包括:
根据接请求方唯一标识从存储器中查找对应的令牌;
判断令牌是否处于有效期内;
如果是,将令牌返回至请求方。
本申请还提供了一种令牌验证方法,包括:
根据请求方发送的令牌判断是否已有对应的令牌记录;
如果是,根据令牌记录对令牌进行有效性验证及标识验证;
如果否,验证令牌的混淆数和签名原文。
在一实施例中,根据令牌记录对令牌进行有效性验证及标识验证,包括:
判断当前时间节点是否处于令牌记录中的有效期内;
如果是,判断令牌记录中的请求方唯一标识符与令牌的请求方唯一标识符是否一致。
在一实施例中,验证令牌的混淆数和签名原文,包括:
解析令牌获得混淆数和签名原文;
对混淆数进行验证;
验证通过后,使用公钥对签名原文进行验签;
验签成功后,对签名原文中的请求方唯一标识和令牌有效期进行验证。
在一实施例中,令牌验证方法还包括:
根据接收到的令牌获取请求方的IP地址;
判断请求方的IP地址是否处于预设的IP区间段内。
根据本申请的另一个方面,本申请提供了一种令牌获取装置,包括:
签名原文生成单元,用于根据接收到的请求方唯一标识和预设的令牌有效期生成签名原文;
签名单元,用于使用私钥对签名原文进行签名;
令牌生成返回单元,用于根据签名原文、签名和管理节点预先生成的混淆数生成令牌并返回至请求方。
在一实施例中,令牌获取装置还包括:
令牌查找单元,用于根据接请求方唯一标识从存储器中查找对应的令牌;
有效期判断单元,用于判断令牌是否处于有效期内;
令牌获取单元,用于如果是,将令牌返回至请求方。
根据本申请的另一个方面,还提供了一种令牌验证装置,包括:
令牌记录查找单元,用于根据请求方发送的令牌判断是否已有对应的令牌记录;
有效性及标识验证单元,用于如果是,根据令牌记录对令牌进行有效性验证及标识验证;
混淆数及签名原文验证单元,用于如果否,验证令牌的混淆数和签名原文。
在一实施例中,有效性及标识验证单元包括:
有效性检查模块,用于判断当前时间节点是否处于令牌记录中的有效期内;
标识符检查模块,用于如果是,判断令牌记录中的请求方唯一标识符与令牌的请求方唯一标识符是否一致。
在一实施例中,混淆数及签名原文验证单元包括:
解析模块,用于解析令牌获得混淆数和签名原文;
验证模块,用于对混淆数进行验证;
验签模块,用于验证通过后,使用公钥对签名原文进行验签;
标识及有效期验证模块,用于验签成功后,对签名原文中的请求方唯一标识和令牌有效期进行验证。
在一实施例中,令牌验证装置还包括:
IP地址获取单元,用于根据接收到的令牌获取请求方的IP地址;
IP白名单判断单元,用于判断请求方的IP地址是否处于预设的IP区间段内。
本申请通过将请求方的唯一标识、有效期和签名信息等写入令牌,使得分布式系统中单个节点生成的令牌可被该系统中的其他节点通过验签方式识别,使得令牌的颁发与识别摆脱对外部存储的依赖,提高可用性,同时,令牌中的签名公私钥、算法可以随时调整。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请提供的一种令牌获取方法流程图。
图2为本申请实施例中另一种令牌获取方法流程图。
图3为本申请提供的一种令牌验证方法流程图。
图4为本申请实施例中有效性验证及标识验证的流程图。
图5为本申请实施例中验证令牌的混淆数和签名原文流程图。
图6为本申请实施例中一种令牌白名单管理方法流程图。
图7为本申请提供的一种令牌获取装置结构框图。
图8为本申请实施例中另一种令牌获取装置结构框图。
图9为本申请提供的一种令牌认证装置结构框图。
图10为本申请实施例中有效性及标识验证单元结构框图。
图11为本申请实施例中混淆数及签名原文验证单元结构框图。
图12为本申请实施例中令牌获取装置中的白名单装置结构框图。
图13为本申请实施例中一种电子设备的具体实施方式。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。本申请的具体实施方式可以应用于金融领域,也可应用于除金融领域之外的其他领域,本申请不以此为限。
在分布式系统中,由于分布式系统由多个节点组成,令牌在其中一个节点生成,而令牌验证节点与生成令牌的节点通常不是同一个,为了使某一节点生成的令牌可以在另外一个节点中被识别,需要在节点生成令牌时将令牌写入数据库、分布式缓存等外部存储设备中,从而达到多节点间令牌识别的目的。因此,现有的令牌验证方式面临着依赖外部存储的问题,在外部存储不可用的情况下,令牌验证也不可用。
为了解决当前的令牌生成与认证模式对于外部存储的严重依赖问题,本申请提供了一种令牌获取方法,如图1所示,包括:
S101:根据接收到的请求方唯一标识和预设的令牌有效期生成签名原文。
S102:使用私钥对签名原文进行签名。
S103:根据签名原文、签名和管理节点预先生成的混淆数生成令牌并返回至请求方。
在一具体实施例中,在分布式系统运行内存中存储有两种令牌数据结构,一种数据结构为键值对(Key-Value)形式,键为令牌,值为请求方唯一标识与令牌有效期组成的实体;另一种数据结构也是为键值对形式,键为请求方唯一标识,值为令牌与有效期组成的树形键值集合,这种数据结构中,可能存在同一个请求方的多条记录,每条记录由不同节点生成。系统定期通过定时任务,对内存中有效期过期的令牌进行清除。
第三方向令牌系统发送令牌获取请求,令牌系统接收到第三方的请求后,首先在本地查找是否已存第三方所需的令牌记录,如果没有,则根据第三方发送的请求为第三方生成令牌,如果有令牌记录,但是令牌记录已经过期,则依然根据第三方发送的请求为第三方生成令牌。
在一具体实施例中,令牌的生成过程为:令牌系统以当前系统时间为基准按照预设的有效期时长,生成令牌的有效期。将第三方发送的请求中的第三方唯一标识(例如APPID)、令牌有效期等拼接后作为签名原文,可以按需采用AES、SM4等加密后作为签名原文。使用私钥对签名原文进行签名,签名算法可以使用RSA、SM2等。将签名原文、签名以及管理节点预先生成的混淆数等信息拼接组合后采用base64等编码算法生成令牌,同理,可按需采用AES、SM4等加密算法对令牌进行加密。其中混淆数的位数可根据需求设定,混淆数可以采用纯字符串、纯数字或者字符串与数字混合的形式。
在一实施例中,如图2所示,令牌获取方法还包括:
S201:根据接请求方唯一标识从存储器中查找对应的令牌。
S202:判断令牌是否处于有效期内。
S203:如果是,将令牌返回至请求方。
在一具体实施例中,令牌系统在接收到第三方请求后,首先根据请求中的第三方唯一标识查找内存中是否含有对应的令牌记录,如果有,则选取有效期最晚的令牌记录并判断系统当前时间节点是否超过了该有效期,如果仍在有效期内,则将该令牌直接返回给第三方;如果内存中没有对应的令牌记录,则再执行S101-S103中的步骤生成令牌发送给第三方。
基于上述自识别的令牌生成方法,本申请还提供了一种令牌验证方法,如图3所示,包括:
S301:根据请求方发送的令牌判断是否已有对应的令牌记录。
S302:如果是,根据令牌记录对令牌进行有效性验证及标识验证。
S303:如果否,验证令牌的混淆数和签名原文。
在一具体实施例中,第三方接收到令牌系统发送的令牌后,采用此令牌发起交易,交易报文中携带有第三方唯一标识。令牌系统接收到第三方带有令牌的请求后,首先从内存中查找是否含有该令牌记录。然后根据是否含有令牌记录采用不同的方式进行令牌认证。
在一实施例中,根据令牌记录对令牌进行有效性验证及标识验证,如图4所示,包括:
S401:判断当前时间节点是否处于令牌记录中的有效期内。
S402:如果是,判断令牌记录中的请求方唯一标识符与令牌的请求方唯一标识符是否一致。
在一具体实施例中,当内存中有该令牌记录时,比较请求中的第三方唯一标识与令牌记录中的第三方唯一标识,如果不匹配,或者当前的时间节点已经超出令牌记录中的令牌有效期,则返回认证失败,否则,令牌认证通过。
在一实施例中,验证令牌的混淆数和签名原文,如图5所示,包括:
S501:解析令牌获得混淆数和签名原文。
S502:对混淆数进行验证。
S503:验证通过后,使用公钥对签名原文进行验签。
S504:验签成功后,对签名原文中的请求方唯一标识和令牌有效期进行验证。
在一具体实施例中,如果内存中不含有该令牌记录,则先对第三方发送的令牌进行解码,如果解码失败,则返回认证失败信息给第三方,如果解码成功,则提取令牌中的混淆数并与本地预存的混淆数进行对比看是否匹配,如果不匹配,则返回验证失败信息给第三方,如果匹配,则进一步对签名原文进行还原并使用公钥进行验签,若验签失败则返回失败认证给第三方,如果验签成功则继续进行后续的认证步骤。在验签成功后,从签名原文中还原出令牌的第三方唯一标识和令牌有效期等信息,只有当令牌的第三方唯一标识与交易报文中的第三方唯一标识匹配并且令牌仍在有效期内才对此令牌认证通过。否则,令牌的认证不通过,令牌系统将认证失败信息发送给第三方。
在一实施例中,如图6所示,令牌验证方法还包括:
S601:根据接收到的令牌获取请求方的IP地址。
S602:判断请求方的IP地址是否处于预设的IP区间段内。
在一具体实施例中,本令牌系统还提供IP白名单功能及黑名单功能,具体为:对于请求发起IP地址相对固定的第三方,可以预先设置固定的IP或IP区间段。在开启白名单之后,若令牌系统收到的发起请求IP不在预先设定的IP范围内,则拒绝交易。也可对不允许访问的IP或IP段设置黑名单,在开启黑名单之后,若令牌系统收到的发起请求IP在黑名单之列则拒绝交易。
针对本申请提供的令牌系统,令牌系统通过系统中的管理节点提供签名公私钥、加密密钥、混淆数、IP黑白名单的管理。令牌系统的运行节点在初始化时会从管理节点统一获取签名公私钥对、加密密钥、混淆数、黑白名单等信息,可按需对密钥、混淆数、黑白名单进行更新。在更新时,管理节点会会将更新后的信息推送给运行节点。其中密钥的更新第三方无感。签名公私钥对以及加密密钥可以第三方的维度或者系统的维度进行管理,以第三方维度管理时,每个第三方独有一份公私钥对以及加密密钥,以系统维度管理时,所有第三方共享公私钥对以及加密密钥。混淆数可以系统的维度或者第三方的维度进行管理,IP黑白名单以第三方的维度管理。
基于同一发明构思,本申请实施例还提供了一种令牌获取、验证装置,可以用于实现上述实施例中所描述的方法,如下面实施例所述。由于令牌获取、验证装置解决问题的原理与令牌获取、验证方法相似,因此令牌获取、验证装置的实施可以参见令牌获取、验证方法的实施,重复之处不再赘述。以下所使用的,术语“单元”或者“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的系统较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
根据本申请的另一个方面,如图7所示,本申请提供了一种令牌获取装置,包括:
签名原文生成单元701,用于根据接收到的请求方唯一标识和预设的令牌有效期生成签名原文;
签名单元702,用于使用私钥对签名原文进行签名;
令牌生成返回单元703,用于根据签名原文、签名和管理节点预先生成的混淆数生成令牌并返回至请求方。
在一实施例中,如图8所示,令牌获取装置还包括:
令牌查找单元801,用于根据接请求方唯一标识从存储器中查找对应的令牌;
有效期判断单元802,用于判断令牌是否处于有效期内;
令牌获取单元803,用于如果是,将令牌返回至请求方。
根据本申请的另一个方面,如图9所示,还提供了一种令牌验证装置,包括:
令牌记录查找单元901,用于根据请求方发送的令牌判断是否已有对应的令牌记录;
有效性及标识验证单元902,用于如果是,根据令牌记录对令牌进行有效性验证及标识验证;
混淆数及签名原文验证单元903,用于如果否,验证令牌的混淆数和签名原文。
在一实施例中,如图10所示,有效性及标识验证单元902包括:
有效性检查模块1001,用于判断当前时间节点是否处于令牌记录中的有效期内;
标识符检查模块1002,用于如果是,判断令牌记录中的请求方唯一标识符与令牌的请求方唯一标识符是否一致。
在一实施例中,如图11所示,混淆数及签名原文验证单元903包括:
解析模块1101,用于解析令牌获得混淆数和签名原文;
验证模块1102,用于对混淆数进行验证;
验签模块1103,用于验证通过后,使用公钥对签名原文进行验签;
标识及有效期验证模块1104,用于验签成功后,对签名原文中的请求方唯一标识和令牌有效期进行验证。
在一实施例中,如图12所示,令牌验证装置还包括:
IP地址获取单元1201,用于根据接收到的令牌获取请求方的IP地址;
IP白名单判断单元1202,用于判断请求方的IP地址是否处于预设的IP区间段内。
本申请通过将请求方的唯一标识、有效期和签名信息等写入令牌,使得分布式系统中单个节点生成的令牌可被该系统中的其他节点通过验签方式识别,使得令牌的颁发与识别摆脱对外部存储的依赖,提高可用性,同时,令牌中的签名公私钥、算法可以随时调整。
本申请的实施例还提供能够实现上述实施例中的方法中全部步骤的一种电子设备的具体实施方式,参见图13,所述电子设备具体包括如下内容:
处理器(processor)1301、内存1302、通信接口(Communications Interface)1303、总线1304和非易失性存储器1305;
其中,所述处理器1301、内存1302、通信接口1303和非易失性存储器1305通过所述总线1304完成相互间的通信;
所述处理器1301用于调用所述内存1302和非易失性存储器1305中的计算机程序,所述处理器执行所述计算机程序时实现上述实施例中的方法中的全部步骤,例如,所述处理器执行所述计算机程序时实现下述步骤:
S101:根据接收到的请求方唯一标识和预设的令牌有效期生成签名原文。
S102:使用私钥对签名原文进行签名。
S103:根据签名原文、签名和管理节点预先生成的混淆数生成令牌并返回至请求方。
S301:根据请求方发送的令牌判断是否已有对应的令牌记录。
S302:如果是,根据令牌记录对令牌进行有效性验证及标识验证。
S303:如果否,验证令牌的混淆数和签名原文。
本申请的实施例还提供能够实现上述实施例中的方法中全部步骤的一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中的方法的全部步骤,例如,所述处理器执行所述计算机程序时实现下述步骤:
S101:根据接收到的请求方唯一标识和预设的令牌有效期生成签名原文。
S102:使用私钥对签名原文进行签名。
S103:根据签名原文、签名和管理节点预先生成的混淆数生成令牌并返回至请求方。
S301:根据请求方发送的令牌判断是否已有对应的令牌记录。
S302:如果是,根据令牌记录对令牌进行有效性验证及标识验证。
S303:如果否,验证令牌的混淆数和签名原文。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于硬件+程序类实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。虽然本说明书实施例提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的手段可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的装置或终端产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境,甚至为分布式数据处理环境)。术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、产品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、产品或者设备所固有的要素。在没有更多限制的情况下,并不排除在包括所述要素的过程、方法、产品或者设备中还存在另外的相同或等同要素。为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本说明书实施例时可以把各模块的功能在同一个或多个软件和/或硬件中实现,也可以将实现同一功能的模块由多个子模块或子单元的组合实现等。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。本领域技术人员应明白,本说明书的实施例可提供为方法、系统或计算机程序产品。因此,本说明书实施例可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本说明书实施例的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。以上所述仅为本说明书实施例的实施例而已,并不用于限制本说明书实施例。对于本领域技术人员来说,本说明书实施例可以有各种更改和变化。凡在本说明书实施例的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本说明书实施例的权利要求范围之内。
Claims (14)
1.一种令牌获取方法,其特征在于,包括:
接收请求方唯一标识;
若本地存储器中不存在所述请求方唯一标识对应的令牌,或本地存储器中存在所述请求方唯一标识对应的令牌但所述令牌不在有效期内,根据所述请求方唯一标识和预设的令牌有效期生成签名原文;
使用私钥对所述签名原文进行签名;
根据签名后的所述签名原文和管理节点预先生成的混淆数生成令牌并返回至请求方;令牌系统以当前系统时间为基准按照预设的有效期时长,生成令牌的有效期;将第三方发送的请求中的第三方唯一标识、令牌有效期拼接后作为签名原文,按需采用AES或SM4加密后作为签名原文;将签名原文、签名以及管理节点预先生成的混淆数信息拼接组合后采用base64编码算法生成令牌,同理,按需采用AES、SM4加密算法对令牌进行加密;
对不允许访问的IP或IP段设置黑名单,在开启黑名单之后,若令牌系统收到的发起请求IP在黑名单之列则拒绝交易。
2.根据权利要求1所述的令牌获取方法,其特征在于,若本地存储器中存在所述请求方唯一标识对应的令牌且所述令牌在有效期内,还包括:将所述令牌返回至请求方。
3.一种令牌验证方法,其特征在于,包括:
根据请求方发送的令牌查询本地是否存储对应的令牌记录;所述令牌由包含了请求方唯一标识的签名原文及管理节点预先生成的混淆数组成;所述令牌的生成过程为:令牌系统以当前系统时间为基准按照预设的有效期时长,生成令牌的有效期;将第三方发送的请求中的第三方唯一标识、令牌有效期拼接后作为签名原文,按需采用AES或SM4加密后作为签名原文;将签名原文、签名以及管理节点预先生成的混淆数信息拼接组合后采用base64编码算法生成令牌,同理,按需采用AES、SM4加密算法对令牌进行加密;
如果是,根据所述令牌记录对所述令牌进行有效性验证及标识验证;
如果否,根据混淆数和签名原文进行令牌验证。
4.根据权利要求3所述的令牌验证方法,其特征在于,所述根据所述令牌记录对所述令牌进行有效性验证及标识验证,包括:
判断当前时间节点是否处于所述令牌记录中的有效期内;
如果是,判断所述令牌记录中的请求方唯一标识符与所述令牌的请求方唯一标识符是否一致。
5.根据权利要求3或4所述的令牌验证方法,其特征在于,所述根据混淆数和签名原文进行令牌验证,包括:
解析所述令牌获得混淆数和签名原文;
对所述混淆数进行验证;
验证通过后,使用公钥对所述签名原文进行验签;
验签成功后,对所述签名原文中的请求方唯一标识和令牌有效期进行验证。
6.根据权利要求3所述的令牌验证方法,其特征在于,还包括:
根据接收到的所述令牌获取请求方的IP地址;
判断请求方的IP地址是否处于预设的IP区间段内;
如果否,终止对所述令牌的验证。
7.一种令牌获取装置,其特征在于,包括:
接收单元,用于接收请求方唯一标识;
签名原文生成单元,用于若本地存储器中不存在所述请求方唯一标识对应的令牌,或本地存储器中存在所述请求方唯一标识对应的令牌但所述令牌不在有效期内,根据所述请求方唯一标识和预设的令牌有效期生成签名原文;
签名单元,用于使用私钥对所述签名原文进行签名;
令牌生成返回单元,用于根据签名后的所述签名原文和管理节点预先生成的混淆数生成令牌并返回至请求方;令牌系统以当前系统时间为基准按照预设的有效期时长,生成令牌的有效期;将第三方发送的请求中的第三方唯一标识、令牌有效期拼接后作为签名原文,按需采用AES、SM4加密后作为签名原文;将签名原文、签名以及管理节点预先生成的混淆数信息拼接组合后采用base64编码算法生成令牌,同理,按需采用AES或SM4加密算法对令牌进行加密;
对不允许访问的IP或IP段设置黑名单,在开启黑名单之后,若令牌系统收到的发起请求IP在黑名单之列则拒绝交易。
8.根据权利要求7所述的令牌获取装置,其特征在于,若本地存储器中存在所述请求方唯一标识对应的令牌且所述令牌在有效期内,还包括:令牌获取单元,用于将所述令牌返回至请求方。
9.一种令牌验证装置,其特征在于,包括:
令牌记录查找单元,用于根据请求方发送的令牌查询本地是否存储对应的令牌记录;所述令牌由包含了请求方唯一标识的签名原文及管理节点预先生成的混淆数组成;所述令牌的生成过程为:令牌系统以当前系统时间为基准按照预设的有效期时长,生成令牌的有效期;将第三方发送的请求中的第三方唯一标识、令牌有效期拼接后作为签名原文,按需采用AES或SM4加密后作为签名原文;将签名原文、签名以及管理节点预先生成的混淆数信息拼接组合后采用base64编码算法生成令牌,同理,按需采用AES、SM4加密算法对令牌进行加密;
有效性及标识验证单元,用于如果是,根据所述令牌记录对所述令牌进行有效性验证及标识验证;
混淆数及签名原文验证单元,用于如果否,根据混淆数和签名原文进行令牌验证。
10.根据权利要求9所述的令牌验证装置,其特征在于,所述有效性及标识验证单元包括:
有效性检查模块,用于判断当前时间节点是否处于所述令牌记录中的有效期内;
标识符检查模块,用于如果是,判断所述令牌记录中的请求方唯一标识符与所述令牌的请求方唯一标识符是否一致。
11.根据权利要求9或10所述的令牌验证装置,其特征在于,所述混淆数及签名原文验证单元包括:
解析模块,用于解析所述令牌获得混淆数和签名原文;
验证模块,用于对所述混淆数进行验证;
验签模块,用于验证通过后,使用公钥对所述签名原文进行验签;
标识及有效期验证模块,用于验签成功后,对所述签名原文中的请求方唯一标识和令牌有效期进行验证。
12.根据权利要求9所述的令牌验证装置,其特征在于,还包括:
IP地址获取单元,用于根据接收到的所述令牌获取请求方的IP地址;
IP白名单判断单元,用于判断请求方的IP地址是否处于预设的IP区间段内。
13.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1至2任一项所述的令牌获取方法的步骤以及权利要求3-6任一项所述的令牌验证方法的步骤。
14.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至2任一项所述的令牌获取方法的步骤以及权利要求3-6任一项所述的令牌验证方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110140617.3A CN112865981B (zh) | 2021-02-02 | 2021-02-02 | 一种令牌获取、验证方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110140617.3A CN112865981B (zh) | 2021-02-02 | 2021-02-02 | 一种令牌获取、验证方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112865981A CN112865981A (zh) | 2021-05-28 |
CN112865981B true CN112865981B (zh) | 2023-05-02 |
Family
ID=75987507
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110140617.3A Active CN112865981B (zh) | 2021-02-02 | 2021-02-02 | 一种令牌获取、验证方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112865981B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115051862A (zh) * | 2022-06-20 | 2022-09-13 | 北京中睿天下信息技术有限公司 | 一种基于上下级平台间的安全通信方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101999132A (zh) * | 2008-03-11 | 2011-03-30 | 威斯科数据安全国际有限公司 | 在服务器凭证验证时生成一次性口令和签名的强认证令牌 |
CN102422593A (zh) * | 2009-05-14 | 2012-04-18 | 微软公司 | 基于http的认证 |
CN103051628A (zh) * | 2012-12-21 | 2013-04-17 | 微梦创科网络科技(中国)有限公司 | 基于服务器获取认证令牌的方法及系统 |
CN107852328A (zh) * | 2015-08-13 | 2018-03-27 | 英艾克斯图股份有限公司 | 用于安全产品标识和验证的增强混淆或随机化 |
CN111475824A (zh) * | 2020-03-23 | 2020-07-31 | 深圳前海百递网络有限公司 | 数据访问方法、装置、设备和存储介质 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103312515B (zh) * | 2013-06-21 | 2016-04-20 | 百度在线网络技术(北京)有限公司 | 授权令牌的生成方法、生成装置、认证方法和认证系统 |
JP6740545B2 (ja) * | 2017-05-30 | 2020-08-19 | 日本電気株式会社 | 情報処理装置、検証装置、情報処理システム、情報処理方法、及び、プログラム |
CN109618341A (zh) * | 2018-12-27 | 2019-04-12 | 无锡天脉聚源传媒科技有限公司 | 一种数字签名认证方法、系统、装置以及存储介质 |
CN110958119A (zh) * | 2019-10-25 | 2020-04-03 | 泰康保险集团股份有限公司 | 身份验证方法和装置 |
CN111404695B (zh) * | 2020-03-16 | 2023-11-24 | 思必驰科技股份有限公司 | 令牌请求验证方法和装置 |
-
2021
- 2021-02-02 CN CN202110140617.3A patent/CN112865981B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101999132A (zh) * | 2008-03-11 | 2011-03-30 | 威斯科数据安全国际有限公司 | 在服务器凭证验证时生成一次性口令和签名的强认证令牌 |
CN102422593A (zh) * | 2009-05-14 | 2012-04-18 | 微软公司 | 基于http的认证 |
CN103051628A (zh) * | 2012-12-21 | 2013-04-17 | 微梦创科网络科技(中国)有限公司 | 基于服务器获取认证令牌的方法及系统 |
CN107852328A (zh) * | 2015-08-13 | 2018-03-27 | 英艾克斯图股份有限公司 | 用于安全产品标识和验证的增强混淆或随机化 |
CN111475824A (zh) * | 2020-03-23 | 2020-07-31 | 深圳前海百递网络有限公司 | 数据访问方法、装置、设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112865981A (zh) | 2021-05-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111708991B (zh) | 服务的授权方法、装置、计算机设备和存储介质 | |
CN110691087B (zh) | 一种访问控制方法、装置、服务器及存储介质 | |
US20220191012A1 (en) | Methods For Splitting and Recovering Key, Program Product, Storage Medium, and System | |
KR100823738B1 (ko) | 컴퓨팅 플랫폼의 설정 정보를 은닉하면서 무결성 보증을제공하는 방법 | |
WO2018112946A1 (zh) | 注册及授权方法、装置及系统 | |
US20110276490A1 (en) | Security service level agreements with publicly verifiable proofs of compliance | |
CN111327564B (zh) | 一种联盟链的准入方法及装置 | |
KR20050084888A (ko) | 재시작가능한 변조 방지 보안 시스템을 위해 자동으로발생된 암호 함수들 | |
EP3206329B1 (en) | Security check method, device, terminal and server | |
Tate et al. | Multi-user dynamic proofs of data possession using trusted hardware | |
KR101817152B1 (ko) | 신뢰된 권한 정보 제공 방법, 신뢰된 권한 정보를 포함하는 사용자 크리덴셜 발급 방법 및 사용자 크리덴셜 획득 방법 | |
CN113872932B (zh) | 基于sgx的微服务间接口鉴权方法、系统、终端及存储介质 | |
KR20120053929A (ko) | 전자서명키 이중 암호화를 이용한 전자서명 대행 시스템과 웹 저장소에 저장을 특징으로 하는 그 방법 | |
Guirat et al. | Formal verification of the W3C web authentication protocol | |
KR102250430B1 (ko) | Pki 기반의 일회성 아이디를 사용하여 서비스를 사용하는 방법, 및 이를 사용한 사용자 단말 | |
CN113591121A (zh) | 一种资源访问权限的配置方法、装置、设备和存储介质 | |
CN116583833A (zh) | 自审计区块链 | |
CN115664655A (zh) | 一种tee可信认证方法、装置、设备及介质 | |
Abraham et al. | SSI Strong Authentication using a Mobile-phone based Identity Wallet Reaching a High Level of Assurance. | |
CN111241492A (zh) | 一种产品多租户安全授信方法、系统及电子设备 | |
CN112865981B (zh) | 一种令牌获取、验证方法及装置 | |
CN115459929B (zh) | 安全验证方法、装置、电子设备、系统、介质和产品 | |
Pulls | Privacy-Friendly cloud storage for the data track: an educational transparency tool | |
CN115811412A (zh) | 一种通信方法、装置、sim卡、电子设备和终端设备 | |
CN115242471A (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 |