CN111083105B - 一种基于区块链的云数据持有性验证方法及系统 - Google Patents
一种基于区块链的云数据持有性验证方法及系统 Download PDFInfo
- Publication number
- CN111083105B CN111083105B CN201911070467.2A CN201911070467A CN111083105B CN 111083105 B CN111083105 B CN 111083105B CN 201911070467 A CN201911070467 A CN 201911070467A CN 111083105 B CN111083105 B CN 111083105B
- Authority
- CN
- China
- Prior art keywords
- hash value
- hash
- parameter
- data
- block chain
- 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.)
- Active
Links
Images
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/12—Applying verification of the received information
-
- 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/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- 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
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Power Engineering (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了一种基于区块链的云数据持有性验证方法及系统,方法包括:区块链包括数据持有者US、存储服务提供商C;数据验证过程包括:SS1.数据持有者US将需要存储的待存数据块通过非区块链通道发送给存储服务提供商C;SS2.所述数据持有者US和所述存储服务提供商C分别以预设的第一参数为哈希参数,对所述待存数据块按照预设的哈希算法计算得到的散列值,分别记为第一散列值和第二散列值;SS3.所述存储服务提供商C通过所述区块链通道对所述第一散列值和所述第二散列值进行一致性验证,所述第一散列值和所述第二散列值相等时存储所述待存数据块,并将所述待存数据块的散列值发布到区块链。具有可靠、安全等优点。
Description
技术领域
本发明涉及信息安全领域,尤其涉及一种基于区块链的云数据持有性验证方法及系统。
背景技术
目前,云计算和透明计算等网络技术的发展带来了经济灵活的网络存储服务方案。它允许用户将大量本地数据以极低的成本外包给远程存储服务器,并能够提供几乎无限的存储容量。然而,网络存储服务也存在着一些缺点,例如数据可能会因为服务器硬件或软件的损坏造成丢失,或者服务商会因为一些利益原因故意不保存或者丢弃用户的一些数据。因此,如何解决这种问题至关重要。
学术界和工业界为解决这个问题已经做了大量的努力,远程数据审计技术就是他们取得的巨大成就之一,用户可以通过该技术确信他们的数据是由网络存储服务提供商正确维护的。传统的远程数据审计方案可以分为用户驱动的(User-actuated)和基于第三方审计机构(Third Party Auditor,TPA)的。然而,用户驱动的方法仅为用户自己实现了可验证的数据完整性验证,而没有提供任何解决争议的方法。基于第三方审计机构的方法则过于中心化,与网络存储服务的普遍分散不相匹配,而且这种方法还会受到单点故障、性能限制等问题的困扰。
发明内容
本发明要解决的技术问题在于:针对现有技术存在的技术问题,本发明提供一种可靠、安全的一种基于区块链的云数据持有性验证方法及系统。
为解决上述技术问题,本发明提出的技术方案为:一种基于区块链的云数据持有性验证方法,区块链包括数据持有者US、存储服务提供商C;数据存储过程包括:
SS1.数据持有者US将需要存储的待存数据块通过非区块链通道发送给存储服务提供商 C;
SS2.所述数据持有者US和所述存储服务提供商C分别以预设的第一参数为哈希参数,对所述待存数据块按照预设的哈希算法计算得到的散列值,分别记为第一散列值和第二散列值;
SS3.所述存储服务提供商C通过所述区块链通道对所述第一散列值和所述第二散列值进行一致性验证,一致时存储所述待存数据块,并将所述待存数据块的散列值发布到区块链。
进一步地,区块链还包括验证者UR;还包括数据验证过程,具体包括:
SR1.所述验证者UR生成随机数r,根据随机数r生成验证参数chal;并通过区块链通道将验证参数chal发送至存储服务提供商C;验证者UR从区块链中获取待验证数据块的散列值;所述验证参数chal是以所述第一参数为哈希参数,对所述随机数按照所述哈希算法计算得到的散列值;
SR2.所述验证者UR计算第三散列值,所述第三散列值是以所述待验证数据块的散列值为哈希参数,对所述随机数按照所述哈希算法计算得到的散列值;所述存储服务提供商C计算第四散列值,所述第四散列值是以所述验证参数chal为哈希参数,对所述待验证数据块按照所述哈希算法计算得到的散列值;
SR3.通过所述区块链通道对所述第三散列值和所述第四散列值的一致性进行验证,一致时判定所述待验证数据块正确,否则判定所述待验证数据块错误。
进一步地,在所述步骤SR3中,判定所述待验证数据块错误时,还包括仲裁步骤:
所述区块链中还包括仲裁节点AN;
SR4.所述验证者UR通过所述区块链通道将所述随机数r发送至所述仲裁节点AN;
SR5.所述仲裁节点AN计算第五散列值,所述第五散列值是以所述第一参数为哈希参数,对所述随机数r按照所述哈希算法计算得到的散列值;判断所述第五散列值与所述验证参数chal是否一致,不一致则判断所述验证者UR计算有误,一致则跳转至SR6;
SR6.所述仲裁节点AN计算第六散列值,所述第六散列值是以所述待验证数据块的散列值为哈希参数,对所述随机数r按照所述哈希算法计算得到的散列值;判断所述第六散列值是否与所述第四散列值一致,一致则判断所述验证者UR计算有误,否则判断存储服务提供商C存在过失。
进一步地,所述哈希算法如式(1.1)所示:
Y=XM(mod N) (1.1)
式(1.1)中,Y为计算得到的散列值,X为哈希参数,M为需要计算散列值的输入参数,N为哈希算法中预设的取余参数;
所述取余参数可表征为2个不相等的质数的乘积。
一种基于区块链的云数据持有性验证系统,区块链包括数据持有者US、存储服务提供商 C;
所述数据持有者US用于将需要存储的待存数据块通过非区块链通道发送给存储服务提供商C;
所述数据持有者US和所述存储服务提供商C分别以预设的第一参数为哈希参数,对所述待存数据块按照预设的哈希算法计算得到的散列值,分别记为第一散列值和第二散列值;
所述存储服务提供商C通过所述区块链通道对所述第一散列值和所述第二散列值进行一致性验证,一致时存储所述待存数据块,并将所述待存数据块的散列值发布到区块链。
进一步地,所述区块链还包括验证者UR;
所述验证者UR生成随机数r,根据随机数r生成验证参数chal;并通过区块链通道将验证参数chal发送至存储服务提供商C;验证者UR从区块链中获取待验证数据块的散列值;所述验证参数chal是以所述第一参数为哈希参数,对所述随机数按照所述哈希算法计算得到的散列值;
所述验证者UR计算第三散列值,所述第三散列值是以所述待验证数据块的散列值为哈希参数,对所述随机数按照所述哈希算法计算得到的散列值;所述存储服务提供商C计算第四散列值,所述第四散列值是以所述验证参数chal为哈希参数,对所述待验证数据块按照所述哈希算法计算得到的散列值;
通过所述区块链通道对所述第三散列值和所述第四散列值的一致性进行验证,一致时判定所述待验证数据块正确,否则判定所述待验证数据块错误。
进一步地,所述区块链中还包括仲裁节点AN;
当判定所述待验证数据块错误时,还包括:
所述验证者UR通过所述区块链通道将所述随机数r发送至所述仲裁节点AN;
所述仲裁节点AN计算第五散列值,所述第五散列值是以所述第一参数为哈希参数,对所述随机数r按照所述哈希算法计算得到的散列值;判断所述第五散列值与所述验证参数 chal是否一致,不一致则判断所述验证者UR计算有误;
一致所述仲裁节点AN计算第六散列值,所述第六散列值是以所述待验证数据块的散列值为哈希参数,对所述随机数r按照所述哈希算法计算得到的散列值;判断所述第六散列值是否与所述第四散列值一致,一致则判断所述验证者UR计算有误,否则判断所述待验证数据块错误,存储服务提供商C存在过失。
进一步地,所述哈希算法如式(2.1)所示:
Y=XM(mod N) (2.1)
式(2.1)中,Y为计算得到的散列值,X为哈希参数,M为需要计算散列值的输入参数,N为哈希算法中预设的取余参数;
所述取余参数可表征为2个不相等的质数的乘积。
与现有技术相比,本发明的优点在于:
1、本发明的基于区块链的云数据持有性验证方法,有效的利用了区块链去中心化和分布式的特点,可实现对数据的安全存储;同时,通过验证机制,可有效地验证所存储的数据是否遭到篡改,确保用户所存储数据的安全性。
2、本发明的基于区块链的云数据持有性验证方法及系统,设置有争议仲裁机制,在存储服务提供商所存储的数据无法通过验证时,可以通过争议仲裁机制确定过失方,可有效防止数据存储的双方在此过程中作弊;并能够在没有可信第三方审计机构参与(TPA)的前提下解决数据拥有纠纷。
3、本发明的基于区块链的云数据持有性验证方法及系统,所采用的哈希算法不仅具有一般哈希函数所具有的正向快速、逆向困难、输入敏感的特点,且满足加法同态性,即先计算后解密可等价于先解密后计算。利用同态哈希技术可以实现无密钥方对密文的计算,密文计算无须经过密钥方,既可以减少通信代价,又可以转移计算任务,由此可平衡各方的计算代价;利用同态特性可以实现让验证者得以安全验证存储数据的正确性,而无需获知待验证数据本身,有效提高了数据验证过程的安全性。
附图说明
图1为本发明具体实施例的系统模型及工作流程示意图。
具体实施方式
以下结合说明书附图和具体优选的实施例对本发明作进一步描述,但并不因此而限制本发明的保护范围。
在本实施例中,区块链包括用户节点U和存储服务提供商C(Cloud StorageService Provider),区块链中部署有智能合约,用于实现区块链中各节点之间的互联互通。具体地,本实施例包括两套智能合约,分别为存储智能合约SCS和仲裁智能合约SCA,存储智能合约 SCS用于数据块存储过程中的通信,仲裁智能合约SCA用于仲裁过程中的通信。在本实施例的区域链中,各节点之间存在着区块链通道和非区块链通道,区块链通道是指按照区块链的通信协议规则实现互联互通的通信通道,其传输内容记录于区块链中,应具有公开、可追溯、不可篡改的特点。非区块链通道是指按照区块链的通信协议规则以外的其它通信方式达成互联互通的通信通道。其中,用户节点U在区块链中存在两个角色,当用户节点U需要将数据存储到区块链时,其角色为数据持有者US,当用户节点U从区块链中读取数据时,其角色为验证者UR。而验证者UR所读取的数据,可以是其自身所存储的数据,也可以是由其它用户节点U所存储的数据,此种情况即为共享数据存储。当然,也可以是非共享数据存储,即验证者UR只能读取由其自身所存储的数据,而对于其它用户节点U所存储的数据,其没有读取权限。
在本实施例中,区块链在初始化时,在区块链中还至少配置了如下两个参数,即预设的第一参数g,和取余参数N,其中取余参数可表征为两个不相等的随机质数p和q的乘积。
如图1所示,本实施例的基于区块链的云数据持有性验证方法,区块链包括数据持有者 US、存储服务提供商C;数据存储过程包括:SS1.数据持有者US将需要存储的待存数据块通过非区块链通道发送给存储服务提供商C(Cloud Storage Service Provider);SS2.数据持有者US和存储服务提供商C分别以预设的第一参数为哈希参数,对待存数据块按照预设的哈希算法计算得到的散列值,分别记为第一散列值和第二散列值;SS3.存储服务提供商C通过区块链通道对第一散列值和第二散列值进行一致性验证,一致时存储待存数据块,并将待存数据块的散列值发布到区块链。
在本实施例中,哈希算法采用如下方式所表征的算法,如式(1.1)所示:
Y=XM(mod N) (1.1)
式(1.1)中,Y为计算得到的散列值,X为哈希参数,M为需要计算散列值的输入参数,N为哈希算法中预设的取余参数;取余参数N可表征为2个不相等的质数的乘积。上述哈希算法描述为以X为哈希参数,计算输入参数M的散列值。
在本实施例中,将数据持有者US所需要存储的待存储数据块记为bi,该待存储数据块通过非区块链通道发送给存储服务提供商C后,存储服务提供商C所接收到的数据块记为用以区分待存储数据块在非区块链通道的传递过程中是否发生变化。数据持有者US根据哈希算法计算待存储数据块bi的散列值,如式所示,σi为第一散列值,g为哈希参数,即区块链中预设的第一参数,N为取余参数。存储服务提供商C根据哈希算法计算其所收到的数据块bi *的散列值σi *,如式所示,σi *为第二散列值,g为哈希参数,即区块链中预设的第一参数,N为取余参数。当第一散列值σi等于第二散列值σi *时,通过一致性验证,存储服务提供商C存储其所接收到的数据块bi *,存储服务提供商C还可将数据块的散列值(其值即为σi *或σi)和索引(i)发布到区块链中,数据持有者US则删除其本地所存储的数据块bi。到此,数据持有者US完成对数据块bi的存储过程。通过索引,区块链中的节点即可以申请从区块链中获取对应的数据块。
在本实施例中,区块链还包括验证者UR;系统中包括数据验证过程,具体步骤如下: SR1.验证者UR生成随机数r,根据随机数r生成验证参数chal;并通过区块链通道将验证参数chal发送至存储服务提供商C;验证者UR从区块链中获取待验证数据块的散列值;验证参数chal是以第一参数为哈希参数,对随机数按照哈希算法计算得到的散列值;SR2.验证者 UR计算第三散列值,第三散列值是以待验证数据块的散列值为哈希参数,对随机数按照哈希算法计算得到的散列值;存储服务提供商C计算第四散列值,第四散列值是以验证参数chal 为哈希参数,对待验证数据块按照哈希算法计算得到的散列值;SR3.通过区块链通道对第三散列值和第四散列值的一致性进行验证,一致时判定待验证数据块正确,否则判定待验证数据块错误。
在本实施例中,当验证者UR需要验证由存储服务提供商C存储的某个数据块(即待验证数据块)时,验证者UR将先从区块链中获取该数据块的索引(i)和散列值(σi)。验证者UR生成随机数r,验证参数chal通过如下方式计算得到,chal=gr(mod N),式中各参数的定义如上所述。验证者UR将验证参数chal通过区块链通道发送给存储服务提供商C。同时,验证者UR向存储服务提供商C传递索引i,存储服务提供商C根据索引i从本地读取待验证数据块,记为bi *。随后,验证者UR计算第三散列值(σi)r(mod N),存储服务提供商C计算第四散列值(mod N)。计算完毕后,存储服务提供商C将第四散列值发送至验证者 UR,验证者UR比较第三散列值和第四散列值,当两者相等,说明存储服务提供商C所存储的数据块通过验证,该数据块有效,否则,认为该数据块错误。
在本实施例中,区块链中还包括仲裁节点AN,仲裁节点用于在待验证数据块被判定为错误时,确定导致错误的过失方;在步骤SR3中,判定待验证数据块错误时,还包括仲裁步骤如下:SR4.验证者UR通过区块链通道将随机数r发送至仲裁节点AN;SR5.仲裁节点 AN计算第五散列值,第五散列值是以第一参数为哈希参数,对随机数r按照哈希算法计算得到的散列值;判断第五散列值与验证参数chal是否一致,不一致则判断验证者UR计算有误,一致则跳转至SR6;SR6.仲裁节点AN计算第六散列值,第六散列值是以待验证数据块的散列值为哈希参数,对随机数r按照哈希算法计算得到的散列值;判断第六散列值是否与第四散列值一致,一致则判断验证者UR计算有误,否则判断待验证数据错误、存储服务提供商C 存在过失。
本实施例的仲裁过程中,验证者UR通过区块链通道将随机数r*发送至仲裁节点AN,记仲裁节点AN所收到的随机数为r*,验证者UR同时将验证参数chal也通过区块链通道发送给仲裁节点AN;考虑到验证者UR可能存在的欺骗性,即验证者UR可能将随机数修改后再发送给仲裁节点AN,因此,此处将随机数记为r*,用于与原始的随机数r进行区分。仲裁节点AN计算第五散列值(mod N);仲裁节点AN比较第五散列值与验证参数chal是否一致,如果不一致,则认为验证者UR所发送的随机数r是虚假的,则判定验证者UR为过失方;如果一致,仲裁节点AN从区块链中获取待验证数据块的散列值σi,并计算出第六散列值(mod N),并从存储服务提供商C处获取第四散列值,比较第四散列值和第六散列值是否一致,一致则判定验证者UR计算有误,不一致则判定待验证数据错误、存储服务提供商C 为过失方。
在本实施例中,还可以基于上述方案,实现数据块的删除和修改。删除过程中可以描述为用户节点U通过区块链事务声明发布索引i指示的数据块bi无效,存储服务提供商C接收该事务后,即可删除对应数据块bi,同时删除该数据块在区块链中对应的索引的散列值。当然,存储服务提供商C在删除数据块之前,还可以验证发布删除数据块事务的用户节点U是否具备删除该数据块的权限,在无权限时则不删除该数据块。而修改操作则视为删除和存储操作的组合,即删除原数据块,并将修改后的新数据块存储到区块链中的存储服务提供商C。
本实施例的基于区块链的云数据持有性验证系统,区块链包括数据持有者US、存储服务提供商C;数据持有者US用于将需要存储的待存数据块通过非区块链通道发送给存储服务提供商C;数据持有者US和存储服务提供商C分别以预设的第一参数为哈希参数,对待存数据块按照预设的哈希算法计算得到的散列值,分别记为第一散列值和第二散列值;存储服务提供商C通过区块链通道对第一散列值和第二散列值进行一致性验证,一致时存储待存数据块,并将待存数据块的散列值发布到区块链。
在本实施例中,区块链还包括验证者UR;验证者UR生成随机数r,根据随机数r生成验证参数chal;并通过区块链通道将验证参数chal发送至存储服务提供商C;验证者UR从区块链中获取待验证数据块的散列值;验证参数chal是以第一参数为哈希参数,对随机数按照哈希算法计算得到的散列值;验证者UR计算第三散列值,第三散列值是以待验证数据块的散列值为哈希参数,对随机数按照哈希算法计算得到的散列值;存储服务提供商C计算第四散列值,第四散列值是以验证参数chal为哈希参数,对待验证数据块按照哈希算法计算得到的散列值;通过区块链通道对第三散列值和第四散列值的一致性进行验证,一致时判定待验证数据块正确,否则判定待验证数据块错误。
在本实施例中,区块链中还包括仲裁节点AN;当判定待验证数据块错误时,还包括:验证者UR通过区块链通道将随机数r发送至仲裁节点AN;仲裁节点AN计算第五散列值,第五散列值是以第一参数为哈希参数,对随机数r按照哈希算法计算得到的散列值;判断第五散列值与验证参数chal是否一致,不一致则判断验证者UR计算有误;一致仲裁节点AN计算第六散列值,第六散列值是以待验证数据块的散列值为哈希参数,对随机数r按照哈希算法计算得到的散列值;判断第六散列值是否与第四散列值一致,一致则判断验证者UR计算有误,否则判断存储服务提供商C存在过失。
在本实施例中,哈希算法如式(2.1)所示:
Y=XM(mod N) (2.1)
式(2.1)中,Y为计算得到的散列值,X为哈希参数,M为需要计算散列值的输入参数,N为哈希算法中预设的取余参数;取余参数N可表征为2个不相等的质数的乘积。
在本实施例中,基于区块链的云数据验证系统按照上述基于区块链的数据存储方法进行数据的存储、验证等操作,验证系统中的式(2.1)与存储方法中的式(1.1)相同。
上述只是本发明的较佳实施例,并非对本发明作任何形式上的限制。虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明。因此,凡是未脱离本发明技术方案的内容,依据本发明技术实质对以上实施例所做的任何简单修改、等同变化及修饰,均应落在本发明技术方案保护的范围内。
Claims (4)
1.一种基于区块链的云数据持有性验证方法,其特征在于:包括数据存储过程,数据存储过程包括以下步骤:
SS1.数据拥有者US将需要存储的数据块通过非区块链通道发送给存储服务提供商C;
SS2.所述数据拥有者US和所述存储服务提供商C分别以预设的第一参数为哈希参数,对所述待存数据块按照预设的哈希函数计算得到散列值,分别记为第一散列值和第二散列值;
SS3.所述数据拥有者US将第一散列值通过所述区块链通道发送至所述服务提供商C;所述存储服务提供商C对所述第一散列值和所述第二散列值进行一致性验证,当第一散列值与第二散列值相等时存储所述待存数据块,并将所述待存数据块的散列值发布到区块链,否则中止存储服务;
还包括数据持有性验证过程,所述数据持有性验证过程用于验证存储于所述存储服务提供商C的特定数据是否正确,包括以下步骤:
SR1.验证者UR选取随机整数r,根据随机数r生成验证参数chal;并通过区块链将验证参数chal发送至存储服务提供商C;验证者UR从区块链中获取待验证数据块的散列值;所述验证参数chal是以所述第一参数为哈希参数,对所述随机数按照所述哈希算法计算得到的散列值;
SR2.所述验证者UR计算第三散列值,所述第三散列值是以所述待验证数据块的散列值为哈希参数,对所述随机数r按照所述哈希函数计算得到的散列值;所述存储服务提供商C计算第四散列值,所述第四散列值是以所述验证参数chal为哈希参数,对所述待验证数据块按照所述哈希算法计算得到的散列值;
SR3.所述存储服务提供商C将所述第四散列值通过所述区块链发送至所述验证者UR;所述验证者UR对所述第三散列值和所述第四散列值的一致性进行验证,当第三散列值与第四散列值相等时判定所述待验证数据块正确,否则判定所述待验证数据块错误;
所述哈希算法如式(1.2)所示:
Y=XM(modN) (1.2)
式(1.2)中,Y为计算得到的散列值,X为哈希参数,M为需要计算散列值的输入参数,N为哈希算法中预设的取余参数;
所述取余参数N可表征为2个不相等的质数的乘积。
2.根据权利要求1所述的基于区块链的云数据持有性验证方法,其特征在于:所述区块链中还包括仲裁节点AN;在所述步骤SR3中,所述验证者UR判定所述待验证数据块错误时,还包括如下仲裁步骤:
SR4.所述验证者UR通过所述区块链将所述随机数r发送至所述仲裁节点AN;
SR5.所述仲裁节点AN计算第五散列值,所述第五散列值是以所述第一参数为哈希参数,对所述随机数r按照所述哈希算法计算得到的散列值;判断所述第五散列值与所述验证参数chal是否一致,当所述第五散列值与所述验证参数chal不相等时则判断所述验证者UR计算有误,一致则跳转至SR6;
SR6.所述仲裁节点AN计算第六散列值,所述第六散列值是以所述待验证数据块的散列值为哈希参数,对所述随机数r按照所述哈希算法计算得到的散列值;随后,所述仲裁节点AN判断所述第六散列值是否与所述第四散列值一致,当第六散列值与第四散列值相等时则判断所述验证者UR计算有误,否则判断存储服务提供商C存在过失。
3.一种基于区块链的云数据持有性验证系统,其特征在于:系统中包括数据持有者US、存储服务提供商C;
所述数据持有者US将需要存储的待存数据块通过非区块链通道发送给存储服务提供商C;
所述数据持有者US和所述存储服务提供商C分别以预设的第一参数为哈希参数,对所述待存数据块按照预设的哈希算法计算得到的散列值,分别记为第一散列值和第二散列值;
所述存储服务提供商C通过所述区块链通道对所述第一散列值和所述第二散列值进行一致性验证,一致时存储所述待存数据块,并将所述待存数据块的散列值发布到区块链;
所述区块链还包括验证者UR;
所述验证者UR生成随机数r,根据随机数r生成验证参数chal;并通过区块链通道将验证参数chal发送至存储服务提供商C;验证者UR从区块链中获取待验证数据块的散列值;所述验证参数chal是以所述第一参数为哈希参数,对所述随机数r按照所述哈希算法计算得到的散列值;
所述验证者UR计算第三散列值,所述第三散列值是以所述待验证数据块的散列值为哈希参数,对所述随机数按照所述哈希算法计算得到的散列值;所述存储服务提供商C计算第四散列值,所述第四散列值是以所述验证参数chal为哈希参数,对所述待验证数据块按照所述哈希算法计算得到的散列值;
通过所述区块链通道对所述第三散列值和所述第四散列值的一致性进行验证,一致时判定所述待验证数据块正确,否则判定所述待验证数据块错误;
所述哈希算法如式(2.2)所示:
Y=XM(modN) (2.2)
式(2.2)中,Y为计算得到的散列值,X为哈希参数,M为需要计算散列值的输入参数,N为哈希算法中预设的取余参数;
所述取余参数N可表征为2个不相等的质数的乘积。
4.根据权利要求3所述的基于区块链的云数据持有性验证系统,其特征在于:所述区块链中还包括仲裁节点AN;
当判定所述待验证数据块错误时,还包括:
所述验证者UR通过所述区块链通道将所述随机数r发送至所述仲裁节点AN;
所述仲裁节点AN计算第五散列值,所述第五散列值是以所述第一参数为哈希参数,对所述随机数r按照所述哈希算法计算得到的散列值;判断所述第五散列值与所述验证参数chal是否一致,当所述第五散列值与所述验证参数chal不相等时则判断所述验证者UR计算有误;
当所述第五散列值与所述验证参数chal相等时,所述仲裁节点AN计算第六散列值,所述第六散列值是以所述待验证数据块的散列值为哈希参数,对所述随机数r按照所述哈希算法计算得到的散列值;判断所述第六散列值是否与所述第四散列值一致,一致则判断所述验证者UR计算有误,否则判断存储服务提供商C存在过失。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911070467.2A CN111083105B (zh) | 2019-11-05 | 2019-11-05 | 一种基于区块链的云数据持有性验证方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911070467.2A CN111083105B (zh) | 2019-11-05 | 2019-11-05 | 一种基于区块链的云数据持有性验证方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111083105A CN111083105A (zh) | 2020-04-28 |
CN111083105B true CN111083105B (zh) | 2021-06-25 |
Family
ID=70310664
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911070467.2A Active CN111083105B (zh) | 2019-11-05 | 2019-11-05 | 一种基于区块链的云数据持有性验证方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111083105B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113591129A (zh) * | 2021-08-17 | 2021-11-02 | 东北大学秦皇岛分校 | 基于区块链的网络存储服务系统及数据审计方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103414690A (zh) * | 2013-07-15 | 2013-11-27 | 北京航空航天大学 | 一种可公开验证云端数据持有性校验方法 |
CN108681583A (zh) * | 2018-05-11 | 2018-10-19 | 北京奇虎科技有限公司 | 基于区块链的数据持有证明方法、装置及可读存储介质 |
CN110197081A (zh) * | 2019-05-30 | 2019-09-03 | 北京理工大学 | 一种基于区块链的云数据共享隐私保护方案 |
CN110225012A (zh) * | 2019-05-30 | 2019-09-10 | 电子科技大学 | 一个基于联盟链的外包数据的拥有权检查和更新方法 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104811450B (zh) * | 2015-04-22 | 2017-10-17 | 电子科技大学 | 云计算中一种基于身份的数据存储方法及完整性验证方法 |
US10114980B2 (en) * | 2016-07-21 | 2018-10-30 | Acronis International Gmbh | System and method for verifying data integrity using a blockchain network |
US10795977B2 (en) * | 2017-08-24 | 2020-10-06 | Oracle International Corporation | Digital asset traceability and assurance using a distributed ledger |
US10261711B1 (en) * | 2018-01-25 | 2019-04-16 | Merck Sharp & Dohme Corp. | Proof of non-tampering for stored data |
CN108197322A (zh) * | 2018-02-05 | 2018-06-22 | 湖南大学 | 基于团体的竞争影响力最大化方法 |
CN109842606B (zh) * | 2018-02-24 | 2020-08-18 | 中国科学院计算技术研究所 | 基于一致性哈希算法的区块链共识算法和系统 |
CN109447603B (zh) * | 2018-10-18 | 2022-04-22 | 中国船舶工业系统工程研究院 | 一种基于区块链的海洋数据资源共享方法 |
CN109194466B (zh) * | 2018-10-29 | 2021-07-06 | 南开大学 | 一种基于区块链的云端数据完整性检测方法及系统 |
CN110278076B (zh) * | 2019-05-29 | 2022-06-03 | 电子科技大学 | 一种基于区块链的透明化数据完整性审计和透明化加密数据去重方法 |
-
2019
- 2019-11-05 CN CN201911070467.2A patent/CN111083105B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103414690A (zh) * | 2013-07-15 | 2013-11-27 | 北京航空航天大学 | 一种可公开验证云端数据持有性校验方法 |
CN108681583A (zh) * | 2018-05-11 | 2018-10-19 | 北京奇虎科技有限公司 | 基于区块链的数据持有证明方法、装置及可读存储介质 |
CN110197081A (zh) * | 2019-05-30 | 2019-09-03 | 北京理工大学 | 一种基于区块链的云数据共享隐私保护方案 |
CN110225012A (zh) * | 2019-05-30 | 2019-09-10 | 电子科技大学 | 一个基于联盟链的外包数据的拥有权检查和更新方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111083105A (zh) | 2020-04-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11799660B2 (en) | Optimizations for verification of interactions system and method | |
CN110958110B (zh) | 一种基于零知识证明的区块链隐私数据管理方法和系统 | |
Shah et al. | Privacy-preserving audit and extraction of digital contents | |
US11468044B2 (en) | Optimizations for verification of interactions system and method using probability density functions | |
JP2020507222A (ja) | 情報保護のためのシステム及び方法 | |
Zhang et al. | Provable multiple replication data possession with full dynamics for secure cloud storage | |
CN102045356B (zh) | 一种面向云存储的可信存储验证方法和系统 | |
US20200213331A1 (en) | Data service system | |
WO2010090633A2 (en) | Database outsourcing with access privacy | |
EP2865129A1 (en) | Event-triggered release through third party of pre-encrypted digital data from data owner to data assignee | |
CN114357492B (zh) | 一种基于区块链的医疗数据隐私融合方法及装置 | |
CN112615720B (zh) | 一种基于区块链的云端数据加密存储系统 | |
US11409907B2 (en) | Methods and systems for cryptographically secured decentralized testing | |
Khan et al. | Accountable and Transparent TLS Certificate Management: An Alternate Public‐Key Infrastructure with Verifiable Trusted Parties | |
CN114070567A (zh) | 一种零知识证明等区块链身份认证及隐私保护核心技术 | |
US11394533B2 (en) | Method for storing database security audit records | |
CN110930153A (zh) | 基于隐藏第三方账号的区块链隐私数据管理方法和系统 | |
CN110430057A (zh) | 数据传输系统和传输方法 | |
TW202231018A (zh) | 識別阻斷服務攻擊之技術 | |
CN113918528A (zh) | 一种基于可信硬件的安全云数据去重方法及系统 | |
CN111083105B (zh) | 一种基于区块链的云数据持有性验证方法及系统 | |
CN113343264A (zh) | 一种基于区块链的数据防篡改系统及方法 | |
CN116797227A (zh) | 基于同态加密的客户隐私信息安全交换保护方法及系统 | |
CN116561791A (zh) | 隐私求交方法、装置及存储介质 | |
US20220020010A1 (en) | Decentralized electronic contract attestation platform |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |