CN116962397A - 跨域资源访问方法、装置、设备及存储介质 - Google Patents
跨域资源访问方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN116962397A CN116962397A CN202210823287.2A CN202210823287A CN116962397A CN 116962397 A CN116962397 A CN 116962397A CN 202210823287 A CN202210823287 A CN 202210823287A CN 116962397 A CN116962397 A CN 116962397A
- Authority
- CN
- China
- Prior art keywords
- resource
- domain
- cross
- authentication
- request
- 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.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- 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/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network 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
-
- 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/0823—Network architectures or network communication protocols for network security for authentication of entities using certificates
-
- 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
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)
- Storage Device Security (AREA)
Abstract
本发明属于计算机技术领域,公开了一种跨域资源访问方法、装置、设备及存储介质。本发明通过根据接收到第一资源域中用户节点发送的跨域认证请求构建背书认证请求;令联盟链中的全局认证节点根据背书认证请求进行可信认证,并在认证通过时发布可信认证响应至联盟链;将可信认证响应转发至用户节点,以使用户节点反馈资源授权请求;令第二资源域中目标节点根据资源授权请求发布资源授权响应至联盟链;将资源授权响应发送至用户节点,以使用户节点基于资源授权响应进行跨域资源访问。由于在跨域访问过程中将认证与授权过程分离,实现了联盟链认证和资源域授权解耦,将各节点责任分工明确,从而在保证资源跨域访问的同时也减少了数据滥用的风险。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种跨域资源访问方法、装置、设备及存储介质。
背景技术
目前,不同省市、政府部门、单位、组织以及企业(以下统称为资源域)均掌握了各自的大量数据,不同资源域各自掌握的数据彼此之间形成了数据孤岛,不同资源域之间难以在避免数据滥用的同时,有效的进行跨域资源访问。
上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。
发明内容
本发明的主要目的在于提供一种跨域资源访问方法、装置、设备及存储介质,旨在解决现有技术难以在避免数据滥用的同时,有效的进行跨域资源访问的技术问题。
为实现上述目的,本发明提供了一种跨域资源访问方法,所述方法包括以下步骤:
在接收到第一资源域中用户节点发送的跨域认证请求时,根据所述跨域认证请求构建背书认证请求;
将所述背书认证请求发布至联盟链,以使所述联盟链中的全局认证节点根据所述背书认证请求进行可信认证,并在认证通过时发布可信认证响应;
从所述联盟链读取所述可信认证响应,并将所述可信认证响应转发至所述用户节点,以使所述用户节点反馈资源授权请求;
将所述资源授权请求发布至所述联盟链,以使第二资源域中目标节点根据所述资源授权请求发布资源授权响应至所述联盟链;
从所述联盟链读取所述资源授权响应,并将所述资源授权响应发送至所述用户节点,以使所述用户节点基于所述资源授权响应进行跨域资源访问。
可选的,所述根据所述跨域认证请求构建背书认证请求的步骤,包括:
从所述跨域认证请求中提取跨域请求参数及用户签名数据;
根据预设背书私钥对所述跨域请求参数进行加密,生成背书签名;
根据所述背书签名及所述用户签名数据生成联合签名,并根据所述联合签名及所述跨域请求参数构建背书认证请求。
可选的,所述根据预设背书私钥对所述跨域请求参数进行加密,生成背书签名的步骤之前,还包括:
从所述跨域请求参数中提取用户节点标识及用户签名证书;
根据所述用户节点标识查找对应的缓存签名证书;
若所述用户签名证书与所述缓存签名证书一致,则执行所述根据预设背书私钥对所述跨域请求参数进行加密,生成背书签名的步骤。
可选的,所述将所述背书认证请求发布至联盟链,以使所述联盟链中的全局认证节点根据所述背书认证请求进行可信认证,并在认证通过时发布可信认证响应的步骤,包括:
将所述背书认证请求发布至联盟链,以使所述联盟链中的全局认证节点从所述背书认证请求中提取背书请求参数及联合签名,根据所述背书请求参数对所述联合签名进行可信认证,在认证通过时,生成单次通信密钥,从所述背书认证请求中提取用户加密证书,根据所述单次通信密钥、所述用户加密证书及所述背书请求参数生成并发布可信认证响应。
可选的,所述将所述可信认证响应转发至所述用户节点,以使所述用户节点反馈资源授权请求的步骤,包括:
将所述可信认证响应转发至所述用户节点,以使所述用户节点通过用户加密私钥对所述可信认证响应进行解密,获得随机会话密钥,根据所述随机会话密钥生成资源授权请求,并反馈所述资源授权请求。
可选的,所述将所述资源授权请求发布至所述联盟链,以使第二资源域中目标节点根据所述资源授权请求发布资源授权响应至所述联盟链的步骤,包括:
将所述资源授权请求发布至所述联盟链,以使第二资源域中目标节点从所述资源授权请求提取节点标识数据、第一加密数据及第二加密数据,并根据预共享通信密钥及所述节点标识数据对所述第一加密数据进行解密,获得随机会话密钥,根据所述随机会话密钥对所述第二加密数据进行解密,获得目标资源标识,根据所述目标资源标识查找对应的资源访问密钥,根据所述随机会话密钥及所述资源访问密钥生成资源授权响应,并将所述资源授权响应发布至所述联盟链。
可选的,所述将所述资源授权响应发送至所述用户节点,以使所述用户节点基于所述资源授权响应进行跨域资源访问的步骤,包括:
将所述资源授权响应发送至所述用户节点,以使所述用户节点根据缓存的随机会话密钥对所述资源授权响应进行解密,获得资源访问密钥,根据所述资源访问密钥进行跨域资源访问。
此外,为实现上述目的,本发明还提出一种跨域资源访问装置,所述跨域资源访问装置包括以下模块:
数据接收模块,用于在接收到第一资源域中用户节点发送的跨域认证请求时,根据所述跨域认证请求构建背书认证请求;
请求发布模块,用于将所述背书认证请求发布至联盟链,以使所述联盟链中的全局认证节点根据所述背书认证请求进行可信认证,并在认证通过时发布可信认证响应;
数据读取模块,用于从所述联盟链读取所述可信认证响应,并将所述可信认证响应转发至所述用户节点,以使所述用户节点反馈资源授权请求;
授权请求模块,用于将所述资源授权请求发布至所述联盟链,以使第二资源域中目标节点根据所述资源授权请求发布资源授权响应至所述联盟链;
授权响应模块,用于从所述联盟链读取所述资源授权响应,并将所述资源授权响应发送至所述用户节点,以使所述用户节点基于所述资源授权响应进行跨域资源访问。
此外,为实现上述目的,本发明还提出一种跨域资源访问设备,所述跨域资源访问设备包括:处理器、存储器及存储在所述存储器上并可在所述处理器上运行的跨域资源访问程序,所述跨域资源访问程序被处理器执行时实现如上所述的跨域资源访问方法的步骤。
此外,为实现上述目的,本发明还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有跨域资源访问程序,所述跨域资源访问程序执行时实现如上所述的跨域资源访问方法的步骤。
本发明通过在接收到第一资源域中用户节点发送的跨域认证请求时,根据跨域认证请求构建背书认证请求;将背书认证请求发布至联盟链,以使联盟链中的全局认证节点根据背书认证请求进行可信认证,并在认证通过时发布可信认证响应;从联盟链读取可信认证响应,并将可信认证响应转发至用户节点,以使用户节点反馈资源授权请求;将资源授权请求发布至联盟链,以使第二资源域中目标节点根据资源授权请求发布资源授权响应至联盟链;从联盟链读取资源授权响应,并将资源授权响应发送至用户节点,以使用户节点基于资源授权响应进行跨域资源访问。由于在跨域访问过程中将认证与授权过程分离,实现了联盟链认证和资源域授权解耦,将各节点责任分工明确,从而在保证资源跨域访问的同时也减少了数据滥用的风险。
附图说明
图1是本发明实施例方案涉及的硬件运行环境的电子设备的结构示意图;
图2为本发明跨域资源访问方法第一实施例的流程示意图;
图3为本发明跨域资源访问方法涉及系统的系统结构示意图;
图4为本发明跨域资源访问方法第二实施例的流程示意图;
图5为本发明跨域资源访问装置第一实施例的结构框图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
参照图1,图1为本发明实施例方案涉及的硬件运行环境的跨域资源访问设备结构示意图。
如图1所示,该电子设备可以包括:处理器1001,例如中央处理器(CentralProcessing Unit,CPU),通信总线1002、用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如无线保真(WIreless-FIdelity,WI-FI)接口)。存储器1005可以是高速的随机存取存储器(RandomAccess Memory,RAM),也可以是稳定的非易失性存储器(Non-Volatile Memory,NVM),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的结构并不构成对电子设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及跨域资源访问程序。
在图1所示的电子设备中,网络接口1004主要用于与网络服务器进行数据通信;用户接口1003主要用于与用户进行数据交互;本发明电子设备中的处理器1001、存储器1005可以设置在跨域资源访问设备中,所述电子设备通过处理器1001调用存储器1005中存储的跨域资源访问程序,并执行本发明实施例提供的跨域资源访问方法。
本发明实施例提供了一种跨域资源访问方法,参照图2,图2为本发明一种跨域资源访问方法第一实施例的流程示意图。
本实施例中,所述跨域资源访问方法包括以下步骤:
步骤S10:在接收到第一资源域中用户节点发送的跨域认证请求时,根据所述跨域认证请求构建背书认证请求。
需要说明的是,本实施例中的执行主体可以是所述跨域资源访问设备,所述跨域资源访问设备可以是个人电脑、服务器等电子设备,还可以是可实现相同或相似功能的设备,本实施例对此不加以限制,在本实施例及下述各实施例中,以跨域资源访问设备为例对本发明跨域资源访问方法进行说明。
需要说明的是,第一资源域可以是加联盟链中的任一资源域,用户节点可以是第一资源域中任一用户所使用的终端或账户,跨域资源访问设备可以是第一资源域中的资源域信任背书节点。在第一资源域中的用户节点在需要访问其他资源域的数据时,会发送跨域认证请求至所述跨域资源访问设备,而跨域资源访问设备在接收到跨域认证请求时,会读取跨域认证请求中的相关数据,对其进行进一步处理,从而生成背书认证请求。
步骤S20:将所述背书认证请求发布至联盟链,以使所述联盟链中的全局认证节点根据所述背书认证请求进行可信认证,并在认证通过时发布可信认证响应。
需要说明的是,全局认证节点可以是归属于联盟链的节点,全局认证节点会实时监测联盟链上是否存在新建的背书认证请求,若存在,则会读取背书认证请求,并基于背书认证请求进行可信认证,然后在认证通过时发布与背书认证请求对应的可信认证响应到联盟链中。
进一步的,为了便于后续进行数据认证,本实施例所述步骤S20,可以包括:
将所述背书认证请求发布至联盟链,以使所述联盟链中的全局认证节点从所述背书认证请求中提取背书请求参数及联合签名,根据所述背书请求参数对所述联合签名进行可信认证,在认证通过时,生成单次通信密钥,从所述背书认证请求中提取用户加密证书,根据所述单次通信密钥、所述用户加密证书及所述背书请求参数生成并发布可信认证响应。
需要说明的是,背书请求参数可以包括:待跨域访问资源的资源标识、时间戳、用户节点的用户标识、用户签名证书、用户加密证书、第一资源域中信任背书节点的节点标识等,其中,待跨域访问资源可以是用户节点跨域访问的目标资源。全局认证节点可以从背书请求参数中提取用户签名证书,然后利用用户签名证书中的公钥根据背书请求参数对联合签名进行可信认证,若认证通过,则表示该背书认证请求确实来源于跨域资源访问设备,身份真实可行,因此,可以生成可信认证响应,并将生成的可信认证响应发布在联盟链上。
在实际使用中,单次通信密钥可以通过对全局认证节点的节点标识及预共享通信密钥通过预设密钥生成算法进行计算得到,其中,预设密钥生成算法可以是SM4国密算法,预共享通信密钥可以由联盟链中的对称密钥管理系统下发。
需要说明的是,可信认证响应可以包括:第一资源域中信任背书节点的节点标识、用户节点的用户标识、全局认证节点标识、单次通信加密数据及证书加密数据,单次通信加密数据可以通过单次通信密钥对待加密数据进行加密得到,证书加密数据可以通过用户加密证书对待加密数据进行加密得到,待加密数据可以包括:待跨域访问资源的资源标识、时间戳、用户节点的用户标识、随机会话秘钥;其中,随机会话秘钥可以由全局认证节点的随机数生成组件生成。
步骤S30:从所述联盟链读取所述可信认证响应,并将所述可信认证响应转发至所述用户节点,以使所述用户节点反馈资源授权请求。
需要说明的是,跨域资源访问设备在发布背书认证请求到联盟链之后,会实时监测联盟链中是否生成背书认证请求对应的可信认证响应,若生成,则表示背书认证请求已经通过了联盟链的认证,则此时可以从联盟链中读取背书认证请求对应的可信认证响应,然后将可信认证响应转发至用户节点,则此时用户节点会从可信认证响应中读取跨域访问所需的相关参数,然后根据该参数生成资源授权请求,然后将资源授权请求反馈给跨域资源访问设备。
进一步的,为了便于第二资源域中的授权节点进行身份认证,所述将所述可信认证响应转发至所述用户节点,以使所述用户节点反馈资源授权请求的步骤,可以包括:
将所述可信认证响应转发至所述用户节点,以使所述用户节点通过用户加密私钥对所述可信认证响应进行解密,获得随机会话密钥,根据所述随机会话密钥生成资源授权请求,并反馈所述资源授权请求。
需要说明的是,用户加密私钥可以是与用户加密证书相对应的私钥。用户节点在接收到跨域资源访问设备转发的可信认证响应之后,可以读取可信认证响应中的证书加密数据,然后通过用户加密私钥对证书加密数据进行解密,从而获得随机会话秘钥。
在实际使用中,根据随机会话密钥生成资源授权请求可以是提取可信认证响应中的单次通信加密数据作为第一加密数据,根据随机会话秘钥对授权请求参数进行对称性加密,获得第二加密数据,然后根据第二资源域中资源域授权节点的节点标识、全局认证节点标识、第一加密数据及第二加密数据生成资源授权请求。
步骤S40:将所述资源授权请求发布至所述联盟链,以使第二资源域中目标节点根据所述资源授权请求发布资源授权响应至所述联盟链。
需要说明的是,第二资源域可以是待跨域访问资源所在的资源域。目标节点可以是第二资源域中的资源域授权节点。跨域资源访问设备在接收到资源授权请求时,会将资源授权请求发布至联盟链中,此时第二资源域中目标节点在监测到联盟链中存在资源授权请求时,会读取资源授权请求中的数据,然后根据该数据查找到用户节点跨域访问的目标资源,然后进行授权,并在授权完成时发布资源授权请求对应的资源授权响应到联盟链上。
进一步的,为了保证跨域资源访问的安全性,本实施例所述步骤S40,可以包括:
将所述资源授权请求发布至所述联盟链,以使第二资源域中目标节点从所述资源授权请求提取节点标识数据、第一加密数据及第二加密数据,并根据预共享通信密钥及所述节点标识数据对所述第一加密数据进行解密,获得随机会话密钥,根据所述随机会话密钥对所述第二加密数据进行解密,获得目标资源标识,根据所述目标资源标识查找对应的资源访问密钥,根据所述随机会话密钥及所述资源访问密钥生成资源授权响应,并将所述资源授权响应发布至所述联盟链。
需要说明的是,节点标识数据可以是全局认证节点的节点标识。根据预共享通信密钥及节点标识数据对第一加密数据进行解密,获得随机会话密钥可以是通过预设密钥生成算法根据预共享通信密钥及节点标识数据进行计算,获得单次通信密钥,然后通过单次通信密钥对第一加密数据进行解密,从解密后的数据中提取随机会话密钥。目标资源标识可以是待跨域访问资源的资源标识。
可以理解的是,第二加密数据是通过随机会话秘钥进行对称性加密生成的,则此时通过随机会话秘钥尝试对第二加密数据进行解密,若成功解密,则表示随机会话密钥是全局认证节点生成的,该资源授权请求经过全局认证节点的认证,可以进行资源访问授权,因此,可以从第二加密数据解密后的数据中读取目标资源标识,然后根据目标资源标识在第二资源域中查找对应的资源,获取查找到的资源对应的资源访问密钥,然后根据随机会话密钥及资源访问密钥生成资源授权响应,并将资源授权响应发布至联盟链中。
在实际使用中,根据随机会话密钥及资源访问密钥生成资源授权响应可以是通过随机会话秘钥对资源访问密钥进行对称性加密,生成加密资源访问密钥,然后根据加密资源访问密钥生成资源授权响应。其中,为了便于节点识别该资源授权响应,还可以在资源授权响应中添加第一资源域中资源域信任背书节点的节点标识、用户节点标识、待跨域访问资源的资源标识、第二资源域中资源域授权节点的节点标识。
步骤S50:从所述联盟链读取所述资源授权响应,并将所述资源授权响应发送至所述用户节点,以使所述用户节点基于所述资源授权响应进行跨域资源访问。
需要说明的是,跨域资源访问设备在发布资源授权请求到联盟链上之后,会实时监测联盟链上是否存在资源授权请求对应的资源授权响应,若存在,则会从联盟链中读取资源授权响应,然后将资源授权响应发送给用户节点,则此时用户节点会从资源授权响应中读取跨域资源访问所需的资源访问密钥,然后根据该资源访问密钥即可进行跨域资源访问。
进一步的,为了令获得授权的用户节点可以快速进行跨域资源访问,本实施例将所述资源授权响应发送至所述用户节点,以使所述用户节点基于所述资源授权响应进行跨域资源访问的步骤,可以包括:
将所述资源授权响应发送至所述用户节点,以使所述用户节点根据缓存的随机会话密钥对所述资源授权响应进行解密,获得资源访问密钥,根据所述资源访问密钥进行跨域资源访问。
需要说明的是,用户节点在生成资源授权请求时会将从可信认证响应中读取到的随机会话密钥进行缓存,则用户节点在接收到资源授权响应时,可以从资源授权响应中读取加密资源访问密钥,然后通过缓存的随机会话密钥对加密资源访问密钥进行解密,获得待跨域访问资源的资源访问密钥,则之后用户节点可以通过资源访问密钥访问直接跨域访问待跨域访问资源,而不必再次进行授权。
进一步的,为了便于理解,参考图3对本发明跨域资源访问方法进行说明,但不对本方案进行限定。图3为本发明跨域资源访问方法涉及系统的系统结构示意图。如图3所示,图3中联盟链包括多个资源域(图中仅以资源域A及资源域B进行示意),某个资源域内的用户有跨域请求其它域内资源的需求。整个资源申请过程分为:认证和授权两部分。认证过程由联盟链“全局认证节点”来完成,授权过程由被请求的资源所属域来完成。联盟链和各资源域共享同一个密码体系。每个资源域在联盟链上至少部署:1个“资源域信任背书节点”和1个“资源域授权节点”;每个资源域另外部署1套“二级CA”。整个联盟链至少部署:2个“全局认证节点”、1套“一级CA”和1套“对称密钥管理系统”。其中,数字证书认证系统分为两级,一级CA称为根CA,第二级CA称为业务CA,根CA为联盟链所有,是平台信任体系构建的源头,主要作用是签发业务CA根证书。业务CA为各资源域所有,功能是:为本资源域内的用户生成并发放签名证书和私钥,以及为本资源域内的用户生成并发放加密证书和私钥。对称密钥管理系统向联盟链的全局认证节点和资源域授权节点下发预共享通信密钥,以便于生成单次通信密钥,实现二者之间的安全通信。
本实施例通过在接收到第一资源域中用户节点发送的跨域认证请求时,根据跨域认证请求构建背书认证请求;将背书认证请求发布至联盟链,以使联盟链中的全局认证节点根据背书认证请求进行可信认证,并在认证通过时发布可信认证响应;从联盟链读取可信认证响应,并将可信认证响应转发至用户节点,以使用户节点反馈资源授权请求;将资源授权请求发布至联盟链,以使第二资源域中目标节点根据资源授权请求发布资源授权响应至联盟链;从联盟链读取资源授权响应,并将资源授权响应发送至用户节点,以使用户节点基于资源授权响应进行跨域资源访问。由于在跨域访问过程中将认证与授权过程分离,实现了联盟链认证和资源域授权解耦,将各节点责任分工明确,从而在保证资源跨域访问的同时也减少了数据滥用的风险。
参考图4,图4为本发明一种跨域资源访问方法第二实施例的流程示意图。
基于上述第一实施例,本实施例跨域资源访问方法在所述步骤S10,包括:
步骤S101:在接收到第一资源域中用户节点发送的跨域认证请求时,从所述跨域认证请求中提取跨域请求参数及用户签名数据。
需要说明的是,若跨域资源访问接收到第一资源域中用户节点发送的跨域认证请求,则表示该用户节点需要进行跨域访问,则此时可以从跨域认证请求中读取跨域请求参数及用户签名数据。其中,跨域请求参数可以包括:待跨域访问资源的资源标识、时间戳、用户节点的用户标识、用户签名证书、用户加密证书、第一资源域中信任背书节点的节点标识等,用户签名数据可以是用户节点根据签名私钥通过预设签名算法对跨域请求参数进行签名得到的,预设签名算法可以是SM2国密算法,签名私钥可以由第一资源域中的数字证书认证系统(CA)发放。
步骤S102:根据预设背书私钥对所述跨域请求参数进行加密,生成背书签名。
需要说明的是,预设背书私钥可以由第一资源域中的数字证书认证系统(CA)发放,预设背书私钥与用户节点的签名私钥有一定的数学关系,用于生成联合签名。根据预设背书私钥对跨域请求参数进行加密,生成背书签名可以是根据预设背书私钥通过预设加密算法对跨域请求参数进行加密,并将加密后生成的数据作为背书签名。其中,预设加密算法可以是SM2国密算法。
进一步的,为了确定用户节点的身份真实性,以确保数据安全性,本实施例所述步骤S102之前,还可以包括:
从所述跨域请求参数中提取用户节点标识及用户签名证书;
根据所述用户节点标识查找对应的缓存签名证书;
若所述用户签名证书与所述缓存签名证书一致,则执行所述根据预设背书私钥对所述跨域请求参数进行加密,生成背书签名的步骤。
需要说明的是,用户节点标识可以是用户节点的用户标识。跨域资源访问设备中可以保存有标识证书映射表,标识证书映射表中存储有跨域资源访问设备所处资源域中各用户节点标识与用户签名证书的映射关系。根据用户节点标识查找对应的缓存签名证书可以是根据用户节点标识在标识证书映射表中进行查找,并将查找到的用户签名证书作为缓存签名证书。
可以理解的是,若用户签名证书与缓存签名证书一致,则表示发起跨域认证请求的用户节点的身份是真实的,而非伪造的,因此,可以执行后续步骤。而若是用户签名证书与缓存签名证书不一致,则表示发起跨域认证请求的用户节点的身份是伪造的,因此,可以直接抛弃该跨域认证请求,必要时,还可以生成相应的告警日志,并将告警日志发送至联盟链的管理人员处进行展示。
步骤S103:根据所述背书签名及所述用户签名数据生成联合签名,并根据所述联合签名及所述跨域请求参数构建背书认证请求。
需要说明的是,预设背书私钥与用户节点中的签名私钥存在数学关系,则根据预设背书私钥生成的背书签名可以与用户签名数据生成联合签名。
在实际使用中,根据联合签名及跨域请求参数构建背书认证请求可以是将跨域请求参数及联合签名按背书认证请求对应的格式进行格式化,从而生成背书认证请求。
本实施例通过在接收到第一资源域中用户节点发送的跨域认证请求时,从所述跨域认证请求中提取跨域请求参数及用户签名数据;根据预设背书私钥对所述跨域请求参数进行加密,生成背书签名;根据所述背书签名及所述用户签名数据生成联合签名,并根据所述联合签名及所述跨域请求参数构建背书认证请求。由于在构建背书认证请求时是根据用户签名数据及背书签名生成联合签名,从而实现了对用户进行两级认证,进一步提高了本发明跨域资源访问方法的安全性。
此外,本发明实施例还提出一种存储介质,所述存储介质上存储有跨域资源访问程序,所述跨域资源访问程序被处理器执行时实现如上文所述的跨域资源访问方法的步骤。
参照图5,图5为本发明跨域资源访问装置第一实施例的结构框图。
如图5所示,本发明实施例提出的跨域资源访问装置包括:
数据接收模块10,用于在接收到第一资源域中用户节点发送的跨域认证请求时,根据所述跨域认证请求构建背书认证请求;
请求发布模块20,用于将所述背书认证请求发布至联盟链,以使所述联盟链中的全局认证节点根据所述背书认证请求进行可信认证,并在认证通过时发布可信认证响应;
数据读取模块30,用于从所述联盟链读取所述可信认证响应,并将所述可信认证响应转发至所述用户节点,以使所述用户节点反馈资源授权请求;
授权请求模块40,用于将所述资源授权请求发布至所述联盟链,以使第二资源域中目标节点根据所述资源授权请求发布资源授权响应至所述联盟链;
授权响应模块50,用于从所述联盟链读取所述资源授权响应,并将所述资源授权响应发送至所述用户节点,以使所述用户节点基于所述资源授权响应进行跨域资源访问。
本实施例通过在接收到第一资源域中用户节点发送的跨域认证请求时,根据跨域认证请求构建背书认证请求;将背书认证请求发布至联盟链,以使联盟链中的全局认证节点根据背书认证请求进行可信认证,并在认证通过时发布可信认证响应;从联盟链读取可信认证响应,并将可信认证响应转发至用户节点,以使用户节点反馈资源授权请求;将资源授权请求发布至联盟链,以使第二资源域中目标节点根据资源授权请求发布资源授权响应至联盟链;从联盟链读取资源授权响应,并将资源授权响应发送至用户节点,以使用户节点基于资源授权响应进行跨域资源访问。由于在跨域访问过程中将认证与授权过程分离,实现了联盟链认证和资源域授权解耦,将各节点责任分工明确,从而在保证资源跨域访问的同时也减少了数据滥用的风险。
进一步的,所述数据接收模块10,还用于从所述跨域认证请求中提取跨域请求参数及用户签名数据;根据预设背书私钥对所述跨域请求参数进行加密,生成背书签名;根据所述背书签名及所述用户签名数据生成联合签名,并根据所述联合签名及所述跨域请求参数构建背书认证请求。
进一步的,所述数据接收模块10,还用于从所述跨域请求参数中提取用户节点标识及用户签名证书;根据所述用户节点标识查找对应的缓存签名证书;若所述用户签名证书与所述缓存签名证书一致,则执行所述根据预设背书私钥对所述跨域请求参数进行加密,生成背书签名的步骤。
进一步的,所述请求发布模块20,还用于将所述背书认证请求发布至联盟链,以使所述联盟链中的全局认证节点从所述背书认证请求中提取背书请求参数及联合签名,根据所述背书请求参数对所述联合签名进行可信认证,在认证通过时,生成单次通信密钥,从所述背书认证请求中提取用户加密证书,根据所述单次通信密钥、所述用户加密证书及所述背书请求参数生成并发布可信认证响应。
进一步的,所述数据读取模块30,还用于将所述可信认证响应转发至所述用户节点,以使所述用户节点通过用户加密私钥对所述可信认证响应进行解密,获得随机会话密钥,根据所述随机会话密钥生成资源授权请求,并反馈所述资源授权请求。
进一步的,所述授权请求模块40,还用于将所述资源授权请求发布至所述联盟链,以使第二资源域中目标节点从所述资源授权请求提取节点标识数据、第一加密数据及第二加密数据,并根据预共享通信密钥及所述节点标识数据对所述第一加密数据进行解密,获得随机会话密钥,根据所述随机会话密钥对所述第二加密数据进行解密,获得目标资源标识,根据所述目标资源标识查找对应的资源访问密钥,根据所述随机会话密钥及所述资源访问密钥生成资源授权响应,并将所述资源授权响应发布至所述联盟链。
进一步的,所述授权响应模块50,还用于将所述资源授权响应发送至所述用户节点,以使所述用户节点根据缓存的随机会话密钥对所述资源授权响应进行解密,获得资源访问密钥,根据所述资源访问密钥进行跨域资源访问。
应当理解的是,以上仅为举例说明,对本发明的技术方案并不构成任何限定,在具体应用中,本领域的技术人员可以根据需要进行设置,本发明对此不做限制。
需要说明的是,以上所描述的工作流程仅仅是示意性的,并不对本发明的保护范围构成限定,在实际应用中,本领域的技术人员可以根据实际的需要选择其中的部分或者全部来实现本实施例方案的目的,此处不做限制。
另外,未在本实施例中详尽描述的技术细节,可参见本发明任意实施例所提供的跨域资源访问方法,此处不再赘述。
此外,需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如只读存储器(Read Only Memory,ROM)/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种跨域资源访问方法,其特征在于,所述跨域资源访问方法包括以下步骤:
在接收到第一资源域中用户节点发送的跨域认证请求时,根据所述跨域认证请求构建背书认证请求;
将所述背书认证请求发布至联盟链,以使所述联盟链中的全局认证节点根据所述背书认证请求进行可信认证,并在认证通过时发布可信认证响应;
从所述联盟链读取所述可信认证响应,并将所述可信认证响应转发至所述用户节点,以使所述用户节点反馈资源授权请求;
将所述资源授权请求发布至所述联盟链,以使第二资源域中目标节点根据所述资源授权请求发布资源授权响应至所述联盟链;
从所述联盟链读取所述资源授权响应,并将所述资源授权响应发送至所述用户节点,以使所述用户节点基于所述资源授权响应进行跨域资源访问。
2.如权利要求1所述的跨域资源访问方法,其特征在于,所述根据所述跨域认证请求构建背书认证请求的步骤,包括:
从所述跨域认证请求中提取跨域请求参数及用户签名数据;
根据预设背书私钥对所述跨域请求参数进行加密,生成背书签名;
根据所述背书签名及所述用户签名数据生成联合签名,并根据所述联合签名及所述跨域请求参数构建背书认证请求。
3.如权利要求2所述的跨域资源访问方法,其特征在于,所述根据预设背书私钥对所述跨域请求参数进行加密,生成背书签名的步骤之前,还包括:
从所述跨域请求参数中提取用户节点标识及用户签名证书;
根据所述用户节点标识查找对应的缓存签名证书;
若所述用户签名证书与所述缓存签名证书一致,则执行所述根据预设背书私钥对所述跨域请求参数进行加密,生成背书签名的步骤。
4.如权利要求1所述的跨域资源访问方法,其特征在于,所述将所述背书认证请求发布至联盟链,以使所述联盟链中的全局认证节点根据所述背书认证请求进行可信认证,并在认证通过时发布可信认证响应的步骤,包括:
将所述背书认证请求发布至联盟链,以使所述联盟链中的全局认证节点从所述背书认证请求中提取背书请求参数及联合签名,根据所述背书请求参数对所述联合签名进行可信认证,在认证通过时,生成单次通信密钥,从所述背书认证请求中提取用户加密证书,根据所述单次通信密钥、所述用户加密证书及所述背书请求参数生成并发布可信认证响应。
5.如权利要求1所述的跨域资源访问方法,其特征在于,所述将所述可信认证响应转发至所述用户节点,以使所述用户节点反馈资源授权请求的步骤,包括:
将所述可信认证响应转发至所述用户节点,以使所述用户节点通过用户加密私钥对所述可信认证响应进行解密,获得随机会话密钥,根据所述随机会话密钥生成资源授权请求,并反馈所述资源授权请求。
6.如权利要求1所述的跨域资源访问方法,其特征在于,所述将所述资源授权请求发布至所述联盟链,以使第二资源域中目标节点根据所述资源授权请求发布资源授权响应至所述联盟链的步骤,包括:
将所述资源授权请求发布至所述联盟链,以使第二资源域中目标节点从所述资源授权请求提取节点标识数据、第一加密数据及第二加密数据,并根据预共享通信密钥及所述节点标识数据对所述第一加密数据进行解密,获得随机会话密钥,根据所述随机会话密钥对所述第二加密数据进行解密,获得目标资源标识,根据所述目标资源标识查找对应的资源访问密钥,根据所述随机会话密钥及所述资源访问密钥生成资源授权响应,并将所述资源授权响应发布至所述联盟链。
7.如权利要求1所述的跨域资源访问方法,其特征在于,所述将所述资源授权响应发送至所述用户节点,以使所述用户节点基于所述资源授权响应进行跨域资源访问的步骤,包括:
将所述资源授权响应发送至所述用户节点,以使所述用户节点根据缓存的随机会话密钥对所述资源授权响应进行解密,获得资源访问密钥,根据所述资源访问密钥进行跨域资源访问。
8.一种跨域资源访问装置,其特征在于,所述跨域资源访问装置包括以下模块:
数据接收模块,用于在接收到第一资源域中用户节点发送的跨域认证请求时,根据所述跨域认证请求构建背书认证请求;
请求发布模块,用于将所述背书认证请求发布至联盟链,以使所述联盟链中的全局认证节点根据所述背书认证请求进行可信认证,并在认证通过时发布可信认证响应;
数据读取模块,用于从所述联盟链读取所述可信认证响应,并将所述可信认证响应转发至所述用户节点,以使所述用户节点反馈资源授权请求;
授权请求模块,用于将所述资源授权请求发布至所述联盟链,以使第二资源域中目标节点根据所述资源授权请求发布资源授权响应至所述联盟链;
授权响应模块,用于从所述联盟链读取所述资源授权响应,并将所述资源授权响应发送至所述用户节点,以使所述用户节点基于所述资源授权响应进行跨域资源访问。
9.一种跨域资源访问设备,其特征在于,所述跨域资源访问设备包括:处理器、存储器及存储在所述存储器上并可在所述处理器上运行的跨域资源访问程序,所述跨域资源访问程序被处理器执行时实现如权利要求1-7中任一项所述的跨域资源访问方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有跨域资源访问程序,所述跨域资源访问程序执行时实现如权利要求1-7中任一项所述的跨域资源访问方法的步骤。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202210823287.2A CN116962397A (zh) | 2022-07-13 | 2022-07-13 | 跨域资源访问方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202210823287.2A CN116962397A (zh) | 2022-07-13 | 2022-07-13 | 跨域资源访问方法、装置、设备及存储介质 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| CN116962397A true CN116962397A (zh) | 2023-10-27 |
Family
ID=88453573
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN202210823287.2A Pending CN116962397A (zh) | 2022-07-13 | 2022-07-13 | 跨域资源访问方法、装置、设备及存储介质 |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN116962397A (zh) |
-
2022
- 2022-07-13 CN CN202210823287.2A patent/CN116962397A/zh active Pending
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP7602539B2 (ja) | 量子安全ネットワーキング | |
| CN112989415B (zh) | 一种基于区块链的隐私数据存储与访问控制方法及系统 | |
| Lim et al. | Blockchain technology the identity management and authentication service disruptor: a survey | |
| JP6547079B1 (ja) | 登録・認可方法、装置及びシステム | |
| CN109088889B (zh) | 一种ssl加解密方法、系统及计算机可读存储介质 | |
| CN107959567B (zh) | 数据存储方法、数据获取方法、装置及系统 | |
| CN109067539B (zh) | 联盟链交易方法、设备及计算机可读存储介质 | |
| US8296828B2 (en) | Transforming claim based identities to credential based identities | |
| Ernstberger et al. | Sok: data sovereignty | |
| US11134069B2 (en) | Method for authorizing access and apparatus using the method | |
| WO2021120615A1 (zh) | 加密装置、加密系统和数据的加密方法 | |
| CN110537346A (zh) | 安全去中心化域名系统 | |
| CN111651794A (zh) | 基于联盟链的电子数据管理方法、装置和存储介质 | |
| AU2017225928A1 (en) | Systems and methods for distributed data sharing with asynchronous third-party attestation | |
| CN114270386B (zh) | 用于同意架构的认证器应用 | |
| CN109981287B (zh) | 一种代码签名方法及其存储介质 | |
| Gajmal et al. | Blockchain-based access control and data sharing mechanism in cloud decentralized storage system | |
| WO2017033442A1 (ja) | 情報処理装置、認証システム、認証方法、並びにコンピュータ・プログラムを記録する記録媒体 | |
| Win et al. | Privacy enabled digital rights management without trusted third party assumption | |
| Gao et al. | Blockchain based secure IoT data sharing framework for SDN-enabled smart communities | |
| Fugkeaw et al. | Secure and fine-grained access control with optimized revocation for outsourced IoT EHRs with adaptive load-sharing in fog-assisted cloud environment | |
| CN114553557B (zh) | 密钥调用方法、装置、计算机设备和存储介质 | |
| CN113051540A (zh) | 一种应用程序接口安全分级治理方法 | |
| CN120223305A (zh) | 一种抗量子安全身份认证方法、系统、介质和设备 | |
| CN111639357B (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 |