CN117527267B - 一种基于机密计算对远程数据操控的方法及其系统 - Google Patents
一种基于机密计算对远程数据操控的方法及其系统 Download PDFInfo
- Publication number
- CN117527267B CN117527267B CN202410023010.0A CN202410023010A CN117527267B CN 117527267 B CN117527267 B CN 117527267B CN 202410023010 A CN202410023010 A CN 202410023010A CN 117527267 B CN117527267 B CN 117527267B
- Authority
- CN
- China
- Prior art keywords
- data
- owner
- security
- component
- instruction
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 38
- 238000007789 sealing Methods 0.000 claims abstract description 12
- 230000007246 mechanism Effects 0.000 claims description 8
- 238000012795 verification Methods 0.000 claims description 4
- 230000005540 biological transmission Effects 0.000 claims description 3
- 238000005516 engineering process Methods 0.000 description 9
- 230000009471 action Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 241000700605 Viruses Species 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000006378 damage Effects 0.000 description 2
- 238000007792 addition Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3247—Cryptographic 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0807—Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/321—Cryptographic 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/3213—Cryptographic 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3236—Cryptographic 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
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)
- Storage Device Security (AREA)
Abstract
本方案公开了一种基于机密计算对远程数据操控的方法及其系统,包括:S1.数据拥有方将公钥P发送至运行在数据使用方机密计算环境中的PM;S2.数据拥有方将共享数据D共享至PM;S3.PM为数据D创建秘钥K并进行可信加密封存;S4.数据拥有方使用私钥S为数据操控指令生成令牌T并发送给PM;S5.PM解析T中包含的数据操控指令;S6.PM基于数据操控指令对相应的数据D进行相应的操控;S7.PM使用私钥S’对操作结果可信签名后发送给数据拥有方;S8.数据拥有方验证签名文件的合法性并获取操作结果。本方案中,数据拥有方对已被共享至数据使用方的数据仍然具有操控权,并且从技术层面实现了跨域数据在数据拥有方那边已经进行了相应操作的可验证证明。
Description
技术领域
本发明属于数据跨域共享领域,尤其是涉及一种基于机密计算对远程数据操控的方法及其系统。
背景技术
基于CPU层级隐私计算或机密运算是近年来兴起的在信息安全领域最前沿的技术之一,它是指基于芯片层级的可信基的可信执行环境,不受系统层, kernel层控制(即拥有一台计算机系统最高管理权限或Kernel层级控制权也无法查看,篡改,控制此安全环境内的数据和运行),从而来保证可信执行环境内数据隐私保护安全性和运行的可信性,相应的技术目前有IntelSGX技术, AMD SEV技术、海光CSV、ARM V9 CCA等。机密计算技术已经广泛地应用于通用芯片,并集成在市场上一般通用电脑与服务器上,比如目前英特尔Xeon服务器、海光第三代服务器等。所以,首先基于CPU层级机密运算/隐私计算基于目前的通用芯片(例如Intel SGX 技术的Intel通用芯片);同时基于CPU层级机密运算/隐私计算最重要的有两点特性为:
1)隐私保护:加密数据仅在基于CPU层级TEE高可信环境(加密内存)中解密并支撑运算,计算结束后高可信环境中相关数据被销毁,解密的明文数据在整个流程中不会得以泄露。例如支持本发明涉及的相关签名秘钥的隐私保护;
2)计算可信性:基于数据的计算在基于CPU层级TEE高可信环境(加密内存)中运行,没有人(包括运行主机最高权限者或系统Kernel内核层级控制权拥有者)能够侵入CPU层级可信执行环境对运算进行篡改。基于CPU层级TEE高可信环境会生成一个在高可信环境中运算的证明(比如以数字签名形式)。
隐私计算有个很重要的功能:可信封存技术,例如Intel SGX sealing技术。可信封存技术可以由CPU硬件通过指令集直接生成唯一秘钥(此秘钥绑定主机硬件),在隐私计算安全区里基于应用enclave来加密隐私数据并持久性落盘。秘钥无法被外界或主机最高权限者获取。
此加密数据只能在同一台主机上(因为秘钥绑定主机硬件)由相同的应用enclave(基于SGX MrEnclave)或者同一个应用开发者开发的应用enclave(基于SGX MrSigner)由CPU硬件通过指令集生成同一个解密秘钥来加载、解密、使用。
数据跨域可信共享在当前有极大地刚性需求, 但是目前跨域数据共享存在着一个很大的问题:数据一旦跨域后便不再受数据拥有方控制。
GDPR、大数据安全法、个人信息隐私保护法等法律法规规定数据有被遗忘权,即,数据提供者想要的话可以要求数据使用者销毁数据,但是实际上很难从技术上去证明跨域数据在其他人那边已经被销毁了。即当需要删除一些数据时,数据拥有方无法确保这些已经被分享出去的数据在数据使用方被销毁,数据使用方也无法向数据拥有方证明其确实销毁了数据拥有方所要求销毁的数据。
发明内容
本发明的目的是针对上述问题,提供一种基于机密计算对远程数据操控的方法及其系统,并且提供数据被有效操控的可验证证明。
一种基于机密计算对远程数据操控的方法,该方法包括:
S1.数据拥有方生成公私钥对P-S,并将公钥P发送至运行在数据使用方机密计算环境中的安全代理组件PM;
S2.数据拥有方将共享数据D基于机密计算远程认证建立的加密隧道共享至数据使用方的机密计算环境中的安全代理组件PM;
S3.安全代理组件PM为接收到的数据D创建秘钥K,使数据D安全保存成ED落盘存储,并将秘钥K进行可信加密封存;
S4.数据拥有方使用公私钥对中的私钥S对数据操控指令进行签名生成令牌(Token)T,并将T发送给所述安全代理组件PM;
S5.安全代理组件PM基于所述的公钥P验证T的合法性并解析T中包含的来自数据拥有方的数据操控指令;
S6.安全代理组件PM基于所述的数据操控指令对相应的数据D进行相应的操控;
S7. 操控结束以后,安全代理组件PM使用自己的私钥S’对操作状态和操作结果进行可信签名并发送给数据拥有方;
S8.数据拥有方基于私钥S’对应的公钥P’验证签名文件的合法性并获取对相关数据D的操作状态和操作结果。
在上述的基于机密计算对远程数据操控的方法中,步骤S1中,数据拥有方基于安全加密隧道将公钥P发送给所述的安全代理组件PM,安全代理组件PM将接收到的公钥P进行可信加密封存。
在上述的基于机密计算对远程数据操控的方法中,步骤S3之后还包括:
安全代理组件PM应数据使用方同样运行在机密计算环境中的应用APP请求解密相应的数据D并供所述的应用APP在机密计算环境中使用该数据D;
所述的数据操控指令包括但不限于对数据D的销毁指令、部分数据销毁指令,以及对数据的禁用、设置数据仅可被使用的使用时段、设置数据只能被某一个或某一些应用使用(基于应用哈希值)等等操作指令。
在上述的基于机密计算对远程数据操控的方法中,当安全代理组件PM接收到数据拥有方共享给数据使用方的多组数据时,为每组数据Di创建对应的秘钥Ki,并建立每组数据Di与相应秘钥Ki的对应关系。多组数据可以分次,也可以一次共享给数据使用方。
在上述的基于机密计算对远程数据操控的方法中,数据使用方记录有每组数据Di的标识符,应用APP根据使用需求确定相应的标识符,并基于标识符向安全代理组件PM请求相应的数据Di;索引符用于方便应用调取每一组数据,可以是index索引的形式,也可以是其他形式。
且安全代理组件PM应数据使用方同样运行在机密计算环境中的应用APP请求解密相应的数据Di并供所述的应用APP在机密计算环境中使用该数据Di;
数据操控指令所述的数据操控指令包括但不限于对数据D的销毁指令、部分数据销毁指令,以及对数据的禁用、设置数据仅可被使用的使用时段、设置数据只能被某一个或某一些应用使用(基于应用哈希值)等等操作指令。步骤S6中,安全代理组件PM基于数据操控指令对相应的数据Di进行相应的操控,安全代理组件PM使用自己的私钥S’对操作状态和操作结果进行可信签名并发送给数据拥有方。相应地,步骤S8中,数据拥有方基于私钥S’对应的公钥P’验证签名文件的合法性并获取对相关数据Di的操作状态和操作结果。
在上述的基于机密计算对远程数据操控的方法中,所述的应用APP与所述的安全代理组件PM运行于同一主机的机密计算环境中;
或者,所述的应用APP与所述的安全代理组件PM运行于不同主机的机密计算环境中,且两者之间建立有用于数据传输的安全加密隧道。
在上述的基于机密计算对远程数据操控的方法中,所述的安全代理组件PM由数据拥有方部署于数据使用方,且运行于数据使用方的机密计算环境中;
且所述的数据使用方具有PM加载哈希值白名单,基于PM启动加载的哈希值来通过机密计算本地认证/远程认证或通过可信启动(例如TPM或vTPM等)技术手段来验证安全代理组件PM的合法性,当验证未通过时,拒绝PM运行,可以防止病毒程序组件伪装的PM,避免病毒对数据使用方主机和数据资源进行攻击。当然,当安全代理组件PM未运行时,无法对数据进行获取,所以数据使用方必须运行合法的PM组件来获取数据。
在上述的基于机密计算对远程数据操控的方法中,针对每一组数据Di,数据拥有方均对其定义最多使用次数Xi,并通知到部署于数据使用方处的安全代理组件PM,Xi数值被保存为仅能够供安全代理组件PM修改数值,例如由PM通过芯片级封存技术将Xi加密持久化到本地,每次有变动时,由PM对Xi进行更新并重新加密持久化到本地,使其他组件模块无法篡改Xi;
每当数据使用方的任何应用APP使用一次数据Di,安全代理组件PM便使其对应的Xi减一,且当Xi=0时,安全代理组件PM将不再响应任何应用APP对数据Di的使用请求。
在上述的基于机密计算对远程数据操控的方法中,当Xi小于设定值时,Xi将被重新赋值;若恶意断开连接,将无法对Xi进行赋值。Xi消耗完后便无法使用数据。设定值可以为1。
被重新赋值可以是在Xi小于设定值时,Xi将被数据拥有方赋值,并由数据使用方处的安全代理组件PM对Xi进行更新。具体可以是,在Xi小于设定值时,由数据拥有方自行,或应数据使用方自动或被动请求,或应部署于数据使用方的安全代理组件PM的自动请求对Xi赋值,并通知到部署于数据使用方处的安全代理组件PM。此主要应用于一般的场景,用于防止数据拥有方恶意断开连接。
或者,由数据使用方根据需求向数据拥有方请求赋值,数据拥有方根据请求对Xi赋值,并由数据使用方处的安全代理组件PM对Xi进行更新。即数据使用方也可以在任意时候请求数据拥有方对Xi赋值。此可以被用于一般场景防止数据拥有方恶意断开连接,也可以被应用于将数据价值化的场景。
数据使用方发起的赋值请求为通过安全代理组件PM向数据拥有方发起。
优选安全代理组件PM基于心跳机制向数据拥有方发送心跳包,数据拥有方基于心跳包向安全代理组件进行心跳包回复;
所述的心跳包包含是否发送操控指令的询问,心跳包回复包括针对所述询问的操控指令或空指令。
赋值请求可以被加载在安全代理组件的心跳包上。数据拥有方对赋值请求的响应可以加载在心跳包回复中。
若数据使用方与数据拥有方正常连接,数据拥有方将正常接收到安全代理组件PM的心跳,在接收到安全代理组件PM向数据拥有方发送的赋值请求时,可以对赋值请求返回相应的结果,对操控指令询问则返回空指令,即不操作,此时正常充值。
若数据使用方恶意中断则意味着数据拥有方将收不到心跳,那么数据拥有方则可以采取一些行动,例如下一次再接收到心跳包时,则使用心跳包回复返回设置的操控指令,例如马上禁用数据等。通过该方式可有效避免数据使用方仅为对Xi赋值而与数据拥有方连接,避免赋值结束后数据使用方通过立马断开连接来逃避数据拥有方发送的操控指令。
此外,基于心跳机制,安全代理组件PM在发送心跳包没有回复时可以推断数据使用方为恶意中断,可以基于设定主动地采取一些行动,例如立刻禁用数据等。
“赋值”可以是设置Xi为初始定义值,也可以根据需要设置为其他值,如在当前Xi的基础上对Xi增加指定数值。数据拥有方对Xi进行赋值,可以是普通指令,也可以是类似于步骤S4的签名指令Token T,由其私钥S对赋值指令进行签名后发送给数据使用方的安全代理组件PM。
所述的数据操控指令包含了Xi范围对应的操控,安全代理组件PM根据数据操控指令及相应数据Di的当前Xi值对相应数据Di进行相应的操控。
一种基于机密计算对远程数据操控的系统,包括数据使用方、数据拥有方,其特征在于,所述的数据使用方部署有计算机机密环境,且具有由数据拥有方提供的,运行于所述计算机机密环境的安全代理组件PM,并通过上述所述的方法供数据拥有方对已被共享至数据使用方的数据进行操控,并获取到对远程数据操控结果的可验证证明。
本发明的优点在于:
数据拥有方对已被共享至数据使用方的数据仍然具有操控权,能够自主进行删除或其他控制操作并得到数据按其意图被成功操作的证明,有效克服了现有技术数据拥有方一旦将数据跨域分享给数据使用方后就对数据失去控制的问题;
从技术层面实现了跨域数据在数据拥有方那边已经进行了相应操作的可验证证明。目前数据使用者即使应数据拥有方的要求诚实地对数据进行了相应的操作,也没有一个可验证的证明(比如基于数据可遗忘权对数据销毁),本方案完美地解决了这个问题。
附图说明
图1是本发明基于机密计算对远程数据实现操控的方法流程图;
图2是本发明基于机密计算对远程数据操控的系统架构及实现流程图。
具体实施方式
下面结合附图和具体实施方式对本发明做进一步详细的说明。
如图1和图2所示,本方案提供了一种基于机密计算对远程数据操控的方法及实现该方法的系统,实现了数据拥有方对共享给数据使用方的数据的管控,具体实现方法如下:
1.数据使用方部署机密计算硬件环境,机密计算环境中运行PM组件(PM:ProxyModule,即数据拥有方在数据使用方部署的安全代理组件);
2. PM组件启动时,数据使用方基于可信计算或机密计算中的标准功能的远程认证(Remote Attestation)或本地认证(Local Attestation)来验证其合法性(例如基于PM应用层的哈希测量值)。
至此可以说明:PM运行在数据使用方,且运行在机密计算环境中,所以不受数据使用方控制。但是基于其启动的合法性校验,可以保证PM不会超出它本职工作职能(以下步骤描述)对数据使用方DC进行攻击。
3. 数据拥有方DP与数据使用方DC机密计算环境的PM组件建立机密计算远程认证,确认PM组件机密计算环境的合法性(例如确认机密计算环境有效合法,并且PM加载到内存的哈希值在DP的白名单上)。基于远程认证合法性验证通过后,DP与PM组件的机密计算环境建立安全加密隧道,例如基于RA-TLS机制。
4. DP生成公私钥要对(公钥P,私钥S),把其公钥P基于加密隧道发送至DC机密计算环境的PM。
5. PM基于机密计算可信封存技术(sealing)对P进行可信加密封存,密态封存后的P在系统重启后有且只可被机密计算环境中的PM安全读取。
6. 开始跨域共享数据,DP把数据(D)基于加密隧道发送至DC机密计算环境的PM组件。
7. DC机密计算环境中PM接收数据D,并创建秘钥K使D安全保存成ED。
8. PM基于机密计算可信封存技术(sealing)对K进行可信加密封存为S(K),密态封存的S(K) 在系统重启后有且只可被机密计算环境中的PM安全读取。
数据拥有方可以向数据使用方共享多组不同的数据Di。
可以将数据拥有方共享给数据使用方的多组数据进行统一加密保存,即将新的数据Di加入已有的数据集,并用秘钥K重新进行保存;
也可以由机密计算环境中PM对每组新接收到的数据Di创建相应的秘钥Ki,PM在加密内存中维护不同数据Di和Ki对应关系,Di和Ki的映射表可以通过机密计算可信封存技术(sealing)加密封存。本实施例优选以此种方式,且后续以此种方式为例进行说明。
多组数据可以一次性共享给数据使用方,也可以分几次共享给数据使用方,这里不做限制。
9.当数据需要被运行在机密计算环境的某个可信应用APP使用时,PM应相应应用APP的请求解密相应数据,并通过基于芯片级安全建立的加密隧道密态传输给相应应用APP。若数据统一加密保存,则应用APP可以使用到所有已经被拥有方共享给使用方的数据,若数据分组保存,则PM根据APP的使用需求基于Di的index索引符为其对相应Di解密。
应用APP与安全代理组件PM可以运行于同一主机的机密计算环境中;
或者,应用APP与安全代理组件PM运行于不同主机的机密计算环境中;
应用APP与安全代理组件PM之间建立有用于数据传输的安全加密隧道。
PM与APP建立安全加密隧道之前可以先对应用APP验证其合法性,合法性验证的形式具体不在此限制,例如可以基于机密计算远程认证验证应用APP的哈希或开发者信息等。
10.以下实现数据跨域共享后,DP依然可以远程操控数据,并生成芯片级可验证证明。
DP发送一个对数据操控的指令Signal(parameters),并用S对其进行签名生成令牌 T。parameters信息包含对哪一个数据Di进行操作,以及进行什么样的操作,操作可以代表着对数据的销毁、部分销毁、禁用,或对数据的其他操作指令(比如:设置数据仅可被使用的使用时段、设置数据只能被某一个或某一些应用使用(基于应用哈希值),等等操作指令)。
11.DP与DC机密计算环境的PM组件建立加密隧道(基于远程认证),并发送T至PM。
12.PM基于加密内存中的P来验证T的合法性,确认指令的确来自DP。PM解析出T中包含的来自DP的指令Signal(parameters)。
13. PM因为运行在机密计算环境中,所以不受数据使用方控制,PM可以基于Signal(parameters)来执行对数据的操作。例如,如果指令是对数据Di进行销毁,PM可以删除整个Di数据集并永久销毁Ki,包括Ki可信封存的加密值,同时PM可以实时检测加密后落盘的数据是否被违规拷贝;如果指令是对数据Di进行禁用,PM可以拒绝应用APP调用数据的请求(或者通过赋值Xi=0来禁用数据,参见以下对Xi的说明),PM不再传输给APP相应数据。如果指令是对数据部分删除,PM可以删除密态封存落盘的Di数据。
对数据的具体操作可以由用户自定义,并体现在Signal(parameters)函数中。
14.PM实现数据操控操作后,基于机密计算PM中隐私秘钥S’(PM在芯片级机密计算安全环境中产生的秘钥,可进行机密计算可信封存来安全保存)来对此操作状态和操作结果进行可信签名。
15.签名报告发送回DP,DP可以基于PM签名相对应预先存储在数据拥有方的公钥P’来验证其合法性。并验证远程PM对相关数据的操作是否成功完成。从而DP可以远程操控已经共享使用的数据,并基于可验证的证明来确认操作是否已经可信的完成。
进一步地, 本方案还包括PM对每组数据Di引入了使用剩余次数机制,即对每一组数据Di都会对应有Xi,Xi代表Di数据最多能用Xi次。Xi的初始值可以由DP来定义,只有当DP与PM基于远程认证可信连通才能对Xi赋值,即增加Xi值。
如果DC恶意中断与DP的连接,数据Di被使用了X次数后(Xi=0后)会强制进行数据禁用,只有PM与DP通过远程认证重新可信连通后应DC请求并且数据拥有方同意后才能对Xi赋值(赋Xi>=1)以解禁数据使用方的使用数据。例如,DP为数据D1定义的X1为5,那么数据使用方每使用一次数据D1,X1的数值便会减1,当X1的数值为0时,PM将不会为数据使用方的任何应用解密数据D1,数据使用方便无法再使用该数据。当X1的数值为0或接近0的一个设定值时,数据使用方DC基于PM向DP请求赋值,若DC恶意中断与DP的连接,则无法实现对Xi的赋值,可有效应对如果DC恶意中断与DP的连接使DP无法发送数据远程操控指令的问题。
赋值Xi操作也可以与数据要素价值化相连,比如赋值Xi意味着数据使用方向数据拥有者按照希望使用的次数进行缴费。
优选安全代理组件PM基于心跳机制向数据拥有方发送心跳包,数据拥有方基于心跳包向安全代理组件进行心跳包回复;心跳包包含是否发送操控指令的询问,心跳包回复包括针对询问的操控指令或空指令。赋值请求可以被加载在安全代理组件的心跳包上。数据拥有方对赋值请求的响应可以加载在心跳包回复中。
若数据使用方与数据拥有方正常连接,数据拥有方在接收到安全代理组件发送的具有赋值请求和操控指令询问的心跳包时,可以对赋值请求返回相应的结果,对操控指令询问则返回空指令,即不操作,此时正常充值。
若数据使用方恶意中断则意味着数据拥有方将收不到心跳,那么数据拥有方则可以采取一些行动,例如下一次再接收到心跳包时,则使用心跳包回复返回设置的操控指令,例如马上禁用数据等,操控指令优先于对赋值请求的响应,返回操控指令则同时返回赋值请求失败的响应。通过该方式可有效避免数据使用方仅为对Xi赋值而与数据拥有方连接,避免赋值结束后数据使用方通过立马断开连接来逃避数据拥有方发送的操控指令。
此外,基于心跳机制,安全代理组件PM在发送心跳包没有回复时可以推断数据使用方为恶意中断,可以基于设定主动地采取一些行动,例如立刻禁用数据等。同时,剩余次数机制还可以结合Xi的值进行动态操作。例如当Xi值<=N0时,执行数据操控操作A(如禁用操作);N0<Xi值且Xi<=N1时,执行数据操控操作B(如数据可用,但限制其应用场景,或限制其使用时段);N1<Xi值Xi<=N2时,执行数据操控操作C(如数据可用,没有限制),以此类推。可动态根据使用的次数来动态执行相应操作。
本实施例中所描述的具体实施例仅仅是对本发明精神作举例说明。本发明所属技术领域的技术人员可以对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,但并不会偏离本发明的精神或者超越所附权利要求书所定义的范围。
Claims (10)
1.一种基于机密计算对远程数据操控的方法,其特征在于,该方法包括:
S1.数据拥有方生成公私钥对P-S,并将公钥P发送至运行在数据使用方机密计算环境中的安全代理组件PM;
S2.将共享数据D基于加密隧道共享至数据使用方的机密计算环境中的安全代理组件PM;
S3.安全代理组件PM为数据D创建秘钥K,使数据D安全保存成ED,并将秘钥K进行可信加密封存;
S4.使用公私钥对中的私钥S对数据操控指令进行签名生成令牌 T,并将T发送给所述安全代理组件PM;
S5.安全代理组件PM基于所述的公钥P验证T的合法性并解析T中包含的来自数据拥有方的数据操控指令;
S6.安全代理组件PM基于所述的数据操控指令对相应的数据D进行相应的操控;
S7.操控结束以后,安全代理组件PM使用自己的私钥S’对操作状态和操作结果进行可信签名并发送给数据拥有方;
S8.数据拥有方基于私钥S’对应的公钥P’验证签名文件的合法性并获取对相关数据D的操作状态和操作结果。
2.根据权利要求1所述的基于机密计算对远程数据操控的方法,其特征在于,步骤S1中,数据拥有方基于安全加密隧道将公钥P发送给所述的安全代理组件PM,安全代理组件PM将接收到的公钥P进行可信加密封存。
3.根据权利要求1所述的基于机密计算对远程数据操控的方法,其特征在于,步骤S3之后还包括:
安全代理组件PM应数据使用方同样运行在机密计算环境中的应用APP请求解密相应的数据D并供所述的应用APP在机密计算环境中使用该数据D;
所述的数据操控指令包括对数据D的销毁指令、部分数据销毁指令。
4.根据权利要求3所述的基于机密计算对远程数据操控的方法,其特征在于,当安全代理组件PM接收到数据拥有方共享给数据使用方的多组数据时,为每组数据Di创建对应的秘钥Ki,并建立每组数据Di与相应秘钥Ki的对应关系。
5.根据权利要求4所述的基于机密计算对远程数据操控的方法,其特征在于,数据使用方记录有每组数据Di的标识符,应用APP根据使用需求确定相应的标识符,并基于标识符向安全代理组件PM请求相应的数据Di;
且安全代理组件PM应数据使用方同样运行在机密计算环境中的应用APP请求解密相应的数据Di并供所述的应用APP在机密计算环境中使用该数据Di;
数据操控指令包括对特定数据Di的销毁指令、部分数据销毁指令。
6.根据权利要求3所述的基于机密计算对远程数据操控的方法,其特征在于,所述的应用APP与所述的安全代理组件PM运行于同一主机的机密计算环境中;
或者,所述的应用APP与所述的安全代理组件PM运行于不同主机的机密计算环境中;
所述的应用APP与所述的安全代理组件PM之间建立有用于数据传输的安全加密隧道。
7.根据权利要求1所述的基于机密计算对远程数据操控的方法,其特征在于,所述的安全代理组件PM由数据拥有方部署于数据使用方,且运行于数据使用方的机密计算环境中;
且所述的数据使用方具有PM加载哈希值白名单,基于安全代理组件PM启动加载的哈希值来验证安全代理组件PM的合法性,当验证未通过时,拒绝PM运行。
8.根据权利要求4所述的基于机密计算对远程数据操控的方法,其特征在于,针对每一组数据Di,数据拥有方均对其定义最多使用次数Xi,并通知到部署于数据使用方处的安全代理组件PM,Xi数值被保存为仅能够供安全代理组件PM修改数值;
每当数据使用方的任何应用APP使用一次数据Di,安全代理组件PM便使其对应的Xi减一,且当Xi=0时,安全代理组件PM将不再响应任何应用APP对数据Di的使用请求。
9.根据权利要求8所述的基于机密计算对远程数据操控的方法,其特征在于,当Xi小于设定值时,Xi将被数据拥有方赋值并由数据使用方处的安全代理组件PM对Xi进行更新;
或者,由数据使用方根据需求通过安全代理组件PM向数据拥有方请求赋值,数据拥有方根据请求对Xi赋值,并由数据使用方处的安全代理组件PM对Xi进行更新;
所述的安全代理组件PM基于心跳机制向数据拥有方发送心跳包,数据拥有方对安全代理组件进行心跳包回复;
所述的心跳包包含是否发送操控指令的询问,心跳包回复包括针对所述询问的操控指令或空指令;
所述的数据操控指令包含了Xi范围对应的操控,安全代理组件PM根据数据操控指令及相应数据Di的当前Xi值对相应数据Di进行相应的操控。
10.一种基于机密计算对远程数据操控的系统,包括数据使用方、数据拥有方,其特征在于,所述的数据使用方部署有计算机机密环境,且具有由数据拥有方提供的,运行于所述计算机机密环境的安全代理组件PM,并通过权利要求1-9任意一项所述的方法供数据拥有方对已被共享至数据使用方的数据进行操控并获取到对远程数据操控结果的可验证证明。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410023010.0A CN117527267B (zh) | 2024-01-08 | 2024-01-08 | 一种基于机密计算对远程数据操控的方法及其系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410023010.0A CN117527267B (zh) | 2024-01-08 | 2024-01-08 | 一种基于机密计算对远程数据操控的方法及其系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117527267A CN117527267A (zh) | 2024-02-06 |
CN117527267B true CN117527267B (zh) | 2024-04-19 |
Family
ID=89766896
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410023010.0A Active CN117527267B (zh) | 2024-01-08 | 2024-01-08 | 一种基于机密计算对远程数据操控的方法及其系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117527267B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106960162A (zh) * | 2017-03-24 | 2017-07-18 | 北京深思数盾科技股份有限公司 | 一种数据共享方法、装置及系统 |
CN111090876A (zh) * | 2020-03-18 | 2020-05-01 | 支付宝(杭州)信息技术有限公司 | 调用合约的方法及装置 |
CN114553603A (zh) * | 2022-04-25 | 2022-05-27 | 南湖实验室 | 一种基于隐私计算的新型数据可信解密的方法 |
CN114679270A (zh) * | 2022-05-25 | 2022-06-28 | 南湖实验室 | 一种基于隐私计算的数据跨域加解密方法 |
JP2022531538A (ja) * | 2019-03-29 | 2022-07-07 | ソウル マシーンズ リミティド | 暗号システム |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220043798A1 (en) * | 2020-08-04 | 2022-02-10 | FleetNet America IP Holdings, LLC | System and method for improving data validation and synchronization across disparate parties |
KR20230064354A (ko) * | 2021-11-03 | 2023-05-10 | 펜타시큐리티시스템 주식회사 | 블록체인 기반의 인증 심사 데이터 공유 및 무결성 검증 시스템, 장치 및 방법 |
-
2024
- 2024-01-08 CN CN202410023010.0A patent/CN117527267B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106960162A (zh) * | 2017-03-24 | 2017-07-18 | 北京深思数盾科技股份有限公司 | 一种数据共享方法、装置及系统 |
JP2022531538A (ja) * | 2019-03-29 | 2022-07-07 | ソウル マシーンズ リミティド | 暗号システム |
CN111090876A (zh) * | 2020-03-18 | 2020-05-01 | 支付宝(杭州)信息技术有限公司 | 调用合约的方法及装置 |
WO2021184963A1 (zh) * | 2020-03-18 | 2021-09-23 | 支付宝(杭州)信息技术有限公司 | 调用合约的方法及装置 |
CN114553603A (zh) * | 2022-04-25 | 2022-05-27 | 南湖实验室 | 一种基于隐私计算的新型数据可信解密的方法 |
CN114679270A (zh) * | 2022-05-25 | 2022-06-28 | 南湖实验室 | 一种基于隐私计算的数据跨域加解密方法 |
Non-Patent Citations (1)
Title |
---|
基于接入控制的共享隐私保护;朱煜;钱景辉;季正波;;内蒙古农业大学学报(自然科学版)(第04期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN117527267A (zh) | 2024-02-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3937424B1 (en) | Blockchain data processing methods and apparatuses based on cloud computing | |
CN110011801B (zh) | 可信应用程序的远程证明方法及装置、电子设备 | |
US11463267B2 (en) | Network function virtualization system and verifying method | |
KR101318524B1 (ko) | 보안 가상 머신 호스팅 프로세서 및 보안 가상 머신 설정 방법 | |
JP4916584B2 (ja) | 呼び出しのプログラムについての秘密の封印のための方法 | |
US8621243B2 (en) | Saving and retrieving data based on public key encryption | |
CN103843303A (zh) | 虚拟机的管理控制方法及装置、系统 | |
CA2425006C (en) | Saving and retrieving data based on symmetric key encryption | |
CN117453343A (zh) | 虚拟机度量、机密计算认证方法、设备、系统及存储介质 | |
CN117527267B (zh) | 一种基于机密计算对远程数据操控的方法及其系统 | |
JP6741236B2 (ja) | 情報処理装置 | |
CN111245600A (zh) | 基于区块链技术的鉴权认证方法和系统 | |
CN117879819B (zh) | 密钥管理方法、装置、存储介质、设备及算力服务系统 | |
CN109120631B (zh) | 功能调用系统、方法、装置及存储介质 | |
CN115277259B (zh) | 一种支持隐私计算持久化数据大规模跨平台迁徙的方法 | |
WO2023183383A1 (en) | Systems and methods for demonstrating identity to a trusted platform module | |
CN118265976A (zh) | 将远程认证引用与虚拟化网络功能(vnf)资源分配事件进行相关 |
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 |