CN111756670B - 数据处理方法、装置、设备和系统 - Google Patents
数据处理方法、装置、设备和系统 Download PDFInfo
- Publication number
- CN111756670B CN111756670B CN201910232662.4A CN201910232662A CN111756670B CN 111756670 B CN111756670 B CN 111756670B CN 201910232662 A CN201910232662 A CN 201910232662A CN 111756670 B CN111756670 B CN 111756670B
- Authority
- CN
- China
- Prior art keywords
- data
- data processing
- processing service
- transmission channel
- calculation result
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/18—Network architectures or network communication protocols for network security using different networks or channels, e.g. using out of band channels
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/606—Protecting data by securing the transmission between two devices or processes
Abstract
本发明实施例提供一种数据处理方法、装置、设备和系统,该系统包括:分别对应于数据所属方和数据使用方的第一设备和第二设备,部署在可信执行环境中的数据处理服务。第一设备收到数据处理服务发送的第一数据获取请求,若确定数据处理服务通过可信度量,则与数据处理服务建立第一安全传输通道,并通过其将数据所属方的数据发送至数据处理服务。数据处理服务对数据所属方的数据进行计算得到第一计算结果。数据处理服务将第二设备发送的第二数据获取请求转发至第一设备,并在第一设备确定数据使用方具有第一计算结果的使用权限时,与第二设备建立第二安全传输通道,通过第二安全传输通道将第一计算结果发送至第二设备,以保证数据所属方的数据安全。
Description
技术领域
本发明涉及互联网技术领域,尤其涉及一种数据处理方法、装置、设备和系统。
背景技术
企业之间相互合作,往往会涉及到企业私有数据的交互,此时就会存在数据安全的问题。
虽然合作的企业之间会签署数据保密协议,可以通过法律途径保障自身的数据安全,但是从技术角度将,数据在企业间传输的过程还是会受到各种攻击,导致数据安全问题。
发明内容
本发明实施例提供一种数据处理方法、装置、设备和系统,用以保护企业的数据安全。
第一方面,本发明实施例提供了一种数据处理系统,包括:
对应于数据所属方的第一设备,对应于数据使用方的第二设备,以及部署在可信执行环境中的数据处理服务;
所述第一设备中存储有所述数据所属方的数据;
所述第一设备,用于响应于所述数据处理服务发送的第一数据获取请求,对所述数据处理服务进行可信度量,若所述数据处理服务通过可信度量,则与所述数据处理服务建立第一安全传输通道,通过所述第一安全传输通道将所述数据发送至所述数据处理服务;
所述数据处理服务,用于对所述数据进行计算得到第一计算结果;以及,将所述第二设备发送的第二数据获取请求转发至所述第一设备,并在所述第一设备确定所述数据使用方具有所述第一计算结果的使用权限时,与所述第二设备建立第二安全传输通道,通过所述第二安全传输通道将所述第一计算结果发送至所述第二设备;其中,所述第二数据获取请求用于请求获取所述第一计算结果;
所述第二设备,用于向所述数据处理服务发送所述第二数据获取请求,以及接收所述第一计算结果。
第二方面,本发明实施例提供一种数据处理方法,应用于运行在可信执行环境中的数据处理服务,该方法包括:
向对应于数据所属方的第一设备发送第一数据获取请求;
响应于所述第一设备确定所述数据处理服务通过可信度量,与所述第一设备建立第一安全传输通道;
接收所述第一设备通过所述第一安全传输通道发送的所述数据所属方的数据;
对所述数据进行计算得到第一计算结果;
将对应于数据使用方的第二设备发送的第二数据获取请求转发至所述第一设备;
响应于所述第一设备确定所述数据使用方具有所述第一计算结果的使用权限,与所述第二设备建立第二安全传输通道;
通过所述第二安全传输通道将所述第一计算结果发送至所述第二设备。
第三方面,本发明实施例提供一种数据处理装置,应用于运行在可信执行环境中的数据处理服务,该装置包括:
发送模块,用于向对应于数据所属方的第一设备发送第一数据获取请求;
建立模块,用于响应于所述第一设备确定所述数据处理服务通过可信度量,与所述第一设备建立第一安全传输通道;
接收模块,用于接收所述第一设备通过所述第一安全传输通道发送的所述数据所属方的数据;
计算模块,用于对所述数据进行计算得到第一计算结果;
所述发送模块,还用于将对应于数据使用方的第二设备发送的第二数据获取请求转发至所述第一设备;
所述建立模块,还用于响应于所述第一设备确定所述数据使用方具有所述第一计算结果的使用权限,与所述第二设备建立第二安全传输通道;
所述发送模块,还用于通过所述第二安全传输通道将所述第一计算结果发送至所述第二设备。
第四方面,本发明实施例提供一种电子设备,包括处理器、存储器,所述存储器上存储有运行在可信执行环境中的数据处理服务,当所述数据处理服务被所述处理器执行时,使所述处理器至少实现上述第二方面中的数据处理方法。
第五方面,本发明实施例提供了一种非暂时性机器可读存储介质,所述非暂时性机器可读存储介质上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器至少可以实现上述第二方面中的数据处理方法。
第六方面,本发明实施例提供一种数据处理方法,应用于数据所属方的第一设备,该方法包括:
响应于数据处理服务发送的第一数据获取请求,对所述数据处理服务进行可信度量;
若所述数据处理服务通过可信度量,则与所述数据处理服务建立第一安全传输通道;
通过所述第一安全传输通道将所述数据所属方的数据发送至所述数据处理服务,以使所述数据处理服务对所述数据进行计算得到第一计算结果;
响应于所述数据处理服务转发自数据使用方的第二数据获取请求,若确定所述数据使用方具有所述第一计算结果的使用权限,则向所述数据处理服务反馈使用授权信息,以使所述数据处理服务与所述数据使用方的第二设备建立第二安全传输通道并通过所述第二安全传输通道将所述第一计算结果发送至所述第二设备。
第七方面,本发明实施例提供一种数据处理装置,应用于数据所属方的第一设备,该装置包括:
认证模块,用于响应于数据处理服务发送的第一数据获取请求,对所述数据处理服务进行可信度量;
建立模块,用于若所述认证模块确定所述数据处理服务通过可信度量,则与所述数据处理服务建立第一安全传输通道;
发送模块,用于通过所述第一安全传输通道将所述数据所属方的数据发送至所述数据处理服务,以使所述数据处理服务对所述数据进行计算得到第一计算结果;
授权模块,用于响应于所述数据处理服务转发自数据使用方的第二数据获取请求,若确定所述数据使用方具有所述第一计算结果的使用权限,则向所述数据处理服务反馈使用授权信息,以使所述数据处理服务与所述数据使用方的第二设备建立第二安全传输通道并通过所述第二安全传输通道将所述第一计算结果发送至所述第二设备。
第八方面,本发明实施例提供一种电子设备,包括处理器、存储器,所述存储器上存储有可执行代码,当所述可执行代码被所述处理器执行时,使所述处理器至少实现上述第六方面所述的数据处理方法。
第九方面,本发明实施例提供了一种非暂时性机器可读存储介质,所述非暂时性机器可读存储介质上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器至少可以实现上述第六方面中的数据处理方法。
在本发明实施例中,可以将合作的双方企业分别称为数据所属方和数据使用方,并提供一数据处理服务用于对双方企业进行数据计算,为保证数据安全,该数据处理服务部署在可信执行环境中。在数据使用方使用数据所属方的数据的场景中,首先,数据所属方将自己的数据提供给可信执行环境中的数据处理服务进行数据计算,其次,数据使用方从数据处理服务处获得计算结果进行使用。具体地,数据所属方只有在数据处理服务通过了可信度量后才会将自己的数据提供给数据处理服务,以保证数据的存储安全。数据使用方想要使用数据所属方的数据时也向数据处理服务发送请求,数据处理服务是否将数据所属方的数据计算结果发送给数据使用方,需要经过数据所属方的授权,只有在数据所属方授权的情况下,才会通过安全传输通道将数据计算结果发送至数据使用方,以保证数据所属方的数据的使用安全。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种数据处理系统的组成示意图;
图2为本发明实施例提供的另一种数据处理系统的组成示意图;
图3为本发明实施例提供的一种数据处理方法的流程图;
图4为本发明实施例提供的另一种数据处理方法的流程图;
图5为本发明实施例提供的又一种数据处理方法的流程图;
图6为本发明实施例提供的一种数据处理装置的结构示意图;
图7为与图6所示实施例提供的数据处理装置对应的电子设备的结构示意图;
图8为本发明实施例提供的另一种数据处理装置的结构示意图;
图9为与图8所示实施例提供的数据处理装置对应的电子设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式。除非上下文清楚地表示其他含义,“多种”一般包含至少两种。
取决于语境,如在此所使用的词语“如果”、“若”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的商品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种商品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的商品或者系统中还存在另外的相同要素。
另外,下述各方法实施例中的步骤时序仅为一种举例,而非严格限定。
图1为本发明实施例提供的一种数据处理系统的组成示意图,如图1所示,该数据处理系统包括:
对应于数据所属方的第一设备,对应于数据使用方的第二设备,以及部署在可信执行环境中的数据处理服务。其中,第一设备中存储有数据所属方的数据。
在本发明实施例中,可以将合作的双方企业分别称为数据所属方和数据使用方,并提供一数据处理服务用于对双方企业进行数据计算,为保证数据安全,该数据处理服务部署在可信执行环境中。
实际应用中,该可信执行环境可以部署在上述第一设备中,或者,也可以部署在第二设备中,或者,还可以部署在其他设备中。
实际应用中,数据所属方可以根据自身需求以及与合作的数据使用方对数据的使用需求设计用于对自身数据进行处理的数据处理服务,即编写用于对数据进行处理的软件程序,进而可以将设计好的数据处理服务提供给某服务提供商,使得该服务提供商将该数据处理服务部署在自己的硬件设备中。为了保证用户的数据安全,具体地,该数据处理服务部署在硬件设备的可信执行环境中。数据处理服务对外提供访问接口,比如网址,以供各设备可以通过该访问接口与数据处理服务进行交互。
在数据使用方使用数据所属方的数据的场景中,为保证数据所属方的数据安全,数据所属方的第一设备、数据使用方的第二设备以及部署在可信执行环境中的数据处理服务的工作过程概述如下:
第一设备,用于响应于数据处理服务发送的第一数据获取请求,对数据处理服务进行可信度量,若数据处理服务通过可信度量,则与数据处理服务建立第一安全传输通道,通过第一安全传输通道将数据所属方的数据发送至数据处理服务。
数据处理服务,用于对数据所属方的数据进行计算得到第一计算结果;以及,将第二设备发送的第二数据获取请求转发至第一设备,并在第一设备确定数据使用方具有第一计算结果的使用权限时,与第二设备建立第二安全传输通道,通过第二安全传输通道将第一计算结果发送至第二设备;其中,第二数据获取请求用于请求获取第一计算结果。
第二设备,用于向数据处理服务发送所述第二数据获取请求,以及接收所述第一计算结果。
可选地,数据处理服务可以被配置为基于某种触发条件向数据所属方即第一设备发送第一数据获取请求,以请求获取数据所属方的数据。其中,该触发条件比如可以是每隔一定时间间隔,或者基于工作人员的触发操作。
第一设备接收到数据处理服务发送的第一数据获取请求后,为保证自身数据安全,首先对该数据处理服务进行可信度量,以认证该数据处理服务是否是运行在可信执行环境中的合法软件程序。如果确定该数据处理服务是运行在可信执行环境中的合法软件程序即若确定该数据处理服务通过了可信度量,则第一设备与数据处理服务之间建立第一安全传输通道,以通过该第一安全传输通道将自己的数据发送至数据处理服务。
上述可信度量的过程可以采用现有的相关技术实现。本实施例中仅概要说明:
当上述数据处理服务初始被部署在可信执行环境中后,数据所属方可以对运行在可信执行环境中的该数据处理服务进行审计,即审计该数据处理服务是否是为自己设计的而没有被更改的合法的数据处理服务。在审计过程中,第一设备可以对该数据处理服务的代码进行编译处理,进而对编译结果进行哈希运算处理,得到第一哈希值并存储在第一设备本地。
当第一设备接收到上述第一数据获取请求后,可以请求数据处理服务提供其运行报告,即其在可信执行环境中的运行报告。该运行报告中包括数据处理服务在可信执行环境中运行时所对应的第二哈希值,即可信执行环境对该数据处理服务进行代码编译、对编译结果进行哈希运算得到的哈希值。数据所属方一方面可以将该运行报告提交给可信执行环境对应的硬件提供方,由该硬件提供方验证该运行报告是否真实正确,另一方面,数据所属方可以比较第一哈希值与第二哈希值是否一致。若运行报告正确且第一哈希值与第二哈希值一致,则确定数据处理服务通过了可信度量。
上述第一安全传输通道是指,在数据处理服务通过可信度量时,第一设备与数据处理服务可以协商出一对密钥,此后双方之间的数据交互均以协商出的密钥进行加密传输,以保证数据安全。
数据处理服务接收到第一设备通过第一安全传输通道发送至的数据后,可以根据数据处理服务被配置的计算逻辑对该数据进行计算,得到第一计算结果,将第一计算结果存储在可信执行环境中。实际应用中,该计算比如可以是存储计算、统计计算等。
为了保证第一计算结果的安全,数据处理服务可以对第一计算结果进行加密存储。
通过上述过程,实现了数据所属方的数据在可信执行环境中的安全存储。
当数据使用方想要使用数据所属方的数据时,向数据处理服务第二数据获取请求。可以理解的是,第二数据获取请求中会包含目标数据信息,该目标数据信息反映出数据使用方想要获得哪些数据,比如某个月的统计数据,等等。当然,该第二数据获取请求中也会包含有数据使用方的标识,以表明数据使用方的身份。
假设该目标数据信息即该第二数据获取请求是用于请求获得上述第一计算结果的,数据处理服务接收到该第二数据获取请求后,并非直接将该第一计算结果反馈给数据使用方的第二设备,而是需要得到数据所属方的授权后,才将该第一计算结果反馈给第二设备,以保证数据所属方的数据的使用在其控制之下。
为此,数据处理服务将第二数据获取请求转发至第一设备,由第一设备对应的数据所属方确定该数据使用方是否具有第一计算结果的使用权限,当确定该数据使用方具有该第一计算结果的使用权限时,可以向数据处理服务反馈使用授权信息,以告知数据处理服务该数据使用方具有该第一计算结果的使用权限。此时,数据处理服务与第二设备建立第二安全传输通道,通过第二安全传输通道将第一计算结果发送至第二设备。其中,第二安全传输通道与第一安全传输通道类似地,也可以是数据处理服务与第二设备之间协商出的一对密钥,用于对双方传输的数据进行加密传输。
其中,可选地,第一设备确定数据使用方是否具有第一计算结果的使用权限,可以通过如下方式实现:
第二设备向数据处理服务发送的第二数据获取请求中可以包括数据使用方的数字签名。此时,第一设备可以根据预先获得的数据使用方的公钥对该数字签名进行验签,若验签通过,则可以通过第一安全传输通道向数据处理服务反馈使用授权信息,以告知数据处理服务该数据使用方具有第一计算结果的使用权限。实际应用中,第二设备可以生成一随机数,使用私钥对该随机数进行数字签名处理,具体地数字签名生成过程以及验签过程可以采用现有技术实现,在此不赘述。
可选地,为了保证上述使用权限验证结果的准确性,第一设备还可以在上述数字签名被验签通过时,向认证服务器查询上述公钥的合法性。若通过查询认证服务器确定该公钥合法,则认为上述数据使用方具有第一计算结果的使用权限,从而通过第一安全传输通道向数据处理服务反馈使用授权信息。其中,认证服务器是产生一对公钥和私钥的服务器,当认证服务器基于上述数据使用方的请求而为其生成一对公私钥后,可以存储该公钥、私钥与该数据使用方的对应关系,从而,第一设备查询认证服务器可以查得公钥的合法性以及对应的数据使用方是谁。
综上,在数据使用方使用数据所属方的数据的场景中,首先,数据所属方将自己的数据提供给可信执行环境中的数据处理服务进行数据计算,其次,数据使用方从数据处理服务处获得计算结果进行使用。具体地,数据所属方只有在数据处理服务通过了可信度量后才会将自己的数据提供给数据处理服务,以保证数据的存储安全。数据使用方想要使用数据所属方的数据时也向数据处理服务发送请求,数据处理服务是否将数据所属方的数据计算结果发送给数据使用方,需要经过数据所属方的授权,只有在数据所属方授权的情况下,才会通过安全传输通道将数据计算结果发送至数据使用方,以保证数据所属方的数据的使用安全。
图2为本发明实施例提供的另一种数据处理系统的组成示意图,如图2所示,该数据处理系统可以包括:
对应于数据所属方的第一设备,对应于数据使用方的第二设备,对应于计算辅助方的第三设备,对应于数据托管方的第四设备,以及部署在可信执行环境中的数据处理服务。
本实施例中,抽象出数据处理过程中涉及到的四种角色,分别是:数据所属方:数据的拥有方;数据使用方:需要使用数据所属方的数据的一方,也可以称为数据需求方;数据托管方:所属方可以将数据交给数据托管方进行管理,数据托管方可能是云存储企业,也可能是所属方自身;计算辅助方:在对数据所属方的数据进行计算的过程中,可能不仅需要数据托管方提供数据所属方的数据,也可能需要其他计算参数来共同辅助完成计算,其他计算参数的提供方称为计算辅助方。
上述四方并不是一定由互相独立的企业扮演,可能一个企业同时扮演多方角色,比如数据所属方、数据托管方和计算辅助方可以都由数据所属方扮演。另外,四种角色每一种可能都有多个实例,比如一个计算过程可能由一个数据托管方参与,也可能由多个数据托管方参与。
可信执行环境可以由上述任意一方提供,也可以由独立于上述四方外的角色提供。
如前述实施例中所述的,在企业合作的背景下,数据所属方和数据使用方分别对应于具有合作关系的企业双方,那么,在数据使用方想要使用数据所属方的数据的场景下,上述四方角色各自的作用如下:
第一设备,可以用于从第三设备获取计算参数,根据计算参数对数据所属方的数据进行计算,将得到的第二计算结果发送至第四设备中存储。
在一可选实施例中,该计算参数为加密密钥,从而,第二计算结果为根据该加密密钥对数据所属方的数据进行加密得到的加密数据。在该实施例中,数据所属方可以从计算辅助方对应的第三设备中获取加密密钥,以将自己的数据进行加密,将加密结果存储到对应于数据托管方的第四设备中存储。
基于此,数据处理服务基于某种触发条件可以向第三设备发送与数据所属方对应的第三数据获取请求,向第四设备发送与数据所属方对应的第四数据获取请求。其中,如前文所述,该触发条件比如可以是每隔一定时间间隔,或者基于工作人员的触发操作。其中,第三数据获取请求用于获取与数据所属方对应的计算参数,第四数据获取请求用于获取数据所属方存储在第四设备中的数据即为上述第二计算结果。从而,数据处理服务可以根据从第三设备获得的计算参数对从第四设备获得的第二计算结果进行计算,以得到数据所属方的数据。
举例来说,当计算参数为加密密钥,第二计算结果为使用该加密密钥对数据所属方的数据进行加密的结果时,数据处理服务可以对该加密结果进行解密,以还原出初始的明文数据。
第三设备在接收到第三数据获取该请求后,对数据处理服务进行可信度量,将获得的度量报告发送至第一设备,以使第一设备根据该度量报告确定该数据处理服务是否通过可信度量。另外,第三设备若接收到第一设备发送的指示数据处理服务通过可信度量的通知,则与数据处理服务建立第三安全传输通道,通过第三安全传输通道将上述计算参数发送至数据处理服务。
类似地,第四设备在接收到第四数据获取该请求后,也对数据处理服务进行可信度量,将获得的度量报告发送至第一设备。在正常情况下,第四设备获得的度量报告与第三设备获得的度量报告是一致的。另外,第四设备若接收到第一设备发送的指示数据处理服务通过可信度量的通知,则与数据处理服务建立第四安全传输通道,通过第四安全传输通道将上述第二计算结果发送至数据处理服务。
其中,第三设备、第四设备进行可信度量的过程与前文中第一设备进行可信度量的过程类似,不赘述。
本实施例中,由于数据托管方和计算辅助方并非数据的所有者,因此,对应的第三设备和第四设备获得度量报告后,需要将度量报告提供给数据所属方的第一设备进行验证,验证过程与前文所述一致,不赘述。
通过第一设备、第三设备和第四设备执行的上述过程,可以保证数据所属方的数据被数据处理服务可信地计算处理。
另外,第二设备访问数据处理服务以获取数据所属方的数据计算结果的过程,与图1所示实施例中的过程一致,不赘述。
以上结合图1和图2所示实施例,对企业的数据在企业双方间传输的处理过程进行了说明,下面结合以下实施例,对上述数据处理系统中各组成单元的执行过程进行说明。
图3为本发明实施例提供的一种数据处理方法的流程图,该数据处理方法可以由数据所属方的第一设备来执行,该第一设备可以是诸如PC机、笔记本电脑、手机等设备。如图3所示,该方法包括如下步骤:
301、响应于数据处理服务发送的第一数据获取请求,对数据处理服务进行可信度量。
302、若数据处理服务通过可信度量,则与数据处理服务建立第一安全传输通道。
303、通过第一安全传输通道将数据所属方的数据发送至数据处理服务,以使数据处理服务对数据进行计算得到第一计算结果。
304、响应于数据处理服务转发自数据使用方的第二数据获取请求,若确定数据使用方具有第一计算结果的使用权限,则向数据处理服务反馈使用授权信息,以使数据处理服务与数据使用方的第二设备建立第二安全传输通道并通过第二安全传输通道将第一计算结果发送至第二设备。
其中,可选地,第二数据获取请求中包括数据使用方的数字签名,从而,第一设备可以根据预先获得的数据使用方的公钥对该数字签名进行验签,若验签通过,则确定数据使用方具有第一计算结果的使用权限。
另外,可选地,为保证使用权限验证结果的准确性,在数字签名验签通过时,第一设备还可以通过查询认证服务器确定所述公钥的合法性,若该公钥存在于认证服务器中,则确定与该公钥对应的数据使用方具有第一计算结果的使用权限。
本实施例中未详尽展开的描述可以参考前述其他实施例中的说明,不赘述。
通过在可信执行环境中部署上述数据处理服务,数据所属方可以远程认证获得其数据的其他角色对其数据的使用方式是否可靠,使得其他角色只能使用其数据却不可见其明文数据,保证了数据安全性。
图4为本发明实施例提供的另一种数据处理方法的流程图,该数据处理方法可以由数据所属方的第一设备来执行,该第一设备可以是诸如PC机、笔记本电脑、手机等设备。如图4所示,该方法包括如下步骤:
401、从对应于计算辅助方的第三设备中获取计算参数,根据计算参数对数据所属方的数据进行计算,将得到的第二计算结果发送至对应于数据托管方的第四设备中存储。
402、接收第三设备和第四设备分别发送的度量报告,其中,该度量报告是第三设备接收到数据处理服务发送的与数据所属方对应的第三数据获取请求以及第四设备接收到数据处理服务发送的与数据所属方对应的第四数据获取请求后,各自对数据处理服务进行可信度量获得的。
403、若根据度量报告确定数据处理服务通过可信度量,则分别向第三设备和第四设备发送数据处理服务通过可信度量的通知,以使第三设备和第四设备通过各自建立的与数据处理服务之间的安全传输通道将第二计算结果和计算参数发送至数据处理服务,以供数据处理服务根据第二计算结果和计算参数得到数据所属方的数据。
本实施例中未详尽展开的描述可以参考前述其他实施例中的说明,不赘述。
图5为本发明实施例提供的又一种数据处理方法的流程图,该数据处理方法可以由某个数据处理服务(为一种软件程序)来执行,该数据处理服务可以部署在某服务端的可信执行环境中。如图5所示,该方法包括如下步骤:
501、向对应于数据所属方的第一设备发送第一数据获取请求。
该第一数据获取请求用于获得数据所属方的数据。
502、响应于第一设备确定数据处理服务通过可信度量,与第一设备建立第一安全传输通道。
503、接收第一设备通过第一安全传输通道发送的数据所属方的数据。
504、对数据所属方的数据进行计算得到第一计算结果。
505、将对应于数据使用方的第二设备发送的第二数据获取请求转发至第一设备。
第二数据获取请求是数据使用方向数据处理服务触发的,可以用于获取上述第一计算结果。
506、响应于第一设备确定数据使用方具有第一计算结果的使用权限,与第二设备建立第二安全传输通道。
507、通过第二安全传输通道将第一计算结果发送至第二设备。
本实施例中未详尽展开的描述可以参考前述其他实施例中的说明,不赘述。
以下将详细描述本发明的一个或多个实施例的数据处理装置。本领域技术人员可以理解,这些数据处理装置均可使用市售的硬件组件通过本方案所教导的步骤进行配置来构成。
图6为本发明实施例提供的一种数据处理装置的结构示意图,所述装置应用于前述实施例提及的第一设备中,如图6所示,该装置包括:认证模块11、建立模块12、发送模块13、授权模块14。
认证模块11,用于响应于数据处理服务发送的第一数据获取请求,对所述数据处理服务进行可信度量。
建立模块12,用于若所述认证模块确定所述数据处理服务通过可信度量,则与所述数据处理服务建立第一安全传输通道。
发送模块13,用于通过所述第一安全传输通道将所述数据所属方的数据发送至所述数据处理服务,以使所述数据处理服务对所述数据进行计算得到第一计算结果。
授权模块14,用于响应于所述数据处理服务转发自数据使用方的第二数据获取请求,若确定所述数据使用方具有所述第一计算结果的使用权限,则向所述数据处理服务反馈使用授权信息,以使所述数据处理服务与所述数据使用方的第二设备建立第二安全传输通道并通过所述第二安全传输通道将所述第一计算结果发送至所述第二设备。
可选地,所述第二数据获取请求中包括所述数据使用方的数字签名,所述授权模块14可以用于:根据预先获得的所述数据使用方的公钥对所述数字签名进行验签;若验签通过,则确定所述数据使用方具有所述第一计算结果的使用权限。
另外,可选地,所述授权模块14还可以用于:若验签通过,且通过查询认证服务器确定所述公钥合法,则确定所述数据使用方具有所述第一计算结果的使用权限。
可选地,所述装置还包括:预处理模块,用于从对应于计算辅助方的第三设备中获取计算参数;根据所述计算参数对所述数据进行计算,将得到的第二计算结果发送至对应于数据托管方的第四设备中存储。此时,认证模块11具体可以用于:接收所述第三设备和所述第四设备分别发送的度量报告,其中,所述度量报告是所述第三设备接收到所述数据处理服务发送的与所述数据所属方对应的第三数据获取请求以及所述第四设备接收到所述数据处理服务发送的与所述数据所属方对应的第四数据获取请求后,各自对所述数据处理服务进行可信度量获得的;若根据所述度量报告确定所述数据处理服务通过可信度量,则分别向所述第三设备和所述第四设备发送所述数据处理服务通过可信度量的通知,以使所述第三设备和所述第四设备通过各自建立的与所述数据处理服务之间的安全传输通道将所述第二计算结果和所述计算参数发送至所述数据处理服务,以供所述数据处理服务根据所述第二计算结果和所述计算参数得到所述数据。
图6所示装置可以执行前述各实施例中第一设备所执行的步骤,本实施例未详细描述的部分,可参考前述实施例的相关说明,在此不再赘述。
在一个可能的设计中,上述图6所示的数据处理装置的结构可实现为一电子设备,该电子设备可以是PC机、服务器、笔记本电脑等。如图7所示,该电子设备可以包括:第一处理器21、第一存储器22。其中,所述第一存储器22上存储有运行在可信执行环境中的数据处理服务,当该数据处理服务被第一处理器21执行时,使第一处理器21可以执行如前述各实施例中第一设备所执行的各步骤。
实际上,该电子设备中也可以包括第一通信接口23,用于与其他设备进行通信。
另外,本发明实施例提供了一种非暂时性机器可读存储介质,所述非暂时性机器可读存储介质上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器可以执行如前述各实施例中第一设备所执行的数据处理方法。
图8为本发明实施例提供的另一种数据处理装置的结构示意图,所述装置应用于运行在可信执行环境中的数据处理服务,如图8所示,该装置包括:发送模块31、建立模块32、接收模块33、计算模块34。
发送模块31,用于向对应于数据所属方的第一设备发送第一数据获取请求。
建立模块32,用于响应于所述第一设备确定所述数据处理服务通过可信度量,与所述第一设备建立第一安全传输通道。
接收模块33,用于接收所述第一设备通过所述第一安全传输通道发送的所述数据所属方的数据。
计算模块34,用于对所述数据进行计算得到第一计算结果。
所述发送模块31,还用于将对应于数据使用方的第二设备发送的第二数据获取请求转发至所述第一设备。
所述建立模块32,还用于响应于所述第一设备确定所述数据使用方具有所述第一计算结果的使用权限,与所述第二设备建立第二安全传输通道。
所述发送模块31,还用于通过所述第二安全传输通道将所述第一计算结果发送至所述第二设备。
图8所示装置可以执行前述各实施例中数据处理服务所执行的步骤,本实施例未详细描述的部分,可参考前述实施例的相关说明,在此不再赘述。
在一个可能的设计中,上述图8所示的数据处理装置的结构可实现为一电子设备,该电子设备可以是PC机、服务器等。如图9所示,该电子设备可以包括:第二处理器41、第二存储器42。其中,所述第二存储器42上存储可执行代码,当该可执行代码被第二处理器41执行时,使第二处理器41可以执行如前述各实施例中数据处理服务所执行的各步骤。
实际上,该电子设备中也可以包括第二通信接口43,用于与其他设备进行通信。
另外,本发明实施例提供了一种非暂时性机器可读存储介质,所述非暂时性机器可读存储介质上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器可以执行如前述各实施例中数据处理服务所执行的数据处理方法。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助加必需的通用硬件平台的方式来实现,当然也可以通过硬件和软件结合的方式来实现。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以计算机产品的形式体现出来,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (15)
1.一种数据处理系统,其特征在于,包括:
对应于数据所属方的第一设备,对应于数据使用方的第二设备,以及部署在可信执行环境中的数据处理服务;
所述第一设备中存储有所述数据所属方的数据;
所述第一设备,用于响应于所述数据处理服务发送的第一数据获取请求,对所述数据处理服务进行可信度量,若所述数据处理服务通过可信度量,则与所述数据处理服务建立第一安全传输通道,通过所述第一安全传输通道将所述数据发送至所述数据处理服务;
所述数据处理服务,用于对所述数据进行计算得到并存储第一计算结果;以及,将所述第二设备发送的第二数据获取请求转发至所述第一设备,并在所述第一设备确定所述数据使用方具有所述第一计算结果的使用权限时,与所述第二设备建立第二安全传输通道,通过所述第二安全传输通道将所述第一计算结果发送至所述第二设备;其中,所述第二数据获取请求用于请求获取所述第一计算结果;所述第一数据获取请求的生成不依赖所述第二数据获取请求;
所述第二设备,用于向所述数据处理服务发送所述第二数据获取请求,以及接收所述第一计算结果。
2.根据权利要求1所述的系统,其特征在于,所述第二数据获取请求中包括所述数据使用方的数字签名;
所述第一设备,用于根据预先获得的所述数据使用方的公钥对所述数字签名进行验签,若验签通过,则通过所述第一安全传输通道向所述数据处理服务反馈使用授权信息。
3.根据权利要求2所述的系统,其特征在于,所述第一设备,用于在所述验签通过时,若通过查询认证服务器确定所述公钥合法,则通过所述第一安全传输通道向所述数据处理服务反馈使用授权信息。
4.根据权利要求1所述的系统,其特征在于,所述数据处理服务,还用于对所述第一计算结果进行加密。
5.根据权利要求1所述的系统,其特征在于,所述系统还包括:对应于计算辅助方的第三设备,以及,对应于数据托管方的第四设备;
所述第一设备,用于从所述第三设备获取计算参数,根据所述计算参数对所述数据进行计算,将得到的第二计算结果发送至所述第四设备中存储;
所述数据处理服务,用于向所述第三设备发送与所述数据所属方对应的第三数据获取请求,向所述第四设备发送与所述数据所属方对应的第四数据获取请求;以及,根据从所述第三设备获得的所述计算参数对从所述第四设备获得的所述第二计算结果进行计算,以得到所述数据;
所述第三设备,用于对所述数据处理服务进行可信度量,将获得的度量报告发送至所述第一设备;以及,若接收到所述第一设备发送的指示所述数据处理服务通过可信度量的通知,则与所述数据处理服务建立第三安全传输通道,通过所述第三安全传输通道将所述计算参数发送至所述数据处理服务;
所述第四设备,用于对所述数据处理服务进行可信度量,将获得的度量报告发送至所述第一设备;以及,若接收到所述第一设备发送的指示所述数据处理服务通过可信度量的通知,则与所述数据处理服务建立第四安全传输通道,通过所述第四安全传输通道将所述第二计算结果发送至所述数据处理服务。
6.根据权利要求5所述的系统,其特征在于,所述计算参数为加密密钥,所述第二计算结果为根据所述加密密钥对所述数据进行加密得到的加密数据。
7.一种数据处理方法,其特征在于,应用于数据所属方的第一设备,所述方法包括:
响应于数据处理服务发送的第一数据获取请求,对所述数据处理服务进行可信度量;
若所述数据处理服务通过可信度量,则与所述数据处理服务建立第一安全传输通道;
通过所述第一安全传输通道将所述数据所属方的数据发送至所述数据处理服务,以使所述数据处理服务对所述数据进行计算得到并存储第一计算结果;
响应于所述数据处理服务转发自数据使用方的第二数据获取请求,若确定所述数据使用方具有所述第一计算结果的使用权限,则向所述数据处理服务反馈使用授权信息,以使所述数据处理服务与所述数据使用方的第二设备建立第二安全传输通道并通过所述第二安全传输通道将所述第一计算结果发送至所述第二设备,所述第一数据获取请求的生成不依赖所述第二数据获取请求。
8.根据权利要求7所述的方法,其特征在于,所述第二数据获取请求中包括所述数据使用方的数字签名;
所述方法还包括:
根据预先获得的所述数据使用方的公钥对所述数字签名进行验签;
若验签通过,则确定所述数据使用方具有所述第一计算结果的使用权限。
9.根据权利要求8所述的方法,其特征在于,所述若验签通过,则确定所述数据使用方具有所述第一计算结果的使用权限,包括:
若验签通过,且通过查询认证服务器确定所述公钥合法,则确定所述数据使用方具有所述第一计算结果的使用权限。
10.根据权利要求7所述的方法,其特征在于,所述方法还包括:
从对应于计算辅助方的第三设备中获取计算参数;
根据所述计算参数对所述数据进行计算,将得到的第二计算结果发送至对应于数据托管方的第四设备中存储;
所述响应于数据处理服务发送的第一数据获取请求,对所述数据处理服务进行可信度量,包括:
接收所述第三设备和所述第四设备分别发送的度量报告,其中,所述度量报告是所述第三设备接收到所述数据处理服务发送的与所述数据所属方对应的第三数据获取请求以及所述第四设备接收到所述数据处理服务发送的与所述数据所属方对应的第四数据获取请求后,各自对所述数据处理服务进行可信度量获得的;
若根据所述度量报告确定所述数据处理服务通过可信度量,则分别向所述第三设备和所述第四设备发送所述数据处理服务通过可信度量的通知,以使所述第三设备和所述第四设备通过各自建立的与所述数据处理服务之间的安全传输通道将所述第二计算结果和所述计算参数发送至所述数据处理服务,以供所述数据处理服务根据所述第二计算结果和所述计算参数得到所述数据。
11.一种数据处理方法,其特征在于,应用于部署在可信执行环境中的数据处理服务,所述方法包括:
向对应于数据所属方的第一设备发送第一数据获取请求;
响应于所述第一设备确定所述数据处理服务通过可信度量,与所述第一设备建立第一安全传输通道;
接收所述第一设备通过所述第一安全传输通道发送的所述数据所属方的数据;
对所述数据进行计算得到并存储第一计算结果;
将对应于数据使用方的第二设备发送的第二数据获取请求转发至所述第一设备;
响应于所述第一设备确定所述数据使用方具有所述第一计算结果的使用权限,与所述第二设备建立第二安全传输通道;
通过所述第二安全传输通道将所述第一计算结果发送至所述第二设备,所述第一数据获取请求的生成不依赖所述第二数据获取请求。
12.一种数据处理装置,其特征在于,应用于运行在可信执行环境中的数据处理服务,所述装置包括:
发送模块,用于向对应于数据所属方的第一设备发送第一数据获取请求;
建立模块,用于响应于所述第一设备确定所述数据处理服务通过可信度量,与所述第一设备建立第一安全传输通道;
接收模块,用于接收所述第一设备通过所述第一安全传输通道发送的所述数据所属方的数据;
计算模块,用于对所述数据进行计算得到并存储第一计算结果;
所述发送模块,还用于将对应于数据使用方的第二设备发送的第二数据获取请求转发至所述第一设备;
所述建立模块,还用于响应于所述第一设备确定所述数据使用方具有所述第一计算结果的使用权限,与所述第二设备建立第二安全传输通道;
所述发送模块,还用于通过所述第二安全传输通道将所述第一计算结果发送至所述第二设备,所述第一数据获取请求的生成不依赖所述第二数据获取请求。
13.一种电子设备,其特征在于,包括:存储器、处理器;其中,所述存储器上存储有运行在可信执行环境中的数据处理服务,当所述数据处理服务被所述处理器执行时,使所述处理器执行如权利要求11所述的数据处理方法。
14.一种数据处理装置,其特征在于,应用于数据所属方的第一设备,所述装置包括:
认证模块,用于响应于数据处理服务发送的第一数据获取请求,对所述数据处理服务进行可信度量;
建立模块,用于若所述认证模块确定所述数据处理服务通过可信度量,则与所述数据处理服务建立第一安全传输通道;
发送模块,用于通过所述第一安全传输通道将所述数据所属方的数据发送至所述数据处理服务,以使所述数据处理服务对所述数据进行计算得到并存储第一计算结果;
授权模块,用于响应于所述数据处理服务转发自数据使用方的第二数据获取请求,若确定所述数据使用方具有所述第一计算结果的使用权限,则向所述数据处理服务反馈使用授权信息,以使所述数据处理服务与所述数据使用方的第二设备建立第二安全传输通道并通过所述第二安全传输通道将所述第一计算结果发送至所述第二设备,所述第一数据获取请求的生成不依赖所述第二数据获取请求。
15.一种电子设备,其特征在于,包括:存储器、处理器;其中,所述存储器上存储有可执行代码,当所述可执行代码被所述处理器执行时,使所述处理器执行如权利要求7至10中任一项所述的数据处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910232662.4A CN111756670B (zh) | 2019-03-26 | 2019-03-26 | 数据处理方法、装置、设备和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910232662.4A CN111756670B (zh) | 2019-03-26 | 2019-03-26 | 数据处理方法、装置、设备和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111756670A CN111756670A (zh) | 2020-10-09 |
CN111756670B true CN111756670B (zh) | 2023-04-18 |
Family
ID=72671340
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910232662.4A Active CN111756670B (zh) | 2019-03-26 | 2019-03-26 | 数据处理方法、装置、设备和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111756670B (zh) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018067327A (ja) * | 2017-12-01 | 2018-04-26 | マカフィー, エルエルシー | プライベートデータを保護するセキュアプロキシ |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3036680B1 (en) * | 2013-08-21 | 2018-07-18 | Intel Corporation | Processing data privately in the cloud |
CN106302328B (zh) * | 2015-05-20 | 2019-12-20 | 腾讯科技(深圳)有限公司 | 敏感用户数据处理系统和方法 |
CN109101822B (zh) * | 2018-07-10 | 2021-01-29 | 西安交通大学 | 一种解决多方计算中数据隐私泄露问题的方法 |
-
2019
- 2019-03-26 CN CN201910232662.4A patent/CN111756670B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018067327A (ja) * | 2017-12-01 | 2018-04-26 | マカフィー, エルエルシー | プライベートデータを保護するセキュアプロキシ |
Also Published As
Publication number | Publication date |
---|---|
CN111756670A (zh) | 2020-10-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10484185B2 (en) | Method and system for distributing attestation key and certificate in trusted computing | |
US9497210B2 (en) | Stateless attestation system | |
US9197420B2 (en) | Using information in a digital certificate to authenticate a network of a wireless access point | |
CN114679293A (zh) | 基于零信任安全的访问控制方法、设备及存储介质 | |
CN113596046B (zh) | 一种双向认证方法、装置、计算机设备和计算机可读存储介质 | |
CN105577612B (zh) | 身份认证方法、第三方服务器、商家服务器及用户终端 | |
US20120303830A1 (en) | Data processing device and data processing method | |
US20130275748A1 (en) | Secure password-based authentication for cloud computing services | |
WO2004019254A2 (en) | Hardware-based credential management | |
CN106790045B (zh) | 一种基于云环境分布式虚拟机代理装置及数据完整性保障方法 | |
WO2018112482A1 (en) | Method and system for distributing attestation key and certificate in trusted computing | |
CN111817845A (zh) | 反爬虫方法及计算机存储介质 | |
CN113572728B (zh) | 认证物联网设备的方法、装置、设备及介质 | |
US20210241270A1 (en) | System and method of blockchain transaction verification | |
CN111355591A (zh) | 一种基于实名认证技术的区块链账号安全的管理方法 | |
EP3133791B1 (en) | Double authentication system for electronically signed documents | |
Chang et al. | A practical secure and efficient enterprise digital rights management mechanism suitable for mobile environment | |
CN114244522A (zh) | 信息保护方法、装置、电子设备及计算机可读存储介质 | |
CN114584306A (zh) | 一种数据处理方法和相关装置 | |
JP4874007B2 (ja) | 認証システム、サーバコンピュータ、プログラム、及び、記録媒体 | |
CN108322886B (zh) | 终端定位数据的鉴权方法和装置 | |
CN115549906B (zh) | 基于区块链的隐私计算方法、系统、设备和介质 | |
TWI546698B (zh) | 基於伺服器的登入系統、登入驗證伺服器及其驗證方法 | |
CN111756670B (zh) | 数据处理方法、装置、设备和系统 | |
US20150082026A1 (en) | Systems and methods for locking an application to device without storing device information on server |
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 |