CN113194090A - 鉴权方法、鉴权装置、终端设备及计算机可读存储介质 - Google Patents

鉴权方法、鉴权装置、终端设备及计算机可读存储介质 Download PDF

Info

Publication number
CN113194090A
CN113194090A CN202110468860.8A CN202110468860A CN113194090A CN 113194090 A CN113194090 A CN 113194090A CN 202110468860 A CN202110468860 A CN 202110468860A CN 113194090 A CN113194090 A CN 113194090A
Authority
CN
China
Prior art keywords
authentication
key
request
information
subsystem
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.)
Granted
Application number
CN202110468860.8A
Other languages
English (en)
Other versions
CN113194090B (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.)
China Merchants Securities Co ltd
Original Assignee
China Merchants Securities 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 China Merchants Securities Co ltd filed Critical China Merchants Securities Co ltd
Priority to CN202110468860.8A priority Critical patent/CN113194090B/zh
Publication of CN113194090A publication Critical patent/CN113194090A/zh
Application granted granted Critical
Publication of CN113194090B publication Critical patent/CN113194090B/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/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0442Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • 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/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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Power Engineering (AREA)
  • Storage Device Security (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本申请适用于数据安全技术领域,提供了一种鉴权方法、鉴权装置、终端设备及计算机可读存储介质,应用于鉴权系统,对于任意一个所述子系统,所述鉴权方法包括:当子系统监测到客户端发送的第一请求信息时,子系统获取第一系统密钥,第一请求信息包括由第二系统密钥加密后的第一认证信息;子系统根据第一系统密钥对第一认证信息进行解密处理,获得第二认证信息;子系统根据第二认证信息进行鉴权处理,获得鉴权结果。通过上述方法,可以有效减少用户密钥的泄露风险、提高数据的安全性。

Description

鉴权方法、鉴权装置、终端设备及计算机可读存储介质
技术领域
本申请属于信息安全技术领域,尤其涉及鉴权方法、鉴权装置、终端设备及计算机可读存储介质。
背景技术
随着云计算的发展,云数据的存储量、处理量也逐步增多,随之而来的一个严峻问题即是数据安全。常用手段是通过鉴权的方式来保证云数据的安全。现有的鉴权方法中,客户端向服务端发送请求信息,该请求信息中包括预设字符串、由用户密钥对预设字符串签名后的第一签名信息以及与用户密钥匹配的密钥标识符;服务端获取预先存储的与请求信息中的密钥标识符匹配的用户密钥,然后利用用户密钥对请求信息中的预设字符串重新进行签名,得到第二签名信息,然后通过将第二签名信息与请求信息中的第一签名信息进行比对,以确定鉴权结果。
从上述方法中可以看出,现有的鉴权方法需要将用户密钥预先存储于服务端。尤其当服务端存在多个子系统时,需要将用户密钥分发到每个子系统,这无疑增加了用户密钥的泄露风险,降低数据安全性。
发明内容
本申请实施例提供了一种鉴权方法、鉴权装置、终端设备及计算机可读存储介质,可以有效减少用户密钥的泄露风险、提高数据的安全性。
第一方面,本申请实施例提供了一种鉴权方法,应用于鉴权系统,所述鉴权系统包括密钥管理中心和多个子系统,所述子系统用于与客户端通信连接,所述密钥管理中心分别与每个子系统通信连接,所述密钥管理中心用于生成并存储所述鉴权系统的第一系统密钥和第二系统密钥、并将所述第一系统密钥下发至所述子系统,所述第一系统密钥和所述第二系统密钥为一对非对称密钥;
对于任意一个所述子系统,所述鉴权方法包括:
当所述子系统监测到所述客户端发送的第一请求信息时,所述子系统获取所述第一系统密钥,所述第一请求信息包括由所述第二系统密钥加密后的第一认证信息;
所述子系统根据所述第一系统密钥对所述第一认证信息进行解密处理,获得第二认证信息;
所述子系统根据所述第二认证信息进行鉴权处理,获得鉴权结果。
在本申请实施例中,客户端发送给子系统的第一请求信息中包括由鉴权系统的第一系统密钥加密后的第一认证信息;子系统只需从密钥管理中心获取鉴权系统的第二系统密钥,即可利用第二系统密钥对第一认证信息进行解密获得第二认证信息,最后根据第二认证信息进行鉴权处理。通过上述方法,子系统无需获取用户密钥即可进行鉴权处理,有效避免了用户密钥的泄露,保证了数据的安全性。
在第一方面的一种可能的实现方式中,当所述子系统监测到所述客户端发送的第一请求信息时,所述子系统获取所述第一系统密钥,包括:
当所述子系统监测到所述客户端发送的第一请求信息时,判断所述子系统是否存储有所述第一系统密钥;
若所述子系统未存储有所述第一系统密钥,则所述子系统从所述密钥管理中心获取所述第一系统密钥。
在第一方面的一种可能的实现方式中,所述第一请求信息中还包括第二请求信息;
所述第二认证信息包括第一用户密钥和用户身份认证信息,所述用户身份认证信息包括所述第一认证信息的验证信息;
所述子系统根据所述第二认证信息进行鉴权处理,获得鉴权结果,包括:
根据所述第一认证信息的验证信息验证所述第一认证信息是否有效;
若所述第一认证信息有效,则根据所述第一用户密钥和所述第二请求信息进行鉴权处理,获得鉴权结果。
在第一方面的一种可能的实现方式中,所述第二请求信息包括初始请求以及通过第二用户密钥对所述初始请求签名后的第一签名请求,所述第一用户密钥和所述第二用户密钥为一对非对称密钥;
所述若所述第一认证信息有效,则根据所述第一用户密钥和所述第二请求信息进行鉴权处理,获得鉴权结果,包括:
根据所述第一用户密钥对所述初始请求进行签名,得到第二签名请求;
比对所述第一签名请求和所述第二签名请求是否一致;
若所述第一签名请求和所述第二签名请求一致,则根据所述初始请求和所述用户身份认证信息进行鉴权处理,获得鉴权结果。
在第一方面的一种可能的实现方式中,所述根据所述第一用户密钥对所述初始请求进行签名,得到第二签名请求,包括:
获取所述第一用户密钥的状态信息;
根据所述第一用户密钥的状态信息验证所述第一用户密钥是否有效;
若所述第一用户密钥有效,则根据所述第一用户密钥对所述初始请求进行签名,得到所述第二签名请求。
在第一方面的一种可能的实现方式中,所述初始请求包括请求动作;
所述用户身份认证信息包括请求权限;
所述若所述第一签名请求和所述第二签名请求一致,则根据所述初始请求和所述用户身份认证信息进行鉴权处理,获得鉴权结果,包括:
验证所述初始请求中的所述请求动作是否符合所述用户身份认证信息中的所述请求权限;
若所述初始请求中的所述请求动作符合所述用户身份认证信息中的所述请求权限,则所述鉴权结果为通过;
若所述初始请求中的所述请求动作不符合所述用户身份认证信息中的所述请求权限,则所述鉴权结果为未通过。
在第一方面的一种可能的实现方式中,所述方法还包括:
若所述子系统监测到所述密钥管理中心发送的密钥更新通知,则从所述密钥管理中心获取更新后的所述第一系统密钥;
将更新后的所述第一系统密钥存储到所述子系统。
第二方面,本申请实施例提供了一种鉴权装置,应用于鉴权系统,所述鉴权系统包括密钥管理中心和多个子系统,所述子系统用于与客户端通信连接,所述密钥管理中心分别与每个子系统通信连接,所述密钥管理中心用于生成并存储所述鉴权系统的第一系统密钥和第二系统密钥、并将所述第一系统密钥下发至所述子系统,所述第一系统密钥和所述第二系统密钥为一对非对称密钥;
所述装置包括:
获取单元,用于当所述子系统监测到所述客户端发送的第一请求信息时,所述子系统获取所述第一系统密钥,所述第一请求信息包括由所述第二系统密钥加密后的第一认证信息;
解密单元,用于所述子系统根据所述第一系统密钥对所述第一认证信息进行解密处理,获得第二认证信息;
鉴权单元,用于所述子系统根据所述第二认证信息进行鉴权处理,获得鉴权结果。
第三方面,本申请实施例提供了一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如上述第一方面中任一项所述的鉴权方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如上述第一方面中任一项所述的鉴权方法。
第五方面,本申请实施例提供了一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备执行上述第一方面中任一项所述的鉴权方法。
可以理解的是,上述第二方面至第五方面的有益效果可以参见上述第一方面中的相关描述,在此不再赘述。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的鉴权系统的示意图;
图2是本申请实施例提供的用户密钥创建的流程示意图;
图3是本申请实施例提供的鉴权流程示意图;
图4是本申请实施例提供的用户密钥变更流程的示意图;
图5是本申请实施例提供的鉴权装置的结构框图;
图6是本申请实施例提供的终端设备的结构示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
应当理解,当在本申请说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
如在本申请说明书和所附权利要求书中所使用的那样,术语“若”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。
另外,在本申请说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
在本申请说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。
参见图1,是本申请实施例提供的鉴权系统的示意图。如图1所示,鉴权系统包括密钥管理中心11和多个子系统12。子系统用于与客户端13通信连接。密钥管理中心分别与每个子系统通信连接,密钥管理中心用于生成并存储鉴权系统的第一系统密钥和第二系统密钥、并将第一系统密钥下发至子系统。其中,第一系统密钥和第二系统密钥为一对非对称密钥。
非对称密钥是指,一把密钥作为公钥,一把密钥作为私钥。公钥加密的信息只有私钥才能解密;反之,私钥加密的信息只有公钥才能解密。使用非对称密钥进行加密的方法为非对称加密算法,该算法的一个优势在于,加解密使用不同的密钥,数据安全性较高;另一个优势在于,可以利用私钥来签名,用公钥来验证签名,这样两把密钥可以分别保管,而避免密钥泄露风险。
可选的,密钥管理中心可以定时主动发起密钥更新,并在更新完毕后,将更新后的第一系统密钥下发至子系统,而更新后的第二系统密钥则由密钥管理中心保管。
其中,可以是第一系统密钥为公钥、第二系统密钥为私钥,也可以是第一系统密钥为私钥、第二系统密钥为公钥。但是实际应用中,通常将第一系统密钥为公钥,第二系统密钥为私钥。相当于鉴权系统的私钥仅由密钥管理中心保管,而鉴权系统的公钥可以下发至各子系统,这样可以保证鉴权系统的私钥的安全性。
下述实施例中均以第一系统密钥为公钥、第二系统密钥为私钥进行说明。另外,为了便于说明,本申请实施例中第一系统密钥用PPK表示,第二系统密钥用PSK表示。
可选的,每个子系统可以包括子系统网关和子系统鉴权中心。子系统网关用于进行客户端和子系统鉴权中心之间的数据交互,子系统鉴权中心用于进行鉴权处理。
本申请实施例提供的鉴权方法包括创建用户密钥流程、创建鉴权请求流程和鉴权流程。
首先介绍创建用户密钥流程。参见图2,是本申请实施例提供的用户密钥创建的流程示意图。如图2所示,作为示例而非限定,用户密钥创建流程可以包括以下步骤:
用户登录客户端,并将用户身份认证信息上传客户端。客户端将用户身份认证信息发送给鉴权系统中的密钥管理中心。密钥管理中心首先为用户生成一对非对称密钥:第一用户密钥和第二用户密钥;然后利用已生成的PSK对第二认证信息(包括第一用户密钥和用户身份认证信息)进行加密,获得第一认证信息;最后将第一用户密钥、第二用户密钥和第一认证信息通过客户端返回给用户。
其中,用户身份认证信息中可以包括用户ID、第一认证信息的版本信息、第一认证信息的时效信息以及其他权限信息(如请求类型、请求权限等)。
这里的第一用户密钥和第二用户密钥也为一对非对称密钥。当第一用户密钥为公钥时,第二用户密钥表示私钥;当第一用户密钥为私钥时,第二用户密钥表示公钥。
在后续鉴权流程中,用户需要将第一认证信息和第一用户密钥作为请求信息发送给子系统,而第二用户密钥由用户保存。本申请实施例中,第一用户密钥为公钥,第二用户密钥为私钥,这样相当于将用户私钥由用户自己保存,而后续鉴权流程中子系统无需获取用户私钥,避免用户私钥的泄露风险。为了便于说明,本申请实施例中第一用户密钥用UPK表示,第二用户密钥用USK表示,第一认证信息用UIK表示。
下面介绍创建鉴权请求流程,该流程由客户端执行。可以包括以下步骤:
首先生成初始请求;然后利用USK对初始请求进行签名,得到第一签名请求(后续用REQ_SIGNATURE表示);将初始请求、UIK和REQ_SIGNATURE生成第一请求信息,并对第一请求信息进行编码;将编码后的第一请求信息作为最终的请求信息。
在后续鉴权流程中,客户端将第一请求信息发送给子系统,以使子系统根据第一请求信息进行鉴权处理。可以通过HTTP GET或者POST的方式发送第一请求信息。
本申请实施例中的初始请求信息可以包括请求动作、请求编号和请求时间等信息。
示例性的,假设初始请求为:
{
"instance":"i-987654321",
"zone":"us-east-02",
"action":"DescribeInstances",
}
根据初始请求、UIK和REQ_SIGNATURE生成的第一请求信息为:
{'action':'DescribeInstances',
'identity_key':
'eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1cGsiOiItLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLVxuTUlHZk1BMEdDU3FHU0liM0RRRUJBUVVBQTRHTkFEQ0JpUUtCZ1FETlFxWEI2d3lWZEtyUVBYL2I4SGhPTE5wOFxuTHFvVUE1cTg4WmsrREZVQW02aTFwVTd5REQ0SnJDK0RIQmo5TGcyZHVnVFg5MVRsY0E1MFR2ckFjOUtsTjcvK1xuK0VydTJyUm5kVkdicDdFbitvVzZFRTNBUDlkKzVXUTNqNU5GS200VjZhUno5VUNXSnRHUlVUR3pyRGlJNHJwa1xuenRIRSsyeGVnZ0lWVDVKN0xRSURBUUFCXG4tLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0iLCJ2ZXJzaW9uIjoxLCJtb2RlIjoicmVhZF9vbmx5Iiwic2NvcGUiOiJvYmplY3Rfc3RvcmUiLCJleHBpcmVkIjoiMjAyMS0wNS0wMyIsInVzZXIiOiJ1c3ItMTIzNDU2Nzg5In0.ZvqIZUfeQSh0CUCicZgOB4rmN_4pxnkRHHMe3bdYPFr2rl6trwWgvnO_EE1SjV4YjlF1uXiWHjYHtRGTUH32RQAYamAOryEU-jkGBRKzoBPKTMGebK1n4BzrJXHK9kmU3Q_Q4Ac5gcCAJW6HKExsZmeufviFCVHRdgx-ohuFAKE',//UIK
'instance':'i-987654321',
'signature':
'NDE5NjE3Mzc4ODIwNTYwMjY1NTc0NzY1MjE5MzcwNzEwNDM5MTUzNjkyOTQwMzM2NDg2MzY0MDc4MDE1NTU2MjY4MzczMzYzMDI4NjkwNjE4NzExNTg4MjE1ODk2MDkyNjQzNDMyNzE3NjU4NjEwMzQzMzU2ODMwNTE3MjgxNTAwNTg3ODc5MDI4NTMwMjkyMzUxOTcyNTQwOTUwODg3NTMzMzczNTEzMzA5MzE4NTQ0NDMyNTMyMTQ1MTUyMzIyMDc3ODgzODEyNTcwMjU4ODIwOTA5MjU0NjQ4MTM3MTAyOTAzMjY2MzgyODg4NDA2NDU0OTE1MjkyODc2NjgwNTQwNTMzNzQ1MDYwMjIxMDg0OTkwMzYyMzE1ODI3OTU5MjM4NjE4ODE5NjcwNDk4MzIzFAKE',//REQ_SIGNATURE
'zone':'us-east-02'
}
下面介绍鉴权流程,该流程由子系统鉴权中心执行。参见图3,是本申请实施例提供的鉴权流程示意图。作为示例而非限定,对于任意一个子系统鉴权流程,可以包括以下步骤:
1、当子系统网关监测到客户端发送的第一请求信息时,将第一请求信息发送给子系统鉴权中心。
2、子系统鉴权中心先判断是否存储有PPK;若无存储,则从密钥管理中心获取最新的PPK。
实际应用中,为了避免子系统鉴权中心频繁地从密钥管理中心获取PPK,可以允许子系统鉴权中心短时间存储PPK。
3、子系统鉴权中心利用获取到的PPK对第一请求信息红的UIK进行解密处理,获得第二认证信息。
由于UIK是由PSK加密第二认证信息后的信息,而PSK和PPK是一对非对称密钥,因此只要PPK才能解密UIK。若成功解密,说明UIK身份合法,继续后续鉴权步骤;若加密失败,说明UIK身份无效,则向子系统网关返回鉴权失败的信息,并由子系统网关将该失败信息返回给客户端。
解密后的第二认证信息中包括UPK和用户身份认证信息,用户身份认证信息中包括用户ID、UIK的版本信息和UIK的时效信息以及其他权限信息(如请求类型、请求权限等)。
4、子系统鉴权中心根据UIK的验证信息(即版本信息和时效信息)验证UIK是否有效;若UIK有效,则进行步骤5;若UIK无效,则向子系统网关返回鉴权失败的信息,并由子系统网关将该失败信息返回给客户端。
验证UIK是否有效可以包括:验证UIK的版本信息是否正确、以及UIK是否在有效期限内。
5、子系统鉴权中心验证第二认证信息中的UPK是否有效;若UPK有效,则继续步骤6;若UPK无效,则向子系统网关返回鉴权失败的信息,并由子系统网关将该失败信息返回给客户端。
这里验证UPK的有效性,可以验证UPK是否已经过期以及UPK版本是否正确等。如果UPK过期或版本不对,则说明UPK无效。
实际应用中,UPK是由密钥管理中心生成的,因此,UPK的状态信息由密钥管理中心保存。但为了避免子系统鉴权中心频繁地从密钥管理中心获取状态信息,可以允许子系统鉴权中心短时间内保存UPK的状态信息。
子系统鉴权中心可以先判断是否存储有UPK的状态信息;若无存储,则从密钥管理中心获取UPK的状态信息。
在一个应用场景中,参见图4,是本申请实施例提供的用户密钥变更流程的示意图。用户可能主动申请删除/变更UPK和USK。用户将按照图2实施例中所述的方法向密钥管理中心获取更新后的UPK和USK,或者向密钥管理中心申请删除现有的UPK和USK。如图4所示,密钥管理中心在更新UPK和USK的状态信息后,将更新后的状态信息及时下发到各个子系统中。若此时子系统中缓存有UPK的状态信息,那么子系统鉴权中心在接收到密钥管理中心下发的更新后的状态信息后、更新缓存的UPK的状态信息、并根据更新后的状态信息判断当前第二认证信息中的UPK是否有效。
6、子系统鉴权中心验证利用UPK对第一请求信息中的初始请求进行签名,获得第二签名请求;比对第二签名请求和第一请求信息中的REQ_SIGNATURE是否一致;若一致,则继续进行步骤7;若不一致,说明该请求可能已被篡改,该请求无效,则向子系统网关返回鉴权失败的信息,并由子系统网关将该失败信息返回给客户端。
由非对称密钥的特点可知,可以利用私钥来签名,用公钥来验证签名。而REQ_SIGNATURE是由USK对初始请求签名得到的,因此可以用UPK对初始请求进行验证签名,是否和REQ_SIGNATURE一致。通过上述方法,既能实现签名验证,子系统又无需获取USK,有效避免了USK的泄露风险,提高了数据的安全性。
7、子系统鉴权中心验证验证初始请求中的请求动作是否符合用户身份认证信息中的请求权限;若符合,则鉴权结果为通过;若不符合,则向子系统网关返回鉴权失败的信息,并由子系统网关将该失败信息返回给客户端。
示例性的,假设初始请求中的请求动作为写操作,但用户身份认证信息中的请求权限定义只能用于读操作,则判定请求动作不符合用户身份认证信息中的请求权限。
当鉴权结果为通过后,子系统鉴权中心将鉴权结果返回给子系统网关,由子系统网关继续根据第一请求信息执行请求动作。在子系统网关执行请求动作后,向客户端响应执行结果。
在本申请实施例中,客户端发送给子系统的第一请求信息中包括由鉴权系统的第一系统密钥加密后的第一认证信息;子系统只需从密钥管理中心获取鉴权系统的第二系统密钥,即可利用第二系统密钥对第一认证信息进行解密获得第二认证信息,最后根据第二认证信息进行鉴权处理。通过上述方法,子系统无需获取用户的私钥即可进行鉴权处理,有效避免了用户私钥的泄露,保证了数据的安全性。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
对应于上文实施例所述的鉴权方法,图5是本申请实施例提供的鉴权装置的结构框图,为了便于说明,仅示出了与本申请实施例相关的部分。
参照图5,该装置包括:
获取单元51,用于当所述子系统监测到所述客户端发送的第一请求信息时,所述子系统获取所述第一系统密钥,所述第一请求信息包括由所述第二系统密钥加密后的第一认证信息。
解密单元52,用于所述子系统根据所述第一系统密钥对所述第一认证信息进行解密处理,获得第二认证信息。
鉴权单元53,用于所述子系统根据所述第二认证信息进行鉴权处理,获得鉴权结果。
可选的,获取单元51还用于:
当所述子系统监测到所述客户端发送的第一请求信息时,判断所述子系统是否存储有所述第一系统密钥;若所述子系统未存储有所述第一系统密钥,则所述子系统从所述密钥管理中心获取所述第一系统密钥。
可选的,所述第一请求信息中还包括第二请求信息;所述第二认证信息包括第一用户密钥和用户身份认证信息,所述用户身份认证信息包括所述第一认证信息的验证信息。
可选的,鉴权单元53还用于:
根据所述第一认证信息的验证信息验证所述第一认证信息是否有效;若所述第一认证信息有效,则根据所述第一用户密钥和所述第二请求信息进行鉴权处理,获得鉴权结果。
可选的,所述第二请求信息包括初始请求以及通过第二用户密钥对所述初始请求签名后的第一签名请求,所述第一用户密钥和所述第二用户密钥为一对非对称密钥。
可选的,鉴权单元53还用于:
根据所述第一用户密钥对所述初始请求进行签名,得到第二签名请求;比对所述第一签名请求和所述第二签名请求是否一致;若所述第一签名请求和所述第二签名请求一致,则根据所述初始请求和所述用户身份认证信息进行鉴权处理,获得鉴权结果。
可选的,鉴权单元53还用于:
获取所述第一用户密钥的状态信息;根据所述第一用户密钥的状态信息验证所述第一用户密钥是否有效;若所述第一用户密钥有效,则根据所述第一用户密钥对所述初始请求进行签名,得到所述第二签名请求。
可选的,所述初始请求包括请求动作;所述用户身份认证信息包括请求权限。
可选的,鉴权单元53还用于:
验证所述初始请求中的所述请求动作是否符合所述用户身份认证信息中的所述请求权限;若所述初始请求中的所述请求动作符合所述用户身份认证信息中的所述请求权限,则所述鉴权结果为通过;若所述初始请求中的所述请求动作不符合所述用户身份认证信息中的所述请求权限,则所述鉴权结果为未通过。
可选的,装置5还包括:
密钥更新单元,用于若所述子系统监测到所述密钥管理中心发送的密钥更新通知,则从所述密钥管理中心获取更新后的所述第一系统密钥;将更新后的所述第一系统密钥存储到所述子系统。
需要说明的是,上述装置/单元之间的信息交互、执行过程等内容,由于与本申请方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。
另外,图5所示的鉴权装置可以是内置于现有的终端设备内的软件单元、硬件单元、或软硬结合的单元,也可以作为独立的挂件集成到所述终端设备中,还可以作为独立的终端设备存在。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
图6是本申请实施例提供的终端设备的结构示意图。如图6所示,该实施例的终端设备6包括:至少一个处理器60(图6中仅示出一个)处理器、存储器61以及存储在所述存储器61中并可在所述至少一个处理器60上运行的计算机程序62,所述处理器60执行所述计算机程序62时实现上述任意各个方法实施例中的步骤。
所述终端设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。该终端设备可包括,但不仅限于,处理器、存储器。本领域技术人员可以理解,图6仅仅是终端设备6的举例,并不构成对终端设备6的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如还可以包括输入输出设备、网络接入设备等。
所称处理器60可以是中央处理单元(Central Processing Unit,CPU),该处理器60还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器61在一些实施例中可以是所述终端设备6的内部存储单元,例如终端设备6的硬盘或内存。所述存储器61在另一些实施例中也可以是所述终端设备6的外部存储设备,例如所述终端设备6上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器61还可以既包括所述终端设备6的内部存储单元也包括外部存储设备。所述存储器61用于存储操作系统、应用程序、引导装载程序(BootLoader)、数据以及其他程序等,例如所述计算机程序的程序代码等。所述存储器61还可以用于暂时地存储已经输出或者将要输出的数据。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现可实现上述各个方法实施例中的步骤。
本申请实施例提供了一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备执行时实现可实现上述各个方法实施例中的步骤。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质至少可以包括:能够将计算机程序代码携带到装置/终端设备的任何实体或装置、记录介质、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random AccessMemory)、电载波信号、电信信号以及软件分发介质。例如U盘、移动硬盘、磁碟或者光盘等。在某些司法管辖区,根据立法和专利实践,计算机可读介质不可以是电载波信号和电信信号。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的装置/终端设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/终端设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。

Claims (10)

1.一种鉴权方法,其特征在于,应用于鉴权系统,所述鉴权系统包括密钥管理中心和多个子系统,所述子系统用于与客户端通信连接,所述密钥管理中心分别与每个子系统通信连接,所述密钥管理中心用于生成并存储所述鉴权系统的第一系统密钥和第二系统密钥、并将所述第一系统密钥下发至所述子系统,所述第一系统密钥和所述第二系统密钥为一对非对称密钥;
对于任意一个所述子系统,所述鉴权方法包括:
当所述子系统监测到所述客户端发送的第一请求信息时,所述子系统获取所述第一系统密钥,所述第一请求信息包括由所述第二系统密钥加密后的第一认证信息;
所述子系统根据所述第一系统密钥对所述第一认证信息进行解密处理,获得第二认证信息;
所述子系统根据所述第二认证信息进行鉴权处理,获得鉴权结果。
2.如权利要求1所述的鉴权方法,其特征在于,当所述子系统监测到所述客户端发送的第一请求信息时,所述子系统获取所述第一系统密钥,包括:
当所述子系统监测到所述客户端发送的第一请求信息时,判断所述子系统是否存储有所述第一系统密钥;
若所述子系统未存储有所述第一系统密钥,则所述子系统从所述密钥管理中心获取所述第一系统密钥。
3.如权利要求1所述的鉴权方法,其特征在于,所述第一请求信息中还包括第二请求信息;
所述第二认证信息包括第一用户密钥和用户身份认证信息,所述用户身份认证信息包括所述第一认证信息的验证信息;
所述子系统根据所述第二认证信息进行鉴权处理,获得鉴权结果,包括:
根据所述第一认证信息的验证信息验证所述第一认证信息是否有效;
若所述第一认证信息有效,则根据所述第一用户密钥和所述第二请求信息进行鉴权处理,获得鉴权结果。
4.如权利要求3所述的鉴权方法,其特征在于,所述第二请求信息包括初始请求以及通过第二用户密钥对所述初始请求签名后的第一签名请求,所述第一用户密钥和所述第二用户密钥为一对非对称密钥;
所述若所述第一认证信息有效,则根据所述第一用户密钥和所述第二请求信息进行鉴权处理,获得鉴权结果,包括:
根据所述第一用户密钥对所述初始请求进行签名,得到第二签名请求;
比对所述第一签名请求和所述第二签名请求是否一致;
若所述第一签名请求和所述第二签名请求一致,则根据所述初始请求和所述用户身份认证信息进行鉴权处理,获得鉴权结果。
5.如权利要求4所述的鉴权方法,其特征在于,所述根据所述第一用户密钥对所述初始请求进行签名,得到第二签名请求,包括:
获取所述第一用户密钥的状态信息;
根据所述第一用户密钥的状态信息验证所述第一用户密钥是否有效;
若所述第一用户密钥有效,则根据所述第一用户密钥对所述初始请求进行签名,得到所述第二签名请求。
6.如权利要求4所述的鉴权方法,其特征在于,所述初始请求包括请求动作;
所述用户身份认证信息包括请求权限;
所述若所述第一签名请求和所述第二签名请求一致,则根据所述初始请求和所述用户身份认证信息进行鉴权处理,获得鉴权结果,包括:
验证所述初始请求中的所述请求动作是否符合所述用户身份认证信息中的所述请求权限;
若所述初始请求中的所述请求动作符合所述用户身份认证信息中的所述请求权限,则所述鉴权结果为通过;
若所述初始请求中的所述请求动作不符合所述用户身份认证信息中的所述请求权限,则所述鉴权结果为未通过。
7.如权利要求1所述的鉴权方法,其特征在于,所述方法还包括:
若所述子系统监测到所述密钥管理中心发送的密钥更新通知,则从所述密钥管理中心获取更新后的所述第一系统密钥;
将更新后的所述第一系统密钥存储到所述子系统。
8.一种鉴权装置,其特征在于,应用于鉴权系统,所述鉴权系统包括密钥管理中心和多个子系统,所述子系统用于与客户端通信连接,所述密钥管理中心分别与每个子系统通信连接,所述密钥管理中心用于生成并存储所述鉴权系统的第一系统密钥和第二系统密钥、并将所述第一系统密钥下发至所述子系统,所述第一系统密钥和所述第二系统密钥为一对非对称密钥;
所述装置包括:
获取单元,用于当所述子系统监测到所述客户端发送的第一请求信息时,所述子系统获取所述第一系统密钥,所述第一请求信息包括由所述第二系统密钥加密后的第一认证信息;
解密单元,用于所述子系统根据所述第一系统密钥对所述第一认证信息进行解密处理,获得第二认证信息;
鉴权单元,用于所述子系统根据所述第二认证信息进行鉴权处理,获得鉴权结果。
9.一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7任一项所述的方法。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的方法。
CN202110468860.8A 2021-04-28 2021-04-28 鉴权方法、鉴权装置、终端设备及计算机可读存储介质 Active CN113194090B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110468860.8A CN113194090B (zh) 2021-04-28 2021-04-28 鉴权方法、鉴权装置、终端设备及计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110468860.8A CN113194090B (zh) 2021-04-28 2021-04-28 鉴权方法、鉴权装置、终端设备及计算机可读存储介质

Publications (2)

Publication Number Publication Date
CN113194090A true CN113194090A (zh) 2021-07-30
CN113194090B CN113194090B (zh) 2023-04-18

Family

ID=76980250

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110468860.8A Active CN113194090B (zh) 2021-04-28 2021-04-28 鉴权方法、鉴权装置、终端设备及计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN113194090B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106657152A (zh) * 2017-02-07 2017-05-10 腾讯科技(深圳)有限公司 一种鉴权方法及服务器、访问控制装置
CN110535807A (zh) * 2018-05-24 2019-12-03 腾讯科技(深圳)有限公司 一种业务鉴权方法、装置和介质
WO2021004392A1 (zh) * 2019-07-05 2021-01-14 华为技术有限公司 鉴权方法、设备及服务器
CN112257093A (zh) * 2020-11-09 2021-01-22 天冕信息技术(深圳)有限公司 数据对象的鉴权方法、终端及存储介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106657152A (zh) * 2017-02-07 2017-05-10 腾讯科技(深圳)有限公司 一种鉴权方法及服务器、访问控制装置
CN110535807A (zh) * 2018-05-24 2019-12-03 腾讯科技(深圳)有限公司 一种业务鉴权方法、装置和介质
WO2021004392A1 (zh) * 2019-07-05 2021-01-14 华为技术有限公司 鉴权方法、设备及服务器
CN112257093A (zh) * 2020-11-09 2021-01-22 天冕信息技术(深圳)有限公司 数据对象的鉴权方法、终端及存储介质

Also Published As

Publication number Publication date
CN113194090B (zh) 2023-04-18

Similar Documents

Publication Publication Date Title
US9838205B2 (en) Network authentication method for secure electronic transactions
CN109194465B (zh) 用于管理密钥的方法、用户设备、管理设备、存储介质
CN112187544B (zh) 固件升级方法、装置、计算机设备及存储介质
US8495383B2 (en) Method for the secure storing of program state data in an electronic device
WO2021219086A1 (zh) 基于区块链的数据传输方法和系统
US20230368194A1 (en) Encryption method and decryption method for payment key, payment authentication method, and terminal device
JPH11225142A (ja) 認証装置および方法
CN110611657A (zh) 一种基于区块链的文件流处理的方法、装置及系统
CN106936588B (zh) 一种硬件控制锁的托管方法、装置及系统
CN111130798B (zh) 一种请求鉴权方法及相关设备
CN109660534B (zh) 基于多商户的安全认证方法、装置、电子设备及存储介质
CN111971929A (zh) 安全分布式密钥管理系统
US20230370263A1 (en) Master key escrow process
CN112235301B (zh) 访问权限的验证方法、装置和电子设备
CN112765626A (zh) 基于托管密钥授权签名方法、装置、系统及存储介质
CN113688399A (zh) 固件数字签名保护方法、装置、计算机设备及存储介质
CN111241492A (zh) 一种产品多租户安全授信方法、系统及电子设备
CN105873043B (zh) 一种用于移动终端的网络私匙的生成及应用方法及其系统
CN111953477B (zh) 终端设备及其标识令牌的生成方法和客户端的交互方法
CN115549930B (zh) 登录操作系统的验证方法
CN115242471B (zh) 信息传输方法、装置、电子设备及计算机可读存储介质
CN114048513A (zh) 一种一次性数字证书申请及签名系统及方法
CN113194090B (zh) 鉴权方法、鉴权装置、终端设备及计算机可读存储介质
CN115037480A (zh) 设备认证和校验的方法、装置、设备和存储介质
CN114661314A (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