CN117675244A - 基于集群环境下任务密钥分发方法及装置 - Google Patents
基于集群环境下任务密钥分发方法及装置 Download PDFInfo
- Publication number
- CN117675244A CN117675244A CN202211045778.5A CN202211045778A CN117675244A CN 117675244 A CN117675244 A CN 117675244A CN 202211045778 A CN202211045778 A CN 202211045778A CN 117675244 A CN117675244 A CN 117675244A
- Authority
- CN
- China
- Prior art keywords
- task
- key
- ciphertext
- client
- data processing
- 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
- 238000000034 method Methods 0.000 title claims abstract description 73
- 238000012545 processing Methods 0.000 claims abstract description 221
- 238000004891 communication Methods 0.000 claims description 75
- 238000012795 verification Methods 0.000 claims description 48
- 230000015654 memory Effects 0.000 claims description 21
- 238000004590 computer program Methods 0.000 claims description 13
- 230000004044 response Effects 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 10
- 230000008569 process Effects 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 5
- 230000002457 bidirectional effect Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 238000002955 isolation Methods 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000012549 training Methods 0.000 description 1
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/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
- H04L63/062—Network architectures or network communication protocols for network security for supporting key management in a packet data network for key distribution, e.g. centrally by trusted party
-
- 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
- H04L63/045—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 wherein the sending and receiving network entities apply hybrid encryption, i.e. combination of symmetric and asymmetric encryption
-
- 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/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
-
- 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/088—Usage controlling of secret information, e.g. techniques for restricting cryptographic keys to pre-authorized uses, different access levels, validity of crypto-period, different key- or password length, or different strong and weak cryptographic algorithms
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
技术领域
本公开涉及通信技术领域,尤其涉及一种基于集群环境下任务密钥分发方法及装置。
背景技术
可信执行环境(TEE)是一种基于硬件和操作系统的安全架构,通过划分安全区域和非安全区域,构建出与外部隔离的计算环境,保护数据在使用过程中不受外部访问。基于TEE构建应用程序(即服务),可提供对数据以及服务代码的保护。服务提供方可以基于TEE构建服务器集群,通过服务器集群中的一个或者多个节点完成数据处理任务,从而提高任务处理效率。
由于不同客户端可以使用的集群资源以及可调用的服务不同,因此,需要进行客户端对服务器集群的访问控制,从而保证客户端发起的数据处理任务被可靠高效地处理完成,而如何实现服务集群高效的访问控制,是当前亟待解决的问题。
发明内容
为了解决上述技术问题,本公开提供了一种基于集群环境下任务密钥分发方法及装置。
第一方面,本公开实施例提供了一种基于集群环境下任务密钥分发方法,包括:
接收客户端发送的数据处理任务,在可信执行环境中生成所述数据处理任务对应的任务密钥以及所述任务密钥对应的密钥访问策略;
基于所述密钥访问策略以及与所述客户端之间的第一通信密钥对所述任务密钥进行属性加密得到第一任务密钥密文,向所述客户端发送第一任务密钥密文;所述第一任务密钥密文支持属性满足所述密钥访问策略的客户端解密得到所述任务密钥并用于任务数据加密得到任务数据密文;
从服务器集群中确定执行所述数据处理任务的可信计算节点;
基于与所述可信计算节点之间的第二通信密钥对所述任务密钥进行加密得到的第二任务密钥密文,向所述可信计算节点发送第二任务密钥密文以及所述数据处理任务,指示所述可信计算节点解密所述第二任务密钥密文得到所述任务密钥,并采用所述任务密钥解密所述数据处理任务对应的任务数据密文,在解密成功时基于所述客户端具有调用权限的目标集群服务进行访问控制。
第二方面,本公开实施例提供一种基于集群环境下任务密钥分发方法,包括:
向服务器集群中的中心节点发送数据处理任务,使得所述中心节点响应所述数据处理任务在可信执行环境中生成所述数据处理任务对应的任务密钥以及所述任务密钥对应的密钥访问策略;
接收所述中心节点发送的第一任务密钥密文,所述第一任务密钥密文是所述中心节点基于所述密钥访问策略以及与所述中心节点之间的第一通信密钥对所述任务密钥进行属性加密得到的;
在属性满足所述密钥访问策略时,通过所述第一通信密钥对所述第一任务密钥密文进行解密得到所述任务密钥;
根据所述任务密钥对所述数据处理任务的任务数据进行加密得到任务数据密文,并将所述任务数据密文发送至服务器集群中的可信计算节点,指示所述可信计算节点基于其记录的所述任务密钥解密所述任务数据密文,在成功解密时基于所述客户端具有调用权限的目标集群服务进行访问控制。
第三方面,本公开实施例提供一种基于集群环境下任务密钥分发方法,包括:
接收服务器集群的中心节点发送的第二任务密钥密文以及客户端向所述中心节点发送的数据处理任务;
根据与所述中心节点之间的第二通信密钥对所述第二任务密钥密文进行解密得到任务密钥,并记录所述任务密钥与所述数据处理任务;
采用所述任务密钥对所述客户端发送的所述数据处理任务对应的任务数据密文进行解密,在成功解密时基于所述客户端具有调用权限的目标集群服务进行访问控制。
第四方面,本公开实施例提供一种基于集群环境下任务密钥分发装置,包括:
接收模块,用于接收客户端发送的数据处理任务;
处理模块,用于在可信执行环境中生成所述数据处理任务对应的任务密钥以及密钥访问策略;以及,基于所述密钥访问策略以及与所述客户端之间的第一通信密钥对所述任务密钥进行属性加密得到第一任务密钥密文;
发送模块,用于向所述客户端发送所述第一任务密钥密文,所述第一任务密钥密文支持属性满足所述密钥访问策略的客户端解密得到所述任务密钥并用于任务数据加密得到任务数据密文;
所述处理模块,还用于从服务器集群中确定执行所述数据处理任务的可信计算节点;以及,基于与所述可信计算节点之间的第二通信密钥对所述任务密钥进行加密得到第二任务密钥密文;
所述发送模块,还用于向所述可信计算节点发送所述第二任务密钥密文以及所述数据处理任务,指示所述可信计算节点解密所述第二任务密钥密文得到所述任务密钥,并采用所述任务密钥解密所述数据处理任务对应的任务数据密文,在解密成功时基于所述客户端具有调用权限的目标集群服务进行访问控制。
第五方面,本公开实施例提供一种基于集群环境下任务密钥分发装置,包括:
发送模块,用于向服务器集群中的中心节点发送数据处理任务,使得所述中心节点在可信执行环境中生成所述数据处理任务对应的任务密钥以及所述任务密钥对应的密钥访问策略;
接收模块,用于接收所述中心节点发送的第一任务密钥密文,所述第一任务密钥密文为所述中心节点基于所述密钥访问策略以及与所述中心节点之间的第一通信密钥对所述任务密钥进行属性加密得到;
处理模块,用于在属性满足所述密钥访问策略时,通过所述第一通信密钥对所述第一任务密钥密文进行解密得到所述任务密钥;
所述处理模块,还用于根据所述任务密钥对所述数据处理任务对应的任务数据进行加密得到任务数据密文;
所述发送模块,还用于发送所述任务数据密文至服务器集群中的可信计算节点,指示所述可信计算节点基于其记录的所述任务密钥对所述任务数据密文进行解密,在解密成功时基于所述客户端具有调用权限的目标集群服务进行访问控制。
第六方面,本公开实施例提供一种基于集群环境下任务密钥分发装置,包括:
接收模块,用于接收服务器集群的中心节点发送的第二任务密钥密文以及客户端向所述中心节点发送的数据处理任务;
处理模块,用于根据与所述中心节点之间的第二通信密钥对所述第二任务密钥密文进行解密得到所述任务密钥,并记录所述任务密钥与所述数据处理任务;
访问控制模块,用于采用所述任务密钥解密所述数据处理任务对应的任务数据密文;以及,在解密成功时基于所述客户端具有调用权限的目标集群服务进行访问控制。
第七方面,本公开实施例提供一种电子设备,包括:存储器和处理器;所述存储器被配置为存储计算机程序指令;所述处理器被配置为执行所述计算机程序指令,使得所述电子设备实现如第一方面或者第二方面或者第三方面的基于集群环境下任务密钥分发方法。
第八方面,本公开实施例提供一种可读存储介质,包括:计算机程序指令;所述计算机程序指令被电子设备的处理器执行,使得所述电子设备实现如第一方面或者第二方面或者第三方面的基于集群环境下任务密钥分发方法。
第九方面,本公开实施例提供一种计算机程序产品,当电子设备运行所述计算机程序产品,使得所述电子设备实现如第一方面或者第二方面或者第三方面的基于集群环境下任务密钥分发方法。
本公开实施例提供一种基于集群环境下任务密钥分发方法及装置,其中,该方法通过由服务器集群中的中心节点接收并响应客户端发送的数据处理任务生成任务密钥和任务密钥对应的密钥访问策略,利用属性加密将密钥访问策略嵌入任务密钥中得到第一任务密钥密文发送给客户端,使得属性满足密钥访问策略的客户端能够解密得到任务密钥,通过属性加密控制了客户端对任务密钥的访问,从而控制了客户端对服务器集群的访问;中心节点还将任务密钥加密发送给相应的可信计算节点,可信计算节点解密得到任务密钥并记录任务密钥与数据处理任务,并根据记录的任务密钥和数据处理任务的信息控制客户端无法调用其权限之外的服务,通过任务密钥的分发,实现了对服务器集群的高效的访问控制。此外,本公开通过中心节点完成对参与数据处理任务的各节点的身份认证,降低了认证的复杂性。此外,客户端利用任务密钥对数据处理任务对应的任务数据进行加密传输,可信计算节点利用任务密钥对任务处理结果进行加密传输,不仅验证了任务密钥的正确性,还有效保证数据的安全性。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本公开一实施例提供的基于集群环境下任务密钥分发方法的应用场景示意图;
图2为本公开一实施例提供的基于集群环境下任务密钥分发方法的流程图;
图3为本公开另一实施例提供的基于集群环境下任务密钥分发方法的流程图;
图4为本公开另一实施例提供的基于集群环境下任务密钥分发方法的流程图;
图5为本公开另一实施例提供的基于集群环境下任务密钥分发方法的流程图;
图6为本公开另一实施例提供的基于集群环境下任务密钥分发方法的流程图;
图7为本公开一实施例提供的基于集群环境下任务密钥分发装置的结构示意图;
图8为本公开另一实施例提供的基于集群环境下任务密钥分发装置的结构示意图;
图9为本公开另一实施例提供的基于集群环境下任务密钥分发装置的结构示意图;
图10为本公开一实施例提供的电子设备的结构示意图。
具体实施方式
为了能够更清楚地理解本公开的上述目的、特征和优点,下面将对本公开的方案进行进一步描述。需要说明的是,在不冲突的情况下,本公开的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本公开,但本公开还可以采用其他不同于在此描述的方式来实施;显然,说明书中的实施例只是本公开的一部分实施例,而不是全部的实施例。
图1为本公开一实施例提供的基于集群环境下任务密钥分发方法的应用场景示意图。请参阅图1所示,该场景包括:多个客户端101和服务器集群102。
其中,客户端101可以安装在电子设备中,用户可以通过客户端101调用服务器集群102执行数据处理任务,并获得服务器集群102下发的任务执行结果。数据处理任务可以为任意类型的任务,如:隐私保护集合求交(private set intersection,PSI)任务、模型训练任务、数据查询任务、数据分析任务等等。
电子设备例如可以但不限于为:智能手机、笔记本电脑、台式电脑、可穿戴设备、车载设备、增强现实(augmented reality,AR)/虚拟现实(virtual reality,VR)设备、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本、个人数字助理(personal digital assistant,PDA)、智能电视、智慧屏、高清电视、4K电视、智能音箱、智能投影仪等物联网(the internet of things,IOT)设备,本公开对电子设备的具体类型不作任何限制。
其中,客户端101的数量可以为一个或多个,图1中以2个客户端101为例进行示例。
服务器集群102可以包括多个服务器,各服务器均能够提供TEE,并在TEE中安装相应的应用程序(即服务),从而服务器集群102能够向客户端101的客户端提供TEE集群,以执行客户端101发起的数据处理任务,且通过TEE能够有效保护任务数据、任务执行结果以及服务代码的安全。服务器集群102包括的这些服务器可以称为TEE节点。
在该场景中,一个数据处理任务可能需要多个客户端101参与进来,例如,PSI任务,多个客户端101分别提供原始的任务数据,在服务器集群102中进行计算获取任务数据交集。或者,一个数据处理任务可能需要由服务器集群102中的多个服务器(即多个TEE节点)共同完成。
为了保证数据处理任务能够高效且准确地被执行,需要对客户端101对服务器集群102的访问进行控制。本公开中,服务器集群102可以包括中心节点102a和可信计算节点102b;由中心节点102a执行任务密钥的生成以及任务密钥对应的密钥访问策略的生成、属性加密处理、信封加密、任务密钥的分发、计算资源的配置、与客户端101之间的认证、与可信计算节点102b之间的双向认证等等;由可信计算节点102b基于接收到的任务密钥以及数据处理任务,对客户端101发送的任务数据密文进行解密以及基于记录的数据处理任务确定客户端具有权限的目标集群服务进而进行访问控制,保证客户端101无法调用其权限之外的集群服务;以及,可信计算节点102b在成功解密得到明文的任务数据且基于数据处理任务确定客户端101具有调用权限的目标集群服务之后,调用其权限之内的集群服务执行相应的数据处理任务并向客户端101返回任务处理结果。
本实施例中,以服务器集群102包括1个中心节点102a、以及3个可信计算节点102b为例进行举例说明,可以理解的是,中心节点102a以及可信计算节点102b的数量可以根据实际需求设定,数量可以更多或者更少,并不限于图1中的示例。
在一些实施例中,服务器集群102还可以包括消息处理节点(也可以称为消息服务器等名称),图1中未示出消息处理节点,中心节点102a和可信计算节点102b之间可以通过消息处理节点传输数据,且中心节点102a与客户端101、可信计算节点102b与客户端101之间可以通过消息处理节点传输数据。此外,消息处理节点的数量可以为一个或者多个,本公开对此不做限定。
图2为本公开一实施例提供的基于集群环境下任务密钥分发方法的流程图。在图2所示实施例中,客户端可以向服务器集群中的中心节点发送数据处理任务;中心节点可以在TEE中通过属性加密将密钥访问策略嵌入任务密钥中并返回给客户端,以控制客户端对任务密钥的访问;且中心节点为数据处理任务分配计算资源,即确定用于执行数据处理任务的可信计算节点(即图1中所描述的执行任务计算的TEE节点),且将任务密钥以及数据处理任务发送给可信计算节点,可信计算节点记录任务密钥与数据处理任务之间的对应关系,并且采用任务密钥解密数据处理任务对应的任务数据密文,以及,对客户端发送的数据处理任务进行访问控制,防止客户端调用其权限之外的其他TEE集群服务。
图3为本公开另一实施例提供的基于集群环境下任务密钥分发方法的流程图。请参阅图3所示,本实施例的方法包括:
S301、客户端向中心节点发送数据处理任务。相应地,中心节点接收数据处理任务。
其中,数据处理任务可以包括任务信息,例如,任务ID、任务类型、任务参与方的身份标识(即参与任务的客户端的身份标识)、任务处理结果获取方的身份标识、是否分布式任务等等。其中,任务参与方/任务处理结果获取方的身份标识可以但不限于为相应客户端的账号、昵称、安装相应客户端的电子设备的硬件标识等等。
在一些实施例中,客户端可以基于用户的触发操作向服务器集群发送数据处理任务,其中,任务信息可以是用户手动输入或者基于客户端提供的相关选项配置的,本公开对于客户端获取任务信息的实现方式以及用户触发客户端发送数据处理任务的实现方式不做限定。
结合图1所示的场景,客户端可以向服务器集群中的消息处理节点发送数据处理任务,中心节点可以从消息处理节点中读取数据处理任务。
S302、中心节点响应数据处理任务,在TEE中生成数据处理任务对应的任务密钥和密钥访问策略。
在一些实施例中,任务密钥可以包括非对称密钥对和对称密钥,其中,非对称密钥对用于保护客户端拥有的数据处理任务对应的任务数据,对称密钥用于保护任务处理结果。下文中非对称密钥对记为(job_pk,job_sk),job_pk为公钥,用于对任务数据进行加密,加密算法可以但不限于RSA-3072等等,job_sk为私钥,用于对任务数据密文进行解密;对称密钥记为result_key,可以为安全的随机数,任务处理结果的发送方可以采用对称密钥进行加密,任务处理结果的获取方可以采用对称密钥对任务处理结果密文进行解密得到任务处理结果。
密钥访问策略可以包括非对称密钥的访问策略和对称密钥的访问策略。需要说明的是,客户端作为任务数据的发送方,需要通过任务的公钥job_pk对任务数据进行加密,任务的私钥job_sk是需要发送给可信计算节点的,用于对任务数据密文进行解密,因此,对非对称密钥的访问策略可以理解为是客户端对任务的公钥job_pk的访问策略。
其中,用于保护任务数据的密钥采用非对称密钥的形式实现,由于发给客户端的是其中的公钥,若有多个客户端参与数据处理任务时,即使某个客户端获取了其他客户端的任务数据,由于客户端未持有私钥因此无法解密,能够保护客户端数据的安全。用户保护任务执行结果的密钥采用对称密钥的形式实现,在任务执行结果需要发送给多个参与方时,由于各参与方得到的是同样的对称密钥,因此,可信计算节点通过单次加密即可生成能够发送给所有参与方的任务执行结果密文,能够减小可信计算节点的计算量。
作为一种可能的实施方式,中心节点可以在TEE中基于任务参与方的身份标识、任务类型、可以调用的计算资源类型、时间等属性信息生成非对称密钥的访问策略;中心节点可以在TEE中基于任务处理结果获取方的名称、任务结果获取方的数量等属性信息生成对称密钥的访问策略。
示例性地,假设一个任务的job_pk的访问策略为“可执行任务的名称为A或者B或者C或者D,且服务到期时间在T时间之前,且可以任意使用集群S级资源以上的参与方可以访问”,只有符合访问策略的参与方可以解密得到任务的job_pk,攻击方、名称非A、B、C、D的参与方、已过有效期的参与方、无法使用S级资源以上的参与方等等场景下均无法解密得到job_pk并发起数据处理任务。假设,任务的result_key的访问策略为“名称为A或者B的参与方可访问”,则仅参与方A和参与方B可以解密得到任务的result_key,并进一步采用result_key解密得到任务处理结果,参与方C、参与方D以及其他参与方无法解密得到result_key,进而无法解密得到任务处理结果。
在另一些实施例中,任务密钥也可以包含两组非对称密钥,其中一组非对称密钥用于保护任务数据,另一组非对称密钥用于保护任务执行结果。由于需要发送给各参与方的任务执行结果是相同的,因此,各参与方可以持有相同的用于解密任务执行结果密文的私钥,与前述示例相比,虽然用于保护任务执行结果的密钥形式不同,但同样能够实现客户端任务数据的相互隔离,也能够保护任务执行结果的安全。
在另一些实施例中,任务密钥也可以包含两个对称密钥,其中一个用于保护任务数据,另一个用于保护任务执行结果。其中,采用两个对称密钥实现时,可以适用于对客户端任务数据隔离性要求较低的场景。
用户可以基于实际需求设置任务密钥的形式,并不限于如上示例。此外,还需要说明的是,任务密钥由不同形式的密钥组成时,生成密钥访问策略的实现方式与前述示例是类似,此处不再赘述。
在一些实施例中,中心节点接收到数据处理任务之后,可以先验证消息的真实完整性,验证通过后,再生成密钥访问策略和任务密钥。
S303、中心节点在TEE中基于密钥访问策略以及与客户端之间的第一通信密钥对任务密钥进行属性加密得到第一任务密钥密文。
其中,中心节点在TEE中根据任务的job_pk、对job_pk的访问策略以及中心节点与客户端之间的第一通信密钥进行属性加密,得到job_pk对应的密文,记为enc(job_pk);在TEE中根据任务的result_key、对result_key的访问策略以及中心节点与客户端之间的第一通信密钥进行属性加密,得到result_key对应的密文,记为enc(result_key);因此,第一任务密钥密文包括enc(job_pk)和enc(result_key)。
S304、中心节点将第一任务密钥密文发送给客户端。相应地,客户端接收中心节点发送的第一任务密钥密文。
在一些实施例中,中心节点可以将第一任务密钥密文发送至消息处理节点,通过消息处理节点将第一任务密钥密文返回至客户端。
此外,结合前文所述,一个数据处理任务可能需要多个客户端参与,则中心节点可以采用上述方式进行属性加密,向多个客户端分别发送第一任务密钥密文。需要说明的是,多个客户端分别与中心节点之间的第一通信密钥不同,因此,针对每个客户端分别生成第一任务密钥密文时所采用的第一通信密钥不同,以保证各客户端能够正确解密得到任务密钥。
应理解,参与数据处理任务的多个客户端与中心节点之间的第一通信密钥也可以相同,这能够减小中心节点生成第一任务密钥密文时的数据处理量,提高密钥分发效率。
S305、客户端在属性满足密钥访问策略时,通过第一通信密钥对第一任务密钥密文进行解密得到任务密钥。
其中,客户端可以基于自身的属性集合与非对称密钥对的访问策略进行匹配,在匹配成功时,通过第一通信密钥对enc(job_pk)进行解密,得到任务的job_pk。客户端可以基于自身的属性集合与对称密钥的访问策略进行匹配,在匹配成功时,通过第一通信密钥对enc(result_key)进行解密,得到任务的result_key。
前述步骤S303至步骤S305主要为中心节点向客户端分发任务密钥的过程,由于服务器集群中的可信计算节点需要对客户端的访问进行控制,且需要对客户端发送的任务数据密文进行解密以及对任务处理结果进行加密,因此,还需要将任务密钥分发至可信计算节点,向可信计算节点分发任务密钥可以包括如下步骤S306至步骤S309。
S306、中心节点确定执行数据处理任务的可信计算节点。
中心节点为数据处理任务分配计算资源,可信计算节点的数量可以为一个或者多个,本公开对此不做限定。且本公开对于中心节点分配计算资源的实现方式不做限定,可采用任意方式实现。例如,可以基于数据处理任务的类型、任务所需的计算资源大小等等确定可信计算节点。
S307、中心节点采用第二通信密钥对任务密钥进行加密得到第二任务密钥密文。
第二通信密钥为中心节点与可信计算节点之间的通信密钥,可以是非对称密钥对,其中的公钥需要发送给中心节点,用于对任务密钥加密,私钥由可信计算节点持有,用于对接收到的任务密钥密文进行解密。第二通信密钥可以是可信计算节点在TEE中生成且发送至中心节点的。
在一些实施例中,中心节点可以对任务的job_sk以及任务的result_key进行信封加密得到第二任务密钥密文。信封加密的实现方式为:随机生成一对称密钥(称为随机对称密钥),利用随机对称密钥对任务密钥进行加密,得到加密的任务密钥,且采用第二通信密钥中的公钥对随机对称密钥进行加密得到随机对称密钥密文,则第二任务密钥密文包括:加密的任务密钥以及随机对称密钥密文。
在一些实施例中,中心节点可以生成一个共享的随机对称密钥,用于对任务的job_sk以及任务的result_key进行信封加密,也可以分别针对任务的job_sk和任务的result_key生成各自对应的随机对称密钥用于信封加密,本公开对此不做限定。
S308、中心节点将第二任务密钥密文以及数据处理任务发送至可信计算节点。相应地,可信计算节点接收中心节点发送的第二任务密钥密文以及数据处理任务。
结合图1实施例,中心节点可以将第二任务密钥密文发送至消息处理节点,可信计算节点通过消息处理节点得到第二任务密钥密文。其中,数据处理任务可以采用第二通信密钥加密传输,且加密算法不限定。
S309、可信计算节点采用第二通信密钥对第二任务密钥密文解密得到任务密钥,并记录任务密钥与数据处理任务,采用任务密钥解密数据处理任务对应的任务数据密文,在解密成功时基于所述客户端具有调用权限的目标集群服务进行访问控制。
可信计算节点可以通过第二通信密钥中的私钥对随机对称密钥密文进行解密得到随机对称密钥,再通过随机对称密钥对任务密钥的密文进行解密得到任务密钥,即得到任务的job_sk以及任务的result_key。
可信计算节点通过记录任务的job_sk以及任务的result_key与数据处理任务之间的对应关系,其中,数据处理任务包含的任务信息表明基于相应的job_sk可执行的任务特征,例如,数据处理任务的任务类型为PSI,则参与方仅可利用对应的公钥加密任务数据发起PSI任务,其他类型的任务无法被可信计算节点执行。
这里对“访问控制”进行具体说明:
可信计算节点在收到客户端发送的任务数据密文以及数据处理任务之后,可以通过查询对应关系得到数据处理任务对应的任务密钥,利用任务密钥对任务数据密文进行解密,若解密成功,则表示可信计算节点需要执行该任务,若未解密成功,则表示可信计算节点需要拒绝执行任务。
此外,可信计算节点对于客户端发送的数据处理任务与自身记录的数据处理任务进行对比,从而实现了在任务数据传输阶段控制客户端无法调用其权限之外的集群服务。
需要说明的是,上述步骤S302至S305与步骤S306至步骤S309可以并行执行,即中心节点向客户端分发任务密钥以及中心节点向可信计算节点分发任务密钥可以并行执行。
本实施例中,由服务器集群中的中心节点接收到客户端发送的数据处理任务,生成任务密钥和密钥访问策略,利用属性加密将密钥访问策略嵌入任务密钥中得到第一任务密钥密文并发送给客户端,使得属性满足密钥访问策略的客户端能够解密得到任务密钥,通过属性加密控制了客户端对任务密钥的访问,从而控制了客户端对服务器集群的访问;中心节点还将加密得到的第二任务密钥密文发送给相应的可信计算节点,可信计算节点解密得到任务密钥并记录任务密钥与数据处理任务,基于任务密钥对任务数据进行加密,且基于记录的数据处理任务对客户端发送的数据处理任务进行访问控制,保证客户端无法调用其权限之外的服务。通过任务密钥的分发,实现了服务器集群的高效的访问控制。
图4为本公开另一实施例提供的基于集群环境下任务密钥分发方法的流程示意图。请参阅图4所示,本实施例在图2所示实施例的基础上,还包括:客户端认证中心节点的过程以及中心节点与可信计算节点之间的双向认证过程。
其中,客户端认证中心节点的认证可以包括客户端对中心节点的身份进行认证以及对数据处理任务所调用的相关服务是否在中心节点的TEE环境中运行进行认证。其中,对服务是否在中心节点的TEE环境中运行进行认证可以根据中心节点生成的证明信息进行验证。
其中,中心节点对可信计算节点的认证可以包括:中心节点对可信计算节点的身份进行认证以及数据处理任务所调用的相关服务是否在可信计算节点的TEE环境中运行进行认证。其中,对服务是否在可信计算节点的TEE环境中运行进行认证可以根据可信计算节点生成的证明信息进行验证。类似地,可信计算节点对中心节点的认证可以包括:可信计算节点对中心节点的身份进行认证以及数据处理任务所调用的相关服务是否在中心节点的TEE环境中运行进行认证。其中,对服务是否在中心节点的TEE环境中运行进行认证可以根据中心节点生成的证明信息进行验证。
图5为本公开另一实施例提供的基于集群环境下任务密钥分发方法的流程图。其中,图5所示实施例将主要介绍认证的实现方式。请参阅图5所示,本实施例的方法包括:
S501、客户端向中心节点发送数据处理任务。
S502、中心节点响应数据处理任务,在TEE中生成数据处理任务对应的任务密钥和密钥访问策略。
S503、客户端向中心节点发送第一认证请求,用于请求对中心节点进行认证。
作为一种可能的实施方式,客户端可以生成一随机值,并将该随机值添加在第一认证请求中发送给中心节点,以发起客户端对中心节点之间的认证。客户端生成的随机值也可以用于后续对中心节点身份的校验。
S504、中心节点响应第一认证请求,向客户端发送第一身份信息,第一身份信息包括:中心节点生成的数字签名、签名公钥以及第一证明信息。
作为一种可能的实现方式,中心节点接收到客户端发送的第一认证请求后,可以生成一密钥对,记为(center_pk_verify,center_sk_verify)。其中,密钥对中的私钥center_sk_verify可以用于对第一认证请求中包含的随机值client-nonce进行签名得到数字签名信息center_sig,密钥对中的公钥center_pk_verify可以作为中心节点的签名公钥用于验证数字签名信息center_sig。此外,中心节点响应第一认证请求,还生成相应的第一远程证明信息即第一证明信息,其中,第一远程证明信息的格式可以包括:类型字段和数据字段,其中,类型字段用于表示中心节点中硬件TEE环境类型,数据字段即为远程证明报告,远程证明为可信执行环境硬件平台核心功能之一,可以通过远程证明报告证明验证平台为真实的TEE环境并且运行在TEE中的服务代码未被篡改,本公开提供的方法通过在远程证明报告中增加任务的job_pk校验信息、任务的result_key校验信息以及公钥center_pk_verify校验信息,这些密钥校验信息能够证明密钥是在TEE中生成的且未被篡改,从而保证密钥的安全性,也能够说明中心节点中的服务是安全地运行在中心节点的TEE中的。
其中,密钥校验信息可以但不限为相应密钥的哈希值。
因此,中心节点生成的第一身份信息可以包括:中心节点生成的数字签名信息center_sig、签名公钥center_pk_verify以及包含任务密钥校验信息以及签名公钥检验信息的第一证明信息,中心节点将第一身份信息发送至客户端,使得客户端通过接收到的中心节点身份信息对中心节点进行认证,得到的认证结果用于客户端确定任务密钥的有效性。
S505、中心节点向客户端发送第一身份信息。相应地,客户端接收中心节点发送的第一身份信息。
S506、客户端根据第一身份信息对中心节点进行认证得到认证结果,并基于认证结果确定任务密钥是否有效。
其中,客户端可以通过下述几个方面进行认证:
1、根据公钥center_pk_verify对中心节点生成的数字签名center_sig进行解密,并确定数字签名center_sig是否符合预期。
2、客户端根据类型字段判断TEE硬件类型,并通过接收到的第一证明信息(即第一远程证明报告)验证中心节点可信。
3、客户端根据数据字段中包含的任务的job_pk的校验信息、任务的result_key的校验信息以及公钥center_pk_verify的校验信息,确定任务的job_pk、任务的result_key以及公钥center_pk_verify的正确性。
若上述几方面的验证结果都符合预期,则客户端可以确定中心节点可信,且中心节点的TEE中的目标服务是安全地运行在真实的中心节点的TEE环境中的。此外,通过验证也表明客户端得到的任务密钥是正确的、有效的任务密钥,用于后续任务数据的传输以及任务处理结果的解密是安全地。
S507、中心节点在TEE中根据任务密钥、密钥访问策略以及第一通信密钥进行属性加密得到第一任务密钥密文。
S508、中心节点将第一任务密钥密文发送给客户端。
S509、客户端在属性满足密钥访问策略时,通过第一通信密钥解密得到任务密钥。
其中,客户端在对中心节点认证通过的情况下,确定解密得到的任务密钥有效。
本实施例中步骤S507至S509分别与图3所示实施例中步骤S303、S305类似,可参照前述图3所示实施例的详细描述,简明起见,此处不再赘述。
需要说明的是,在另一些实施例中,中心节点也可以先下发第一任务密钥密文,之后在响应客户端的第一认证请求,客户端再基于认证结果确定任务密钥的有效性即可。
接下来,将通过本实施例的步骤S510至步骤S517介绍中心节点与可信计算节点之间的双向认证以及向可信计算节点分发任务密钥的实现方式。
S510、中心节点确定执行数据处理任务的可信计算节点。
本步骤与图3所示实施例步骤S306类似,此处不再赘述。
S511、中心节点向可信计算节点发送第二认证请求。
第二认证请求用于请求对可信计算节点进行认证。
作为一种可能的实施方式,中心节点可以生成一随机值center-nonce,并将该随机值携带在第二认证请求中发送给可信计算节点,以发起对可信计算节点的认证。中心节点生成的随机值也可以用于后续对可信计算节点身份的校验。
S512、可信计算节点响应第二认证请求生成第二身份信息,第二身份信息包括:可信计算节点生成的数字签名、签名公钥以及可信计算节点在可信执行环境中生成的包含第二通信密钥校验信息和签名公钥校验信息的第二证明信息。
作为一种可能的实现方式,可信计算节点接收到第二认证请求后,可以生成两对密钥对,分别为密钥对1(woker_pk_encrypt,woker_sk_encrypt)和密钥对2(woker_pk_verify,woker_sk_verify)。
其中,密钥对1(woker_pk_encrypt,woker_sk_encrypt)即为前文所述的第二通信密钥,用于对中心节点与可信计算节点之间的交互数据进行加解密,保护交互数据的安全。
密钥对2中的私钥woker_sk_verify可以用于对第二认证请求中包含的随机值进行签名得到可信计算节点生成的数字签名woker_sig,密钥对2中的公钥woker_pk_verify可以作为可信计算节点的签名公钥用于验证数字签名woker_sig。此外,可信计算节点响应第二认证请求,还生成第二远程证明信息即第二证明信息,其中,可信计算节点生成的第二远程证明信息的格式可以与前述步骤S504中涉及的第一远程证明信息的格式类似,本步骤生成的第二远程证明信息可以包括woker_pk_encrypt的校验信息和woker_pk_verify的校验信息,用于证明woker_pk_encrypt和woker_pk_verify是在可信计算节点的TEE中生成的。其中,woker_pk_encrypt和woker_pk_verify的校验信息可以但不限于是相应密钥的哈希值。
基于上述得到的数字签名woker_sig、woker_pk_encrypt、woker_pk_verify以及相应的远程证明信息,生成第二身份信息,且将第二身份信息发送至中心节点,使得中心节点通过第二身份信息验证可信计算节点的身份以及可信计算节点中TEE服务的安全性得到相应的认证结果。
因此,可信计算节点生成的第二身份信息可以包括:可信计算节点的数字签名woker_sig、woker_pk_encrypt、woker_pk_verify以及远程证明信息,可信计算节点通过将第二身份信息发送至中心节点,使得中心节点通过第二身份信息对可信计算节点进行认证,以在认证通过后向可信计算节点下发任务密钥。
S513、可信计算节点向中心节点发送第二身份信息。相应地,中心节点接收可信计算节点发送的第二身份信息。
S514、中心节点根据第二身份信息得到对可信计算节点的认证结果。
其中,中心节点可以通过下述几个方面进行认证:
1、根据公钥woker_pk_verify对数字签名woker_sig进行解密,并确定数字签名woker_sig是否符合预期。
2、中心节点根据类型字段判断TEE硬件类型,并通过第二证明信息(即第二远程证明报告)验证可信计算节点可信。
3、中心节点根据数据字段中包含的公钥woker_pk_encrypt的校验信息和woker_pk_verify的校验信息,确定woker_pk_encrypt和woker_pk_verify的正确性。
若上述几方面的验证结果都符合预期,则中心节点可以确定数据处理任务所调用的服务是安全地运行在真实可信计算节点的TEE环境中的。
S515、中心节点采用第二通信密钥对任务密钥进行加密得到第二任务密钥密文。
S516、中心节点将第二任务密钥密文以及数据处理任务发送至可信计算节点。
S517、可信计算节点采用第二通信密钥对第二任务密钥密文解密得到任务密钥,并记录任务密钥与数据处理任务,采用任务密钥解密数据处理任务对应的任务数据密文以及在解密成功时基于客户端具有调用权限的目标集群服务进行访问控制。
本实施例中步骤S515至S517与图3所示实施例中步骤S307至S309类似,可参照图3所示实施例的详细描述,简明起见,此处不再赘述。
需要说明的是,上述步骤S503至S509与步骤S510至步骤S517可以并行执行,即客户端对中心节点进行认证以及向客户端分发任务密钥的过程,和中心节点对可信计算节点进行认证以及向可信计算节点分发任务密钥可以并行执行。
本实施例中,由服务器集群中的中心节点接收到客户端发送的数据处理任务,生成任务密钥和密钥访问策略,利用属性加密将密钥访问策略嵌入任务密钥中得到任务密钥密文并发送给客户端,使得属性满足密钥访问策略的客户端能够解密得到任务密钥,通过属性加密控制了客户端对任务密钥的访问,从而控制了客户端对服务器集群的访问;中心节点还将任务密钥发送给相应的可信计算节点,可信计算节点解密得到任务密钥并记录任务密钥与数据处理任务,基于任务密钥和数据处理任务对客户端发送的数据处理任务进行访问控制。通过任务密钥的分发,实现了客户端对服务器集群的高效的访问控制。此外,在分发任务密钥之前,客户端对中心节点进行了认证以及中心节点与可信计算节点之间进行了双向认证,验证了中心节点以及可信计算节点中的服务安全地运行在真实节点的TEE环境中,也相当于对任务密钥和第二通信密钥的正确性、有效性进行了验证,从而保证数据的安全性。
在图5所示实施例的基础上,可信计算节点还需要对中心节点进行认证,以确定得到的任务密钥的有效性。可选地,还包括:
S517'、中心节点响应可信计算节点发送的第三认证请求,向可信计算节点发送第三身份信息。
第三认证请求用于请求对中心节点进行认证。第三认证请求中可以包括可信计算节点生成的随机值,该随机值可以与前述可信计算节点向中心节点发送的第二身份信息一同发送,也可以单独发送,本公开对此不作限定。
中心节点接收到第三认证请求之后,生成第三身份信息,第三身份信息包括:中心节点生成的数字签名、签名公钥以及中心节点在TEE中生成的第三证明信息。本步骤中生成的第三证明信息与前述步骤S504以及步骤S512生成的第一、第二证明信息类似。其中,本步骤生成的第三证明信息可以包括:中心节点在TEE中生成的任务的job_sk的校验信息、任务的result_key的校验信息以及公钥center_pk_verify的校验信息,这些密钥校验信息能够证明密钥是在TEE中生成的且未被篡改,从而保证密钥的安全性,也能够说明中心节点中的服务是安全地运行在中心节点的TEE中的。
其中,密钥校验信息可以但不限为相关密钥的哈希值。
S517"、可信计算节点根据接收到的第三身份信息对中心节点进行认证得到认证结果,基于认证结果确定任务密钥是否有效。
其中,可信计算节点可以通过下述几个方面进行认证:
1、根据公钥center_pk_verify对中心节点的数字签名center_sig进行解密,并确定数字签名center_sig是否符合预期。
2、可信计算节点根据类型字段判断TEE硬件类型,并通过接收到的第三证明信息(即第三远程证明报告)验证中心节点可信。
3、客户端根据数据字段中包含的任务的job_sk的校验信息、任务的result_key的校验信息以及公钥center_pk_verify的校验信息,确定任务的job_sk、任务的result_key以及公钥center_pk_verify的正确性。
若上述几方面的验证结果都符合预期,则可信计算节点可以确定中心节点可信,且中心节点的TEE中的服务是安全地运行在真实的中心节点的TEE环境中的。此外,通过验证也表明可信计算节点得到的任务密钥是有效的任务密钥,用于后续任务数据密文的解密以及任务处理结果的加密是安全地。
结合前述介绍可知,可信计算节点与中心节点实际上进行了双向的认证,在双向认证通过之后,才能够保证整个数据处理任务链路上'的节点均是安全地,也同时表明任务密钥是有效的。在一些情况下,可信计算节点发起的认证请求可以如图5实施例中所示的方式实现,或者,第三认证请求可以与第二身份信息一起发送中心节点,之后,中心节点再将第三身份信息与第二任务密钥密文以及数据处理任务一起发送给可信计算节点,从而减小中心节点与可信计算节点之间的交互次数,减小网络开销;或者,步骤S517'以及S517"在步骤S517之后执行,当认证结果指示任务密钥无效时,删除可信计算节点记录的任务密钥以及数据处理任务。
请参阅图6所示,在一个具体的实施例中,本公开提供的基于集群环境下任务密钥分发方法可以包括以下步骤:
步骤a1、客户端向中心节点注册。
在执行数据处理任务前,客户端需要在服务器集群的中心节点中注册,中心节点基于客户端的属性信息(包括但不限于客户端的名称、可执行的任务类型、资源限制、有效期等等)以及初始化的相关参数(如ABE公钥),生成客户端密钥c_key(即第一通信密钥)并发送给客户端。
步骤a2、客户端向中心节点发送数据处理任务(任务信息)。
步骤a3、客户端发起认证,中心节点向客户端返回中心节点身份信息以及第一任务密钥密文。
步骤a4、中心节点向可信计算节点发起认证,可信计算节点向中心节点返回可信计算节点身份信息。
步骤a5、中心节点向可信计算节点分发第二任务密钥密文以及数据处理任务(任务信息)。其中,步骤a2至步骤a4的实现方案可参照图2至图5所示实施例的描述,简明起见,此处不再赘述。
步骤a6、客户端向可信计算节点发送任务数据密文和数据处理任务的信息,并从可信计算节点获得任务执行结果密文。
在任务数据传输阶段,客户端可以采用job_pk加密任务数据得到任务数据密文以及任务信息发送给服务器集群中的可信计算节点,可信计算节点接收到任务数据密文后,利用job_sk解密得到任务数据。可信计算节点判断客户端发送的任务信息与之前记录的对应关系中的任务信息是否一致,确定任务信息一致后,记录相关日志并执行数据处理任务,完成后,采用result_key对任务处理结果进行加密得到任务处理结果密文并返回给客户端。
需要说明的是,可信计算节点通过记录任务的job_sk以及相应的任务信息,通过判断客户端发送的任务信息与记录的任务信息是否一致,从而防止客户端调用其权限之外的其他TEE服务,解决了客户端可能任意调用集群服务的问题。
此外,在任务数据传输阶段,可信计算节点无需对客户端身份进行验证,任务的job_pk可以为客户端对服务器集群的访问凭证,可信计算节点若能够利用任务的job_sk成功解密任务数据密文,则表示客户端持有正确的job_pk,即客户端的属性符合job_pk的访问策略,是合法的客户端。
此外,在任务处理结果数据量较大且多个客户端均需获取任务处理结果的场景中,避免了将执行结果加密多次所带来的开销。此外,若存在针对各参与方返回不同任务处理结果的情况,可直接利用各客户端加密任务数据的密钥来分别加密针对各客户端返回的任务处理结果,保护结果数据的安全性以及实现结果数据的隔离。
图7为本公开一实施例提供的基于集群环境下任务密钥分发装置的结构示意图。请参阅图7所示,本实施例提供的装置700包括:
接收模块701,用于接收客户端发送的数据处理任务。
处理模块702,用于在可信执行环境中生成数据处理任务对应的任务密钥以及密钥访问策略;以及,基于密钥访问策略以及与客户端之间的第一通信密钥对所述任务密钥进行属性加密得到第一任务密钥密文。
发送模块703,用于向所述客户端发送所述第一任务密钥密文,所述第一任务密钥密文支持属性满足所述密钥访问策略的客户端解密得到所述任务密钥并用于任务数据加密得到任务数据密文。
所述处理模块702,还用于从服务器集群中确定执行所述数据处理任务的可信计算节点;以及,基于与所述可信计算节点之间的第二通信密钥对所述任务密钥进行加密得到第二任务密钥密文。
所述发送模块703,还用于向可信计算节点发送第二任务密钥密文以及数据处理任务,指示可信计算节点对第二任务密钥密文解密得到任务密钥,并记录任务密钥与数据处理任务,采用所述任务密钥对数据处理任务对应的任务数据密文进行解密以及在解密成功时基于客户端具有调用权限的目标集群服务进行访问控制。
在一些实施例中,所述任务密钥包括:用于保护所述数据处理任务对应的任务数据的非对称密钥和用于保护所述数据处理任务对应的任务执行结果的对称密钥;所述密钥访问策略包括非对称密钥的访问策略和对称密钥的访问策略。
处理模块702,具体用于基于所述非对称密钥的访问策略、所述非对称密钥中的公钥以及所述第一通信密钥进行属性加密得到的公钥密文;基于所述称密钥的访问策略、所述对称密钥以及所述第一通信密钥进行属性加密得到的对称密钥密文;所述第一任务密钥密文包括所述公钥密文和所述对称密钥密文。
在一些可能的实施例中,所述发送模块703,还用于响应所述客户端发送的第一认证请求,向所述客户端发送第一身份信息,使得所述客户端根据所述第一身份信息对中心节点进行认证,并基于认证结果确定所述任务密钥是否有效;其中,所述第一身份信息包括:所述中心节点基于所述第一认证请求中的随机值生成的数字签名、签名公钥以及所述中心节点在可信执行环境中生成的包含任务密钥校验信息和签名公钥校验信息的第一证明信息。
在一些实施例中,所述接收模块701,还用于接收所述可信计算节点发送的第二身份信息,所述第二身份信息包括:所述可信计算节点基于接收到的第二认证请求中的随机值生成的数字签名、签名公钥以及所述可信计算节点在可信执行环境中生成的包含第二通信密钥校验信息和签名公钥校验信息的第二证明信息。
处理模块702,还用于根据所述可信计算节点身份信息对所述可信计算节点进行认证,以在认证通过后发送所述第二任务密钥密文。
在一些实施例中,所述发送模块703,还用于对所述可信计算节点认证通过后,响应所述可信计算节点发送的第三认证请求,向所述可信计算节点发送第三身份信息,所述第三身份信息用于所述可信计算节点对中心节点进行认证并基于认证结果确定所述任务密钥是否有效;其中,所述第三身份信息包括:所述中心节点基于所述第三认证请求中的随机值生成的数字签名、签名公钥以及所述中心节点在可信执行环境中生成的包含任务密钥校验信息和签名公钥校验信息的第三证明信息。
在一些实施例中,所述任务密钥包括:用于保护所述数据处理任务对应的任务数据的非对称密钥对和用于保护所述数据处理任务对应的任务执行结果的对称密钥;处理模块702,具体用于采用所述第二通信密钥信封加密所述非对称密钥对中的私钥和所述对称密钥得到所述第二任务密钥密文。
在一些实施例中,处理模块702,还用于根据所述客户端的属性信息在可信执行环境中生成所述第一通信密钥;发送模块703,还用于将第一通信密钥发送至所述客户端,使得所述客户端能够根据所述第一通信密钥对接收到的第一任务密钥密文进行解密。
本实施例提供的基于集群环境下任务密钥分发装置可以用于执行前述任一方法实施例中中心节点执行的技术方案,其实现原理以及技术效果类似,可参照前述方法实施例的详细描述,简明起见,此处不再赘述。
图8为本公开一实施例提供的基于集群环境下任务密钥分发装置的结构示意图。请参阅图8所示,本实施例提供的装置800包括:
发送模块801,用于向服务器集群中的中心节点发送数据处理任务,使得所述中心节点在可信执行环境中生成所述数据处理任务对应的任务密钥以及所述任务密钥对应的密钥访问策略。
接收模块802,用于接收所述中心节点发送的第一任务密钥密文,所述第一任务密钥密文为所述中心节点基于所述密钥访问策略及与客户端与中心节点之间的第一通信密钥对任务密钥进行属性加密得到。
处理模块803,用于在属性满足所述密钥访问策略时,通过所述第一通信密钥对所述第一任务密钥密文进行解密得到所述任务密钥。
所述处理模块803,用于根据所述任务密钥对所述数据处理任务对应的任务数据进行加密得到任务数据密文并通过发送模块801发送任务数据密文以及数据处理任务至服务器集群中的可信计算节点,指示所述可信计算节点采用所述任务密钥解密所述数据处理任务对应的任务数据密文,以及,在解密成功时基于所述客户端具有调用权限的目标集群服务进行访问控制。
在一些实施例中,所述任务密钥包括用于保护所述数据处理任务对应的任务数据的非对称密钥和用于保护所述数据处理任务对应的任务执行结果的对称密钥;所述密钥访问策略包括非对称密钥的访问策略和对称密钥的访问策略;所述处理模块803,具体用于在属性满足所述非对称密钥的访问策略时,通过所述第一通信密钥对所述第一任务密钥密文进行解密得到所述非对称密钥对中的公钥;在属性满足所述对称密钥的访问策略时,通过所述第一通信密钥对所述第一任务密钥密文进行解密得到所述对称密钥。
在一些实施例中,发送模块801,还用于向中心节点发送第一认证请求。接收模块802,还用于接收所述中心节点发送的第一身份信息,所述第一身份信息包括:所述中心节点基于所述第一认证请求中的随机值生成的数字签名、签名公钥以及所述中心节点在可信执行环境中生成的包含任务密钥校验信息和签名公钥校验信息的第一证明信息。
相应地,处理模块803,还用于根据所述第一身份信息对所述中心节点进行认证得到认证结果,所述认证结果用于确定所述任务密钥是否有效。
在一些实施例中,所述处理模块803,具体用于采用所述任务密钥包括的非对称密钥中的公钥信封加密所述数据处理任务对应的任务数据得到所述任务数据密文。
本实施例提供的基于集群环境下任务密钥分发装置可以用于执行前述任一方法实施例中客户端执行的技术方案,其实现原理以及技术效果类似,可参照前述方法实施例的详细描述,简明起见,此处不再赘述。
图9为本公开另一实施例提供的基于集群环境下任务密钥分发装置的结构示意图。请参阅图9所示,本实施例提供的装置900包括:
接收模块901,用于接收服务器集群的中心节点发送的第二任务密钥密文以及客户端向中心节点发送的数据处理任务。
处理模块902,用于根据与所述中心节点之间的第二通信密钥对所述第二任务密钥密文进行解密得到所述任务密钥,并记录所述任务密钥与所述数据处理任务。
访问控制模块903,用于采用所述任务密钥解密所述数据处理任务对应的任务数据密文;以及,在解密成功时基于所述客户端具有调用权限的目标集群服务进行访问控制。
在一些实施例中,装置900还包括:发送模块904,用于响应所述中心节点发送的第二认证请求,向所述中心节点发送第二身份信息,使得所述中心节点根据所述第二身份信息对可信计算节点进行认证,以在认证通过后发送所述第二任务密钥密文;所述第二身份信息包括:所述可信计算节点基于所述第二认证请求中的随机值生成的数字签名、签名公钥以及所述可信计算节点在可信执行环境中生成的包含通信密钥校验信息和签名公钥校验信息的第二证明信息。
在一些实施例中,向中心节点发送第二身份信息之前,接收模块901还用于接收中心节点发送的第二认证请求,第二认证请求用于对可信计算节点进行认证。
在一些实施例中,向中心节点发送第二身份信息之后,发送模块904,还用于向所述中心节点发送第三认证请求。
接收模块901,还用于接收中心节点发送的第三身份信息,所述第三身份信息包括:所述中心节点基于所述第三认证请求中的随机值生成的数字签名、签名公钥以及所述中心节点在可信执行环境中生成的包含任务密钥校验信息和签名公钥校验信息的第三证明信息。
处理模块902,还用于根据所述第三身份信息对所述中心节点进行认证得到认证结果,该认证结果用于确定所述任务密钥是否有效。
本实施例提供的基于集群环境下任务密钥分发装置可以用于执行前述任一方法实施例中可信计算节点执行的技术方案,其实现原理以及技术效果类似,可参照前述方法实施例的详细描述,简明起见,此处不再赘述。
图10为本公开一实施例提供的电子设备的结构示意图。请参阅图10所示,本实施例提供的电子设备1000包括:存储器1001和处理器1002。其中,存储器1001可以是独立的物理单元,与处理器1002可以通过总线1003连接。存储器1001、处理器1002也可以集成在一起,通过硬件实现等。
存储器1001用于存储程序指令,处理器1002调用该程序指令,执行以上任一方法实施例中客户端或者中心节点或者可信计算节点执行的基于集群环境下任务密钥分发方法。
可选地,当上述实施例的方法中的部分或全部通过软件实现时,上述电子设备1000也可以只包括处理器1002。用于存储程序的存储器1001位于电子设备1000之外,处理器1002通过电路/电线与存储器连接,用于读取并执行存储器中存储的程序。
处理器1002可以是中央处理器(central processing unit,CPU),网络处理器(network processor,NP)或者CPU和NP的组合。
处理器1002还可以进一步包括硬件芯片。上述硬件芯片可以是专用集成电路(application-specific integrated circuit,ASIC),可编程逻辑器件(programmablelogic device,PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(complexprogrammable logic device,CPLD),现场可编程逻辑门阵列(field-programmable gatearray,FPGA),通用阵列逻辑(generic array logic,GAL)或其任意组合。
存储器1001可以包括易失性存储器(volatile memory),例如随机存取存储器(random-access memory,RAM);存储器也可以包括非易失性存储器(non-volatilememory),例如快闪存储器(flash memory),硬盘(hard disk drive,HDD)或固态硬盘(solid-state drive,SSD);存储器还可以包括上述种类的存储器的组合。
本公开还提供一种可读存储介质,包括:计算机程序指令,所述计算机程序指令被电子设备的至少一个处理器执行时,使得所述电子设备实现如上任一方法实施例中客户端或者中心节点或者可信计算节点执行的基于集群环境下任务密钥分发方法。
本公开还提供一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得所述计算机实现如上任一方法实施例中客户端或者中心节点或者可信计算节点执行的基于集群环境下任务密钥分发方法。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅是本公开的具体实施方式,使本领域技术人员能够理解或实现本公开。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本公开的精神或范围的情况下,在其它实施例中实现。因此,本公开将不会被限制于本文所述的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (20)
1.一种基于集群环境下任务密钥分发方法,其特征在于,包括:
接收客户端发送的数据处理任务,在可信执行环境中生成所述数据处理任务对应的任务密钥以及所述任务密钥对应的密钥访问策略;
基于所述密钥访问策略以及与所述客户端之间的第一通信密钥对所述任务密钥进行属性加密得到第一任务密钥密文,向所述客户端发送第一任务密钥密文;所述第一任务密钥密文支持属性满足所述密钥访问策略的客户端解密得到所述任务密钥并用于任务数据加密得到任务数据密文;
从服务器集群中确定执行所述数据处理任务的可信计算节点;
基于与所述可信计算节点之间的第二通信密钥对所述任务密钥进行加密得到的第二任务密钥密文,向所述可信计算节点发送第二任务密钥密文以及所述数据处理任务,指示所述可信计算节点解密所述第二任务密钥密文得到所述任务密钥,并采用所述任务密钥解密所述数据处理任务对应的任务数据密文,在解密成功时基于所述客户端具有调用权限的目标集群服务进行访问控制。
2.根据权利要求1所述的方法,其特征在于,所述任务密钥包括:用于保护所述数据处理任务对应的任务数据的非对称密钥和用于保护所述数据处理任务对应的任务执行结果的对称密钥;所述密钥访问策略包括非对称密钥的访问策略和对称密钥的访问策略;
所述基于所述密钥访问策略、所述任务密钥以及与所述客户端之间的第一通信密钥进行属性加密得到第一任务密钥密文,包括:
基于所述非对称密钥的访问策略、所述非对称密钥中的公钥以及所述第一通信密钥进行属性加密得到的公钥密文;
基于所述称密钥的访问策略、所述对称密钥以及所述第一通信密钥进行属性加密得到的对称密钥密文;
所述第一任务密钥密文包括所述公钥密文和所述对称密钥密文。
3.根据权利要求1或2所述的方法,其特征在于,还包括:
响应所述客户端发送的第一认证请求,向所述客户端发送第一身份信息,使得所述客户端根据所述第一身份信息对中心节点进行认证,并基于认证结果确定所述任务密钥是否有效;其中,所述第一身份信息包括:所述中心节点基于所述第一认证请求中的随机值生成的数字签名、签名公钥以及所述中心节点在可信执行环境中生成的包含任务密钥校验信息和签名公钥校验信息的第一证明信息。
4.根据权利要求1或2所述的方法,其特征在于,所述向所述可信计算节点发送第二任务密钥密文之前,还包括:
接收所述可信计算节点发送的第二身份信息,所述第二身份信息包括:所述可信计算节点基于接收到的第二认证请求中的随机值生成的数字签名、签名公钥以及所述可信计算节点在可信执行环境中生成的包含第二通信密钥校验信息和签名公钥校验信息的第二证明信息;
根据所述可信计算节点身份信息对所述可信计算节点进行认证,以在认证通过后发送所述第二任务密钥密文。
5.根据权利要求4所述的方法,其特征在于,还包括:
对所述可信计算节点认证通过后,响应所述可信计算节点发送的第三认证请求,向所述可信计算节点发送第三身份信息,所述第三身份信息用于所述可信计算节点对中心节点进行认证并基于认证结果确定所述任务密钥是否有效;其中,所述第三身份信息包括:所述中心节点基于所述第三认证请求中的随机值生成的数字签名、签名公钥以及所述中心节点在可信执行环境中生成的包含任务密钥校验信息和签名公钥校验信息的第三证明信息。
6.根据权利要求1所述的方法,其特征在于,所述任务密钥包括:用于保护所述数据处理任务对应的任务数据的非对称密钥对和用于保护所述数据处理任务对应的任务执行结果的对称密钥;
所述基于与所述可信计算节点之间的第二通信密钥对所述任务密钥进行加密得到的第二任务密钥密文,包括:
采用所述第二通信密钥信封加密所述非对称密钥对中的私钥和所述对称密钥得到所述第二任务密钥密文。
7.根据权利要求1或2所述的方法,其特征在于,所述向所述客户端发送所述第一任务密钥密文之前,还包括:
根据所述客户端的属性信息在可信执行环境中生成所述第一通信密钥,且将第一通信密钥发送至所述客户端,使得所述客户端根据所述第一通信密钥对所述第一任务密钥密文进行解密。
8.一种基于集群环境下任务密钥分发方法,其特征在于,包括:
向服务器集群中的中心节点发送数据处理任务,使得所述中心节点响应所述数据处理任务在可信执行环境中生成所述数据处理任务对应的任务密钥以及所述任务密钥对应的密钥访问策略;
接收所述中心节点发送的第一任务密钥密文,所述第一任务密钥密文是所述中心节点基于所述密钥访问策略以及与所述中心节点之间的第一通信密钥对所述任务密钥进行属性加密得到的;
在属性满足所述密钥访问策略时,通过所述第一通信密钥对所述第一任务密钥密文进行解密得到所述任务密钥;
根据所述任务密钥对所述数据处理任务的任务数据进行加密得到任务数据密文,并将所述任务数据密文发送至服务器集群中的可信计算节点,指示所述可信计算节点基于其记录的所述任务密钥解密所述任务数据密文,在成功解密时基于客户端具有调用权限的目标集群服务进行访问控制。
9.根据权利要求8所述的方法,其特征在于,所述任务密钥包括用于保护所述数据处理任务对应的任务数据的非对称密钥和用于保护所述数据处理任务对应的任务执行结果的对称密钥;所述密钥访问策略包括非对称密钥的访问策略和对称密钥的访问策略;
所述在属性满足所述密钥访问策略时,通过所述第一通信密钥对所述第一任务密钥密文进行解密得到所述任务密钥,包括:
在属性满足所述非对称密钥的访问策略时,通过所述第一通信密钥对所述第一任务密钥密文进行解密得到所述非对称密钥对中的公钥;
在属性满足所述对称密钥的访问策略时,通过所述第一通信密钥对所述第一任务密钥密文进行解密得到所述对称密钥。
10.根据权利要求8所述的方法,其特征在于,还包括:
向所述中心节点发送第一认证请求;
接收所述中心节点发送的第一身份信息,所述第一身份信息包括:所述中心节点基于所述第一认证请求中的随机值生成的数字签名、签名公钥以及所述中心节点在可信执行环境中生成的包含任务密钥校验信息和签名公钥校验信息的第一证明信息;
根据所述第一身份信息对所述中心节点进行认证得到认证结果,所述认证结果用于确定所述任务密钥是否有效。
11.根据权利要求8所述的方法,其特征在于,所述根据所述任务密钥对所述数据处理任务的任务数据进行加密得到任务数据密文,包括:
采用所述任务密钥包括的非对称密钥中的公钥信封加密所述数据处理任务对应的任务数据得到所述任务数据密文。
12.一种基于集群环境下任务密钥分发方法,其特征在于,包括:
接收服务器集群的中心节点发送的第二任务密钥密文以及客户端向所述中心节点发送的数据处理任务;
根据与所述中心节点之间的第二通信密钥对所述第二任务密钥密文进行解密得到任务密钥,并记录所述任务密钥与所述数据处理任务;
采用所述任务密钥对所述客户端发送的所述数据处理任务对应的任务数据密文进行解密,在成功解密时基于所述客户端具有调用权限的目标集群服务进行访问控制。
13.根据权利要求12所述的方法,其特征在于,所述接收服务器集群的中心节点发送的第二任务密钥密文以及客户端向所述中心节点发送的数据处理任务之前,还包括:
接收并响应所述中心节点发送的第二认证请求,向所述中心节点发送第二身份信息,使得所述中心节点根据所述第二身份信息对可信计算节点进行认证,以在认证通过后发送所述第二任务密钥密文;所述第二身份信息包括:所述可信计算节点基于所述第二认证请求中的随机值生成的数字签名、签名公钥以及所述可信计算节点在可信执行环境中生成的包含通信密钥校验信息和签名公钥校验信息的第二证明信息。
14.根据权利要求13所述的方法,其特征在于,所述向所述中心节点发送第二身份信息之后,所述方法还包括:
向所述中心节点发送第三认证请求;
接收所述中心节点响应发送的第三身份信息,所述第三身份信息包括:所述中心节点基于所述第三认证请求中的随机值生成的数字签名、签名公钥以及所述中心节点在可信执行环境中生成的包含任务密钥校验信息和签名公钥校验信息的第三证明信息;
根据所述第三身份信息对所述中心节点进行认证得到认证结果,该认证结果用于确定所述任务密钥是否有效。
15.一种基于集群环境下任务密钥分发装置,其特征在于,包括:
接收模块,用于接收客户端发送的数据处理任务;
处理模块,用于在可信执行环境中生成所述数据处理任务对应的任务密钥以及密钥访问策略;以及,基于所述密钥访问策略以及与所述客户端之间的第一通信密钥对所述任务密钥进行属性加密得到第一任务密钥密文;
发送模块,用于向所述客户端发送所述第一任务密钥密文,所述第一任务密钥密文支持属性满足所述密钥访问策略的客户端解密得到所述任务密钥并用于任务数据加密得到任务数据密文;
所述处理模块,还用于从服务器集群中确定执行所述数据处理任务的可信计算节点;以及,基于与所述可信计算节点之间的第二通信密钥对所述任务密钥进行加密得到第二任务密钥密文;
所述发送模块,还用于向所述可信计算节点发送所述第二任务密钥密文以及所述数据处理任务,指示所述可信计算节点解密所述第二任务密钥密文得到所述任务密钥,并采用所述任务密钥解密所述数据处理任务对应的任务数据密文,在解密成功时基于客户端具有调用权限的目标集群服务进行访问控制。
16.一种基于集群环境下任务密钥分发装置,其特征在于,包括:
发送模块,用于向服务器集群中的中心节点发送数据处理任务,使得所述中心节点在可信执行环境中生成所述数据处理任务对应的任务密钥以及所述任务密钥对应的密钥访问策略;
接收模块,用于接收所述中心节点发送的第一任务密钥密文,所述第一任务密钥密文为所述中心节点基于所述密钥访问策略以及与所述中心节点之间的第一通信密钥对所述任务密钥进行属性加密得到;
处理模块,用于在属性满足所述密钥访问策略时,通过所述第一通信密钥对所述第一任务密钥密文进行解密得到所述任务密钥;
所述处理模块,还用于根据所述任务密钥对所述数据处理任务对应的任务数据进行加密得到任务数据密文;
所述发送模块,还用于发送所述任务数据密文至服务器集群中的可信计算节点,指示所述可信计算节点基于其记录的所述任务密钥对所述任务数据密文进行解密,在解密成功时基于客户端具有调用权限的目标集群服务进行访问控制。
17.一种基于集群环境下任务密钥分发装置,其特征在于,包括:
接收模块,用于接收服务器集群的中心节点发送的第二任务密钥密文以及客户端向所述中心节点发送的数据处理任务;
处理模块,用于根据与所述中心节点之间的第二通信密钥对所述第二任务密钥密文进行解密得到所述任务密钥,并记录所述任务密钥与所述数据处理任务;
访问控制模块,用于采用所述任务密钥解密所述数据处理任务对应的任务数据密文;在解密成功时基于所述客户端具有调用权限的目标集群服务进行访问控制。
18.一种电子设备,其特征在于,包括:存储器和处理器;
所述存储器被配置为存储计算机程序指令;
所述处理器被配置为执行所述计算机程序指令,使得所述电子设备实现如权利要求1至7任一项,或者,如权利要求8至11任一项,或者,如权利要求12至14任一项所述的基于集群环境下任务密钥分发方法。
19.一种可读存储介质,其特征在于,包括:计算机程序指令;
电子设备的处理器执行所述计算机程序指令,使得所述电子设备实现如权利要求1至7任一项,或者,如权利要求8至11任一项,或者,如权利要求12至14任一项所述的基于集群环境下任务密钥分发方法。
20.一种计算机程序产品,其特征在于,电子设备执行所述计算机程序产品,使得所述电子设备实现如权利要求1至7任一项,或者,如权利要求8至11任一项,或者,如权利要求12至14任一项所述的基于集群环境下任务密钥分发方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211045778.5A CN117675244A (zh) | 2022-08-30 | 2022-08-30 | 基于集群环境下任务密钥分发方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211045778.5A CN117675244A (zh) | 2022-08-30 | 2022-08-30 | 基于集群环境下任务密钥分发方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117675244A true CN117675244A (zh) | 2024-03-08 |
Family
ID=90075676
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211045778.5A Pending CN117675244A (zh) | 2022-08-30 | 2022-08-30 | 基于集群环境下任务密钥分发方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117675244A (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1647442A (zh) * | 2002-02-05 | 2005-07-27 | 舒尔蒂股份有限公司 | 为获得解密密钥请求密钥检索的安全电子消息系统 |
CN101277192A (zh) * | 2008-04-25 | 2008-10-01 | 华为技术有限公司 | 一种验证客户端的方法及系统 |
WO2020252611A1 (zh) * | 2019-06-17 | 2020-12-24 | 华为技术有限公司 | 一种数据交互方法及相关设备 |
CN114584307A (zh) * | 2022-05-07 | 2022-06-03 | 腾讯科技(深圳)有限公司 | 一种可信密钥管理方法、装置、电子设备和存储介质 |
-
2022
- 2022-08-30 CN CN202211045778.5A patent/CN117675244A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1647442A (zh) * | 2002-02-05 | 2005-07-27 | 舒尔蒂股份有限公司 | 为获得解密密钥请求密钥检索的安全电子消息系统 |
CN101277192A (zh) * | 2008-04-25 | 2008-10-01 | 华为技术有限公司 | 一种验证客户端的方法及系统 |
WO2020252611A1 (zh) * | 2019-06-17 | 2020-12-24 | 华为技术有限公司 | 一种数据交互方法及相关设备 |
CN114584307A (zh) * | 2022-05-07 | 2022-06-03 | 腾讯科技(深圳)有限公司 | 一种可信密钥管理方法、装置、电子设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US12034865B2 (en) | Secure dynamic threshold signature scheme employing trusted hardware | |
JP7181539B2 (ja) | 利用者識別認証データを管理する方法および装置 | |
KR102392420B1 (ko) | 다중키 쌍 시그너처를 사용한 프로그램 실행 및 데이터 증명 체계 | |
CN111095256B (zh) | 在可信执行环境中安全地执行智能合约操作 | |
CN111066286B (zh) | 使用高可用性的可信执行环境检索区块链网络的公共数据 | |
CN108965230B (zh) | 一种安全通信方法、系统及终端设备 | |
US8196186B2 (en) | Security architecture for peer-to-peer storage system | |
WO2022199290A1 (zh) | 多方安全计算 | |
CN110832519A (zh) | 提高区块链网络与外部数据源之间的通信的完整性 | |
WO2017020452A1 (zh) | 认证方法和认证系统 | |
CN114157415A (zh) | 数据处理方法、计算节点、系统、计算机设备和存储介质 | |
CN111241492A (zh) | 一种产品多租户安全授信方法、系统及电子设备 | |
CN114338091B (zh) | 数据传输方法、装置、电子设备及存储介质 | |
CN110719167A (zh) | 一种基于区块链的带时效性的签密方法 | |
CN116506134B (zh) | 数字证书管理方法、装置、设备、系统及可读存储介质 | |
EP2892206A1 (en) | A system and method for push framework security | |
CN111314059B (zh) | 账户权限代理的处理方法、装置、设备及可读存储介质 | |
CN113722749A (zh) | 基于加密算法的区块链baas服务的数据处理方法及装置 | |
JP6045018B2 (ja) | 電子署名代行サーバ、電子署名代行システム及び電子署名代行方法 | |
US20210119776A1 (en) | Proof-of-work based on block cipher | |
CN117675244A (zh) | 基于集群环境下任务密钥分发方法及装置 | |
Surya et al. | Single sign on mechanism using attribute based encryption in distributed computer networks | |
CN118802143A (zh) | 数据传输方法、装置及电子设备 | |
CN117335991A (zh) | 可执行程序的无证书认证 | |
CN117997520A (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 |