CN114553603B - 一种基于隐私计算的新型数据可信解密的方法 - Google Patents

一种基于隐私计算的新型数据可信解密的方法 Download PDF

Info

Publication number
CN114553603B
CN114553603B CN202210437790.4A CN202210437790A CN114553603B CN 114553603 B CN114553603 B CN 114553603B CN 202210437790 A CN202210437790 A CN 202210437790A CN 114553603 B CN114553603 B CN 114553603B
Authority
CN
China
Prior art keywords
data
application
key
execution environment
trusted execution
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.)
Active
Application number
CN202210437790.4A
Other languages
English (en)
Other versions
CN114553603A (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.)
Nanhu Laboratory
Original Assignee
Nanhu Laboratory
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 Nanhu Laboratory filed Critical Nanhu Laboratory
Priority to CN202210437790.4A priority Critical patent/CN114553603B/zh
Publication of CN114553603A publication Critical patent/CN114553603A/zh
Application granted granted Critical
Publication of CN114553603B publication Critical patent/CN114553603B/zh
Priority to US18/154,506 priority patent/US11706022B1/en
Priority to NL2033980A priority patent/NL2033980A/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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
    • H04L63/0442Network 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 wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • 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/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • 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/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • G06F21/6254Protecting personal data, e.g. for financial or medical purposes by anonymising data, e.g. decorrelating personal data from the owner's identification
    • 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/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)
    • H04L9/0825Key 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) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • 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/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • 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/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/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/0877Generation of secret information including derivation or calculation of cryptographic keys or passwords using additional device, e.g. trusted platform module [TPM], smartcard, USB or hardware security module [HSM]
    • 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/321Cryptographic 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 involving a third party or a trusted authority
    • H04L9/3213Cryptographic 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 involving a third party or a trusted authority using tickets or tokens, e.g. Kerberos
    • 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
    • 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/3247Cryptographic 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 involving digital signatures

Abstract

本发明公开了一种基于隐私计算的新型数据可信解密的方法,数据使用方提供加密秘钥生成算法G的公钥Pk,数据提供方使用该G基于应用A、设备C和口令T计算加密秘钥K,使用K加密数据集D,使用Pk加密G得Ge,将ED和Ge发送给数据使用方,数据使用方使用自己可信封存的私钥Ps得到隐私秘钥生成算法G’,在可信执行环境中测算请求数据的应用A和本设备C得到MA’、CID’,基于MA’、CID’、用户输入的口令T通过G’计算加密秘钥K’,并用该K’解密ED,如果K’=K,则解密成功得到数据D,否则解密失败。本方案提出了一个加密数据解密秘钥不保存不传输实现数据加密解密的方案,不会存在数据秘钥保存不当导致泄漏数据被解密的问题。

Description

一种基于隐私计算的新型数据可信解密的方法
技术领域
本发明属于数据安全技术领域,尤其是涉及一种基于隐私计算的新型数据可信解密的方法。
背景技术
数据安全是计算机以及网络等学科的重要研究课题之一。它不仅关系到个人隐私、企业商业隐私,而且直接影响国家安全。
从数据安全角度来将,不加密的数据是不安全的,容易造成泄密事件,但是加密的数据不代表它有足够高的安全性,即使在普遍使用加密技术的现在,数据安全事故仍然层出不穷,主要原因有,1、数据秘钥被窃取导致数据被非法解密、泄漏;2、数据被合法解密后造成泄漏;3、传输路径不安全,导致数据泄漏。
针对以上问题,中国专利网公开了一种用于解决该问题的方案,一种防止被非法窃取的数据安全存储方法和装置,申请号:CN113111398A,该方案提出将加密数据写入易失性存储器,使用易失性存储器中的固定秘钥进行解密,这样就能够帮助操作人员及时删除解密数据,避免解密后的数据出现泄漏的问题,从而提高数据安全性。但是该方案存储在易失性存储器中的秘钥仍然存在泄漏的风险,外部软件或者受黑客控制的计算机Kernel层级仍然可以获取到秘钥,而且,该方案中解密数据需要传输给请求方,而传输路径并没有足够的安全保障,所以仍然存在较高的泄漏风险。
发明内容
本发明的目的是针对上述问题,提供一种基于隐私计算的新型数据可信解密的方法。
为达到上述目的,本发明采用了下列技术方案:
一种基于隐私计算的新型数据可信解密的方法,包括以下步骤:
S1.数据使用方的应用E在可信执行环境中生成非对称加密秘钥:公钥Pk和私钥Ps;
S2.由使用方芯片级私钥对应用E测量值和公钥Pk进行数字签名得到数据包PaK,将私钥Ps可信封存于本地,将数据包PaK传输给数据提供方;
S3.数据提供方对所述数据包PaK进行验证,验证通过后,获取其中的应用E测量值,判断应用E是否在应用白名单中,若是,则使用其中的公钥Pk对隐私秘钥生成算法G加密得到算法Ge并继续下列步骤,否则结束;
事先或在本步骤中指定数据集D及被授权使用此数据集D的应用A和/或设备C和/或授权/确认口令T;
S4.数据提供方基于MA和/或CID和/或T通过隐私秘钥生成算法G计算加密秘钥K,并使用该加密秘钥K加密数据集D得到加密数据ED,MA和CID分别为应用A和设备C在隐私计算模式下的测量值;
S5. 数据提供方将加密数据ED、算法Ge传输给数据使用方;
S6.数据使用方基于可信封存技术在可信执行环境中加载私钥Ps,使用私钥Ps解密算法Ge得到隐私秘钥生成算法G’;
在可信执行环境中测算请求数据的应用A和/或本设备C得到MA’和/或CID’,基于MA’和/或CID’和/或用户输入的口令T通过隐私秘钥生成算法G’计算加密秘钥K’,并用该加密秘钥K’解密加密数据ED,如果K’= K,则解密成功得到数据D,否则解密失败;
S7.应用A在可信执行环境中使用数据D并将得到的结果R输出可信执行环境以提供给数据使用方。
在上述的基于隐私计算的新型数据可信解密的方法中,步骤S3中,数据提供方基于使用方芯片级公钥验证数据包PaK的数字签名以验证PaK是否由使用方在合法可信执行环境中生成。
在上述的基于隐私计算的新型数据可信解密的方法中,步骤S2中,应用E测量值为应用E在可信执行环境下的内存测量值,由可信执行环境基于应用E进行测算得到。
在上述的基于隐私计算的新型数据可信解密的方法中,步骤S2中,数据包PaK通过在线方式传输给数据提供方,或者,通过移动存储器离线传输给数据提供方;
步骤S5中,加密数据ED、算法Ge通过在线方式传输给数据使用方,或者通过移动存储器离线传输给数据使用方;
所述的口令T为密码、秘钥或令牌,解密时需由数据使用方提供。
在上述的基于隐私计算的新型数据可信解密的方法中,应用A的测量值为应用A在可信执行环境隐私计算状态下的内存测量值MA;或者,应用A的测量值为应用提供方的标识符或应用提供方的签名公钥信息;
设备C的测量值为隐私计算模式下读取的此计算设备CPU的标识符设备号值CID。
在上述的基于隐私计算的新型数据可信解密的方法中,应用E集成在应用A中,且步骤S6中,数据使用方需使用数据时,在可信执行环境里启动应用A进入隐私计算模式,由应用A加载私钥Ps,解密秘钥生成算法G’,基于在应用A隐私计算环境测量得到的MA’、CID’以及数据提供者输入口令T从而以及计算得到加密秘钥K’并对加密数据ED进行解密;
或者,应用E与应用A运行于同一主机的可信执行环境中,且步骤S6中,数据使用方需使用数据时,在可信执行环境里启动应用E,应用E触发启动应用A,由应用E加载私钥Ps,解密秘钥生成算法G’,基于在应用A隐私计算环境测量得到的MA’、CID’以及数据提供者输入口令T从而计算得到加密秘钥K’并将加密秘钥K’可信传输给应用A,由应用A对加密数据ED进行解密以使用数据D。
在上述的基于隐私计算的新型数据可信解密的方法中,应用E与应用A运行于不同主机的可信执行环境中,且步骤S6中,数据使用方在需要使用数据时,相应的应用E在其所处计算设备的可信执行环境里启动,并远程触发应用A在其所处计算设备的可信执行环境里启动,并在可信执行环境中基于芯片直接测算、签名以验证应用A是否运行在合法的可信执行环境下,并基于此合法性验证建立应用E于应用A加密内存块间的安全加密传输隧道。
在上述的基于隐私计算的新型数据可信解密的方法中,由运行应用A的计算设备CPU在可信执行环境中测算应用A得到测量值MA’,读取设备号值CID’,在隐私计算可信环境中由芯片签名后通过安全加密传输隧道将MA’、CID’传输给应用E,应用E基于可信封存技术加载私钥Ps算法Ge得到隐私秘钥生成算法G’,验证MA’、CID’合法后基于MA’、CID’和口令T通过隐私秘钥生成算法G’计算加密秘钥K’,随后将加密秘钥K’通过安全加密传输隧道传给运行在可信执行环境中的应用A,由应用A解密数据ED得到数据D。
在上述的基于隐私计算的新型数据可信解密的方法中,步骤S3中,数据提供方同时用公钥Pk加密提供方私钥Ss生成Se;
步骤S5中,数据提供方同时将Se传输给数据使用方;
步骤S6中,数据使用方同时使用私钥Ps解密Se得到Ss;
步骤S7中,在应用A完成运行或即将完成运行时使用Ss对包括结果哈希值、使用方信息、签名时间戳、MA’、CID’哈希值、D哈希值中任意一项或多项的计算状态进行签名生成Sig,并将Sig通过在线或离线、同步或非同步方式发送给数据提供方。
在上述的基于隐私计算的新型数据可信解密的方法中,步骤S7之后还包括:
当接收到数据使用方的落盘存储请求时,使用秘钥K’对需落盘数据D2进行加密落盘,下次使用时重复步骤S6和S7。
本发明的优点在于:
1、加密数据只能在可信执行环境中被合法解密,应用使用完数据后立马销毁,所以不存在数据被合法解密后由于没有及时删除导致泄漏的问题;
2、本方案提出了一个加密数据解密秘钥不保存不传输实现数据加密解密的方案,不会存在数据秘钥保存不当导致泄漏数据被解密的问题,即使传输路径不安全也不会导致数据泄漏的问题;
3、解密秘钥的生成还基于数据被如何使用和在哪里被谁使用的一系列信息参数,数据提供方不再是单纯的提供方,还能够在提供数据的同时控制数据被如何使用和在哪里被谁使用,而不像传统数据一样一旦将数据共享出去后就失去控制权,大大提升数据解密、使用的安全性;
4、基于对sig数据验证,可以实时追踪数据在哪里、什么时候、被谁在可信环境里在保护隐私性前提下合法安全的使用。
附图说明
图1为本发明基于隐私计算的新型数据可信解密的方法的流程图。
具体实施方式
下面结合附图和具体实施方式对本发明做进一步详细的说明。
基于CPU层级机密运算或隐私计算是近年来兴起的在信息安全领域最前沿的技术之一,它是指基于芯片层级的可信基的可信执行环境,不受系统层、kernel层控制。加密数据仅在基于CPU层级的可信执行环境中解密并支撑运算,计算结束后可信执行环境中相关数据被销毁,解密的明文数据在整个流程中不会得以泄露,从而保证可信执行环境内的数据高隐私保护性;基于数据的计算在可信执行环境中运行,没有人(包括运行主机最高权限者或系统Kernel内核层级控制权拥有者者)能够侵入CPU层级可信执行环境对运算进行篡改,从而保证可信执行环境内的计算可信性。相应的技术目前有IntelSGX技术,AMD SEV技术等。芯片层级硬件安全环境相关的技术已被广泛应用于通用芯片,并集成在通用电脑与服务器上,比如目前英特尔i3,i5,i7笔记本和PC机,服务器Xeon等。
本方案利用可信执行环境的可靠性,基于可信执行环境提出一种新型的数据可信解密方法。在该方法中,加密数据只能在可信执行环境中被合法解密,应用使用完数据后立马自动销毁,所以不存在数据被合法解密后由于没有及时删除导致泄漏的问题;此外,本方案还提出加密数据解密秘钥不保存不传输的思路,并提供了一个既能够实现秘钥不保存不传输,又能够实现数据加密解密的可行方案,所以在本方案中,不会存在数据秘钥保存不当导致泄漏数据被解密的问题,即使传输路径不安全也不会导致数据泄漏的问题。并且,本方案中,数据提供方不再是单纯的提供方,还能够在提供数据的同时控制数据被如何使用和在哪里被谁使用,而不像传统数据一样一旦将数据共享出去后就失去控制权。
如图1所示,本方案实现方法如下:
S1.数据使用方的应用E在可信执行环境中生成非对称加密秘钥:公钥Pk和私钥Ps;
S2.由使用方芯片级私钥(芯片底层安全区的私钥)对公钥Pk和应用E内存测量值进行数字签名得到数据包PaK,使用方基于可信封存技术将私钥Ps可信封存于本地,将数据包PaK传输给数据提供方;数据包PaK通过在线方式传输给数据提供方,或者,通过移动存储器离线传输给数据提供方。另外,本领域技术人员应当知道可信封存技术(例如Intel SGXSealing技术)能够保证私钥Ps只能在可信执行环境中被加载使用,并且即使是计算机的最高权限者也无法获得此私钥Ps。
应用E测量值为应用E在可信执行环境下的内存测量值,由使用方或他方的可信执行环境基于应用E进行测算得到。
S3.数据提供方具有应用白名单,数据提供方收到数据包PaK时,基于使用方芯片级公钥验证数据包PaK的数字签名以验证PaK是否由使用方在合法可信执行环境中生成,验证通过后,获取其中的应用E测量值,判断应用E对应的测量值是否在应用白名单中,若是,则使用其中的公钥Pk对隐私秘钥生成算法G加密得到算法Ge并继续下列步骤,否则结束;事先或在本步骤中指定数据集D及被授权使用此数据集D的应用A、设备C,并授权/确认口令T,口令T可以为密码、秘钥或令牌,解密时需由数据使用方提供。
S4.数据提供方基于MA、 CID、T通过隐私秘钥生成算法G计算加密秘钥K,并使用该加密秘钥K加密数据集D得到加密数据ED;MA和CID分别为应用A、设备C在隐私计算可信环境模式下的测量值;
数据提供方授权相关数据使用方计算设备,在隐私计算可信环境下被读取的设备号值CID,比如,隐私计算Intel SGX隐私计算模式下的Platform ID值。
数据提供方事先在可信执行环境中运行获取应用A的内存测量值MA,比如,基于隐私计算Intel SGX技术对于应用的测量值为MREnclave,隐私计算模式启动时由CPU发送指令加载应用A至加密内存并测量此值,MA可以认为是应用A在隐私计算模式下的可信标识。或者,应用A的测量值可以为应用提供方的标识符或应用提供方的签名公钥信息。
S5.数据提供方将加密数据ED、算法Ge传输给数据使用方,同样地,加密数据ED、算法Ge通过在线方式传输给数据使用方,或者通过移动存储器离线传输给数据使用方;
S6.数据使用方在可信执行环境中基于可信封存技术加载私钥Ps,使用私钥Ps解密算法Ge得到隐私秘钥生成算法G’;
在可信执行环境中测算请求数据的应用A的内存测量值MA’和本设备C的设备号值CID’,基于MA’、CID’、用户输入的口令T通过隐私秘钥生成算法G’计算加密秘钥K’,并用该加密秘钥K’解密加密数据ED,如果K’=K,则解密成功得到数据D,否则解密失败;
S7.应用A在可信执行环境中使用数据D并将得到的结果R输出可信执行环境以提供给数据使用方。
以上数据使用方基于MA、T、CID,通过隐私秘钥生成算法G来计算出加密秘钥K,提供方基于MA’、T’、CID’通过隐私秘钥生成算法G’来计算出加密秘钥K’,在实际投入时,数据提供方也可以基于芯片层级扩展指令集,如集成到硬件的扩展硬件指令基于MA、T、CID和MA’、T’、CID’计算出加密秘钥K和K’。
以上过程可以用如下公式简化表示:
数据提供方:MA+CID+T+G=K,Pk+G=Ge,K+D=ED
数据使用方:获取Ge和ED,有Ps(基于可信封存技术提取),Ge+Ps=G’,
MA’+CID’+T+G’=K’,若MA’==MA,CID’==CID,T==T,G’==G,可得K’==K,若K’==K,则得ED+K’=D。
具体地,在一种方式中,应用E集成在应用A中,且步骤S6中,数据使用方需使用数据时,在可信执行环境里启动应用A进入隐私计算模式,应用A隐私计算模式启动时直接触发CPU测量MA’和CID’,并且由应用A加载私钥Ps解密算法G’,基于在应用A隐私计算环境测量得到的MA’、CID’以及数据提供者输入口令T从而计算得到加密秘钥K’,对加密数据ED进行解密。
在另一种方式中,应用E与应用A为运行于同一主机的可信执行环境中的不同应用,且步骤S6中,数据使用方需使用数据时,在可信执行环境里启动应用E,应用E触发启动应用A,由应用E加载私钥Ps,解密秘钥生成算法G’,基于应用A的测量MA’和CID’,以及数据提供者输入口令T’通过可信连接传给应用E(例如基于Intel SGX Local attestation建立可信连接),由应用E基于G’计算得到加密秘钥K’并将加密秘钥K’基于可信连接传输给应用A,由应用A对加密数据ED进行解密以使用数据D。
在另一种方式中,应用E与应用A运行于不同主机的可信执行环境中,且步骤S6中,数据使用方在需要使用数据时,相应的应用E在其所处计算设备的可信执行环境里启动,并远程触发应用A在其所处计算设备的可信执行环境里启动,并在可信执行环境中基于芯片直接测算、签名以验证应用A是否运行在合法的可信执行环境下,例如基于SGX RemoteAttestation流程,并基于此合法性验证建立应用E于应用A加密内存块间的安全加密传输隧道,例如基于Intel SGX RA-TLS技术。
由应用E触发运行应用A的计算设备CPU在可信执行环境中测算应用A得到测量值MA’,读取CPU设备号值CID’,在隐私计算可信环境中由芯片签名后通过安全加密传输隧道将MA’、CID’传输给应用E,应用E加载私钥Ps算法Ge得到隐私秘钥生成算法G’,验证MA’、CID’合法后基于MA’、CID’和口令T通过隐私秘钥生成算法G’计算加密秘钥K’,随后将加密秘钥K’通过安全加密传输隧道传给运行在可信执行环境中的应用A,由应用A解密数据ED得到数据D。
在这种方式中,应用E可以部署在数据使用方或者数据提供方。
进一步地,本方法在步骤S7之后还包括:
当接收到数据使用方的落盘存储请求时,使用秘钥K’对数据D2进行加密落盘, D2可以是全部D,部分D,D与其他隐私数据,或其他隐私数据,下次使用时重复步骤S6和S7,下次使用方能够直接启动解密使用,无需再次从提供方获取数据,能够在保证数据安全的前提下提高数据共享效率。
优选地,本方法中,数据提供方同时用公钥PK加密提供方私钥Ss生成Se,且数据提供方同时将Se传输给数据使用方,数据使用方使用私钥Ps解密Se得到Ss。在应用A完成运行或即将完成运行时在可信执行环境使用Ss对包括结果哈希值、使用方信息、签名时间戳、MA’、CID’哈希值、D哈希值中任意一项或多项的计算状态进行签名生成Sig,并将Sig通过在线或离线、同步或非同步方式发送给数据提供方;数据提供方可以可信验证它的数据D在哪里、什么时候、被谁在可信环境里在保护隐私性前提下合法安全的使用。
作为选项,应用E在可信执行环境中启动时可以与数据提供方通过隐私计算远程认证来可信连接,如基于Intel SGX Remote attestation机制。连接成功后数据提供方将向E提供MA、T、CID白名单或黑名单,当数据使用方在向E提出数据揭秘请求时,E在生成秘钥前可以预先审核获取的MA’、CID’、T’是否合法,如是否在白名单或不在黑名单上,如合法,则生成解密秘钥K’来解密使用数据,否则,将不会触发解密秘钥生成的操作。
以上整个过程数据使用方都没有拿到提供方提供的数据以及用于解密数据的秘钥K’(因为这些隐私数据运行在隐私计算可信环境之内),但是却得到了需要的结果,所以基于上述方法能够在满足保护数据安全的前提下为数据使用方提供数据服务。而且,以上过程中,数据提供方使用的用于加密数据的秘钥K与应用A和设备C在可信执行环境中运行的测量值相关(在隐私计算环境内数据使用方最高权限者也无法查看、篡改这些测量值),同样地,数据使用方在计算秘钥K’时,需要用到请求数据的应用A和设备C在可信执行环境中的测量值MA’和CID’,只有当请求数据的应用A是指定的应用,运行应用A的设备C是指定的设备,且用户具有正确的口令T的情况下才能够使用数据(数据使用方无法侵入到隐私计算可信环境内来查看、篡改相关测量值和秘钥),即数据提供方能够控制数据在哪里被使用(设备C一致),以及被如何使用(应用A一致),被谁使用(口令T一致),所以数据提供方能够保证数据被安全使用。
本文中所描述的具体实施例仅仅是对本发明精神作举例说明。本发明所属技术领域的技术人员可以对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,但并不会偏离本发明的精神或者超越所附权利要求书所定义的范围。

Claims (10)

1.一种基于隐私计算的新型数据可信解密的方法,其特征在于,包括以下步骤:
S1.数据使用方的应用E在可信执行环境中生成非对称加密秘钥:公钥Pk和私钥Ps;
S2.由使用方芯片级私钥对应用E测量值和公钥Pk进行数字签名得到数据包PaK,将私钥Ps可信封存于本地,将数据包PaK传输给数据提供方;
S3.数据提供方对所述数据包PaK进行验证,验证通过后,获取其中的应用E测量值,判断应用E是否在应用白名单中,若是,则使用其中的公钥Pk对隐私秘钥生成算法G加密得到算法Ge并继续下列步骤,否则结束;
事先或在本步骤中指定数据集D及被授权使用此数据集D的应用A、设备C和授权/确认口令T;
S4.数据提供方基于MA、CID和T通过隐私秘钥生成算法G计算加密秘钥K,并使用该加密秘钥K加密数据集D得到加密数据ED,MA和CID分别为应用A和设备C在隐私计算模式下的测量值;
S5.数据提供方将加密数据ED、算法Ge传输给数据使用方;
S6.数据使用方在可信执行环境中加载私钥Ps,使用私钥Ps解密算法Ge得到隐私秘钥生成算法G’;
在可信执行环境中测算请求数据的应用A和本设备C得到MA’和CID’,基于MA’、CID’和用户输入的口令T通过隐私秘钥生成算法G’计算加密秘钥K’,并用该加密秘钥K’解密加密数据ED,如果K’= K,则解密成功得到数据D,否则解密失败;
S7.应用A在可信执行环境中使用数据D并将得到的结果R输出可信执行环境以提供给数据使用方。
2.根据权利要求1所述的基于隐私计算的新型数据可信解密的方法,其特征在于,步骤S3中,数据提供方基于使用方芯片级公钥验证数据包PaK的数字签名以验证PaK是否由使用方在合法可信执行环境中生成。
3.根据权利要求2所述的基于隐私计算的新型数据可信解密的方法,其特征在于,步骤S2中,应用E测量值为应用E在可信执行环境下的内存测量值,由可信执行环境基于应用E进行测算得到。
4.根据权利要求3所述的基于隐私计算的新型数据可信解密的方法,其特征在于,步骤S2中,数据包PaK通过在线方式传输给数据提供方,或者,通过移动存储器离线传输给数据提供方;
步骤S5中,加密数据ED、算法Ge通过在线方式传输给数据使用方,或者通过移动存储器离线传输给数据使用方;
所述的口令T为密码、秘钥或令牌,解密时需由数据使用方提供。
5.根据权利要求3所述的基于隐私计算的新型数据可信解密的方法,其特征在于,应用A的测量值为应用A在可信执行环境隐私计算状态下的内存测量值MA;或者,应用A的测量值为应用提供方的标识符或应用提供方的签名公钥信息;
设备C的测量值为隐私计算模式下读取此计算设备CPU在隐私计算模式下被可信读取的设备号值CID。
6.根据权利要求1所述的基于隐私计算的新型数据可信解密的方法,其特征在于,应用E集成在应用A中,且步骤S6中,数据使用方需使用数据时,在可信执行环境里启动应用A进入隐私计算模式,由应用A加载私钥Ps,用于解密Ge得到秘钥生成算法G’,从而算得到加密秘钥K’并对加密数据ED进行解密;
或者,应用E与应用A运行于同一主机的可信执行环境中,且步骤S6中,数据使用方需使用数据时,在可信执行环境里启动应用E,由应用E触发启动应用A,应用E加载私钥Ps,用于解密Ge得到秘钥生成算法G’,并计算得到加密秘钥K’,并将加密秘钥K’ 通过加密连接传输给应用A,由应用A对加密数据ED进行解密以使用数据D。
7.根据权利要求1所述的基于隐私计算的新型数据可信解密的方法,其特征在于,应用E与应用A运行于不同主机的可信执行环境中,且步骤S6中,数据使用方在需要使用数据时,相应的应用E在其所处计算设备的可信执行环境里启动,并远程触发应用A在其所处计算设备的可信执行环境里启动,并在可信执行环境中基于芯片直接测算、签名以验证应用A是否运行在合法的可信执行环境下,并基于此合法性验证建立应用E于应用A加密内存块间的安全加密传输隧道。
8.根据权利要求7所述的基于隐私计算的新型数据可信解密的方法,其特征在于,由运行应用A的计算设备CPU在可信执行环境中测算应用A得到测量值MA’,读取设备号值CID’,在隐私计算可信环境中由芯片签名后通过安全加密传输隧道将MA’、CID’传输给应用E,应用E加载私钥Ps解密算法Ge得到隐私秘钥生成算法G’,验证MA’、CID’合法后基于MA’、CID’和口令T通过隐私秘钥生成算法G’计算加密秘钥K’,随后将加密秘钥K’通过安全加密传输隧道传给运行在可信执行环境中的应用A,由应用A解密数据ED得到数据D。
9.根据权利要求1所述的基于隐私计算的新型数据可信解密的方法,其特征在于,步骤S3中,数据提供方同时用公钥Pk加密提供方私钥Ss生成Se;
步骤S5中,数据提供方同时将Se传输给数据使用方;
步骤S6中,数据使用方同时使用私钥Ps解密Se得到Ss;
步骤S7中,在应用A完成运行或即将完成运行时使用Ss对包括结果哈希值、使用方信息、签名时间戳、MA’、CID’哈希值、D哈希值中任意一项或多项的计算状态进行签名生成Sig,并将Sig通过在线或离线、同步或非同步方式发送给数据提供方。
10.根据权利要求9所述的基于隐私计算的新型数据可信解密的方法,其特征在于,步骤S7之后还包括:
当接收到数据使用方的落盘存储请求时,使用秘钥K’对需落盘数据D2进行加密落盘,下次使用时重复步骤S6和S7。
CN202210437790.4A 2022-04-25 2022-04-25 一种基于隐私计算的新型数据可信解密的方法 Active CN114553603B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN202210437790.4A CN114553603B (zh) 2022-04-25 2022-04-25 一种基于隐私计算的新型数据可信解密的方法
US18/154,506 US11706022B1 (en) 2022-04-25 2023-01-13 Method for trusted data decryption based on privacy-preserving computation
NL2033980A NL2033980A (en) 2022-04-25 2023-01-18 New method for trusted data decryption based on privacy-preserving computation

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210437790.4A CN114553603B (zh) 2022-04-25 2022-04-25 一种基于隐私计算的新型数据可信解密的方法

Publications (2)

Publication Number Publication Date
CN114553603A CN114553603A (zh) 2022-05-27
CN114553603B true CN114553603B (zh) 2022-07-29

Family

ID=81667107

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210437790.4A Active CN114553603B (zh) 2022-04-25 2022-04-25 一种基于隐私计算的新型数据可信解密的方法

Country Status (3)

Country Link
US (1) US11706022B1 (zh)
CN (1) CN114553603B (zh)
NL (1) NL2033980A (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114679270B (zh) 2022-05-25 2022-09-06 南湖实验室 一种基于隐私计算的数据跨域加解密方法
CN117527267B (zh) * 2024-01-08 2024-04-19 南湖实验室 一种基于机密计算对远程数据操控的方法及其系统
CN117742898A (zh) * 2024-02-20 2024-03-22 南湖实验室 一种新型机密计算应用层度量方法及其系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110855671A (zh) * 2019-11-15 2020-02-28 三星电子(中国)研发中心 一种可信计算方法和系统
CN113890731A (zh) * 2021-09-29 2022-01-04 北京天融信网络安全技术有限公司 一种密钥管理方法、装置、电子设备及存储介质

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3179690A1 (en) * 2015-12-11 2017-06-14 Gemalto Sa Mobile device having trusted execution environment
US10880275B2 (en) * 2017-01-20 2020-12-29 Enveil, Inc. Secure analytics using homomorphic and injective format-preserving encryption
US11366921B2 (en) * 2017-02-22 2022-06-21 Ringcentral, Inc. Encrypting data records and processing encrypted records without exposing plaintext
WO2019075234A1 (en) * 2017-10-12 2019-04-18 Rivetz Corp. CERTIFICATE COMPRISING INTEGRATED ENCRYPTION KEYS
US10826694B2 (en) * 2018-04-23 2020-11-03 International Business Machines Corporation Method for leakage-resilient distributed function evaluation with CPU-enclaves
US11934540B2 (en) * 2018-05-28 2024-03-19 Royal Bank Of Canada System and method for multiparty secure computing platform
US11223485B2 (en) * 2018-07-17 2022-01-11 Huawei Technologies Co., Ltd. Verifiable encryption based on trusted execution environment
US10601828B2 (en) * 2018-08-21 2020-03-24 HYPR Corp. Out-of-band authentication based on secure channel to trusted execution environment on client device
US11403420B2 (en) * 2018-08-31 2022-08-02 Visa International Service Association System, method, and computer program product for maintaining user privacy in advertisement networks
WO2020082078A1 (en) * 2018-10-19 2020-04-23 Digital Asset (Switzerland) GmbH Privacy preserving validation and commit architecture
CN109800584B (zh) * 2018-10-24 2020-10-16 中国科学院信息工程研究所 一种基于Intel SGX机制的身份或属性加密计算方法和系统
US11818124B2 (en) * 2018-12-18 2023-11-14 Telefonaktiebolaget Lm Ericsson (Publ) Attestation of a platform entity
US11038852B2 (en) * 2019-02-08 2021-06-15 Alibaba Group Holding Limited Method and system for preventing data leakage from trusted network to untrusted network
KR102596445B1 (ko) * 2019-04-05 2023-10-31 구글 엘엘씨 개인 정보 보호를 위한 방법
US10846413B2 (en) * 2019-04-18 2020-11-24 Advanced New Technologies Co., Ltd. Data processing method and device
CN110278078B (zh) * 2019-06-17 2022-03-22 矩阵元技术(深圳)有限公司 一种数据处理方法、装置及系统
US11470053B2 (en) * 2019-10-14 2022-10-11 Nec Corporation Privacy-preserving machine learning
US11070357B2 (en) * 2019-10-17 2021-07-20 Raytheon Company Techniques for privacy-preserving data processing across multiple computing nodes
US11455403B2 (en) * 2020-01-20 2022-09-27 International Business Machines Corporation Privacy-preserving document sharing
US11558198B2 (en) * 2020-04-07 2023-01-17 Cisco Technology, Inc. Real-time attestation of cryptoprocessors lacking timers and counters
EP3844655B1 (en) * 2020-06-08 2023-05-03 Alipay Labs (Singapore) Pte. Ltd. Managing user authorizations for blockchain-based custom clearance services
CN111654371A (zh) * 2020-06-16 2020-09-11 可信计算科技(苏州)有限公司 一种基于可信计算的混合加密安全传输数据方法
US11658800B2 (en) * 2020-06-19 2023-05-23 Duality Technologies, Inc. Privacy preserving routing
US11575501B2 (en) * 2020-09-24 2023-02-07 Seagate Technology Llc Preserving aggregation using homomorphic encryption and trusted execution environment, secure against malicious aggregator
US11665148B2 (en) * 2021-03-22 2023-05-30 Cisco Technology, Inc. Systems and methods for addressing cryptoprocessor hardware scaling limitations
US20220321605A1 (en) * 2021-04-01 2022-10-06 Cisco Technology, Inc. Verifying trust postures of heterogeneous confidential computing clusters
CN113111398A (zh) 2021-04-19 2021-07-13 龙应斌 一种防止被非法窃取的数据安全存储方法和装置
CN113726733B (zh) * 2021-07-19 2022-07-22 东南大学 一种基于可信执行环境的加密智能合约隐私保护方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110855671A (zh) * 2019-11-15 2020-02-28 三星电子(中国)研发中心 一种可信计算方法和系统
CN113890731A (zh) * 2021-09-29 2022-01-04 北京天融信网络安全技术有限公司 一种密钥管理方法、装置、电子设备及存储介质

Also Published As

Publication number Publication date
US11706022B1 (en) 2023-07-18
CN114553603A (zh) 2022-05-27
NL2033980A (en) 2023-11-07

Similar Documents

Publication Publication Date Title
CN109361668B (zh) 一种数据可信传输方法
CN107743133B (zh) 移动终端及其基于可信安全环境的访问控制方法和系统
CN114553603B (zh) 一种基于隐私计算的新型数据可信解密的方法
CN103138939B (zh) 云存储模式下基于可信平台模块的密钥使用次数管理方法
CN101039186B (zh) 系统日志的安全审计方法
CN102396251B (zh) 对与网络通信的设备的确认和/或认证
JP5860815B2 (ja) コンピューターポリシーを施行するためのシステムおよび方法
CN107766724A (zh) 一种可信计算机平台软件栈功能架构的构建方法
TWI454111B (zh) 用於確保通訊之鑑別及完備性的技術
US20050283826A1 (en) Systems and methods for performing secure communications between an authorized computing platform and a hardware component
KR100979576B1 (ko) 새로운 패스워드를 실현하기 위한 방법 및 컴퓨터 판독가능 매체
WO2019020051A1 (zh) 一种安全认证的方法及装置
US8321924B2 (en) Method for protecting software accessible over a network using a key device
US20080077592A1 (en) method and apparatus for device authentication
CN110990827A (zh) 一种身份信息验证方法、服务器及存储介质
EP1346511A1 (en) A platform and method for securely transmitting authorization data
JPH06223041A (ja) 広域環境利用者認証方式
CN108323230B (zh) 一种传输密钥的方法、接收终端和分发终端
CN111954211B (zh) 一种移动终端新型认证密钥协商系统
CN113472793A (zh) 一种基于硬件密码设备的个人数据保护系统
KR20070078341A (ko) 디알엠 설치 관리 방법 및 장치
CN113726733B (zh) 一种基于可信执行环境的加密智能合约隐私保护方法
CN109474431B (zh) 客户端认证方法及计算机可读存储介质
CN105933117A (zh) 一种基于tpm秘钥安全存储的数据加解密装置和方法
CN100561913C (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
GR01 Patent grant
GR01 Patent grant