CN117155658A - 一种支持数据更新与审计者更换的云安全审计系统 - Google Patents
一种支持数据更新与审计者更换的云安全审计系统 Download PDFInfo
- Publication number
- CN117155658A CN117155658A CN202311123222.8A CN202311123222A CN117155658A CN 117155658 A CN117155658 A CN 117155658A CN 202311123222 A CN202311123222 A CN 202311123222A CN 117155658 A CN117155658 A CN 117155658A
- Authority
- CN
- China
- Prior art keywords
- data
- module
- cloud
- fog node
- key
- 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.)
- Pending
Links
- 238000012550 audit Methods 0.000 title claims abstract description 96
- 238000012795 verification Methods 0.000 claims description 30
- 238000000034 method Methods 0.000 claims description 23
- 238000003780 insertion Methods 0.000 claims description 22
- 230000037431 insertion Effects 0.000 claims description 22
- 238000012217 deletion Methods 0.000 claims description 17
- 230000037430 deletion Effects 0.000 claims description 17
- 230000008569 process Effects 0.000 claims description 14
- 230000004048 modification Effects 0.000 claims description 5
- 238000012986 modification Methods 0.000 claims description 5
- 230000003993 interaction Effects 0.000 description 11
- 230000005540 biological transmission Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 125000004122 cyclic group Chemical group 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 238000002955 isolation Methods 0.000 description 3
- 238000007792 addition Methods 0.000 description 2
- 238000013475 authorization Methods 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 206010000117 Abnormal behaviour Diseases 0.000 description 1
- 238000013474 audit trail Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000009474 immediate action Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 239000003595 mist Substances 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Classifications
-
- 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/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
-
- 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/083—Network architectures or network communication protocols for network security for authentication of entities using passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
- H04L67/5682—Policies or rules for updating, deleting or replacing the stored data
-
- 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/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
-
- 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/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开一种支持数据更新与审计者更换的云安全审计系统,涉及信息技术领域。该系统包括:用户端模块、服务器端模块、密钥生成中心模块和雾节点模块;用户端模块分别与服务器端模块、密钥生成中心模块和雾节点模块连接,雾节点模块还与服务器端模块和密钥生成中心模块连接;其中,服务器端模块包括:云服务提供商和云服务器;云服务器内置有数据结构可调整分治表,用以实现数据动态更新;雾节点模块包括若干个带有不同身份标识符的雾节点,用以实现对无法继续提供审计服务的审计者进行更换。本发明能够实现云端数据的高效更新,同时支持审计者的更换,防止在审计者更换时可能出现的合谋攻击,保持审计服务的连续性。
Description
技术领域
本发明涉及信息技术领域,特别是涉及一种支持数据更新与审计者更换的云安全审计系统。
背景技术
目前,云存储的广泛应用使得用户能够享受到海量存储、资源共享和按需付费等便利,但同时也带来了数据安全性的担忧。在云存储环境下,用户失去了对外包至云端的数据的直接控制权,而云服务商可能出于商业利益的考虑,删除用户使用频率较低的数据以节省存储空间;或者出于好奇的目的,私自修改或查看云端数据导致用户隐私泄露。为了确保用户数据的安全性和完整性,对存储在云端的数据进行完整性审计至关重要。通过对云端数据进行完整性审计,用户可以验证其数据是否受到篡改或损坏,并对违反完整性的事件进行追溯和索赔。这有助于增强用户对云服务商的信任,并确保数据在云存储环境中的安全性。
保证云端数据的新鲜性是云存储必须提供的服务,当用户对外包数据进行了更新操作时,例如:数据的增删改,云端数据也应随之被改变。数据更新有助于消除数据错误,降低数据损坏或丢失的风险,随着业务需求的变化,数据更新可以及时反映用户和组织最新的业务状态,为业务决策和分析提供准确和实时的支持,通过确保数据的一致性,既可便于后续对数据进行正确的安全审计,也可增强方案的实用性与可移植性。然而,由于用户失去了存储在云端的数据的控制权,使得数据操作的难度增大。因此,为了简化繁琐的数据更新操作,设计一种可以快速查询数据位置、便于后续更新的数据结构尤为重要。
通常,为减轻用户的负担,节省时间与工作成本,增强方案的实用性,远程数据的完整性验证工作可交由第三方审计者承担。第三方审计者由机构或组织担任,目前绝大多完整性验证方案中均假设其是受用户信任的可信实体,并不会对安全性或工作状态进行探讨。然而,在实际场景,却可能出现因更换第三方审计者而导致审计服务中断的情况。此情形的出现可能是因为审计者资源不足、身份过期等原因无法继续提供审计服务,或者审计者与云服务商勾结隐瞒数据损坏事实,此类事件的发生,将影响完整性验证工作的正确执行,长远来看,也将失去云存储用户的信任。因此,为了确保审计服务的可持续性和安全性,必须及时选择新的审计者来取代旧的审计者。
因此,亟需提供一种支持数据更新与审计者更换的云安全审计系统。
发明内容
本发明的目的是提供一种支持数据更新与审计者更换的云安全审计系统,以实现云端数据的高效更新,同时支持审计者的更换,防止在审计者更换时可能出现的合谋攻击,保持审计服务的连续性。
为实现上述目的,本发明提供了如下方案:
一种支持数据更新与审计者更换的云安全审计系统,包括:用户端模块、服务器端模块、密钥生成中心模块和雾节点模块;所述用户端模块分别与所述服务器端模块、所述密钥生成中心模块和所述雾节点模块连接,所述雾节点模块还与所述服务器端模块和所述密钥生成中心模块连接;
所述服务器端模块包括:云服务提供商和云服务器;所述云服务器内置有数据结构可调整分治表;所述数据结构可调整分治表用于存储数据的逻辑索引号、块号、版本号和数据块生成时间;所述用户端模块用于上传数据至所述云服务器,并根据所述数据结构可调整分治表实现数据动态操作;所述云服务器用于存储所述用户端模块上传的数据;
所述雾节点模块包括若干个带有不同身份标识符的雾节点;所述雾节点用于根据划分后的数据块生成块标签和签名,以实现对数据的完整性保护;在数据云存储期间:所述用户端模块还用于向所述雾节点模块中的任意一个雾节点发出审计请求;所述雾节点还用于根据所述审计请求生成随机挑战;所述云服务提供商用于根据所述随机挑战生成审计证据;所述雾节点还用于对所述审计证据进行有效性验证,并将审计结果返回至所述用户端模块;
所述密钥生成中心模块用于根据密钥信息对所述雾节点进行身份验证;所述雾节点还用于在身份验证通过后生成签名密钥;所述签名密钥用于在标签和证据的生成过程中进行加密和认证;所述密钥信息包括:用户身份信息、生成元、公钥和私钥;所述用户身份信息、所述生成元和所述公钥由所述用户端模块生成;所述私钥由所述密钥生成中心模块生成。
可选地,所述雾节点根据划分后的数据块生成块标签和签名,具体包括:
对于任意一个数据块,所述雾节点根据身份标识符和时间密钥计算块标签,并根据身份标识符和用户身份信息计算签名;所述时间密钥由所述密钥生成中心模块生成。
可选地,所述雾节点根据所述审计请求生成随机挑战,具体包括:
所述雾节点在接收到所述审计请求后,随机选取任意个数据块组成集合,为每个数据块选取一个随机数组成数组,并指定被挑战数据块的索引,根据所述集合、所述数组和所述索引生成随机挑战。
可选地,所述雾节点对所述审计证据进行有效性验证,具体包括:
所述雾节点在接收到所述审计证据后,判断所述审计证据是否满足有效性等式;若所述审计证据满足有效性等式,则代表数据没有损坏或被恶意篡改;若所述审计证据不满足有效性等式,则代表数据遭到破坏。
可选地,所述密钥生成中心模块根据密钥信息对所述雾节点进行身份验证,所述雾节点在身份验证通过后生成签名密钥,具体包括:
所述雾节点向所述密钥生成中心模块发送时间密钥请求;所述密钥生成中心模块根据密钥信息对所述雾节点进行身份验证,并在身份验证通过后将所述时间密钥发送至所述雾节点;所述雾节点根据所述时间密钥生成签名密钥。
可选地,所述数据动态操作包括:数据更新、数据插入和数据删除。
可选地,所述数据更新具体包括:
根据逻辑索引号,在数据结构可调整分治表中搜索得到待更新数据块;
对目标更新数据块进行加密操作,并计算加密后目标更新数据块的标签;
生成修改信息集并发送至云服务提供商,以使云服务提供商用加密后目标更新数据块替换待更新数据块,并生成新的标签集;
对数据块版本号进行加一操作。
可选地,所述数据插入具体包括:
根据逻辑索引号,在数据结构可调整分治表中搜索得到待插入数据块;
将待插入数据块以后的数据块向后平移一位,同时在待插入数据块的后一位插入一个空位置;
对数据块版本号进行加一操作;
对目标插入数据块进行加密操作,并计算加密后目标插入数据块的标签;
生成插入信息集并发送至云服务提供商,以使云服务提供商将加密后目标插入数据块插入至空位置,并生成新的标签集。
可选地,所述数据删除具体包括:
根据逻辑索引号,在数据结构可调整分治表中搜索得到待删除数据块;
将待删除数据块以后的数据块向前平移一位,并更新受到影响的数据块的逻辑索引号;
生成删除信息集并发送至云服务提供商,以使云服务提供商删除待删除数据块和相应的标签集。
根据本发明提供的具体实施例,本发明公开了以下技术效果:
本发明提供的支持数据更新与审计者更换的云安全审计系统,通过构建数据结构可调整分治表(Adjustable Divide and ConquerTable,ADCT)简化数据动态操作,实现数据动态更新,通过引入雾节点作为审计者,实现对无法继续提供审计服务的审计者进行更换。通过部署本发明,可以保证用户存储在云服务器中数据的完整性,防止恶意的云服务提供商对不经常使用或不重要的数据进行恶意篡改,同时支持审计者因资源不足或服务到期等因素所导致的更换,防止审计者更换过程中可能出现的合谋攻击。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的支持数据更新与审计者更换的云安全审计系统的模块图。
符号说明:
用户端模块-1,服务器端模块-2,密钥生成中心模块-3,雾节点模块-4。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的目的是提供一种支持数据更新与审计者更换的云安全审计系统,以实现云端数据的高效更新,同时支持审计者的更换,防止在审计者更换时可能出现的合谋攻击,保持审计服务的连续性。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
本发明提供一种支持数据更新与审计者更换的云安全审计系统。如图1所示,该系统包括:用户端模块1(即DO模块)、服务器端模块2(即CSP模块)、密钥生成中心模块3(即KGC模块)和雾节点模块4;所述用户端模块1分别与所述服务器端模块2、所述密钥生成中心模块3和所述雾节点模块4连接,所述雾节点模块4还与所述服务器端模块2和所述密钥生成中心模块3连接。
所述服务器端模块2包括:云服务提供商和云服务器;所述云服务器内置有数据结构可调整分治表;所述数据结构可调整分治表用于存储数据的逻辑索引号、块号、版本号和数据块生成时间;所述用户端模块1用于上传数据至所述云服务器,并根据所述数据结构可调整分治表实现数据动态操作;所述云服务器用于存储所述用户端模块上传的数据。
所述雾节点模块4包括若干个带有不同身份标识符的雾节点;所述雾节点用于根据划分后的数据块生成块标签和签名,以实现对数据的完整性保护;在数据云存储期间:所述用户端模块1还用于向所述雾节点模块4中的任意一个雾节点发出审计请求;所述雾节点还用于根据所述审计请求生成随机挑战;所述云服务提供商用于根据所述随机挑战生成审计证据;所述雾节点还用于对所述审计证据进行有效性验证,并将审计结果返回至所述用户端模块1。
优选地,所述雾节点根据划分后的数据块生成块标签和签名,具体包括:对于任意一个数据块,所述雾节点根据身份标识符和时间密钥计算块标签,并根据身份标识符和用户身份信息计算签名;所述时间密钥由所述密钥生成中心模块生成。
优选地,所述雾节点根据所述审计请求生成随机挑战,具体包括:所述雾节点在接收到所述审计请求后,随机选取任意个数据块组成集合,为每个数据块选取一个随机数组成数组,并指定被挑战数据块的索引,根据所述集合、所述数组和所述索引生成随机挑战。
优选地,所述雾节点对所述审计证据进行有效性验证,具体包括:所述雾节点在接收到所述审计证据后,判断所述审计证据是否满足有效性等式;若所述审计证据满足有效性等式,则代表数据没有损坏或被恶意篡改;若所述审计证据不满足有效性等式,则代表数据遭到破坏。
所述密钥生成中心模块3用于根据密钥信息对所述雾节点进行身份验证;所述雾节点还用于在身份验证通过后生成签名密钥;所述签名密钥用于在标签和证据的生成过程中进行加密和认证;所述密钥信息包括:用户身份信息、生成元、公钥和私钥;所述用户身份信息、所述生成元和所述公钥由所述用户端模块1生成;所述私钥由所述密钥生成中心模块3生成。
优选地,所述密钥生成中心模块根据密钥信息对所述雾节点进行身份验证,所述雾节点在身份验证通过后生成签名密钥,具体包括:所述雾节点向所述密钥生成中心模块发送时间密钥请求;所述密钥生成中心模块根据密钥信息对所述雾节点进行身份验证,并在身份验证通过后将所述时间密钥发送至所述雾节点;所述雾节点根据所述时间密钥生成签名密钥。
本发明采用雾节点作为审计者具有以下优势:
相比于受地域限制的第三方审计者,雾节点具有更强的灵活性和可拓展性,适合代替用户与云服务器进行审计交互工作。当雾节点出于主动或被动等原因需要退出审计任务时,允许一个新的雾节点代替旧节点继续为用户提供数据审计服务,实现审计者更换,同时离开的雾节点也不能获取新的签名密钥。此外,云服务器可以对审计者的身份进行认证,确保离开的雾节点不再能发起完整性挑战,也避免了外部攻击者冒充在任雾节点挑战云服务器。
雾节点作为审计者,可以提供更全面和准确的审计数据。雾节点可以实时监测数据的交互过程,及时发现潜在的安全风险和数据完整性问题。它可以在数据交互发生异常时立即采取措施,例如中断数据传输或报警通知审计者。这有助于及时发现和应对安全事件,提高审计的实时性和可靠性。此外,雾节点还可以支持多个参与方的审计。不仅可以由审计者对数据进行审计,还可以引入其他相关方(如用户或其他机构)参与审计过程。
雾节点作为审计者在数据交互过程中扮演着关键的角色。它可以提供安全的传输和存储环境,验证数据的完整性和合规性,记录审计数据和日志,实施访问控制和安全策略,并检测和响应数据交互过程中的异常行为。这些功能有助于提高数据交互过程的安全性和可信度,并增强对数据安全的保护和审计的有效性。
在云存储环境中,借助于雾节点,可以提供更快速、安全和可靠的数据访问和存储服务,满足用户对数据访问速度、隐私保护和离线访问的需求。它可以有效地解决传统云存储中的一些挑战,并提升用户体验和数据处理效率。由于雾节点具有以上描述中的种种优势,因此雾节点可做为审计者实现审计者更换的功能,确保审计服务的安全性与实用性。
具体地,上述各模块之间通过网络进行信息传输,DO模块和CSP模块之间通过云存储数据的上传和下载进行连接。DO模块和KGC模块之间通过生成密钥、存储密钥进行连接。DO模块和雾节点模块通过用户向雾节点发出审计请求,雾节点在收到请求后进行审计服务,最终返回给用户审计结果进行连接。CSP模块和雾节点模块之间通过雾节点开始审计服务,向CSP模块发出挑战信息,CSP模块收到挑战信息后返回给雾节点响应证据,由雾节点进行验证的过程进行连接。
其中,DO为用户端,包含用户以及各种终端设备,是具有大量数据的实体,希望将数据上载到云服务器进行存储,实现对数据的加密处理和数据块标签的生成,同时委托雾节点对云存储数据进行完整性审计,并接收雾节点返回的审计结果。
CSP为云服务提供商和云服务器,内置有ADCT表,主要是存储数据拥有者上传的数据以及响应雾节点的挑战信息。
KGC为密钥生成中心,负责生成身份密钥与时间密钥的可信实体,同时负责在系统设置阶段生成系统公开参数以及主密钥。
雾节点为审计者,它是用户和云服务器之间的中间节点,它接受来自用户的审计任务,与云服务器进行审计交互。负责与云服务器进行审计交互以及帮助用户完成密钥更新过程,以降低用户在本地端的开销。雾节点是一种在边缘计算环境中部署的计算节点,通常位于用户设备和云服务中心之间的网络边缘位置。它可以提供存储、计算和网络资源,并支持边缘计算应用的部署和执行。具有更强的灵活性和可拓展性,可以提供更全面和准确的审计数据。雾节点可以实时监测数据的交互过程,及时发现潜在的安全风险和数据完整性问题。
本发明引入雾节点充当审计方案中的审计者,它可以在本地进行审计而无需将数据发送到云服务提供商,保障了数据的隔离性和完整性,同时减少数据传输的延迟和贷款,降低用户在本地端的开销,因此保证了数据的完整性和云存储用户对于审计服务的信任。
系统的整体运行流程如下:
S1:首先进行系统初始化,在用户端运行密钥生成算法,生成一对用于数据签名的公私钥。
用户端首先选取双线性乘法循环群中的生成元g,然后随机选取大整数α并计算出公钥P=gα。接下来密钥生成中心秘密持有私钥(x,y)并输出系统参数pp=(G,G1,q,g,H,P),其中G与G1均为阶数为q的乘法循环群,H为哈希函数,P为由gα计算得到的公钥,在系统参数中被公开。
S2:通过雾节点在用户端处生成身份密钥和签名密钥,将密钥存储到密钥生成中心,在后续标签生成等一系列操作中进行身份验证。
1.身份密钥生成
用户端提交身份密钥请求reqUid=(Uid)给密钥生成中心,其中Uid为用户身份信息。密钥生成中心核对正确后将身份密钥Uidk发送回用户端。用户端对于返回的身份密钥Uidk进行检查,如不正确则重新发送请求。
2.签名密钥生成
雾节点Fl(l∈{1,2,...,L},共L个雾节点)将身份标识符Fidl发送给用户端,用户端选择一个随机值β重新计算雾节点的身份标识符Fidl'=gβ,将用户端生成的授权信息W=H(Uid||Fidl)β和新的标识符Fidl'返回给雾节点Fl并存储到密钥生成中心。其中,标识符的更新使得雾节点的身份信息更加可信,能够提高密钥的安全性。
收到用户端返回信息后,雾节点Fl向密钥生成中心发出时间密钥请求reqt={t,W,Fidl},t为时间戳。此时,密钥生成中心根据用户端之前发送的信息对于雾节点的身份进行验证;验证成功则将时间密钥Tk发送至雾节点Fl。最终,雾节点Fl核实得到的时间密钥无误后根据时间密钥生成签名密钥对,即sk={γ,Tk}和pk=gγ,其中,γ为生成签名密钥对所需要的随机数。
S3:雾节点通过划分后的数据块生成标签,用于确保用户数据在云服务商存储过程中的完整性,方便用户对云存储数据进行检查。
用户将原始文件划分为m个数据块bi(1≤i≤m),在盲化之后发送到雾节点Fl。雾节点Fl选择一个随机值δ计算块标签并且计算出签名信息Sig0=H(Uid||Fidl)γ,最终结合授权信息W和身份标识符Fidl得到签名Sig=Sig0||W||Fidl。
最后将计算得到的结果上传至云服务提供商并删除本地数据,云服务提供商对于上传数据集进行验证,验证通过则存储数据集,若失败则重新上传。
S4:云服务商通过雾节点发送来的随机挑战生成证据,用于完成用户的审计请求,进行下一阶段证据验证。
在数据云存储期间,雾节点Fl选取任意个数据块组成集合I并为每个数据块选取一个随机数Q={i,Ni},i∈I,并指定被挑战数据块的索引Ni,其中I表示从{1,2…,m}中随机挑选c个数据块的集合。然后生成随机挑战chal={W,Q}发送给云服务提供商,云服务提供商在收到由雾节点Fl发送的挑战后生成审计证据:proof={μ,σ},其中,返回给雾节点Fl进行验证。μ和σ都是云服务提供商返回给雾节点的证据,二者聚合在一起才能被称为审计证据。Q为从集合I中的数据块随机选取的随机数。/>为由标签和数据块索引生成的审计证据部分值。
S5:雾节点进行证据验证,通过等式检查审计证据的有效性,确定云存储数据是否遭到篡改。
雾节点Fl在收到云服务提供商返回的审计证据后开始验证其有效性,通过检查证据验证如下等式是否成立:
其中,e()为双线性映射,表示对函数或表达式求值的操作。e(σ,g)为审计证据proof的变型, 是由标签生成、身份密钥生成、时间密钥生成阶段的结果进行的代数运算。
若成功则代表数据没有损坏或被恶意篡改,如果在这个阶段中出现错误或验证失败则意味着云存储数据遭到破坏,雾节点Fl需立即通知数据拥有者审计过程出现问题,及时做出决策。
进一步地,所述数据动态操作包括:数据更新、数据插入和数据删除。基于数据结构可调整分治表进行数据动态操作的步骤具体如下:
所述数据更新具体包括:根据逻辑索引号,在数据结构可调整分治表中搜索得到待更新数据块;对目标更新数据块进行加密操作,并计算加密后目标更新数据块的标签;生成修改信息集并发送至云服务提供商,以使云服务提供商用加密后目标更新数据块替换待更新数据块,并生成新的标签集;对数据块版本号进行加一操作。
所述数据插入具体包括:根据逻辑索引号,在数据结构可调整分治表中搜索得到待插入数据块;将待插入数据块以后的数据块向后平移一位,同时在待插入数据块的后一位插入一个空位置;对数据块版本号进行加一操作;对目标插入数据块进行加密操作,并计算加密后目标插入数据块的标签;生成插入信息集并发送至云服务提供商,以使云服务提供商将加密后目标插入数据块插入至空位置,并生成新的标签集。
所述数据删除具体包括:根据逻辑索引号,在数据结构可调整分治表中搜索得到待删除数据块;将待删除数据块以后的数据块向前平移一位,并更新受到影响的数据块的逻辑索引号;生成删除信息集并发送至云服务提供商,以使云服务提供商删除待删除数据块和相应的标签集。
作为一种具体的实施方式,本发明为解决数据动态操作问题所设计的数据结构可调整分治表(Adjustabledivide and conquertable,ADCT)的结构如表1所示。ADCT表中包含数据的逻辑索引号N0、块号Bn、版本号Vn以及可作为唯一标识符的存储时间(即数据块生成时间)Time,由于该数据结构具有动态性和可索引性,当数据经过增加、删除或修改之后,可通过表中的块号、版本号等信息,判断出原数据发生何种变化,最终实现数据更新操作的目的。
表1初始ADCT表
用户将数据存储至云端,在节省本地存储空间的同时也失去对数据的控制权。因此,若想再对数据进行修改、插入和删除的动态操作就更繁琐,且动态操作完成后对存储数据的完整性进行审计也不容易实施。因此,本方案引入ADCT表来存储外包到云服务器的数据信息。ADCT表的详细设计如下:
1、ADCT表的逻辑索引号用N0表示,它是文件的逻辑位置。
2、为用户上传到云端的文件划分数据块,块号用Bn表示,它是原文件划分后的数据块。
3、数据块更新的次数用Vn表示,即版本号,初始值设置为1,数据块每进行一次数据更新操作后令Vn增加1。
4、数据块生成时间Time,根据数据更新操作的时间生成文件的唯一标识符Fid<t>,它记录着每个数据块的信息,t代表存储数据进行更新操作的时间;当存储数据变化时,标识符随之重新产生(数据块划分时相当于数据插入操作)。
基于上述构建的ADCT表可以实现对数据的动态操作,包括数据更新、数据插入和数据删除三种,实现用户对于云存储数据的增删改查。
数据动态操作通过ADCT表实现,ADCT表通过显示数据动态操作前后的变化告知用户数据是否进行过修改。数据动态操作分为三种类型,分别是“数据更新”、“数据插入”和“数据删除”,对应的ADCT表分别如表2、表3和表4所示。
表2数据更新后的ADCT表
表2对于表1所示原有的ADCT表进行了数据更新操作,对索引号为3,数据块号为3的数据进行了修改。
数据更新操作运用ADCT数据表结构,将存储到表结构中的第i个数据块f[i]修改为f'[i],其步骤描述如下(以后不做特殊说明都只选取ADCT表的某一部分作为示例,m表示数据块的个数,1≤i≤m)。
1.在ADCT表中进行搜索,找到对应的逻辑索引号N0为i的数据块。
2.首先运行哈希算法对数据加密(例如:MD5、SHA256等),然后计算加密后数据块的标签σi。之后再从ADCT表读出文件相应的信息,组成云存储文件数据。
3.客户端生成一个修改信息集Ws(s∈[1,2...S],共S个用户),发给云服务提供商。
4.云服务提供商接收到信息后,用新的数据块替换旧的数据块且不会改变不涉及更新的数据块,然后生成新的标签集。
5.数据拥有者将数据块版本信息Vn进行加1操作。
表3数据插入后的ADCT表
N0 | Bn | Vn | Time |
1 | 1 | 1 | Fid<t1>,Fid<t2> |
2 | 10 | 1 | Fid<t3>,Fid<t4>,Fid<t5> |
3 | 3 | 2 | Fid<t6> |
4 | 6 | 1 | Fid<t7> |
表3对于表1所示原有的ADCT表进行了数据插入操作,新建了索引号为4,数据块号为6的数据。
数据插入操作是把新数据块插入到数据块f[i]之后成为f[i+1],其中,首次进行数据云存储也算作数据插入。具体的操作步骤如下:
1.在ADCT表中搜索到数据块i。
2.将所在分表ADCT中i位置以后的数据块平移,同时在i的位置后面插入一个空位置i+1。
3.ADCT分表中对应的版本号Vn进行加1操作。
4.对文件块f[i+1]先进行加密操作,然后用标签生成算法计算其标签值σi。
5.将插入信息集Ws发送给云服务提供商使其将新的数据块插入并生成新的标签。
表4数据删除后的ADCT表
N0 | Bn | Vn | Time |
1 | 1 | 1 | Fid<t1>,Fid<t2> |
2 | 3 | 2 | Fid<t6> |
表4对于表1所示原有的ADCT表进行了数据删除操作,将原有的索引号为2,数据块号为10的数据全部删除,并对后续索引号进行了修改。
数据删除操作即从数据集中删除数据块f[i],具体操作步骤如下:
1.在ADCT表中查找到序号为i的数据块。
2.在当前表中将i数据块后面的数据块向前移动一个位置。
3.更改受到影响的数据块序号。
4.将删除信息集Ws发送给云服务提供商,云服务提供商删除相应的数据块和标签集。
综上所述,本发明通过构建ADCT(Adjustable divide and conquer table)表简化数据动态操作,实现数据动态更新,通过引入雾节点作为审计者,实现对无法继续提供审计服务的审计者进行更换,另外,还提供了完善的数学设计,实现数据交互各阶段的可信验证。
本发明可以应用于对安全性要求较高的云存储环境中,例如在不同用户共享同一基础设施和资源的多租户的云存储环境中。多租户云存储环境广泛应用于各个领域,包括企业应用、软件即服务(Software as a Service,SaaS)和平台即服务(Platform as aService,PaaS)等。它为用户提供了弹性和灵活的计算资源,降低了成本和管理的复杂性,具有可扩展性和高可用性的优势。
为保证各个租户之间资源的安全隔离,本发明通过构建ADCT表可以记录租户进行数据更新操作的信息,追踪不同租户之间的数据交互,便于生成访问日志记录,同时根据租户身份生成唯一标识实现访问控制云安全审计方案,并确保租户数据的隔离性和安全性,防止云存储数据遭到非法篡改同时可以在审计者资源不足,无法完成对于租户数据批量审计的情况下进行审计者更换。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。
Claims (9)
1.一种支持数据更新与审计者更换的云安全审计系统,其特征在于,包括:用户端模块、服务器端模块、密钥生成中心模块和雾节点模块;所述用户端模块分别与所述服务器端模块、所述密钥生成中心模块和所述雾节点模块连接,所述雾节点模块还与所述服务器端模块和所述密钥生成中心模块连接;
所述服务器端模块包括:云服务提供商和云服务器;所述云服务器内置有数据结构可调整分治表;所述数据结构可调整分治表用于存储数据的逻辑索引号、块号、版本号和数据块生成时间;所述用户端模块用于上传数据至所述云服务器,并根据所述数据结构可调整分治表实现数据动态操作;所述云服务器用于存储所述用户端模块上传的数据;
所述雾节点模块包括若干个带有不同身份标识符的雾节点;所述雾节点用于根据划分后的数据块生成块标签和签名,以实现对数据的完整性保护;在数据云存储期间:所述用户端模块还用于向所述雾节点模块中的任意一个雾节点发出审计请求;所述雾节点还用于根据所述审计请求生成随机挑战;所述云服务提供商用于根据所述随机挑战生成审计证据;所述雾节点还用于对所述审计证据进行有效性验证,并将审计结果返回至所述用户端模块;
所述密钥生成中心模块用于根据密钥信息对所述雾节点进行身份验证;所述雾节点还用于在身份验证通过后生成签名密钥;所述签名密钥用于在标签和证据的生成过程中进行加密和认证;所述密钥信息包括:用户身份信息、生成元、公钥和私钥;所述用户身份信息、所述生成元和所述公钥由所述用户端模块生成;所述私钥由所述密钥生成中心模块生成。
2.根据权利要求1所述的支持数据更新与审计者更换的云安全审计系统,其特征在于,所述雾节点根据划分后的数据块生成块标签和签名,具体包括:
对于任意一个数据块,所述雾节点根据身份标识符和时间密钥计算块标签,并根据身份标识符和用户身份信息计算签名;所述时间密钥由所述密钥生成中心模块生成。
3.根据权利要求1所述的支持数据更新与审计者更换的云安全审计系统,其特征在于,所述雾节点根据所述审计请求生成随机挑战,具体包括:
所述雾节点在接收到所述审计请求后,随机选取任意个数据块组成集合,为每个数据块选取一个随机数组成数组,并指定被挑战数据块的索引,根据所述集合、所述数组和所述索引生成随机挑战。
4.根据权利要求1所述的支持数据更新与审计者更换的云安全审计系统,其特征在于,所述雾节点对所述审计证据进行有效性验证,具体包括:
所述雾节点在接收到所述审计证据后,判断所述审计证据是否满足有效性等式;若所述审计证据满足有效性等式,则代表数据没有损坏或被恶意篡改;若所述审计证据不满足有效性等式,则代表数据遭到破坏。
5.根据权利要求1所述的支持数据更新与审计者更换的云安全审计系统,其特征在于,所述密钥生成中心模块根据密钥信息对所述雾节点进行身份验证,所述雾节点在身份验证通过后生成签名密钥,具体包括:
所述雾节点向所述密钥生成中心模块发送时间密钥请求;所述密钥生成中心模块根据密钥信息对所述雾节点进行身份验证,并在身份验证通过后将所述时间密钥发送至所述雾节点;所述雾节点根据所述时间密钥生成签名密钥。
6.根据权利要求1所述的支持数据更新与审计者更换的云安全审计系统,其特征在于,所述数据动态操作包括:数据更新、数据插入和数据删除。
7.根据权利要求6所述的支持数据更新与审计者更换的云安全审计系统,其特征在于,所述数据更新具体包括:
根据逻辑索引号,在数据结构可调整分治表中搜索得到待更新数据块;
对目标更新数据块进行加密操作,并计算加密后目标更新数据块的标签;
生成修改信息集并发送至云服务提供商,以使云服务提供商用加密后目标更新数据块替换待更新数据块,并生成新的标签集;
对数据块版本号进行加一操作。
8.根据权利要求6所述的支持数据更新与审计者更换的云安全审计系统,其特征在于,所述数据插入具体包括:
根据逻辑索引号,在数据结构可调整分治表中搜索得到待插入数据块;
将待插入数据块以后的数据块向后平移一位,同时在待插入数据块的后一位插入一个空位置;
对数据块版本号进行加一操作;
对目标插入数据块进行加密操作,并计算加密后目标插入数据块的标签;
生成插入信息集并发送至云服务提供商,以使云服务提供商将加密后目标插入数据块插入至空位置,并生成新的标签集。
9.根据权利要求6所述的支持数据更新与审计者更换的云安全审计系统,其特征在于,所述数据删除具体包括:
根据逻辑索引号,在数据结构可调整分治表中搜索得到待删除数据块;
将待删除数据块以后的数据块向前平移一位,并更新受到影响的数据块的逻辑索引号;
生成删除信息集并发送至云服务提供商,以使云服务提供商删除待删除数据块和相应的标签集。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311123222.8A CN117155658A (zh) | 2023-09-01 | 2023-09-01 | 一种支持数据更新与审计者更换的云安全审计系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311123222.8A CN117155658A (zh) | 2023-09-01 | 2023-09-01 | 一种支持数据更新与审计者更换的云安全审计系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117155658A true CN117155658A (zh) | 2023-12-01 |
Family
ID=88909530
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311123222.8A Pending CN117155658A (zh) | 2023-09-01 | 2023-09-01 | 一种支持数据更新与审计者更换的云安全审计系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117155658A (zh) |
-
2023
- 2023-09-01 CN CN202311123222.8A patent/CN117155658A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Li et al. | OPoR: Enabling proof of retrievability in cloud computing with resource-constrained devices | |
US20180183768A1 (en) | Systems and methods for privacy in distributed ledger transactions | |
Huang et al. | SeShare: Secure cloud data sharing based on blockchain and public auditing | |
Yu et al. | Improved security of a dynamic remote data possession checking protocol for cloud storage | |
CN111797159A (zh) | 数据库中的信息管理和访问控制 | |
Li et al. | Integrity-verifiable conjunctive keyword searchable encryption in cloud storage | |
CN109525403B (zh) | 一种支持用户全动态并行操作的抗泄露公开云审计方法 | |
Sookhak et al. | Towards dynamic remote data auditing in computational clouds | |
Thangavel et al. | Enabling ternary hash tree based integrity verification for secure cloud data storage | |
CN114139203B (zh) | 基于区块链的异构身份联盟风险评估系统、方法及终端 | |
Su et al. | Decentralized self-auditing scheme with errors localization for multi-cloud storage | |
Li et al. | A Blockchain‐Based Public Auditing Protocol with Self‐Certified Public Keys for Cloud Data | |
Kefeng et al. | A Blockchain‐Based Flexible Data Auditing Scheme for the Cloud Service | |
Wang et al. | Achieving fine-grained and flexible access control on blockchain-based data sharing for the Internet of Things | |
JP2024509666A (ja) | ブロックチェーンデータセグリゲーション | |
Kubilay et al. | KORGAN: An efficient PKI architecture based on PBFT through dynamic threshold signatures | |
Qi et al. | Blockchain-Based Light-Weighted Provable Data Possession for Low Performance Devices. | |
Zhou et al. | A Scalable Blockchain‐Based Integrity Verification Scheme | |
Thakur et al. | Data integrity techniques in cloud computing: an analysis | |
Zou et al. | Dynamic provable data possession based on ranked Merkle hash tree | |
CN116263834A (zh) | 许可区块链的多发布者匿名证书 | |
Yang et al. | Public auditing scheme for cloud data with user revocation and data dynamics | |
CN115208656A (zh) | 一种基于区块链和权限管理的供应链数据共享方法及系统 | |
CN117155658A (zh) | 一种支持数据更新与审计者更换的云安全审计系统 | |
Yang et al. | Improved outsourced provable data possession for secure cloud storage |
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 |