CN106611134A - 一种云端数据完整性验证方法 - Google Patents

一种云端数据完整性验证方法 Download PDF

Info

Publication number
CN106611134A
CN106611134A CN201610403218.0A CN201610403218A CN106611134A CN 106611134 A CN106611134 A CN 106611134A CN 201610403218 A CN201610403218 A CN 201610403218A CN 106611134 A CN106611134 A CN 106611134A
Authority
CN
China
Prior art keywords
data
data block
algorithm
information table
clouds
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
Application number
CN201610403218.0A
Other languages
English (en)
Inventor
范勇
胡成华
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sichuan Yonglian Information Technology Co Ltd
Original Assignee
Sichuan Yonglian Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Sichuan Yonglian Information Technology Co Ltd filed Critical Sichuan Yonglian Information Technology Co Ltd
Priority to CN201610403218.0A priority Critical patent/CN106611134A/zh
Publication of CN106611134A publication Critical patent/CN106611134A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

本发明提出了一种云端数据完整性验证方法,针对云端数据安全性以及完整性问题,本方法使用双线性配对算法,首先构造出数据的原始信息表,然后利用算法随机抽取样品生成验证请求,然后根据请求所发送的验证参数数据,生成完整性验证参数,最后根据所构造的验证函数进行计算,输出验证结果。在数据属主对数据进行更新后,在原始信息表中同样进行数据版本更新,修改各项数据索引的值;所以本算法除了能远程验证数据完整性外,还能支持数据的动态更新。

Description

一种云端数据完整性验证方法
所属领域
数据安全、数据完整,云计算数据存储领域
技术背景
云技术发展,企业和个人愈来愈倾向于将数据存储在云端,以便节省移动存储空间和方便随时随地访问,极大的方便了用户;同时,数据也可以在云端实现共享、方便他人下载。但是,由此也引起了数据的安全问题,数据存储在云端,脱离了数据所有者的控制,或因云服务商***不稳定、云空间被恶意攻击,造成数据丢失和损坏。用户在不知情的情形下,或将因为数据不完整而造成各种损失;那么如何确定云端数据是否完整呢?如果定期将数据下载到本地进行完整性检查,或者直接替换;那么将消耗大量的通讯,也造成了极大的麻烦。所以本发明公开了一种可用于远程数据完整性验证的方法,能够定时或者不定时的检查存储于云端的数据,验证其完整性,并且支持数据属主随时更新数据。
发明内容
针对云端数据是否安全、数据是否完整问题,本发明提出了一种云端数据完整性验证方法。
本发明所采用的技术方案:本方法使用双线性配对算法,首先构造出数据的原始信息表,然后利用算法随机抽取样品生成验证请求,然后根据请求所发送的验证参数数据,生成完整性验证参数,最后根据所构造的验证函数进行计算,输出验证结果。在数据属主对数据进行更新后,在原始信息表中同样进行数据版本更新,修改各项数据索引的值;所以本算法除了能远程验证数据完整性外,还能支持数据的动态更新。
本发明的有益效果是:能够不定时抽查存储于云端的数据,验证数据包是否完整,同时,数据属主可以随时对数据包进行新增、修改、删除等操作,而不会影响验证过程。
具体实施方式
为解决云端数据安全性以及云端数据完整性问题,本发明作出了详细地说明,其具体实施步骤如下:
步骤1:建立算法索引需要的私钥和公钥
步骤2:生成数据块的验证标签集合及初始更新信息表
步骤3:验证所需抽样数据块生成
步骤4:验证参数生成
步骤5:通过验证函数验证数据完整性
步骤6:数据变更时候数据信息表更新
以上步骤所涉及到的参数及定义,具体描述如下:
一、上述所述步骤1建立算法索引需要的私钥和公钥的具体计算过程如下:
步骤1.1双线性映射算法
在椭圆曲线上,设具有相同阶的乘法循环群G1,G2和GT,g1、g2分别是G1,G2的生成元,在双线性映射e:G1×G2→GT中,任意u∈G1、v∈G2和所有的a、b∈Zp有:
e(ua,vb)=e(u,v)ab
也就是说:
u1、u2∈G1,v∈G2时,(u1u2,v)=e(u1,v)·e(u2,v)
步骤1.2建立算法索引需要的私钥和公钥
任意选取x∈Zp以及u∈G1计算:
w=ux∈G1
令私钥SK=(x),公钥PK=(v,u,g2,w)
由此,数据属主可以随时随地浏览下载到上传到云端的数据F,接下来设计算法实现数据的完整性验证。
二、上述所述步骤2生成数据块的验证标签集合及初始更新信息表的具体计算过程如下:
步骤2.1数据初始状态的更新信息表
初始状态信息表包括第一行的空表头和4列,分别定义为:Id(i)表示数据块的实际物理索引,是算法的唯一标识符、BID为逻辑索引,数据在有***操作时,值会有重复、V为版本号,初始值为0,主要记录数据属主的更新操作、E记录数据更新操作,初始值为0;拥有相同实时逻辑索引BID的数据块如果没有被修改,将通过值E来区分。数据拥有者为每个文件维护一张初始状态信息表以追踪数据当前的状态并且检查外包数据的完整性。
步骤2.2生成数据块的验证标签集合及初始更新信息表
将用户数据F分成mn个数据块,其中,mi∈Zp,i=1,...,n,即:
F=(m1,m2,...,mn),mi∈Zp,i=1,...,n。
令δ表示数据块的标签,则:
将函数H(·)与G1中的点进行一一映射:H(·):{0,1}*→G1
wi=name||BIDi||Vi||Ei
name是数据属主随机选取,作为数据F的标识符并且:name∈Zp;BIDi为数据块mi在文件F长得位置索引,Vi是数据块mi的更新计数器,初始值为0,Ei是***操作,若数据块mi没有***操作,则值为0,当有***操作时候,按照步长为1单调递增。此时计算出所有数据块的标签,将他们放入集合中:
此时,运算完毕后,得到标签集的同时,还生成了F的原始的数据更新信息表;数据属主将标签集1≤i≤n连同数据F发送给云存储服务商。
三、上述所述步骤3验证所需抽样数据块生成的具体计算过程如下:
当数据属主需要验证数据完整性时,从初始更新信息表中随机抽取j个非空值si
S={s1,s2,...,sj}
其中s1<…<sj,再为每一个si选择一个随机值vi,并且vi∈Zp;设验证请求为YZ,则:
YZ={(si,vi)}
YZ指定了在本次验证中被要求抽样检测的数据块。
四、上述所述步骤4验证参数生成算法的具体计算过程如下:
在本方法中有三个验证参数,分别为R,δ,μ;在指定数据块后,将YZ发送到云服务商,抽取所需要的样本,然后随机选取r∈Zp,执行计算:
R=wr=(ux)r∈G1
云服务商在收到YZ时,能够得到抽样数据块的一个线性组合:
由此计算:
μ=rh(R)+μ‘∈Zp
将μ‘与r关联起来,哈希函数H(·):G1→Zp,将G1中的点与Zp中的元素一一映射;然后在计算参数δ:
通过上述几次计算得到验证参数{R,μ,δ}
五、上述所述步骤5通过验证函数验证数据完整性具体计算过程如下:
执行以下计算:
P=e(δ·Rh(R),g2),
判断:
如果P=Q则数据时完整的,如果P≠Q则表示数据已经不完整。
六、上述所述步骤6数据变更时候数据信息表更新的具体计算过程如下:
数据初始更新信息表中的V表示数据修改操作记录,每次数据属主进行数据块mi修改时,版本号V单调递增,步长为1,;执行更新操作:
V‘i=Vi+1
mi’的哈希值H(w‘i)=H(name||BIDi||v′i||Ei
当有删除操作时:
数据属主删除数据块mi,则Id值置为0,版本号Vi置为-1,从i开始,i=i+1,也就是mi后面的序号一次加1。
新增数据时候,在数据mi之前***新的数据块,i=i+1,Id(i),BID,V,E依次更新,同时更新:
H(w‘i)=H(name||BID‘i||V′i||E’i
在数据属主发生以上三个更新操作后,将更新后的数据信息表及(H(w‘i),σ’i发送到云服务商,作为下次验证的属性。

Claims (7)

1.一种云端数据完整性验证方法,该方法涉及数据安全、数据完整,云计算数据存储领域,其主要特征是:使用双线性配对算法,首先构造出数据的原始信息表,依据验证请求随机抽取数据通过参数计算生成验证参数,再发送到云端通过验证函数进行验证,最后输出数据是否完整的判断信息;
其具体实施步骤如下:
步骤1:建立算法索引需要的私钥和公钥
步骤2:生成数据块的验证标签集合及初始更新信息表
步骤3:验证所需抽样数据块生成
步骤4:验证参数生成
步骤5:通过验证函数验证数据完整性
步骤6:数据变更时候数据信息表更新。
2.根据权利要求1中所述的一种云端数据完整性验证方法,其特征是:所述步骤1中私钥和公钥依据双线性配对算法计算,具体计算过程根据双线性映射函数为基础,具体求解过程如下:
步骤1.1双线性映射算法
在椭圆曲线上,设具有相同阶的乘法循环群分别是的生成元,在双线性映射e:中,任意和所有的有:
也就是说:
时,
步骤1.2建立算法索引需要的私钥和公钥
任意选取以及 计算:
令私钥,公钥
由此,数据属主可以随时随地浏览下载到上传到云端的数据F,接下来设计算法实现数据的完整性验证。
3.根据权利要求1中所述一种云端数据完整性验证方法,其特征是:所述步骤2生成数据块的验证标签集合及初始更新信息表,其具体求解过程如下:
步骤2.1数据初始状态的更新信息表
初始状态信息表包括第一行的空表头和4列,分别定义为:Id(i)表示数据块的实际物理索引,是算法的唯一标识符、BID为逻辑索引,数据在有***操作时,值会有重复、V为版本号,初始值为0,主要记录数据属主的更新操作、E记录数据更新操作,初始值为0;拥有相同实时逻辑索引BID的数据块如果没有被修改,将通过值E来区分,数据拥有者为每个文件维护一张初始状态信息表以追踪数据当前的状态并且检查外包数据的完整性
步骤2.2生成数据块的验证标签集合及初始更新信息表
将用户数据F分成个数据块,其中,即:
表示数据块的标签,则:
将函数中的点进行一一映射:
name是数据属主随机选取,作为数据F的标识符并且:为数据块在文件F长得位置索引,是数据块的更新计数器,初始值为0,是***操作,若数据块没有***操作,则值为0,当有***操作时候,按照步长为1单调递增,此时计算出所有数据块的标签,将他们放入集合中:
此时,运算完毕后,得到标签集的同时,还生成了F的原始的数据更新信息表;数据属主将标签集连同数据F发送给云存储服务商。
4.根据权利要求1中所述一种云端数据完整性验证方法,其特征是:所述步骤3验证所需抽样数据块生成,具体求解过程如下:
当数据属主需要验证数据完整性时,从初始更新信息表中随机抽取j个非空值
其中,再为每一个选择一个随机值,并且;设验证请求为YZ,则:
YZ指定了在本次验证中被要求抽样检测的数据块。
5.根据权利要求1中所述一种云端数据完整性验证方法,其特征是:所述步骤4验证参数生成算法,其具体求解过程如下:
在本方法中有三个验证参数,分别为;在指定数据块后,将YZ发送到云服务商,抽取所需要的样本,然后随机选取,执行计算:
云服务商在收到YZ时,能够得到抽样数据块的一个线性组合:
由此计算:
与r关联起来,哈希函数,将中的点与中的元素一一映射;然后在计算参数
通过上述几次计算得到验证参数
6.根据权利要求1中所述一种云端数据完整性验证方法,其特征是:所述步骤5通过验证函数验证数据完整性,其具体求解过程如下:
执行以下计算:
判断:
如果P=Q则数据时完整的,如果则表示数据已经不完整。
7.根据权利要求1中所述一种云端数据完整性验证方法,其特征是:所述步骤6数据变更时候数据信息表更新,其具体求解过程如下:
数据初始更新信息表中的V表示数据修改操作记录,每次数据属主进行数据块修改时,版本号V单调递增,步长为1,;执行更新操作:
哈希值
当有删除操作时:
数据属主删除数据块,则Id值置为0,版本号置为-1,从i开始,i=i+1,也就是后面的序号一次加1
新增数据时候,在数据之前***新的数据块,i=i+1,Id(i),BID,V,E依次更新,同时更新:
在数据属主发生以上三个更新操作后,将更新后的数据信息表及发送到云服务商,作为下次验证的属性。
CN201610403218.0A 2016-06-06 2016-06-06 一种云端数据完整性验证方法 Pending CN106611134A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610403218.0A CN106611134A (zh) 2016-06-06 2016-06-06 一种云端数据完整性验证方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610403218.0A CN106611134A (zh) 2016-06-06 2016-06-06 一种云端数据完整性验证方法

Publications (1)

Publication Number Publication Date
CN106611134A true CN106611134A (zh) 2017-05-03

Family

ID=58614888

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610403218.0A Pending CN106611134A (zh) 2016-06-06 2016-06-06 一种云端数据完整性验证方法

Country Status (1)

Country Link
CN (1) CN106611134A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108600201A (zh) * 2018-04-09 2018-09-28 东华大学 一种云存储完整性验证的数据标签的远程安全更换方法
CN109409116A (zh) * 2018-11-12 2019-03-01 青岛大学 求解无向带权图最小割的安全外包方法
CN109413450A (zh) * 2018-09-30 2019-03-01 武汉斗鱼网络科技有限公司 一种弹幕数据的完整性校验方法、装置、终端及存储介质
CN110061994A (zh) * 2019-04-24 2019-07-26 青岛大学 一种密文文件集合正确性验证方法、***及相关装置
CN116860509A (zh) * 2023-09-04 2023-10-10 深圳麦风科技有限公司 Pst文件的修复方法、设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101599959A (zh) * 2009-07-10 2009-12-09 西北工业大学 基于身份的匿名双向认证方法
CN103699851A (zh) * 2013-11-22 2014-04-02 杭州师范大学 一种面向云存储的远程数据完整性验证方法
CN103986732A (zh) * 2014-06-04 2014-08-13 青岛大学 抵御密钥泄露的云存储数据审计方法
CN104811450A (zh) * 2015-04-22 2015-07-29 电子科技大学 云计算中一种基于身份的数据存储方法及完整性验证方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101599959A (zh) * 2009-07-10 2009-12-09 西北工业大学 基于身份的匿名双向认证方法
CN103699851A (zh) * 2013-11-22 2014-04-02 杭州师范大学 一种面向云存储的远程数据完整性验证方法
CN103986732A (zh) * 2014-06-04 2014-08-13 青岛大学 抵御密钥泄露的云存储数据审计方法
CN104811450A (zh) * 2015-04-22 2015-07-29 电子科技大学 云计算中一种基于身份的数据存储方法及完整性验证方法

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108600201A (zh) * 2018-04-09 2018-09-28 东华大学 一种云存储完整性验证的数据标签的远程安全更换方法
CN109413450A (zh) * 2018-09-30 2019-03-01 武汉斗鱼网络科技有限公司 一种弹幕数据的完整性校验方法、装置、终端及存储介质
CN109409116A (zh) * 2018-11-12 2019-03-01 青岛大学 求解无向带权图最小割的安全外包方法
CN109409116B (zh) * 2018-11-12 2022-01-28 青岛大学 求解无向带权图最小割的安全外包方法
CN110061994A (zh) * 2019-04-24 2019-07-26 青岛大学 一种密文文件集合正确性验证方法、***及相关装置
CN110061994B (zh) * 2019-04-24 2022-02-25 青岛大学 一种密文文件集合正确性验证方法、***及相关装置
CN116860509A (zh) * 2023-09-04 2023-10-10 深圳麦风科技有限公司 Pst文件的修复方法、设备及存储介质
CN116860509B (zh) * 2023-09-04 2023-12-26 深圳麦风科技有限公司 Pst文件的修复方法、设备及存储介质

Similar Documents

Publication Publication Date Title
CN106611134A (zh) 一种云端数据完整性验证方法
CN106357701B (zh) 云存储中数据的完整性验证方法
CN102938767B (zh) 基于云数据外包***的高效可验证的模糊关键词搜索方法
CN103888262B (zh) 用于云数据审计的密钥变化和签名更新的方法
CN107807951A (zh) 一种区块链生成方法、数据验证方法、节点及***
CN111709058B (zh) 一种基于身份和环签名的数据完整性校验方法
CN106612320A (zh) 云存储中一种加密数据的去重方法
CN106603561B (zh) 一种云存储中的块级加密方法及多粒度去重复方法
CN104732159B (zh) 一种文件处理方法及装置
CN104798052B (zh) 消费者匹配的方法和装置
CN104978239A (zh) 一种实现多备份数据动态更新的方法、装置及***
CN108123934B (zh) 一种面向移动端的数据完整性校验方法
CN107707354A (zh) 一种基于椭圆曲线加密法的云存储数据验证方法及***
CN106776904A (zh) 一种不可信云计算环境中支持动态验证的模糊查询加密方法
CN108156138A (zh) 一种用于雾计算的细粒度可搜索加密方法
CN105162760A (zh) 随机抽取方法、装置以及***
CN101547184A (zh) 一种用于对网络传输的数据块进行验证的方法和装置
CN110958109B (zh) 基于层次默克尔哈希树的轻型动态数据完整性审计方法
CN109802967A (zh) 区块链信息追踪方法和***
CN108696356A (zh) 一种基于区块链的数字证书删除方法、装置及***
CN107423637A (zh) 支持云上电子病历数据可追踪的完整性审计方法
CN106611136A (zh) 云存储中一种数据篡改验证方法
CN103916393B (zh) 基于对称密钥的云数据隐私保护公众审计方法
CN106612174A (zh) 移动云计算中支持第三方的数据安全性验证和更新方法
CN108667917A (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
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20170503