一种基于可信执行环境的多方隐私计算系统的制作方法

文档序号:20947015发布日期:2020-06-02 19:55阅读:175来源:国知局

本发明属于隐私计算技术领域,涉及一种基于可信执行环境的多方隐私计算系统。



背景技术:

目前,行业数据共享和数据分析已成为大势所趋,特别是对于创建数字政府而言,政务大数据需要获取和分析政府相关的各行各业数据。数据共享和数据分析最大的挑战就是隐私和性能,而这两个挑战很难同时解决,大多解决方案都是通过损失性能换取隐私,或者不大考虑隐私去追求性能。常见的解决隐私问题的加密技术,如同态加密(homomorphicencryption)和零知识证明(zero-knowledgeproof)等复杂度高,通用性差,而且还可能带来严重的性能损失。

在解决隐私方面,可信执行环境(trustedexecutionenvironment,tee)是另一种解决方式。tee可以起到硬件中的黑箱作用,在tee中执行的代码和数据操作系统层都无法偷窥,只有代码中预先定义的接口才能对其进行操作。在效率方面,由于tee的黑箱性质,在tee中进行运算的是明文数据,而不是同态加密中的复杂密码学运算,计算过程效率没有损失,因此与tee相结合可以在性能损失较小的前提下很大程度上提升区块链的安全性和隐私性。目前工业界十分关注tee的方案,几乎所有主流的芯片和软件联盟都有自己的tee解决方案,包括软件方面的tpm(trustedplatformmodule,可信赖平台模块)以及硬件方面的intelsgx(softwareguardextensions,软件保护扩展)、armtrustzone(信任区)和amdpsp(platformsecurityprocessor,平台安全处理器)。

在传统的数据共享与tee相结合的解决方案中,特别是在区块链或者智能合约的应用环境中,为了实现隐私保护,计算程序整体被当作需要隐私保护的数据加密存储在tee中进行运算。而实际上计算程序的内容可能敏感,也可能并不敏感,可以公开。计算程序的公开对于加强多方隐私计算系统的审计具有帮助。而且,如果计算程序直接在原始数据提供方的内部运行,结果需求方无法验证该结果是否是由真实的原始数据进行正确计算而得出。对于存在多个数据结果需求方或多个数据提供方的多方用户而言,目前的解决方案没有一种可以更加灵活地实现数据的隐私保护和可信计算。在现有技术的计算系统内,还存在以下问题没有得到解决:1、对于原始数据提供方,其所关心的是这些数据被使用的方式以及被哪些对象所获取,分析过程和分析结果中是否存在未经授权的数据使用及传播;2、对于计算结果需求方,其所关心的是计算过程的正确性和原始数据的真实性,因为只有这样,得到的计算结果才是有意义和有效的。针对于这些问题目前还没有很好解决方法,这也是本发明的发明意义所在。



技术实现要素:

针对上述现有技术存在的问题,本发明的目的在于提供基于可信执行环境的多方隐私计算系统和数据处理方法,以此解决数据共享和分析的隐私和信任问题,提高数据隐私保护的灵活性。

为实现上述目的,本发明所采用的技术方案为:

一种基于可信执行环境的多方隐私计算系统,其特征在于,所述计算系统包括和与所述计算系统连接的设备;所述数据计算系统用于接收由原始数据提供方提供的原始数据并对所述原始数据进行处理分析得到数据分析结果;所述设备从所述计算系统上提取所述数据分析结果将所述数据分析结果发送给指定对象;所述设备根据所述原始数据提供方的授信进行数据分析结果的提取和发送。

进一步的,所述设备中装载有应用程序,应用程序根据程序指令进行数据分析结果的提取和发送。

进一步的,所述应用程序根据原始数据提供方的授信进行数据分析结果的提取和发送。

进一步的,所述数据的传输过程加密,计算中间结果由可信执行环境保护,不会对任何一方泄露。

进一步的,所述原始数据提供方通过电子证书进行授信。

进一步的,所述计算系统计算完成后,数据分析结果将仅仅被发送给指定的接收方,这些接收方是根据原始数据提供方的授信,能够获得计算结果的一方或多方;结果的发送过程可以采用计算系统“主动发送”或“被动拉取”的方式。

本发明的设备和所述应用程序可以根据需求进行更新或改变,每次更新或改变均需要相关参与方的重新授信,所述相关参与方包括原始数据提供方、接收方或第三方信用担保方。

本发明还提供了一种基于可信执行环境的多方隐私计算系统进行数据处理的方法,其特征在于,包括如下步骤:数据需求方提出数据需求,准备计算系统进行数据的处理分析;任意一方或多方准备设备进行数据分析结果的提取和发送,原始数据提供方对设备进行授信,原始数据提供方将原始数据通过加密方式上载到计算系统,计算系统对原始数据在可信计算环境中进行解密,然后进行处理分析得到数据分析结果,设备根据所述授权提取数据分析结果并将数据分析结果发送给指定的对象。

本发明的计算系统包括与所述计算系统连接的设备,原始数据提供方负责提供用于处理分析的原始数据,由于其是原始数据的提供者,因此,原始数据提供方会非常关心这些数据如何被使用以及被哪些对象所获取,只有使原始数据提供方对这些数据的处理分析以及获取对象产生足够的信任,原始数据提供方才会将原始数据拿出来进行数据共享和分析,为了解决这一信任问题,本发明设置了一个计算系统,将原始数据提供方和使用数据结果的对象放在一个可信执行环境中进行数据共享。

计算系统用于接收由原始数据提供方提供的原始数据并对所述原始数据进行处理分析得到数据分析结果;所述设备从所述计算系统上提取所述数据分析结果将所述数据分析结果发送给指定对象;所述设备根据所述原始数据提供方的授信进行数据分析结果的提取和发送。

计算系统中的设备根据原始数据提供方的授信进行数据分析结果的提取和发送,也就是说,设备在计算系统上进行数据分析结果的提取和发送行为都是在原始数据提供方的授意和监控下进行的,换句话说,是原始数据的提供方愿意将这一数据分析结果提供给数据需求对象。这里提供的是原始数据经过处理分析而得到的数据分析结果,并是原始数据资料,通常情况下,数据分析结果具有很强的目的导向,而原始数据本身的隐私效应更强,为了尊重和保护原始数据的隐私,本发明并不要求原始数据提供方直接将原始数据提供给数据需求对象,而仅仅根据数据需求对象的要求直接提供数据分析结果,而且这一数据结果的提取和发送行为还在原始数据提供方的授信和监控下进行,很好的解决了原始数据提供方的信任问题;即使存在有多个数据需求对象,根据本发明的方法,可以在计算系统中设置多个与计算系统连接的设备,分别向不同的数据需求对象提供数据分析结果,并且这些多个设备均须得到原始数据提供方的授信,即,在存在多方数据需求的情况下,本申请的技术方案也能很好地解决原始数据提供着的信任问题。

具体实施方式

为了使本发明的目的、技术方案更加清楚明白,以下结合实例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。下面对本发明的应用过程作详细的描述。

一种基于可信执行环境的多方隐私计算系统,其特征在于,所述计算系统包括和与所述计算系统连接的设备;所述数据计算系统用于接收由原始数据提供方提供的原始数据并对所述原始数据进行处理分析得到数据分析结果;所述设备从所述计算系统上提取所述数据分析结果将所述数据分析结果发送给指定对象;所述设备根据所述原始数据提供方的授信进行数据分析结果的提取和发送。

进一步的,所述设备中装载有应用程序,应用程序根据程序指令进行数据分析结果的提取和发送。

进一步的,所述应用程序根据原始数据提供方的授信进行数据分析结果的提取和发送。

进一步的,所述数据的传输过程加密,计算中间结果由可信执行环境保护,不会对任何一方泄露。

进一步的,所述原始数据提供方通过电子证书进行授信。

进一步的,所述计算系统计算完成后,数据分析结果将仅仅被发送给指定的接收方,这些接收方是根据原始数据提供方的授信,能够获得计算结果的一方或多方;结果的发送过程可以采用计算系统“主动发送”或“被动拉取”的方式。

本发明的设备和所述应用程序可以根据需求进行更新或改变,每次更新或改变均需要相关参与方的重新授信,所述相关参与方包括原始数据提供方、接收方或第三方信用担保方。

本发明还提供了一种基于可信执行环境的多方隐私计算系统进行数据处理的方法,其特征在于,包括如下步骤:数据需求方提出数据需求,准备计算系统进行数据的处理分析;任意一方或多方准备设备进行数据分析结果的提取和发送,原始数据提供方对设备进行授信,原始数据提供方将原始数据通过加密方式上载到计算系统,计算系统对原始数据在可信计算环境中进行解密,然后进行处理分析得到数据分析结果,设备根据所述授权提取数据分析结果并将数据分析结果发送给指定的对象。

本发明的计算系统包括与计算系统连接的设备,原始数据提供方负责提供用于处理分析的原始数据,由于其是原始数据的提供者,因此,原始数据提供方会非常关心这些数据如何被使用以及被哪些对象所获取,只有使原始数据提供方对这些数据的处理分析以及获取对象产生足够的信任,原始数据提供方才会将原始数据拿出来进行数据共享和分析,为了解决这一信任问题,本发明设置了一个计算系统,将原始数据提供方和使用数据结果的对象放在一个可信执行环境中进行数据共享。

一般情况下,设备需要借助应用程序完成数据分析结果的提取和发送,所述设备中装载有应用程序,应用程序根据程序指令进行数据分析结果的提取和发送,所述应用程序根据原始数据提供方的授信进行数据分析结果的提取和发送。

原始数据提供方通过电子证书的方式对设备以及应用程序进行授信,当然,也可以采用其他合适的方式进行授信,本申请对此并不限制。

本发明的设备通过接口从所述计算系统提取数据分析结果,也可以采用其他的方式获取数据分析结果。

为了保证原始数据提供方的隐私信任,本发明的设备和所述应用程序的更新或改变均需要所述原始数据提供方的重新授信;即,设备以及应用程序只能在授信的范围内进行数据分析结果的提取和发送,如果超出了授信范围,则不能实现该功能;如果设备和应用程序需要变更功能,则需要进行重新的授信,重新授信后才能实施相应功能。本发明的这一设定也充分保证了原始数据提供方的对数据需求对象的信任性。

计算系统用于接收由原始数据提供方提供的原始数据并对所述原始数据进行处理分析得到数据分析结果;所述设备从所述计算系统上提取所述数据分析结果将所述数据分析结果发送给指定对象;所述设备根据所述原始数据提供方的授信进行数据分析结果的提取和发送。

计算系统中的设备根据原始数据提供方的授信进行数据分析结果的提取和发送,也就是说,设备在计算系统上进行数据分析结果的提取和发送行为都是在原始数据提供方的授意和监控下进行的,换句话说,是原始数据的提供方愿意将这一数据分析结果提供给数据需求对象。这里提供的是原始数据经过处理分析而得到的数据分析结果,并是原始数据资料,通常情况下,数据分析结果具有很强的目的导向,而原始数据本身的隐私效应更强,为了尊重和保护原始数据的隐私,本发明并不要求原始数据提供方直接将原始数据提供给数据需求对象,而仅仅根据数据需求对象的要求直接提供数据分析结果,而且这一数据结果的提取和发送行为还在原始数据提供方的授信和监控下进行,很好的解决了原始数据提供方的信任问题;即使存在有多个数据需求对象,根据本发明的方法,可以在计算系统中设置多个与计算系统连接的设备,分别向不同的数据需求对象提供数据分析结果,并且这些多个设备均须得到原始数据提供方的授信,即,在存在多方数据需求的情况下,本申请的技术方案业也能很好地解决原始数据提供着的信任问题。

本发明公开了一种在有多个参与方的情形下进行的安全可信的数据多方计算的实现方式,采用本发明的计算系统,原始数据的提供方可以清楚地知晓其所提供的原始数据被哪些对象以何种方式获取,原始数据的分析过程和分析结果是否存在未经授权的使用或传播;数据的需求方也可以确保原始数据以及数据计算结果的准确性和真实性。本发明的这一计算系统,将需要保护的原始数据及计算程序放在一个指定的可信执行环境中进行数据共享,在存在多方数据计算和隐私保护需求的情况下,本申请的技术方案能很好地解决数据多方计算问题中各方所关注的安全问题。

下面以政务大数据中的当前行政区域居民平均收入水平评估为例进行具体应用环境的说明。

首先,当地政数局(或者是数字政府平台构建方)需要获取本行政区域内各个区的当年居民平均收入水平,需要本行政区域内各个区的相关统计部门上报这些数据,而这些统计部门又担心这些数据会被泄漏或者被恶意使用,即,这些统计部分作为原始数据提供方对于数据的提供存在信任问题,从而并不愿意将其所掌握的数据提供出来。为了解决这些原始提供方的信任问题,根据本发明的方案,设置一种采用基于可信执行环境的多方隐私计算系统,各个统计部分将原始数据上载到计算系统,计算系统根据数据需求对象(此时的需求对象为政数局,当然,也可以存在其他多个需求对象)的需求将原始数据处理分析得到数据分析结果(政数局的需求是平均收入水平,那么对于这一对象,计算系统计算得出的数据分析结果是居民收入的平均值;如果还存在有其他的需求对象,则根据其具体需要生成相应的数据分析结果),经过授信的设备从计算系统中提取这些数据分析结果,并根据授权的要求将数据分析结果发送给政数局(此时给政数局发送的结果是居民平均收入数值),或者其他数据需求对象(根据不同的需求生成不同的数据分析结果),设备对数据分析结果的提取和发送均是在原始数据提供方的授信和监控下进行,使得原始数据提供方对于提交数据不存在信任问题,即,使得数据提供者和数据使用者在一个可信任的平台中进行数据共享,解决了多方隐私信任问题。

以上所述,仅是本发明的较佳实施例而已,并非是对本发明作任何其他形式的限制,依据本发明的技术实质所作的任何修改或等同变化,仍属于本发明所要求保护的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1