本发明涉及云教育下支持损坏数据恢复的数据完整性审计方法,属于云计算安全技术领域。
背景技术:
随着信息技术的发展,云教育的应用越来越广泛。不同类型的教育资源,例如图片、视频、文件等需要上传到网络中,这些数据的复杂性和多样性增加了获取数据和处理数据的难度。此外,为了减少隐私泄露及提高云教育的服务质量,基于边缘计算的云教育应运而生。使用最靠近用户的边缘节点存储和处理这些数据可以减少本地硬件的存储压力,提高外部分散设备的使用率。边缘计算可以用于高效的存储教育数据资源,它可以追溯到云计算,可以实现快速的网络服务响应及提高分散设备的利用率。使用边缘计算可以满足学校、企业等安全和隐私保护需求。边缘计算起源于媒体领域,是指利用网络、计算和存储,在靠近数据源的一侧提供最近的端服务的开放平台。随着物联网的发展,意味着许多数据和隐私控制将通过本地设备实现,而无需通过边缘计算外包给远程云。
然而,并不是每个边缘节点都是可信任的。在边缘计算中缺乏服务管理人员导致了这些数据遭受很多安全威胁。尽管云教育环境下有很多学者提出了保护数据的安全问题,但是他们并没有考虑到数据完整性的问题,目前的云教育环境方案可以处理一般的安全问题,但是无法保证数据存储的完整性,导致数据的精确性和可靠性无法得到满足。此外,当数据损坏时,现有的方案无法保证教学数据能够安全的恢复,导致很多重要的文件丢失。目前的一些方法无法提供一种损坏数据恢复的机制,如果教育资源的损坏无法恢复将会带来严重的后果。另一方面,目前的云教育资源的安全方案的计算和通讯开销都比较大,且数据的检索准确度也很低。因此,需要提出了一种高效的、具有损坏数据恢复的数据完整性审计方案,该方案可以高效的用于云教育环境下。
技术实现要素:
本发明所要解决的技术问题是:提供云教育下支持损坏数据恢复的数据完整性审计方法,解决了现有云教育方案中存在的数据存储不完整、损坏数据无法恢复及计算和通信开销不适用于资源受限的设备等问题。
本发明为解决上述技术问题采用以下技术方案:
云教育下支持损坏数据恢复的数据完整性审计方法,基于云教育下支持损坏数据恢复的数据完整性审计系统实现,该系统包括云计算中心、边缘计算中心、用户、第三方可信中心,该方法包括如下步骤:
步骤1,根据向系统输入的安全参数κ,第三方可信中心利用参数生成算法生成系统参数
步骤2,根据用户的数据文件,生成数据文件中各数据块的标签以及各数据块的认证器,将用户的数据文件以及数据文件中各数据块的标签上传到边缘计算中心进行存储,同时发送到云计算中心进行备份;
步骤3,当边缘计算中心存储的m个数据块需要审计时,第三方可信中心从边缘计算中心检索数据块的标签,使用pks验证标签的正确性,若验证正确,则第三方可信中心从数据块的标签中恢复数据标识符并进入步骤4,否则,终止操作;
步骤4,用户生成审计请求,并将审计请求发送给第三方可信中心,第三方可信中心根据审计请求随机选择m个元素{m1,m2,…mm},并根据每个元素mi随机从{1,2,…,p}中选择ci,其中1≤i≤m≤n,并生成审计挑战,第三方可信中心将审计挑战发送给边缘计算中心;
步骤5,边缘计算中心收到审计挑战后,根据存储的标签和数据文件计算标签证明和数据证明,并将标签证明和数据证明发送给第三方可信中心;
步骤6,第三方可信中心通过审计方程验证标签证明和数据证明是否通过,若验证通过,则第三方可信中心为数据文件计算审计参数,否则进入步骤7;
步骤7,第三方可信中心确定待审计的m个数据块中存在一个或多个已损坏的数据块,第三方可信中心向用户发送数据恢复请求,用户同意该请求,并委托第三方可信中心使用二分查找审计数据块,直至找到已损坏的数据块对应的原始数据块,将原始数据块恢复到边缘计算中心,同时,用户对数据块的认证器进行更新。
作为本发明的一种优选方案,所述步骤2中,用户的数据文件表示为:f={f1,f2,…,fn},其中,f表示数据文件,fi表示数据文件中的第i个数据块,n表示整个数据文件的数据块的数量;数据文件的标签表示为:
作为本发明的一种优选方案,步骤5所述标签证明表示为:
作为本发明的一种优选方案,步骤6所述审计方程表示为:
作为本发明的一种优选方案,所述步骤4中,当存在多个用户,每个用户均生成审计请求并将审计请求发送给第三方可信中心,第三方可信中心根据审计请求生成审计挑战,并将审计挑战发送给边缘计算中心,边缘计算中心收到审计挑战后,计算多个用户聚合的标签证明和数据证明,并将聚合的标签证明和数据证明发送给第三方可信中心,第三方可信中心验证聚合的标签证明和数据证明通过时,为聚合的数据文件计算聚合审计参数。
本发明采用以上技术方案与现有技术相比,具有以下技术效果:
1、本发明利用同态认证器实现数据的完整性审计,将审计任务可以代理给第三方可信中心。最重要的是,为了提高审计过程中的高效性,可以实现批量审计,同时满足多任务下的审计方式,大大提高了审计过程中的效率。
2、本发明提出了一种损坏数据恢复方案,当存储的数据不完整或者被敌手损坏时,能够恢复出原有的真实全部数据。
3、本发明支持更新审计,即当从云中恢复出原始数据后,然后传输到边缘服务器时,可以使用原始的安全密钥和参数来审计更新后的数据块。
4、本发明抵抗重放攻击,当数据恢复到边缘服务器时,敌手无法使用原来数据块认证器伪造一个存储证明。
附图说明
图1是本发明方法所采用的系统模型。
图2是本发明备份在云计算中心的数据文件存储结构。
图3是本发明云教育下支持损坏数据恢复的数据完整性审计方法流程图。
具体实施方式
下面详细描述本发明的实施方式,所述实施方式的示例在附图中示出。下面通过参考附图描述的实施方式是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
如图1所示,为本发明方法所采用的系统模型,共有四个实体,分别是云计算中心、边缘计算中心、用户(学校)、第三方可信中心(tpa)。云计算中心可以支持文件的备份,并且提供无限的计算能力和存储资源。从安全的角度来看,云计算中心是一个可信但是好奇的实体,尽其可能性从存储的数据中提取有用的资源。边缘计算中心由很多边缘节点构成,他们都是靠近用户端的设备且具有有限的存储和计算能力。引入边缘计算的目的是充分利用周围空闲设备的计算资源,并快速对本地计算和存储请求做出响应。边缘计算可以为用户提高数据获取和传输能力。在本发明中,把学校看作是系统中的用户。此外,引入第三方可信中心,负责代替学校检验边缘计算中心存储的数据是否完整或者受到攻击。在本发明中,第三方可信中心可以为学校恢复出原来的数据,通常来说,第三方可信中心是一个政府部门或者授权的组织。所以认为第三方可信是完全可信的,且不会和敌手共谋攻破整个系统。
本发明利用了同态认证器,构建了云教育安全领域边缘计算的审计机制。此外,为了减少损坏数据带来的财产损失,提出了一个数据备份方案,如果边缘计算设备中存储的数据不完全或者受到损坏,在云端检索到用户存储的历史数据。本发明细分为七个小部分,分别是密钥生成、数据上传和备份、挑战生成、证明生成、审计、数据恢复和批量审计。
在密钥生成阶段主要产生和计算该方案中的一些安全参数,数据上传和备份阶段,预处理的数据文件及生成的文件标签上传到边缘节点,此外,存储的数据经过边缘节点备份到云计算中心。在挑战生成阶段,用户产生数据完整性审计挑战,并将挑战传输给第三方可信中心用于进一步的存储审计。用户产生的审计挑战包括审计数据块的数量及用于存储证明的安全参数。边缘节点在接收到挑战后,需要根据存储的认证器和数据文件来计算存储证明。然后,将存储证明发送回第三方可信中心。最后,第三方可信中心可以使用公钥检查数据块的存储证明。如果审计阶段的输出失败,可以通过从备份中检索来恢复原始数据块。在最后一个阶段,将基本审计方案扩展为批处理审计,这对于多个用户审计多个数据块更有效。
如图3所示,为本发明云教育下支持损坏数据恢复的数据完整性审计方法流程图,具体步骤如下:
1)密钥生成
通过输入系统的安全参数κ,参数的选择决定了密钥的长度以及参数构造,tpa利用参数生成算法生成一些系统参数
2)数据上传及备份
将数据标签集合及数据文件f上传到边缘计算中心的服务器中。为了避免服务器受到攻击或边缘节点的蓄意删除而造成的数据丢失,上传的数据文件也会被发送到远程存储中心,即云计算中心的服务器。其中的存储结构由索引表和存储池构成,存储结构如图2所示,图中列出了数据信息,包括数据的拥有者,数据产生时间、位置等。用户可以根据关键字搜索以及id从边缘节点中心检索出原来存储的数据文件,版本号是数据版本。如果数据更新,版本号将增加。注意,新数据将附加在此数据文件的最后一个版本之后。此外,历史数据和相应的版本号也存储在云计算中心的服务器,以供进一步的数据使用。由于存储在边缘节点中的数据文件不是很大,所以可以用单向链接信息表存储数据块。
3)挑战生成阶段
用户端向tpa发送审计请求,查看存储在边缘节点的数据完整性是否改变。在对数据进行审计之前,第三方可信中心需要从边缘节点中心检索数据的标签tagf,然后使用pks验证标签的正确性。如果标签的验证可以通过,第三方可信中心将从文件标签中恢复数据标识符。假设边缘节点中心存储的m个数据块需要审计,用户首先需要生成审计请求,并将审计请求发送给第三方可信中心,然后第三方可信中心根据审计请求随机选择m个元素{m1,m2,…mm}。第三方可信中心根据每个元素mi随机从{1,2,…,p}选择ci,其中1≤i≤m≤n,并生成审计挑战,挑战可以用challenge={i,ci}表示。随后第三方可信中心将生成的挑战发送给边缘计算中心。
4)证明生成阶段
在这个阶段,可以在边缘节点中心的云服务器中生成存储证明。一收到第三方可信中心发来的挑战challenge={i,ci},边缘节点中心的云服务器可以存储的标签和数据文件计算存储证明
5)审计
当第三方可信中心得到存储证明时,它可以使用公共参数
6)数据恢复阶段
如果上面的基本审计输出失败,第三方可信中心可以确定审计挑战块中的一个或多个数据块已经损坏。然后第三方可信中心向用户发送一个数据恢复请求requestm。一方面,如果用户同意第三方可信中心检索原始数据块,他将响应“yes”;否则,第三方可信中心无法将原始数据恢复到边缘节点端。另一方面,用户可以委托第三方可信中心使用二分查找审计数据块,直到找到损坏的或不完整的数据块。如果数据文件被恢复到边缘节点中心,则用户需要更新认证器
7)批量审计
为了在多个审计任务的情况下减少计算开销,我们扩展了我们的方案来支持批审计。假设有β个用户向第三方可信中心代理审计任务,且每个用户有m个数据块。密钥生成和挑战生成的过程类似于单个审计过程。一收到来自第三方可信中心的挑战,云端计算聚合的存储证明
验证如下:
由于
以上实施例仅为说明本发明的技术思想,不能以此限定本发明的保护范围,凡是按照本发明提出的技术思想,在技术方案基础上所做的任何改动,均落入本发明保护范围之内。