CN109245894B - 一种基于智能合约的分布式云存储系统 - Google Patents

一种基于智能合约的分布式云存储系统 Download PDF

Info

Publication number
CN109245894B
CN109245894B CN201810791191.6A CN201810791191A CN109245894B CN 109245894 B CN109245894 B CN 109245894B CN 201810791191 A CN201810791191 A CN 201810791191A CN 109245894 B CN109245894 B CN 109245894B
Authority
CN
China
Prior art keywords
data
lessor
data owner
contract
owner
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
Application number
CN201810791191.6A
Other languages
English (en)
Other versions
CN109245894A (zh
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.)
University of Electronic Science and Technology of China
Original Assignee
University of Electronic Science and Technology of China
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 University of Electronic Science and Technology of China filed Critical University of Electronic Science and Technology of China
Priority to CN201810791191.6A priority Critical patent/CN109245894B/zh
Publication of CN109245894A publication Critical patent/CN109245894A/zh
Application granted granted Critical
Publication of CN109245894B publication Critical patent/CN109245894B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions

Abstract

本发明公开了一个基于智能合约的分布式云存储系统,属于信息安全技术领域。本发明所述方法包括初始化、生成块、签署、存储、部署合约和审计等六个模块。与现有的云存储方案相比,本发明能防止单点存储失效;能以更低的成本保证外包数据的机密性、可用性以及用户控制权;能保证数据拥有者和出租人身份的匿名性;能保证出租人按合同存储外包数据后,数据拥有者不能抵赖享受的存储服务,还能保证在每次完整性审计后抵押资产自动转账到出租人账户。

Description

一种基于智能合约的分布式云存储系统
技术领域
本发明属于信息安全技术领域,具体涉及一种基于智能合约的分布式云存储系统。
背景技术
传统的云存储依赖于作为可信第三方的存储服务供应商,这存在许多基于信任模式的弱点。传统云存储服务可能因技术故障导致数据泄露或丢失。此外,目前云存储服务提供商收取过多的超过核心花费的附加费,这导致用户数据的存储成本显著增加。对云存储用户而言,去中心化存储系统的费用只有传统中心化存储系统的费用的1/100到1/10。更严重的是,由于端到端加密的非标准化,传统云存储面临各种安全威胁,如中间人攻击、恶意软件和揭露敏感隐私数据的黑客程序。
相比传统的云储存,构建在对等网络上的去中心化的存储模式能以更低的存储成本提供更高的数据机密性和用户控制权。第一,在对等网络中,由于数据存储是分散在各个结点之间进行的,所以部分结点的数据遭到破坏对其它部分的影响很小。第二,由于数据的传输分散在各节点之间进行而无需经过某个集中环节,用户的隐私信息被窃听和泄漏的可能性大大降低。第三,所有网络节点都可以提供中继转发的功能,因而大大提高了匿名通讯的灵活性和可靠性,能够为用户提供更好的隐私保护。自然地,构建在对等网络上的分布式存储也拥有这些优势。然而,对等网络通常都是以自组织的方式建立起来的,它允许结点自由地加入和离开,这在某种程度上破坏了用户数据的可用性。
为了激励节点在对等网络上保持活跃,存储外包数据块的在线活跃节点通常被支付费用。在激励机制中,为了保证支付/赔偿的正确执行,潜在的解决方案要求一个公正的可信第三方来判断网络节点是否完整地存储外包数据块。然而,可信第三方的选择是一个巨大的挑战。幸运地是,近年来,一类新的问责制出现了。例如,在Etherrum中,智能合约以计算机程序的形式呈现并被公布在区块链。以太坊的共识机制规定了对等网络的节点如何扩展和维护区块链。这些能确保智能合约中的事务正确地执行,而无需中央监管机构。
发明内容
本发明的目的是克服现有技术的不足,提供一种基于智能合约的分布式云存储系统。
本发明所提出的技术问题是这样解决的:
一种基于智能合约的分布式云存储系统,包括6个模块:
初始化模块:
数据拥有者和出租人(出租本地闲置磁盘给数据拥有者存储个人数据的网络节点)下载以太坊客户端,并注册来获得各自的密钥pkO,skO、(pkL,skL)以及对应的地址addrO、addrL;其中pkO为数据拥有者的公钥,skO为数据拥有者的私钥,pkL为出租人的公钥,skL为出租人的私钥,addrO为数据拥有者的地址,addrL为出租人的地址;同时,初始化算法为数据拥有者生成一组挑战盐s和冗余算法的参数(K,M),K和M都是正整数;
生成块模块:数据拥有者处理原数据并生成数据块:
数据拥有者用AES(Advanced Encryption Standard,高级加密标准)加密原数据F获得密文F'=Ek(F),其中Ek表示用k加密,k为对称加密算法AES的密钥;数据拥有者用纠删编码算法处理密文F'来获得数据块F”;
签署模块:数据拥有者和出租人签署存储合同:
数据拥有者创建对应数据块的待签署存储合同SSCvoid,并将它们广播在以太网中;然后,出租人签署存储合同
Figure BDA0001734945630000021
并发给数据拥有者,其中
Figure BDA0001734945630000022
为出租者用其私钥skL进行签名的算法;
存储模块:出租人存储签署合同并存储对应的数据块:
首先,数据拥有者签署出租人已签署的存储合同
Figure BDA0001734945630000023
并将它在本地保存,其中
Figure BDA0001734945630000024
为数据拥有者用其私钥skO进行签名的算法;然后,数据拥有者生成对应原数据的默克尔哈希树(Merkle hash tree),并将存储合同SSCLO和合同对应的数据块Fi发送给出租人,Fi为数据块F”中的第i个元素,其中1≤i≤n,n为外包数据块F”的数量;最后,出租人在检查合同上签名的有效性以及数据块的完整性后,在本地保存存储合同SSCLO和数据块Fi
部署合约模块:数据拥有者在以太坊区块链上部署智能合约:
首先,数据拥有者在以太坊区块链上部署智能合约(将用于审计的根节点的哈希值写入智能合约);然后,数据拥有者和出租人分别将押金转账到智能合约账户对应的地址addrSC
审计模块:数据拥有者审计出租人存储的数据块的完整性:
首先,数据拥有者将挑战盐s和用于审计的树节点(包括叶节点)的值发送给出租人;然后,出租人根据收到的挑战盐和节点值,结合本地存储的数据块Fi,生成对应的默克尔哈希证明(Merkle hash proof),即根节点的值,并发送给智能合约;最后,智能合约审计出租人的证明(即根节点值的正确性),并根据审计结果进行转账(支付或罚款);
根据审计结果进行转账的具体方法为:
若出租人的证明通过了智能合约的审计,则智能合约将数据拥有者的押金(作为存储费用)转账到出租人的地址addrL;否则,智能合约将出租人的押金(作为违约金)转账到数据拥有者的地址addrO,并退回数据拥有者的押金。
生成块模块中数据拥有者用纠删编码算法处理密文来获得数据块F”的具体过程为:
Figure BDA0001734945630000031
其中,I为K*K的单位矩阵,B为M*K的纠删矩阵。
本发明的有益效果是:
(1)数据被交付前的加密处理和冗余编码能保证数据的可恢复性和机密性。数据块被分布式存储在物理隔离的不同出租人的磁盘中,这能防止单点存储失效。恶意攻击者不能用分散在网络中的加密数据块构建可读文件。不定期的数据完整性审计能及时发现丢失的数据块,这对数据的可用性非常有用。
(2)发明中智能合约来充当一个可信第三方,记录存储合约的数字摘要,验证审计结果的正确性并公正地执行支付/处罚操作。发布在以太坊区块链上的智能合约是公开的,这为数据拥有者的支付义务和出租人的存储义务提供了不可抵赖的证据。
(3)相比传统的云存储技术,该发明中的分布式存储系统是低成本、安全、高效的。它无需构建和维护数据中心,这很大幅度地降低了数据拥有者的存储成本。此外,智能合约验证审计结果,这减小数据拥有者的计算开销。同时,分块形成的数据块可以被并行的传输、存储、审计,这是更加安全和高效的。
附图说明
图1为本发明所述基于智能合约的分布式云存储系统的系统流程图;
图2为本发明中方案的实施流程图;
图3为本发明中默克尔哈希树的结构示意图;
图4为本发明中默克尔哈希证明的结构示意图。
具体实施方式
下面结合附图和实施例对本发明进行进一步的说明。
本实施例提供一种基于智能合约的分布式云存储系统,其系统流程图如图1所示,实施流程图如图2所示,包括6个模块:
初始化模块:
数据拥有者和出租人(出租本地闲置磁盘给数据拥有者存储个人数据的网络节点)下载以太坊客户端,并注册来获得各自的密钥pkO,skO、(pkL,skL)以及对应的地址addrO、addrL;其中pkO为数据拥有者的公钥,skO为数据拥有者的私钥,pkL为出租人的公钥,skL为出租人的私钥,addrO为数据拥有者的地址,addrL为出租人的地址;同时,初始化算法为数据拥有者生成一组挑战盐s和冗余算法的参数(K,M),K和M都是正整数;
生成块模块:数据拥有者处理原数据并生成数据块:
数据拥有者用AES(Advanced Encryption Standard,高级加密标准)加密原数据F获得密文F'=Ek(F),其中Ek表示用k加密,k为对称加密算法AES的密钥;数据拥有者用纠删编码算法处理密文F'来获得数据块F”;生成块模块中数据拥有者用纠删编码算法处理密文来获得数据块F”的具体过程为:
Figure BDA0001734945630000041
其中,I为K*K的单位矩阵,B为M*K的纠删矩阵;
签署模块:数据拥有者和出租人签署存储合同:
数据拥有者创建对应数据块的待签署存储合同SSCvoid,并将它们广播在以太网中;然后,出租人签署存储合同
Figure BDA0001734945630000042
并发给数据拥有者,其中
Figure BDA0001734945630000043
为出租者用其私钥skL进行签名的算法;
存储模块:出租人存储签署合同并存储对应的数据块:
首先,数据拥有者签署出租人已签署的存储合同
Figure BDA0001734945630000044
并将它在本地保存,其中
Figure BDA0001734945630000045
为数据拥有者用其私钥skO进行签名的算法;然后,数据拥有者生成对应原数据的默克尔哈希树(Merkle hash tree),如图3所示(以n=4为例),并将存储合同SSCLO和合同对应的数据块Fi发送给出租人,Fi为数据块F”中的第i个元素,其中1≤i≤n,n为外包数据块的数量;最后,出租人在检查合同上签名的有效性以及数据块的完整性后,在本地保存存储合同SSCLO和数据块Fi
部署合约模块:数据拥有者在以太坊区块链上部署智能合约:
首先,数据拥有者在以太坊区块链上部署智能合约(将用于审计的根节点的哈希值写入智能合约);然后,数据拥有者和出租人分别将押金转账到智能合约账户对应的地址addrSC
审计模块:数据拥有者审计出租人存储的数据块的完整性:
首先,数据拥有者将挑战盐s和用于审计的树节点(包括叶节点)的值发送给出租人;然后,出租人根据收到的挑战盐和节点值,结合本地存储的数据块Fi,生成对应的默克尔哈希证明(Merkle hash proof),如图4所示(以n=4,i=3为例),即根节点的值,并发送给智能合约;最后,智能合约审计出租人的证明(即根节点值的正确性),并根据审计结果进行转账(支付或罚款);
根据审计结果进行转账的具体方法为:
若出租人的证明通过了智能合约的审计,则智能合约将数据拥有者的押金(作为存储费用)转账到出租人的地址addrL;否则,智能合约将出租人的押金(作为违约金)转账到数据拥有者的地址addrO,并退回数据拥有者的押金。

Claims (2)

1.一种基于智能合约的分布式云存储系统,其特征在于,包括6个模块:
初始化模块:
数据拥有者和出租人下载以太坊客户端,并注册来获得各自的密钥(pkO,skO)、(pkL,skL)以及对应的地址addrO、addrL;其中pkO为数据拥有者的公钥,skO为数据拥有者的私钥,pkL为出租人的公钥,skL为出租人的私钥,addrO为数据拥有者的地址,addrL为出租人的地址;同时,初始化算法为数据拥有者生成一组挑战盐s和冗余算法的参数(K,M),K和M都是正整数;
生成块模块:数据拥有者处理原数据并生成数据块:
数据拥有者用AES加密原数据F获得密文F′=Ek(F),其中Ek表示用k加密,k为对称加密算法AES的密钥;数据拥有者用纠删编码算法处理密文F′来获得数据块F″;
数据拥有者用纠删编码算法处理密文来获得数据块F″的具体过程为:
Figure FDA0002839407240000011
其中,I为K*K的单位矩阵,B为M*K的纠删矩阵;
签署模块:数据拥有者和出租人签署存储合同:
数据拥有者创建对应数据块的待签署存储合同SSCvoid,并将它们广播在以太网中;然后,出租人签署存储合同
Figure FDA0002839407240000012
并发给数据拥有者,其中
Figure FDA0002839407240000013
为出租者用其私钥skL进行签名的算法;
存储模块:出租人存储签署合同并存储对应的数据块:
首先,数据拥有者签署出租人已签署的存储合同
Figure FDA0002839407240000014
并将它在本地保存,其中
Figure FDA0002839407240000015
为数据拥有者用其私钥skO进行签名的算法;然后,数据拥有者生成对应原数据的默克尔哈希树,并将存储合同SSCLO和合同对应的数据块Fi发送给出租人,Fi为数据块F″中的第i个元素,其中1≤i≤n,n为外包数据块F″的数量;最后,出租人在检查合同上签名的有效性以及数据块的完整性后,在本地保存存储合同SSCLO和数据块Fi
部署合约模块:数据拥有者在以太坊区块链上部署智能合约:
首先,数据拥有者在以太坊区块链上部署智能合约;然后,数据拥有者和出租人分别将押金转账到智能合约账户对应的地址addrSC
审计模块:数据拥有者审计出租人存储的数据块的完整性:
首先,数据拥有者将挑战盐s和用于审计的树节点的值发送给出租人;然后,出租人根据收到的挑战盐和节点值,结合本地存储的数据块Fi,生成对应的默克尔哈希证明,即根节点的值,并发送给智能合约;最后,智能合约审计出租人的证明,并根据审计结果进行转账。
2.根据权利要求1所述的基于智能合约的分布式云存储系统,其特征在于,审计模块中根据审计结果进行转账的具体方法为:
若出租人的证明通过了智能合约的审计,则智能合约将数据拥有者的押金转账到出租人的地址addrL;否则,智能合约将出租人的押金转账到数据拥有者的地址addrO,并退回数据拥有者的押金。
CN201810791191.6A 2018-07-18 2018-07-18 一种基于智能合约的分布式云存储系统 Active CN109245894B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810791191.6A CN109245894B (zh) 2018-07-18 2018-07-18 一种基于智能合约的分布式云存储系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810791191.6A CN109245894B (zh) 2018-07-18 2018-07-18 一种基于智能合约的分布式云存储系统

Publications (2)

Publication Number Publication Date
CN109245894A CN109245894A (zh) 2019-01-18
CN109245894B true CN109245894B (zh) 2021-03-26

Family

ID=65072167

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810791191.6A Active CN109245894B (zh) 2018-07-18 2018-07-18 一种基于智能合约的分布式云存储系统

Country Status (1)

Country Link
CN (1) CN109245894B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110111074A (zh) * 2019-05-05 2019-08-09 江苏全链通信息科技有限公司 基于区块链的合同转账条款的执行方法、设备及介质
US11201747B2 (en) * 2019-07-15 2021-12-14 Sap Se Federated data management between partner systems
US11880383B2 (en) 2019-07-15 2024-01-23 Sap Se Federated data management between partner systems
EP3673404A4 (en) 2019-08-20 2020-10-14 Alibaba Group Holding Limited BLOCKCHAIN DATA STORAGE BASED ON SHARED N UDS AND ERROR CORRECTION CODE
CN111259454B (zh) * 2020-01-10 2022-07-05 山东师范大学 一种非交互式数据完整性审计方法、公平付费方法及系统
CN113285812A (zh) * 2021-07-26 2021-08-20 西南石油大学 基于sgx和以太坊区块链的云存储自审计方法
CN113422688B (zh) * 2021-08-19 2021-10-29 西南石油大学 一种云存储数据的快速审计方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105719185A (zh) * 2016-01-22 2016-06-29 杭州复杂美科技有限公司 区块链的数据对比及共识方法
CN105790954A (zh) * 2016-03-02 2016-07-20 布比(北京)网络技术有限公司 一种构建电子证据的方法和系统
CN106779704A (zh) * 2016-12-06 2017-05-31 杭州趣链科技有限公司 一种基于环签名的区块链匿名交易方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170178127A1 (en) * 2015-12-18 2017-06-22 International Business Machines Corporation Proxy system mediated legacy transactions using multi-tenant transaction database

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105719185A (zh) * 2016-01-22 2016-06-29 杭州复杂美科技有限公司 区块链的数据对比及共识方法
CN105790954A (zh) * 2016-03-02 2016-07-20 布比(北京)网络技术有限公司 一种构建电子证据的方法和系统
CN106779704A (zh) * 2016-12-06 2017-05-31 杭州趣链科技有限公司 一种基于环签名的区块链匿名交易方法

Also Published As

Publication number Publication date
CN109245894A (zh) 2019-01-18

Similar Documents

Publication Publication Date Title
CN109245894B (zh) 一种基于智能合约的分布式云存储系统
Feng et al. Blockchain-based cross-domain authentication for intelligent 5G-enabled internet of drones
Saad et al. Exploring the attack surface of blockchain: A systematic overview
Di Pietro et al. A blockchain-based trust system for the internet of things
Alvarenga et al. Securing configuration management and migration of virtual network functions using blockchain
CN108418680B (zh) 一种基于安全多方计算技术的区块链密钥恢复方法、介质
Ruffing et al. Liar, liar, coins on fire! Penalizing equivocation by loss of bitcoins
US20220318907A1 (en) Systems and methods for generating secure, encrypted communications across distributed computer networks for authorizing use of cryptography-based digital repositories in order to perform blockchain operations in decentralized applications
Alizadeh et al. A survey of secure internet of things in relation to blockchain
CN110288480B (zh) 一种区块链的私密交易方法及装置
Zhong et al. Distributed blockchain-based authentication and authorization protocol for smart grid
Li et al. BCSE: Blockchain-based trusted service evaluation model over big data
CN113194469A (zh) 基于区块链的5g无人机跨域身份认证方法、系统及终端
Zhu et al. Hybrid blockchain design for privacy preserving crowdsourcing platform
CN114244527B (zh) 基于区块链的电力物联网设备身份认证方法及系统
CN112448946B (zh) 基于区块链的日志审计方法及装置
CN113255014B (zh) 一种基于区块链的数据处理方法以及相关设备
Zafar et al. Integration of blockchain and Internet of Things: Challenges and solutions
Wang et al. Decentralized data outsourcing auditing protocol based on blockchain
Gong et al. A data privacy protection scheme for Internet of things based on blockchain
Zhang et al. OBBC: A blockchain-based data sharing scheme for open banking
CN110945833B (zh) 一种用于多模标识网络隐私保护与身份管理的方法及系统
CN112654972A (zh) 具有受限交易的区块链设置
CN113302612B (zh) 一种用于跨链和跨网络数据传输的计算机实现方法、系统及装置
CN111815329A (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
GR01 Patent grant
GR01 Patent grant