一种用于公开数据完整性校验的索引转换方法技术

技术编号:8633442 阅读:186 留言:0更新日期:2013-04-27 17:28
本发明专利技术公开了一种用于公开数据完整性校验的索引转换方法,包括:用户端登录到云服务器和审计服务器,用户端同步用户的公钥到云服务器和审计服务器,用户端接收用户请求,并且根据用户请求判断是执行上传文件操作、删除文件操作,如果是执行上传文件操作,则用户端从用户接收需要上传的文件,根据用户的公钥和私钥将上传的文件进行分块,并计算每个分块的标签,将需要上传的文件及其每个分块的标签上传到云服务器,如果是执行删除文件操作,则用户端从用户接收需要删除的文件,并在云服务器和审计服务器中删除与需要删除的文件对应的文件、文件标签以及文件相关信息。本发明专利技术是基于现有PPPA方案的改进,并能解决现有方案不支持数据动态更新的问题。

【技术实现步骤摘要】

本专利技术属于云环境
,更具体地,涉及。
技术介绍
数据完整性校验就是及时检测出数据毁坏和丢失,防止服务方故意隐瞒数据丢失事件。云数据完整性校验是指云环境下的数据完整性校验。数据完整性校验大致可分为两种类型私有数据完整性校验和公开数据完整性检验。私有数据完整性检验发生在原始数据的拥有者用户和服务商之间,用户为有效地进行数据完整性检验,平时还需维护一定量的秘密信息,如数据的加密密钥和散列值等。因此,为了保证数据的机密性和隐私性,私有数据完整性检验一般不能委托第三方进行。公开数据完整性检验中由于审计方平时无需维护审计相关的秘密信息,故可以委托任何人进行(包括用户本身)。一个完整的数据完整性检验方案可简单分成对数据的预处理和审计过程两大步骤。预处理主要是生成必要的公私钥,以及针对原始数据块构造其相应的数据标签;审计过程是指审计方和服务方的协议交互过程,包括审计方发起审计请求,提供必要的随机数和待审计块信息,服务方根据审计请求生成完整性证据再发送给审计方,然后审计方验证服务方证据的有效性。云环境下远程数据审计机制,主要包括安全性、审计效率和开销、审计功能三个层面。C. Wang等人提出的支持隐私保护的公开审计方法(Privacy-Preserving PublicAuditing,简称PPPA)为公开审计,其预处理的计算开销为0(n),而协议交互时的带宽开销、审计方和服务方的存储开销、审计方和服务方的计算开销都为0(1),但不支持数据动态更新。详见 C. Wang, Q. Wang, K. Ren, and ff. Lou, “Privacy-preserving public auditingfor data storage security in cloud comput ing, ” in Proc. of INF0C0MJ 10, SanDiego, CA, USA, 2010,pp. 525-533.Q. Wang等人 提出的Merkle哈希树(Merkle Hash Tree,简称MHT)方案也为公开审计,支持数据动态更新,预处理的计算开销为0(n),然而其协议交互时的带宽开销、审计方和服务方的存储开销、审计方和服务方的计算开销都为0(log η)。详见Q.Wang,C.Wang, J. Li, K. Ren, and ff. Lou, “Enabling public verifiability and data dynamicsfor st orage security in cloud computing,,,in Proc. of ES0RICS’ 09,SaintMalo, France, 2009, pp. 355-370.然而,现有的远程数据审计方法存在以下问题(1)审计效率和开销不高,即协议交互时的带宽开销、审计方和服务方的存储开销、审计方和服务方的计算开销和预处理的计算开销都要尽可能低;(2)审计功能,即审计方案除了能正常完成审计目标之外,还应支持公开验证性、数据隐私保护、数据动态更新。
技术实现思路
针对现有技术的缺陷,本专利技术的目的在于提供,其基于现有PPPA方案的改进,旨在解决现有方案不支持数据动态更新的问题。为实现上述目的,本专利技术提供了, 包括以下步骤(I)用户端登录到云服务器和审计服务器;(2)用户端同步用户的公钥到云服务器和审计服务器;(3)用户端接收用户请求,并且根据用户请求判断是执行上传文件操作、删除文件操作、审计文件操作、还是修改文件操作,如果是执行上传文件操作,则进入步骤(4),如果是执行删除文件操作,则进入步骤(5),如果是执行审计文件操作,则进入步骤(6),如果是执行修改文件操作,则进入步骤(7),否则过程结束;(4)用户端从用户接收需要上传的文件F,根据用户的公钥和私钥将上传的文件F 进行分块,并计算每个分块的标签,将需要上传的文件F及其每个分块的标签上传到云服务器,并返回步骤(3);(5)用户端从用户接收需要删除的文件,并在云服务器和审计服务器中删除与需要删除的文件对应的文件、文件标签以及文件相关信息,并返回步骤(3);(6)用户端从用户接收需要审计的文件,根据该审计文件向审计服务器发送审计文件请求,获取审计结果,并返回步骤(3);(7)用户端从用户接收需要修改的文件,根据该修改文件向云服务器提交修改文件请求,修改完成后保存文件,并返回步骤(3)。步骤(2)包括以下子步骤(2-1)用户端根据用户密码生成私钥Sk(X);具体而言,私钥仅包含一个元素X,表示为sk(x);(2-2)用户端判断本地是否存在公钥pk(u,w, g, v),若存在,则转入步骤(2-3), 若不存在,则转入步骤(2-4);具体而言,公钥包含4个元素,分别为u,w, g, V,表示为 pk(u, w, g, V),其中g为常量;(2-3)用私钥sk(x)检验公钥pk(u, W,g, V)的正确性,即判断w = Ux且v = gx是否成立,若成立,则转入步骤(2-5),否则转入步骤 (2-4);(2-4)从PBC库的Gl群中随机取出一个元素,并将其赋值给U,并计算w = Ux以及V = gx,则新的公钥为pk(u, W,g, V);(2-5)用户端将用户的公钥pk (u,w,g, v)同步到云服务器和审计服务器;(2-6)将公钥pk(u, W,g, V)保存到本地,过程结束。步骤(4)包括以下子步骤(4-1)用户端判断需要上传的文件F是否已经存在于云服务器中,若存在,则返回步骤(3),若不存在,则进入步骤(4-2);(4-2)用户端将需要上传的文件F分为η块,将每个分块的内容分别映射到 PBC库中的对应元素,所有元素构成集合F= Im1, nv··.,mn},对每一个分块元素Hii (其中I ( i彡n),用分块、索引号、私钥Sk(X)和公钥pk(U,W,g,v)计算其相应的标签 (Ti = (H(Q ■其中Η( ·)是一个hash函数,H(i)表示对索引号i进行hash运算;(4-3)用户端将需要上传的文件F的文件信息发送到审计服务器;具体而言,该文件信息包括文件名、文件大小、文件块数η以及索引转换表,其中索引转换表是一个数组,数组中第j个元素表示第j个分块元素mj的索引号,对于新上传的文件,第k个分块元素mk的索引号即为k ;(4-4)用户端将所有分块Hi1, m2···.,mn及其标签上传到云服务器,将文件信息上传到审计服务器,并返回步骤(3)。步骤(5)包括以下子步骤(5-1)用户端查询审计服务器中是否存在需要删除的文件的文件信息,若存在,则转入步骤(5-2),否则转入步骤(5-3);(5-2)审计服务器删除该文件的文件信息;(5-3)查询云服务器中是否存在该文件,若存在,则转入步骤(5-4),否则返回步骤(3);(5-4)云服务器删除该文件的所有分块及其标签,并返回步骤(3)。步骤(6)包括以下子步骤(6-1)用户端发送审计请求以及需要审计的文件名到审计服务器;(6-2)审计服务器根据审计请求和文件名查询需要审计的文件是否存在,若存在,则转入步骤(6-3),若不存在,则表示审计失败,转入步骤(6-9);(6-3)审计服务器根据需要审计的文件的文件信息,随机抽取46本文档来自技高网
...

【技术保护点】
一种用于公开数据完整性校验的索引转换方法,其特征在于,包括以下步骤:(1)用户端登录到云服务器和审计服务器;(2)用户端同步用户的公钥到云服务器和审计服务器;(3)用户端接收用户请求,并且根据用户请求判断是执行上传文件操作、删除文件操作、审计文件操作、还是修改文件操作,如果是执行上传文件操作,则进入步骤(4),如果是执行删除文件操作,则进入步骤(5),如果是执行审计文件操作,则进入步骤(6),如果是执行修改文件操作,则进入步骤(7),否则过程结束;(4)用户端从用户接收需要上传的文件F,根据用户的公钥和私钥将上传的文件F进行分块,并计算每个分块的标签,将需要上传的文件F及其每个分块的标签上传到云服务器,并返回步骤(3);(5)用户端从用户接收需要删除的文件,并在云服务器和审计服务器中删除与需要删除的文件对应的文件、文件标签以及文件相关信息,并返回步骤(3);(6)用户端从用户接收需要审计的文件,根据该审计文件向审计服务器发送审计文件请求,获取审计结果,并返回步骤(3);(7)用户端从用户接收需要修改的文件,根据该修改文件向云服务器提交修改文件请求,修改完成后保存文件,并返回步骤(3)。

【技术特征摘要】
1.一种用于公开数据完整性校验的索引转换方法,其特征在于,包括以下步骤(1)用户端登录到云服务器和审计服务器;(2)用户端同步用户的公钥到云服务器和审计服务器;(3)用户端接收用户请求,并且根据用户请求判断是执行上传文件操作、删除文件操作、审计文件操作、还是修改文件操作,如果是执行上传文件操作,则进入步骤(4),如果是执行删除文件操作,则进入步骤(5),如果是执行审计文件操作,则进入步骤(6),如果是执行修改文件操作,则进入步骤(7),否则过程结束;(4)用户端从用户接收需要上传的文件F,根据用户的公钥和私钥将上传的文件F进行分块,并计算每个分块的标签,将需要上传的文件F及其每个分块的标签上传到云服务器, 并返回步骤(3);(5)用户端从用户接收需要删除的文件,并在云服务器和审计服务器中删除与需要删除的文件对应的文件、文件标签以及文件相关信息,并返回步骤(3);(6)用户端从用户接收需要审计的文件,根据该审计文件向审计服务器发送审计文件请求,获取审计结果,并返回步骤(3);(7)用户端从用户接收需要修改的文件,根据该修改文件向云服务器提交修改文件请求,修改完成后保存文件,并返回步骤(3)。2.根据权利要求1所述的索引转换方法,其特征在于,步骤(2)包括以下子步骤 (2-1)用户端根据用户密码生成私钥Sk(X);具体而言,私钥仅包含一个元素X,表示为sk(x);(2-2)用户端判断本地是否存在公钥pk (u,w, g, V),若存在,则转入步骤(2-3),若不存在,则转入步骤(2-4);具体而言,公钥包含4个元素,分别为U,W,g, V,表示为pk(u, w, g, v),其中g为常量;(2-3)用私钥sk(x)检验公钥pk(u, W,g, V)的正确性,即判断w = Ux且v = gx是否成立,若成立,则转入步骤(2-5),否则转入步骤(2-4);(2-4)从PBC库的Gl群中随机取出一个元素,并将其赋值给U,并计算w = Ux以及V = gx,则新的公钥为pk(u, W,g, V);(2-5)用户端将用户的公钥pk(u,W,g,v)同步到云服务器和审计服务器;(2-6)将公钥pk(u, W,g, V)保存到本地,过程结束。3.根据权利要求1所述的索引转换方法,其特征在于,步骤(4)包括以下子步骤 (4-1)用户端判断需要上传的文件F是否已经存在于云服务器中,若存在,则返回步骤(3),若不存在,则进入步骤(4-2);(4-2)用户端将需要上传的文件F分为η块,将每个分块的内容分别映射到PBC库中的对应元素,所有元素构成集合F= Im1, nv··.,mn},对每一个分块元素其中i为索引号, n,n为正整数,用分块、索引号、私钥Sk(X)和公钥pk(u,w, g, v)计算其相应的标签4.根据权利要求1所述的索引转换方法,其特征在于,步骤(5)包括以下子步骤 (5-1)用户端查询审计服务器中是否存在需要删除的文件的文件信息,若存在,则转入步骤(5-2),否则转入步骤(5-3); (5-2)审计服务器删除该文件的文件信息; (5-3)查询云服务器中是否存在该文件,若存在,则转入步骤(5-4),否则返回步骤(3); (5-4)云服务器删除该文件的所有分块及其标签,并返回步骤(3)。5.根据权利要求1所述的索引转换方法,其特征在于,步骤(6)包括以下子步骤 (6-1)...

【专利技术属性】
技术研发人员:周可李春花蔡启泉金豪张彦哲
申请(专利权)人:华中科技大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1