CN110011956A - 一种数据处理方法和装置 - Google Patents

一种数据处理方法和装置 Download PDF

Info

Publication number
CN110011956A
CN110011956A CN201811521025.0A CN201811521025A CN110011956A CN 110011956 A CN110011956 A CN 110011956A CN 201811521025 A CN201811521025 A CN 201811521025A CN 110011956 A CN110011956 A CN 110011956A
Authority
CN
China
Prior art keywords
data
authorization message
performing environment
credible performing
key
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
CN201811521025.0A
Other languages
English (en)
Other versions
CN110011956B (zh
Inventor
余超凡
黄群山
王磊
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.)
Advanced New Technologies Co Ltd
Advantageous New Technologies Co Ltd
Original Assignee
Alibaba Group Holding Ltd
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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201811521025.0A priority Critical patent/CN110011956B/zh
Publication of CN110011956A publication Critical patent/CN110011956A/zh
Priority to TW108133964A priority patent/TWI709314B/zh
Priority to SG11202100822YA priority patent/SG11202100822YA/en
Priority to PCT/CN2019/112591 priority patent/WO2020119258A1/zh
Priority to EP19896220.1A priority patent/EP3813324B1/en
Application granted granted Critical
Publication of CN110011956B publication Critical patent/CN110011956B/zh
Priority to US17/159,553 priority patent/US11038673B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • 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/6272Protecting 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 by registering files or documents with a third party
    • 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/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • 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
    • 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
    • H04L63/0478Network 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 applying multiple layers of encryption, e.g. nested tunnels or encrypting the content with a first key and then with at least a second key
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key 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)
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3239Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/03Protecting confidentiality, e.g. by encryption
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2107File encryption

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Power Engineering (AREA)
  • Databases & Information Systems (AREA)
  • Storage Device Security (AREA)

Abstract

本说明书实施例提供一种数据处理方法和装置,其中,在数据提供方执行的方法包括:获取所述第一明文数据的第一加密数据、用于解密所述第一加密数据的第一密钥、以及关于所述第一明文数据的授权信息;向数据管理方发送验证请求,其中,所述数据管理方包括第一可信执行环境;从所述数据管理方接收认证信息,并基于所述认证信息进行验证;在验证通过的情况中,将所述第一密钥和所述授权信息安全传输至所述第一可信执行环境;以及将所述第一加密数据提供给所述数据管理方。

Description

一种数据处理方法和装置
技术领域
本说明书实施例涉及数据处理技术领域,更具体地,涉及基于数据使用授权的数据处理方法和装置。
背景技术
在互联网大数据背景下,服务提供商(如信用评估机构、贷款机构、保险公司)在为一个对象(个人或企业、组织)提供服务时,经常会使用该对象的历史数据对对象进行评估(如信用、喜好等)。个人或企业在与一个对象开展业务(如商业合作),经常也需要对该对象进行评估(如信用、资产等)。评估需要用户的可信数据,而用户的数据分散在各个数据源(如银行、税务局、房产局等)中。为了保护对象的隐私和评估方法的隐私,现有的技术通常是在评估者(即数据使用方)和一个或多个数据源(即数据提供方)之间运行安全多方计算协议,以使得评估者得到评估结果。在安全多方计算中,主要基于密码学技术进行计算,计算过程中需要数据使用方和数据提供方等多方实时配合。
因此,需要一种更有效的用于保护各方数据安全的数据处理方案。
发明内容
本说明书实施例旨在提供一种更有效的数据处理方法和装置,以解决现有技术中的不足。
为实现上述目的,本说明书一个方面提供一种数据处理方法,所述方法在数据提供方执行,所述数据提供方拥有第一明文数据,所述方法包括:
获取所述第一明文数据的第一加密数据、用于解密所述第一加密数据的第一密钥、以及关于所述第一明文数据的授权信息;
向数据管理方发送验证请求,其中,所述数据管理方包括第一可信执行环境;
从所述数据管理方接收认证信息,并基于所述认证信息进行验证,其中,所述认证信息由所述第一可信执行环境生成;
在验证通过的情况中,将所述第一密钥和所述授权信息安全传输至所述第一可信执行环境;以及
将所述第一加密数据提供给所述数据管理方。
本说明书另一方面提供一种数据处理方法,所述方法在数据提供方执行,所述数据提供方拥有第一明文数据,所述方法包括:
获取关于所述第一明文数据的授权信息;
向数据管理方发送验证请求,其中,所述数据管理方包括第一可信执行环境;
从所述数据管理方接收认证信息,并基于所述认证信息进行验证,其中,所述认证信息由所述第一可信执行环境生成;以及
在验证通过的情况中,将所述第一明文数据和所述授权信息安全传输至所述第一可信执行环境。
在一个实施例中,所述授权信息包括至少一个代码哈希值,所述至少一个代码哈希值分别为被允许使用所述第一明文数据的至少一个程序各自的代码哈希值。
在一个实施例中,所述授权信息包括与所述至少一个代码哈希值分别对应的至少一个访问权限信息,所述访问权限信息为关于相应程序的计算结果的信息。
在一个实施例中,所述访问权限信息为第二密钥,所述第二密钥用于加密相应的计算结果、由与该计算结果对应的计算结果使用方提供。
在一个实施例中,所述访问权限信息为空信息。
在一个实施例中,基于所述认证信息进行验证包括,基于所述认证信息验证:所述第一可信执行环境中是否安装有并正在执行用于数据使用授权的程序。
在一个实施例中,所述安全传输为加密传输。
本说明书另一方面提供一种数据处理方法,所述方法在数据管理方执行,所述数据管理方包括第一可信执行环境、并且存储有至少一份加密数据,其中,在所述第一可信执行环境中存储有至少一个第一密钥和与所述至少一个第一密钥分别对应的至少一份授权信息,其中,所述至少一个第一密钥用于分别解密所述至少一份加密数据以分别获取至少一份明文数据,所述至少一份授权信息与所述至少一份明文数据分别对应,且所述授权信息为关于被允许使用相应的明文数据的至少一个程序的信息,所述方法包括:
接收数据使用方的数据请求,所述数据请求用于请求使用所述至少一份明文数据,其中,所述数据使用方包括第二可信执行环境;
从所述数据使用方接收认证信息,所述认证信息由所述第二可信执行环境生成;
在所述第一可信执行环境中,对于每份所述授权信息,基于所述认证信息和该份授权信息进行验证;以及
对于每份所述授权信息,
在验证通过的情况中,由第一可信执行环境将与该份授权信息对应的第一密钥安全传输给所述第二可信执行环境,以及
将相应的加密数据提供给所述数据使用方。
本说明书另一方面提供一种数据处理方法,所述方法在数据管理方执行,所述数据管理方包括第一可信执行环境,其中,在所述第一可信执行环境中存储有至少一份明文数据、以及与所述至少一份明文数据分别对应的至少一份授权信息,其中,所述授权信息为关于被允许使用相应的明文数据的至少一个程序的信息,所述方法包括:
接收数据使用方的数据请求,所述数据请求用于请求使用所述至少一份明文数据,其中,所述数据使用方包括第二可信执行环境;
从所述数据使用方接收认证信息,其中,所述认证信息由所述第二可信执行环境生成;
在所述第一可信执行环境中,对于每份所述授权信息,基于所述认证信息和该份授权信息进行验证;以及
对于每份所述授权信息,在验证通过的情况中,由第一可信执行环境将与该份授权信息对应的明文数据安全传输给所述第二可信执行环境。
在一个实施例中,所述第一可信执行环境与所述第二可信执行环境位于一个平台、或不同的平台中。
在一个实施例中,从所述数据使用方接收认证信息包括,由所述第一可信执行环境接收从所述第二可信执行环境安全传输的认证信息。
在一个实施例中,所述认证信息中包括所述第二可信执行环境中安装并正在运行的第一程序的第一代码哈希值,其中,所述每份授权信息包括所述至少一个程序各自的代码哈希值,其中,对于每份所述授权信息,基于所述认证信息和该份授权信息进行验证包括,对于每份授权信息,验证所述第一代码哈希值是否为该份授权信息中包括的一个代码哈希值。
在一个实施例中,每份所述授权信息中包括第一代码哈希值、和与所述第一代码哈希值对应的第二密钥,所述第二密钥用于对所述第一程序的计算结果进行加密、由与该计算结果对应的计算结果使用方提供,其中,所述方法还包括,对于每份所述授权信息,在验证通过的情况中,还由所述第一可信执行环境将所述第二密钥安全传输给所述第二可信执行环境。
在一个实施例中,所述数据管理方还包括数据存储模块,其中,所述至少一份加密数据被存储在所述数据存储模块中。
本说明书另一方面提供一种数据处理方法,所述方法在数据使用方执行,所述数据使用方包括第二可信执行环境,所述第二可信执行环境中运行有第一程序,所述方法包括:
向数据管理方发送数据请求,用于请求使用与数据管理方中存储的至少一份加密数据对应的至少一份明文数据,其中,所述数据管理方包括第一可信执行环境,在所述第一可信执行环境中存储有至少一个第一密钥和与所述至少一个第一密钥分别对应的至少一份授权信息,其中,所述至少一个第一密钥用于分别解密所述至少一份加密数据以分别获取所述至少一份明文数据,所述至少一份授权信息与所述至少一份明文数据分别对应,且所述授权信息为关于被允许使用相应的明文数据的至少一个程序的信息;
向所述数据管理方发送认证信息,以使得所述第一可信执行环境对于每份所述授权信息基于所述认证信息和该份授权信息进行验证,其中,所述认证信息由所述第二可信执行环境生成;
对于每份所述授权信息,在验证通过的情况中,由所述第二可信执行环境接收从所述第一可信执行环境安全传输的与该份授权信息对应的第一密钥;从所述数据管理方获取与该份授权信息对应的加密数据;在所述第二可信执行环境中使用该第一密钥对该加密数据进行解密,以获取相应的明文数据;以及
在所述第二可信执行环境中通过所述第一程序基于所述至少一份明文数据进行计算,以获取计算结果。
本说明书另一方面提供一种数据处理方法,所述方法在数据使用方执行,所述数据使用方包括第二可信执行环境,所述第二可信执行环境中运行有第一程序,所述方法包括:
向数据管理方发送数据请求,用于请求使用数据管理方中存储的至少一份明文数据,其中,所述数据管理方包括第一可信执行环境,在所述第一可信执行环境中存储有所述至少一份明文数据和与所述至少一份明文数据分别对应的至少一份授权信息,其中,所述授权信息为关于被允许使用相应的明文数据的至少一个程序的信息;
向所述数据管理方发送认证信息,以使得所述第一可信执行环境对于每份所述授权信息基于所述认证信息和该份授权信息进行验证,其中,所述认证信息由所述第二可信执行环境生成;
对于每份所述授权信息,在验证通过的情况中,由所述第二可信执行环境接收从所述第一可信执行环境安全传输的与该份授权信息对应的明文数据;以及
在所述第二可信执行环境中通过所述第一程序基于所述至少一份明文数据进行计算,以获取计算结果。
在一个实施例中,所述第一程序具有第一代码哈希值,其中,每份授权信息中包括第一代码哈希值、及与第一代码哈希值对应的第二密钥,所述第二密钥用于对所述第一程序的计算结果进行加密、由与该计算结果对应的计算结果使用方提供,所述方法还包括,
对于每份所述授权信息,在验证通过的情况中,由所述第二可信执行环境接收从所述第一可信执行环境安全传输的所述第二密钥;
在获取所述计算结果之后,在所述第二可信执行环境中确定与各份所述授权信息分别对应的各个第二密钥是否一致;以及
在各个所述第二密钥一致的情况中,在所述第二可信执行环境中使用所述第二密钥对所述计算结果进行加密,以获取加密计算结果。
在一个实施例中,所述方法还包括,在获取加密计算结果之后,将所述加密计算结果发送给所述计算结果使用方。
在一个实施例中,从所述数据管理方获取与该份授权信息对应的加密数据包括,从所述数据管理方读取与该份授权信息对应的加密数据。
本说明书另一方面提供一种数据处理装置,所述装置在数据提供方实施,所述数据提供方拥有第一明文数据,所述装置包括:
获取单元,配置为,获取所述第一明文数据的第一加密数据、用于解密所述第一加密数据的第一密钥、以及关于所述第一明文数据的授权信息;
发送单元,配置为,向数据管理方发送验证请求,其中,所述数据管理方包括第一可信执行环境;
验证单元,配置为,从所述数据管理方接收认证信息,并基于所述认证信息进行验证,其中,所述认证信息由所述第一可信执行环境生成;
安全传输单元,配置为,在验证通过的情况中,将所述第一密钥和所述授权信息安全传输至所述第一可信执行环境;以及
提供单元,配置为,将所述第一加密数据提供给所述数据管理方。
本说明书另一方面提供一种数据处理装置,所述装置在数据提供方实施,所述数据提供方拥有第一明文数据,所述装置包括:
获取单元,配置为,获取关于所述第一明文数据的授权信息;
发送单元,配置为,向数据管理方发送验证请求,其中,所述数据管理方包括第一可信执行环境;
验证单元,配置为,从所述数据管理方接收认证信息,并基于所述认证信息进行验证,其中,所述认证信息由所述第一可信执行环境生成;以及
安全传输单元,配置为,在验证通过的情况中,将所述第一明文数据和所述授权信息安全传输至所述第一可信执行环境。
在一个实施例中,所述验证单元还配置为,基于所述认证信息验证:所述第一可信执行环境中是否安装有并正在执行用于数据使用授权的程序。
本说明书另一方面提供一种数据处理装置,所述装置在数据管理方实施,所述数据管理方包括第一可信执行环境、并且存储有至少一份加密数据,其中,在所述第一可信执行环境中存储有至少一个第一密钥和与所述至少一个第一密钥分别对应的至少一份授权信息,其中,所述至少一个第一密钥用于分别解密所述至少一份加密数据以分别获取至少一份明文数据,所述至少一份授权信息与所述至少一份明文数据分别对应,且所述授权信息为关于被允许使用相应的明文数据的至少一个程序的信息,所述装置包括:
第一接收单元,配置为,接收数据使用方的数据请求,所述数据请求用于请求使用所述至少一份明文数据,其中,所述数据使用方包括第二可信执行环境;
第二接收单元,配置为,从所述数据使用方接收认证信息,所述认证信息由所述第二可信执行环境生成;
验证单元,配置为,在所述第一可信执行环境中,对于每份所述授权信息,基于所述认证信息和该份授权信息进行验证;以及
针对每份授权信息的
第一安全传输单元,配置为,在验证通过的情况中,由第一可信执行环境将与该份授权信息对应的第一密钥安全传输给所述第二可信执行环境;以及
提供单元,配置为,将相应的加密数据提供给所述数据使用方。
本说明书另一方面提供一种数据处理装置,所述装置在数据管理方实施,所述数据管理方包括第一可信执行环境,其中,在所述第一可信执行环境中存储有至少一份明文数据、以及与所述至少一份明文数据分别对应的至少一份授权信息,其中,所述授权信息为关于被允许使用相应的明文数据的至少一个程序的信息,所述装置包括:
第一接收单元,配置为,接收数据使用方的数据请求,所述数据请求用于请求使用所述至少一份明文数据,其中,所述数据使用方包括第二可信执行环境;
第二接收单元,配置为,从所述数据使用方接收认证信息,其中,所述认证信息由所述第二可信执行环境生成;
验证单元,配置为,在所述第一可信执行环境中,对于每份所述授权信息,基于所述认证信息和该份授权信息进行验证;以及
针对每份所述授权信息的安全传输单元,配置为,在验证通过的情况中,由第一可信执行环境将与该份授权信息对应的明文数据安全传输给所述第二可信执行环境。
在一个实施例中,所述验证单元还配置为,由所述第一可信执行环境接收从所述第二可信执行环境安全传输的认证信息。
在一个实施例中,所述认证信息中包括所述第二可信执行环境中安装并正在运行的第一程序的第一代码哈希值,其中,所述每份授权信息包括所述至少一个程序各自的代码哈希值,其中,所述验证单元还配置为,对于每份授权信息,验证所述第一代码哈希值是否为该份授权信息中包括的一个代码哈希值。
在一个实施例中,每份所述授权信息中包括第一代码哈希值、和与所述第一代码哈希值对应的第二密钥,所述第二密钥用于对所述第一程序的计算结果进行加密、由与该计算结果对应的计算结果使用方提供,其中,所述装置还包括第二安全传输单元,配置为,对于每份所述授权信息,在验证通过的情况中,还由所述第一可信执行环境将所述第二密钥安全传输给所述第二可信执行环境。
本说明书另一方面提供一种数据处理装置,所述装置在数据使用方实施,所述数据使用方包括第二可信执行环境,所述第二可信执行环境中运行有第一程序,所述装置包括:
第一发送单元,配置为,向数据管理方发送数据请求,用于请求使用与数据管理方中存储的至少一份加密数据对应的至少一份明文数据,其中,所述数据管理方包括第一可信执行环境,在所述第一可信执行环境中存储有至少一个第一密钥和与所述至少一个第一密钥分别对应的至少一份授权信息,其中,所述至少一个第一密钥用于分别解密所述至少一份加密数据以分别获取所述至少一份明文数据,所述至少一份授权信息与所述至少一份明文数据分别对应,且所述授权信息为关于被允许使用相应的明文数据的至少一个程序的信息;
第二发送单元,配置为,向所述数据管理方发送认证信息,以使得所述第一可信执行环境对于每份所述授权信息基于所述认证信息和该份授权信息进行验证,其中,所述认证信息由所述第二可信执行环境生成;
针对每份所述授权信息的
第一接收单元,配置为,在验证通过的情况中,由所述第二可信执行环境接收从所述第一可信执行环境安全传输的与该份授权信息对应的第一密钥;获取单元,配置为,从所述数据管理方获取与该份授权信息对应的加密数据;解密单元,配置为,在所述第二可信执行环境中使用该第一密钥对该加密数据进行解密,以获取相应的明文数据;以及
计算单元,配置为,在所述第二可信执行环境中通过所述第一程序基于所述至少一份明文数据进行计算,以获取计算结果。
本说明书另一方面提供一种数据处理装置,所述装置在数据使用方实施,所述数据使用方包括第二可信执行环境,所述第二可信执行环境中运行有第一程序,所述装置包括:
第一发送单元,配置为,向数据管理方发送数据请求,用于请求使用数据管理方中存储的至少一份明文数据,其中,所述数据管理方包括第一可信执行环境,在所述第一可信执行环境中存储有所述至少一份明文数据和与所述至少一份明文数据分别对应的至少一份授权信息,其中,所述授权信息为关于被允许使用相应的明文数据的至少一个程序的信息;
第二发送单元,配置为,向所述数据管理方发送认证信息,以使得所述第一可信执行环境对于每份所述授权信息基于所述认证信息和该份授权信息进行验证,其中,所述认证信息由所述第二可信执行环境生成;
针对每份所述授权信息的第一接收单元,配置为,对于每份所述授权信息,在验证通过的情况中,由所述第二可信执行环境接收从所述第一可信执行环境安全传输的与该份授权信息对应的明文数据;以及
计算单元,配置为,在所述第二可信执行环境中通过所述第一程序基于所述至少一份明文数据进行计算,以获取计算结果。
在一个实施例中,所述第一程序具有第一代码哈希值,其中,每份授权信息中包括第一代码哈希值、及与第一代码哈希值对应的第二密钥,所述第二密钥用于对所述第一程序的计算结果进行加密、由与该计算结果对应的计算结果使用方提供,所述装置还包括,
针对每份所述授权信息的
第二接收单元,配置为,在验证通过的情况中,由所述第二可信执行环境接收从所述第一可信执行环境安全传输的与该份授权信息对应的第二密钥;
确定单元,配置为,在获取所述计算结果之后,在所述第二可信执行环境中确定与各份所述授权信息分别对应的各个第二密钥是否一致,以及
加密单元,配置为,在各个所述第二密钥一致的情况中,在所述第二可信执行环境中使用所述第二密钥对所述计算结果进行加密,以获取加密计算结果。
在一个实施例中,所述装置还包括第三发送单元,配置为,在获取加密计算结果之后,将所述加密计算结果发送给所述计算结果使用方。
在一个实施例中,所述获取单元还配置为,从所述数据管理方读取与该份授权信息对应的加密数据。
本说明书另一方面提供一种计算设备,包括存储器和处理器,其特征在于,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现上述任一项方法。
在根据本说明书实施例的数据处理方案中,利用TEE、RA技术搭建了数据提供方可信赖的数据授权***,可以保证数据的隐私性,多方数据的合规使用;在设计上达成了可以针对数据使用行为授权、可选择性地对数数据融合的输出结果进行访问控制两个特性,以满足实际多方数据融合的通用入口、出口权限控制;数据授权***作为中间层,为数据提供方和数据使用方解耦,数据提供方无需部署数据提供服务来实时配合融合业务传输数据,提升易用性。
附图说明
通过结合附图描述本说明书实施例,可以使得本说明书实施例更加清楚:
图1示出根据本说明书实施例的数据处理***100的示意图;
图2示出根据本说明书实施例的一种数据处理方法流程图;
图3示意示出由数据提供方安全传输至第一TEE的信息;
图4示出根据本说明书实施例的一种数据处理方法流程图;
图5示出根据本说明书实施例的一种数据处理方法流程图;
图6示意示出在数据管理方中存储的数据;
图7示出根据本说明书实施例的一种数据处理方法流程图;
图8示出根据本说明书实施例的一种数据处理方法流程图;
图9示出根据本说明书实施例的一种数据处理方法流程图;
图10示出根据本说明书实施例的数据处理方法中数据提供方、数据管理方、数据使用方之间的交互图;
图11示出根据本说明书实施例的一种数据处理装置1100;
图12示出根据本说明书实施例的一种数据处理装置1200;
图13示出根据本说明书实施例的一种数据处理装置1300;
图14示出根据本说明书实施例的一种数据处理装置1400;
图15示出根据本说明书实施例的一种数据处理装置1500;
图16示出根据本说明书实施例的一种数据处理装置1600。
具体实施方式
下面将结合附图描述本说明书实施例。
图1示出根据本说明书实施例的数据处理***100的示意图。如图1所示,***100包括数据提供方11、数据提供方12、数据管理方13、数据使用方14以及结果使用方15。其中数据提供方11/12例如为银行、税务局、房产局等拥有原始数据的一方;数据管理方13相当于数据托管平台,包括第一可信执行环境(TEE)131和存储模块132,可由数据提供方将数据及其授权信息预先上传至数据管理方,以进行数据的使用授权,从而使得数据提供方不需在数据使用时实时在线;数据使用方14例如为信用评估机构、贷款机构、保险公司等服务提供商,其包括第二TEE141;结果使用方15例如为数据使用方14的服务对象,如企业、个人等。数据提供方11可在验证第一TEE之后,将本地拥有的明文数据X的加密数据X上传至数据管理方13的存储模块132,并将相应的用于解密的第一密钥和授权信息安全传输至数据管理方13的第一TEE131,以由第一TEE进行对该明文数据X的使用授权管理。数据提供方12可以与数据提供方11类似地将其本地的明文数据Y的加密数据Y上传给存储模块132,并将相应的第一密钥和授权信息安全传输至第一TEE131。例如在数据使用方14向数据管理方13请求使用明文数据X时,第一TEE可根据与明文数据X对应的授权信息对第二TEE141进行验证,并在验证通过之后,将相应的第一密钥安全传输至第二TEE,并将加密数据X提供给数据使用方,以授权数据使用方14使用该明文数据X,例如在第二TEE141中基于该明文数据X进行模型计算。数据使用方14可通过与上述类似地方法从数据管理方13获取明文数据Y。数据使用方14在例如基于明文数据X和明文数据Y获取计算结果之后,可基于第一TEE安全传输至第二TEE的计算结果密钥对该计算结果进行加密,并将加密的计算结果发送给提供所述计算结果密钥的结果使用方15。
图1及上述描述只是对本说明书实施例的简单概述,并不限定本说明书实施例的范围,例如,在***100中不限于包括两个数据提供方,可包括一个数据提供方,也可包括多个数据提供方,其都与上述类似地将其本地的数据托管给数据管理方13。
图2示出根据本说明书实施例的一种数据处理方法流程图,所述方法在数据提供方执行,所述数据提供方拥有第一明文数据,所述方法包括:
在步骤S202,获取所述第一明文数据的第一加密数据、用于解密所述第一加密数据的第一密钥、以及关于所述第一明文数据的授权信息;
在步骤S204,向数据管理方发送验证请求,其中,所述数据管理方包括第一可信执行环境;
在步骤S206,从所述数据管理方接收认证信息,并基于所述认证信息进行验证,其中,所述认证信息由所述第一可信执行环境生成;以及
在步骤S208,在验证通过的情况中,将所述第一密钥和所述授权信息安全传输至所述第一可信执行环境;以及
在步骤S210,将所述第一加密数据提供给所述数据管理方。
首先,在步骤S202,获取所述第一明文数据的第一加密数据、用于解密所述第一加密数据的第一密钥、以及关于所述第一明文数据的授权信息。
所述第一加密数据可通过对第一明文数据进行对称加密或非对称加密获取。在对称加密的情况中,所述第一密钥即为用于加密所述第一明文数据的密钥,在非对称加密的情况中,所述第一密钥为与用于加密所述第一明文数据的密钥不同的另一密钥。可以理解,本文中的“第一”,“第二”等描述,仅仅为了描述的简单而对相似概念进行区分,并不具有其他限定作用。
在一个实施例中,关于第一明文数据的授权信息包括可使用该第一明文数据的至少一个程序各自的代码哈希值。所述代码哈希值可以为程序的全部代码的哈希值,也可以为程序在已知执行点的内存占有的哈希值。该至少一个程序即为数据提供者允许使用该第一明文数据的至少一个程序。例如,在授权信息包括多个代码哈希值的情况中,表示该第一明文数据可用于多个程序的计算。例如,该第一明文数据为个人在预定时段内的交易数据,该交易数据可用于个人信用评估的第一程序的计算、个人消费倾向的第二程序的计算、特定人群消费水平的第三程序的计算等,则数据提供者(如银行)可在与该交易数据对应的授权信息中包括第一程序、第二程序和第三程序的代码哈希值,以用于分别对第一程序、第二程序和第三程序的授权。
在一个实施例中,关于第一明文数据的授权信息还可以包括与各个代码哈希值分别对应的计算结果访问权限信息。在一个实施例中,所述访问权限信息为第二密钥,该第二密钥由计算结果使用方提供,用于对通过与相应的代码哈希值对应的程序获取的计算结果进行加密。通常,该对计算结果的加密为非对称加密,即,第二密钥是计算结果使用方的公钥,而在对该加密的计算结果解密时,需要用计算结果使用方的私钥进行解密。可以理解,该对计算结果的加密也可以为对称加密。例如,在上述授权信息中,还包括与第一程序的哈希值对应的第二密钥,该第二密钥例如为贷款机构服务对象(如企业或个人)的公钥,由该企业或个人预先传输给银行(数据提供者),在通过第一程序基于该第一明文数据获取相应的计算结果之后,数据使用者(如贷款机构)将使用该公钥对该计算结果进行加密,而所述企业或个人在获取该加密的计算结果之后,将使用其私钥进行解密,从而获取明文的计算结果。可以理解,在所述授权信息中并不是对于任一代码哈希值都包括相应的第二密钥。例如,在上述第三程序的情况中,其基于第一明文数据的计算结果是特定人群的消费水平,该结果并不涉及个人隐私,因此不需要对该计算结果进行加密,因此在授权信息中可不包括与第三程序的代码哈希值对应的第二密钥,即,所述访问权限信息为空信息。
可以理解,所述授权信息不限于包括所述代码哈希值和所述第二密钥,例如,所述授权信息可以包括可使用所述第一明文数据的程序的代码签名、基于预定加密算法的加密数据等等。
在步骤S204,向数据管理方发送验证请求,其中,所述数据管理方包括第一可信执行环境。
在一个实施例中,数据管理方包括授权模块,用于进行对数据使用方的数据使用授权。其中,授权模块为第一可信执行环境,其例如为通过SGX、Trust Zone等技术生成的可信执行环境(TEE,Trusted Execution Environment)。所述验证请求例如用于请求验证该第一TEE是否为可信执行环境、其中是否安装、并正在运行用于进行数据使用授权的程序等等。数据提供方可向第一TEE直接发送验证请求,或者可向数据管理方平台发送验证请求,并由所述平台将验证请求转发给第一TEE。
在步骤S206,从所述数据管理方接收认证信息,并基于所述认证信息进行验证,其中,所述认证信息由所述第一可信执行环境生成。
第一TEE在接收所述验证请求之后,基于其内部机制生成认证信息,并将该认证信息发送给数据提供者以供其验证。所述认证信息例如包括所述第一TEE的签名信息、硬件信息和软件信息等。其中,所述签名信息例如通过第一TEE的硬件密钥生成;所述硬件信息例如包括,各种硬件的指标,比如CPU主频,内存容量等等;所述软件信息包括各个程序的代码哈希值、代码名称、版本、运行日志等。如本领域技术人员所知,TEE可通过内存硬件执行对其中运行程序的“测量”,例如获取该程序的代码哈希值、该程序在特定执行点的内存占有的哈希值等等,并在所述认证信息中包括对所述程序的“测量”信息,由于该“测量”信息由该第一TEE自身实体(内存硬件)执行,而不涉及任何软件、操作***,因此是真实可信的。可以理解,所述认证信息不限于如上所述,例如,所述认证信息不必需包括签名信息、软件信息等,而可以只包括软件信息,以供数据提供方进行对第一TEE中运行程序的验证。
数据提供者在从第一TEE接收认证信息之后,可以基于所述认证信息验证所述第一TEE是否为可信执行环境,例如通过预先获取的第一TEE的硬件公钥验证所述签名信息是否为所述第一TEE的签名信息、验证所述第一TEE的硬件配置是否与预先获取的配置相符等等。第一TEE还可以将认证信息中包括的第一TEE对其中运行程序的“测量”信息与预先获取的用于进行数据使用授权的程序的代码哈希值相比较以进行验证,以确定第一TEE中是否安装并正在运行用于进行数据使用授权的程序。所述代码哈希值例如从由程序发布者提供的代码签名获取,或者从开源的所述程序计算获取。
在本说明书实施例中,基于认证信息的验证过程不限于如上所述,例如,所述认证信息中可能不包括第一TEE的硬件信息、签名信息等,相应地,数据提供方可通过为第一TEE提供技术支持的第三方服务器(如为围圈(Enclave)提供验证服务的Intel服务器)验证第一TEE的签名信息、硬件配置等。
可以理解,对于基于不同技术获取的TEE,其提供的认证信息的具体内容、形式等会有一些差别,然而,其提供的认证都可使得数据使用者能够进行相应的验证,以确定该TEE是否为安全执行环境,和/或确定其中运行的程序是否是预期程序。另外,所述认证信息不限于由第一TEE发送给数据提供方,也可由数据管理方中其它模块从第一TEE获取所述认证信息并发送给数据提供方。
在步骤S208,在验证通过的情况中,将所述第一密钥和所述授权信息安全传输至所述第一可信执行环境。
在通过上述验证确定第一TEE是可信执行环境,并且其可提供数据使用授权服务之后,数据提供者可将自己拥有的数据交给该数据管理方进行托管。具体是,首先,数据提供者将第一密钥和相应的授权信息安全传输至第一TEE。所述安全传输例如为加密传输,通过在传输之前对待传输的数据进行加密,并在传输到接收方之后进行解密以使得接收方获取明文数据,保障了在传输过程中不会被恶意的第三方窃取明文数据,保障了数据传输的安全性。可以理解所述安全传输不限于加密传输,而可以采用本领域技术人员可获取的任意保障数据安全性的传输方式,如通过量子通信的安全传输方式等等。
图3示意示出由数据提供方安全传输至第一TEE的信息A的示意图。如图中所示,由数据提供方安全传输至第一TEE的信息A与上述第一明文数据相对应,包括第一密钥A和授权信息A,其中授权信息A如图中“第一密钥A”下方的黑框所示包括:对应的第一代码哈希值和第二密钥C、对应的第二代码哈希值和第二密钥D、以及第三代码哈希值。其中,第一密钥用于对第一加密数据进行解密以获取第一明文数据。第一代码哈希值、第二代码哈希值和第三代码哈希值例如分别为上述第一程序、第二程序和第三程序的代码哈希值。第二密钥C例如为第一结果使用方C的公钥,即,第一程序基于第一明文数据的计算结果只授权给第一结果使用方C使用。类似地,第二密钥D例如为第二结果使用方D的公钥,即,第二程序基于第一明文数据的计算结果只授权给第二结果使用方D使用。而在上述信息A中并没有与第三代码哈希值对应的公钥,也就是说,第三程序基于第一明文数据的计算结果不涉及隐私数据,不需要进行加密。可以理解,所述授权信息中不限于包括各个所述程序的代码哈希值,而是根据授权的方式不同可包括不同的信息,例如,所述授权信息中可包括各个所述程序的代码签名、加密数据等等。另外,所述第二密钥C/D不限于为相应结果使用方的公钥,在对计算结果的加密方式为对称加密的情况中,所述第二密钥C/D也可以用于对加密计算结果的解密。其中,第二密钥中的“第二”用于与本文中的“第一密钥”相区分。
在步骤S210,将所述第一加密数据提供给所述数据管理方。
在一个实施例中,由数据提供方将存储在本地的第一加密数据发送给数据管理方。在一个实施例中,由数据管理方从数据提供方读取所述第一加密数据。例如,在第一明文数据为例如银行提供的个人交易数据的情况中,数据管理方例如可以基于个人身份标识(例如身份证号码等)、数据标识等读取与该个人相关的第一加密数据。在一个实施例中,由数据提供方将存储第一加密数据的网盘地址发送给数据管理方以使其获取所述第一加密数据。
图4示出根据本说明书实施例的一种数据处理方法流程图,所述方法在数据提供方执行,所述数据提供方拥有第一明文数据,所述方法包括:
在步骤S402,获取关于所述第一明文数据的授权信息;
在步骤S404,向数据管理方发送验证请求,其中,所述数据管理方包括第一可信执行环境;
在步骤S406,从所述数据管理方接收认证信息,并基于所述认证信息进行验证,其中,所述认证信息由所述第一可信执行环境生成;以及
在步骤S408,在验证通过的情况中,将所述第一明文数据和所述授权信息安全传输至所述第一可信执行环境。
图4所示方法与图2所示方法不同在于,数据提供方未对第一明文数据进行加密,因此,在步骤S402,仅获取关于所述第一明文数据的授权信息,而没有获取第一明文数据的加密数据以及第一密钥。数据提供方在如上文所述对第一TEE进行验证之后,在步骤S408,直接将第一明文数据和相关的授权信息一起安全传输至第一TEE,即,不需要对第一明文数据进行加密以获取加密数据(也从而不需数据管理方的存储模块),并且不需要分别提供加密数据、安全传输加密数据的解密密钥。由于第一TEE的安全机制,第一明文数据以明文数据的形式存储与第一TEE中是安全的,而通过安全传输的方式传输第一明文数据,在传输过程中也不会泄露第一明文数据。因此,通过该方式也可以安全地进行对第一明文数据的托管。
图5示出根据本说明书实施例的一种数据处理方法流程图,所述方法在数据管理方执行,所述数据管理方包括第一可信执行环境、并且存储有至少一份加密数据,其中,在所述第一可信执行环境中存储有至少一个第一密钥和与所述至少一个第一密钥分别对应的至少一份授权信息,其中,所述至少一个第一密钥用于分别解密所述至少一份加密数据以分别获取至少一份明文数据,所述至少一份授权信息与所述至少一份明文数据分别对应,且所述授权信息为关于被允许使用相应的明文数据的至少一个程序的信息,所述方法包括:
在步骤S502,接收数据使用方的数据请求,所述数据请求用于请求使用所述至少一份明文数据,其中,所述数据使用方包括第二可信执行环境;
在步骤S504,从所述数据使用方接收认证信息,所述认证信息由所述第二可信执行环境生成;
在步骤S506,在所述第一可信执行环境中,对于每份所述授权信息,基于所述认证信息和该份授权信息进行验证;以及
对于每份所述授权信息,
在步骤S508,在验证通过情况下,由第一可信执行环境将与该份授权信息对应的第一密钥安全传输给第二可信执行环境;以及在步骤S510,将相应的加密数据提供给所述数据使用方。
图6示出数据管理方的存储模块和第一TEE中存储的数据的示意图。如图6所示,存储模块中存储有加密数据X和加密数据Y,其中,加密数据X例如由数据提供方A向数据管理方预先上传,其对应于明文数据X,加密数据Y例如由数据提供方B向数据管理方预先上传,其对应于明文数据Y。可以理解,所述加密数据X/Y不限于存储于存储模块中,例如,加密数据X/Y可存储于第一TEE中、或者可存储于云盘中等等。
第一TEE中存储有信息A和信息B,其中信息A与加密数据X相关,其中包括第一密钥A和授权信息A,信息B与加密数据Y相关,其中包括第一密钥B和授权信息B。其中,第一密钥A用于对明文数据X进行加密和解密,授权信息A为关于明文数据X的授权信息,第二密钥B用于对明文数据Y进行加密和解密,授权信息B为关于明文数据Y的授权信息。其中,授权信息A的示例内容可参考图3所示。图6中虽然只示意示出了两份加密数据和与其分别对应的两份信息,然而,第一TEE中不限于只存储两份信息,而是可以存储与多份加密数据分别对应的多份信息。另外,图6中的信息A和信息B分别对应于不同的数据提供方,本说明书实施例不限于此,信息A和信息B可对应于一个数据提供方,即,数据提供方A与数据提供方B可以为一个数据提供方,也就是说,明文数据X和明文数据Y可由一个数据提供方提供。在上述描述中,加密数据X表示该加密数据是通过对明文数据X进行加密所获取的数据,加密数据Y可同样地解释,信息A、第一密钥A和授权信息A表示其都与数据提供方A相关,信息B、第一密钥B和授权信息B可同样地解释。
下面详细描述图5中的各个步骤。
首先,在步骤S502,接收数据使用方的数据请求,所述数据请求用于请求使用所述至少一份明文数据,其中,所述数据使用方包括第二可信执行环境。
数据使用方例如为信用评估机构,其在对用户进行信用评估时,可向数据管理方请求与该用户相关的例如两份数据,该两份数据例如分别由银行和税务部门向数据管理方预先提供。数据使用方例如可以基于用户身份标识(例如身份证号码等)、数据提供方标识、数据标识等获取与该用户相关的数据。所述数据使用方例如还可以为云计算平台,其例如接收信用评估机构的委托通过模型对用户的信用评估进行计算。
数据使用方包括第二可信执行环境(即第二TEE),在该第二TEE中运行有预定程序(例如第一程序),以用于基于上述明文数据X和明文数据Y进行例如F(X,Y)的计算,从而通过第二TEE的安全机制,在计算过程中不会对外泄露明文数据X和明文数据Y。在一个实施例中,第二TEE与第一TEE位于一个平台中,例如,在支付宝平台中,可同时进行数据的托管、以及对用户进行信用评估,即所述支付宝平台既是数据管理方,也是数据使用方。在该情况中,由于相关的数据使用授权、数据使用都是在第一TEE和第二TEE中进行,即通过硬件对数据隐私进行保护,从而即使数据管理方与数据使用方为同一方,也不影响数据的安全性。在第一TEE和第二TEE在一个平台的情况中,可由第二TEE向第一TEE发送数据使用请求。可以理解,在该情况中,也可以由第二TEE向数据管理方发送数据使用请求、或者由数据使用方向数据管理方或第一TEE发送数据使用请求。
在一个实施例中,第一TEE与第二TEE位于不同的平台中,例如支付宝平台为数据管理方,其包括第一TEE,而云计算平台为数据使用方,云计算平台中包括第二TEE。在第一TEE和第二TEE在不同平台的情况中,可由数据使用方平台向数据管理方平台发送数据使用请求。类似地,也可以由数据使用方平台向第一TEE发送数据使用请求,或者也可由第二TEE向数据管理方平台或第一TEE发送数据使用请求。
数据使用方向数据管理方发送请求,以请求获取数据管理方中的至少一份加密数据对应的至少一份明文数据,即请求获取所述至少一份加密数据及相应的解密密钥(第一密钥)。
在步骤S504,从所述数据使用方接收认证信息,所述认证信息由所述第二可信执行环境生成。
数据使用方可在发送数据请求之后将第二TEE生成的认证信息发送给数据管理方,也可以在数据管理方向数据使用方发送验证请求之后,将由第二TEE生成的认证信息发送给数据管理方。
第二TEE基于内部机制生成认证信息,以供数据管理方进行验证。所述认证信息例如包括所述第二TEE的签名信息、硬件信息和软件信息等。其中,所述签名信息例如通过第二TEE的硬件密钥生成;所述硬件信息例如包括,各种硬件的指标,比如CPU主频,内存容量等等;所述软件信息包括各个程序的代码哈希值、代码名称、版本运行日志等。如本领域技术人员可知,TEE可通过内存硬件执行对其中运行程序的“测量”,例如获取该程序的代码哈希值、该程序在特定执行点的内存占有的哈希值等等,从而在所述认证信息中包括对所述程序的“测量”信息(例如,代码哈希值),由于该“测量”信息由该TEE自身实体(内存硬件)执行,而不涉及任何软件、操作***,因此是真实可信的。可以理解,所述认证信息不限于如上所述,例如,所述认证信息不必需包括签名信息、软件信息等,而可以只包括软件信息,以供第一TEE进行对第二TEE中运行程序的验证。
在一个实施例中,第一TEE与第二TEE位于一个平台中,所述认证信息为平台内(Intra-Platform)认证信息,例如,在SGX技术中,生成文件“REPORT”作为所述平台内认证信息。在一个实施例中,第一TEE与第二TEE位于不同平台中,所述认证信息为平台间(Inter-Platform)认证信息。例如,在SGX技术中,TEE生成文件“QUOTE”作为所述平台间认证信息,以用于进行远程认证(RA,remote attestation)。平台内认证信息和平台间认证信息可具有不同的文件格式,加密方式等。例如,所述平台内认证信息(如REPROT)可采用对称加密方式,所述平台间认证信息(如QUOTE)可采用非对称加密方式等。在一个实施例中,所述认证信息中包括与第二TEE中的运行程序(如第一程序)相关的信息,为了***露运行程序中的模型数据(如参数、算法等),由第二TEE向第一TEE安全传输该认证信息。在计算模型不需要进行保护的情况中,也可由第二TEE或数据使用方向数据管理方发送所述认证信息,并且数据管理方在接收所述认证信息之后将所述认证信息发送给第一TEE。
在步骤S506,在所述第一可信执行环境中,对于每份所述授权信息,基于所述认证信息和该份授权信息进行验证;
第一TEE在获取所述认证信息之后,在其内部通过基于该认证信息和数据使用方请求的至少一份数据各自对应的授权信息进行验证。例如,参考图6,数据使用方请求使用明文数据X和明文数据Y,第一TEE中与明文数据X对应的信息A中的授权信息例如包括可使用明文数据X的各个程序各自的代码哈希值,与明文数据Y对应的信息B中的授权信息例如包括可使用明文数据Y的各个程序各自的代码哈希值。第一TEE需要基于认证信息、信息A和信息B进行验证。第一TEE可以基于所述认证信息验证所述第二TEE是否为可信执行环境,例如通过预先获取的第二TEE的硬件公钥验证所述签名信息是否为所述第二TEE的签名信息、验证所述第二TEE的硬件配置是否与预先获取的配置相符等等。第一TEE还可以基于所述认证信息中包括的第二TEE中运行程序的“测量”哈希值,验证该“测量”哈希值是否与所述信息A中包括的多个代码哈希值中的一个匹配,以确定所述第二TEE中运行的程序是否是可以授权使用所述明文数据X的程序。并类似地,验证该“测量”哈希值是否与所述信息B中包括的多个代码哈希值中的一个匹配。其中,针对各份授权信息的验证可以先后进行、也可以并行进行,本发明对此并不限制。
如上文所述,所述授权信息中不限于包括各个程序的代码哈希值,例如还可以包括各个程序的代码签名、代码加密数据等。例如,在授权信息中为代码签名的情况中,第一TEE可基于代码签名和预先从例如数据提供方获取的相应代码的公钥,获取相应的代码哈希值,以用于上述验证。
在本说明书实施例中,基于认证信息的验证过程不限于如上所述,例如,所述认证信息中可能不包括第二TEE的硬件信息、签名信息等,相应地,数据管理方可通过为第二TEE提供技术支持的第三方服务器(如为围圈(Enclave)提供验证服务的Intel服务器)验证第二TEE的签名信息、硬件配置等。
可以理解,对于基于不同技术获取的TEE,其提供的认证信息的具体内容、形式等会有一些差别,然而,其提供的认证信息都可使得数据使用者能够进行相应的验证,以确定该TEE是否为安全执行环境,和/或确定其中运行的程序是否是可授权的程序。
步骤508-步骤510是针对数据使用方请求的至少一份明文数据对应的每份授权信息执行的步骤,对于每份授权信息,可依次地、或并行地执行步骤508-步骤510。在下面的描述中,描述了针对一份授权信息(例如如图6中所示的授权信息A)执行步骤508-510作为示例。本领域技术人员可以理解,对于所述至少一份授权信息中的其它授权信息,可同样地执行步骤508-510。
在步骤S508,在验证通过的情况中,由第一可信执行环境将与该份授权信息对应的第一密钥安全传输给所述第二可信执行环境。
例如参考图6所示,在基于信息A和认证信息的验证通过之后,也就是说在第一TEE中验证第二TEE是可信执行环境,并且第二TEE中的运行程序的测量代码哈希值是明文数据X对应的授权代码哈希值之后,第一TEE可将第一密钥A安全传输给第二TEE。
在步骤S510,将相应的加密数据提供给所述数据使用方。
在一个实施例中,数据管理方在如上所述将第一密钥A安全传输给数据使用方之后,将其存储模块中存储的加密数据X发送给第二TEE。在一个实施例中,由数据使用方从数据管理方的存储模块中读取加密数据X。例如,在明文数据X为例如银行提供的个人交易数据的情况中,数据使用方例如可以基于个人身份标识(例如身份证号码等)、数据提供方标识(如银行标识)、数据标识等读取与该个人相关的加密数据X。
在一个实施例中,在所述加密数据X由数据管理方存入云盘中的情况中,数据管理方可将加密数据X的下载地址提供给数据使用方,以供其下载。
在一个实施例中,如图3所示,信息A中包括的授权信息A中还可能包括与部分哈希代码值分别对应的结果使用方的第二密钥。例如,授权信息A中包括与第一代码哈希值对应的第二密钥C。在该情况中,在基于授权信息A的验证通过之后,第一TEE还将第二密钥C安全传输给第二TEE,以用于对计算结果进行加密。
图7示出根据本说明书实施例的一种数据处理方法流程图,所述方法在数据管理方执行,所述数据管理方包括第一可信执行环境,其中,在所述第一可信执行环境中存储有至少一份明文数据、以及与所述至少一份明文数据分别对应的至少一份授权信息,其中,所述授权信息为关于被允许使用相应的明文数据的至少一个程序的信息,所述方法包括:
在步骤S702,接收数据使用方的数据请求,所述数据请求用于请求使用所述至少一份明文数据,其中,所述数据使用方包括第二可信执行环境;
在步骤S704,从所述数据使用方接收认证信息,其中,所述认证信息由所述第二可信执行环境生成;
在步骤S706,在所述第一可信执行环境中,对于每份所述授权信息,基于所述认证信息和该份授权信息进行验证;以及
在步骤S708,对于每份所述授权信息,在验证通过的情况中,由第一可信执行环境将所述至少一份明文数据安全传输给所述第二可信执行环境。
图7所示方法与图4所示方法相对应,通过图4所示的方法,使得在所述第一可信执行环境中存储有至少一份明文数据、以及与所述至少一份明文数据分别对应的至少一份授权信息。图7所示方法与图5所示方法不同在于,在验证通过之后,由第一TEE向第二TEE安全传输所述至少一份明文数据,而不需要由数据管理方将至少一份加密数据传输给第二TEE,并由第一TEE向第二TEE安全传输与至少一份加密数据分别对应的第一密钥(解密密钥)。由于,所述至少一份明文数据在第一TEE中、在安全传输过程中、以及在第二TEE中都可以得到很好的保护,因此可保障该方法的安全性。
图8示出根据本说明书实施例的一种数据处理方法流程图,所述方法在数据使用方执行,所述数据使用方包括第二可信执行环境,所述第二可信执行环境中运行有第一程序,所述方法包括:
在步骤S802,向数据管理方发送数据请求,用于请求使用与数据管理方中存储的至少一份加密数据对应的至少一份明文数据,其中,所述数据管理方包括第一可信执行环境,在所述第一可信执行环境中存储有至少一个第一密钥和与所述至少一个第一密钥分别对应的至少一份授权信息,其中,所述至少一个第一密钥用于分别解密所述至少一份加密数据以分别获取所述至少一份明文数据,所述至少一份授权信息与所述至少一份明文数据分别对应,且所述授权信息为关于被允许使用相应的明文数据的至少一个程序的信息;
在步骤S804,向所述数据管理方发送认证信息,以使得所述第一可信执行环境对于每份所述授权信息基于所述认证信息和该份授权信息进行验证,其中,所述认证信息由所述第二可信执行环境生成;
对于每份所述授权信息,在步骤S806,在验证通过的情况中,由所述第二可信执行环境接收从所述第一可信执行环境安全传输的与该份授权信息对应的第一密钥;在步骤S808,从所述数据管理方获取与该份授权信息对应的加密数据;在步骤S810,在所述第二可信执行环境中使用该第一密钥对该加密数据进行解密,以获取相应的明文数据;以及
在步骤S812,在所述第二可信执行环境中通过所述第一程序基于所述至少一份明文数据进行计算,以获取计算结果。
图8所示方法是在数据使用方执行的与图5所示方法相对的方法,数据使用方中包括第二TEE,第二TEE中例如运行有第一程序,第二程序在使用数据进行计算之前,首先从数据管理方请求相应的数据,然后在基于该相应的数据进行模型计算。因此步骤S802-S810的具体描述可参考上文中对步骤S502-S508的相应描述,在此不再赘述。
在步骤S810,在所述第二可信执行环境中使用该第一密钥对该加密数据进行解密,以获取相应的明文数据。例如,第二TEE在如上文所述获取图6所示的第一密钥A、并且从数据管理方的存储模块读取了加密数据X之后,在第二TEE中,可使用第一密钥A对加密数据X进行解密,从而获取明文数据X。类似地,通过使用从数据管理方获取的第二密钥B对第二加密数据Y解密,从而可获取明文数据Y。
在步骤S812,在所述第二可信执行环境中通过所述第一程序基于所述至少一份明文数据进行计算,以获取计算结果。所述程序例如基于数据X和数据Y进行F(X,Y)的计算,其中F(X,Y)对应于特定计算模型,通过在第二TEE中运行所述第一程序,使用F(X,Y)基于X和Y进行计算,从而获取计算结果。
在一个实施例中,如上文所述,对于每份授权信息,在验证通过之后,所述第一TEE还向第二TEE安全传输与代码哈希值对应的用于加密计算结果的密钥,如图3所示的第二密钥C。所述第一程序例如具有第一代码哈希值,其中,所述数据使用者请求的至少一份明文数据对应的每份授权信息中例如包括第一代码哈希值、及与所述第一代码哈希值对应的第二密钥(例如第二密钥C),所述第二密钥用于对所述第一程序的计算结果进行加密、由与该计算结果对应的计算结果使用方提供。所述方法还包括,对于每份所述授权信息,在验证通过的情况中,由所述第二可信执行环境接收从所述第一可信执行环境安全传输的与该授权信息对应的第二密钥;在获取所述计算结果之后,在所述第二可信执行环境中确定与各份所述授权信息分别对应的各个第二密钥是否一致,例如,确定从第一TEE接收的对应于加密数据X的第二密钥与对应于加密数据Y的第二密钥是否一致;以及,在各个所述第二密钥一致的情况中,在所述第二可信执行环境中使用所述第二密钥对所述计算结果进行加密,以获取加密计算结果,即,在所述第二密钥都是第二密钥C的情况中,使用第二密钥C对计算结果进行加密。可以理解,在上述情况中,第二密钥可以为非对称加密的加密密钥,即公钥,当将该加密的计算结果发送给结果使用方C之后,结果使用方C将使用其私钥C对该加密的计算结果进行解密。然而,本实施例不限于此,例如,所述第二密钥可以为对称加密的密钥,即,结果使用方C在解密时也使用该第二密钥进行解密。
在获取加密的计算结果之后,可由第二TEE或数据使用方平台将该加密的计算结果发送给相应的结果使用方,或者可由相应的结果使用方从所述平台读取所述加密的计算结果。
图9示出根据本说明书实施例的一种数据处理方法流程图,所述方法在数据使用方执行,所述数据使用方包括第二可信执行环境,所述方法包括:
在步骤S902,向数据管理方发送数据请求,用于请求使用数据管理方中存储的至少一份明文数据,其中,所述数据管理方包括第一可信执行环境,在所述第一可信执行环境中存储有所述至少一份明文数据和与所述至少一份明文数据分别对应的至少一份授权信息,其中,所述授权信息为关于被允许使用相应的明文数据的至少一个程序的信息;
在步骤S904,向所述数据管理方发送认证信息,以使得所述第一可信执行环境对于每份所述授权信息基于所述认证信息和该份授权信息进行验证,其中,所述认证信息由所述第二可信执行环境生成;
在步骤S906,对于每份所述授权信息,在验证通过的情况中,由所述第二可信执行环境接收从所述第一可信执行环境安全传输的与该份授权信息对应的明文数据;以及
在步骤S908,在所述第二可信执行环境中通过所述第一程序基于所述至少一份明文数据进行计算,以获取计算结果。
图9所示方法与图7所示方法相对,其与图8所示方法不同在于,在步骤S906,在验证通过的情况中,接收从所述第一可信执行环境安全传输的所述至少一份明文数据,即不是分开获取加密数据和相应的解密密钥,从而不需要解密的步骤,从而可以在步骤S908,直接通过所述第一程序基于所述至少一份明文数据进行计算,获取计算结果。
图10示出根据本说明书实施例的数据处理方法中数据提供方、数据管理方、数据使用方之间的交互图。该三方交互中包括两个阶段,第一阶段为数据提供方与数据管理方之间的交互,包括:在步骤1001,数据提供方获取第一明文数据的第一加密数据、用于解密第一加密数据的第一密钥、以及关于第一明文数据的授权信息;在步骤1002,数据提供方向数据管理方发送验证请求;在步骤1003,数据管理方在接收验证请求之后向数据提供方发送认证信息,其中,所述认证信息由所述第一可信执行环境生成;在步骤1004,数据管理方基于认证信息进行验证;以及在步骤1005,在验证通过之后,数据管理方将所述第一密钥和授权信息安全传输至第一TEE,将第一加密数据提供给数据管理方。通过上述步骤,数据提供方可将己方的数据托管给数据管理方,以通过数据管理方进行对第三方使用第一明文数据的授权,从而不需要在数据使用过程中实时在线。
第二阶段为数据管理方与数据使用方之间的交互,包括以下步骤:在步骤1006,数据使用方向数据管理方发送数据请求,以请求使用所述数据管理方中的至少一份明文数据;在步骤1007,数据使用方向数据管理方发送认证信息,所述认证信息由数据使用方中的第二TEE生成;在步骤1008,在数据管理方的第一TEE中基于所述认证信息和第一TEE中已有的相关授权信息进行验证;在步骤1009,对于每份授权信息,在验证通过之后,由第一可信执行环境将与该份授权信息对应的第一密钥安全传输给所述第二可信执行环境,并且,数据管理方向数据使用方提供相应的加密数据;在步骤1010,对于每份授权信息,数据使用方在第二TEE中使用相应的密钥对相应的加密数据进行解密,获取相应的明文数据;在步骤1011,数据使用方在第二TEE中基于所述至少一份明文数据进行模型计算,从而获取计算结果;以及在步骤1012,数据使用方在第二TEE中使用授权信息中包括的第二密钥对计算结果加密。在获取加密的计算结果之后,数据使用方可将该加密结果发送给结果使用方,或者也可以由结果使用方主动从数据使用方读取所述加密结果。
图11示出根据本说明书实施例的一种数据处理装置1100,所述装置在数据提供方实施,所述数据提供方拥有第一明文数据,所述装置包括:
获取单元111,配置为,获取所述第一明文数据的第一加密数据、用于解密所述第一加密数据的第一密钥、以及关于所述第一明文数据的授权信息;
发送单元112,配置为,向数据管理方发送验证请求,其中,所述数据管理方包括第一可信执行环境;
验证单元113,配置为,从所述数据管理方接收认证信息,并基于所述认证信息进行验证,其中,所述认证信息由所述第一可信执行环境生成;
安全传输单元114,配置为,在验证通过的情况中,将所述第一密钥和所述授权信息安全传输至所述第一可信执行环境;以及
提供单元115,配置为,将所述第一加密数据提供给所述数据管理方。
在一个实施例中,所述验证单元113还配置为,基于所述认证信息验证:所述第一可信执行环境中是否安装有并正在执行用于数据使用授权的程序。
图12示出根据本说明书实施例的一种数据处理装置1200,所述装置在数据提供方实施,所述数据提供方拥有第一明文数据,所述装置包括:
获取单元121,配置为,获取关于所述第一明文数据的授权信息;
发送单元122,配置为,向数据管理方发送验证请求,其中,所述数据管理方包括第一可信执行环境;
验证单元123,配置为,从所述数据管理方接收认证信息,并基于所述认证信息进行验证,其中,所述认证信息由所述第一可信执行环境生成;以及
安全传输单元124,配置为,在验证通过的情况中,将所述第一明文数据和所述授权信息安全传输至所述第一可信执行环境。
图13示出根据本说明书实施例的一种数据处理装置1300,所述装置在数据管理方实施,所述数据管理方包括第一可信执行环境、并且存储有至少一份加密数据,其中,在所述第一可信执行环境中存储有至少一个第一密钥和与所述至少一个第一密钥分别对应的至少一份授权信息,其中,所述至少一个第一密钥用于分别解密所述至少一份加密数据以分别获取至少一份明文数据,所述至少一份授权信息与所述至少一份明文数据分别对应,且所述授权信息为关于被允许使用相应的明文数据的至少一个程序的信息,所述装置包括:
第一接收单元131,配置为,接收数据使用方的数据请求,所述数据请求用于请求使用所述至少一份明文数据,其中,所述数据使用方包括第二可信执行环境;
第二接收单元132,配置为,从所述数据使用方接收认证信息,所述认证信息由所述第二可信执行环境生成;
验证单元133,配置为,在所述第一可信执行环境中,对于每份所述授权信息,基于所述认证信息和该份授权信息进行验证;以及
针对每份授权信息的
第一安全传输单元134,配置为,在验证通过的情况中,由第一可信执行环境将与该份授权信息对应的第一密钥安全传输给所述第二可信执行环境;以及
提供单元135,配置为,将相应的加密数据提供给所述数据使用方。
在一个实施例中,所述验证单元133还配置为,由所述第一可信执行环境接收从所述第二可信执行环境安全传输的认证信息。
在一个实施例中,所述认证信息中包括所述第二可信执行环境中安装并正在运行的第一程序的第一代码哈希值,其中,所述每份授权信息包括所述至少一个程序各自的代码哈希值,其中,所述验证单元133还配置为,对于每份授权信息,验证所述第一代码哈希值是否为该份授权信息中包括的一个代码哈希值。
在一个实施例中,每份所述授权信息中包括第一代码哈希值、和与所述第一代码哈希值对应的第二密钥,所述第二密钥用于对所述第一程序的计算结果进行加密、由与该计算结果对应的计算结果使用方提供,其中,所述装置还包括第二安全传输单元136,配置为,对于每份所述授权信息,在验证通过的情况中,还由所述第一可信执行环境将所述第二密钥安全传输给所述第二可信执行环境。
图14示出根据本说明书实施例的一种数据处理装置1400,所述装置在数据管理方实施,所述数据管理方包括第一可信执行环境,其中,在所述第一可信执行环境中存储有至少一份明文数据、以及与所述至少一份明文数据分别对应的至少一份授权信息,其中,所述授权信息为关于被允许使用相应的明文数据的至少一个程序的信息,所述装置包括:
第一接收单元141,配置为,接收数据使用方的数据请求,所述数据请求用于请求使用所述至少一份明文数据,其中,所述数据使用方包括第二可信执行环境;
第二接收单元142,配置为,从所述数据使用方接收认证信息,其中,所述认证信息由所述第二可信执行环境生成;
验证单元143,配置为,在所述第一可信执行环境中,对于每份所述授权信息,基于所述认证信息和该份授权信息进行验证;以及
针对每份所述授权信息的安全传输单元144,配置为,在验证通过的情况中,由第一可信执行环境将与该份授权信息对应的明文数据安全传输给所述第二可信执行环境。
图15示出根据本说明书实施例的一种数据处理装置1500,所述装置在数据使用方实施,所述数据使用方包括第二可信执行环境,所述第二可信执行环境中运行有第一程序,所述装置包括:
第一发送单元1501,配置为,向数据管理方发送数据请求,用于请求使用与数据管理方中存储的至少一份加密数据对应的至少一份明文数据,其中,所述数据管理方包括第一可信执行环境,在所述第一可信执行环境中存储有至少一个第一密钥和与所述至少一个第一密钥分别对应的至少一份授权信息,其中,所述至少一个第一密钥用于分别解密所述至少一份加密数据以分别获取所述至少一份明文数据,所述至少一份授权信息与所述至少一份明文数据分别对应,且所述授权信息为关于被允许使用相应的明文数据的至少一个程序的信息;
第二发送单元1502,配置为,向所述数据管理方发送认证信息,以使得所述第一可信执行环境对于每份所述授权信息基于所述认证信息和该份授权信息进行验证,其中,所述认证信息由所述第二可信执行环境生成;
针对每份所述授权信息的
第一接收单元1503,配置为,在验证通过的情况中,由所述第二可信执行环境接收从所述第一可信执行环境安全传输的与该份授权信息对应的第一密钥;获取单元1504,配置为,从所述数据管理方获取与该份授权信息对应的加密数据;解密单元1505,配置为,在所述第二可信执行环境中使用该第一密钥对该加密数据进行解密,以获取相应的明文数据;以及
计算单元1506,配置为,在所述第二可信执行环境中通过所述第一程序基于所述至少一份明文数据进行计算,以获取计算结果。
在一个实施例中,所述第一程序具有第一代码哈希值,其中,每份授权信息中包括第一代码哈希值、及与第一代码哈希值对应的第二密钥,所述第二密钥用于对所述第一程序的计算结果进行加密、由与该计算结果对应的计算结果使用方提供,所述装置还包括,
针对每份所述授权信息的
第二接收单元1507,配置为,在验证通过的情况中,由所述第二可信执行环境接收从所述第一可信执行环境安全传输的与该份授权信息对应的第二密钥;
确定单元1508,配置为,在获取所述计算结果之后,在所述第二可信执行环境中确定与各份所述授权信息分别对应的各个第二密钥是否一致,以及
加密单元1509,配置为,在各个所述第二密钥一致的情况中,在所述第二可信执行环境中使用所述第二密钥对所述计算结果进行加密,以获取加密计算结果。
在一个实施例中,所述装置还包括第三发送单元1510,配置为,在获取加密计算结果之后,将所述加密计算结果发送给所述计算结果使用方。
在一个实施例中,所述获取单元1504还配置为,从所述数据管理方读取与该份授权信息对应的加密数据。
图16示出根据本说明书实施例的一种数据处理装置1600,所述装置在数据使用方实施,所述数据使用方包括第二可信执行环境,所述第二可信执行环境中运行有第一程序,所述装置包括:
第一发送单元161,配置为,向数据管理方发送数据请求,用于请求使用数据管理方中存储的至少一份明文数据,其中,所述数据管理方包括第一可信执行环境,在所述第一可信执行环境中存储有所述至少一份明文数据和与所述至少一份明文数据分别对应的至少一份授权信息,其中,所述授权信息为关于被允许使用相应的明文数据的至少一个程序的信息;
第二发送单元162,配置为,向所述数据管理方发送认证信息,以使得所述第一可信执行环境对于每份所述授权信息基于所述认证信息和该份授权信息进行验证,其中,所述认证信息由所述第二可信执行环境生成;
针对每份所述授权信息的第一接收单元163,配置为,对于每份所述授权信息,在验证通过的情况中,由所述第二可信执行环境接收从所述第一可信执行环境安全传输的与该份授权信息对应的明文数据;以及
计算单元164,配置为,在所述第二可信执行环境中通过所述第一程序基于所述至少一份明文数据进行计算,以获取计算结果。
本说明书另一方面提供一种计算设备,包括存储器和处理器,其特征在于,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现上述任一项方法。
在根据本说明书实施例的数据处理方案中,利用TEE、RA技术搭建了数据提供方可信赖的数据授权***,通过技术层面而非第三方信赖来保证中间数据授权平台不会窥探、篡改数据提供方的数据,同时运行速度快,支持任何代码可表示的融合计算,更有效率、更加通用;为数据授权***、数据提供方以及数据使用方提出了一整套协议流程,通过该流程可以保证数据的隐私性,多方数据的合规使用;在设计上达成了可以针对数据使用行为授权、可选择性地对数数据融合的输出结果进行访问控制两个特性,以满足实际多方数据融合的通用入口、出口权限控制;数据授权***作为中间层,为数据提供方和数据使用方解耦,数据提供方一次上传即可,数据使用方多次使用不需要数据提供方重复上传,在重复使用数据时可以有效提升数据访问效率;数据授权***在设计上允许数据提供方事先离线上传好即可,数据提供方无需部署数据提供服务来实时配合融合业务传输数据,提升易用性。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于***实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本领域普通技术人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执轨道,取决于技术方案的特定应用和设计约束条件。本领域普通技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、处理器执轨道的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (41)

1.一种数据处理方法,所述方法在数据提供方执行,所述数据提供方拥有第一明文数据,所述方法包括:
获取所述第一明文数据的第一加密数据、用于解密所述第一加密数据的第一密钥、以及关于所述第一明文数据的授权信息;
向数据管理方发送验证请求,其中,所述数据管理方包括第一可信执行环境;
从所述数据管理方接收认证信息,并基于所述认证信息进行验证,其中,所述认证信息由所述第一可信执行环境生成;
在验证通过的情况中,将所述第一密钥和所述授权信息安全传输至所述第一可信执行环境;以及
将所述第一加密数据提供给所述数据管理方。
2.一种数据处理方法,所述方法在数据提供方执行,所述数据提供方拥有第一明文数据,所述方法包括:
获取关于所述第一明文数据的授权信息;
向数据管理方发送验证请求,其中,所述数据管理方包括第一可信执行环境;
从所述数据管理方接收认证信息,并基于所述认证信息进行验证,其中,所述认证信息由所述第一可信执行环境生成;以及
在验证通过的情况中,将所述第一明文数据和所述授权信息安全传输至所述第一可信执行环境。
3.根据权利要求1或2所述的方法,其中,所述授权信息包括至少一个代码哈希值,所述至少一个代码哈希值分别为被允许使用所述第一明文数据的至少一个程序各自的代码哈希值。
4.根据权利要求3所述的方法,其中,所述授权信息包括与所述至少一个代码哈希值分别对应的至少一个访问权限信息,所述访问权限信息为关于相应程序的计算结果的信息。
5.根据权利要求4所述的方法,其中,所述访问权限信息为第二密钥,所述第二密钥用于加密相应的计算结果、由与该计算结果对应的计算结果使用方提供。
6.根据权利要求4所述的方法,其中,所述访问权限信息为空信息。
7.根据权利要求1或2所述的方法,其中,基于所述认证信息进行验证包括,基于所述认证信息验证:所述第一可信执行环境中是否安装有并正在执行用于数据使用授权的程序。
8.根据权利要求1或2所述的方法,其中,所述安全传输为加密传输。
9.一种数据处理方法,所述方法在数据管理方执行,所述数据管理方包括第一可信执行环境、并且存储有至少一份加密数据,其中,在所述第一可信执行环境中存储有至少一个第一密钥和与所述至少一个第一密钥分别对应的至少一份授权信息,其中,所述至少一个第一密钥用于分别解密所述至少一份加密数据以分别获取至少一份明文数据,所述至少一份授权信息与所述至少一份明文数据分别对应,且所述授权信息为关于被允许使用相应的明文数据的至少一个程序的信息,所述方法包括:
接收数据使用方的数据请求,所述数据请求用于请求使用所述至少一份明文数据,其中,所述数据使用方包括第二可信执行环境;
从所述数据使用方接收认证信息,所述认证信息由所述第二可信执行环境生成;
在所述第一可信执行环境中,对于每份所述授权信息,基于所述认证信息和该份授权信息进行验证;以及
对于每份所述授权信息,在验证通过的情况中,由第一可信执行环境将与该份授权信息对应的第一密钥安全传输给所述第二可信执行环境,以及将相应的加密数据提供给所述数据使用方。
10.一种数据处理方法,所述方法在数据管理方执行,所述数据管理方包括第一可信执行环境,其中,在所述第一可信执行环境中存储有至少一份明文数据、以及与所述至少一份明文数据分别对应的至少一份授权信息,其中,所述授权信息为关于被允许使用相应的明文数据的至少一个程序的信息,所述方法包括:
接收数据使用方的数据请求,所述数据请求用于请求使用所述至少一份明文数据,其中,所述数据使用方包括第二可信执行环境;
从所述数据使用方接收认证信息,其中,所述认证信息由所述第二可信执行环境生成;
在所述第一可信执行环境中,对于每份所述授权信息,基于所述认证信息和该份授权信息进行验证;以及
对于每份所述授权信息,在验证通过的情况中,由第一可信执行环境将与该份授权信息对应的明文数据安全传输给所述第二可信执行环境。
11.根据权利要求9或10所述的方法,其中所述第一可信执行环境与所述第二可信执行环境位于一个平台、或不同的平台中。
12.根据权利要求9或10所述的方法,其中,从所述数据使用方接收认证信息包括,由所述第一可信执行环境接收从所述第二可信执行环境安全传输的认证信息。
13.根据权利要求9所述的方法,其中,所述认证信息中包括所述第二可信执行环境中安装并正在运行的第一程序的第一代码哈希值,其中,所述每份授权信息包括所述至少一个程序各自的代码哈希值,其中,对于每份所述授权信息,基于所述认证信息和该份授权信息进行验证包括,对于每份授权信息,验证所述第一代码哈希值是否为该份授权信息中包括的一个代码哈希值。
14.根据权利要求13所述的方法,其中,每份所述授权信息中包括第一代码哈希值、和与所述第一代码哈希值对应的第二密钥,所述第二密钥用于对所述第一程序的计算结果进行加密、由与该计算结果对应的计算结果使用方提供,其中,所述方法还包括,对于每份所述授权信息,在验证通过的情况中,还由所述第一可信执行环境将所述第二密钥安全传输给所述第二可信执行环境。
15.根据权利要求9所述的方法,其中,所述数据管理方还包括数据存储模块,其中,所述至少一份加密数据被存储在所述数据存储模块中。
16.一种数据处理方法,所述方法在数据使用方执行,所述数据使用方包括第二可信执行环境,所述第二可信执行环境中运行有第一程序,所述方法包括:
向数据管理方发送数据请求,用于请求使用与数据管理方中存储的至少一份加密数据对应的至少一份明文数据,其中,所述数据管理方包括第一可信执行环境,在所述第一可信执行环境中存储有至少一个第一密钥和与所述至少一个第一密钥分别对应的至少一份授权信息,其中,所述至少一个第一密钥用于分别解密所述至少一份加密数据以分别获取所述至少一份明文数据,所述至少一份授权信息与所述至少一份明文数据分别对应,且所述授权信息为关于被允许使用相应的明文数据的至少一个程序的信息;
向所述数据管理方发送认证信息,以使得所述第一可信执行环境对于每份所述授权信息基于所述认证信息和该份授权信息进行验证,其中,所述认证信息由所述第二可信执行环境生成;
对于每份所述授权信息,在验证通过的情况中,由所述第二可信执行环境接收从所述第一可信执行环境安全传输的与该份授权信息对应的第一密钥;从所述数据管理方获取与该份授权信息对应的加密数据;在所述第二可信执行环境中使用该第一密钥对该加密数据进行解密,以获取相应的明文数据;以及
在所述第二可信执行环境中通过所述第一程序基于所述至少一份明文数据进行计算,以获取计算结果。
17.一种数据处理方法,所述方法在数据使用方执行,所述数据使用方包括第二可信执行环境,所述第二可信执行环境中运行有第一程序,所述方法包括:
向数据管理方发送数据请求,用于请求使用数据管理方中存储的至少一份明文数据,其中,所述数据管理方包括第一可信执行环境,在所述第一可信执行环境中存储有所述至少一份明文数据和与所述至少一份明文数据分别对应的至少一份授权信息,其中,所述授权信息为关于被允许使用相应的明文数据的至少一个程序的信息;
向所述数据管理方发送认证信息,以使得所述第一可信执行环境对于每份所述授权信息基于所述认证信息和该份授权信息进行验证,其中,所述认证信息由所述第二可信执行环境生成;
对于每份所述授权信息,在验证通过的情况中,由所述第二可信执行环境接收从所述第一可信执行环境安全传输的与该份授权信息对应的明文数据;以及
在所述第二可信执行环境中通过所述第一程序基于所述至少一份明文数据进行计算,以获取计算结果。
18.根据权利要求16或17所述的方法,其中,所述第一程序具有第一代码哈希值,其中,每份授权信息中包括第一代码哈希值、及与第一代码哈希值对应的第二密钥,所述第二密钥用于对所述第一程序的计算结果进行加密、由与该计算结果对应的计算结果使用方提供,所述方法还包括,
对于每份所述授权信息,在验证通过的情况中,由所述第二可信执行环境接收从所述第一可信执行环境安全传输的与该份授权信息对应的第二密钥;
在获取所述计算结果之后,在所述第二可信执行环境中确定与各份所述授权信息分别对应的各个第二密钥是否一致;以及
在各个所述第二密钥一致的情况中,在所述第二可信执行环境中使用所述第二密钥对所述计算结果进行加密,以获取加密计算结果。
19.根据权利要求18所述的方法,还包括,在获取加密计算结果之后,将所述加密计算结果发送给所述计算结果使用方。
20.根据权利要求16所述的方法,其中,从所述数据管理方获取与该份授权信息对应的加密数据包括,从所述数据管理方读取与该份授权信息对应的加密数据。
21.一种数据处理装置,所述装置在数据提供方实施,所述数据提供方拥有第一明文数据,所述装置包括:
获取单元,配置为,获取所述第一明文数据的第一加密数据、用于解密所述第一加密数据的第一密钥、以及关于所述第一明文数据的授权信息;
发送单元,配置为,向数据管理方发送验证请求,其中,所述数据管理方包括第一可信执行环境;
验证单元,配置为,从所述数据管理方接收认证信息,并基于所述认证信息进行验证,其中,所述认证信息由所述第一可信执行环境生成;
安全传输单元,配置为,在验证通过的情况中,将所述第一密钥和所述授权信息安全传输至所述第一可信执行环境;以及
提供单元,配置为,将所述第一加密数据提供给所述数据管理方。
22.一种数据处理装置,所述装置在数据提供方实施,所述数据提供方拥有第一明文数据,所述装置包括:
获取单元,配置为,获取关于所述第一明文数据的授权信息;
发送单元,配置为,向数据管理方发送验证请求,其中,所述数据管理方包括第一可信执行环境;
验证单元,配置为,从所述数据管理方接收认证信息,并基于所述认证信息进行验证,其中,所述认证信息由所述第一可信执行环境生成;以及
安全传输单元,配置为,在验证通过的情况中,将所述第一明文数据和所述授权信息安全传输至所述第一可信执行环境。
23.根据权利要求21或22所述的装置,其中,所述授权信息包括至少一个代码哈希值,所述至少一个代码哈希值分别为被允许使用所述第一明文数据的至少一个程序各自的代码哈希值。
24.根据权利要求23所述的装置,其中,所述授权信息包括与所述至少一个代码哈希值分别对应的至少一个访问权限信息,所述访问权限信息为关于相应程序的计算结果的信息。
25.根据权利要求24所述的装置,其中,所述访问权限信息为第二密钥,所述第二密钥用于加密相应的计算结果、由与该计算结果对应的计算结果使用方提供。
26.根据权利要求24所述的装置,其中,所述访问权限信息为空信息。
27.根据权利要求21或22所述的装置,其中,所述验证单元还配置为,基于所述认证信息验证:所述第一可信执行环境中是否安装有并正在执行用于数据使用授权的程序。
28.根据权利要求21或22所述的装置,其中,所述安全传输为加密传输。
29.一种数据处理装置,所述装置在数据管理方实施,所述数据管理方包括第一可信执行环境、并且存储有至少一份加密数据,其中,在所述第一可信执行环境中存储有至少一个第一密钥和与所述至少一个第一密钥分别对应的至少一份授权信息,其中,所述至少一个第一密钥用于分别解密所述至少一份加密数据以分别获取至少一份明文数据,所述至少一份授权信息与所述至少一份明文数据分别对应,且所述授权信息为关于被允许使用相应的明文数据的至少一个程序的信息,所述装置包括:
第一接收单元,配置为,接收数据使用方的数据请求,所述数据请求用于请求使用所述至少一份明文数据,其中,所述数据使用方包括第二可信执行环境;
第二接收单元,配置为,从所述数据使用方接收认证信息,所述认证信息由所述第二可信执行环境生成;
验证单元,配置为,在所述第一可信执行环境中,对于每份所述授权信息,基于所述认证信息和该份授权信息进行验证;以及
针对每份授权信息的,第一安全传输单元,配置为,在验证通过的情况中,由第一可信执行环境将与该份授权信息对应的第一密钥安全传输给所述第二可信执行环境;以及提供单元,配置为,将相应的加密数据提供给所述数据使用方。
30.一种数据处理装置,所述装置在数据管理方实施,所述数据管理方包括第一可信执行环境,其中,在所述第一可信执行环境中存储有至少一份明文数据、以及与所述至少一份明文数据分别对应的至少一份授权信息,其中,所述授权信息为关于被允许使用相应的明文数据的至少一个程序的信息,所述装置包括:
第一接收单元,配置为,接收数据使用方的数据请求,所述数据请求用于请求使用所述至少一份明文数据,其中,所述数据使用方包括第二可信执行环境;
第二接收单元,配置为,从所述数据使用方接收认证信息,其中,所述认证信息由所述第二可信执行环境生成;
验证单元,配置为,在所述第一可信执行环境中,对于每份所述授权信息,基于所述认证信息和该份授权信息进行验证;以及
针对每份所述授权信息的安全传输单元,配置为,在验证通过的情况中,由第一可信执行环境将与该份授权信息对应的明文数据安全传输给所述第二可信执行环境。
31.根据权利要求29或30所述的装置,其中所述第一可信执行环境与所述第二可信执行环境位于一个平台、或不同的平台中。
32.根据权利要求29或30所述的装置,其中,所述验证单元还配置为,由所述第一可信执行环境接收从所述第二可信执行环境安全传输的认证信息。
33.根据权利要求29所述的装置,其中,所述认证信息中包括所述第二可信执行环境中安装并正在运行的第一程序的第一代码哈希值,其中,所述每份授权信息包括所述至少一个程序各自的代码哈希值,其中,所述验证单元还配置为,对于每份授权信息,验证所述第一代码哈希值是否为该份授权信息中包括的一个代码哈希值。
34.根据权利要求33所述的装置,其中,每份所述授权信息中包括第一代码哈希值、和与所述第一代码哈希值对应的第二密钥,所述第二密钥用于对所述第一程序的计算结果进行加密、由与该计算结果对应的计算结果使用方提供,其中,所述装置还包括第二安全传输单元,配置为,对于每份所述授权信息,在验证通过的情况中,还由所述第一可信执行环境将所述第二密钥安全传输给所述第二可信执行环境。
35.根据权利要求29所述的装置,其中,所述数据管理方还包括数据存储模块,其中,所述多个加密数据被存储在所述数据存储模块中。
36.一种数据处理装置,所述装置在数据使用方实施,所述数据使用方包括第二可信执行环境,所述第二可信执行环境中运行有第一程序,所述装置包括:
第一发送单元,配置为,向数据管理方发送数据请求,用于请求使用与数据管理方中存储的至少一份加密数据对应的至少一份明文数据,其中,所述数据管理方包括第一可信执行环境,在所述第一可信执行环境中存储有至少一个第一密钥和与所述至少一个第一密钥分别对应的至少一份授权信息,其中,所述至少一个第一密钥用于分别解密所述至少一份加密数据以分别获取所述至少一份明文数据,所述至少一份授权信息与所述至少一份明文数据分别对应,且所述授权信息为关于被允许使用相应的明文数据的至少一个程序的信息;
第二发送单元,配置为,向所述数据管理方发送认证信息,以使得所述第一可信执行环境对于每份所述授权信息基于所述认证信息和该份授权信息进行验证,其中,所述认证信息由所述第二可信执行环境生成;
针对每份所述授权信息的,第一接收单元,配置为,在验证通过的情况中,由所述第二可信执行环境接收从所述第一可信执行环境安全传输的与该份授权信息对应的第一密钥;获取单元,配置为,从所述数据管理方获取与该份授权信息对应的加密数据;解密单元,配置为,在所述第二可信执行环境中使用该第一密钥对该加密数据进行解密,以获取相应的明文数据;以及
计算单元,配置为,在所述第二可信执行环境中通过所述第一程序基于所述至少一份明文数据进行计算,以获取计算结果。
37.一种数据处理装置,所述装置在数据使用方实施,所述数据使用方包括第二可信执行环境,所述第二可信执行环境中运行有第一程序,所述装置包括:
第一发送单元,配置为,向数据管理方发送数据请求,用于请求使用数据管理方中存储的至少一份明文数据,其中,所述数据管理方包括第一可信执行环境,在所述第一可信执行环境中存储有所述至少一份明文数据和与所述至少一份明文数据分别对应的至少一份授权信息,其中,所述授权信息为关于被允许使用相应的明文数据的至少一个程序的信息;
第二发送单元,配置为,向所述数据管理方发送认证信息,以使得所述第一可信执行环境对于每份所述授权信息基于所述认证信息和该份授权信息进行验证,其中,所述认证信息由所述第二可信执行环境生成;
针对每份所述授权信息的第一接收单元,配置为,对于每份所述授权信息,在验证通过的情况中,由所述第二可信执行环境接收从所述第一可信执行环境安全传输的与该份授权信息对应的明文数据;以及
计算单元,配置为,在所述第二可信执行环境中通过所述第一程序基于所述至少一份明文数据进行计算,以获取计算结果。
38.根据权利要求36或37所述的装置,其中,所述第一程序具有第一代码哈希值,其中,每份授权信息中包括第一代码哈希值、及与第一代码哈希值对应的第二密钥,所述第二密钥用于对所述第一程序的计算结果进行加密、由与该计算结果对应的计算结果使用方提供,所述装置还包括,
针对每份所述授权信息的第二接收单元,配置为,在验证通过的情况中,由所述第二可信执行环境接收从所述第一可信执行环境安全传输的与该份授权信息对应的第二密钥;
确定单元,配置为,在获取所述计算结果之后,在所述第二可信执行环境中确定与各份所述授权信息分别对应的各个第二密钥是否一致,以及
加密单元,配置为,在各个所述第二密钥一致的情况中,在所述第二可信执行环境中使用所述第二密钥对所述计算结果进行加密,以获取加密计算结果。
39.根据权利要求38所述的装置,还包括第三发送单元,配置为,在获取加密计算结果之后,将所述加密计算结果发送给所述计算结果使用方。
40.根据权利要求36所述的装置,其中,所述获取单元还配置为,从所述数据管理方读取与该份授权信息对应的加密数据。
41.一种计算设备,包括存储器和处理器,其特征在于,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现权利要求1-20中任一项所述的方法。
CN201811521025.0A 2018-12-12 2018-12-12 一种数据处理方法和装置 Active CN110011956B (zh)

Priority Applications (6)

Application Number Priority Date Filing Date Title
CN201811521025.0A CN110011956B (zh) 2018-12-12 2018-12-12 一种数据处理方法和装置
TW108133964A TWI709314B (zh) 2018-12-12 2019-09-20 資料處理方法和裝置
SG11202100822YA SG11202100822YA (en) 2018-12-12 2019-10-22 Data Processing Method And Apparatus
PCT/CN2019/112591 WO2020119258A1 (zh) 2018-12-12 2019-10-22 一种数据处理方法和装置
EP19896220.1A EP3813324B1 (en) 2018-12-12 2019-10-22 Data processing method and device
US17/159,553 US11038673B2 (en) 2018-12-12 2021-01-27 Data processing method and apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811521025.0A CN110011956B (zh) 2018-12-12 2018-12-12 一种数据处理方法和装置

Publications (2)

Publication Number Publication Date
CN110011956A true CN110011956A (zh) 2019-07-12
CN110011956B CN110011956B (zh) 2020-07-31

Family

ID=67165116

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811521025.0A Active CN110011956B (zh) 2018-12-12 2018-12-12 一种数据处理方法和装置

Country Status (6)

Country Link
US (1) US11038673B2 (zh)
EP (1) EP3813324B1 (zh)
CN (1) CN110011956B (zh)
SG (1) SG11202100822YA (zh)
TW (1) TWI709314B (zh)
WO (1) WO2020119258A1 (zh)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110737905A (zh) * 2019-09-19 2020-01-31 深圳市先河***技术有限公司 数据授权方法、数据授权装置及计算机存储介质
CN111079152A (zh) * 2019-12-13 2020-04-28 支付宝(杭州)信息技术有限公司 一种模型部署方法、装置及设备
CN111625815A (zh) * 2020-05-26 2020-09-04 牛津(海南)区块链研究院有限公司 一种基于可信执行环境的数据交易方法及装置
WO2021073170A1 (zh) * 2019-10-18 2021-04-22 支付宝(杭州)信息技术有限公司 数据提供和融合的方法及装置
CN112702740A (zh) * 2020-12-24 2021-04-23 国网浙江省电力有限公司经济技术研究院 一种LoRa物联网***的数据安全传输方法
CN112800436A (zh) * 2021-04-07 2021-05-14 支付宝(杭州)信息技术有限公司 数据授权方法、装置及电子设备
CN112861169A (zh) * 2021-01-14 2021-05-28 支付宝(杭州)信息技术有限公司 一种基于隐私保护的数据处理方法、装置及设备
WO2021114923A1 (zh) * 2019-12-13 2021-06-17 支付宝(杭州)信息技术有限公司 针对隐私数据的数据存储、数据读取方法及装置
CN113987554A (zh) * 2021-12-23 2022-01-28 支付宝(杭州)信息技术有限公司 获取数据授权的方法、装置及***
CN114143117A (zh) * 2022-02-08 2022-03-04 阿里云计算有限公司 数据处理方法及设备
CN114584306A (zh) * 2022-05-05 2022-06-03 腾讯科技(深圳)有限公司 一种数据处理方法和相关装置

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11531487B1 (en) * 2019-12-06 2022-12-20 Pure Storage, Inc. Creating a replica of a storage system
TWI770676B (zh) * 2020-11-17 2022-07-11 玉山商業銀行股份有限公司 線上交易處理系統及方法
US20220321332A1 (en) * 2021-03-30 2022-10-06 International Business Machines Corporation Post-quantum cryptography secured execution environments for edge devices
CN114679453B (zh) * 2022-03-10 2023-10-27 蚂蚁区块链科技(上海)有限公司 多方协同计算中检测恶意攻击的方法、装置、介质和计算设备

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103179114A (zh) * 2013-03-15 2013-06-26 华中科技大学 一种云存储中的数据细粒度访问控制方法
CN104144048A (zh) * 2013-05-10 2014-11-12 华为技术有限公司 一种可信云存储环境下的密钥管理方法、装置和***
US20150089218A1 (en) * 2013-09-23 2015-03-26 Nvidia Corporation Secure storage with scsi storage devices
CN106790304A (zh) * 2017-03-24 2017-05-31 联想(北京)有限公司 数据访问方法、装置、节点以及服务器集群
CN107924445A (zh) * 2015-09-25 2018-04-17 英特尔公司 保留隐私的计算的相互认可
CN107959567A (zh) * 2016-10-14 2018-04-24 阿里巴巴集团控股有限公司 数据存储方法、数据获取方法、装置及***
CN108400989A (zh) * 2018-03-01 2018-08-14 北京东方英卡数字信息技术有限公司 一种共享资源身份认证的安全认证设备、方法及***

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB0507495D0 (en) * 2005-04-14 2005-05-18 Radio Tactics Ltd A forensic toolkit and method for accessing data stored on electronic smart cards
US20070217603A1 (en) * 2006-03-15 2007-09-20 Terayon Communication Systems, Inc. Decryption key reuse in encrypted digital data stream distribution systems
EP2697931B1 (en) * 2011-04-15 2017-12-13 Quintessencelabs Pty Ltd Qkd key management system
CN102413132B (zh) * 2011-11-16 2014-12-17 北京数码视讯软件技术发展有限公司 基于双向安全认证的数据下载方法及***
WO2014059136A2 (en) * 2012-10-12 2014-04-17 Safelylocked, Llc. Techniqued for secure data exchange
JP6026017B2 (ja) * 2013-12-02 2016-11-16 三菱電機株式会社 データ処理システム及び暗号装置及び復号装置及びプログラム
CN104980477B (zh) * 2014-04-14 2019-07-09 航天信息股份有限公司 云存储环境下的数据访问控制方法和***
US9405920B1 (en) * 2014-05-21 2016-08-02 Amazon Technologies, Inc. Data integrity verification
US9397832B2 (en) * 2014-08-27 2016-07-19 International Business Machines Corporation Shared data encryption and confidentiality
CN105592019B (zh) * 2014-11-05 2018-12-25 ***股份有限公司 双执行环境之间双向访问应用的方法
CN104581214B (zh) * 2015-01-28 2018-09-11 三星电子(中国)研发中心 基于ARM TrustZone***的多媒体内容保护方法和装置
CN106453196B (zh) * 2015-08-04 2020-01-07 ***通信集团公司 一种针对可信执行环境的密钥写入装置、***及方法
US9977918B2 (en) * 2015-09-30 2018-05-22 Robert Bosch Gmbh Method and system for verifiable searchable symmetric encryption
CN105592071A (zh) * 2015-11-16 2016-05-18 ***股份有限公司 一种在设备之间进行授权的方法和装置
US11075887B2 (en) * 2016-10-24 2021-07-27 Arm Ip Limited Federating data inside of a trusted execution environment
JP6852009B2 (ja) * 2018-03-20 2021-03-31 株式会社東芝 情報処理装置及び情報処理方法
CN110034924B (zh) * 2018-12-12 2022-05-13 创新先进技术有限公司 一种数据处理方法和装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103179114A (zh) * 2013-03-15 2013-06-26 华中科技大学 一种云存储中的数据细粒度访问控制方法
CN104144048A (zh) * 2013-05-10 2014-11-12 华为技术有限公司 一种可信云存储环境下的密钥管理方法、装置和***
US20150089218A1 (en) * 2013-09-23 2015-03-26 Nvidia Corporation Secure storage with scsi storage devices
CN107924445A (zh) * 2015-09-25 2018-04-17 英特尔公司 保留隐私的计算的相互认可
CN107959567A (zh) * 2016-10-14 2018-04-24 阿里巴巴集团控股有限公司 数据存储方法、数据获取方法、装置及***
CN106790304A (zh) * 2017-03-24 2017-05-31 联想(北京)有限公司 数据访问方法、装置、节点以及服务器集群
CN108400989A (zh) * 2018-03-01 2018-08-14 北京东方英卡数字信息技术有限公司 一种共享资源身份认证的安全认证设备、方法及***

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110737905A (zh) * 2019-09-19 2020-01-31 深圳市先河***技术有限公司 数据授权方法、数据授权装置及计算机存储介质
CN110737905B (zh) * 2019-09-19 2021-11-23 深圳市先河***技术有限公司 数据授权方法、数据授权装置及计算机存储介质
WO2021073170A1 (zh) * 2019-10-18 2021-04-22 支付宝(杭州)信息技术有限公司 数据提供和融合的方法及装置
CN111079152A (zh) * 2019-12-13 2020-04-28 支付宝(杭州)信息技术有限公司 一种模型部署方法、装置及设备
WO2021114923A1 (zh) * 2019-12-13 2021-06-17 支付宝(杭州)信息技术有限公司 针对隐私数据的数据存储、数据读取方法及装置
CN111079152B (zh) * 2019-12-13 2022-07-22 支付宝(杭州)信息技术有限公司 一种模型部署方法、装置及设备
CN111625815A (zh) * 2020-05-26 2020-09-04 牛津(海南)区块链研究院有限公司 一种基于可信执行环境的数据交易方法及装置
CN111625815B (zh) * 2020-05-26 2023-09-26 牛津(海南)区块链研究院有限公司 一种基于可信执行环境的数据交易方法及装置
CN112702740A (zh) * 2020-12-24 2021-04-23 国网浙江省电力有限公司经济技术研究院 一种LoRa物联网***的数据安全传输方法
CN112861169B (zh) * 2021-01-14 2022-06-14 支付宝(杭州)信息技术有限公司 一种基于隐私保护的数据处理方法、装置及设备
CN112861169A (zh) * 2021-01-14 2021-05-28 支付宝(杭州)信息技术有限公司 一种基于隐私保护的数据处理方法、装置及设备
CN112800436B (zh) * 2021-04-07 2021-06-29 支付宝(杭州)信息技术有限公司 数据授权方法、装置及电子设备
CN112800436A (zh) * 2021-04-07 2021-05-14 支付宝(杭州)信息技术有限公司 数据授权方法、装置及电子设备
CN113987554A (zh) * 2021-12-23 2022-01-28 支付宝(杭州)信息技术有限公司 获取数据授权的方法、装置及***
CN114143117A (zh) * 2022-02-08 2022-03-04 阿里云计算有限公司 数据处理方法及设备
CN114143117B (zh) * 2022-02-08 2022-07-22 阿里云计算有限公司 数据处理方法及设备
CN114584306A (zh) * 2022-05-05 2022-06-03 腾讯科技(深圳)有限公司 一种数据处理方法和相关装置

Also Published As

Publication number Publication date
EP3813324A4 (en) 2022-03-02
SG11202100822YA (en) 2021-02-25
US11038673B2 (en) 2021-06-15
WO2020119258A1 (zh) 2020-06-18
CN110011956B (zh) 2020-07-31
EP3813324A1 (en) 2021-04-28
TW202023250A (zh) 2020-06-16
EP3813324B1 (en) 2023-04-26
US20210152343A1 (en) 2021-05-20
TWI709314B (zh) 2020-11-01

Similar Documents

Publication Publication Date Title
CN110011956A (zh) 一种数据处理方法和装置
CN110034924B (zh) 一种数据处理方法和装置
US10673632B2 (en) Method for managing a trusted identity
CA3057385C (en) Methods and devices for protecting sensitive data of transaction activity based on smart contract in blockchain
Barker et al. Recommendation for key management, part 2: best practices for key management organization
US11481768B2 (en) System and method of generating and validating encapsulated cryptographic tokens based on multiple digital signatures
US7353532B2 (en) Secure system and method for enforcement of privacy policy and protection of confidentiality
US10410213B2 (en) Encapsulated security tokens for electronic transactions
KR100502580B1 (ko) 보안성이 향상된 디지털 컨텐츠 유통 방법
JP2007282295A (ja) キー寄託機能付き暗号システムおよび方法
CN105103119A (zh) 数据安全服务***
CN111160908B (zh) 基于区块链的供应链交易隐私保护***、方法及相关设备
US11250423B2 (en) Encapsulated security tokens for electronic transactions
CN110708162A (zh) 资源的获取方法、装置、计算机可读介质及电子设备
CN114785511A (zh) 证明生成方法及装置、电子设备、存储介质
CN110992034A (zh) 基于区块链的供应链交易隐私保护***、方法及相关设备
Arnold et al. Zero-knowledge proofs do not solve the privacy-trust problem of attribute-based credentials: What if alice is evil?
CN110445756B (zh) 云存储中可搜索加密审计日志的实现方法
Hadi et al. An Enhanced Cloud Storage Auditing Approach Using Boneh-Lynn-Shacham’s Signature and Automatic Blocker Protocol.
Gaikwad et al. Forward secure E-Auction with Auditing Integrity
Chissick et al. Legal and Regulatory Update: E-commerce policy developments
RUSSO ANONYMITY, PRIVACY, AND ACCOUNTABILITY: CHALLENGES AND NEW SOLUTIONS IN VARIOUS APPLICATION CONTEXTS
Shaabany et al. Reliable Innovative Business Model for Online Trading of Machines’ Parameters in the Automation and Manufacturing Sector

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
TR01 Transfer of patent right

Effective date of registration: 20201013

Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Patentee after: Innovative advanced technology Co.,Ltd.

Address before: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Patentee before: Advanced innovation technology Co.,Ltd.

Effective date of registration: 20201013

Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Patentee after: Advanced innovation technology Co.,Ltd.

Address before: A four-storey 847 mailbox in Grand Cayman Capital Building, British Cayman Islands

Patentee before: Alibaba Group Holding Ltd.

TR01 Transfer of patent right