CN104052819B - 多地理位置存储的云端数据完整性验证方法 - Google Patents
多地理位置存储的云端数据完整性验证方法 Download PDFInfo
- Publication number
- CN104052819B CN104052819B CN201410299677.XA CN201410299677A CN104052819B CN 104052819 B CN104052819 B CN 104052819B CN 201410299677 A CN201410299677 A CN 201410299677A CN 104052819 B CN104052819 B CN 104052819B
- Authority
- CN
- China
- Prior art keywords
- file
- server
- storage
- label
- terrestrial reference
- 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.)
- Expired - Fee Related
Links
- 238000003860 storage Methods 0.000 title claims abstract description 180
- 238000000034 method Methods 0.000 title claims abstract description 37
- 230000014759 maintenance of location Effects 0.000 title claims abstract description 9
- 238000013496 data integrity verification Methods 0.000 title claims abstract description 6
- 230000004044 response Effects 0.000 claims abstract description 32
- SAPGTCDSBGMXCD-UHFFFAOYSA-N (2-chlorophenyl)-(4-fluorophenyl)-pyrimidin-5-ylmethanol Chemical compound C=1N=CN=CC=1C(C=1C(=CC=CC=1)Cl)(O)C1=CC=C(F)C=C1 SAPGTCDSBGMXCD-UHFFFAOYSA-N 0.000 claims abstract description 12
- 238000005259 measurement Methods 0.000 claims abstract description 12
- 238000012795 verification Methods 0.000 claims abstract description 11
- 230000008569 process Effects 0.000 claims abstract description 9
- 150000003839 salts Chemical class 0.000 claims description 16
- 230000005540 biological transmission Effects 0.000 claims description 11
- 238000004364 calculation method Methods 0.000 claims description 8
- 239000004576 sand Substances 0.000 claims description 2
- 238000013500 data storage Methods 0.000 abstract description 4
- 238000010200 validation analysis Methods 0.000 abstract description 2
- 238000001514 detection method Methods 0.000 abstract 1
- 238000005516 engineering process Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000007689 inspection Methods 0.000 description 2
- 238000004321 preservation Methods 0.000 description 2
- 101150066718 FMOD gene Proteins 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000004083 survival effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种多地理位置存储的云端数据完整性验证方法,主要解决现有技术验证效率低,且验证次数受限的问题。其实现步骤是:(1)用户加密原文件,并为其添加冗余码;(2)用户选择存储服务器并上传文件;(3)用户在存储服务器最近位置设置地标服务器,地标服务器对存储服务器进行挑战,存储服务器对挑战进行响应;(4)地标服务器验证存储服务器的响应,判断云端数据的完整性;(5)地标服务器根据挑战响应的时间,测量云存储数据的地理位置;(6)用户对存储服务器的测量位置做出判断。本发明能实现多地理位置存储的云端数据完整性验证,减少了验证过程中的计算和传输数据量,可用于云端存储数据的安全性和可靠性检测。
Description
技术领域
本发明属于信息安全技术领域,特别涉及多地理位置存储的云端数据完整性验证方法,可用于云存储服务中,验证云存储服务商是否按协议要求在不同地理位置存储数据及存储数据是否完整。
背景技术
在当今时代,人们越来越多的使用和依赖云。无论在计算资源还是存储资源上,使用云都能够使人们的工作更高效、方便。
当用户将文件存储在云端时,是希望文件可以在云端完整的保存,从而保证用户不需要在本地计算机存储文件的备份。而当用户需要使用文件时,能够方便地随时随地获得其之前存储的文件。因此,用户往往希望云存储服务商能够为其完整的保存文件,并保证文件的安全性。
在某些情况下,为了确保文件的安全,用户会要求云存储服务商存储文件的多个备份。然而即便如此,在有些情况下,知道文件被存储多份还是不够的。例如,如果多份文件被存储在同一块硬盘上,而这块硬盘发生损坏;或者存储在同一个数据中心,而此数据中心发生了大规模停电。这两种情况都会使用户无法获取其存储在云端的文件。因此,很多情况下用户会要求云存储服务商在多个地理位置为其文件存储多个文件备份。将文件存储在不同地理位置有多个优点:首先,当某个存储数据中心地区发生大规模停电或严重自然灾害时,可以保证文件不丢失,仍然可以被用户获得;其次,在多个地理位置进行备份,当用户请求数据时,可以根据请求的地理位置选择距离最近的文件备份,并将其发送给用户,从而缩短用户获取文件的时间。
在用户存储数据时,可能与存储服务商订立协议,存储服务商需要按照协议,将用户数据进行多备份保存。而在这样的情况下,用户只能选择被动相信存储服务商的协议,而无法主动进行验证。如果存储服务器存在欺骗行为,即没有将文件按照协议要求进行多备份存储,用户只有在事故真正发生时,即产生实际损失时才能发现。虽然,可以依据协议要求存储服务商进行相应的赔偿,但是,有时候造成的损失却是无法恢复的。因此,需要设计一种方案,在损失未发生时,对云端的多个文件备份进行验证。确保存储服务商按照协议要求为用户存储了多个数据备份。
为了解决上述问题,业界提出了以下解决方案:
一.Karyn Benson等人使用基于传输时间的方法。他们使用多个地标服务器,向多个数据中心进行数据请求。由于假设已知所有数据中心的位置,如果能够在某个指定时间内获得数据,可以判定此数据中心存储有数据备份。此方案的问题是,必须知道所有数据中心的准确位置,因为需要在数据中心附近设置地标服务器进行验证,并且需要地标服务器与数据中心通信以得到标准的传输时间,此过程中可能存在欺骗行为;另外,此方案在验证文件时,要求服务器将部分验证文件发回到地标服务器进行验证,因此该方法会占用很大的带宽。
二.基于对称密码学的方案以RSA公司的Juels和EMC公司的Kaliski提出的基于岗哨的可恢复证明系统POR为典型代表。其基本思想是首先用对称加密体制将文件加密并用纠错码编码,然后在编码后的文件中的一些随机位置插入和文件数据不可区分的“岗哨”;检查者在挑战时要求服务器返回一些随机位置的岗哨。作者证明只有服务器以大于一定值的概率做出有效的应答,则文件是可以恢复的。这种方法具有计算开销小的优点,但其缺点在于每次需要消耗掉一个岗哨,因此只能执行有限次的挑战。此外,如果文件需要更新时,这种方案需要找出所有未经使用的岗哨,然后重新编码,重新插入文件中,效率较低。
三.几乎与POR同时,Ateniese等人提出了可证明数据持有(provable datapossession,PDP)模型。该模型主要原理是:令N为一个RSA模数,F为代表文件的大整数,检查者保持k=Fmod(φN);在挑战中,检查者发送ZN中的随机元素g,服务器返回s=gFmodN;检查者验证是否存在gkmodN=s,从而确定原始文件是否存在。元素的PDP技术也只能处理静态数据,且计算开销较大,效率不高。
发明内容
本发明的目的在于针对上述已有技术的不足,提出一种多地理位置存储的云端数据完整性验证方法,以不受限制的、高效的对云存储数据进行完整性和多地理位置的验证。
本发明的技术方案是:采用基于时间延迟的地理位置判定方法对多地理位置进行验证,采用基于数据可恢复性证明方法对数据的完整性进行验证。其实现步骤如下:
一.技术原理:
为了解决“多地理位置存储的云端数据”场景中的完整性验证问题,本发明提出一个基于时延的、高效的证明方案。在该方案包括两个部分,分别是该方案包括两个部分:
1.利用基于时延的方法对数据段地理位置进行判定。本方案采用基于时延的方法,即利用数据的传输时延在一定程度上与数据发送和接收端的距离成正相关的规律,来估计发送端到接收端之间的距离。为了测量时延,需要在每个数据中心附近部署一个位置已知的地标服务器,并用其请求两个数据中心的数据,根据请求时延以及两个地标服务器的位置,对数据中心的可能位置进行判断。最后通过验证两个数据中心可能位置是否重合,来判断两个数据中心是否位于不同的地理位置。
2.利用数据可恢复性验证方法来确保文件的完整性。本方案采用数据可恢复性验证方案,即按照规则对云端数据进行挑战,并根据响应结果对云端存储数据的完整性进行验证。使用POR方案,在数据存储到数据中心之前,向数据中添加冗余码,并将数据进行对称加密处理。然后将数据分块,并对每一块数据计算标签,最后将文件与标签一起发送到数据中心进行存储。在验证过程中,要求数据中心将文件指定块以及数据标签与某个随机值进行运算,并将两者的计算结果都返回,进行数据的可恢复性验证。
二.实现步骤:
1.一种多地理位置存储的云端数据完整性验证方法,包括如下步骤:
(1)文件拥有者User处理原始文件F及生成密钥ktag:
1a)文件拥有者User利用对称加密算法,对其希望存储在云端的原始文件F进行加密,并为加密后的文件添加冗余码得到密文文件F′;
1b)文件拥有者User将密文文件F′分为n块,并将每块文件分为s节,利用伪随机数生成算法生成计算密文文件标签时需要的密钥ktag,并根据对密文文件F′的指定分节数s,生成计算标签时需要的s个加盐数据{α1,α2,...,αs};
1c)文件拥有者User利用生成的密钥ktag及s个加盐数据{α1,α2,...,αs},分别计算密文文件F′的n块数据所对应的标签σi;
(2)文件拥有者User选择存储服务器并上传密文文件F′及标签σi:
2a)文件拥有者User根据其对要存储的文件的地理位置要求,从云存储服务商Provider提供的文件存储服务器中选择满足其要求的一个服务器集合C;
2b)文件拥有者User将密文文件F′及其标签σi一起上传云储存服务商,云存储服务商将密文文件F′及其标签σi发送至服务器集合C中的每一个文件存储服务器;
(3)文件存储服务器Storage对文件标签σi进行重编码:
3a)云存储服务商Provider为每个文件存储服务器Storage分配一个唯一的服务器标记ρ;
3b)文件存储服务器Storage使用其服务器标记ρ,对文件标签σi进行重编码,得到此存储服务器独有的文件标签σρ,i,并将该文件标签σρ,i和密文文件F′同时存储;
(4)地标服务器L对文件存储服务器Storage进行挑战,并记录挑战和响应的时间差:
4a)用户根据文件存储服务器的位置,在每个存储服务器的最近位置设置一个地标服务器L,根据两地标服务器之间的距离Len,测量两个地标服务器之间时延为t,得到两地标服务器间数据传输速率
4b)地标服务器L使用伪随机数生成算法,生成一组挑战数据Q发送给文件存储服务器Storage,并记录发送挑战的时间tch,该挑战数据Q包括要挑战的文件块号i和参与挑战的随机值vi;
4c)文件存储服务器Storage在接到挑战数据Q后,将其存储的密文文件F′的数据块及文件标签σρ,i与挑战中的伪随机值vi进行乘法求和运算,并将文件响应值{μ}和标签响应值σρ发送给地标服务器L,地标服务器L记录接收响应的时间tre;
(5)地标服务器L服务器判断文件的完整性和地理位置:
5a)地标服务器L使用收到的文件响应值{μ},与密钥ktag及加盐数据{α1,α2,...,αs}进行计算,得到结果标签σL,验证结果标签σL是否与收到的标签响应值σρ相同,如果验证通过,执行步骤5b),否则结束验证;
5b)地标服务器L根据发送挑战时间tch和接收响应的时间tre,计算存储服务器与地标服务器L的距离为r=V*(tre-tch),并将该距离r发送给文件拥有者User;
5c)使用另一地标服务器L′对同一文件存储服务器Storage进行挑战,按照5b)的方法得到存储服务器与地标服务器L′的距离为r’,并将r’发送给文件拥有者User;
5d)文件拥有者User分别以所述的地标服务器L、L′的位置为圆心,以r与r’为半径作圆,用该两圆的交汇区域作为存储服务器Storage的测量位置;
(6)文件拥有者User按照步骤5b)-5d),计算服务器集合C中所有存储服务器的测量位置,判断所有存储服务器测量位置是否满足User对地理位置的要求,若满足,则证明云存储服务商按照协议内容存储密文文件F′,否则,说明云存储服务商违反协议内容,则退出验证并向云存储服务商提出申诉。
本发明与现有技术相比具有以下优点:
第一,可靠性高。
本发明利用基于传输延迟的地理位置判定方法,使得文件存储服务器无法伪造其地理位置,保证了地理位置测试的可靠性。
第二,传输量少。
本发明利用数据可恢复性验证方法,使得完整性验证只需要传输标签数据,减少了验证过程中的传输数据量。
第三,运算量小。
本发明利用的数据可恢复性验证方法,运算过程中只使用了乘法和加法操作,而没有采用公钥密码学的指数运算,使运算量大大减少。
附图说明
图1为本发明的总流程图;
图2为本发明中文件拥有者User加密原文件及生成密钥的子流程图;
图3为本发明中文件拥有者User选择存储服务器并上传文件的子流程图;
图4为本发明中存储服务器Storage对文件标签重编码的子流程图;
图5为本发明中地标服务器L对存储服务器进行挑战的子流程图;
图6为本发明中地标服务器L对验证文件完整性和地理位置的子流程图。
具体实施方式
符号和缩写
F为原文件;
F’为对称加密及添加冗余码后得到的文件;
n为密文文件的分块数目;
s为每块文件的分节数目;
kenc为用于对称加密的密钥值;
ktag为kprf和skr的合称;
kprf为用于生成标签的密钥值;
skr为数据中心用于重加密标签的密钥值;
User为文件拥有者;
Provider为云存储服务商;
Storage为文件存储服务器;
L为对文件存储服务器进行挑战的地标服务器;
C为文件拥有者选择的满足其要求的文件存储服务器集合;
σi为第i块数据生成的数据标签;
σρ,i为第i块数据标签经过数据中心ρ重编码得到的新标签;
mi,j为第i块数据的第j节;
F*为F′和σi的集合;
为F′和σρ,i的集合;
为以kprf为密钥,以i为输入的伪随机数生成器;
为以skr为密钥,以ρ为输入的哈希函数;
Zp为不超过素数P的整数集合;
{α1,α2,...,αs}为整数集合ZP中得到s个随机数;
Len为两地标服务器之间的距离;
t为两地标服务器之间多次测量得到的延迟时间;
Q为挑战组,由i和vi组成,分别为数据块数和参加计算的随机值;
μj为参加挑战计算的所有第j节数据计算得到的结果;
σρ为对数据中心ρ进行挑战得到的标签计算结果;
下面结合附图和具体实施方式进一步说明本发明的实施方案。
参照图1,为本发明的实现步骤如下:
步骤1,文件拥有者User处理原始文件F及生成密钥ktag。
参照图2,本步骤的具体实现如下:
1a)文件拥有者User利用对称加密算法,使用对称加密密钥kenc,对其希望存储在云端的原始文件F进行加密,并为加密后的文件添加冗余码得到密文文件F′,文件拥有者User对加密文件F′进行解密的密钥与加密密钥相同;
1b)文件拥有者User将密文文件F′分为n块,并将每块文件分为s节,利用伪随机数生成算法得到计算标签时需要的密钥kprf、存储服务器重加密需要的重编码密钥skr并根据对密文文件F′的指定分节数s,生成计算标签时需要的s个加盐数据{α1,α2,...,αs},其中,αj表示对第j节数据使用的加盐数据;
1c)文件拥有者User利用生成的密钥ktag及s个加盐数据{α1,α2,...,αs},分别计算密文文件F′的n块数据所对应的标签σi,计算过程如下:
1c1)加密过程中,将每一块文件分为s节,并计算文件标签,加密后的文件F′被分解为如下:
其中,mi表示第i块文件,mi,j表示第i块文件的第j节数据;
1c2)利用加盐数据{α1,α2,...,αs}和加密后的文件F′,分别计算密文文件F′每一块文件对应的标签σi,其计算公式如下:
其中,i∈[1,n]表示n个文件块中的第i块,j∈[1,s]表示s节文件中的第j节,mi,j表示第i块文件的第j节数据,αj是文件第j节的加盐数据,表示使用kprf作为密钥,以i为输入的伪随机数生成器,σi表示计算得到的密文文件第i块数据的标签。
步骤2,文件的拥有者User选择存储服务器并上传文件。
参照图3,本步骤的具体实现如下:
2a)文件拥有者User根据需求选择一个存储服务器集合C;
2a1)文件拥有者User向存储服务商Provider发出请求,请求包括其希望存储的文件备份数,以及希望存储文件的地理位置;
2a2)存储服务商Provider向用户返回满足要求的所有文件存储服务器信息及所处地理位置;
2a3)文件拥有者User从Provider返回的文件存储服务器中选择满足其要求的服务器,组成一个存储服务器集合C;
2b)文件拥有者User向Provider返回选择的存储服务器集合C的信息,并将密文文件F′及其标签σi一起上传云储存服务商,云存储服务商将密文文件F′及其标签σi发送至服务器集合C中的每一个文件存储服务器;
步骤3,文件存储服务器Storage对文件标签进行重加密。
参照图4,本步骤的具体实现如下:
3a)云存储服务商Provider为每个文件存储服务器Storage分配一个唯一的服务器标记ρ;
3b)文件存储服务器Storage使用其服务器标记ρ,对文件标签σi进行重编码,得到此存储服务器独有的文件标签σρ,i,并将该文件标签σρ,i和密文文件F′同时存储,文件标签σρ,i的计算过程表示如下:
其中,skr是文件标签进行重编码时使用的密钥,ρ是存储服务器的标签,是以ρ为输入的哈希算法,σi是文件上传者生成的第i块文件的文件标签,σρ,i是存储服务器ρ对文件标签σi进行重编码后得到的新文件标签。
步骤4,地标服务器L对文件存储服务器Storage进行挑战。
参照图5,本步骤的具体实现如下:
4a)用户根据文件存储服务器的位置,在每个存储服务器的最近位置设置一个地标服务器L,根据两地标服务器之间的距离Len,测量两个地标服务器之间时延为t,得到两地标服务器间数据传输速率
4b)地标服务器L使用伪随机数生产方法,生成一组挑战Q,其表示为:Q={(i,vi)},
其中,(i,vi)表示挑战文件块号和挑战值组合,i∈[1,n]表示对第i块文件进行挑战,vi是地标服务器L生成的伪随机数;
4c)地标服务器L将生成的挑战Q发送给某个文件存储服务器Storage,记录发送挑战的时间tch,并等待文件存储服务器Storage返回响应;
4d)文件存储服务器Storage对收到挑战Q进行响应,并将响应结果发送给地标服务器L,地标服务器L接收响应结果并记录时间为tre:
4d1)文件存储服务器Storage根据收到的挑战数据Q,使用文件标签σρ,i计算得到标签的响应值σρ:
其中,(i,vi)表示挑战文件块号和挑战值组合,i∈[1,n]表示对第i块文件进行挑战,vi是地标服务器L生成的伪随机数;
4d2)文件存储服务器Storage根据收到的挑战数据Q,使用文件块计算文件的响应值{μ}={μ1,μ2,...,μj,...,μs},μj是第j节文件的响应值,μj的计算公式如下:
式中,mi,j表示第i块文件的第j节数据;
4d3)文件存储服务器Storage将计算得到的标签响应值σρ和文件响应值{μ}发送给地标服务器L,地标服务器L接收响应并记录时间为tre。
步骤5,地标服务器L判断文件的完整性和地理位置。
参照图6,本步骤的具体实现如下:
5a)地标服务器L使用收到的文件响应值{μ},与密钥ktag及加盐数据{α1,α2,...,αs}进行计算,得到结果标签σL,其计算公式如下:
σL←σ1L+σ2L,
式中,σρ和μj表示从存储服务器收到的标签响应和文件响应,i∈[1,n],表示n个文件块中的第i块,j∈[1,s],表示s节文件中的第j节,vi表示挑战Q中的伪随机值,表示使用kprf作为密钥,以i作为输入的伪随机数生成器,表示存储服务器ρ进行标签重编码的函数,αj表示文件第j节的加盐数据;
5b)地标服务器L验证结果标签σL与收到的标签响应值σρ是否相同,如果相同,则执行步骤5c),否则结束验证;
5c)地标服务器L根据发送挑战时间tch和接收响应的时间tre,计算存储服务器与地标服务器L的距离:r=V*(tre-tch),并将该距离r发送给文件拥有者User;
5d)使用另一地标服务器L′对同一文件存储服务器Storage进行挑战,按照5b)的方法得到存储服务器与地标服务器L′的距离为r’,并将r’发送给文件拥有者User;
5e)文件拥有者User分别以所述的地标服务器L、L′的位置为圆心,以r与r’为半径作圆,用该两圆的交汇区域作为存储服务器Storage的测量位置。
步骤6,文件拥有者User按照步骤5b)-5d),计算服务器集合C中所有存储服务器的测量位置,判断所有存储服务器测量位置是否满足User对地理位置的要求,若满足,则证明云存储服务商按照协议内容存储密文文件F′,否则,说明云存储服务商违反协议内容,则退出验证并向云存储服务商提出申诉。
以上描述仅是本发明的一个具体实例,并不够成对本发明的任何限制。显然对于本领域的专业人员来说,在了解了本发明内容和原理后,都可能在不背离本发明原理、结构的情况下,进行形式和细节上的各种修正和改变,但是这些基于本发明思想的修正和改变仍在本发明的权利要求保护范围之内。
Claims (2)
1.一种多地理位置存储的云端数据完整性验证方法,包括如下步骤:
(1)文件拥有者User处理原始文件F及生成密钥ktag:
1a)文件拥有者User利用对称加密算法,对其希望存储在云端的原始文件F进行加密,并为加密后的文件添加冗余码得到密文文件F′;
1b)文件拥有者User将密文文件F′分为n块,并将每块文件分为s节,利用伪随机数生成算法生成计算密文文件标签时需要的密钥ktag,并根据对密文文件F′的指定分节数s,生成计算标签时需要的s个加盐数据{α1,α2,…,αs};
1c)文件拥有者User利用生成的密钥ktag及s个加盐数据{α1,α2,…,αs},分别计算密文文件F′的n块数据所对应的标签σi:
1c1)加密过程中,将每一块文件分为s节,并计算文件标签,加密后的文件F′被分解为如下:
其中,mi表示第i块文件,mi,j表示第i块文件的第j节数据;
1c2)利用加盐数据{α1,α2,…,αs}和加密后的文件F′,分别计算密文文件F′每一块文件对应的标签σi,其中,i∈[1,n]表示n个文件块中的第i块,j∈[1,s]表示s节文件中的第j节,mi,j表示第i块文件的第j节数据,αj是文件第j节的加盐数据,表示使用kprf作为密钥,以i为输入的伪随机数生成器,σi表示计算得到的密文文件第i块数据的标签;
(2)文件拥有者User选择存储服务器并上传密文文件F′及标签σi:
2a)文件拥有者User根据其对要存储的文件的地理位置要求,从云存储服务商Provider提供的文件存储服务器中选择满足其要求的一个服务器集合C;
2b)文件拥有者User将密文文件F′及其标签σi一起上传云储存服务商,云存储服务商将密文文件F′及其标签σi发送至服务器集合C中的每一个文件存储服务器;
(3)文件存储服务器Storage对文件标签σi进行重编码:
3a)云存储服务商Provider为每个文件存储服务器Storage分配一个唯一的服务器标记ρ;
3b)文件存储服务器Storage使用其服务器标记ρ,对文件标签αi进行重编码,得到此存储服务器独有的文件标签αρ,i,并将该文件标签αρ,i和密文文件F′同时存储,其中文件标签σρ,i按如下公式计算:
式中,skr是文件标签进行重编码时使用的密钥,ρ是存储服务器的标签,是以ρ为输入的哈希算法,σi是文件上传者生成的第i块文件的文件标签,σρ,i是存储服务器ρ对文件标签σi进行重编码后得到的新文件标签;
4a)用户根据文件存储服务器的位置,在每个存储服务器的最近位置设置一个地标服务器L,根据两地标服务器之间的距离Len,测量两个地标服务器之间时延为t,得到两地标服务器间数据传输速率
4b)地标服务器L使用伪随机数生成算法,生成一组挑战数据Q发送给文件存储服务器Storage,并记录发送挑战的时间tch,该挑战数据Q包括要挑战的文件块号i和参与挑战的随机值vi;
4c)地标服务器L将生成的挑战Q发送给某个文件存储服务器Storage,记录发送挑战的时间tch,并等待文件存储服务器Storage返回响应;
4d)文件存储服务器Storage对收到挑战Q进行响应,并将响应结果发送给地标服务器L,地标服务器L接收响应结果并记录时间为tre:
4d1)文件存储服务器Storage根据收到的挑战数据Q,使用文件标签σρ,i计算得到标签的响应值σρ:其中,(i,vi)表示挑战文件块号和挑战值组合,i∈[1,n]表示对第i块文件进行挑战,vi是地标服务器L生成的伪随机数;
4d2)文件存储服务器Storage根据收到的挑战数据Q,使用文件块计算文件的响应值{μ}={μ1,μ2,…,μj,…,μs},μj是第j节文件的响应值,μj的计算公式如下:
式中,mi,j表示第i块文件的第j节数据;
4d3)文件存储服务器Storage将计算得到的标签响应值σρ和文件响应值{μ}发送给地标服务器L,地标服务器L接收响应并记录时间为tre;
(5)地标服务器L服务器判断文件的完整性和地理位置:
5a)地标服务器L使用收到的文件响应值{μ},与密钥ktag及加盐数据{α1,α2,…,αs}进行计算,得到结果标签σL,验证结果标签σL是否与收到的标签响应值σρ相同,如果验证通过,执行步骤5b),否则结束验证;
所述的结果标签σL,通过下式计算:
σL←σ1L+σ2L,
其中,σρ和μj表示从存储服务器收到的标签响应和文件响应,i∈[1,n],表示n个文件块中的第i块,j∈[1,s],表示s节文件中的第j节,vi表示挑战Q中的伪随机值,表示使用kprf作为密钥,以i作为输入的伪随机数生成器,表示存储服务器ρ进行标签重编码的函数,αj表示文件第j节的加盐数据;
5b)地标服务器L根据发送挑战时间tch和接收响应的时间tre,计算存储服务器与地标服务器L的距离为r=V*(tre-tch),并将该距离r发送给文件拥有者User;
5c)使用另一地标服务器L′对同一文件存储服务器Storage进行挑战,按照5b)的方法得到存储服务器与地标服务器L′的距离为r’,并将r’发送给文件拥有者User;
5d)文件拥有者User分别以所述的地标服务器L、L′的位置为圆心,以r与r’为半径作圆,用该两圆的交汇区域作为存储服务器Storage的测量位置;
(6)文件拥有者User按照步骤5b)-5d),计算服务器集合C中所有存储服务器的测量位置,判断所有存储服务器测量位置是否满足User对地理位置的要求,若满足,则证明云存储服务商按照协议内容存储密文文件F′,否则,说明云存储服务商违反协议内容,则退出验证并向云存储服务商提出申诉。
2.根据权利要求1所述的多地理位置存储的云端数据完整性验证方法,其特征在于,所述步骤4b)的地标服务器L使用伪随机数生成方法,生成一组挑战Q,其表示如下:
Q={(i,vi)},
其中,(i,vi)表示挑战文件块号和挑战值组合,i∈[1,n]表示对第i块文件进行挑战,vi是地标服务器L生成的伪随机数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410299677.XA CN104052819B (zh) | 2014-06-27 | 2014-06-27 | 多地理位置存储的云端数据完整性验证方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410299677.XA CN104052819B (zh) | 2014-06-27 | 2014-06-27 | 多地理位置存储的云端数据完整性验证方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104052819A CN104052819A (zh) | 2014-09-17 |
CN104052819B true CN104052819B (zh) | 2017-06-13 |
Family
ID=51505170
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410299677.XA Expired - Fee Related CN104052819B (zh) | 2014-06-27 | 2014-06-27 | 多地理位置存储的云端数据完整性验证方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104052819B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104618111A (zh) * | 2015-01-16 | 2015-05-13 | 北京科技大学 | 一种基于随机动态的云应用数据完整性检测方法 |
CN106712929A (zh) * | 2016-12-30 | 2017-05-24 | 桂林电子科技大学 | 一种大数据的加密方法 |
CN106972917B (zh) * | 2017-03-15 | 2020-08-04 | 西安电子科技大学 | 用户运行轨迹的安全验证方法 |
CN106993027B (zh) * | 2017-03-15 | 2020-02-07 | 西安电子科技大学 | 远程数据存储位置验证方法 |
CN107733656A (zh) * | 2017-10-23 | 2018-02-23 | 北京深思数盾科技股份有限公司 | 一种密码认证方法及装置 |
CN108566277B (zh) * | 2017-12-22 | 2020-04-21 | 西安电子科技大学 | 云存储中基于数据存储位置的删除数据副本方法 |
CN111090626B (zh) * | 2019-11-05 | 2023-05-23 | 西安链融科技有限公司 | 基于区块链分布式文件交易系统的文件存储处理方法 |
CN111914044B (zh) * | 2020-06-11 | 2023-06-30 | 中国科学院信息工程研究所 | 一种云数据地理位置的验证方法及系统 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9064133B2 (en) * | 2011-03-29 | 2015-06-23 | Kaseya Limited | Method and apparatus of securely processing data for file backup, de-duplication, and restoration |
CN103595696B (zh) * | 2012-08-15 | 2018-05-01 | 中兴通讯股份有限公司 | 一种文件所有权证明的方法及装置 |
CN103425941B (zh) * | 2013-07-31 | 2016-12-28 | 数安时代科技股份有限公司 | 云存储数据完整性的验证方法、设备和服务器 |
-
2014
- 2014-06-27 CN CN201410299677.XA patent/CN104052819B/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN104052819A (zh) | 2014-09-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104052819B (zh) | 多地理位置存储的云端数据完整性验证方法 | |
CN110800250B (zh) | 受控加密私钥的发布 | |
CN102263638B (zh) | 认证设备、认证方法和签名生成设备 | |
JP6016948B2 (ja) | 秘匿計算システム、演算装置、秘匿計算方法、およびプログラム | |
CN103425941B (zh) | 云存储数据完整性的验证方法、设备和服务器 | |
CN103095453A (zh) | 应用私有集合交集的公钥加密的布隆过滤器 | |
CN101267308B (zh) | 具有门限追踪性的民主群签名方法 | |
US20210042829A1 (en) | Computer implemented method and system for transferring control of a digital asset | |
CN105516340B (zh) | 一种云存储数据可恢复性验证方法及系统 | |
WO2009048902A2 (en) | An efficient certified email protocol | |
Fischer et al. | A public randomness service | |
CN113037479B (zh) | 数据验证方法和装置 | |
WO2016104476A1 (ja) | 秘密改ざん検知システム、秘密計算装置、秘密改ざん検知方法、およびプログラム | |
CN112600675B (zh) | 基于群签名的电子投票方法及装置、电子设备、存储介质 | |
CN106452748A (zh) | 基于多用户的外包数据库审计方法 | |
CN106034122A (zh) | 一种信息处理方法、电子设备及服务器 | |
Simmons | How to insure that data acquired to verify treaty compliance are trustworthy | |
US11729231B2 (en) | Secure multi-party random bit generation | |
CN103595696A (zh) | 一种文件所有权证明的方法及装置 | |
JP6053238B2 (ja) | 秘密改ざん検知システム、秘密計算装置、秘密改ざん検知方法、およびプログラム | |
CN102781005A (zh) | 应答器、读取器及其操作方法 | |
US20140321644A1 (en) | Method and system for calculations on encrypted data | |
CN116208328A (zh) | 一种基于平方和定理的量子秘密共享方法 | |
CN106487495B (zh) | 基于整数混沌的轻量级rfid认证方法 | |
CN107277054A (zh) | 一种数据完整性验证的方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20170613 |