TWI709314B - 資料處理方法和裝置 - Google Patents

資料處理方法和裝置 Download PDF

Info

Publication number
TWI709314B
TWI709314B TW108133964A TW108133964A TWI709314B TW I709314 B TWI709314 B TW I709314B TW 108133964 A TW108133964 A TW 108133964A TW 108133964 A TW108133964 A TW 108133964A TW I709314 B TWI709314 B TW I709314B
Authority
TW
Taiwan
Prior art keywords
data
execution environment
trusted execution
piece
information
Prior art date
Application number
TW108133964A
Other languages
English (en)
Other versions
TW202023250A (zh
Inventor
余超凡
黃群山
王磊
Original Assignee
開曼群島商創新先進技術有限公司
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 開曼群島商創新先進技術有限公司 filed Critical 開曼群島商創新先進技術有限公司
Publication of TW202023250A publication Critical patent/TW202023250A/zh
Application granted granted Critical
Publication of TWI709314B publication Critical patent/TWI709314B/zh

Links

Images

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的示意圖。如圖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、或技術領域內所公知的任意其它形式的儲存媒體中。 以上所述的具體實施方式,對本發明的目的、技術方案和有益效果進行了進一步詳細說明,所應理解的是,以上所述僅為本發明的具體實施方式而已,並不用於限定本發明的保護範圍,凡在本發明的精神和原則之內,所做的任何修改、等同替換、改進等,均應包含在本發明的保護範圍之內。
11:資料提供方 12:資料管理方 13:資料管理方 14:資料使用方 15:結果使用方 100:系統 111:獲取單元 112:發送單元 113:驗證單元 114:安全傳輸單元 115:提供單元 121:獲取單元 122:發送單元 123:驗證單元 124:安全傳輸單元 131:第一接收單元 132:第二接收單元 133:驗證單元 134:第一安全傳輸單元 135:提供單元 136:第二安全傳輸單元 141:第一接收單元 142:第二接收單元 143:驗證單元 144:安全傳輸單元 161:第一發送單元 162:第二發送單元 163:第一接收單元 164:計算單元 1100:資料處理裝置 1200:資料處理裝置 1300:資料處理裝置 1400:資料處理裝置 1500:資料處理裝置 1501:第一發送單元 1502:第二發送單元 1503:第一接收單元 1504:獲取單元 1505:解密單元 1506:計算單元 1507:第二接收單元 1508:確定單元 1509:加密單元 1510:第三發送單元 1600:資料處理裝置
透過結合圖式描述本說明書實施例,可以使得本說明書實施例更加清楚: [圖1]示出根據本說明書實施例的資料處理系統100的示意圖; [圖2]示出根據本說明書實施例的一種資料處理方法流程圖; [圖3]示意示出由資料提供方安全傳輸至第一TEE的資訊; [圖4]示出根據本說明書實施例的一種資料處理方法流程圖; [圖5]示出根據本說明書實施例的一種資料處理方法流程圖; [圖6]示意示出在資料管理方中儲存的資料; [圖7]示出根據本說明書實施例的一種資料處理方法流程圖; [圖8]示出根據本說明書實施例的一種資料處理方法流程圖; [圖9]示出根據本說明書實施例的一種資料處理方法流程圖; [圖10]示出根據本說明書實施例的資料處理方法中資料提供方、資料管理方、資料使用方之間的互動圖; [圖11]示出根據本說明書實施例的一種資料處理裝置1100; [圖12]示出根據本說明書實施例的一種資料處理裝置1200; [圖13]示出根據本說明書實施例的一種資料處理裝置1300; [圖14]示出根據本說明書實施例的一種資料處理裝置1400; [圖15]示出根據本說明書實施例的一種資料處理裝置1500; [圖16]示出根據本說明書實施例的一種資料處理裝置1600。
11:資料提供方
12:資料管理方
13:資料管理方
14:資料使用方
15:結果使用方
100:系統
131:第一接收單元
132:第二接收單元
141:第一接收單元

Claims (39)

  1. 一種資料處理方法,該方法在資料提供方執行,該資料提供方擁有第一明文資料,該方法包括:獲取該第一明文資料的第一加密資料、用於解密該第一加密資料的第一密鑰、以及關於該第一明文資料的授權資訊;向資料管理方發送驗證請求,其中,該資料管理方包括第一可信執行環境;從該資料管理方接收認證資訊,並基於該認證資訊進行驗證,其中,該認證資訊由該第一可信執行環境產生;在驗證通過的情況中,將該第一密鑰和該授權資訊安全傳輸至該第一可信執行環境;以及將該第一加密資料提供給該資料管理方,其中,基於該認證資訊進行驗證包括,基於該認證資訊驗證:該第一可信執行環境中是否安裝有並正在執行用於資料使用授權的程式。
  2. 一種資料處理方法,該方法在資料提供方執行,該資料提供方擁有第一明文資料,該方法包括:獲取關於該第一明文資料的授權資訊;向資料管理方發送驗證請求,其中,該資料管理方包括第一可信執行環境;從該資料管理方接收認證資訊,並基於該認證資訊進 行驗證,其中,該認證資訊由該第一可信執行環境產生;以及在驗證通過的情況中,將該第一明文資料和該授權資訊安全傳輸至該第一可信執行環境,其中,基於該認證資訊進行驗證包括,基於該認證資訊驗證:該第一可信執行環境中是否安裝有並正在執行用於資料使用授權的程式。
  3. 根據申請專利範圍第1或2項所述的方法,其中,該授權資訊包括至少一個程式碼雜湊值,該至少一個程式碼雜湊值分別為被允許使用該第一明文資料的至少一個程式各自的程式碼雜湊值。
  4. 根據申請專利範圍第3項所述的方法,其中,該授權資訊包括與該至少一個程式碼雜湊值分別對應的至少一個存取權限資訊,該存取權限資訊為關於相應程式的計算結果的資訊。
  5. 根據申請專利範圍第4項所述的方法,其中,該存取權限資訊為第二密鑰,該第二密鑰用於加密相應的計算結果、由與該計算結果對應的計算結果使用方提供。
  6. 根據申請專利範圍第4項所述的方法,其中,該存取權限資訊為空資訊。
  7. 根據申請專利範圍第1或2項所述的方法,其中,該安全傳輸為加密傳輸。
  8. 一種資料處理方法,該方法在資料管理方執行,該資料管理方包括第一可信執行環境、並且儲存有至少一份加密資料,其中,在該第一可信執行環境中儲存有至少一個第一密鑰和與該至少一個第一密鑰分別對應的至少一份授權資訊,其中,該至少一個第一密鑰用於分別解密該至少一份加密資料以分別獲取至少一份明文資料,該至少一份授權資訊與該至少一份明文資料分別對應,且該授權資訊為關於被允許使用相應的明文資料的至少一個程式的資訊,該方法包括:接收資料使用方的資料請求,該資料請求用於請求使用該至少一份明文資料,其中,該資料使用方包括第二可信執行環境;從該資料使用方接收認證資訊,該認證資訊由該第二可信執行環境產生;在該第一可信執行環境中,對於每份該授權資訊,基於該認證資訊和該份授權資訊進行驗證;以及對於每份該授權資訊,在驗證通過的情況中,由第一可信執行環境將與該份授權資訊對應的第一密鑰安全傳輸給該第二可信執行環境,以及將相應的加密資料提供給該資料使用方。
  9. 一種資料處理方法,該方法在資料管理方執行,該資料管理方包括第一可信執行環境,其中,在該第一可信執行環境中儲存有至少一份明文資料、以及與該至少一份明文資料分別對應的至少一份授權資訊,其中,該授權資訊為關於被允許使用相應的明文資料的至少一個程式的資訊,該方法包括:接收資料使用方的資料請求,該資料請求用於請求使用該至少一份明文資料,其中,該資料使用方包括第二可信執行環境;從該資料使用方接收認證資訊,其中,該認證資訊由該第二可信執行環境產生;在該第一可信執行環境中,對於每份該授權資訊,基於該認證資訊和該份授權資訊進行驗證;以及對於每份該授權資訊,在驗證通過的情況中,由第一可信執行環境將與該份授權資訊對應的明文資料安全傳輸給該第二可信執行環境。
  10. 根據申請專利範圍第8或9項所述的方法,其中該第一可信執行環境與該第二可信執行環境位於一個平臺、或不同的平臺中。
  11. 根據申請專利範圍第8或9項所述的方法,其中,從該資料使用方接收認證資訊包括,由該第一可信執行環境接 收從該第二可信執行環境安全傳輸的認證資訊。
  12. 根據申請專利範圍第8項所述的方法,其中,該認證資訊中包括該第二可信執行環境中安裝並正在運行的第一程式的第一程式碼雜湊值,其中,該每份授權資訊包括該至少一個程式各自的程式碼雜湊值,其中,對於每份該授權資訊,基於該認證資訊和該份授權資訊進行驗證包括,對於每份授權資訊,驗證該第一程式碼雜湊值是否為該份授權資訊中包括的一個程式碼雜湊值。
  13. 根據申請專利範圍第12項所述的方法,其中,每份該授權資訊中包括第一程式碼雜湊值、和與該第一程式碼雜湊值對應的第二密鑰,該第二密鑰用於對該第一程式的計算結果進行加密、由與該計算結果對應的計算結果使用方提供,其中,該方法還包括,對於每份該授權資訊,在驗證通過的情況中,還由該第一可信執行環境將該第二密鑰安全傳輸給該第二可信執行環境。
  14. 根據申請專利範圍第8項所述的方法,其中,該資料管理方還包括資料儲存模組,其中,該至少一份加密資料被儲存在該資料儲存模組中。
  15. 一種資料處理方法,該方法在資料使用方執行,該資料使用方包括第二可信執行環境,該第二可信執行環境中 運行有第一程式,該方法包括:向資料管理方發送資料請求,用於請求使用與資料管理方中儲存的至少一份加密資料對應的至少一份明文資料,其中,該資料管理方包括第一可信執行環境,在該第一可信執行環境中儲存有至少一個第一密鑰和與該至少一個第一密鑰分別對應的至少一份授權資訊,其中,該至少一個第一密鑰用於分別解密該至少一份加密資料以分別獲取該至少一份明文資料,該至少一份授權資訊與該至少一份明文資料分別對應,且該授權資訊為關於被允許使用相應的明文資料的至少一個程式的資訊;向該資料管理方發送認證資訊,以使得該第一可信執行環境對於每份該授權資訊基於該認證資訊和該份授權資訊進行驗證,其中,該認證資訊由該第二可信執行環境產生;對於每份該授權資訊,在驗證通過的情況中,由該第二可信執行環境接收從該第一可信執行環境安全傳輸的與該份授權資訊對應的第一密鑰;從該資料管理方獲取與該份授權資訊對應的加密資料;在該第二可信執行環境中使用該第一密鑰對該加密資料進行解密,以獲取相應的明文資料;以及在該第二可信執行環境中透過該第一程式基於該至少一份明文資料進行計算,以獲取計算結果。
  16. 一種資料處理方法,該方法在資料使用方執行,該資 料使用方包括第二可信執行環境,該第二可信執行環境中運行有第一程式,該方法包括:向資料管理方發送資料請求,用於請求使用資料管理方中儲存的至少一份明文資料,其中,該資料管理方包括第一可信執行環境,在該第一可信執行環境中儲存有該至少一份明文資料和與該至少一份明文資料分別對應的至少一份授權資訊,其中,該授權資訊為關於被允許使用相應的明文資料的至少一個程式的資訊;向該資料管理方發送認證資訊,以使得該第一可信執行環境對於每份該授權資訊基於該認證資訊和該份授權資訊進行驗證,其中,該認證資訊由該第二可信執行環境產生;對於每份該授權資訊,在驗證通過的情況中,由該第二可信執行環境接收從該第一可信執行環境安全傳輸的與該份授權資訊對應的明文資料;以及在該第二可信執行環境中透過該第一程式基於該至少一份明文資料進行計算,以獲取計算結果。
  17. 根據申請專利範圍第15或16項所述的方法,其中,該第一程式具有第一程式碼雜湊值,其中,每份授權資訊中包括第一程式碼雜湊值、及與第一程式碼雜湊值對應的第二密鑰,該第二密鑰用於對該第一程式的計算結果進行加密、由與該計算結果對應的計算結果使用方提供,該方法還包括, 對於每份該授權資訊,在驗證通過的情況中,由該第二可信執行環境接收從該第一可信執行環境安全傳輸的與該份授權資訊對應的第二密鑰;在獲取該計算結果之後,在該第二可信執行環境中確定與各份該授權資訊分別對應的各個第二密鑰是否一致;以及在各個該第二密鑰一致的情況中,在該第二可信執行環境中使用該第二密鑰對該計算結果進行加密,以獲取加密計算結果。
  18. 根據申請專利範圍第17項所述的方法,還包括,在獲取加密計算結果之後,將該加密計算結果發送給該計算結果使用方。
  19. 根據申請專利範圍第15項所述的方法,其中,從該資料管理方獲取與該份授權資訊對應的加密資料包括,從該資料管理方讀取與該份授權資訊對應的加密資料。
  20. 一種資料處理裝置,該裝置在資料提供方實施,該資料提供方擁有第一明文資料,該裝置包括:獲取單元,配置為,獲取該第一明文資料的第一加密資料、用於解密該第一加密資料的第一密鑰、以及關於該第一明文資料的授權資訊;發送單元,配置為,向資料管理方發送驗證請求,其 中,該資料管理方包括第一可信執行環境;驗證單元,配置為,從該資料管理方接收認證資訊,並基於該認證資訊進行驗證,其中,該認證資訊由該第一可信執行環境產生;安全傳輸單元,配置為,在驗證通過的情況中,將該第一密鑰和該授權資訊安全傳輸至該第一可信執行環境;以及提供單元,配置為,將該第一加密資料提供給該資料管理方,其中,該驗證單元還配置為,基於該認證資訊驗證:該第一可信執行環境中是否安裝有並正在執行用於資料使用授權的程式。
  21. 一種資料處理裝置,該裝置在資料提供方實施,該資料提供方擁有第一明文資料,該裝置包括:獲取單元,配置為,獲取關於該第一明文資料的授權資訊;發送單元,配置為,向資料管理方發送驗證請求,其中,該資料管理方包括第一可信執行環境;驗證單元,配置為,從該資料管理方接收認證資訊,並基於該認證資訊進行驗證,其中,該認證資訊由該第一可信執行環境產生;以及安全傳輸單元,配置為,在驗證通過的情況中,將該第一明文資料和該授權資訊安全傳輸至該第一可信執行環 境,其中,該驗證單元還配置為,基於該認證資訊驗證:該第一可信執行環境中是否安裝有並正在執行用於資料使用授權的程式。
  22. 根據申請專利範圍第20或21項所述的裝置,其中,該授權資訊包括至少一個程式碼雜湊值,該至少一個程式碼雜湊值分別為被允許使用該第一明文資料的至少一個程式各自的程式碼雜湊值。
  23. 根據申請專利範圍第22項所述的裝置,其中,該授權資訊包括與該至少一個程式碼雜湊值分別對應的至少一個存取權限資訊,該存取權限資訊為關於相應程式的計算結果的資訊。
  24. 根據申請專利範圍第23項所述的裝置,其中,該存取權限資訊為第二密鑰,該第二密鑰用於加密相應的計算結果、由與該計算結果對應的計算結果使用方提供。
  25. 根據申請專利範圍第23項所述的裝置,其中,該存取權限資訊為空資訊。
  26. 根據申請專利範圍第20或21項所述的裝置,其中,該安全傳輸為加密傳輸。
  27. 一種資料處理裝置,該裝置在資料管理方實施,該資料管理方包括第一可信執行環境、並且儲存有至少一份加密資料,其中,在該第一可信執行環境中儲存有至少一個第一密鑰和與該至少一個第一密鑰分別對應的至少一份授權資訊,其中,該至少一個第一密鑰用於分別解密該至少一份加密資料以分別獲取至少一份明文資料,該至少一份授權資訊與該至少一份明文資料分別對應,且該授權資訊為關於被允許使用相應的明文資料的至少一個程式的資訊,該裝置包括:第一接收單元,配置為,接收資料使用方的資料請求,該資料請求用於請求使用該至少一份明文資料,其中,該資料使用方包括第二可信執行環境;第二接收單元,配置為,從該資料使用方接收認證資訊,該認證資訊由該第二可信執行環境產生;驗證單元,配置為,在該第一可信執行環境中,對於每份該授權資訊,基於該認證資訊和該份授權資訊進行驗證;以及針對每份授權資訊的,第一安全傳輸單元,配置為,在驗證通過的情況中,由第一可信執行環境將與該份授權資訊對應的第一密鑰安全傳輸給該第二可信執行環境;以及提供單元,配置為,將相應的加密資料提供給該資料使用方。
  28. 一種資料處理裝置,該裝置在資料管理方實施,該資料管理方包括第一可信執行環境,其中,在該第一可信執行環境中儲存有至少一份明文資料、以及與該至少一份明文資料分別對應的至少一份授權資訊,其中,該授權資訊為關於被允許使用相應的明文資料的至少一個程式的資訊,該裝置包括:第一接收單元,配置為,接收資料使用方的資料請求,該資料請求用於請求使用該至少一份明文資料,其中,該資料使用方包括第二可信執行環境;第二接收單元,配置為,從該資料使用方接收認證資訊,其中,該認證資訊由該第二可信執行環境產生;驗證單元,配置為,在該第一可信執行環境中,對於每份該授權資訊,基於該認證資訊和該份授權資訊進行驗證;以及針對每份該授權資訊的安全傳輸單元,配置為,在驗證通過的情況中,由第一可信執行環境將與該份授權資訊對應的明文資料安全傳輸給該第二可信執行環境。
  29. 根據申請專利範圍第27或28項所述的裝置,其中該第一可信執行環境與該第二可信執行環境位於一個平臺、或不同的平臺中。
  30. 根據申請專利範圍第27或28項所述的裝置,其中,該驗證單元還配置為,由該第一可信執行環境接收從該第二 可信執行環境安全傳輸的認證資訊。
  31. 根據申請專利範圍第27項所述的裝置,其中,該認證資訊中包括該第二可信執行環境中安裝並正在運行的第一程式的第一程式碼雜湊值,其中,該每份授權資訊包括該至少一個程式各自的程式碼雜湊值,其中,該驗證單元還配置為,對於每份授權資訊,驗證該第一程式碼雜湊值是否為該份授權資訊中包括的一個程式碼雜湊值。
  32. 根據申請專利範圍第31項所述的裝置,其中,每份該授權資訊中包括第一程式碼雜湊值、和與該第一程式碼雜湊值對應的第二密鑰,該第二密鑰用於對該第一程式的計算結果進行加密、由與該計算結果對應的計算結果使用方提供,其中,該裝置還包括第二安全傳輸單元,配置為,對於每份該授權資訊,在驗證通過的情況中,還由該第一可信執行環境將該第二密鑰安全傳輸給該第二可信執行環境。
  33. 根據申請專利範圍第27項所述的裝置,其中,該資料管理方還包括資料儲存模組,其中,該多個加密資料被儲存在該資料儲存模組中。
  34. 一種資料處理裝置,該裝置在資料使用方實施,該資料使用方包括第二可信執行環境,該第二可信執行環境中 運行有第一程式,該裝置包括:第一發送單元,配置為,向資料管理方發送資料請求,用於請求使用與資料管理方中儲存的至少一份加密資料對應的至少一份明文資料,其中,該資料管理方包括第一可信執行環境,在該第一可信執行環境中儲存有至少一個第一密鑰和與該至少一個第一密鑰分別對應的至少一份授權資訊,其中,該至少一個第一密鑰用於分別解密該至少一份加密資料以分別獲取該至少一份明文資料,該至少一份授權資訊與該至少一份明文資料分別對應,且該授權資訊為關於被允許使用相應的明文資料的至少一個程式的資訊;第二發送單元,配置為,向該資料管理方發送認證資訊,以使得該第一可信執行環境對於每份該授權資訊基於該認證資訊和該份授權資訊進行驗證,其中,該認證資訊由該第二可信執行環境產生;針對每份該授權資訊的,第一接收單元,配置為,在驗證通過的情況中,由該第二可信執行環境接收從該第一可信執行環境安全傳輸的與該份授權資訊對應的第一密鑰;獲取單元,配置為,從該資料管理方獲取與該份授權資訊對應的加密資料;解密單元,配置為,在該第二可信執行環境中使用該第一密鑰對該加密資料進行解密,以獲取相應的明文資料;以及計算單元,配置為,在該第二可信執行環境中透過該第一程式基於該至少一份明文資料進行計算,以獲取計算 結果。
  35. 一種資料處理裝置,該裝置在資料使用方實施,該資料使用方包括第二可信執行環境,該第二可信執行環境中運行有第一程式,該裝置包括:第一發送單元,配置為,向資料管理方發送資料請求,用於請求使用資料管理方中儲存的至少一份明文資料,其中,該資料管理方包括第一可信執行環境,在該第一可信執行環境中儲存有該至少一份明文資料和與該至少一份明文資料分別對應的至少一份授權資訊,其中,該授權資訊為關於被允許使用相應的明文資料的至少一個程式的資訊;第二發送單元,配置為,向該資料管理方發送認證資訊,以使得該第一可信執行環境對於每份該授權資訊基於該認證資訊和該份授權資訊進行驗證,其中,該認證資訊由該第二可信執行環境產生;針對每份該授權資訊的第一接收單元,配置為,對於每份該授權資訊,在驗證通過的情況中,由該第二可信執行環境接收從該第一可信執行環境安全傳輸的與該份授權資訊對應的明文資料;以及計算單元,配置為,在該第二可信執行環境中透過該第一程式基於該至少一份明文資料進行計算,以獲取計算結果。
  36. 根據申請專利範圍第34或35項所述的裝置,其中,該第一程式具有第一程式碼雜湊值,其中,每份授權資訊中包括第一程式碼雜湊值、及與第一程式碼雜湊值對應的第二密鑰,該第二密鑰用於對該第一程式的計算結果進行加密、由與該計算結果對應的計算結果使用方提供,該裝置還包括,針對每份該授權資訊的第二接收單元,配置為,在驗證通過的情況中,由該第二可信執行環境接收從該第一可信執行環境安全傳輸的與該份授權資訊對應的第二密鑰;確定單元,配置為,在獲取該計算結果之後,在該第二可信執行環境中確定與各份該授權資訊分別對應的各個第二密鑰是否一致,以及加密單元,配置為,在各個該第二密鑰一致的情況中,在該第二可信執行環境中使用該第二密鑰對該計算結果進行加密,以獲取加密計算結果。
  37. 根據申請專利範圍第36項所述的裝置,還包括第三發送單元,配置為,在獲取加密計算結果之後,將該加密計算結果發送給該計算結果使用方。
  38. 根據申請專利範圍第34項所述的裝置,其中,該獲取單元還配置為,從該資料管理方讀取與該份授權資訊對應的加密資料。
  39. 一種計算設備,包括記憶體和處理器,其特徵在於,該記憶體中儲存有可執行程式碼,該處理器執行該可執行程式碼時,實現申請專利範圍第1至19項中任一項所述的方法。
TW108133964A 2018-12-12 2019-09-20 資料處理方法和裝置 TWI709314B (zh)

Applications Claiming Priority (2)

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

Publications (2)

Publication Number Publication Date
TW202023250A TW202023250A (zh) 2020-06-16
TWI709314B true TWI709314B (zh) 2020-11-01

Family

ID=67165116

Family Applications (1)

Application Number Title Priority Date Filing Date
TW108133964A TWI709314B (zh) 2018-12-12 2019-09-20 資料處理方法和裝置

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 (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI770676B (zh) * 2020-11-17 2022-07-11 玉山商業銀行股份有限公司 線上交易處理系統及方法

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110737905B (zh) * 2019-09-19 2021-11-23 深圳市先河系统技术有限公司 数据授权方法、数据授权装置及计算机存储介质
CN110750803B (zh) * 2019-10-18 2021-04-09 支付宝(杭州)信息技术有限公司 数据提供和融合的方法及装置
US20210173945A1 (en) * 2019-12-06 2021-06-10 Pure Storage, Inc. Replicating data to a storage system that has an inferred trust relationship with a client
CN111079152B (zh) * 2019-12-13 2022-07-22 支付宝(杭州)信息技术有限公司 一种模型部署方法、装置及设备
CN110968743B (zh) * 2019-12-13 2021-07-06 支付宝(杭州)信息技术有限公司 针对隐私数据的数据存储、数据读取方法及装置
CN111625815B (zh) * 2020-05-26 2023-09-26 牛津(海南)区块链研究院有限公司 一种基于可信执行环境的数据交易方法及装置
CN112702740B (zh) * 2020-12-24 2023-04-07 国网浙江省电力有限公司经济技术研究院 一种LoRa物联网系统的数据安全传输方法
CN112861169B (zh) * 2021-01-14 2022-06-14 支付宝(杭州)信息技术有限公司 一种基于隐私保护的数据处理方法、装置及设备
US20220321332A1 (en) * 2021-03-30 2022-10-06 International Business Machines Corporation Post-quantum cryptography secured execution environments for edge devices
CN113268742B (zh) * 2021-04-07 2022-05-24 支付宝(杭州)信息技术有限公司 数据授权方法、装置及电子设备
CN113987554B (zh) * 2021-12-23 2022-04-08 支付宝(杭州)信息技术有限公司 获取数据授权的方法、装置及系统
CN114143117B (zh) * 2022-02-08 2022-07-22 阿里云计算有限公司 数据处理方法及设备
CN114679453B (zh) * 2022-03-10 2023-10-27 蚂蚁区块链科技(上海)有限公司 多方协同计算中检测恶意攻击的方法、装置、介质和计算设备
CN114584306B (zh) * 2022-05-05 2022-08-02 腾讯科技(深圳)有限公司 一种数据处理方法和相关装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104581214A (zh) * 2015-01-28 2015-04-29 三星电子(中国)研发中心 基于ARM TrustZone系统的多媒体内容保护方法和装置
CN105592071A (zh) * 2015-11-16 2016-05-18 中国银联股份有限公司 一种在设备之间进行授权的方法和装置
CN107959567A (zh) * 2016-10-14 2018-04-24 阿里巴巴集团控股有限公司 数据存储方法、数据获取方法、装置及系统

Family Cites Families (21)

* 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
WO2012139174A1 (en) * 2011-04-15 2012-10-18 Quintessencelabs Pty Ltd Qkd key management system
CN102413132B (zh) * 2011-11-16 2014-12-17 北京数码视讯软件技术发展有限公司 基于双向安全认证的数据下载方法及系统
US20140195804A1 (en) * 2012-10-12 2014-07-10 Safelylocked, Llc Techniques for secure data exchange
CN103179114B (zh) * 2013-03-15 2015-09-23 华中科技大学 一种云存储中的数据细粒度访问控制方法
CN104144048B (zh) * 2013-05-10 2018-02-02 华为技术有限公司 一种可信云存储环境下的密钥管理方法、装置和系统
US9071581B2 (en) * 2013-09-23 2015-06-30 Nvidia Corporation Secure storage with SCSI storage devices
EP3079299A4 (en) * 2013-12-02 2017-07-19 Mitsubishi Electric Corporation Data processing system, encryption apparatus, decryption apparatus, and program
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 中国银联股份有限公司 双执行环境之间双向访问应用的方法
CN106453196B (zh) * 2015-08-04 2020-01-07 中国移动通信集团公司 一种针对可信执行环境的密钥写入装置、系统及方法
US10701039B2 (en) * 2015-09-25 2020-06-30 Intel Corporation Mutual approval for privacy-preserving computing
US9977918B2 (en) * 2015-09-30 2018-05-22 Robert Bosch Gmbh Method and system for verifiable searchable symmetric encryption
US11075887B2 (en) * 2016-10-24 2021-07-27 Arm Ip Limited Federating data inside of a trusted execution environment
CN106790304A (zh) * 2017-03-24 2017-05-31 联想(北京)有限公司 数据访问方法、装置、节点以及服务器集群
CN108400989B (zh) * 2018-03-01 2021-07-30 恒宝股份有限公司 一种共享资源身份认证的安全认证设备、方法及系统
JP6852009B2 (ja) * 2018-03-20 2021-03-31 株式会社東芝 情報処理装置及び情報処理方法
CN110034924B (zh) * 2018-12-12 2022-05-13 创新先进技术有限公司 一种数据处理方法和装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104581214A (zh) * 2015-01-28 2015-04-29 三星电子(中国)研发中心 基于ARM TrustZone系统的多媒体内容保护方法和装置
CN105592071A (zh) * 2015-11-16 2016-05-18 中国银联股份有限公司 一种在设备之间进行授权的方法和装置
CN107959567A (zh) * 2016-10-14 2018-04-24 阿里巴巴集团控股有限公司 数据存储方法、数据获取方法、装置及系统

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI770676B (zh) * 2020-11-17 2022-07-11 玉山商業銀行股份有限公司 線上交易處理系統及方法

Also Published As

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

Similar Documents

Publication Publication Date Title
TWI709314B (zh) 資料處理方法和裝置
US10673632B2 (en) Method for managing a trusted identity
CN110034924B (zh) 一种数据处理方法和装置
EP3673435B1 (en) Improving integrity of communications between blockchain networks and external data sources
US11004067B2 (en) Methods and devices for protecting sensitive data of transaction activity based on smart contract in blockchain
JP2023502346A (ja) 量子安全ネットワーキング
US20160294794A1 (en) Security System For Data Communications Including Key Management And Privacy
CN105103119A (zh) 数据安全服务系统
JP2012518329A (ja) 信頼済みクラウドコンピューティングおよびサービスに関するフレームワーク
CN106027503A (zh) 一种基于tpm的云存储数据加密方法
CN105122265A (zh) 数据安全服务系统
Chidambaram et al. Enhancing the security of customer data in cloud environments using a novel digital fingerprinting technique
Suthar et al. EncryScation: A novel framework for cloud iaas, daas security using encryption and obfuscation techniques
Biswas et al. Secure login: a blockchain based web application for identity access management system
US11729159B2 (en) System security infrastructure facilitating protecting against fraudulent use of individual identity credentials
More et al. Decentralized Fingerprinting for Secure Peer-To-Peer Data Exchange of Aadhaar Via Public Key Infrastructure
Alharbi et al. A Blockchain Review: A Comparative Study Between Public Key Infrastructure and Identity Based Encryption
Zadka et al. Cryptography
Shah et al. Third party public auditing scheme for security in cloud storage
Ahila et al. Privacy Protection and User Traceability in Strong Key-Exposure Resilient Auditing for Cloud Storage
WO2024026428A1 (en) Digital identity allocation, assignment, and management
RANI et al. Ensuring Distributed Accountability for Data Sharing in the Cloud
Saki et al. TTSM: Trust Threshold Security Model for User Assured Security in Cloud Computing