CN107924445A - 保留隐私的计算的相互认可 - Google Patents

保留隐私的计算的相互认可 Download PDF

Info

Publication number
CN107924445A
CN107924445A CN201680049909.3A CN201680049909A CN107924445A CN 107924445 A CN107924445 A CN 107924445A CN 201680049909 A CN201680049909 A CN 201680049909A CN 107924445 A CN107924445 A CN 107924445A
Authority
CN
China
Prior art keywords
private data
experiment
information element
escape way
instruction
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
CN201680049909.3A
Other languages
English (en)
Other versions
CN107924445B (zh
Inventor
V·费加德
H·刘
J·沃克
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.)
Intel Corp
Original Assignee
Intel Corp
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 Intel Corp filed Critical Intel Corp
Publication of CN107924445A publication Critical patent/CN107924445A/zh
Application granted granted Critical
Publication of CN107924445B publication Critical patent/CN107924445B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • G06F21/445Program or device authentication by mutual authentication, e.g. between devices or programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6209Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
    • 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/0869Network architectures or network communication protocols for network security for authentication of entities for achieving mutual authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/46Secure multiparty computation, e.g. millionaire problem
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/126Applying verification of the received information the source of the received data

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Databases & Information Systems (AREA)
  • Storage Device Security (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

各种实施例通常旨在提供多方数据的相互认证和安全分布式处理。特别是,可能会提交一个实验,以包含对由多个不可信实体拥有的私有数据的分布式处理。私有数据提供者可以授权实验并安全地传送私有数据以供可信计算节点池中的可信计算节点进行处理。

Description

保留隐私的计算的相互认可
相关申请的交叉引用
本申请要求于2015年9月25日提交的序列号为14/866,264的先前提交的美国专利申请的权益和优先权,其主题通过引用整体并入本文。
技术领域
这里描述的实施例一般涉及保留用于分布式计算或云计算的数据集的隐私。
背景技术
现代研究活动可能包括处理大量数据,这些数据可能由多个实体拥有。例如,在新兴医疗领域中的精确用药,其中医学决定、实践和/或产品可以基于计算诊断针对个体患者进行定制。然而,这样的诊断通常需要处理对应于该患者以及多个其他患者的大量基因组数据。通常,这些数据是私密的,受各种反披露法律或要求的约束,并且由多个不同的实体(例如医院,诊所等)拥有。因此,由于这种隐私或其他问题,在计算处理完成之前、之中以及之后,数据必须保密。
附图说明
图1示出根据一个实施例的系统的框图。
图2示出根据一个实施例的图1的系统的实现的框图。
图3-6图示了根据各种实施例的图1的系统的部分的框图。
图7示出根据一个实施例的图2的实现的一部分的框图。
图8示出根据一个实施例的技术。
图9-10各自示出了根据各种实施例的逻辑流程。
图11示出了计算机可读存储介质的实施例。
图12图示了处理体系结构的实施例。
具体实施方式
各种实施例通常涉及处理由不同实体拥有的多个数据集,同时保留数据集的隐私和控制。具体而言,本公开提供了一种计算系统,其中对由多方所拥有的数据进行的可信计算可以在分布式计算资源池上执行。每个数据所有者可以在工作流程之前、期间和之后保留对数据的控制权。通常,系统提供了在组合数据集上应用有向无环图(DAG)。可以提供可信计算集群以应用各种模式的DAG计算,例如映射、精简、分析、结果等。此外,可以保持数据的隐私。具体而言,系统可以在将数据提供者传送到池中的可信计算机期间、在存储期间以及在执行时,例如通过加密、使用可信执行引擎等来维护数据机密性和完整性。此外,结果可能受到保护,以保留隐私并减少数据识别。
值得注意的是,本公开提供了一种用于在由多个不可信实体提供的数据集上进行可信计算的系统。因此,可以在不需要合法协议(这可能是麻烦的安排,并且不防止数据盗窃)的情况下促进对数据集的分布式计算。此外,某些类型的数据(例如,医学图像、基因组数据等)难以混淆无须无用地呈现数据。如此,常规的数据解除识别技术通常不能用于这种类型的数据。
通常参考在此使用的符号和术语,下面的详细描述的部分可以根据在计算机或计算机网络上执行的程序过程来呈现。本领域技术人员使用这些程序性描述和表示来将其工作的实质最有效地传达给本领域其他技术人员。程序在这里通常被认为是一个达到预期的结果的独立的操作序列。这些操作是需要对物理量进行物理操纵的操作。通常,但不一定,这些量采取能够被存储、传送、组合、比较和以其他方式操纵的电、磁或光信号的形式。主要出于常见用法的原因,有时将这些信号称为比特、值、元素、符号、字符、术语、数字等。但是,应该指出的是,所有这些和类似的术语都与适当的物理量相关联,并且仅仅是适用于这些量的方便标签。
此外,这些操作经常被称为诸如添加或比较之类的术语,其通常与由人类操作者执行的心理操作相关联。然而,在这里描述的形成一个或多个实施例的一部分的任何操作中,人类操作者的这种能力在大多数情况下不是必需的或者是期望的。相反,这些操作是机器操作。用于执行各种实施例的操作的有用机器包括通用数字计算机,其被存储在其内的计算机程序选择性地激活或配置,所述计算机程序根据本文的教导编写,和/或包括专门为所需目的构造的装置。各种实施例还涉及用于执行这些操作的装置或系统。这些装置可以为了所需目的而专门构造,或者可以包括通用计算设备。从所给出的描述中可以看出各种机器所需的结构。
现在参考附图,其中相同的附图标记始终用于指代相同的元件。在以下描述中,出于解释的目的,阐述了许多具体细节以提供对其的透彻理解。然而,显而易见的是,可以在没有这些具体细节的情况下实践新颖的实施例。在其他情况下,为了便于描述,众所周知的结构和设备以框图形式示出。本发明提供透彻的说明使得充分描述权利要求范围内的所有修改、等同物和替代方案。
另外,可以参考用于表示可以实现多于一个组件的组件的变量,诸如“a”、“b”、“c”。需要注意的是,不一定需要多个组件,而且,在实现多个组件的情况下,它们不必是相同的。相反,使用变量来引用图中的组件是为了方便和清晰的呈现。
图1描绘了对多个不受信任实体拥有的数据进行分布式计算的系统。通常,系统1000包括可操作地耦合(例如,经由因特网等)并且被配置为处理多个节点上的数据的多个节点,其中数据的来源也是多个节点(例如,相同的,或不同的节点)。更具体地,系统1000可以包括数据提供者节点100-1至100-N、可信计算节点200-1至200-N以及可信计算和数据提供者节点300-1至300-N。注意的是,N可以是任何正整数,并且更具体地说,系统1000可以用任意数量的节点100、200和/或300来实现。此外,数据提供者节点100的数量不需要与可信计算节点200的数量相同。同样地,数据提供者节点100和/或可信计算节点200的数量不需要与可信计算和数据提供者节点300的数量相同。
节点100-1至100-N、200-1至200-N和300-1至300-N中的每一个经由网络400可操作地耦合。通常,网络400可以是任何网络,例如例如,广域网、因特网等。节点可以部署在各个机构。例如,在医学和/或药物研究的情况下,节点可以被部署在大学、医院、诊所、药物研究机构、政府机构等中。又如,在经济研究的背景下,可以将节点部署在大学、银行、投资机构、政府机构、经济研究机构、人口研究机构等中。应当指出,这些示例仅仅是为了清楚呈现而给出的,并不是限制性的。特别地,本公开可以被实现为在任何情况下提供由多个不受信任实体拥有的数据的安全分布式处理,并且不特别限于医疗、药物或经济研究。
系统1000的示例部分在下面更详细地描述,特别是关于图2-7提供了系统1000的示例配置,而图8描绘了由系统1000实现的示例技术。然而,在更具体地转向这些相应附图之前,在此提供系统1000的操作的总体描述。通常,数据提供者节点100-1至100-N以及可信计算和数据提供者节点300-1至300-N包括私有数据(例如,参考图3和图5),可以为了使用至少一些可信计算节点200-1至200-N和/或可信计算和数据提供者节点300-1至300-N对数据应用一些分析计算的目的而访问所述私有数据。更具体地,可以通过实验入口500来提交(例如由研究人员等)实验,其中包括要访问的数据以及要应用于该数据的计算的描述。实验入口500可以是不受信任的或者可能是可信的。更具体地说,实验入口500可以是经由因特网可访问的入口,甚至是无需访问私有数据的权限的实体(例如,研究等)。在其他示例中,实验入口500可以经由诸如例如需要访问证书的专用网络的安全处理来访问。在一些示例中,实验入口500可以是可操作地耦合到系统1000的web表单,其中实体可以向系统1000提交实验。
如上所述,通过实验入口500接收实验描述(例如,参考图6),可以使用系统1000启动实验。在一些示例中,实验描述可以包括有向无环图(DAG)。注意到,DAG是没有定向循环的有向图。更具体地说,DAG由顶点和有向边的集合形成,每个边将一个顶点连接到另一个顶点,使得无法从某个顶点开始并且沿着一系列边最终循环再返回到同一个顶点。可以生成DAG来模拟实验以应用于私有数据。更具体地说,任务(例如,数据处理、数据库查询等)的集合可被排序成受到各种约束的序列。可以形成DAG,其中DAG的每个顶点是任务并且每个边是约束。
实验入口500可以选择可信计算节点200-1至200-N中的一个或者可信计算和数据提供者节点300-1至300-N中的一个作为实验协调器(例如参考图2)。实验协调器向数据提供者节点100-1至100-N以及可信计算和数据提供者节点300-1至300-N中的每一个证明(例如,其真实性,验证编程等)。另外,实验协调器与每个数据提供者节点100-1至100-N以及与每个可信计算和数据提供者节点300-1至300-N建立安全通道。实验协调器例如经由建立的安全通道将DAG提交给数据提供者节点100-1至100-N以及可信计算和数据提供者节点300-1至300-N中的每一个。数据提供者节点100-1至100-N以及可信计算和数据提供者节点300-1至300-N可以验证DAG描述使用经批准的应用程序和/或计算来处理私有数据。更具体地,在一些示例中,私有数据的所有者可能要求私有数据仅利用特定应用进行处理。这样,数据提供者节点100-1到100-N以及可信计算和数据提供者节点300-1至300-N可以验证DAG仅引用和/或执行经批准的应用程序。
一旦数据提供者节点100-1到100-N以及可信计算和数据提供者节点300-1至300-N批准DAG,研究入口安排实验描述的一部分(例如,在DAG中描述的应用呈现或类似的)以在可用的可信计算节点200-1至200-N以及可信计算和数据提供者节点300-1至300-N上执行。特别地,可信计算节点200-1至200-N以及可信计算和数据提供者节点300-1至300-N被允许进入计算池(例如,参考图2)并且给出实验协调器的地址。可信计算节点200-1至200-N以及可信计算和数据提供者节点300-1至300-N中的每个,在它们加入计算池时可以证明其应用程序、启动参数和信任根。因此,实验协调器可以认证或验证被允许进入计算池的可信计算节点200-1至200-N以及可信计算和数据提供者节点300-1至300-N中的每个的真实性。实验协调器可以建立池中的可信计算节点200-1至200-N与可信计算和数据提供者节点300-1至300-N之间以及数据提供者节点100-1至100-N和可信计算和数据提供者节点300-1至300-N之间的提供私有数据的安全路径。在一些示例中,在建立该可信路径期间,数据提供者节点200-1至200-N以及可信计算和数据提供者节点300-1至300-N可以要求可信计算节点200-1至200-N以及可信计算和数据提供者节点300-1至300-N提供其真实性的证据。
在实验描述(例如DAG)的执行期间,数据被加密并且经由安全通道被发送到可信计算节点200-1至200-N以及可信计算和数据提供者节点300-1至300-N。可以将加密密钥直接分发给需要解密私有数据的池内的可信计算节点200-1至200-N以及可信计算和数据提供者节点300-1至300-N和/或可以分发给计算池内的所有可信节点200-1至200-N以及可信计算和数据提供者节点300-1至300-N。在一些示例中,加密密钥由实验协调器分发。在一些示例中,加密密钥由数据提供者节点200-1至200-N以及可信计算和数据提供者节点300-1至300-N分发。为了增强系统1000的安全性,数据被存储,解密,并且应用程序在可信环境(例如可信执行引擎)内的数据上执行。当计算池内的可信计算节点200-1至200-N和可信计算和数据提供者节点300-1至300-N终止计算和/或离开计算池时,加密数据、加密密钥和报告结果被销毁(例如,安全地移除等)。
在实验结束时,结果可能会增强隐私,以减少通过实验结果泄露私有数据的可能性。具体而言,可信计算节点200-1至200-N以及可信计算和数据提供者节点300-1至300-N可以:添加噪声、对结果进行加密,等等。在一些示例中,数据提供者节点200-1至200-N以及可信计算和数据提供者节点300-1至300-N(例如,私有数据的所有者)可以指定关于将结果发布的策略。
更具体地转向图2-8,描绘了框图。尤其是,图2描述了分布式计算池和私有数据源的示例实现方式。图3描绘了数据提供者节点200的示例的框图;图4描绘了可信计算节点200的示例的框图;图5描绘了可信计算和数据提供者节点300的示例的框图;以及图6描绘了研究入口500的示例的框图。图7更详细地描绘了图2中描绘的实现方式1001的一部分。图8描绘了用于由不同实体拥有的多组私有数据的安全分布式处理的技术的框图。给出对图2-7的简要描述,随后给出对图8的描述。注意,为了清楚的解释而不是限制,参考图3-7中描绘的框图来描述图2中描绘的示例分布式计算池和图8中描绘的技术。此外,参照图1所示的系统1000来描述图2-8。然而,这也是为了解释清楚而不是限制性的目的而进行的。
更具体地转向图2,描绘了系统1000的示例实现方式1001。特别地,示例实现方式1001可以包括分布式计算池1010,并且描绘了私有数据源1020。分布式计算池1010被描绘为包括多个可信计算节点200-1至200-N以及可信计算和数据提供者节点300-1至300-N。特别地,分布式计算池1010被描绘为包括可信计算节点200-1和200-2以及可信计算和数据提供者节点300-1。私有数据源1020被描述为包括多个数据提供者节点100-1到100-N以及可信计算和数据提供者节点300-1至300-N。特别地,私有数据源1020被描绘为包括数据提供者节点100-1和100-2以及可信计算和数据提供者节点300-2。另外,示例实现方式1001包括实验协调器1030。在操作期间,在开始实验时,可信计算节点200-1至200-N中的一个或者可信计算和数据提供者节点300-1至300-N中的一个可以充当实验协调器1030。注意到可信计算节点200-3被描述为实验协调器1030。然而,这是为了解释清楚而不是限制性的目的而进行的。实验协调器可操作地耦合到分布式计算池1010和私有数据源1020。另外,实验协调器可操作地耦合到实验入口500。下面参考图8更详细地描述示例实现方式1001的操作。然而,首先关于图3-7给出系统1000的示例部分的解释。
更具体地转向图3,所描绘的数据提供者节点100可对应于图1-2中所示的系统1000的数据提供者节点100-1至100-N中的任何一个。数据提供者节点100可以包括处理器元件110、计算机可读存储装置120、控制器140和接口150。计算机可读存储装置120可以存储控制例程122、私有数据124、私有数据加密密钥126和加密的私有数据128中的一个或多个。
通常,控制例程122结合在设备100的组件(例如,处理器元件110、控件140、接口150等)上操作的指令序列来实现逻辑以提供在此描述的用于处理的私有数据124。具体地,在执行控制例程122中,处理元件110可以使用私有数据124接收执行实验的请求。处理器元件110可以验证该实验包括对私有数据124进行的授权的动作(例如,应用程序、操作等)。此外,处理器元件110可以例如使用私有数据加密密钥126来加密私有数据124以形成加密的私有数据128。处理器元件110可以将加密的私有数据128提供给可信计算节点200-1至200-N中的一个和/或可信计算和数据提供者节点300-1至300-N中的一个,并且可以将加密密钥126提供给实验协调器。这样,数据提供者节点100可促进对私有数据124的分布式处理,其中分布式处理在多个不可信实体拥有的多组私有数据(例如,私有数据124-1到私有数据124-N等)上操作。
通常,私有数据124可以是需要分布式处理的任何数据。例如,私有数据可以是医疗数据、经济数据、财务数据、历史数据、商业数据、人口统计数据等。
更具体地转向图4,所描绘的可信计算节点200可以对应于图1-2中所示的系统1000的可信计算节点200-1至200-N中的任何一个。可信计算节点200可以包括处理器元件210、计算机可读存储装置220、可信执行环境(TEE)230、控件240和接口250。计算机可读存储器220可以存储一个或多个控件例程222,而可信执行环境230可以存储控制例程232、结果234、私有数据加密密钥126和加密的私有数据128中的一个或多个。
一般来说,控制例程222结合在设备200的组件(例如,处理器元件210、TEE 230、控件240、接口250等)上操作的指令序列来实现提供私有数据集(例如,私有数据124)的安全分布式处理的逻辑。此外,控制例程232结合在设备200的组件(例如,处理器元件210、控件240、接口250等)上操作的指令序列来实现用于解密加密的私有数据128和对解密的私有数据应用各种计算操作的逻辑。
值得注意的是,TEE 230可以包括用于安全地实现在此描述的功能的逻辑、功能、特征和/或存储。另外,TEE 230可以被并入到处理器元件210和/或存储器220中。然而,为了清楚起见,TEE 230被描绘为与处理器元件210和存储装置220分开。在一些示例中,TEE 230可以被实现为安全飞地、安全协处理器等。如此,可信计算节点200可以证明其能够安全地解密、存储和处理私有数据124的能力。
在执行控制例程232时,处理元件210可以加入计算池并且可以向实验协调器证明其真实性。处理元件210可以从实验协调器接收包括应用于私有数据124的操作(例如,DAG的部分等)的指示的信息元素。处理器元件210可以接收包括加密的私有数据128(例如,来自私有数据源1030之一)的指示的信息元素。另外,处理器元件210可以从实验协调器接收包括对应于所接收的加密的私有数据128的私有数据加密密钥126的指示的信息元素。
在执行控制例程232时,处理器元件210可以将从实验协调器接收的实验部分(例如,DAG)中描述的操作应用于所接收的私有数据。换句话说,处理器元件210可以至少部分基于处理私有数据(例如,通过使用私有数据加密密钥126对加密的私有数据128进行解密,等等)来生成结果234,如由可信计算节点200接收的DAG的部分中所指示的。另外,处理器元件可以遮蔽结果234(例如,通过增加噪声等)以减少基于结果234识别私有数据的可能性。
更具体地转向图5,所描绘的可信计算与数据提供者节点300可以对应于图1-2中所示的系统1000的可信计算与数据提供者节点300-1至300-N中的任何一个。注意,可信计算节点300可以是关于图3-4描述的节点100和200的组合。特别地,可信计算和数据提供者节点300可以提供私有数据(例如,类似于节点100)或可以处理私有数据(例如,类似于节点200)。利用一些示例,节点300可以提供或处理私有数据。在一些示例中,节点300可以提供和处理私有数据。特别是,由于私有数据的处理仅限于TEE,所以即使所处理的私有数据由不同的实体拥有,也可以保持私有数据的安全性。
节点300可以包括处理器元件310、计算机可读存储装置320、TEE 330,控件340和接口350。计算机可读存储装置320可以存储控制例程322、私有数据124、私有数据加密密钥126和加密的私有数据128中的一个或多个。TEE 330可以包括控制例程332、结果234、私有数据加密密钥126和加密的私有数据128中的一个或多个。
通常,控制例程322结合在设备300的组件(例如,处理器元件310、控件340、接口350等)上操作的指令序列以实现提供在此描述的用于处理的私有数据124的逻辑。具体地,在执行控制例程322时,处理元件310可以使用私有数据124来接收执行实验的请求。处理器元件310可以验证该实验包括对私有数据124的授权的动作(例如,应用程序、操作等等)。此外,处理器元件310可以(例如使用私有数据加密密钥126)来加密私有数据124以形成加密的私有数据128。处理器元件310可以将加密的私有数据128提供给可信计算节点200-1至200-N中的一个和/或可信计算和数据提供者节点300-1至300-N中的一个,并且可以将加密密钥126提供给实验协调器。
一般来说,控制例程332结合在设备300的组件(例如,处理器元件310、控件340、接口350等)上操作的指令序列,以实现用于解密加密的私有数据128和对解密的私有数据应用各种计算操作的逻辑。
重要的是要注意,TEE 330可以包括用于安全地实现在此描述的功能的逻辑、功能、特征和/或存储。另外,TEE 330可以被并入到处理器元件310和/或存储装置320中。然而,为了清楚起见,TEE 330被描绘为与处理器元件310和存储器320分开。在一些示例中,TEE 330可以被实现为安全飞地、安全协处理器等。这样,节点300可以证明其能够安全地解密、存储和处理私有数据124。
在执行控制例程332时,处理元件310可以加入计算池并且可以向实验协调器证明其真实性。处理元件310可以从实验协调器接收包括对私有数据124应用的操作(例如,DAG的部分等)的指示的信息元素。处理器元件310可以接收包括加密的私有数据128(例如,来自私有数据源1030中的一个)的指示的信息元素。另外,处理器元件310可以从实验协调器接收包括对应于所接收的加密的私有数据128的私有数据加密密钥126的指示的信息元素。
在执行控制例程332时,处理器元件310可以将从实验协调器接收的实验部分(例如,DAG)中描述的操作应用于所接收的私有数据。换句话说,处理器元件310可以至少部分基于处理私有数据(例如,通过使用私有数据加密密钥126对加密的私有数据128进行解密,等等)来生成结果234,如节点300接收的DAG的部分中所指示的。另外,处理器元件310可以遮蔽结果234(例如,通过添加噪声等)以减少基于结果234识别私有数据的可能性。
更具体地转向图6,描绘了所描绘的实验入口500的示例。实验入口500可以包括处理器元件510、计算机可读存储装置520、控件540和接口550。计算机可读存储装置520可以存储控制例程522、实验描述524和结果234中的一个或多个。
一般而言,控制例程522结合在设备500的组件(例如,处理器元件510、控件540、接口550等)上操作的指令序列,以实现接收实验描述524(例如,来自研究人员设备等)的逻辑。处理器元件510可以选择可信计算节点200-1至200-N中的一个来充当实验协调器1030,并且可以将实验描述524传送给实验协调器1030。另外,在执行控制例程532时,处理器元件510可以调度实验描述524的多个部分以在分布式计算池1010内的可用节点上进行操作。通常,实验描述可以是包括对要访问的私有数据124以及要在私有数据上执行的操作的指示的任何描述。在一些示例中,实验描述将是引用私有数据124和各种映射功能、精简功能、分析功能等的DAG。
设备100、200、300和/或500可以是各种类型的计算设备中的任何一种,包括但不限于服务器、工作站、数据中心、膝上型计算机、计算机、平板电脑、智能手机等。
在各种实施例中,处理器元件110,210,310和/或510可以包括多种商业上可获得的处理器中的任何一种,包括但不限于 处理器;应用,嵌入式或安全处理器;和/或处理器;IBM和/或Cell处理器;或Core(2)Core(2)Core Core处理器。此外,这些处理器元件中的一个或多个处理器元件可以包括多核处理器(无论多个核共存于相同的还是分离的管芯上),和/或多个物理上分离的处理器以某种方式链接所借助的某种其他类型的多处理器体系结构。此外,在各种实施例中,任何数量的处理器元件110、210和/或410可以包括可信的执行环境(例如IntelIntelIntelIntelARM等)来提供对敏感信息的处理和/或存储。可信执行环境可以是使用本文描述的地理定位技术来访问。
在各种实施例中,存储装置120、220、320和/或520可以基于多种信息存储技术中的任何一种,可能包括需要不间断提供电力的易失性技术,并且可能包括需要使用可以是也可以不是可移动的机器可读存储介质的技术。因此,这些存储装置中的每一个可以包括各种类型(或类型组合)存储设备中的任何一种,包括但不限于只读存储器(ROM),随机存取存储器(RAM),动态RAM(DRAM),双数据速率DRAM(DDR-DRAM),同步DRAM(SDRAM),静态RAM(SRAM),可编程ROM(PROM),可擦写可编程ROM(EPROM),电可擦除可编程ROM(EEPROM),闪存,聚合物存储器(例如铁电聚合物存储器),双向存储器,相变或铁电存储器,硅氧化物氮化物氧化物硅(SONOS)存储器,磁卡或光卡,一个或多个单独的铁磁磁盘驱动器或组织成一个或多个阵列的多个存储设备(例如组织成独立磁盘阵列冗余阵列或RAID阵列的多个铁磁磁盘驱动器)。应该注意的是,尽管这些存储装置中的每一个都被描述为单个框,但这些中的一个或多个可以包括可以基于不同的存储技术的多个存储设备。因此,例如,这些所描绘的存储装置中的每个存储装置中的一个或多个可以代表程序和/或数据可以借以存储和传送到某种形式的机器可读存储介质上的光驱动器或闪存卡读取器、在相对较长的时间段内在本地存储程序和/或数据的铁磁磁盘驱动器以及能够相对快速地访问程序和/或数据的一个或多个易失性固态存储器设备(例如SRAM或DRAM)的组合。还应该注意的是,这些存储装置中的每一个可以由基于相同的存储技术、但是由于专业化使用而单独维护的多个存储组件组成(例如,一些DRAM设备用作主存储器,而另一些DRAM设备被用作图形控制器的不同帧缓冲器)。
在各种实施例中,控制例程122、222、232、322、332和/或522可以包括操作系统、设备驱动程序和/或应用程序级例程(例如,在盘介质上提供的所谓的“软件套件”,从远程服务器获得的“小程序”等)中的一个或多个。在包括操作系统的情况下,操作系统可以是适合于处理器元件中的任何对应处理器元件(例如,110、210、310、510等)的各种可用操作系统中的任何一种。在包括一个或多个设备驱动程序的情况下,这些设备驱动程序可以为设备的各种其他组件(无论是硬件组件还是软件组件)中的任何组件提供支持。
在各种实施例中,控件140、240、340和/或540可以是多种输入和/或输出设备中的任何一种,诸如例如触摸屏、键盘、鼠标、小键盘、触控板、触控笔、显示器、扬声器、触觉反馈设备等。这些控件可能是本地或远程的,可能是无线连接或有线连接。
在各种实施例中,接口150、250、350和/或550可以采用各种信令技术中的任何一种,使得组件能够通过网络400耦合。具体地,设备100、200、300和/或500可以交换信号(例如,彼此之间,与另一个设备等),传达与私有数据124和结果234相关联的信息和/或数据。
在各种实施例中,网络400可以是可能局限于在单个建筑物或其他相对有限的区域内延伸的单个网络,可能延伸相当大距离的连接网络的组合,和/或可以包括因特网。因此,网络400可以基于通过其可以交换信号的各种(或组合)通信技术中的任一种,包括但不限于采用导电和/或光导电缆的有线技术以及采用红外、射频或其他形式的无线传输的无线技术。因此,接口150,250,350和/或550可以包括提供至少一些必要的功能以实现这种耦合的电路。然而,接口150,250,350和/或550还可以至少部分地由处理器元件执行的指令序列来实现(例如,实现协议栈或其他特征)。在网络400的一个或多个部分采用导电和/或光导电缆的情况下,接口可采用符合各种工业标准中的任一种的信令和/或协议,包括但不限于RS-232C,RS-422,USB,以太网(IEEE-802.3)或IEEE-1394。备选地或另外地,在网络400的一个或多个部分需要使用无线信号传输的情况下,这些接口中的对应接口可以采用符合各种工业标准中的任一种的信令和/或协议,包括但不限于IEEE 802.11a、802.11b、802.11g、802.16、802.20(通常称为“移动宽带无线接入”);蓝牙;ZigBee;或诸如具有通用分组无线电业务的GSM(GSM/GPRS),CDMA/1xRTT,全球演进增强型数据速率(EDGE),演进数据唯一/优化(EV-DO),数据和语音演进(EV-DV),高速下行链路分组接入(HSDPA),高速上行链路分组接入(HSUPA),4G LTE等。应该注意的是,尽管接口被描述为一个单一的框,它可能包括多个接口,这些接口可能基于不同的信令技术。特别是在这些接口中的一个或多个将这些组件耦合到多于一个网络的情况下,情况可能如此,每个网络采用不同的通信技术。
更具体地转向图7,更详细地描绘图2的示例1001的一部分。如示出的,实验协调器1030可以对应于可信计算节点200-3,其可以包括控制例程232和/或其他逻辑,其至少一部分可以以硬件实现,该部分可以包括证明引擎2321、安全通道接口2322、实验认证器2323和计算节点认证器2324。描绘了来自分布式计算池1010的计算节点。例如,描绘了可信计算节点200-1,其可以包括控制例程232和/或其他逻辑,其至少一部分可以用硬件来实现,该部分可以包括证明引擎2321、安全通道接口2322和实验处理器2325。描绘了来自私有数据源1020的数据提供者节点。例如,描绘了数据提供者节点100-1,其可以包括控制例程122和/或其他逻辑,其至少一部分可以以硬件实现,该部分可以包括网关组件1221、实验验证器1222以及加密引擎1223。还描绘了实验入口500,其可以包括控制例程522和/或其他逻辑,其至少一部分可以用硬件来实现,该部分可以包括调度器5221。此外,描绘了在节点200-1和200-3的安全通道接口2322之间建立的安全通道710-1,并且描绘了在节点200-1和200的每个安全通道接口和节点100-1的网关1221之间建立的安全通道710-2和710-3。
更具体地转向图8,描绘了使用分布式计算资源池来安全地处理由不同实体拥有的多组数据的技术1100。该技术包括操作或框8.X,其中X是正整数。从框8.1开始,实验入口可能会收到实验描述。例如,实验收发器5221可以接收包括实验描述524的指示的信息元素。另外,在框8.1,实验收发器5221选择计算节点中的一个(例如,可信计算节点200-1至200-N或可信计算和数据提供者节点300-1至300-N)充当实验协调器1030。例如,实验收发器5221可以选择可信计算节点200-3来充当实验协调器1030。此外,在框8.1处,实验收发器5221可以向实验协调器1030发送包括实验描述的指示的信息元素。
在框8.2处,实验协调器1030可以向私有数据源1020的数据提供者节点证明其真实性和充当实验协调器的能力。例如,证明引擎2321可以向节点100-1、100-2和300-2证明。继续到框8.3,实验协调器与私有数据提供者池1020中的节点建立可信的通信通道(例如,安全的越界通道,强化的通信通道等)。例如,安全通道接口2322可以与数据提供者节点100-1、100-2和300-2的每个网关1221建立安全通道。
继续到框8.3,实验协调器可以在建立的安全通道上向私有数据源1020的节点发送包括实验描述(例如,工作流程DAG等)的指示的信息元素。例如,实验认证器2323可以通过安全通道并且更具体地经由安全通道接口2322和网关1221将实验描述524传送给数据提供者节点。此外,在框8.3处,私有数据源1020的节点(例如,节点100-1、100-2和300-2)可以验证实验描述524仅描述经批准的工作流程。例如,节点可以验证实验描述引用了经批准的应用程序、处理、操作、转换等。
继续到框8.4,实验入口500可以基于实验描述524来调度分布式计算。例如,调度器5222可以调度池1010中的一些节点来执行实验描述524的各个部分。在框8.4,实验处理器2325可以(例如,从调度器5222)接收包括实验协调器1030的地址的指示、所需的私有数据的指示以及要在私有数据上执行的操作的指示的信息元素。在一些示例中,调度可以至少部分地基于与数据的接近度、资源可用性等。
继续到框8.5,实验协调器1030可以允许节点进入分布式计算池1010和/或可以认证池1010中的节点。例如,计算节点认证器2324可以从池1010中的节点或请求准入池1010的节点接收信息元素,信息元素包括节点真实性的指示。例如,节点200-1的证明引擎2321可以与节点200-3的计算节点认证器2324(例如,实验协调器)进行通信以证明其应用程序、启动参数、信任根等等。节点200-3的安全通道接口2322可以促进在节点200-1的安全通道接口2322和网关1221之间建立安全通道。更具体地,实验协调器1030可以促进在池1010中的节点和源节点1020之间建立安全通道。
继续到框8.6、8.7和8.8,池1010中的节点可以从源1020中的节点之一接收加密的私有数据,并且可以接收加密密钥以操作来解密加密的私有数据。例如,在框8.6处,节点200-1的实验处理器2325可以从节点300-2接收加密的私有数据128。在一些示例中,加密的私有数据128通过安全通道(例如,经由安全通道接口2322和网关1221等)被接收。在框8.7处,节点200-2的实验处理器2325可以从节点100-2接收加密的私有数据128。在一些示例中,加密的私有数据128通过安全通道(例如,经由安全通道接口2322和网关1221等)被接收。在框8.8处,节点300-1的实验处理器2325可以从节点100-1接收加密的私有数据128。在一些示例中,加密的私有数据128通过安全通道(例如,经由安全通道接口2322和网关1221等)被接收。
在一些示例中,私有数据加密密钥126由实验协调器1030提供给节点。例如,在框8.6、8.7和8.8,实验协调器可以经由安全通道(例如,经由安全通道接口2322和网关1221等)向池1010中的节点和源1020中的节点提供适当的加密密钥。在一些示例中,私有数据加密密钥126由数据源提供。例如,数据源可以通过安全通道来向请求私有数据的节点提供加密密钥。
继续到框8.9、8.10和8.11,池中的节点可以处理接收到的私有数据。例如,在框8.9、8.10和8.11处,每个节点的实验处理器可以解密所接收的私有数据,并且可以应用在框8.4处从调度器接收的实验描述的一部分中所指示的各种处理(例如,映射,精简,分析等)。另外,在框8.9、8.10和8.11处,每个节点的实验处理器可以生成结果234。
重要的是要注意,池1010中的节点可以隔离所接收的私有数据的处理。更具体地,每个节点可以将与处理私有数据相关的执行与在该节点上执行的所有其他实例和/或从在池1010中执行的所有其他实例隔离。
注意,框8.9、8.10和8.11可能需要中间结果和/或私有数据作为框8.9、8.10和8.11处理的一部分。换句话说,一些结果234可能是中间结果,而不是被传递到实验入口的最终的结果。相应地,在框8.9、8.10和8.11处,池中的节点可以加密结果234以便传送到系统中的另一个节点,或者用于在同一节点上进一步处理(例如,通过另一个应用等)。
继续到框8.12,实验入口500可以从池中的节点接收结果。在一些示例中,池中的节点可以在结果234上应用解除识别技术(例如,在框8.9、8.10、8.11等处)。例如,可以向结果234中添加噪声以降低从结果中识别私有数据124的几率。
继续到框8.13、8.14和8.15,池1010中的节点可以销毁(例如,擦除,覆盖等)结果234、加密的私有数据128和加密密钥126。
图9-10示出了用于提供多方数据的分布式处理的相互认可的逻辑流程的实施例。例如,可以实现逻辑流程以提供由分布式池1010处理来自私有数据源1020的数据的相互认可。应当理解,参考图1-8描述逻辑流程。然而,在这种情况下,示例不受限制,并且具体而言,包括与图1-8中描绘的组件类似或不同的组件的系统和/或设备可以实现逻辑流程。
更具体地转向图9,逻辑流程1200可以在框1210处开始。在框1210处,“与来自私有数据提供者池的私有数据提供者建立安全通道”,控制例程232可以建立节点(例如,池1010的节点)和池1020中的数据提供者之间的安全通道(例如,安全通道710-2等等)。更具体地,节点的安全通道接口2322可以建立与网关1221的安全通道710-2。
继续到框1220,“经由安全通道从私有数据提供者接收加密的数据”,节点可以经由安全通道从私有数据池中的节点接收加密的私有数据128。例如,池1010中的节点的实验处理器2325可以经由安全通道710-2接收私有数据128。
继续到框1230,“将处理应用于加密的数据”,节点可以对加密的数据应用处理,更具体地,池1010中的节点的实验处理器2325可以将处理(例如,基于实验描述、DAG等)应用于加密的私有数据。
更具体地转向图10,描绘了逻辑流程1300。逻辑流程1300可以在框1310处开始。在框1310处,“与私有数据提供者池中的私有数据提供者建立安全通道”,实验协调器1030的控制例程232可以在实验协调器1030和池1020中的数据提供者之间建立安全通道(例如,安全通道710-3等)。更具体地,实验协调器1030的安全通道接口2322可以建立与网关1221的安全通道710-3。同样,安全通道接口2322可以与池1020中的对应数据提供者的其他网关建立其他安全通道。
继续到框1320,“经由安全通道发送包括实验描述的指示的信息元素,该实验描述包括对从私有数据提供者可获得的私有数据的操作的指示”,实验协调器1030的控制例程232可以经由安全通道710-3等将包括实验描述524的指示的信息元素发送到私有数据提供者(例如,私有数据提供者100-1等)。
继续到框1330,“通过安全通道接收包括实验描述是否被批准的指示的信息元素”,实验协调器1030的控制例程232可以从私有数据提供者(例如,数据提供者100-1等)接收信息元素,该信息元素包括实验描述524是否被批准或被授权对从私有数据提供者可获得的私有数据124进行操作的指示。
图11示出了存储介质2000的实施例。存储介质2000可以包括制造品。在一些示例中,存储介质2000可以包括任何非暂时性计算机可读介质或机器可读介质,诸如光学,磁性或半导体存储装置。存储介质2000可以存储各种类型的计算机可执行指令,例如2002)。例如,存储介质2000可以存储各种类型的计算机可执行指令以实现逻辑流程1100。在一些示例中,存储介质2000可以存储各种类型的计算机可执行指令以实施逻辑流程1200。在一些实例中,存储介质2000可存储各种类型的计算机可执行指令以实施逻辑流程1300。
计算机可读或机器可读存储介质的示例可以包括能够存储电子数据的任何有形介质,包括易失性存储器或非易失性存储器、可移动或不可移动存储器、可擦除或不可擦除存储器、可写或可重写存储器,等等。计算机可执行指令的示例可以包括任何合适类型的代码,诸如源代码、编译代码、解释代码、可执行代码、静态代码、动态代码、面向对象的代码、可视代码等。在该上下文中,示例不受限制。
图12示出了适于如前所述地实现各种实施例的示例性处理体系结构3000的实施例。更具体地,处理体系结构3000(或其变体)可以被实现为本文所描述的系统1000和/或设备100、200、300和/或500的一部分。
处理体系结构3000包括数字处理中常用的各种元件,包括但不限于一个或多个处理器、多核处理器、协处理器、存储器单元、芯片组、控制器、外设、接口、振荡器、定时设备、视频卡、声卡、多媒体输入/输出(I/O)组件、电源等。如本申请中所使用的,术语“系统”和“组件”旨在表示其中进行数字处理的计算设备的实体,该实体是硬件,硬件和软件的组合,软件或执行中的软件,其示例由所描绘的示例性处理体系结构提供。例如,组件可以是(但不限于)在处理器元件上运行的进程,处理器组件本身,存储设备(例如,硬盘驱动器,阵列中的多个存储驱动器等),其可以采用光学和/或磁性存储介质、软件对象、可执行指令序列、执行线程、程序和/或整个计算设备(例如整个计算机)。举例来说,在服务器上运行的应用程序和服务器都可以是组件。一个或多个组件可以驻留在进程和/或执行线程内,并且组件可以位于一个计算设备上和/或分布在两个或更多个计算设备之间。此外,组件可以通过各种类型的通信介质彼此通信地耦合以协调操作。协调可能涉及信息的单向或双向交换。例如,组件可以以通过通信介质传送的信号的形式传送信息。该信息可以被实现为分配给一个或多个信号线的信号。每个消息可以是一个信号或串行或基本上并行发送的多个信号。
如所描绘的,在实现处理体系结构3000时,计算设备至少包括处理器元件910、存储装置930、到其他设备的接口990以及耦合器915。取决于实现处理体系结构3000的计算设备的各个方面,包括其预期用途和/或使用条件,这样的计算设备可以进一步并入额外的组件,例如但不限于计数器元件915。
耦合器915并入至少将处理器元件910通信地耦合到存储装置930的一个或多个总线、点对点互连、收发器、缓冲器、交叉点开关和/或其他导体和/或逻辑。耦合器915可以进一步将处理器元件910耦合到接口990和显示器接口955中的一个或多个(取决于这些和/或其它组件中的哪一个也存在)。在处理器元件910如此通过耦合器915耦合的情况下,处理器元件910能够执行上面详细描述的处理体系结构3000的各个任务。耦合器915可以用通过其对信号进行光和/或传送的多种技术中的任一种或技术的组合来实现。此外,耦合器915的至少部分可采用符合各种行业标准中的任何一种的定时和/或协议,包括但不限于加速图形端口(AGP),CardBus,扩展工业标准体系结构(E-ISA),微型通道体系结构(MCA),NuBus,外围组件互连(扩展)(PCI-X),PCI Express(PCI-E),个人计算机存储卡国际协会(PCMCIA)总线,HyperTransportTM,QuickPath等等。
如前所述,处理器元件910可以包括多种商业上可获得的处理器中的任何一种,采用多种技术中的任何一种并且利用以多种方式中的任何一种以物理方式组合的一个或多个核来实现。
如前所述,存储装置930可以包括基于多种技术中的任一种或技术组合的一个或多个不同的存储设备。更具体地说,如图所示,存储装置930可以包括易失性存储装置931(例如,基于一种或多种形式的RAM技术的固态存储装置),非易失性存储装置932(例如,固态,铁磁或不需要不断电力供应来保存其内容的其它存储装置),以及可移动媒体存储装置933(例如,可移动盘或固态存储卡存储装置,通过其可以在计算设备之间传送信息)中的一种或多种。可能包括多种不同类型的存储的存储装置930的这种描述认识到在计算设备中的多于一种类型的存储设备的常见使用,其中一种类型提供相对较快的读取和写入能力,以实现处理器元件910的更快的数据操纵(但可能使用持续需要电力的“易失性”技术),而另一种类型则提供相对高密度的非易失性存储(但可能提供相对较慢的读取和写入能力)。
考虑到采用不同技术的不同存储设备的通常不同的特性,常见的是这些不同的存储设备通过不同的存储控制器与计算设备的其它部分耦合,存储控制器通过不同的接口与其不同的存储设备耦合。举例来说,在易失性存储装置931存在且基于RAM技术的情况下,易失性存储装置931可以通过存储控制器935a可通信地耦合到耦合器915a,该存储控制器935a向易失性存储装置931提供合适的接口,该易失性存储装置931可能采用行和列寻址,并且其中存储控制器935a可以执行行刷新和/或其他维护任务以帮助保存存储在易失性存储装置931内的信息。作为另一示例,在非易失性存储装置932存在并且包括一个或多个铁磁/或固态磁盘驱动器的情况下,非易失性存储装置932可通过存储控制器935b通信地耦合到耦合器915,存储控制器935b向非易失性存储装置932提供适当接口,该非易失性存储装置932可能采用对信息块和/或柱面和扇区的寻址。作为另一个示例,在可移动介质存储装置933存在并且包括采用一个或多个可移除机器可读存储介质939的一个或多个光学和/或固态磁盘驱动器的情况下,可移动介质存储装置933可以通过存储控制器935c可通信地耦合到耦合器915,存储控制器935c提供到可移动介质存储装置933的适当的接口,可移动介质存储装置933可能采用对信息块的寻址,并且其中存储控制器935c可以以偏重于延长机器可读存储介质939的使用寿命的方式来协调读取、擦除和写入操作。
易失性存储装置931或非易失性存储装置932中的一个或另一个可包括机器可读存储介质形式的制品,在其上可存储包括可由处理器元件910执行的指令序列的例程,这取决于每个存储装置所基于的技术。举例来说,在非易失性存储装置932包括基于铁磁体的磁盘驱动器(例如,所谓的“硬盘驱动器”)的情况下,每个这种磁盘驱动器通常采用一个或多个旋转盘,在其上沉积磁响应粒子的涂层,以类似于可移动存储介质(例如软盘)的方式以各种模式磁性定向以存储诸如指令序列之类的信息。作为另一示例,非易失性存储装置932可以由固态存储装置组块(bank)构成,以类似于小型闪存卡的方式存储诸如指令序列之类的信息。再次,在不同时间在计算设备中使用不同类型的存储设备以存储可执行例程和/或数据是常见的。因此,包括要由处理器元件910执行的指令序列的例程最初可以被存储在机器可读存储介质939上,并且随后可以使用可移除介质存储装置933来将该例程复制到非易失性存储装置932用于长期存储,不需要机器可读存储介质939和/或易失性存储装置931的持续存在,以在执行该例程时通过处理器元件910实现更快速的存取。
如先前所讨论的,接口990可采用与可用于将计算设备通信地耦合到一个或多个其他设备的各种通信技术中的任一种相对应的各种信令技术中的任一种。同样,可以采用各种形式的有线或无线信令中的一种或两种来使得处理器元件910能够与输入/输出设备(例如,所描绘的示例键盘940或打印机945)和/或其他计算设备网络,可能通过网络(例如,网络999)或互联的一组网络进行交互。认识到任何一个计算设备必须经常支持的多种类型的信令和/或协议的经常大不相同的特征,接口990被描绘为包括多个不同的接口控制器995a,995b和995c。接口控制器995a可以采用各种类型的有线数字串行接口或射频无线接口中的任何一种来从用户输入设备(例如所描绘的键盘940)接收串行传输的消息。接口控制器995b可以采用多种基于缆线的或无线的信令中的任一种,通过所描绘的网络999(可能是包括一个或多个链路的网络,较小的网络或可能是因特网)来访问其他计算设备的定时和/或协议。接口995c可以采用各种导电缆线中的任何一种,使得能够使用串行或并行信号传输来将数据传送到所描绘的打印机945。可以通过接口的一个或多个接口控制器990可通信地耦合的设备的其它示例包括但不限于,麦克风、遥控器、触控笔、读卡器、指纹读取器、虚拟现实交互手套、图形输入板、操纵杆、其他键盘、视网膜扫描器、触摸屏的触摸输入组件、轨迹球、各种传感器、激光打印机、喷墨打印机、机械机器人、铣床等。
在设备可通信地耦合到(或者可能实际上并入)显示器(例如,所描绘的示例显示器950)的情况下,实现处理体系结构3000的这种计算设备还可以包括显示器接口955。尽管更一般化的接口类型可以用于以通信方式耦合到显示器,在显示器上以可视方式显示各种形式的内容时经常需要的稍微专门化的附加处理,以及所使用的基于缆线的接口的稍微专门化的性质通常使得提供独特的显示接口是可取的。在显示器950的通信耦合器中显示器接口955可以使用的有线和/或无线信令技术可以利用符合多种工业标准中的任一种的信令和/或协议,包括但不限于各种模拟视频接口、数字视频接口(DVI),DisplayPort等中的任一种。
更一般地,本文所描述的设备的各种元件可以包括各种硬件元件、软件元件或两者的组合。硬件元件的示例可以包括设备、逻辑设备、组件、处理器、微处理器、电路、处理器组件、电路元件(例如晶体管、电阻器、电容器、电感器等等)、集成电路、专用集成电路(ASIC)、可编程逻辑器件(PLD)、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、存储器单元、逻辑门、寄存器、半导体器件、芯片、微芯片、芯片组等等。软件元件的示例可以包括软件组件、程序、应用、计算机程序、应用程序、系统程序、软件开发程序、机器程序、操作系统软件、中间件、固件、软件模块、例程、子例程、函数、方法、程序、软件接口、应用程序接口(API)、指令集、计算代码、计算机代码、代码段、计算机代码段、字、值、符号或其任何组合。然而,确定一个实施例是否使用硬件元件和/或软件元件来实现可以根据诸如给定的实现方式所需的期望的计算速率、功率水平、耐热性、处理循环预算、输入数据速率、输出数据速率、存储器资源,数据总线速度和其他设计或性能约束等任何数量的因素而变化。
一些实施例可以使用表达“一个实施例”或“实施例”及其派生词来描述。这些术语意味着结合该实施例描述的特定特征、结构或特性被包括在至少一个实施例中。说明书中各处出现的短语“在一个实施例中”不一定都指同一实施例。此外,可以使用表达“耦合”和“连接”及其派生词来描述一些实施例。这些术语不一定是作为彼此的同义词。例如,可以使用术语“连接”和/或“耦合”来描述一些实施例,以指示两个或更多个元件彼此直接物理或电接触。然而,术语“耦合”还可以意味着两个或更多个元件彼此不直接接触,而是仍然彼此协作或交互。
要强调的是,本公开的摘要被提供以允许读者快速确定技术公开的性质。应理解的是,它不会被用来解释或限制权利要求的范围或含义。另外,在前面的具体实施方式中,可以看出,出于简化本公开的目的,各种特征在单个实施例中被组合在一起。本公开的该方法不被解释为反映所要求保护的实施例要求比每个权利要求中明确记载的更多特征的意图。相反,如以下权利要求所反映的,发明主题在于少于单个公开实施例的所有特征。因此,以下权利要求由此被并入到具体实施方式中,其中每个权利要求本身作为单独的实施例。在所附权利要求中,术语“包括(including)”和“其中(in which)”分别被用作相应术语“包括(comprising)”和“其中(wherein)”的朴素的英语同义词。此外,术语“第一”、“第二”、“第三”等等仅被用作标签,而不旨在对其对象施加数字要求。
以上描述的内容包括所公开的体系结构的示例。当然,不可能描述组件和/或方法的每个可能的组合,但是本领域的普通技术人员可以认识到许多进一步的组合和排列是可能的。因此,新颖的体系结构旨在涵盖落入所附权利要求的精神和范围内的所有这样的改变、修改和变化。本公开现在转向提供各种示例实现方式。
示例1.一种装置,包括:逻辑,其一部分以硬件实现,所述逻辑包括:安全通道接口,用于与私有数据源池中的多个私有数据提供者中的私有数据提供者建立安全通道;以及实验处理器,用于:经由所述安全通道从所述私有数据提供者接收加密的私有数据;将一个或多个处理应用于加密的私有数据。
示例2.根据示例1所述的装置,实验处理器用于接收加密密钥并基于加密密钥来解密加密的私有数据。
示例3.根据示例2所述的装置,安全通道是第一安全通道,安全通道接口用于与实验协调器建立第二安全通道,实验处理器用于从实验协调器接收加密密钥。
示例4.根据示例1所述的装置,包括证明引擎,用于向实验协调器发送包括装置的信任根的指示的信息元素。
示例5.根据示例1所述的装置,该装置是分布式可信计算节点池中的可信计算节点。
示例6.根据示例2所述的装置,实验处理器用于从实验协调器接收信息元素,信息元素包括实验描述的一部分的指示。
示例7.根据示例6所述的装置,实验处理器用于从私有数据提供者接收加密密钥。
示例8.根据示例7所述的装置,该实验描述包括有向无环图(DAG)。
示例9.根据示例8所述的装置,所述DAG包括将对私有数据执行的多个映射、精简或分析操作,所述私有数据对应于从所述私有数据源池中的所述多个私有数据提供者可获得的私有数据。
示例10.根据示例1至9中的任一个所述的装置,安全通道接口和实验处理器用于在可信执行环境中执行。
示例11.一种装置,包括:逻辑,其一部分以硬件实现,所述逻辑包括:安全通道接口,与私有数据源池中的多个私有数据提供者中的私有数据提供者建立安全通道;以及实验认证器,用于:经由所述安全通道向所述私有数据提供者发送第一信息元素,所述第一信息元素包括对从所述私有数据源可获得的私有数据进行操作的实验描述的指示;经由所述安全通道从所述私有数据提供者接收第二信息元素,所述第二信息元素包括所述实验描述是否被批准的指示。
示例12.根据示例11所述的装置,所述逻辑包括计算节点认证器,所述计算节点认证器用于认证可信计算节点以允许所述可信计算节点进入可信计算节点池。
示例13.根据示例12所述的装置,计算节点认证器从可信计算节点接收信任根,并基于信任根认证可信计算节点。
示例14.根据示例12所述的装置,计算节点认证器用于:经由安全通道向私有数据提供者发送第三信息元素,第三信息元素包括可信计算节点的真实性的指示;以及经由所述安全通道从所述私有数据提供者接收第四信息元素,所述第四信息元素包括所述可信计算节点是否被授权接收所述私有数据的指示。
示例15.根据示例12所述的装置,实验认证器用于从实验入口接收第三信息元素,第三信息元素包括实验描述的指示。
示例16.根据示例12所述的装置,实验描述包括有向无环图。
示例17.一种装置,包括:可信执行环境(TEE);由TEE执行的安全通道接口,安全通道接口与私有数据源池中的多个私有数据提供者中的私有数据提供者建立安全通道;以及由所述TEE执行的实验处理器,所述实验处理器用于:经由所述安全通道从所述私有数据提供者接收加密的私有数据;将一个或多个处理应用于加密的私有数据。
示例18.根据示例17所述的装置,实验处理器用于接收加密密钥并且基于加密密钥来解密加密的私有数据。
示例19.根据示例18所述的装置,安全通道是第一安全通道,安全通道接口是与实验协调器建立第二安全通道,实验处理器用于从实验协调器接收加密密钥。
示例20.根据示例17所述的装置,包括证明引擎,用于向实验协调器发送包括装置的信任根的指示的信息元素。
示例21.根据示例17所述的装置,该装置是分布式可信计算节点池中的可信计算节点。
示例22.根据示例18所述的装置,所述实验处理器用于从实验协调器接收信息元素,所述信息元素包括实验描述的一部分的指示。
示例23.根据示例22所述的装置,实验处理器用于从私有数据提供者接收加密密钥。
示例24.根据示例23所述的装置,该实验描述包括有向无环图(DAG)。
示例25.根据示例24所述的装置,所述DAG包括将对私有数据执行的多个映射、精简或分析操作,所述私有数据对应于从私有数据池中的所述多个私有数据提供者处可获得的私有数据源。
示例26.根据示例17至25中任一个所述的装置,所述安全通道接口和所述实验处理器用于在可信执行环境中执行。
示例27.一种装置,包括:可信执行环境(TEE):由所述TEE执行的安全通道接口,所述安全通道接口与私有数据源池中的多个私有数据提供者中的私有数据提供者建立安全通道;以及由TEE执行的实验认证器,所述实验认证器用于:经由所述安全通道将第一信息元素发送到所述私有数据提供者,所述第一信息元素包括对从私有数据源获得的私有数据进行操作的实验描述的指示;经由所述安全通道从所述私有数据提供者接收第二信息元素,所述第二信息元素包括所述实验描述是否被批准的指示。
示例28.根据示例27所述的装置,包括计算节点认证器,所述计算节点认证器认证可信计算节点以允许所述可信计算节点进入可信计算节点池。
示例29.根据示例28所述的装置,计算节点认证器用于从可信计算节点接收信任根,并基于信任根来认证可信计算节点。
示例30.根据示例28所述的装置,所述计算节点认证器用于:经由所述安全通道向所述私有数据提供者发送第三信息元素,所述第三信息元素包括所述可信计算节点的真实性的指示;以及经由所述安全通道从所述私有数据提供者接收第四信息元素,所述第四信息元素包括所述可信计算节点是否被授权接收所述私有数据的指示。
示例31.根据示例27所述的装置,实验认证器用于从实验入口接收第三信息元素,第三信息元素包括实验描述的指示。
示例32.根据示例27所述的装置,实验描述包括有向无环图。
示例33.至少一个机器可读存储介质,包括指令,所述指令在由可信执行环境(TEE)执行时使得所述TEE:与私有数据源池中的多个私有数据提供者中的私有数据提供者建立安全通道;经由所述安全通道从所述私有数据提供者接收加密的私有数据;以及将一个或多个处理应用于加密的私有数据。
示例34.根据示例33所述的至少一个机器可读存储介质,包括进一步使得TEE接收加密密钥并且基于加密密钥对加密的私有数据进行解密的指令。
示例35.根据示例34所述的至少一个机器可读存储介质,所述安全通道是第一安全通道,所述介质包括进一步使所述TEE与实验协调器建立第二安全通道并从所述实验协调器安全通道接收所述加密密钥的指令。
示例36.根据示例33所述的至少一个机器可读存储介质,包括进一步使得TEE向实验协调器发送包括所述装置的信任根的指示的信息元素的指令。
示例37.根据示例34所述的至少一个机器可读存储介质,包括进一步使所述TEE从实验协调器接收信息元素的指令,所述信息元素包括对实验描述的一部分的指示。
示例38.根据示例37所述的至少一个机器可读存储介质,包括进一步使所述TEE从所述私有数据提供者接收所述加密密钥的指令。
示例39.根据示例38所述的至少一个机器可读存储介质,所述实验描述包括有向无环图(DAG)。
示例40.根据示例39所述的至少一个机器可读存储介质,所述DAG包括将对私有数据执行的多个映射、精简或分析操作,所述私有数据对应于可从私有数据源池中的所述多个私有数据提供者获得的私有数据。
示例41.至少一个机器可读存储介质,包括指令,所述指令在由可信执行环境(TEE)执行时使所述TEE:与私有数据源池中的多个私有数据提供者中的私有数据提供者建立安全通道;经由所述安全通道向所述私有数据提供者发送第一信息元素,所述第一信息元素包括对从所述私有数据源可获得的私有数据进行操作的实验描述的指示;以及经由所述安全通道从所述私有数据提供者接收第二信息元素,所述第二信息元素包括所述实验描述是否被批准的指示。
示例42.根据示例41所述的至少一个机器可读存储介质,包括进一步使得TEE认证可信计算节点以允许可信计算节点进入可信计算节点池的指令。
示例43.根据示例42的至少一个机器可读存储介质,包括进一步使得TEE从可信计算节点接收信任根并且基于信任根来认证可信计算节点的指令。
示例44.根据示例43所述的至少一个机器可读存储介质,包括进一步使得所述TEE进行以下操作的指令:经由所述安全通道向所述私有数据提供者发送第三信息元素,所述第三信息元素包括可信计算节点的真实性的指示;以及经由所述安全通道从所述私有数据提供者接收第四信息元素,所述第四信息元素包括所述可信计算节点是否被授权接收所述私有数据的指示。
示例45.根据示例41所述的至少一个机器可读存储介质,包括进一步使得TEE从实验入口接收第三信息元素的指令,第三信息元素包括实验描述的指示。
示例46.根据示例41所述的至少一个机器可读存储介质,所述实验描述包括有向无环图。
示例47.一种计算机实现的方法,包括:与私有数据源池中的多个私有数据提供者中的私有数据提供者建立安全通道;经由所述安全通道从所述私有数据提供者接收加密的私有数据;并将一个或多个处理应用于加密的私有数据。
示例48.根据示例47所述的计算机实现的方法,包括接收加密密钥并且基于所述加密密钥来解密所述加密的私有数据。
示例49.根据示例48所述的计算机实现的方法,所述安全通道是第一安全通道,所述方法包括与实验协调器建立第二安全通道并从所述实验协调器接收加密密钥。
示例50.根据示例47所述的计算机实现的方法,包括向实验协调器发送包括所述装置的信任根的指示的信息元素。
示例51.根据示例48所述的计算机实现的方法,包括:从实验协调器接收信息元素,所述信息元素包括对实验描述的一部分的指示。
示例52.根据示例51所述的计算机实现的方法,包括从私有数据提供者接收加密密钥。
示例53.根据示例52所述的计算机实现的方法,该实验描述包括有向无环图(DAG)。
示例54.根据示例53所述的计算机实现的方法,所述DAG包括将对私有数据执行的多个映射、精简或分析操作,所述私有数据对应于可从所述私有数据源池中的所述多个私有数据提供者获得的私有数据。
示例55.一种计算机实现的方法,包括:与私有数据源池中的多个私有数据提供者中的私有数据提供者建立安全通道;经由所述安全通道向所述私有数据提供者发送第一信息元素,所述第一信息元素包括对从所述私有数据源可获得的私有数据进行操作的实验描述的指示;以及经由所述安全通道从所述私有数据提供者接收第二信息元素,所述第二信息元素包括关于所述实验描述是否被批准的指示。
示例56.根据示例55所述的计算机实现的方法,包括:认证可信计算节点以允许可信计算节点进入可信计算节点池。
示例56.根据示例56所述的计算机实现的方法,包括从可信计算节点接收信任根,并基于信任根来认证可信计算节点。
示例58.根据示例57所述的计算机实现的方法,包括:经由所述安全通道向所述私有数据提供者发送第三信息元素,所述第三信息元素包括所述可信计算节点的真实性的指示;以及经由所述安全通道从所述私有数据提供者接收第四信息元素,所述第四信息元素包括所述可信计算节点是否被授权接收所述私有数据的指示。
示例59.根据示例55所述的计算机实现的方法,包括从实验入口接收第三信息元素,第三信息元素包括实验描述的指示。
示例60.根据示例59所述的计算机实现的方法,该实验描述包括有向无环图。
实例61.一种用于设备的装置,所述装置包含用于执行示例47到60中任一个的方法的单元。

Claims (25)

1.一种装置,包括:
逻辑,其一部分以硬件实现,所述逻辑包括:
安全通道接口,用于与私有数据源池中的多个私有数据提供者中的私有数据提供者建立安全通道;以及
实验处理器,用于:
经由所述安全通道从所述私有数据提供者接收加密的私有数据;
将一个或多个处理应用于所述加密的私有数据。
2.如权利要求1所述的装置,所述实验处理器用于接收加密密钥并且基于所述加密密钥来解密所述加密的私有数据。
3.如权利要求2所述的装置,所述安全通道是第一安全通道,所述安全通道接口用于与实验协调器建立第二安全通道,所述实验处理器用于从所述实验协调器接收所述加密密钥。
4.如权利要求1所述的装置,包括证明引擎,用于向实验协调器发送包括所述装置的信任根的指示的信息元素。
5.如权利要求1所述的装置,所述装置是分布式可信计算节点池中的可信计算节点。
6.如权利要求2所述的装置,所述实验处理器用于从实验协调器接收信息元素,所述信息元素包括实验描述的一部分的指示。
7.如权利要求6所述的装置,所述实验处理器用于从所述私有数据提供者接收所述加密密钥。
8.如权利要求7所述的装置,所述实验描述包括有向无环图(DAG)。
9.如权利要求8所述的装置,所述DAG包括将对私有数据执行的多个映射、精简或分析操作,所述私有数据对应于从所述私有数据源池中的所述多个私有数据提供者可获得的私有数据。
10.如权利要求1至9中任一项所述的装置,所述安全通道接口和所述实验处理器用于在可信执行环境中执行。
11.一种装置,包括:
可信执行环境(TEE):
由所述TEE执行的安全通道接口,所述安全通道接口用于与私有数据源池中的多个私有数据提供者中的私有数据提供者建立安全通道;以及
由所述TEE执行的实验认证器,所述实验认证器用于:
经由所述安全通道向所述私有数据提供者发送第一信息元素,所述第一信息元素包括对从所述私有数据源可获得的私有数据进行操作的实验描述的指示;
经由所述安全通道从所述私有数据提供者接收第二信息元素,所述第二信息元素包括所述实验描述是否被批准的指示。
12.如权利要求11所述的装置,包括计算节点认证器,所述计算节点认证器用于认证可信计算节点以允许所述可信计算节点进入可信计算节点池。
13.如权利要求12所述的装置,所述计算节点认证器用于从所述可信计算节点接收信任根,并且基于所述信任根来认证所述可信计算节点。
14.如权利要求12所述的装置,所述计算节点认证器用于:
经由所述安全通道向所述私有数据提供者发送第三信息元素,所述第三信息元素包括所述可信计算节点的真实性的指示;以及
经由所述安全通道从所述私有数据提供者接收第四信息元素,所述第四信息元素包括所述可信计算节点是否被授权接收所述私有数据的指示。
15.如权利要求11所述的装置,所述实验认证器用于从实验入口接收第三信息元素,所述第三信息元素包括所述实验描述的指示。
16.如权利要求11所述的装置,所述实验描述包括有向无环图。
17.至少一个机器可读存储介质,包括指令,所述指令在由可信执行环境(TEE)执行时使得所述TEE:
与私有数据源池中的多个私有数据提供者中的私有数据提供者建立安全通道;
经由所述安全通道从所述私有数据提供者接收加密的私有数据;以及
将一个或多个处理应用于所述加密的私有数据。
18.如权利要求17所述的至少一个机器可读存储介质,包括指令,所述指令进一步使得所述TEE接收加密密钥并且基于所述加密密钥来解密所述加密的私有数据。
19.如权利要求18所述的至少一个机器可读存储介质,包括指令,所述指令进一步使得所述TEE向实验协调器发送包括所述装置的信任根的指示的信息元素。
20.如权利要求19所述的至少一个机器可读存储介质,包括指令,所述指令进一步使得所述TEE从所述私有数据提供者接收所述加密密钥。
21.一种计算机实现的方法,包括:
与私有数据源池中的多个私有数据提供者中的私有数据提供者建立安全通道;
经由所述安全通道向所述私有数据提供者发送第一信息元素,所述第一信息元素包括对从所述私有数据源可获得的私有数据进行操作的实验描述的指示;以及
经由所述安全通道从所述私有数据提供者接收第二信息元素,所述第二信息元素包括所述实验描述是否被批准的指示。
22.如权利要求21所述的计算机实现的方法,包括认证可信计算节点以允许所述可信计算节点进入可信计算节点池。
23.如权利要求22所述的计算机实现的方法,包括从所述可信计算节点接收信任根,并且基于所述信任根来认证所述可信计算节点。
24.如权利要求23所述的计算机实现的方法,包括:
经由所述安全通道向所述私有数据提供者发送第三信息元素,所述第三信息元素包括所述可信计算节点的真实性的指示;以及
经由所述安全通道从所述私有数据提供者接收第四信息元素,所述第四信息元素包括所述可信计算节点是否被授权接收所述私有数据的指示。
25.如权利要求21所述的计算机实现的方法,包括从实验入口接收第三信息元素,所述第三信息元素包括所述实验描述的指示。
CN201680049909.3A 2015-09-25 2016-09-26 保留隐私的计算的相互认可 Active CN107924445B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/866,264 2015-09-25
US14/866,264 US10701039B2 (en) 2015-09-25 2015-09-25 Mutual approval for privacy-preserving computing
PCT/US2016/053838 WO2017054001A1 (en) 2015-09-25 2016-09-26 Mutual approval for privacy-preserving computing

Publications (2)

Publication Number Publication Date
CN107924445A true CN107924445A (zh) 2018-04-17
CN107924445B CN107924445B (zh) 2022-08-12

Family

ID=58387549

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680049909.3A Active CN107924445B (zh) 2015-09-25 2016-09-26 保留隐私的计算的相互认可

Country Status (5)

Country Link
US (1) US10701039B2 (zh)
EP (1) EP3353703A4 (zh)
KR (1) KR102569845B1 (zh)
CN (1) CN107924445B (zh)
WO (1) WO2017054001A1 (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109492438A (zh) * 2018-10-24 2019-03-19 梅艳 基于TrustZone的分布式计算系统
CN110011956A (zh) * 2018-12-12 2019-07-12 阿里巴巴集团控股有限公司 一种数据处理方法和装置
CN110610093A (zh) * 2018-06-15 2019-12-24 国际商业机器公司 在参数数据集中进行分布式训练
CN111027086A (zh) * 2019-12-16 2020-04-17 支付宝(杭州)信息技术有限公司 一种私有数据保护方法和系统
CN111027713A (zh) * 2019-12-10 2020-04-17 支付宝(杭州)信息技术有限公司 共享机器学习系统及方法
WO2020134632A1 (zh) * 2018-12-29 2020-07-02 阿里巴巴集团控股有限公司 一种建立可信计算集群的方法和装置
WO2020199785A1 (zh) * 2019-03-29 2020-10-08 华控清交信息科技(北京)有限公司 私有数据的处理方法、计算方法及所适用的设备
CN111756675A (zh) * 2019-03-28 2020-10-09 钉钉控股(开曼)有限公司 数据处理方法、装置、设备和系统
CN111967038A (zh) * 2019-09-30 2020-11-20 华控清交信息科技(北京)有限公司 数据处理系统、方法、设备、编辑器及存储介质
US11121865B2 (en) 2018-12-12 2021-09-14 Advanced New Technologies Co., Ltd. Method and apparatus for establishing trusted channel between user and trusted computing cluster

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11277412B2 (en) 2018-05-28 2022-03-15 Royal Bank Of Canada System and method for storing and distributing consumer information
US9686240B1 (en) 2015-07-07 2017-06-20 Sprint Communications Company L.P. IPv6 to IPv4 data packet migration in a trusted security zone
US9749294B1 (en) 2015-09-08 2017-08-29 Sprint Communications Company L.P. System and method of establishing trusted operability between networks in a network functions virtualization environment
US10542115B1 (en) 2015-10-01 2020-01-21 Sprint Communications Company L.P. Securing communications in a network function virtualization (NFV) core network
US9781016B1 (en) 2015-11-02 2017-10-03 Sprint Communications Company L.P. Dynamic addition of network function services
US10250498B1 (en) 2016-10-03 2019-04-02 Sprint Communications Company L.P. Session aggregator brokering of data stream communication
US10348488B1 (en) 2017-08-25 2019-07-09 Sprint Communications Company L.P. Tiered distributed ledger technology (DLT) in a network function virtualization (NFV) core network
EP3803654A4 (en) * 2018-05-28 2022-02-23 Royal Bank of Canada SYSTEM AND PROCEDURES FOR SECURE ELECTRONIC TRANSACTION PLATFORM
US11316692B2 (en) * 2018-08-13 2022-04-26 Ares Technologies, Inc. Systems, devices, and methods for selecting a distributed framework
US11379263B2 (en) * 2018-08-13 2022-07-05 Ares Technologies, Inc. Systems, devices, and methods for selecting a distributed framework
RU2715796C1 (ru) 2019-05-17 2020-03-03 Постников Роман Владимирович Устройство для безопасного вычисления значения функции с использованием двух секретных наборов данных без компрометации наборов данных и способ вычисления социального рейтинга с использованием устройства
CN111026359B (zh) * 2019-12-17 2021-10-15 支付宝(杭州)信息技术有限公司 多方联合判定隐私数据的数值范围的方法和装置
CN111753318B (zh) * 2020-06-04 2024-04-26 上海蚂蚁创将信息技术有限公司 私有数据的多方安全计算方法、装置及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102710668A (zh) * 2012-06-29 2012-10-03 上海海事大学 一种适于云存储的数据隐私性保障方法
US20150058629A1 (en) * 2013-08-21 2015-02-26 Mark D. Yarvis Processing Data Privately in the Cloud
US20150178052A1 (en) * 2013-12-17 2015-06-25 Atigeo Llc Automated experimentation platform

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7107445B2 (en) * 2002-11-20 2006-09-12 International Business Machines Corporation Method and apparatus for secure processing of sensitive data
GB2401014B (en) * 2003-04-23 2005-09-14 Hewlett Packard Development Co Cryptographic method and apparatus
KR101039001B1 (ko) 2010-03-04 2011-06-07 가톨릭대학교 산학협력단 협의 진료 시스템 및 그 방법
WO2012000092A1 (en) * 2010-06-28 2012-01-05 Lionstone Capital Corporation Seamless end-to-end data obfuscation and encryption
AU2012326132A1 (en) * 2011-10-17 2014-05-08 Intertrust Technologies Corporation Systems and methods for protecting and governing genomic and other information
US9286491B2 (en) * 2012-06-07 2016-03-15 Amazon Technologies, Inc. Virtual service provider zones
US9215249B2 (en) * 2012-09-29 2015-12-15 Intel Corporation Systems and methods for distributed trust computing and key management
US9418209B2 (en) * 2012-10-02 2016-08-16 Google Technology Holdings LLC Systems and methods for manipulating sensitive information in a secure mobile environment
US8572757B1 (en) 2012-11-30 2013-10-29 nCrypted Cloud LLC Seamless secure private collaboration across trust boundaries
US9141769B1 (en) * 2013-02-08 2015-09-22 Amazon Technologies, Inc. Secure transfer and use of secret material in a shared environment
US9118639B2 (en) 2013-03-14 2015-08-25 Intel Corporation Trusted data processing in the public cloud
US9747456B2 (en) * 2013-03-15 2017-08-29 Microsoft Technology Licensing, Llc Secure query processing over encrypted data
US9767299B2 (en) 2013-03-15 2017-09-19 Mymail Technology, Llc Secure cloud data sharing
EP2849403B1 (en) * 2013-09-13 2023-06-07 Alcatel Lucent Method and system for controlling the exchange of privacy-sensitive information
US9384362B2 (en) * 2013-10-14 2016-07-05 Intuit Inc. Method and system for distributing secrets
US10904218B2 (en) * 2013-11-25 2021-01-26 Mcafee, Llc Secure proxy to protect private data
US9680872B1 (en) * 2014-03-25 2017-06-13 Amazon Technologies, Inc. Trusted-code generated requests
US20160036826A1 (en) * 2014-07-29 2016-02-04 Mcafee, Inc. Secure content packaging using multiple trusted execution environments
US20160085916A1 (en) * 2014-09-24 2016-03-24 Ned M. Smith Privacy preserving genome sequence management

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102710668A (zh) * 2012-06-29 2012-10-03 上海海事大学 一种适于云存储的数据隐私性保障方法
US20150058629A1 (en) * 2013-08-21 2015-02-26 Mark D. Yarvis Processing Data Privately in the Cloud
US20150178052A1 (en) * 2013-12-17 2015-06-25 Atigeo Llc Automated experimentation platform

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110610093A (zh) * 2018-06-15 2019-12-24 国际商业机器公司 在参数数据集中进行分布式训练
CN109492438A (zh) * 2018-10-24 2019-03-19 梅艳 基于TrustZone的分布式计算系统
CN109492438B (zh) * 2018-10-24 2022-09-02 梅艳 基于TrustZone的分布式计算系统
CN110011956A (zh) * 2018-12-12 2019-07-12 阿里巴巴集团控股有限公司 一种数据处理方法和装置
US11728978B2 (en) 2018-12-12 2023-08-15 Advanced New Technologies Co., Ltd. Method and apparatus for establishing trusted channel between user and trusted computing cluster
US11121865B2 (en) 2018-12-12 2021-09-14 Advanced New Technologies Co., Ltd. Method and apparatus for establishing trusted channel between user and trusted computing cluster
US11038673B2 (en) 2018-12-12 2021-06-15 Advanced New Technologies Co., Ltd. Data processing method and apparatus
TWI724584B (zh) * 2018-12-29 2021-04-11 開曼群島商創新先進技術有限公司 建立可信計算群集的方法和裝置
WO2020134632A1 (zh) * 2018-12-29 2020-07-02 阿里巴巴集团控股有限公司 一种建立可信计算集群的方法和装置
US11196741B2 (en) 2018-12-29 2021-12-07 Advanced New Technologies Co., Ltd. Method and apparatus for establishing trusted computing cluster
US11792190B2 (en) 2018-12-29 2023-10-17 Advanced New Technologies Co., Ltd. Method and apparatus for establishing trusted computing cluster
CN111756675A (zh) * 2019-03-28 2020-10-09 钉钉控股(开曼)有限公司 数据处理方法、装置、设备和系统
CN111756675B (zh) * 2019-03-28 2023-04-07 钉钉控股(开曼)有限公司 数据处理方法、装置、设备和系统
CN111753324A (zh) * 2019-03-29 2020-10-09 华控清交信息科技(北京)有限公司 私有数据的处理方法、计算方法及所适用的设备
WO2020199785A1 (zh) * 2019-03-29 2020-10-08 华控清交信息科技(北京)有限公司 私有数据的处理方法、计算方法及所适用的设备
CN111753324B (zh) * 2019-03-29 2024-02-09 华控清交信息科技(北京)有限公司 私有数据的处理方法、计算方法及所适用的设备
CN111967038A (zh) * 2019-09-30 2020-11-20 华控清交信息科技(北京)有限公司 数据处理系统、方法、设备、编辑器及存储介质
CN111967038B (zh) * 2019-09-30 2023-12-15 华控清交信息科技(北京)有限公司 数据处理系统、方法、设备、编辑器及存储介质
CN111027713A (zh) * 2019-12-10 2020-04-17 支付宝(杭州)信息技术有限公司 共享机器学习系统及方法
CN111027086A (zh) * 2019-12-16 2020-04-17 支付宝(杭州)信息技术有限公司 一种私有数据保护方法和系统

Also Published As

Publication number Publication date
WO2017054001A1 (en) 2017-03-30
KR20180048638A (ko) 2018-05-10
US20170093806A1 (en) 2017-03-30
US10701039B2 (en) 2020-06-30
CN107924445B (zh) 2022-08-12
KR102569845B1 (ko) 2023-08-24
EP3353703A1 (en) 2018-08-01
EP3353703A4 (en) 2019-04-24

Similar Documents

Publication Publication Date Title
CN107924445A (zh) 保留隐私的计算的相互认可
US20230262055A1 (en) Synthetic genomic variant-based secure transaction devices, systems and methods
CN105723377B (zh) 供内核模式应用使用的安全区域
KR101698776B1 (ko) 원타임 패스워드의 사용을 보안하기 위한 기술
CN107851167A (zh) 在计算环境中保护计算数据的技术
CN108463983A (zh) 用于通过椭圆曲线密码学进行分布式密码密钥配置和存储的方法和系统
CN107851152A (zh) 用于安全控制器的分布式操作的技术
CN107408175A (zh) 用于自加密驱动的挑战响应认证
CN107922049A (zh) 使用群鉴证的无人机源内容创作
Panwar et al. A Blockchain Framework to Secure Personal Health Record (PHR) in IBM Cloud‐Based Data Lake
CN105830082A (zh) 虚拟机保证
CN105659238A (zh) 用于患者数据交换系统的数据驱动模式
CN105468940B (zh) 软件保护方法及装置
US20230281604A1 (en) Technologies for creating and transferring non-fungible token based identities
CN105893853A (zh) 向访客系统指派多个硬件安全模块之一的方法和指派系统
CN107408072A (zh) 用于随机化计算机指令集、存储器寄存器和指针的方法和装置
CN104268477B (zh) 一种安全控制方法及网络设备
Kaushik et al. Demystifying quantum blockchain for healthcare
CN107305613A (zh) 保护从麦克风到应用进程的音频数据传输的系统及方法
Sethia et al. Smart health record management with secure NFC-enabled mobile devices
Srivastava et al. Digital Transformation of Healthcare: A blockchain study
TWM569002U (zh) Medical record sharing system
Murala et al. MedMetaverse: Medical Care of Chronic Disease Patients and Managing Data Using Artificial Intelligence, Blockchain, and Wearable Devices State-of-the-Art Methodology
Bajkoti et al. Role of quantum computing and metaverse in the field of healthcare and medicine
Ahmed et al. Yet another investigation on blockchain in smart healthcare

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