CN117978546A - 一种基于可信执行环境的无证书动态共享数据审计方法 - Google Patents
一种基于可信执行环境的无证书动态共享数据审计方法 Download PDFInfo
- Publication number
- CN117978546A CN117978546A CN202410370415.1A CN202410370415A CN117978546A CN 117978546 A CN117978546 A CN 117978546A CN 202410370415 A CN202410370415 A CN 202410370415A CN 117978546 A CN117978546 A CN 117978546A
- Authority
- CN
- China
- Prior art keywords
- user
- data
- key
- verification
- group
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 42
- 238000012550 audit Methods 0.000 claims abstract description 67
- 238000012795 verification Methods 0.000 claims description 92
- 238000004364 calculation method Methods 0.000 claims description 38
- 238000012217 deletion Methods 0.000 claims description 12
- 230000037430 deletion Effects 0.000 claims description 12
- 238000013496 data integrity verification Methods 0.000 claims description 9
- 238000012545 processing Methods 0.000 claims description 9
- 238000012508 change request Methods 0.000 claims description 7
- 238000006243 chemical reaction Methods 0.000 claims description 7
- 125000004122 cyclic group Chemical group 0.000 claims description 3
- 230000004931 aggregating effect Effects 0.000 claims description 2
- 238000013507 mapping Methods 0.000 claims description 2
- 238000007726 management method Methods 0.000 abstract description 9
- 238000007781 pre-processing Methods 0.000 abstract description 9
- 238000010586 diagram Methods 0.000 description 4
- 238000003780 insertion Methods 0.000 description 4
- 230000037431 insertion Effects 0.000 description 3
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000011191 terminal modification Methods 0.000 description 1
Landscapes
- Storage Device Security (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供了一种基于可信执行环境的无证书动态共享数据审计方法,涉及数据安全技术领域,该方法是实现对云存储环境中共享数据完整性安全高效的审计,和共享用户群组及共享数据的动态性;其包括秘钥生成中心数据预处理步骤;群用户加入步骤;共享群用户秘钥生成步骤;共享数据预处理步骤;云服务端数据预处理步骤;挑战步骤;证明生成步骤;证明验证步骤;群用户撤销步骤;数据的动态更新步骤。本发明所提出的无证书公开共享数据审计方法,可以在确保共享数据安全高效审计的同时,实现动态的群管理和数据的动态更新,以及避免恶意的撤销用户和云服务端合谋攻击。
Description
技术领域
本发明涉及数据安全技术领域,具体涉及一种基于可信执行环境的无证书动态共享数据审计方法。
背景技术
云存储是一种通过互联网将数据存储在远程服务器上的技术;用户可以通过互联网访问和管理存储在云端的数据,而无需依赖本地存储设备。云存储通常提供了高可靠性、可扩展性和灵活性,用户可以根据需要随时扩展存储空间,并且不必担心硬件故障或数据丢失的问题。当前,云存储促进了用户群组的形成,以便有效地存储和共享数据,因此,保证共享数据的安全性和完整性是云存储领域的一个重要问题。
在共享数据的场景中,多个被授权的用户可以共同访问和更改共享数据,但是当数据被多个用户共享时,就会存在一些问题。例如:由于多个用户都能访问和更改共享数据,因此不同的数据块要被不同的用户签名,这就为数据的完整性验证带来了很大的计算开销;其次,在共享用户群中,存在用户随时随地的加入群和离开群组的情况,因此就要保证用户的合法加入和撤销,即面临着群管理的复杂性;再次,基于公钥基础设施和基于身份加密的共享数据审计方案存在着复杂的证书管理和秘钥托管的问题。
为了解决上述问题,市面上有很多基于无证书签名的共享数据审计方案被提出,虽然这些共享数据审计方案解决了一定的问题,但是在实际使用时,这些共享数据审计方案依旧存在不足。例如:第一点不足,当前无证书共享数据审计方案的共享用户群管理效率并不高,并且当恶意的撤销用户后,并不能追溯其身份信息;第二点不足,有些方案在证明验证阶段并没有保护用户数据的隐私,以至于第三方审计端能了解到用户的数据信息,并且很多现有方案并不能抵抗公钥替换攻击和访问主秘钥攻击;第三点不足,当前方案均没有解决恶意的撤销用户和云服务端的合谋攻击,导致泄露群秘钥的问题。
有鉴于此,提出本申请。
发明内容
本发明提供了一种基于可信执行环境的无证书动态共享数据审计方法,能至少部分的改善上述问题。
为实现上述目的,本发明采用以下技术方案:
一种基于可信执行环境的无证书动态共享数据审计方法,其包括:
获取预先选定的大素数、以及阶数为所述大素数的两个乘法循环群,根据两个乘法循环群,得到双线性配对,随机从整数群中选择一个数作为系统主秘钥,根据该随机数计算系统公钥,随机从乘法循环群中选择一个数,定义两个安全加密的哈希函数,保存所述系统主秘钥,公开系统参数;
获取群管理者配备生成的私钥和用户身份标识符ID,将所述私钥作为群秘钥,计算所述私钥的公钥,根据所述私钥、所述私钥的公钥和所述用户身份标识符ID计算加入秘钥,并根据所述用户身份标识符ID和所述加入秘钥进行合法性验证处理,生成合法性验证结果,根据合法性验证结果将用户信息添加到预设的用户信息表中,具体为:
获取群管理者配备根据群管理者配备的可信执行环境,生成的一个私钥,将所述私钥/>作为群秘钥,并计算所述群秘钥的公钥,计算公式为:
其中,为整数群/>中的随机数,/>为群秘钥的公钥;
获取群管理者配备生成的用户身份标识符ID;
当获取到用户发送的加入请求时,利用所述群秘钥/>和所述用户身份标识符ID,计算加入秘钥/>,计算公式为:
其中,为安全加密的哈希函数;
通过安全通道将所述加入秘钥发送给用户/>,用户/>会将所述用户身份标识符ID和所述加入秘钥/>发送给所述秘钥生成中心,以验证用户/>的合法性,验证公式为:
其中,函数为一次双线性配对操作,/>为安全参数、/>为乘法循环群/>的生成元;
当判断到验证公式成立时,在预设的用户信息表中加入用户的相关信息;
当判断到所述合法性验证结果为合法时,根据用户身份标识符、所述安全加密的哈希函数和所述系统主秘钥生成相对应的部分秘钥值,并将部分秘钥值返回给用户,根据所述部分秘钥值计算与所述部分秘钥值对应的私钥和公钥;
设置群用户的总数,将共享文件分为多个数据块,根据所述部分秘钥值、所述安全加密的哈希函数计算每一所述数据块的同态验证标签,生成同态验证标签集合,并将所述数据块和所述同态验证标签集合上传至云服务端,所述云服务端根据所述系统公钥对所述数据块和所述同态验证标签集合进行正确性验证处理,当验证正确后,删除本地的所述数据块和所述同态验证标签集合;
当用户需要进行数据完整性验证时,向第三方审计端发送验证请求,第三方审计端收到请求后生成挑战索引集合和随机数集合,根据所述挑战索引集合和所述随机数集合,得到挑战集合,并将所述挑战集合发送至云服务端;
在所述云服务端收到所述第三方审计端发送的挑战集合之后,将所述挑战索引集合分成多个不相交的子集,计算每一子集的子数据证明和子标签证明,根据所述子数据证明、所述子标签证明和所述双线性配对计算子辅助计算参数,生成证明集合,并将所述证明集合发送给第三方审计端;
当所述第三方审计端接收到所述证明集合后,进行数据完整性验证处理,生成完整性验证结果,并将所述完整性验证结果发送给用户。
综上所述,所述一种基于可信执行环境的无证书动态共享数据审计方法是实现对云存储环境中共享数据完整性安全高效的审计,和共享用户群组的动态性。其包括秘钥生成中心数据预处理、群用户加入、共享群用户秘钥生成、共享数据预处理、云服务端数据预处理、挑战、证明生成、证明验证、群用户撤销、数据的动态更新等步骤。该方法所提出的无证书公开审计方法,可以在确保共享数据安全高效审计的同时,实现动态的群管理和数据的动态更新,以及避免恶意的撤销用户和云服务端合谋攻击;即可以保护用户隐私,并抵抗恶意用户和云服务端合谋攻击,保证方案更高安全性,同时支持高效的用户群管理和共享数据的动态性。
附图说明
图1是本发明实施例提供的一种基于可信执行环境的无证书动态共享数据审计方法的流程示意图。
图2是本发明实施例提供的一种基于可信执行环境的无证书动态共享数据审计方法的审计流程示意图。
图3是本发明实施例提供的一种基于可信执行环境的无证书动态共享数据审计方法的用户信息表示意图。
图4是本发明实施例提供的一种基于可信执行环境的无证书动态共享数据审计方法的用户撤销流程示意图。
图5是本发明实施例提供的一种基于可信执行环境的无证书动态共享数据审计方法的数据动态更新流程示意图。
图6是本发明实施例提供的一种基于可信执行环境的无证书动态共享数据审计方法的扩展动态哈希双链信息表示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,下面结合实施例,进一步详细说明本发明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
请参阅图1至图2,本发明第一实施例公开了一种基于可信执行环境的无证书动态共享数据审计方法,其基于可信执行环境的无证书动态共享数据审计设备(以下简称审计设备)来执行,特别的,由所述审计设备内的一个或者多个处理器来执行,以实现如下方法:
S101,获取预先选定的大素数、以及阶数为所述大素数的两个乘法循环群,根据两个乘法循环群,得到双线性配对,随机从整数群中选择一个数作为系统主秘钥,根据该随机数计算系统公钥,随机从乘法循环群中选择一个数,定义两个安全加密的哈希函数,保存所述系统主秘钥,公开系统参数;
具体地,步骤S101包括:获取预先选定的安全参数、大素数/>、以及两个阶为/>的乘法循环群/>和/>,得到双线性配对/>;
控制秘钥生成中心随机选择一个数作为系统主秘钥,根据公式/>计算系统公钥,其中,/>为系统公钥,/>为整数群/>中的随机数;
控制所述秘钥生成中心随机选择一个数,/>,并定义两个安全加密的哈希函数/>,/>,/>,其中,安全加密的哈希函数/>和安全加密的哈希函数的作用是将任意长度的串/>映射为乘法循环群/>中的元素;
保存所述系统主秘钥,并公开系统参数/>。
在本实施例中,秘钥生成中心数据预处理步骤,给定一个安全参数,秘钥生成中心选定一个大素数/>,以及两个阶为/>的乘法循环群/>和/>,存在双线性配对。秘钥生成中心选择一个随机数/>作为系统主秘钥,并且计算系统的公钥。秘钥生成中心再随机选择/>,并定义两个安全加密的哈希函数,其作用是将任意长度的串{0,1}*映射为群/>中的元素。最终,秘钥生成中心保存主秘钥/>,并公开系统参数/>。其中,函数/>为一次双线性配对操作。
S102,获取群管理者配备生成的私钥和用户身份标识符ID,将所述私钥作为群秘钥,计算所述私钥的公钥,根据所述私钥、所述私钥的公钥和所述用户身份标识符ID计算加入秘钥,并根据所述用户身份标识符ID和所述加入秘钥进行合法性验证处理,生成合法性验证结果,根据合法性验证结果将用户信息添加到预设的用户信息表中;
具体地,步骤S102包括:获取群管理者配备根据群管理者配备的可信执行环境,生成的一个私钥,将所述私钥/>作为群秘钥,并计算所述群秘钥的公钥,计算公式为:
其中,为整数群/>中的随机数,/>为群秘钥的公钥;
获取群管理者配备生成的用户身份标识符ID;
当获取到用户发送的加入请求时,利用所述群秘钥/>和所述用户身份标识符ID,计算加入秘钥/>,计算公式为:
其中,为安全加密的哈希函数;
通过安全通道将所述加入秘钥发送给用户/>,用户/>会将所述用户身份标识符ID和所述加入秘钥/>发送给所述秘钥生成中心,以验证用户/>的合法性,验证公式为:
其中,函数为一次双线性配对操作,/>为安全参数、/>为乘法循环群/>的生成元;
当判断到验证公式成立时,在预设的用户信息表中加入用户的相关信息。
在本实施例中,群用户加入步骤,群用户中的群管理者负责用户的加入与撤销。首先,群管理者配备的可信执行环境将生成一个私钥作为群秘钥,并计算其公钥/>,同时群管理者生成自己的身份标识符ID。随后,当用户/>想要加入群组时,他向群管理者发出加入请求。当群管理者收到加入申请后,利用群秘钥和其身份标识符ID,计算加入秘钥/>,最后,将/>通过安全的信道发送给用户/>。当收到加入秘钥/>后,用户/>将其身份标识符/>和加入秘钥/>发送给秘钥生成中心,来验证用户/>的合法性,如果等式成立,用户群管理者在用户信息表中加入用户/>的相关信息。用户信息表是新近提出的用于支持高效的用户管理和身份追溯的认证数据结构,参见图3所示,其本质上是一个由用户群管理员维护的二维表,表中包括用户的身份信息项和块操作项,用户的身份信息项通过用户的身份信息形成链表,块操作项包含用户操作的数据块信息、用户对于块的操作和时间戳信息。
S103,当判断到所述合法性验证结果为合法时,根据用户身份标识符、所述安全加密的哈希函数和所述系统主秘钥生成相对应的部分秘钥值,并将部分秘钥值返回给用户,根据所述部分秘钥值计算与所述部分秘钥值对应的私钥和公钥;
具体地,步骤S103包括:当判断到用户验证合法时,所述秘钥生成中心会根据第个用户身份标识符/>生成用户/>的部分秘钥值/>,计算公式为:
将用户的部分秘钥值/>返回给用户/>,计算与用户/>的部分秘钥值/>相对应的私钥/>,/>,并计算私钥/>的公钥/>,其中,/>为整数群/>中的随机数。
在本实施例中,共享群用户秘钥生成步骤:如果用户验证合法,秘钥生成中心将根据其身份标识符/>生成用户/>的部分秘钥值/>。秘钥生成中心将/>返回给用户/>。随后,用户/>计算自己的私钥/>,并计算公钥/>。
S104,设置群用户的总数,将共享文件分为多个数据块,根据所述部分秘钥值、所述安全加密的哈希函数计算每一所述数据块的同态验证标签,生成同态验证标签集合,并将所述数据块和所述同态验证标签集合上传至云服务端,所述云服务端根据所述系统公钥对所述数据块和所述同态验证标签集合进行正确性验证处理,当验证正确后,删除本地的所述数据块和所述同态验证标签集合;
具体地,步骤S104包括:设群用户总数为,用户群组表示为集合;
所述用户将共享文件/>分为/>个数据块,/>,其中,/>表示第个数据块;
计算生成每一所述数据块的同态验证标签,得到同态验证标签集合,计算公式为:
其中,为第/>个数据块的同态验证标签,/>,/>为文件标识符,/>为数据块总数,/>为数据块的索引,数据块的同态验证标签集合表示为/>;
将数据块和与数据块相对应的同态验证标签上传至云服务端,进行正确性验证处理,并在所述云服务端验证完数据块和与数据块相对应的同态验证标签的正确性之后,删除本地的数据块和与数据块相对应的同态验证标签,以节省存储空间;
其中,所述正确性验证处理的验证公式为:
其中,为验证结果。
在本实施例中,共享数据预处理步骤:用户群管理者是数据的所有者。设群用户总数为,用户群组表示为集合/>,群用户/>将共享文件/>被分为/>个数据块。然后,为每个数据块生成其同态验证标签/>。群用户上传数据块及其相应的标签到云服务端,待云服务端验证数据及其标签的正确性之后,群用户可以删除本地的数据以节省存储空间。
在本实施例中,云服务端数据预处理步骤为:云服务端收到用户发来的共享数据块集合,及其相应的标签集合/>之后,云服务端首先验证数据的正确性。如果验证通过,云服务端帮助用户存储共享数据,否则,云服务端要求用户重新发送数据。
S105,当用户需要进行数据完整性验证时,向第三方审计端发送验证请求,第三方审计端收到请求后生成挑战索引集合和随机数集合,根据所述挑战索引集合和所述随机数集合,得到挑战集合,并将所述挑战集合发送至云服务端;
具体地,步骤S105包括:当需要进行数据的完整性验证时,向第三方审计端发送审计请求;
获取所述第三方审计端生成的包含个元素的挑战索引集合,其中,/>为挑战块的数量,/>为第/>个挑战块的索引数;
获取所述第三方审计端为每个挑战索引生成的一个对应的随机数,以及随机数集合/>,其中,/>为整数群/>中的随机数;
控制所述第三方审计端将挑战集合发送至云服务端。
在本实施例中,挑战步骤:当用户需要进行数据的完整性验证时,向第三方审计端发送审计请求,然后第三方审计端生成挑战索引集合。第三方审计端还为每个挑战索引生成一个对应的随机数,随机数集合表示为。最后,第三方审计端将挑战集合/>发送至云服务端。
S106,在所述云服务端收到所述第三方审计端发送的挑战集合之后,将所述挑战索引集合分成多个不相交的子集,计算每一子集的子数据证明和子标签证明,根据所述子数据证明、所述子标签证明和所述双线性配对计算子辅助计算参数,生成证明集合,并将所述证明集合发送给第三方审计端;
具体地,步骤S106包括:在所述云服务端收到所述第三方审计端发送的挑战集合之后,将所述挑战索引集合划分成/>个不相交的子集/>,其中每个子集/>表示特定被挑战的数据块;
对所述挑战索引集合的子集/>进行计算,生成对应的子数据证明/>,计算公式为:
其中,是用来保护数据隐私的随机掩码;
根据所述子集生成对应的子标签证明/>,计算公式为:
其中,为第/>个数据块的标签;
计算子辅助计算参数,计算公式为:
生成所有的证明集合,并将所述证明集合/>发送给第三方审计端,其中,/>,/>,/>。
在本实施例中,证明生成步骤:云服务端收到挑战集合后,会生成对应的证明。云服务端首先会将挑战索引集合划分为/>个不相交的子集,对于每个子集,令其包含的数据块数量为/>,即/>,/>。然后,云服务端生成数据证明集合/>,标签证明集合/>和辅助计算参数集合/>,最后云服务端将所有的证明信息集合/>发给第三方审计端。
具体的,在本实施例中,云服务端收到第三方审计端的挑战信息后,首先针对挑战索引集合的子集生成对应的子数据证明;云服务端根据挑战索引集合的子集生成对应的子标签证明;云服务端还需要计算子辅助计算参数;完成上述计算后,云服务端将会得到所有的证明集合,最后将证明信息集合发送给第三方审计端。
S107,当所述第三方审计端接收到所述证明集合后,进行数据完整性验证处理,生成完整性验证结果,并将所述完整性验证结果发送给用户;
具体地,步骤S107包括:当所述第三方审计端接收到所述证明集合后,根据完整性验证公式验证数据的完整性,完整性验证公式为:
当判断到所述完整性验证公式正立时,生成云服务端正确存储数据成功信号,并将所述云服务端正确存储数据成功信号发送给用户;
当判断到所述完整性验证公式不正立时,生成云服务端正确存储数据失败信号,并将所述云服务端正确存储数据失败信号发送给用户。
在本实施例中,证明验证步骤:第三方审计端收到证明信息后,帮助用户验证数据的完整性,并将验证的结果如实地告知用户。即第三方审计端收到证明集合之后,根据等式验证数据的完整性;如果等式成立,表明云服务端正确存储数据,否则,表明共享数据被破坏,可能存在篡改、删除或丢失等安全问题,最后,第三方审计端将审计结果如实的告知用户。
S108,还包括当接收到用户发送的撤销请求时,从所述用户信息表中用中移除用户的相关信息,通知所述云服务端取消用户的数据访问权限,并将该撤销用户的标签转换为有效用户的标签;
具体地,步骤S108包括:当接收到用户发送的撤销请求时,从所述用户信息表中用中移除用户/>的相关信息,并通知所述云服务端取消用户/>的数据访问权限;
在云服务端的可信执行环境中,生成一个随机值,其中,/>为整数群/>中的随机数,并通过安全信道将发送随机值/>给用户/>;
所述用户会根据随机值/>计算第一参数/>和第二参数/>,其中,/>表示用户/>的部分秘钥值,/>表示用户/>的私钥;
用户通过安全信道将第一参数/>和第二参数/>发送给用户/>;
用户根据第一参数/>和第二参数/>进行计算处理,计算第三参数和第四参数/>,其中,/>为用户/>的私钥;
用户通过安全信道将第三参数/>和第四参数/>发送给云服务端的可信执行环境;
计算用于标签转换的重签名秘钥,计算公式为:
云服务端的可信执行环境将撤销用户持有的数据块/>的标签/>转换为有效用户/>的标签/>,其计算公式为:
其中,表示数据块/>的标签。
用户的撤销流程参见图4所示,在本实施例中,群用户撤销步骤,当用户要撤销时,向群管理者发出撤销请求。然后群管理者会从用户信息表中用中移除/>的相关信息,并通知云服务端取消/>的数据访问权限,另外,还要将撤销用户/>的标签转换为有效用户/>的标签,其中/>,以此确保群组数据的安全性和完整性。
具体的,在本实施例中,当用户要撤销时,向群管理者发出撤销请求,收到撤销请求后,群管理者会从用户信息表中用中移除/>的相关信息,并通知云服务端取消/>的数据访问权限。为了将撤销用户/>的标签重签名为有效用户/>的标签,云服务端的可信执行环境需要生成用于标签转换的重签名秘钥,具体为:第一步,收到随机值/>之后,用户/>首先计算第一参数/>,随后,再计算第二参数/>,最后,用户/>通过安全的信道发送给用户;第二步,收到用户/>发送的参数/>和/>之后,用户/>首先计算第三参数/>,随后,用户/>再计算第四参数/>,最后,用户/>通过安全的信道发送给云服务端的可信执行环境;第三步,云服务端的可信执行环境收到参数/>和/>之后,计算用于标签转换的重签名秘钥。
完成上述的计算之后,云服务端的可信执行环境将撤销用户持有的数据块的标签转换为有效用户的标签。最终完成了用户/>撤销的所有操作。
S109,还包括获取用户发送的数据动态更新请求,并向云服务端和第三方审计端发送数据动态更新请求,所述云服务端会根据所述数据动态更新请求更新相应的数据块和标,所述第三方审计端会根据所述数据动态更新请求更新扩展动态哈希双链信息表中的相关信息,其中,所述数据动态更新请求包括插入请求、更改请求和删除请求。
具体地,步骤S109包括:当判断到用户需对数据进行插入操作时,向云服务端发送插入请求,云服务端在接收请求后,根据相应的请求插入数据,并更新相关信息,同时,告知第三方审计端此次插入操作;
当判断到用户需对数据进行更改操作时,向云服务端发送更改请求,云服务端接收请求后,将原数据块和对应标签替换为更改数据块和对应更改标签,同时,将更改请求发送给第三方审计端;
当判断到用户需对数据进行删除操作时,向云服务端发送删除请求,云服务端根据删除请求删除相关信息,同时,将删除请求发送给第三方审计端。
在本实施例中,数据的动态更新步骤:当用户需对数据进行动态更新时,需向云服务端和第三方审计端发送更新请求,包括数据的插入、更改/>和删除/>,收到更新请求后,云服务端将更新相应的数据块和标签,第三方审计端更新扩展动态哈希双链信息表中的相关信息,扩展动态哈希双链信息表参见图6所示,是由第三方审计端维护的二维表,分为文件信息部分和数据块信息部分,文件信息包含包括文件号NO.和文件标识符/>,数据块信息则详细记录了每个数据块的版本号/>、虚拟索引号/>以及签名者信息,以便有效支持文件内容的动态更新与安全管理。
具体的,在本实施例中,用户数据动态更新的过程参见图5所示,当用户需对数据进行插入操作时,例如,用户要在数据块/>之后插入新的数据块/>。首先,/>为/>计算标签/>,并向云服务端发送插入请求/>,云服务端接收请求后,根据相应的请求在/>后插入/>,并更新相关信息。同时,/>需告知第三方审计端此次插入操作,以便第三方审计端在其维护的扩展动态哈希双链信息表中进行相应更新。
当用户需对数据进行更改操作时,例如,用户想要将数据块/>更改为/>,首先,为首先更新/>的版本号/>,计算/>标签/>,并向云服务端发送更改请求,云服务端接收请求后,将原数据块/>和标签/>替换为更改后的数据块/>和标签/>。同时,/>将更改请求发送给第三方审计端,以便第三方审计端在其维护的扩展动态哈希双链信息表中进行相应更新。
当用户需对数据进行删除操作时,例如,用户请求删除数据块/>,首先,/>向云服务端发送删除请求/>,云服务端根据删除请求/>删除/>及其相关信息,同时,/>还需要将删除请求/>发送给第三方审计端,第三方审计端据此在扩展动态哈希双链信息表中做出相应的删除操作。
综上,所述基于可信执行环境的无证书动态共享数据审计方法,可以保护用户隐私,并抵抗恶意用户和云服务端合谋攻击,保证方案更高安全性,同时支持高效的用户群管理和共享数据的动态性。
以上仅是本发明的优选实施方式,本发明的保护范围并不仅局限于上述实施例,凡属于本发明思路下的技术方案均属于本发明的保护范围。
Claims (9)
1.一种基于可信执行环境的无证书动态共享数据审计方法, 其特征在于,包括:
获取预先选定的大素数、以及阶数为所述大素数的两个乘法循环群,根据两个乘法循环群,得到双线性配对,随机从整数群中选择一个数作为系统主秘钥,根据该随机数计算系统公钥,随机从乘法循环群中选择一个数,定义两个安全加密的哈希函数,保存所述系统主秘钥,公开系统参数;
获取群管理者配备生成的私钥和用户身份标识符ID,将所述私钥作为群秘钥,计算所述私钥的公钥,根据所述私钥、所述私钥的公钥和所述用户身份标识符ID计算加入秘钥,并根据所述用户身份标识符ID和所述加入秘钥进行合法性验证处理,生成合法性验证结果,根据合法性验证结果将用户信息添加到预设的用户信息表中,具体为:
获取群管理者配备根据群管理者配备的可信执行环境,生成的一个私钥,将所述私钥/>作为群秘钥,并计算所述群秘钥的公钥,计算公式为:
其中,为整数群/>中的随机数,/>为群秘钥的公钥;
获取群管理者配备生成的用户身份标识符ID;
当获取到用户发送的加入请求时,利用所述群秘钥/>和所述用户身份标识符ID,计算加入秘钥/>,计算公式为:
其中,为安全加密的哈希函数;
通过安全通道将所述加入秘钥发送给用户/>,用户/>会将所述用户身份标识符ID和所述加入秘钥/>发送给所述秘钥生成中心,以验证用户/>的合法性,验证公式为:
其中,函数为一次双线性配对操作,/>为安全参数、/>为乘法循环群/>的生成元;
当判断到验证公式成立时,在预设的用户信息表中加入用户的相关信息;
当判断到所述合法性验证结果为合法时,根据用户身份标识符、所述安全加密的哈希函数和所述系统主秘钥生成相对应的部分秘钥值,并将部分秘钥值返回给用户,根据所述部分秘钥值计算与所述部分秘钥值对应的私钥和公钥;
设置群用户的总数,将共享文件分为多个数据块,根据所述部分秘钥值、所述安全加密的哈希函数计算每一所述数据块的同态验证标签,生成同态验证标签集合,并将所述数据块和所述同态验证标签集合上传至云服务端,所述云服务端根据所述系统公钥对所述数据块和所述同态验证标签集合进行正确性验证处理,当验证正确后,删除本地的所述数据块和所述同态验证标签集合;
当用户需要进行数据完整性验证时,向第三方审计端发送验证请求,第三方审计端收到请求后生成挑战索引集合和随机数集合,根据所述挑战索引集合和所述随机数集合,得到挑战集合,并将所述挑战集合发送至云服务端;
在所述云服务端收到所述第三方审计端发送的挑战集合之后,将所述挑战索引集合分成多个不相交的子集,计算每一子集的子数据证明和子标签证明,根据所述子数据证明、所述子标签证明和所述双线性配对计算子辅助计算参数,生成证明集合,并将所述证明集合发送给第三方审计端;
当所述第三方审计端接收到所述证明集合后,进行数据完整性验证处理,生成完整性验证结果,并将所述完整性验证结果发送给用户。
2.根据权利要求1所述的一种基于可信执行环境的无证书动态共享数据审计方法,其特征在于,获取预先选定的大素数、以及阶数为所述大素数的两个乘法循环群,根据两个乘法循环群,得到双线性配对,随机从整数群中选择一个数作为系统主秘钥,根据该随机数计算系统公钥,随机从乘法循环群中选择一个数,定义两个安全加密的哈希函数,保存所述系统主秘钥,公开系统参数,具体为:
获取预先选定的安全参数、大素数/>、以及两个阶为/>的乘法循环群/>和/>,得到双线性配对/>;
控制秘钥生成中心随机选择一个数作为系统主秘钥,根据公式/>计算系统公钥,其中,/>为系统公钥,/>为整数群/>中的随机数;
控制所述秘钥生成中心随机选择一个数,/>,并定义两个安全加密的哈希函数,/>,/>,其中,安全加密的哈希函数/>和安全加密的哈希函数/>的作用是将任意长度的串/>映射为乘法循环群/>中的元素;
保存所述系统主秘钥,并公开系统参数/>。
3.根据权利要求2所述的一种基于可信执行环境的无证书动态共享数据审计方法,其特征在于,当判断到所述合法性验证结果为合法时,根据用户身份标识符、所述安全加密的哈希函数和所述系统主秘钥生成相对应的部分秘钥值,并将部分秘钥值返回给用户,根据所述部分秘钥值计算与所述部分秘钥值对应的私钥和公钥,具体为:
当判断到用户验证合法时,所述秘钥生成中心会根据第/>个用户身份标识符/>生成用户/>的部分秘钥值/>,计算公式为:
将用户的部分秘钥值/>返回给用户/>,计算与用户/>的部分秘钥值/>相对应的私钥,/>,并计算私钥/>的公钥/>,其中,/>为整数群/>中的随机数。
4.根据权利要求3所述的一种基于可信执行环境的无证书动态共享数据审计方法,其特征在于,设置群用户的总数,将共享文件分为多个数据块,根据所述部分秘钥值、所述安全加密的哈希函数计算每一所述数据块的同态验证标签,生成同态验证标签集合,并将所述数据块和所述同态验证标签集合上传至云服务端,所述云服务端根据所述系统公钥对所述数据块和所述同态验证标签集合进行正确性验证处理,当验证正确后,删除本地的所述数据块和所述同态验证标签集合,具体为:
设群用户总数为,用户群组表示为集合/>;
所述用户将共享文件/>分为/>个数据块,/>,其中,/>表示第/>个数据块;
计算生成每一所述数据块的同态验证标签,得到同态验证标签集合,计算公式为:
其中,为第/>个数据块的同态验证标签,/>,/>为文件标识符,/>为数据块总数,/>为数据块的索引,数据块的同态验证标签集合表示为/>;
将数据块和与数据块相对应的同态验证标签上传至云服务端,进行正确性验证处理,并在所述云服务端验证完数据块和与数据块相对应的同态验证标签的正确性之后,删除本地的数据块和与数据块相对应的同态验证标签,以节省存储空间;
其中,所述正确性验证处理的验证公式为:
其中,为验证结果。
5.根据权利要求4所述的一种基于可信执行环境的无证书动态共享数据审计方法,其特征在于,当用户需要进行数据完整性验证时,向第三方审计端发送验证请求,第三方审计端收到请求后生成挑战索引集合和随机数集合,根据所述挑战索引集合和所述随机数集合,得到挑战集合,并将所述挑战集合发送至云服务端,具体为:
当需要进行数据的完整性验证时,向第三方审计端发送审计请求;
获取所述第三方审计端生成的包含个元素的挑战索引集合,其中,/>为挑战块的数量,/>为第/>个挑战块的索引数;
获取所述第三方审计端为每个挑战索引生成的一个对应的随机数,以及随机数集合,其中,/>为整数群/>中的随机数;
控制所述第三方审计端将挑战集合发送至云服务端。
6.根据权利要求5所述的一种基于可信执行环境的无证书动态共享数据审计方法,其特征在于,在所述云服务端收到所述第三方审计端发送的挑战集合之后,将所述挑战索引集合分成多个不相交的子集,计算每一子集的子数据证明和子标签证明,根据所述子数据证明、所述子标签证明和所述双线性配对计算子辅助计算参数,生成证明集合,并将所述证明集合发送给第三方审计端,具体为:
在所述云服务端收到所述第三方审计端发送的挑战集合之后,将所述挑战索引集合划分成/>个不相交的子集/>,其中每个子集/>表示特定被挑战的数据块;
对所述挑战索引集合的子集/>进行计算,生成对应的子数据证明/>,计算公式为:
其中,是用来保护数据隐私的随机掩码;
根据所述子集生成对应的子标签证明/>,计算公式为:
其中,为第/>个数据块的标签;
计算子辅助计算参数,计算公式为:
生成所有的证明集合,并将所述证明集合/>发送给第三方审计端,其中,,/>,/>。
7.根据权利要求6所述的一种基于可信执行环境的无证书动态共享数据审计方法,其特征在于,数据完整性验证处理,具体为:
当所述第三方审计端接收到所述证明集合后,根据完整性验证公式验证数据的完整性,完整性验证公式为:
当判断到所述完整性验证公式正立时,生成云服务端正确存储数据成功信号,并将所述云服务端正确存储数据成功信号发送给用户;
当判断到所述完整性验证公式不正立时,生成云服务端正确存储数据失败信号,并将所述云服务端正确存储数据失败信号发送给用户。
8.根据权利要求7所述的一种基于可信执行环境的无证书动态共享数据审计方法,其特征在于,还包括当接收到用户发送的撤销请求时,从所述用户信息表中用中移除用户的相关信息,通知所述云服务端取消用户的数据访问权限,并将该撤销用户的标签转换为有效用户的标签,具体为:
当接收到用户发送的撤销请求时,从所述用户信息表中用中移除用户/>的相关信息,并通知所述云服务端取消用户/>的数据访问权限;
在云服务端的可信执行环境中,生成一个随机值,其中,/>为整数群/>中的随机数,并通过安全信道将发送随机值/>给用户/>;
所述用户会根据随机值/>计算第一参数/>和第二参数/>,其中,/>表示用户/>的部分秘钥值,/>表示用户/>的私钥;
用户通过安全信道将第一参数/>和第二参数/>发送给用户/>;
用户根据第一参数/>和第二参数/>进行计算处理,计算第三参数/>和第四参数/>,其中,/>为用户/>的私钥;
用户通过安全信道将第三参数/>和第四参数/>发送给云服务端的可信执行环境;
计算用于标签转换的重签名秘钥,计算公式为:
云服务端的可信执行环境将撤销用户持有的数据块/>的标签/>转换为有效用户/>的标签/>,其计算公式为:
其中,表示数据块/>的标签。
9.根据权利要求8所述的一种基于可信执行环境的无证书动态共享数据审计方法,其特征在于,还包括获取用户发送的数据动态更新请求,并向云服务端和第三方审计端发送数据动态更新请求,所述云服务端会根据所述数据动态更新请求更新相应的数据块和标,所述第三方审计端会根据所述数据动态更新请求更新扩展动态哈希双链信息表中的相关信息,具体为:
当判断到用户需对数据进行插入操作时,向云服务端发送插入请求,云服务端在接收请求后,根据相应的请求插入数据,并更新相关信息,同时,告知第三方审计端此次插入操作;
当判断到用户需对数据进行更改操作时,向云服务端发送更改请求,云服务端接收请求后,将原数据块和对应标签替换为更改数据块和对应更改标签,同时,将更改请求发送给第三方审计端;
当判断到用户需对数据进行删除操作时,向云服务端发送删除请求,云服务端根据删除请求删除相关信息,同时,将删除请求发送给第三方审计端。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410370415.1A CN117978546B (zh) | 2024-03-29 | 2024-03-29 | 一种基于可信执行环境的无证书动态共享数据审计方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410370415.1A CN117978546B (zh) | 2024-03-29 | 2024-03-29 | 一种基于可信执行环境的无证书动态共享数据审计方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117978546A true CN117978546A (zh) | 2024-05-03 |
CN117978546B CN117978546B (zh) | 2024-06-11 |
Family
ID=90848193
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410370415.1A Active CN117978546B (zh) | 2024-03-29 | 2024-03-29 | 一种基于可信执行环境的无证书动态共享数据审计方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117978546B (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103501352A (zh) * | 2013-10-22 | 2014-01-08 | 北京航空航天大学 | 一种允许群组用户身份撤销的云存储数据安全审计方法 |
CN109743327A (zh) * | 2019-01-16 | 2019-05-10 | 福建师范大学 | 基于无证书的云存储中共享数据的完整性公开验证协议 |
CN110048836A (zh) * | 2019-04-02 | 2019-07-23 | 南京航空航天大学 | 一种可追踪用户身份的云共享数据完整性审计方法 |
US20200067707A1 (en) * | 2018-08-23 | 2020-02-27 | International Business Machines Corporation | Assymetric structured key recovering using oblivious pseudorandom function |
CN111541666A (zh) * | 2020-04-16 | 2020-08-14 | 西南交通大学 | 基于无证书且含隐私保护功能的云端数据完整性审计方法 |
CN112751923A (zh) * | 2020-12-30 | 2021-05-04 | 武汉大学 | 一种支持公开完整性校验的数据共享系统及方法 |
CN113364600A (zh) * | 2021-08-11 | 2021-09-07 | 西南石油大学 | 基于无证书的云存储数据完整性公共审计方法 |
CN113901528A (zh) * | 2021-10-29 | 2022-01-07 | 博雅正链(北京)科技有限公司 | 基于区块链的云端数据完整性审计方法 |
DE102022104902A1 (de) * | 2021-03-03 | 2022-09-08 | Micron Technology, Inc. | Online-sicherheitsdienste auf der grundlage von in speichervorrichtungen implementierten sicherheitsmerkmalen |
-
2024
- 2024-03-29 CN CN202410370415.1A patent/CN117978546B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103501352A (zh) * | 2013-10-22 | 2014-01-08 | 北京航空航天大学 | 一种允许群组用户身份撤销的云存储数据安全审计方法 |
US20200067707A1 (en) * | 2018-08-23 | 2020-02-27 | International Business Machines Corporation | Assymetric structured key recovering using oblivious pseudorandom function |
CN109743327A (zh) * | 2019-01-16 | 2019-05-10 | 福建师范大学 | 基于无证书的云存储中共享数据的完整性公开验证协议 |
CN110048836A (zh) * | 2019-04-02 | 2019-07-23 | 南京航空航天大学 | 一种可追踪用户身份的云共享数据完整性审计方法 |
CN111541666A (zh) * | 2020-04-16 | 2020-08-14 | 西南交通大学 | 基于无证书且含隐私保护功能的云端数据完整性审计方法 |
CN112751923A (zh) * | 2020-12-30 | 2021-05-04 | 武汉大学 | 一种支持公开完整性校验的数据共享系统及方法 |
DE102022104902A1 (de) * | 2021-03-03 | 2022-09-08 | Micron Technology, Inc. | Online-sicherheitsdienste auf der grundlage von in speichervorrichtungen implementierten sicherheitsmerkmalen |
CN113364600A (zh) * | 2021-08-11 | 2021-09-07 | 西南石油大学 | 基于无证书的云存储数据完整性公共审计方法 |
CN113901528A (zh) * | 2021-10-29 | 2022-01-07 | 博雅正链(北京)科技有限公司 | 基于区块链的云端数据完整性审计方法 |
Non-Patent Citations (3)
Title |
---|
JIANMING DU;GUOFANG DONG;JUANGUI NING;ZHENGNAN XU;RUICHENG YANG: "A Blockchain-Assisted Certificateless Public Cloud Data Integrity Auditing Scheme", IEEE ACCESS, 31 December 2023 (2023-12-31), pages 123018 - 123029 * |
张凡: "云存储环境下支持动态更新的数据完整性审计机制研究", 中国优秀硕士论文库, 15 December 2023 (2023-12-15), pages 1 - 48 * |
田晖: "云数据持有性审计研究与进展", 中国优秀硕士论文库, 15 June 2017 (2017-06-15), pages 8 - 50 * |
Also Published As
Publication number | Publication date |
---|---|
CN117978546B (zh) | 2024-06-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Fu et al. | NPP: A new privacy-aware public auditing scheme for cloud data sharing with group users | |
Zhou et al. | Achieving secure role-based access control on encrypted data in cloud storage | |
CN113364600B (zh) | 基于无证书的云存储数据完整性公共审计方法 | |
CN108933667B (zh) | 一种基于区块链的公钥证书的管理方法及管理系统 | |
Jin et al. | Full integrity and freshness for cloud data | |
CN111614680B (zh) | 一种基于cp-abe的可追溯云存储访问控制方法和系统 | |
Tian et al. | Public audit for operation behavior logs with error locating in cloud storage | |
Nirmala et al. | Data confidentiality and integrity verification using user authenticator scheme in cloud | |
Li et al. | A Blockchain‐Based Public Auditing Scheme for Cloud Storage Environment without Trusted Auditors | |
CN115065679B (zh) | 基于区块链的电子健康档案共享模型、方法、系统和介质 | |
Yang et al. | Stateless cloud auditing scheme for non-manager dynamic group data with privacy preservation | |
CN112866990A (zh) | 一种具有激励机制的条件身份匿名隐私保护公共审计方法 | |
Yang et al. | Privacy-preserving cloud auditing for multiple users scheme with authorization and traceability | |
Alimohammadi et al. | A secure key-aggregate authentication cryptosystem for data sharing in dynamic cloud storage | |
Dhakad et al. | EPPDP: an efficient privacy-preserving data possession with provable security in cloud storage | |
CN109743327B (zh) | 基于无证书的云存储中共享数据的完整性公开验证方法 | |
Zhang et al. | Secdedup: Secure encrypted data deduplication with dynamic ownership updating | |
Eltayieb et al. | ASDS: Attribute‐based secure data sharing scheme for reliable cloud environment | |
Liao et al. | Security analysis of a certificateless provable data possession scheme in cloud | |
Kim et al. | Privacy-preserving public auditing for shared cloud data with secure group management | |
Davis et al. | Time-scoped searching of encrypted audit logs | |
Kasunde et al. | Verification of multi-owner shared data with collusion resistant user revocation in cloud | |
CN117978546B (zh) | 一种基于可信执行环境的无证书动态共享数据审计方法 | |
Yang et al. | Public auditing scheme for cloud data with user revocation and data dynamics | |
WO2023010688A1 (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 |