CN109245894B - 一种基于智能合约的分布式云存储系统 - Google Patents
一种基于智能合约的分布式云存储系统 Download PDFInfo
- 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
Links
Images
Classifications
-
- 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/32—Cryptographic 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/3247—Cryptographic 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols 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]
-
- 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/32—Cryptographic 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/3236—Cryptographic 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”;
签署模块:数据拥有者和出租人签署存储合同:
存储模块:出租人存储签署合同并存储对应的数据块:
首先,数据拥有者签署出租人已签署的存储合同并将它在本地保存,其中为数据拥有者用其私钥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”的具体过程为:
其中,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”的具体过程为:
其中,I为K*K的单位矩阵,B为M*K的纠删矩阵;
签署模块:数据拥有者和出租人签署存储合同:
存储模块:出租人存储签署合同并存储对应的数据块:
首先,数据拥有者签署出租人已签署的存储合同并将它在本地保存,其中为数据拥有者用其私钥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″的具体过程为:
其中,I为K*K的单位矩阵,B为M*K的纠删矩阵;
签署模块:数据拥有者和出租人签署存储合同:
存储模块:出租人存储签署合同并存储对应的数据块:
首先,数据拥有者签署出租人已签署的存储合同并将它在本地保存,其中为数据拥有者用其私钥skO进行签名的算法;然后,数据拥有者生成对应原数据的默克尔哈希树,并将存储合同SSCLO和合同对应的数据块Fi发送给出租人,Fi为数据块F″中的第i个元素,其中1≤i≤n,n为外包数据块F″的数量;最后,出租人在检查合同上签名的有效性以及数据块的完整性后,在本地保存存储合同SSCLO和数据块Fi;
部署合约模块:数据拥有者在以太坊区块链上部署智能合约:
首先,数据拥有者在以太坊区块链上部署智能合约;然后,数据拥有者和出租人分别将押金转账到智能合约账户对应的地址addrSC;
审计模块:数据拥有者审计出租人存储的数据块的完整性:
首先,数据拥有者将挑战盐s和用于审计的树节点的值发送给出租人;然后,出租人根据收到的挑战盐和节点值,结合本地存储的数据块Fi,生成对应的默克尔哈希证明,即根节点的值,并发送给智能合约;最后,智能合约审计出租人的证明,并根据审计结果进行转账。
2.根据权利要求1所述的基于智能合约的分布式云存储系统,其特征在于,审计模块中根据审计结果进行转账的具体方法为:
若出租人的证明通过了智能合约的审计,则智能合约将数据拥有者的押金转账到出租人的地址addrL;否则,智能合约将出租人的押金转账到数据拥有者的地址addrO,并退回数据拥有者的押金。
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)
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)
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)
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 |
-
2018
- 2018-07-18 CN CN201810791191.6A patent/CN109245894B/zh active Active
Patent Citations (3)
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 |