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

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

Info

Publication number
CN110034924A
CN110034924A CN201811521028.4A CN201811521028A CN110034924A CN 110034924 A CN110034924 A CN 110034924A CN 201811521028 A CN201811521028 A CN 201811521028A CN 110034924 A CN110034924 A CN 110034924A
Authority
CN
China
Prior art keywords
data
performing environment
key
authorization message
credible performing
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
CN201811521028.4A
Other languages
English (en)
Other versions
CN110034924B (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 CN201811521028.4A priority Critical patent/CN110034924B/zh
Publication of CN110034924A publication Critical patent/CN110034924A/zh
Application granted granted Critical
Publication of CN110034924B publication Critical patent/CN110034924B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using 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/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/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0863Generation of secret information including derivation or calculation of cryptographic keys or passwords involving passwords or one-time 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/3226Cryptographic 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 a predetermined code, e.g. password, passphrase or PIN

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Storage Device Security (AREA)

Abstract

本说明书实施例提供数据处理方法和装置,其中,在数据管理方执行的所述方法包括:接收数据使用方的数据请求;在所述第一可信执行环境中,对于每份所述授权信息,基于所述认证信息和该份授权信息进行验证;以及对于每份所述授权信息,在验证通过的情况中,在第一可信执行环境中使用与该份授权信息对应的第一密钥对相应的第一加密数据进行解密,以获取相应的明文数据;在第一可信执行环境中对所述相应的明文数据重新加密,以获取第二加密数据,其中所述第二加密数据的解密密钥为第二密钥;由所述第一可信执行环境将所述第二密钥安全传输给所述第二可信执行环境;以及将所述第二加密数据提供给所述第二可信执行环境。

Description

一种数据处理方法和装置
技术领域
本说明书实施例涉及数据处理技术领域,更具体地,涉及基于数据使用授权的数据处理方法和装置。
背景技术
在互联网大数据背景下,服务提供商(如信用评估机构、贷款机构、保险公司)在为一个对象(个人或企业、组织)提供服务时,经常会使用该对象的历史数据对对象进行评估(如信用、喜好等)。个人或企业在与一个对象开展业务(如商业合作),经常也需要对该对象进行评估(如信用、资产等)。评估需要用户的可信数据,而用户的数据分散在各个数据源(如银行、税务局、房产局等)中。为了保护对象的隐私和评估方法的隐私,现有的技术通常是在评估者(即数据使用方)和一个或多个数据源(即数据提供方)之间运行安全多方计算协议,以使得评估者得到评估结果。在安全多方计算中,主要基于密码学技术进行计算,计算过程中需要数据使用方和数据提供方等多方实时配合。
因此,需要一种更有效的用于保护各方数据安全的数据处理方案。
发明内容
本说明书实施例旨在提供一种更有效的数据处理方法和装置,以解决现有技术中的不足。
为实现上述目的,本说明书一个方面提供一种数据处理方法,所述方法在数据管理方执行,所述数据管理方包括第一可信执行环境、并且存储有至少一份第一加密数据,其中,在所述第一可信执行环境中存储有至少一个第一密钥和与所述至少一个第一密钥分别对应的至少一份授权信息,其中,所述至少一个第一密钥用于分别解密所述至少一份第一加密数据以分别获取至少一份明文数据,所述至少一份授权信息与所述至少一份明文数据分别对应,且所述授权信息为关于被允许使用相应的明文数据的至少一个程序的信息,所述方法包括:
接收数据使用方的数据请求,所述数据请求用于请求使用所述至少一份明文数据,其中,所述数据使用方包括第二可信执行环境;
从所述数据使用方接收认证信息,所述认证信息由所述第二可信执行环境生成;
在所述第一可信执行环境中,对于每份所述授权信息,基于所述认证信息和该份授权信息进行验证;以及
对于每份所述授权信息,
在验证通过的情况中,在第一可信执行环境中使用与该份授权信息对应的第一密钥对相应的第一加密数据进行解密,以获取相应的明文数据;
在第一可信执行环境中对所述相应的明文数据重新加密,以获取第二加密数据,其中所述第二加密数据的解密密钥为第二密钥;
由所述第一可信执行环境将所述第二密钥安全传输给所述第二可信执行环境;以及
将所述第二加密数据提供给所述第二可信执行环境。
本说明书另一方面提供一种数据处理方法,所述方法在数据管理方执行,所述数据管理方包括第一可信执行环境、并且存储有至少一份第一加密数据,其中,在所述第一可信执行环境中存储有至少一个第一密钥和与所述至少一个第一密钥分别对应的至少一份授权信息,其中,所述至少一个第一密钥用于分别解密所述至少一份第一加密数据以分别获取至少一份明文数据,所述至少一份授权信息与所述至少一份明文数据分别对应,且所述授权信息为关于被允许使用相应的明文数据的至少一个程序的信息,所述方法包括:
接收数据使用方的数据请求,所述数据请求用于请求所述至少一份明文数据,其中,所述数据使用方包括第二可信执行环境;
从所述数据使用方接收认证信息,所述认证信息由所述第二可信执行环境生成;
在所述第一可信执行环境中,对于每份所述授权信息,基于所述认证信息和该份授权信息进行验证;以及
对于每份所述授权信息,
在验证通过的情况中,在第一可信执行环境中使用与该份授权信息对应的第一密钥对相应的第一加密数据进行解密,以获取相应的明文数据;以及
由所述第一可信执行环境将相应的明文数据安全传输给所述第二可信执行环境。
在一个实施例中,所述安全传输为加密传输。
在一个实施例中,所述第一可信执行环境与所述第二可信执行环境位于一个平台中、或位于不同的平台中。
在一个实施例中,所述认证信息中包括所述第二可信执行环境中安装并正在运行的第一程序的第一代码哈希值,其中,所述每份授权信息包括所述至少一个程序各自的代码哈希值,其中,对于每份所述授权信息,基于所述认证信息和该份授权信息进行验证包括,对于每份所述授权信息,验证所述第一代码哈希值是否为该份授权信息中包括的一个代码哈希值。
在一个实施例中,每份所述授权信息中包括第一代码哈希值、和与所述第一代码哈希值对应的第三密钥,所述第三密钥用于对所述第一程序的计算结果进行加密、由与该计算结果对应的计算结果使用方提供,其中,所述方法还包括,对于每份所述授权信息,在验证通过的情况中,还由所述第一可信执行环境将所述第三密钥安全传输给所述第二可信执行环境。
在一个实施例中,所述方法还包括,在由所述第一可信执行环境将所述第二密钥安全传输给所述第二可信执行环境之后,在所述第一可信执行环境中删除所述第二密钥。
在一个实施例中,所述数据管理方还包括数据存储模块,其中,所述至少一份第一加密数据、和所述至少一个第二加密数据被存储在所述数据存储模块中。
在一个实施例中,所述方法还包括,在将所述第二加密数据提供给所述第二可信执行环境之后,在所述存储模块中删除所述第二加密数据。
在一个实施例中,所述方法还包括,在由所述第一可信执行环境将相应的明文数据安全传输给所述第二可信执行环境之后,在所述第一可信执行环境中删除所述相应的明文数据。
在一个实施例中,对所述明文数据重新加密包括,通过所述第二密钥对所述明文数据进行对称加密。
在一个实施例中,所述第二密钥通过随机生成而获取。
本说明书另一方面提供一种数据处理方法,所述方法在数据使用方执行,所述数据使用方包括第二可信执行环境,所述第二可信执行环境中运行有第一程序,所述方法包括:
向数据管理方发送数据请求,用于请求使用与数据管理方中存储的至少一份第一加密数据对应的至少一份明文数据,其中,所述数据管理方包括第一可信执行环境,在所述第一可信执行环境中存储有至少一个第一密钥和与所述至少一个第一密钥分别对应的至少一份授权信息,其中,所述至少一个第一密钥用于分别解密所述至少一份第一加密数据以分别获取至少一份明文数据,所述至少一份授权信息与所述至少一份明文数据分别对应,且所述授权信息为关于被允许使用相应的明文数据的至少一个程序的信息;
向所述数据管理方发送认证信息,以使得所述第一可信执行环境对于每份所述授权信息基于所述认证信息和该份授权信息进行验证,其中,所述认证信息由所述第二可信执行环境生成;
对于每份所述授权信息,在验证通过的情况中,由所述第二可信执行环境接收从所述第一可信执行环境安全传输的与该份授权信息对应的第二密钥,其中,所述第二密钥用于解密第二加密数据,所述第二加密数据由所述第一可信执行环境对与该份授权信息对应的明文数据重新加密所获取;从所述数据管理方获取所述第二加密数据;并在所述第二可信执行环境中使用所述第二密钥对所述第二加密数据进行解密,以获取相应的明文数据;以及
在所述第二可信执行环境中通过所述第一程序基于所述至少一份明文数据进行计算,以获取计算结果。
本说明书另一方面提供一种数据处理方法,所述方法在数据使用方执行,所述数据使用方包括第二可信执行环境,所述第二可信执行环境中运行有第一程序,所述方法包括:
向数据管理方发送数据请求,用于请求使用与数据管理方中存储的至少一份第一加密数据分别对应的至少一份明文数据,其中,所述数据管理方包括第一可信执行环境,在所述第一可信执行环境中存储有至少一个第一密钥和与所述至少一个第一密钥分别对应的至少一份授权信息,其中,所述至少一个第一密钥用于分别解密所述至少一份第一加密数据以分别获取至少一份明文数据,所述至少一份授权信息与所述至少一份明文数据分别对应,且所述授权信息为关于被允许使用相应的明文数据的至少一个程序的信息;
向所述数据管理方发送认证信息,以使得所述第一可信执行环境对于每份所述授权信息基于所述认证信息和该份授权信息进行验证,其中,所述认证信息由所述第二可信执行环境生成;
对于每份所述授权信息,在验证通过的情况中,由所述第二可信执行环境接收从所述第一可信执行环境安全传输的与该份授权信息对应的明文信息;以及
在所述第二可信执行环境中通过所述第一程序基于所述至少一份明文数据进行计算,以获取计算结果。
在一个实施例中,所述第一程序具有第一代码哈希值,其中,每份授权信息中包括第一代码哈希值、及与所述第一代码哈希值对应的第三密钥,所述第三密钥用于对所述第一程序的计算结果进行加密、由与该计算结果对应的计算结果使用方提供,所述方法还包括,
对于每份所述授权信息,在验证通过的情况中,由所述第二可信执行环境接收从所述第一可信执行环境安全传输的与该份授权信息对应的第三密钥;
在获取所述计算结果之后,在所述第二可信执行环境中确定与各份所述授权信息分别对应的各个第三密钥是否一致;以及
在各个所述第三密钥一致的情况中,在所述第二可信执行环境中使用所述第三密钥对所述计算结果进行加密,以获取加密计算结果。
在一个实施例中,所述方法还包括,在获取加密计算结果之后,将所述加密计算结果发送给所述计算结果使用方。
在一个实施例中,从所述数据管理方获取所述第二加密数据包括,从所述数据管理方读取所述第二加密数据。
本说明书另一方面提供一种数据处理装置,所述装置在数据管理方实施,所述数据管理方包括第一可信执行环境、并且存储有至少一份第一加密数据,其中,在所述第一可信执行环境中存储有至少一个第一密钥和与所述至少一个第一密钥分别对应的至少一份授权信息,其中,所述至少一个第一密钥用于分别解密所述至少一份第一加密数据以分别获取至少一份明文数据,所述至少一份授权信息与所述至少一份明文数据分别对应,且所述授权信息为关于被允许使用相应的明文数据的至少一个程序的信息,所述装置包括:
第一接收单元,配置为,接收数据使用方的数据请求,所述数据请求用于请求使用所述至少一份明文数据,其中,所述数据使用方包括第二可信执行环境;
第二接收单元,配置为,从所述数据使用方接收认证信息,所述认证信息由所述第二可信执行环境生成;
验证单元,配置为,在所述第一可信执行环境中,对于每份所述授权信息,基于所述认证信息和该份授权信息进行验证;以及
针对每份所述授权信息的,
解密单元,配置为,在验证通过的情况中,在第一可信执行环境中使用与该份授权信息对应的第一密钥对相应的第一加密数据进行解密,以获取相应的明文数据;
重新加密单元,配置为,在第一可信执行环境中对所述相应的明文数据重新加密,以获取第二加密数据,其中所述第二加密数据的解密密钥为第二密钥;
第一安全传输单元,配置为,由所述第一可信执行环境将所述第二密钥安全传输给所述第二可信执行环境;以及
提供单元,配置为,将所述第二加密数据提供给所述第二可信执行环境。
本说明书另一方面提供一种数据处理装置,所述装置在数据管理方执行,所述数据管理方包括第一可信执行环境、并且存储有至少一份第一加密数据,其中,在所述第一可信执行环境中存储有至少一个第一密钥和与所述至少一个第一密钥分别对应的至少一份授权信息,其中,所述至少一个第一密钥用于分别解密所述至少一份第一加密数据以分别获取至少一份明文数据,所述至少一份授权信息与所述至少一份明文数据分别对应,且所述授权信息为关于被允许使用相应的明文数据的至少一个程序的信息,所述装置包括:
第一接收单元,配置为,接收数据使用方的数据请求,所述数据请求用于请求所述至少一份明文数据,其中,所述数据使用方包括第二可信执行环境;
第二接收单元,配置为,从所述数据使用方接收认证信息,所述认证信息由所述第二可信执行环境生成;
验证单元,配置为,在所述第一可信执行环境中,对于每份所述授权信息,基于所述认证信息和该份授权信息进行验证;以及
针对每份所述授权信息的,
解密单元,配置为,在验证通过的情况中,在第一可信执行环境中使用与该份授权信息对应的第一密钥对相应的第一加密数据进行解密,以获取相应的明文数据;以及
安全传输单元,配置为,由所述第一可信执行环境将相应的明文数据安全传输给所述第二可信执行环境。
在一个实施例中,所述认证信息中包括所述第二可信执行环境中安装并正在运行的第一程序的第一代码哈希值,其中,所述每份授权信息包括所述至少一个程序各自的代码哈希值,其中,所述验证单元还配置为,对于每份所述授权信息,验证所述第一代码哈希值是否为该份授权信息中包括的一个代码哈希值。
在一个实施例中,每份所述授权信息中包括第一代码哈希值、和与所述第一代码哈希值对应的第三密钥,所述第三密钥用于对所述第一程序的计算结果进行加密、由与该计算结果对应的计算结果使用方提供,其中,所述装置还包括,第二安全传输单元,配置为,对于每份所述授权信息,在验证通过的情况中,还由所述第一可信执行环境将所述第三密钥安全传输给所述第二可信执行环境。
在一个实施例中,所述装置还包括第一删除单元,配置为,在由所述第一可信执行环境将所述第二密钥安全传输给所述第二可信执行环境之后,在所述第一可信执行环境中删除所述第二密钥。
在一个实施例中,所述数据管理方还包括数据存储模块,其中,所述至少一份第一加密数据、和所述至少一个第二加密数据被存储在所述数据存储模块中。
在一个实施例中,所述装置还包括第二删除单元,配置为,在将所述第二加密数据提供给所述第二可信执行环境之后,在所述存储模块中删除所述第二加密数据。
在一个实施例中,所述装置还包括删除单元,配置为,在由所述第一可信执行环境将相应的明文数据安全传输给所述第二可信执行环境之后,在所述第一可信执行环境中删除所述相应的明文数据。
在一个实施例中,所述重新加密单元还配置为,通过所述第二密钥对所述明文数据进行对称加密。
本说明书另一方面提供一种数据处理装置,所述装置在数据使用方实施,所述数据使用方包括第二可信执行环境,所述第二可信执行环境中运行有第一程序,所述装置包括:
第一发送单元,配置为,向数据管理方发送数据请求,用于请求使用与数据管理方中存储的至少一份第一加密数据对应的至少一份明文数据,其中,所述数据管理方包括第一可信执行环境,在所述第一可信执行环境中存储有至少一个第一密钥和与所述至少一个第一密钥分别对应的至少一份授权信息,其中,所述至少一个第一密钥用于分别解密所述至少一份第一加密数据以分别获取至少一份明文数据,所述至少一份授权信息与所述至少一份明文数据分别对应,且所述授权信息为关于被允许使用相应的明文数据的至少一个程序的信息;
第二发送单元,配置为,向所述数据管理方发送认证信息,以使得所述第一可信执行环境对于每份所述授权信息基于所述认证信息和该份授权信息进行验证,其中,所述认证信息由所述第二可信执行环境生成;
针对每份所述授权信息的,第一接收单元,配置为,在验证通过的情况中,由所述第二可信执行环境接收从所述第一可信执行环境安全传输的与该份授权信息对应的第二密钥,其中,所述第二密钥用于解密第二加密数据,所述第二加密数据由所述第一可信执行环境对与该份授权信息对应的明文数据重新加密所获取;获取单元,配置为,从所述数据管理方获取所述第二加密数据;解密单元,配置为,在所述第二可信执行环境中使用所述第二密钥对所述第二加密数据进行解密,以获取相应的明文数据;以及
计算单元,配置为,在所述第二可信执行环境中通过所述第一程序基于所述至少一份明文数据进行计算,以获取计算结果。
本说明书另一方面提供一种数据处理装置,所述装置在数据使用方实施,所述数据使用方包括第二可信执行环境,所述第二可信执行环境中运行有第一程序,所述装置包括:
第一发送单元,配置为,向数据管理方发送数据请求,用于请求使用与数据管理方中存储的至少一份第一加密数据分别对应的至少一份明文数据,其中,所述数据管理方包括第一可信执行环境,在所述第一可信执行环境中存储有至少一个第一密钥和与所述至少一个第一密钥分别对应的至少一份授权信息,其中,所述至少一个第一密钥用于分别解密所述至少一份第一加密数据以分别获取至少一份明文数据,所述至少一份授权信息与所述至少一份明文数据分别对应,且所述授权信息为关于被允许使用相应的明文数据的至少一个程序的信息;
第二发送单元,配置为,向所述数据管理方发送认证信息,以使得所述第一可信执行环境对于每份所述授权信息基于所述认证信息和该份授权信息进行验证,其中,所述认证信息由所述第二可信执行环境生成;
针对每份所述授权信息的第一接收单元,配置为,在验证通过的情况中,由所述第二可信执行环境接收从所述第一可信执行环境安全传输的与该份授权信息对应的明文信息,其中,所述明文信息由所述第一可信执行环境基于与该份授权信息对应的第一密钥、及相应的第一加密数据获取;以及
计算单元,配置为,在所述第二可信执行环境中通过所述第一程序基于所述至少一份明文数据进行计算,以获取计算结果。
在一个实施例中,所述第一程序具有第一代码哈希值,其中,每份授权信息中包括第一代码哈希值、及与所述第一代码哈希值对应的第三密钥,所述第三密钥用于对所述第一程序的计算结果进行加密、由与该计算结果对应的计算结果使用方提供,所述装置还包括,
第二接收单元,配置为,对于每份所述授权信息,在验证通过的情况中,由所述第二可信执行环境接收从所述第一可信执行环境安全传输的与该份授权信息对应的第三密钥;
确定单元,配置为,在获取所述计算结果之后,在所述第二可信执行环境中确定与各份所述授权信息分别对应的各个第三密钥是否一致;以及
加密单元,配置为,在各个所述第三密钥一致的情况中,在所述第二可信执行环境中使用所述第三密钥对所述计算结果进行加密,以获取加密计算结果。
在一个实施例中,所述装置还包括第三发送单元,配置为,在获取加密计算结果之后,将所述加密计算结果发送给所述计算结果使用方。
在一个实施例中,所述获取单元还配置为,从所述数据管理方读取所述第二加密数据
本说明书另一方面提供一种计算设备,包括存储器和处理器,其特征在于,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现上述任一项方法。
通过根据本说明书实施例的数据处理方案,通过数据授权系统(数据管理方)在设计上避免了机构(数据提供方)原始密钥注入到业务方(数据使用方)的TEE的可能性,保证了即使业务方的TEE被破解,破解者也只能窥探所访问的数据明文,其他使用相同机构密钥加密的数据仍然可以得到有效保护。
附图说明
通过结合附图描述本说明书实施例,可以使得本说明书实施例更加清楚:
图1示出根据本说明书实施例的数据处理系统100的示意图;
图2示出根据本说明书实施例基于数据使用授权的数据处理示意图;
图3示出数据管理方的存储模块和第一TEE中存储的数据的示意图;
图4示意示出信息A中的授权信息的具体内容;
图5示意示出在进行步骤205之后,在数据管理方中包括的数据的示意图;
图6示意示出在数据使用方中执行的图2中的步骤208-步骤211;
图7示出根据本说明书实施例的基于数据使用授权的另一数据处理示意图;
图8示出根据本说明书实施例的一种数据处理装置800;
图9示出根据本说明书实施例的一种数据处理装置900;
图10示出根据本说明书实施例的一种数据处理装置1000;
图11示出根据本说明书实施例的一种数据处理装置1100。
具体实施方式
下面将结合附图描述本说明书实施例。
图1示出根据本说明书实施例的数据处理系统100的示意图。如图1所示,系统100包括数据提供方11、数据提供方12、数据管理方13、数据使用方14以及结果使用方15。其中数据提供方11/12例如为银行、税务局、房产局等拥有原始数据的一方;数据管理方13相当于数据托管平台,包括第一可信执行环境(TEE)131和存储模块132,可由数据提供方11/12将数据或加密数据及其授权信息预先上传至数据管理方,并进行数据的使用授权,从而使得数据提供方不需在数据使用时实时在线;数据使用方14例如为信用评估机构、贷款机构、保险公司等服务提供商,其包括第二TEE141;结果使用方15例如为数据使用方14的服务对象,如企业、个人等。数据提供方11可在验证第一TEE的可信性之后,将本地拥有的明文数据X的第一加密数据X上传至数据管理方13的存储模块132,并将相应的用于解密的第一密钥和授权信息安全传输至数据管理方13的第一TEE131,以由第一TEE进行对该第一明文数据的使用授权管理。数据提供方12可以与数据提供方11类似地将其本地的明文数据Y的第一加密数据Y上传给存储模块132,并将相应的第一密钥和授权信息安全传输至第一TEE131。例如在数据使用方14向数据管理方13请求使用明文数据X时,第一TEE可根据相应的授权信息对第二TEE141进行验证,并在验证通过之后,使用相应的解密密钥对第一加密数据X进行解密,以获取明文数据X,并使用第二密钥对明文数据X重新加密,以获取第二加密数据X,之后,将第二加密数据X传输给数据使用方,并将该第二密钥安全传输给第二TEE,以授权数据使用方14使用该明文数据X。数据使用方可通过上述类似的方法向数据管理方请求使用明文数据Y。从而,数据使用方例如可在第二TEE141中基于明文数据X和明文数据Y进行模型计算。数据使用方14在例如基于明文数据X和明文数据Y进行计算而获取计算结果之后,可基于第一TEE安全传输至第二TEE的计算结果密钥对该计算结果进行加密,并将加密的计算结果发送给提供所述计算结果密钥的结果使用方15。从而,通过该方式可避免将数据提供方的原始密钥(第一密钥)注入第二TEE141,从而可有效保护数据提供方的原始密钥、及通过该原始密钥加密的其它数据。
图1及上述描述只是对本说明书实施例的简单概述,并不限定本说明书实施例的范围,例如,在系统100中不限于包括两个数据提供方,可包括一个数据提供方,也可包括多个数据提供方,其都与上述类似地将其本地的数据托管给数据管理方13,例如,在所述数据管理方中对明文数据的重新加密不限于对称加密,也可以为非对称加密。另外,为了保护数据提供方的密钥,还可以通过如下的方法:在第一TEE中通过第一密钥对第一加密数据解密,以获取相应的明文数据,并由第一TEE将该明文数据安全传输给第二TEE。
图2示出根据本说明书实施例基于数据使用授权的数据处理示意图。具体地,图2示出在数据管理方、数据使用方与结果使用方之间进行的数据处理过程。其中,所述数据处理过程在数据管理方、数据使用方、及结果使用方各方的计算设备或终端中完成。如上文所述,数据管理方相当于数据托管平台,其中存储有由例如银行的数据提供方提供的原始数据,数据使用方例如为信用评估机构,其例如通过从数据管理方得到授权使用所述原始数据,从而基于该原始数据计算例如个人的信用情况,以提供给结果使用方,所述结果使用方例如为信用评估机构的服务对象,其例如为贷款机构等。其中,数据管理方和数据使用方都包括各自的安全执行环境(TEE,Trusted Execution Environment),所述安全执行环境例如可通过SGX、Trust Zone等技术实现。下文中,为便于描述,将数据管理方中的安全执行环境称为第一TEE,将数据使用方中的安全执行环境称为第二TEE。可以理解,本文中的“第一”,“第二”等描述,仅仅为了描述的简单而对相似概念进行区分,并不具有其他限定作用。其中,所述数据管理方通过第一TEE对数据使用方进行验证以对其授权,数据使用方在所述第二TEE中运行有例如第一程序,并通过第一程序基于所述原始数据计算相应的结果(例如信用评估值)。
所述数据管理方除了包括第一TEE之外,还包括存储模块,存储模块中存储有至少一份第一加密数据,在所述第一TEE中存储有至少一个第一密钥和与所述至少一个第一密钥分别对应的至少一份授权信息。图3示出数据管理方的存储模块和第一TEE中存储的数据的示意图。如图3所示,存储模块中存储有第一加密数据X和第一加密数据Y,其中,第一加密数据X例如由数据提供方A向数据管理方预先上传,其对应于明文数据X,第一加密数据Y例如由数据提供方B向数据管理方预先上传,其对应于明文数据Y。可以理解,所述第一加密数据X/Y不限于存储于存储模块中,例如,第一加密数据X/Y可存储于第一TEE中、或者第一加密数据X/Y可存储于云盘中等等。
第一TEE中存储有信息A和信息B,其中信息A与第一加密数据X相关,其中包括第一密钥A和授权信息A,信息B与第一加密数据Y相关,其中包括第一密钥B和授权信息B。其中,第一密钥A用于对明文数据X进行加密和解密,授权信息A为关于明文数据X的授权信息,第二密钥B用于对明文数据Y进行加密和解密,授权信息B为关于明文数据Y的授权信息。图3中虽然只示意示出了两份加密数据和与其分别对应的两份信息,然而,第一TEE中不限于只存储两份信息,而是可以存储与多份加密数据分别对应的多份信息。另外,图3中的信息A和信息B分别对应于不同的数据提供方,本说明书实施例不限于此,信息A和信息B可对应于一个数据提供方,即,数据提供方A与数据提供方B可以为一个数据提供方,也就是说,明文数据X和明文数据Y可由一个数据提供方提供。在上述描述中,第一加密数据X表示该加密数据是通过对明文数据X进行加密所获取的数据,第一加密数据Y可同样地解释,信息A、第一密钥A和授权信息A表示其都与数据提供方A相关,信息B、第一密钥B和授权信息B可同样地解释。
所述授权信息为关于被允许使用相应的明文数据的至少一个程序的信息。
图4示意示出信息A中的授权信息的具体内容。如图4所示,在信息A中,除第一密钥之外,还包括如“第一密钥A”下方的黑框所示的授权信息A,所述授权信息A包括对应的第一代码哈希值和第三密钥C、对应的第二代码哈希值和第三密钥D、以及第三代码哈希值。其中,第一代码哈希值、第二代码哈希值和第三代码哈希值例如分别为第一程序、第二程序和第三程序的代码哈希值,其中,第一程序、第二程序和第三程序是被(数据提供方)允许使用明文是数据X的程序。例如,该信息A对应的明文数据X可以为个人在预定时段内的交易数据,该交易数据可用于个人信用评估的第一程序的计算、个人消费倾向的第二程序的计算、特定人群消费水平的第三程序的计算等。第三密钥C例如为第一结果使用方C的公钥,所述第三密钥C用于对所述第一程序的计算结果进行加密、由与该计算结果对应的第一计算结果使用方C提供,即,第一程序基于明文数据X的计算结果只允许授权给第一结果使用方C使用。类似地,第三密钥D例如为第二结果使用方D的公钥,即,所述第三密钥D用于对所述第二程序的计算结果进行加密,第二程序基于明文数据X的计算结果只允许授权给第二结果使用方D使用。而在上述信息A中并没有与第三代码哈希值对应的密钥,也就是说,第三程序基于明文数据X的计算结果(例如上述特定人群消费水平)不涉及隐私数据,不需要进行加密。可以理解,所述授权信息中不限于包括各个所述程序的代码哈希值,而是根据授权的方式不同可包括不同的信息,例如,所述授权信息中可包括各个所述程序的代码签名、加密数据等等。另外,所述第三密钥C/D不限于为相应结果使用方的公钥,在对计算结果的加密方式为对称加密的情况中,所述第三密钥C/D也可以为相应结果使用方的密钥,用于对计算结果加密、并对加密计算结果解密。其中,第三密钥中的“第三”用于与本文中的“第一密钥”和“第二密钥”相区分。
下面详细描述图2中的各个步骤。如图2所示,首先,在步骤201,由数据使用方向数据管理方发送数据请求,所述数据请求用于请求使用数据管理方中存储的至少一份明文数据。
数据使用方例如为信用评估机构,其在对用户进行信用评估时,可向数据管理方请求与该用户相关的例如两份数据,该两份数据例如分别由银行和税务部门向数据管理方预先提供,其例如为与图3中所示的第一加密数据X和第一加密数据Y分别对应的明文数据X和明文数据Y。所述数据使用方例如还可以为云计算平台,其例如接收信用评估机构的委托通过计算模型对用户的信用评估进行计算。
数据使用方包括第二可信执行环境(即第二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发送数据使用请求。
在步骤202,向数据管理方发送认证信息,所述认证信息由所述第二可信执行环境生成。
数据使用方可在发送数据请求之后主动将第二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。
在步骤203,在所述第一TEE中,对于每份所述授权信息,基于所述认证信息和该份授权信息进行验证。
第一TEE在获取所述认证信息之后,在其内部通过基于该认证信息和数据使用方请求的至少一份数据各自对应的授权信息进行验证。例如,参考图3,数据使用方请求使用明文数据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是否为安全执行环境,和/或确定其中运行的程序是否是可授权的程序。
步骤204-步骤208是针对数据使用方请求的至少一份明文数据对应的每份授权信息执行的步骤,图2中只示意示出了对一份授权信息执行的情况,而在实际中,可针对至少一份授权信息的每份授权信息依次地、或并行地执行步骤204-步骤208。在下面的描述中,描述了针对一份授权信息(例如如图3中所示的授权信息A)执行步骤204-208作为示例。本领域技术人员可以理解,对于所述至少一份授权信息中的其它授权信息,可同样地执行步骤204-208。
在步骤204,在验证通过的情况中,在第一可信执行环境中使用与该份授权信息对应的第一密钥对相应的第一加密数据进行解密,以获取相应的明文数据。如图3中所示,在数据管理方的存储模块中存储有第一加密数据X,在第一TEE中存储有与第一加密数据X对应的第一密钥A和授权信息A。在针对授权信息A的对认证信息的验证通过之后,第一TEE通过从存储模块中获取第一加密数据X,并使用第一密钥A对第一加密数据X进行解密,从而可获取相应的明文数据X。
在步骤205,在第一TEE中对所述明文数据重新加密,以获取第二加密数据,其中所述第二加密数据的解密密钥为第二密钥。
在一个实施例中,在第一TEE中对明文数据X进行对称加密。即,例如,通过随机生成的方式获取第二密钥,并使用该第二密钥对明文数据X进行加密,从而获取第二加密数据X,同时,该第二密钥即为用于对第二加密数据X进行解密的密钥。其中,与上文所述类似,第二加密数据X表示其为通过对明文数据加密所获取的加密数据,下文出现的第二加密数据Y可同样地解释。当在第一TEE中获取第二加密数据X之后,可将第二加密数据X存入图3所示的存储模块中。可以理解,所述第二加密数据X不限于被存入存储模块中,其例如可被存入云盘中。可以理解,可以以同样的方式对图3中所示的第一加密数据Y进行解密并重新加密,以获取第二加密数据Y。
图5示意示出在进行该步骤205之后,在数据管理方中包括的数据的示意图。如图5所示,在存储模块中包括第一加密数据X、第二加密数据X、第一加密数据Y、以及第二加密数据Y,在第一TEE中包括信息A和信息B,在信息A中除包括图3中所示的第一密钥A和授权信息A之外,还包括第二密钥A,同样地,在信息B中还包括第二密钥B,其中,第二密钥A表示其为与数据提供方A相关的第二密钥,第二密钥B可同样地解释。
可以理解,对明文数据X进行加密的方式不限于对称加密的方式,也可以为非对称加密的方式。即,例如通过随机生成的方式生成用于加密的密钥和用于解密的第二密钥,并用所述加密密钥对所述明文数据X进行加密,以获取第二加密数据X。可以理解,上述对称加密的密钥和非对称加密的密钥不限于通过随机生成的方式获取,例如,可通过预定方式生成所述密钥。另外,所述密钥可以实时生成,也可以预先生成,本说明书对此不进行限定。
在步骤206,由所述第一可信执行环境将所述第二密钥安全传输给所述第二可信执行环境。
所述安全传输例如为加密传输,通过在传输之前对待传输的数据进行加密,并在传输到接收方之后进行解密以使得接收方获取明文数据,保障了在传输过程中不会被恶意的第三方窃取明文数据,保障了数据传输的安全性。可以理解所述安全传输不限于加密传输,而可以采用本领域技术人员可获取的任意保障数据安全性的传输方式,如通过量子通信的安全传输方式等等。
第一TEE在进行上述步骤205之后,将用于解密第二加密数据X的第二密钥A安全传输至第二TEE,以授权第二TEE中的第一程序使用所述明文数据X。
在一个实施例中,在由所述第一TEE将所述第二密钥A安全传输给所述第二TEE之后,在所述第一TEE中删除所述第二密钥。所述删除可在所述安全传输之后立即进行,也可以在所述安全传输之后预定时段后,在确定所述安全传输没有问题之后进行。
在步骤207,由数据管理方将所述第二加密数据提供给所述第二可信执行环境。
在一个实施例中,数据管理方将存储模块中存储的第二加密数据X发送给第二TEE。在一个实施例中,由数据使用方从数据管理方的存储模块中读取第二加密数据X。例如,在明文数据X为例如银行提供的个人交易数据的情况中,数据使用方例如可以基于个人身份标识(例如身份证号码等)、数据提供方标识(如银行标识)、数据标识等读取与该个人相关的第二加密数据X。
在一个实施例中,在所述第二加密数据X由数据管理方存入云盘中的情况中,数据管理方可将第二加密数据X的下载地址提供给数据使用方,以供其下载。
在一个实施例中,在将所述第二加密数据提供给所述第二可信执行环境之后,在所述存储模块中删除所述第二加密数据。同样地,所述删除可在所述传输之后立即进行,也可以在所述传输之后预定时段后进行。
在一个实施例中,如图4所示,信息A中的授权信息A中还可能包括与部分哈希代码值分别对应的结果使用方的第三密钥。例如,在所述授权信息中包括与第一代码哈希值对应的第三密钥C。在该情况中,在基于授权信息A的验证通过之后,第一TEE还将第三密钥C安全传输给第二TEE,以用于对计算结果进行加密。
在步骤208,由所述数据使用方在所述第二可信执行环境中使用所述第二密钥对所述第二加密数据进行解密,以获取相应的明文数据。
图6示意示出在数据使用方中执行的图2中的步骤208-步骤211。如图6中所示,数据使用方在从数据管理方获取例如第二密钥A和第二加密数据X之后,通过步骤208,使用第二密钥A对第二加密数据X解密,从而可获取明文数据X。类似地,通过使用从数据管理方获取的第二密钥B对第二加密数据Y解密,从而可获取明文数据Y。
在步骤209,在所述第二可信执行环境中通过所述第一程序基于所述至少一份明文数据进行计算,以获取计算结果。
如图6所示,所述第一程序例如基于数据X和数据Y进行F(X,Y)的计算,其中F(X,Y)对应于特定计算模型,通过在第二TEE中运行所述第一程序,使用F(X,Y)基于X和Y进行计算,从而获取计算结果。
在一个实施例中,在步骤210,使用第三密钥对计算结果进行加密。
所述第一程序例如具有第一代码哈希值,其中,如图4所示,所述数据使用者请求的至少一份明文数据对应的每份授权信息中例如包括第一代码哈希值、及与所述第一代码哈希值对应的第三密钥(例如第三密钥C),所述第三密钥用于对所述第一程序的计算结果进行加密、由与该计算结果对应的计算结果使用方提供。所述方法还包括,对于每份所述授权信息,在验证通过的情况中,由所述第二可信执行环境接收从所述第一可信执行环境安全传输的所述第三密钥(第三密钥C);在获取所述计算结果之后,在所述第二可信执行环境中确定与各份所述授权信息分别对应的各个第三密钥是否一致,即确定从第一TEE接收的对应于第二加密数据X的第三密钥与对应于第二加密数据Y的第三密钥是否一致;以及,在各个所述第三密钥一致的情况中,在所述第二可信执行环境中使用所述第三密钥对所述计算结果进行加密,以获取加密计算结果,即,在所述第三密钥都是第三密钥C的情况中,使用第三密钥C对计算结果进行加密。可以理解,在上述情况中,第三密钥可以为非对称加密的加密密钥,即公钥,当将该加密的计算结果发送给结果使用方C之后,结果使用方C将使用其私钥C对该加密的计算结果进行解密。然而,本实施例不限于此,例如,所述第三密钥可以为对称加密的密钥,即,结果使用方C在解密时也使用该第三密钥进行解密。
在步骤211,第二TEE在获取加密的计算结果之后,将该加密的计算结果发送给结果使用方C。在步骤212,结果使用方C使用其私钥C对该加密的计算结果进行解密,从而获取计算结果。
可以理解,在获取加密的计算结果之后,数据使用方可将该加密结果发送给结果使用方,或者也可以由结果使用方主动从数据使用方读取所述加密结果。
在一个实施例中,如上文参考图4中所述,当第二TEE中的运行程序(如第三程序)的计算结果不涉及隐私,不需要进行加密的情况中,可不执行图6中所示的步骤210和步骤211,第二TEE在获取明文的计算结果之后,可将该计算结果直接发送给结果使用方,或由结果使用方读取该计算结果。
图7示出根据本说明书实施例的基于数据使用授权的另一数据处理示意图。其中,所述数据处理在数据管理方、数据使用方及结果使用方三方执行,对所述三方的具体描述可参考上文对图2的相应描述。如图7所示,所示数据处理包括以下步骤:在步骤701,由数据使用方向数据管理方发送数据请求,所述数据请求用于请求所述至少一份明文数据,其中,所述数据使用方包括第二可信执行环境;在步骤702,由所述数据使用方向数据管理方发送认证信息,所述认证信息由所述第二可信执行环境生成;在步骤703,在所述第一可信执行环境中,对于每份所述授权信息,基于所述认证信息和该份授权信息进行验证;对于每份授权信息,执行步骤704-705,其中,在步骤704,在验证通过的情况中,在第一可信执行环境中使用与该份授权信息对应的第一密钥对相应的第一加密数据进行解密,以获取相应的明文数据;在步骤705,由所述第一可信执行环境将相应的明文数据安全传输给所述第二可信执行环境;在一个实施例中,在由所述第一可信执行环境将相应的明文数据安全传输给所述第二可信执行环境之后,在所述第一可信执行环境中删除所述相应的明文数据;在步骤706,在所述第二可信执行环境中通过所述第一程序基于所述至少一份明文数据进行计算,以获取计算结果;以及,在一个实施例中,在步骤707,在第二TEE中使用相应的第三密钥对计算结果加密,在步骤708,由数据使用方将加密的计算结果发送给结果使用方;在步骤709,由结果使用方使用私钥解密,以获取计算结果。
图7所示的处理过程与图2所示的处理过程不同在于,在第一TEE中获取明文数据之后,将明文数据直接安全传输给第二TEE,而省去了对明文数据重新加密,并安全传输第二密钥、提供第二加密数据的步骤。
通过图2和图7所示的数据处理过程,在完成对数据使用方授权使用明文数据的同时,可避免将数据提供方的原始密钥(即第一密钥)提供给数据使用方,从而可保护所述原始密钥不被泄漏,进而进一步保护了数据提供方与该原始密钥相关的其它数据。
图8示出根据本说明书实施例的一种数据处理装置800,所述装置在数据管理方实施,所述数据管理方包括第一可信执行环境、并且存储有至少一份第一加密数据,其中,在所述第一可信执行环境中存储有至少一个第一密钥和与所述至少一个第一密钥分别对应的至少一份授权信息,其中,所述至少一个第一密钥用于分别解密所述至少一份第一加密数据以分别获取至少一份明文数据,所述至少一份授权信息与所述至少一份明文数据分别对应,且所述授权信息为关于被允许使用相应的明文数据的至少一个程序的信息,所述装置包括:
第一接收单元801,配置为,接收数据使用方的数据请求,所述数据请求用于请求使用所述至少一份明文数据,其中,所述数据使用方包括第二可信执行环境;
第二接收单元802,配置为,从所述数据使用方接收认证信息,所述认证信息由所述第二可信执行环境生成;
验证单元803,配置为,在所述第一可信执行环境中,对于每份所述授权信息,基于所述认证信息和该份授权信息进行验证;以及
针对每份所述授权信息的,
解密单元804,配置为,在验证通过的情况中,在第一可信执行环境中使用与该份授权信息对应的第一密钥对相应的第一加密数据进行解密,以获取相应的明文数据;
重新加密单元805,配置为,在第一可信执行环境中对所述相应的明文数据重新加密,以获取第二加密数据,其中所述第二加密数据的解密密钥为第二密钥;
第一安全传输单元806,配置为,由所述第一可信执行环境将所述第二密钥安全传输给所述第二可信执行环境;以及
提供单元807,配置为,将所述第二加密数据提供给所述第二可信执行环境。
在一个实施例中,所述认证信息中包括所述第二可信执行环境中安装并正在运行的第一程序的第一代码哈希值,其中,所述每份授权信息包括所述至少一个程序各自的代码哈希值,其中,所述验证单元803还配置为,对于每份所述授权信息,验证所述第一代码哈希值是否为该份授权信息中包括的一个代码哈希值。
在一个实施例中,每份所述授权信息中包括第一代码哈希值、和与所述第一代码哈希值对应的第三密钥,所述第三密钥用于对所述第一程序的计算结果进行加密、由与该计算结果对应的计算结果使用方提供,其中,所述装置还包括,第二安全传输单元808,配置为,对于每份所述授权信息,在验证通过的情况中,还由所述第一可信执行环境将所述第三密钥安全传输给所述第二可信执行环境。
在一个实施例中,所述装置还包括第一删除单元809,配置为,在由所述第一可信执行环境将所述第二密钥安全传输给所述第二可信执行环境之后,在所述第一可信执行环境中删除所述第二密钥。
在一个实施例中,所述数据管理方还包括数据存储模块,其中,所述至少一份第一加密数据、和所述至少一个第二加密数据被存储在所述数据存储模块中。
在一个实施例中,所述装置还包括第二删除单元810,配置为,在将所述第二加密数据提供给所述第二可信执行环境之后,在所述存储模块中删除所述第二加密数据。
在一个实施例中,所述重新加密单元805还配置为,通过所述第二密钥对所述明文数据进行对称加密。
图9示出根据本说明书实施例的一种数据处理装置900,所述装置在数据管理方执行,所述数据管理方包括第一可信执行环境、并且存储有至少一份第一加密数据,其中,在所述第一可信执行环境中存储有至少一个第一密钥和与所述至少一个第一密钥分别对应的至少一份授权信息,其中,所述至少一个第一密钥用于分别解密所述至少一份第一加密数据以分别获取至少一份明文数据,所述至少一份授权信息与所述至少一份明文数据分别对应,且所述授权信息为关于被允许使用相应的明文数据的至少一个程序的信息,所述装置包括:
第一接收单元91,配置为,接收数据使用方的数据请求,所述数据请求用于请求所述至少一份明文数据,其中,所述数据使用方包括第二可信执行环境;
第二接收单元92,配置为,从所述数据使用方接收认证信息,所述认证信息由所述第二可信执行环境生成;
验证单元93,配置为,在所述第一可信执行环境中,对于每份所述授权信息,基于所述认证信息和该份授权信息进行验证;以及
针对每份所述授权信息的,
解密单元94,配置为,在验证通过的情况中,在第一可信执行环境中使用与该份授权信息对应的第一密钥对相应的第一加密数据进行解密,以获取相应的明文数据;以及
安全传输单元95,配置为,由所述第一可信执行环境将相应的明文数据安全传输给所述第二可信执行环境。
在一个实施例中,所述装置还包括删除单元96,配置为,在由所述第一可信执行环境将相应的明文数据安全传输给所述第二可信执行环境之后,在所述第一可信执行环境中删除所述相应的明文数据。
图10示出根据本说明书实施例的一种数据处理装置1000,所述装置在数据使用方实施,所述数据使用方包括第二可信执行环境,所述第二可信执行环境中运行有第一程序,所述装置包括:
第一发送单元1001,配置为,向数据管理方发送数据请求,用于请求使用与数据管理方中存储的至少一份第一加密数据对应的至少一份明文数据,其中,所述数据管理方包括第一可信执行环境,在所述第一可信执行环境中存储有至少一个第一密钥和与所述至少一个第一密钥分别对应的至少一份授权信息,其中,所述至少一个第一密钥用于分别解密所述至少一份第一加密数据以分别获取至少一份明文数据,所述至少一份授权信息与所述至少一份明文数据分别对应,且所述授权信息为关于被允许使用相应的明文数据的至少一个程序的信息;
第二发送单元1002,配置为,向所述数据管理方发送认证信息,以使得所述第一可信执行环境对于每份所述授权信息基于所述认证信息和该份授权信息进行验证,其中,所述认证信息由所述第二可信执行环境生成;
针对每份所述授权信息的,第一接收单元1003,配置为,在验证通过的情况中,由所述第二可信执行环境接收从所述第一可信执行环境安全传输的与该份授权信息对应的第二密钥,其中,所述第二密钥用于解密第二加密数据,所述第二加密数据由所述第一可信执行环境对与该份授权信息对应的明文数据重新加密所获取;获取单元1004,配置为,从所述数据管理方获取所述第二加密数据;解密单元1005,配置为,在所述第二可信执行环境中使用所述第二密钥对所述第二加密数据进行解密,以获取相应的明文数据;以及
计算单元1006,配置为,在所述第二可信执行环境中通过所述第一程序基于所述至少一份明文数据进行计算,以获取计算结果。
在一个实施例中,所述第一程序具有第一代码哈希值,其中,每份授权信息中包括第一代码哈希值、及与所述第一代码哈希值对应的第三密钥,所述第三密钥用于对所述第一程序的计算结果进行加密、由与该计算结果对应的计算结果使用方提供,所述装置还包括,
第二接收单元1007,配置为,对于每份所述授权信息,在验证通过的情况中,由所述第二可信执行环境接收从所述第一可信执行环境安全传输的与该份授权信息对应的第三密钥;
确定单元1008,配置为,在获取所述计算结果之后,在所述第二可信执行环境中确定与各份所述授权信息分别对应的各个第三密钥是否一致;以及
加密单元1009,配置为,在各个所述第三密钥一致的情况中,在所述第二可信执行环境中使用所述第三密钥对所述计算结果进行加密,以获取加密计算结果。
在一个实施例中,所述装置还包括第三发送单元1010,配置为,在获取加密计算结果之后,将所述加密计算结果发送给所述计算结果使用方。
在一个实施例中,所述获取单元1004还配置为,从所述数据管理方读取所述第二加密数据。
图11示出根据本说明书实施例的一种数据处理装置1100,所述装置在数据使用方实施,所述数据使用方包括第二可信执行环境,所述第二可信执行环境中运行有第一程序,所述装置包括:
第一发送单元111,配置为,向数据管理方发送数据请求,用于请求使用与数据管理方中存储的至少一份第一加密数据分别对应的至少一份明文数据,其中,所述数据管理方包括第一可信执行环境,在所述第一可信执行环境中存储有至少一个第一密钥和与所述至少一个第一密钥分别对应的至少一份授权信息,其中,所述至少一个第一密钥用于分别解密所述至少一份第一加密数据以分别获取至少一份明文数据,所述至少一份授权信息与所述至少一份明文数据分别对应,且所述授权信息为关于被允许使用相应的明文数据的至少一个程序的信息;
第二发送单元112,配置为,向所述数据管理方发送认证信息,以使得所述第一可信执行环境对于每份所述授权信息基于所述认证信息和该份授权信息进行验证,其中,所述认证信息由所述第二可信执行环境生成;
第一接收单元113,配置为,针对每份所述授权信息的,在验证通过的情况中,由所述第二可信执行环境接收从所述第一可信执行环境安全传输的与该份授权信息对应的明文信息,其中,所述明文信息由所述第一可信执行环境基于与该份授权信息对应的第一密钥、及相应的第一加密数据获取;以及
计算单元114,配置为,在所述第二可信执行环境中通过所述第一程序基于所述至少一份明文数据进行计算,以获取计算结果。
本说明书另一方面提供一种计算设备,包括存储器和处理器,其特征在于,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现上述任一项方法。
在根据本说明书实施例的数据处理方案中,利用TEE、RA技术搭建了数据提供方可信赖的数据授权系统,通过技术层面而非第三方信赖来保证中间数据授权平台不会窥探、篡改数据提供方的数据,同时运行速度快,支持任何代码可表示的融合计算,更有效率、更加通用;为数据授权系统、数据提供方以及数据使用方提出了一整套协议流程,通过该流程可以保证数据的隐私性,多方数据的合规使用;在设计上达成了可以针对数据使用行为授权、可选择性地对数数据融合的输出结果进行访问控制两个特性,以满足实际多方数据融合的通用入口、出口权限控制;数据授权系统在设计上避免了机构原始密钥注入到业务方的TEE的可能性,保证了即使业务方的TEE被破解,破解者也只能窥探所访问的数据明文,其他使用相同机构密钥加密的数据仍然可以得到有效保护;数据授权系统作为中间层,为数据提供方和数据使用方解耦,数据提供方一次上传即可,数据使用方多次使用不需要数据提供方重复上传,在重复使用数据时可以有效提升数据访问效率;数据授权系统在设计上允许数据提供方事先离线上传好即可,数据提供方无需部署数据提供服务来实时配合融合业务传输数据,提升易用性。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本领域普通技术人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执轨道,取决于技术方案的特定应用和设计约束条件。本领域普通技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、处理器执轨道的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (35)

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

Priority Applications (1)

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

Applications Claiming Priority (1)

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

Publications (2)

Publication Number Publication Date
CN110034924A true CN110034924A (zh) 2019-07-19
CN110034924B CN110034924B (zh) 2022-05-13

Family

ID=67235334

Family Applications (1)

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

Country Status (1)

Country Link
CN (1) CN110034924B (zh)

Cited By (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111049825A (zh) * 2019-12-12 2020-04-21 支付宝(杭州)信息技术有限公司 一种基于可信执行环境的安全多方计算方法和系统
CN111064569A (zh) * 2019-12-09 2020-04-24 支付宝(杭州)信息技术有限公司 可信计算集群的集群密钥获取方法及装置
CN111090865A (zh) * 2019-12-17 2020-05-01 支付宝(杭州)信息技术有限公司 一种密钥授权方法和系统
CN111181720A (zh) * 2019-12-31 2020-05-19 支付宝(杭州)信息技术有限公司 基于可信执行环境的业务处理方法及装置
WO2020119258A1 (zh) * 2018-12-12 2020-06-18 阿里巴巴集团控股有限公司 一种数据处理方法和装置
CN111327643A (zh) * 2020-05-15 2020-06-23 支付宝(杭州)信息技术有限公司 一种多方数据共享方法和装置
CN111510918A (zh) * 2020-04-28 2020-08-07 拉扎斯网络科技(上海)有限公司 通信方法、系统、装置、电子设备和可读存储介质
CN111510462A (zh) * 2020-04-28 2020-08-07 拉扎斯网络科技(上海)有限公司 通信方法、系统、装置、电子设备和可读存储介质
CN111597579A (zh) * 2020-04-26 2020-08-28 北京百度网讯科技有限公司 卫生安全检测方法、装置、电子设备及存储介质
CN111597226A (zh) * 2020-04-26 2020-08-28 北京百度网讯科技有限公司 数据挖掘系统、方法、装置、电子设备及存储介质
CN111625815A (zh) * 2020-05-26 2020-09-04 牛津(海南)区块链研究院有限公司 一种基于可信执行环境的数据交易方法及装置
CN111930846A (zh) * 2020-09-15 2020-11-13 支付宝(杭州)信息技术有限公司 一种数据处理方法、装置及设备
CN112800436A (zh) * 2021-04-07 2021-05-14 支付宝(杭州)信息技术有限公司 数据授权方法、装置及电子设备
US11341284B2 (en) 2020-09-04 2022-05-24 Alipay (Hangzhou) Information Technology Co., Ltd. Trusted hardware-based data management methods, apparatuses, and devices
CN114584306A (zh) * 2022-05-05 2022-06-03 腾讯科技(深圳)有限公司 一种数据处理方法和相关装置
US11354448B2 (en) 2020-09-04 2022-06-07 Alipay (Hangzhou) Information Technology Co., Ltd. Demand trusted device-based data acquisition methods, apparatuses, and devices
US11354447B2 (en) 2020-08-28 2022-06-07 Alipay (Hangzhou) Information Technology Co., Ltd. Data authorization information acquisition methods, apparatuses, and devices
US11362815B2 (en) 2020-08-28 2022-06-14 Alipay (Hangzhou) Information Technology Co., Ltd. Trusted data transmission methods, apparatuses, and devices
US11386191B2 (en) 2020-09-15 2022-07-12 Alipay (Hangzhou) Information Technology Co., Ltd. Trusted hardware-based identity management methods, apparatuses, and devices
CN115085983A (zh) * 2022-06-02 2022-09-20 度小满科技(北京)有限公司 数据处理方法、装置、计算机可读存储介质和电子设备
US11455417B2 (en) 2020-09-04 2022-09-27 Alipay (Hangzhou) Information Technology Co., Ltd. Data processing methods, apparatuses, and devices
WO2022199290A1 (zh) * 2021-03-25 2022-09-29 支付宝(杭州)信息技术有限公司 多方安全计算
CN115580413A (zh) * 2022-12-07 2023-01-06 南湖实验室 一种零信任的多方数据融合计算方法和装置
US11604894B2 (en) 2020-07-24 2023-03-14 Alipay (Hangzhou) Information Technology Co., Ltd. Data processing methods, apparatuses, devices, and media
US11614929B2 (en) 2020-08-28 2023-03-28 Alipay (Hangzhou) Information Technology Co., Ltd. Identity registration methods, apparatuses, and devices
US11652879B2 (en) 2020-08-28 2023-05-16 Alipay (Hangzhou) Information Technology Co., Ltd. Matching methods, apparatuses, and devices based on trusted asset data
US11726968B2 (en) 2020-09-15 2023-08-15 Alipay (Hangzhou) Information Technology Co., Ltd. Methods, apparatuses, and devices for transferring data assets based on blockchain
US12010249B1 (en) 2022-12-07 2024-06-11 Nanhu Laboratory Method and device for zero-trust fusion computation of multi-party data

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102510333A (zh) * 2011-09-30 2012-06-20 飞天诚信科技股份有限公司 一种授权认证方法及系统
US20130194053A1 (en) * 2012-01-27 2013-08-01 Tektronix, Inc. Integrated Combiner with Common Mode Correction
CN105515757A (zh) * 2014-09-22 2016-04-20 中国银联股份有限公司 基于可信执行环境的安全性信息交互设备
CN106104542A (zh) * 2013-12-24 2016-11-09 英特尔公司 对于数据即服务(DaaS)的内容保护
CN106464488A (zh) * 2015-08-28 2017-02-22 华为技术有限公司 信息传输方法及移动设备
CN107925795A (zh) * 2015-06-29 2018-04-17 纳格拉维森公司 内容保护

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102510333A (zh) * 2011-09-30 2012-06-20 飞天诚信科技股份有限公司 一种授权认证方法及系统
US20130194053A1 (en) * 2012-01-27 2013-08-01 Tektronix, Inc. Integrated Combiner with Common Mode Correction
CN106104542A (zh) * 2013-12-24 2016-11-09 英特尔公司 对于数据即服务(DaaS)的内容保护
CN105515757A (zh) * 2014-09-22 2016-04-20 中国银联股份有限公司 基于可信执行环境的安全性信息交互设备
CN107925795A (zh) * 2015-06-29 2018-04-17 纳格拉维森公司 内容保护
CN106464488A (zh) * 2015-08-28 2017-02-22 华为技术有限公司 信息传输方法及移动设备

Cited By (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11038673B2 (en) 2018-12-12 2021-06-15 Advanced New Technologies Co., Ltd. Data processing method and apparatus
WO2020119258A1 (zh) * 2018-12-12 2020-06-18 阿里巴巴集团控股有限公司 一种数据处理方法和装置
CN111064569A (zh) * 2019-12-09 2020-04-24 支付宝(杭州)信息技术有限公司 可信计算集群的集群密钥获取方法及装置
CN111049825B (zh) * 2019-12-12 2021-11-30 支付宝(杭州)信息技术有限公司 一种基于可信执行环境的安全多方计算方法和系统
CN111049825A (zh) * 2019-12-12 2020-04-21 支付宝(杭州)信息技术有限公司 一种基于可信执行环境的安全多方计算方法和系统
CN111090865A (zh) * 2019-12-17 2020-05-01 支付宝(杭州)信息技术有限公司 一种密钥授权方法和系统
CN111181720A (zh) * 2019-12-31 2020-05-19 支付宝(杭州)信息技术有限公司 基于可信执行环境的业务处理方法及装置
CN111597226A (zh) * 2020-04-26 2020-08-28 北京百度网讯科技有限公司 数据挖掘系统、方法、装置、电子设备及存储介质
CN111597579A (zh) * 2020-04-26 2020-08-28 北京百度网讯科技有限公司 卫生安全检测方法、装置、电子设备及存储介质
CN111510462A (zh) * 2020-04-28 2020-08-07 拉扎斯网络科技(上海)有限公司 通信方法、系统、装置、电子设备和可读存储介质
CN111510918A (zh) * 2020-04-28 2020-08-07 拉扎斯网络科技(上海)有限公司 通信方法、系统、装置、电子设备和可读存储介质
CN111510918B (zh) * 2020-04-28 2022-08-02 拉扎斯网络科技(上海)有限公司 通信方法、系统、装置、电子设备和可读存储介质
CN111510462B (zh) * 2020-04-28 2022-07-08 拉扎斯网络科技(上海)有限公司 通信方法、系统、装置、电子设备和可读存储介质
CN111327643A (zh) * 2020-05-15 2020-06-23 支付宝(杭州)信息技术有限公司 一种多方数据共享方法和装置
CN111625815B (zh) * 2020-05-26 2023-09-26 牛津(海南)区块链研究院有限公司 一种基于可信执行环境的数据交易方法及装置
CN111625815A (zh) * 2020-05-26 2020-09-04 牛津(海南)区块链研究院有限公司 一种基于可信执行环境的数据交易方法及装置
US11604894B2 (en) 2020-07-24 2023-03-14 Alipay (Hangzhou) Information Technology Co., Ltd. Data processing methods, apparatuses, devices, and media
US11614929B2 (en) 2020-08-28 2023-03-28 Alipay (Hangzhou) Information Technology Co., Ltd. Identity registration methods, apparatuses, and devices
US11652879B2 (en) 2020-08-28 2023-05-16 Alipay (Hangzhou) Information Technology Co., Ltd. Matching methods, apparatuses, and devices based on trusted asset data
US11354447B2 (en) 2020-08-28 2022-06-07 Alipay (Hangzhou) Information Technology Co., Ltd. Data authorization information acquisition methods, apparatuses, and devices
US11362815B2 (en) 2020-08-28 2022-06-14 Alipay (Hangzhou) Information Technology Co., Ltd. Trusted data transmission methods, apparatuses, and devices
US11354448B2 (en) 2020-09-04 2022-06-07 Alipay (Hangzhou) Information Technology Co., Ltd. Demand trusted device-based data acquisition methods, apparatuses, and devices
US11341284B2 (en) 2020-09-04 2022-05-24 Alipay (Hangzhou) Information Technology Co., Ltd. Trusted hardware-based data management methods, apparatuses, and devices
US11455417B2 (en) 2020-09-04 2022-09-27 Alipay (Hangzhou) Information Technology Co., Ltd. Data processing methods, apparatuses, and devices
CN111930846A (zh) * 2020-09-15 2020-11-13 支付宝(杭州)信息技术有限公司 一种数据处理方法、装置及设备
US11726968B2 (en) 2020-09-15 2023-08-15 Alipay (Hangzhou) Information Technology Co., Ltd. Methods, apparatuses, and devices for transferring data assets based on blockchain
US11494511B2 (en) 2020-09-15 2022-11-08 Alipay (Hangzhou) Information Technology Co., Ltd. Data processing methods, apparatuses, and devices
US11386191B2 (en) 2020-09-15 2022-07-12 Alipay (Hangzhou) Information Technology Co., Ltd. Trusted hardware-based identity management methods, apparatuses, and devices
WO2022199290A1 (zh) * 2021-03-25 2022-09-29 支付宝(杭州)信息技术有限公司 多方安全计算
CN112800436A (zh) * 2021-04-07 2021-05-14 支付宝(杭州)信息技术有限公司 数据授权方法、装置及电子设备
CN112800436B (zh) * 2021-04-07 2021-06-29 支付宝(杭州)信息技术有限公司 数据授权方法、装置及电子设备
CN114584306A (zh) * 2022-05-05 2022-06-03 腾讯科技(深圳)有限公司 一种数据处理方法和相关装置
CN115085983A (zh) * 2022-06-02 2022-09-20 度小满科技(北京)有限公司 数据处理方法、装置、计算机可读存储介质和电子设备
CN115085983B (zh) * 2022-06-02 2024-03-12 度小满科技(北京)有限公司 数据处理方法、装置、计算机可读存储介质和电子设备
CN115580413A (zh) * 2022-12-07 2023-01-06 南湖实验室 一种零信任的多方数据融合计算方法和装置
US12010249B1 (en) 2022-12-07 2024-06-11 Nanhu Laboratory Method and device for zero-trust fusion computation of multi-party data

Also Published As

Publication number Publication date
CN110034924B (zh) 2022-05-13

Similar Documents

Publication Publication Date Title
CN110034924A (zh) 一种数据处理方法和装置
TWI709314B (zh) 資料處理方法和裝置
US10673632B2 (en) Method for managing a trusted identity
CA2808369C (en) System for protecting an encrypted information unit
CN110084068A (zh) 区块链系统及用于区块链系统的数据处理方法
KR100502580B1 (ko) 보안성이 향상된 디지털 컨텐츠 유통 방법
CN105103119A (zh) 数据安全服务系统
US20110213957A1 (en) Layered protection and validation of identity data delivered online via multiple intermediate clients
CN107370595A (zh) 一种基于细粒度的密文访问控制方法
CN101142599A (zh) 基于硬件识别的数字权利管理系统
CN111160908B (zh) 基于区块链的供应链交易隐私保护系统、方法及相关设备
CN106027503A (zh) 一种基于tpm的云存储数据加密方法
KR102560295B1 (ko) 사용자-보호된 라이센스
CN105164692A (zh) 数据管理
CN105122265A (zh) 数据安全服务系统
CN111859446A (zh) 一种农产品溯源信息共享-隐私保护的方法及系统
US20130173923A1 (en) Method and system for digital content security cooperation
Chidambaram et al. Enhancing the security of customer data in cloud environments using a novel digital fingerprinting technique
CN110992034A (zh) 基于区块链的供应链交易隐私保护系统、方法及相关设备
EP3455763B1 (en) Digital rights management for anonymous digital content sharing
KR20100114321A (ko) 디지털 콘텐츠 거래내역 인증확인 시스템 및 그 방법
KR20220125567A (ko) 의료 클라우드 환경에서 환자의 의료 데이터 공유 시스템 및 방법
US11451522B2 (en) System and method for enabling the secure storage, transmission and access of genetic data
CN105049433B (zh) 标识化卡号信息传输验证方法及系统
TW202101267A (zh) 帳戶資料處理方法及帳戶資料處理系統

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20201013

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

Applicant after: Innovative advanced technology Co.,Ltd.

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

Applicant before: Advanced innovation technology Co.,Ltd.

Effective date of registration: 20201013

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

Applicant after: Advanced innovation technology Co.,Ltd.

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

Applicant before: Alibaba Group Holding Ltd.

GR01 Patent grant
GR01 Patent grant