CN109508552B - 分布式云存储***的隐私保护方法 - Google Patents
分布式云存储***的隐私保护方法 Download PDFInfo
- Publication number
- CN109508552B CN109508552B CN201811330536.4A CN201811330536A CN109508552B CN 109508552 B CN109508552 B CN 109508552B CN 201811330536 A CN201811330536 A CN 201811330536A CN 109508552 B CN109508552 B CN 109508552B
- Authority
- CN
- China
- Prior art keywords
- transaction
- file
- hash
- data owner
- ownership
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6209—Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/04—Payment circuits
- G06Q20/06—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
- G06Q20/065—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3823—Payment protocols; Details thereof insuring higher security of transaction combining multiple encryption tools for a transaction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0645—Rental transactions; Leasing transactions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2107—File encryption
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Accounting & Taxation (AREA)
- Theoretical Computer Science (AREA)
- Finance (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Computer Security & Cryptography (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Technology Law (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开一种分布式云存储***的隐私保护方法,包括用户、矿工、存储提供方,实现***初始化、文件上传、文件分享、文件下载、文件删除等操作。本发明将分布式云存储***与区块链技术结合,并将文件所有权处理过程作为交易处理,实现分布式云存储***中文件所有权处理过程的隐私保护,包括发送方、接收方、交易内容的隐藏。另外,本发明在保证用户隐私的同时,能够有效地抵制重放攻击、数据伪造攻击。
Description
技术领域
本发明涉及一种分布式存储技术,具体涉及一种分布式云存储***的隐私保护方法。
背景技术
随着云存储技术的发展,用户可以很方便的将数据外包到云中,并在云中对数据进行分享、下载、修改等操作。然而传统的云存储模型几乎唯一的依赖于中心化的云服务器来提供服务,这种基于客户端-服务端信任的模式具有一些固有弱点,很容易受到攻击,比如中间人攻击、恶意软件攻击、中心化的服务器也可能因技术故障导致数据不可用以及用户隐私的泄露。分布式云存储可以较好的解决这些问题。常见的分布式云存储***有HDFS、Ceph、Pangu等。分布式云存储***去除了中心化的服务器,保证了数据的可靠性,同时,还具有存储容量大、高吞吐量、服务高可用、高效运维、低成本等优点。
另外,区块链技术的快速发展,使得越来越多的应用将区块链使用到分布式云存储中。区块链的引入,为***提供了奖励机制,使得更多的用户参与到***中。进一步的,可以使用区块链的防篡改功能,为云存储***提供便利,增加安全性,这一改进使得基于区块链的分布式云存储***越来越流行,常见的基于区块链的分布式云存储***有Storj,IPFS等。
基于区块链的分布式云存储***没有中心化的服务器。因此,具有中心化的云存储模型所不具备的一些优点:首先,没有了中心化的服务器,因服务器故障以及服务器安全漏洞造成的数据不可用问题大大降低;其次,采用用户侧加密保证了数据安全性,采用可恢复性证明保证了数据的完整性;另外,开放的存储市场可以降低存储成本,并且在抵制审查制度、外部干预、非授权访问等方面具有一定的优势。
以Storj为例,分布式云存储的存储过程:Storj鼓励用户将自己空闲的硬盘空间出租给网络,组成分布式的的存储空间,这样的用户被称为农户,相当于比特币网络中的矿工。当用户要上传文件时,首先,由用户在客户端对文件进行分块、加密,然后分散地存储到网络,并使用分布式哈希表(DHT)来存储文件碎片的位置信息。文件碎片存取能更好的保护数据安全性,因为没有一个农户拥有完整的副本。其次,为保证文件可用性,Storj提供了可恢复性证明以及冗余策略。另外,Storj采用区块链来记录信息,而不是采用中心化的数据库。区块链上并不存储文件内容,而是存储文件的元数据,包括文件的哈希、merkle根以及其他必要信息。最后,Storj提供了一种奖励机制,为区块链矿工和提供存储空间的农户提供代币奖励。然而,Storj采用中本聪式的区块链,账本是开放的,每个人都可以看到里面的每一笔交易以及交易的踪迹,因此存在隐私泄露问题。
关于区块链数据隐私保护问题,已有一些工作。DASH使用混币技术来提供支付的保密性,通过将不同的交易混合然后分发给接收者,以此实现交易的匿名。ZCASH使用零知识证明技术,保证了只有那些拥有查看密钥的人才能看到交易的内容。用户拥有完全的控制权,他们可自行选择向其他人提供查看密钥。Monero对交易进行完全的隐藏,可以对交易发送方、接收方、交易内容进行隐匿。对于分布式云存储的隐私保护方案,目前已有一些工作,主要是对分布式云存储的奖励机制进行隐藏,实现分布式云存储过程中代币交易过程的隐私保护,分别对交易发送方、接收方、交易内容进行隐藏。对于交易发送方,采用环签名进行隐藏;对于交易接收方,采用隐匿地址技术;对于交易内容,采用混币方法。但是,该方案只对分布式云存储的代币交易过程进行隐私保护,对于文件存储过程,隐私泄露问题依旧存在。
发明内容
发明目的:本发明的目的在于解决现有技术中存在的不足,提供一种分布式云存储***的隐私保护方法,本发明实现分布式云存储过程中的隐私保护,不仅实现交易过程的隐私保护,而且实现存储过程中用户相关、文件相关的隐私保护。
技术方案:本发明的一种分布式云存储***的隐私保护方法,所述分布式云存储***包括用户、矿工和存储提供方;用户包括数据所有者μi和数据使用者μj,数据所有者μi使用***服务将数据外包给存储提供方,进行下载和删除操作,同时数据所有者μi将文件分享给数据使用者μj;矿工和存储提供方为用户提供分布式云存储服务,其中,矿工负责打包区块和维护区块,存储提供方将自己空闲的硬盘空间出租给网络组成分布式的存储空间;另外,矿工和存储提供方通过提供服务获得代币奖励;
隐私保护方法具体包括以下步骤:
(1)***初始化:输入公共参数(l,G),l为基点的素数阶,G为椭圆曲线的基点;用户选取随机数a∈[1,l-1],b∈[1,l-1]组成私钥对(a,b),a≠b;同时,用户计算A=aG,B=bG,作为公钥对(A,B);另外,用户计算ripemd160(sha256(A,B))作为其标准地址,同时也作为其ID;
l=2252+27742317777372353535851937790883648493;
(2)文件上传,即数据所有者μi要将文件Fi上传到分布式存储***;
(3)文件删除,即数据所有者μi要删除其对于文件Fi的所有权;
(4)文件分享,即文件Fi的所有者μi授予数据使用者μj文件Fi的所有权;
(5)文件下载。
进一步的,所述步骤(2)的详细过程如下:
(2.2)当***接收到数据所有者μi的上传请求,***中的矿工开始执行工作量证明算法POW来争取记账权(即交易打包权);执行完POW算法后,假定矿工Nodej获取到记账权;然后矿工Nodej通知数据所有者μi开始上传文件:
Nodej→μi:upload,hashi
(2.3)当数据所有者μi接收到上传指令,μi在客户端侧使用同态加密算法AES256-CTR加密文件Fi:Fi′=Enc(Fi),其中加密密钥为文件哈希hashi;然后,μi在客户端侧对加密后的文件Fi′进行分块得到文件碎片{shard1,shard2,...,shardn},其中每个碎片大小为8M,不足8M的空间用0填充;接着数据所有者μi求取各碎片哈希{hashsh1,hashsh2,...,hashshn}并建立Merkle Tree,用于文件审计;最后,μi将文件碎片分散地存储在***中,并在分布式哈希表(DHT)中生成文件索引;同时,矿工Nodej将文件元数据(Merkle根、文件哈希值等)打包进区块,其中metadata={hashi,MerkleRooti};矿工Nodej通知数据所有者μi开始打包交易:
Nodej→μi:transaction,hashi
(2.4)当数据所有者μi接收到交易打包指令,μi开始生成文件上传交易Txk,上传交易中交易发送方和接收方都是数据所有者μi。
进一步的,所述步骤(2.4)中文件上传交易生成的具体过程如下:
(2.4.4)μi将Rk,Pk,Ik以及Proofk打包进交易Txk,然后μi计算环签名σk,对交易Txk进行签名并发送到网络;网络中任何一方都可以验证交易签名,并且不会泄露交易发送方;
(2.4.5)矿工节点Nodej验证交易并将交易打包进区块;
其中,数据所有者μi作为交易接收方向矿工节点Nodej发送交易Txk信息Pk,Ik,Proofk来验证μi对于文件Fi的所有权,并用于消费(分享、删除、下载操作)。
进一步的,所述步骤(3)中数据所有者删除文件所有权的详细过程如下:
(3.1)首先,数据所有者μi向***广播删除请求:
(3.2)当***接收到μi的删除请求,***中的矿工开始执行工作量证明算法POW来争取记账权;执行完POW算法后,假定矿工节点Nodej获取到记账权;
(3.3)矿工节点Nodej验证μi对文件Fi的所有权;
(3.4)当数据所有者μi通过所有权验证以后,矿工节点Nodej从地址为Pk的交易获取其密钥镜像Ik,并将Ik添加到交易失效名单Blacklist,并向全网广播;网络中的矿工节点接收到广播以后更新交易失效名单Blacklist;
上述所有权验证方法为:
进一步的,所述步骤(4)中数据所有者μi要分享文件Fi给数据使用者μj的详细过程如下:
(4.1)首先,μi向***广播分享请求:
(4.2)当***接收到μi的分享请求,***中的矿工开始执行工作量证明算法POW来争取记账权;执行完POW算法后,假定矿工节点Nodej获取到记账权;
(4.3)矿工节点Nodej验证μi对文件Fi的所有权;
(4.4)μi通过所有权验证以后,Nodej向μi发送分享指令:
(4.5)当μi接收到指令,开始生成文件分享交易Txτ,其中,μi作为交易发送方,μj作为交易接收方;
(4.6)μj作为交易接收方,检查每一个新生成的区块中的交易,提取交易中的隐匿地址P和交易公钥R′,使用自己的私钥对计算判断其中,为密码散列函数;由于如果μj为该交易的接收方,则等式成立;反之,不成立;
进一步的,所述步骤(4.5)中文件分享交易生成的方法为:
(4.5.4)交易发送方μi将Rτ,Pτ,Iτ以及Proofτ打包进交易Txτ,进一步的,μi计算环签名στ,对交易Txτ进行签名并发送到网络,网络中任何一方都可以验证交易签名,并且不会泄露交易发送方;
(4.5.5)矿工节点Nodej验证交易并将交易打包进区块。
本发明中,Txk为文件上传交易,Txτ为文件分享交易,Txk的交易发送方和接收方都是数据所有者μi,Txτ的交易发送方是μi,交易接收方是μj。
进一步的,所述(5)的详细过程如下:
(5.1)数据所有者μi向***广播下载请求:
(5.2)当***接收到μi的下载请求,***中的矿工开始执行工作量证明算法(POW)来争取记账权;执行完POW算法后,假定矿工节点Nodej获取到记账权;
(5.3)矿工节点Nodej验证μi对文件Fi的所有权;
(5.4)μi通过所有权验证以后,Nodej在DHT网络中查询文件实际存储地址addri,并将下载地址addri返回给μi:
Nodej→μi:hashi,addri;
(5.5)μi使用下载工具将文件从地址addri恢复到本地。
本发明中环签名生成方法如下:
本发明中环签名验证方法为:
有益效果:与现有技术相比,本发明具有以下优点:
1、本发明将分布式存储技术与区块链技术相结合,在实现安全有效的分布式云存储的同时,将文件所有权处理过程作为区块链交易过程的处理,并进一步实现分布式存储中的隐私保护,包括交易发送方、接收方以及交易内容的隐私保护,保证了只有真正的接收者才能精确定位到该笔交易,进而获取文件所有权,并进一步的进行文件处理过程(文件分享、下载、删除等操作)。
2、本发明所述方案可有效抵制数据伪造攻击:在本发明的***模型中,恶意用户可能对***发起数据伪造攻击,即没有文件所有权的用户试图通过向***发送不属于他的交易,来骗取文件所有权。为应对数据伪造攻击,本发明设计一种所有权验证方案,保证了只有拥有正确标准地址的授权用户,才能完成所有权认证。由于用户的标准地址只对矿工和交易双方公开,因而可以抵制数据伪造攻击。
3、本发明所述方案可有效抵制重放攻击:在本发明的***模型中,恶意用户可能对***发起重放攻击,即被取消文件所有权的用户,可能使用其原有的交易来向***证明其所有权。为应对重放攻击,本发明的方案中使用交易失效列表Blacklist来记录失效交易。当用户被取消文件所有权时,对应的交易会被添加到交易失效列表中。进一步的,在进行所有权验证之前,***首先检查该交易是否在交易失效列表中,如果交易存在于失效列表中,则无法通过所有权验证。因而可以抵制重放攻击。
附图说明
图1是本发明实施例中的***结构图;
图2是本发明实施例中的区块结构图;
图3是本发明实施例中的交易结构图;
图4是本发明实施例中的交易生成示意图;
图5是本发明实施例中的交易查找示意图;
图6是实施例中不同环大小情况下,环签名生成和环签名验证的时间开销关系图。
具体实施方式
下面对本发明技术方案进行详细说明,但是本发明的保护范围不局限于所述实施例。
如图1所示,本发明的一种分布式云存储***的隐私保护方法,所述分布式云存储***包括用户、矿工和存储提供方;用户包括数据所有者μi和数据使用者μj,数据所有者μi将数据外包给存储提供方,进行下载和删除操作,同时数据所有者μi可以将文件分享给数据使用者μj;矿工和存储提供方为用户提供分布式云存储服务,其中,矿工负责打包区块和维护区块,存储提供方将自己空闲的硬盘空间出租给网络组成分布式的的存储空间;另外,矿工和存储提供方通过提供服务获得代币奖励;
隐私保护方法具体包括以下步骤:
步骤一、***初始化:输入公共参数(l,G),l为基点的素数阶,G为椭圆曲线的基点;用户选取随机数a∈[1,l-1],b∈[1,l-1]组成私钥对(a,b),a≠b;同时,用户计算A=aG,B=bG,作为公钥对(A,B);另外,用户计算ripemd160(sha256(A,B))作为其标准地址,同时也作为其ID;
l=2252+27742317777372353535851937790883648493;
步骤二、文件上传,即数据所有者μi要将文件Fi上传到分布式存储***;步骤(2)的详细过程如图4所示:
(2.2)当***接收到数据所有者μi的上传请求,***中的矿工开始执行工作量证明算法POW来争取记账权(即交易打包权);执行完POW算法后,假定矿工Nodej获取到记账权;然后矿工Nodej通知μi开始上传文件:
Nodej→μi:upload,hashi
(2.3)当数据所有者μi接收到上传指令,μi在客户端侧使用同态加密算法AES256-CTR加密文件Fi:Fi′=Enc(Fi),其中加密密钥为文件哈希hashi;然后,μi在客户端侧对加密后的文件Fi′进行分块得到文件碎片{shard1,shard2,...,shardn},其中每个碎片大小为8M,不足8M的空间用0填充,如图2所示;接着数据所有者μi求取各碎片哈希{hashsh1,hashsh2,...,hashshn}并建立Merkle Tree,用于文件审计;最后,μi将文件碎片分散地存储在***中,并在分布式哈希表(DHT)中生成文件索引;同时,矿工Nodej将文件元数据(Merkle根、文件哈希值等)打包进区块,其中metadata={hashi,MerkleRooti};矿工Nodej通知数据所有者μi开始打包交易:
Nodej→μi:transaction,hashi
(2.4)当数据所有者μi接收到交易打包指令,开始生成上传交易Txk,上传交易中交易发送方和接收方都是数据所有者μi。
如图3所示,步骤(2.4)中交易生成的具体过程如下:
(2.4.4)μi将Rk,Pk,Ik以及Proofk打包进交易Txk,然后μi计算环签名σk,对交易Txk进行签名并发送到网络;网络中任何一方都可以验证交易签名,并且不会泄露交易发送方;
(2.4.5)矿工节点Nodej验证交易并将交易打包进区块;
其中,数据所有者μi作为交易接收方向矿工节点Nodej发送交易Txk信息Pk,Ik,Proofk来验证μi对于文件Fi的所有权,并用于消费(分享、删除、下载操作)。
步骤三、文件删除,即数据所有者μi要删除其对于文件Fi的所有权,详细过程如下:
(3.1)首先,数据所有者μi向***广播删除请求:
(3.2)当***接收到μi的删除请求,***中的矿工开始执行工作量证明算法POW来争取记账权;执行完POW算法后,假定矿工节点Nodej获取到记账权;
(3.3)矿工节点Nodej验证μi对文件Fi的所有权;
(3.4)当数据所有者μi通过所有权验证以后,矿工节点Nodej从地址为Pk的交易获取其密钥镜像Ik,并将Ik添加到交易失效名单Blacklist,并向全网广播;网络中的矿工节点接收到广播以后更新交易失效名单Blacklist;
上述所有权验证方法为:
步骤四、文件分享,即文件Fi的所有者μi授予数据使用者μj文件Fi的所有权,详细过程如下:
(4.1)首先,数据所有者μi向***广播分享请求:
(4.2)当***接收到μi的分享请求,***中的矿工开始执行工作量证明算法POW来争取记账权;执行完POW算法后,假定矿工节点Nodej获取到记账权;
(4.3)矿工节点Nodej验证μi对文件Fi的所有权;
(4.4)μi通过所有权验证以后,Nodej向μi发送分享指令:
(4.5)当μi接收到指令,开始生成交易Txτ,其中,μi作为交易发送方,μj作为交易接收方;
(4.6)如图5所示,μj作为交易接收方,检查每一个区块中的交易,提取交易中的隐匿地址P和交易公钥R′,使用自己的私钥对计算判断其中,为密码散列函数;由于如果μj为该交易的接收方,则等式成立;反之,不成立;
上述步骤(4.5)中交易生成的方法为:
(4.5.4)交易发送方μi将Rτ,Pτ,Iτ以及Proofτ打包进交易Txτ,且μi计算环签名στ,对交易Txτ进行签名并发送到网络,网络中任何一方都可以验证交易签名,并且不会泄露交易发送方;
(4.5.5)矿工节点Nodej验证交易并将交易打包进区块。
步骤五、文件下载的详细过程如下:
(5.1)数据所有者μi向***广播下载请求:
(5.2)当***接收到μi的下载请求,***中的矿工开始执行工作量证明算法(POW)来争取记账权;执行完POW算法后,假定矿工节点Nodej获取到记账权;
(5.3)矿工节点Nodej验证μi对文件Fi的所有权;
(5.4)μi通过所有权验证以后,Nodej在DHT网络中查询文件实际存储地址addri,并将下载地址addri返回给μi:
Nodej→μi:hashi,addri;
(5.5)μi使用下载工具将文件从地址addri恢复到本地。
实施例
为评估本发明的性能表现,以如下实施例测量部分算法的时间开销。
为评估***开销,实施过程采用基于CryptoNote协议的开源DigitalNote平台,并且根据***需求,完成相关算法实现。为了评估***开销,在实施过程中在本地部署测试链实验环境,其中,本地部署了三个矿工节点以及三个钱包终端进行实验,并对***主要步骤的主要算法的时间开销进行分析,并进行时间开销的测量。其中,TFile为客户端文件处理的时间开销,包括文件哈希操作时间、文件分块操作时间、文件分块上传时间;TTx为用户侧生成交易操作的时间,包括计算目的地址操作的时间、计算环签名操作的时间、发送交易操作的时间;另外,Tdel,Tchk,TPOW,TDHT分别为删除交易操作的时间、交易验证操作的时间、文件所有权验证操作的时间以及DHT查询时间。对各阶段时间开销分析总结见表1。
表1***时间开销分析表
另外,本实施例的算法时间开销如表2所示。
表2主要算法时间开销
算法 | 时间开销 |
生成目标地址 | 36ms |
发送交易 | 31ms |
创建交易 | 0.0093ms |
查找交易 | 22ms |
生成密钥镜像 | 0.164ms |
另外,如图6所示,为不同环大小情况下,环签名生成时间和环签名验证时间。
Claims (5)
1.一种分布式云存储***的隐私保护方法,其特征在于:所述分布式云存储***包括用户、矿工和存储提供方;所述用户是使用***服务的实体,包括数据所有者μi和数据使用者μj,数据所有者μi将数据外包给存储提供方,并使用***服务进行下载和删除操作,同时数据所有者μi将文件Fi分享给数据使用者μj;矿工和存储提供方为用户提供云存储服务,其中,矿工负责打包区块和维护区块,存储提供方将自己空闲的硬盘空间出租给网络组成分布式的存储空间;另外,矿工和存储提供方通过提供服务获得代币奖励;
隐私保护方法具体包括以下步骤:
(1)***初始化:输入公共参数(l,G),l为基点的素数阶,G为椭圆曲线的基点;用户选取随机数a∈[1,l-1],b∈[1,l-1]组成私钥对(a,b),a≠b;同时,用户计算A=aG,B=bG,作为公钥对(A,B);另外,用户计算ripemd160(sha256(A,B))作为其标准地址,同时也作为其ID;
l=2252+27742317777372353535851937790883648493;
(2)文件上传,即数据所有者μi要将文件Fi上传到分布式存储***;步骤(2)的详细过程如下:
(2.2)当***接收到数据所有者μi的上传请求,***中的矿工开始执行工作量证明算法POW来争取记账权;执行完POW算法后,假定矿工Nodej获取到记账权;然后矿工Nodej通知数据所有者μi开始上传文件:
Nodej→μi:upload,hashi
(2.3)当数据所有者μi接收到上传指令,数据所有者μi在客户端侧使用同态加密算法AES256-CTR加密文件Fi:Fi′=Enc(Fi),其中加密密钥为文件哈希hashi;然后,μi在客户端侧对加密后的文件Fi′进行分块得到文件碎片{shard1,shard2,...,shardn},其中每个碎片大小为8M,不足8M的空间用0填充;接着数据所有者μi求取各碎片哈希{hashsh1,hashsh2,...,hashshn}并建立Merkle Tree,用于文件审计;最后μi将文件碎片分散地存储在***中,并在分布式哈希表DHT中生成文件索引;同时,矿工Nodej将文件元数据metadata打包进区块,其中metadata={hashi,MerkleRooti};矿工节点Nodej通知数据所有者μi开始打包交易:
Nodej→μi:transaction,hashi
(2.4)当数据所有者μi接收到交易打包指令,μi开始生成文件上传交易Txk,上传交易中交易发送方和交易接收方都是数据所有者μi;
上述(2.4)中文件上传交易生成的具体过程如下:
(2.4.4)μi将Rk,Pk,Ik以及Proofk打包进交易Txk,然后μi计算环签名σk,对交易Txk进行签名并发送到网络;网络中任何一方都可以验证交易签名,并且不会泄露交易发送方的信息;
(2.4.5)矿工节点Nodej验证交易并将交易打包进区块;此处,数据所有者μi作为交易接收方向***发送交易Txk信息Pk,Ik,Proofk来验证μi对于文件Fi的所有权,并用于消费;
(3)文件删除,即数据所有者μi要删除其对于文件Fi的所有权;
(4)文件分享,即文件Fi的数据所有者μi授予数据使用者μj文件Fi的所有权;
(5)文件下载。
2.根据权利要求1所述的分布式云存储***的隐私保护方法,其特征在于:所述步骤(3)中数据所有者删除文件所有权的详细过程如下:
(3.1)首先,数据所有者μi向***广播删除请求:
(3.2)当***接收到数据所有者μi的删除请求,***中的矿工开始执行工作量证明算法POW来争取记账权;执行完POW算法后,假定矿工节点Nodej获取到记账权;
(3.3)矿工节点Nodej验证μi对文件Fi的所有权;
(3.4)当数据所有者μi通过所有权验证以后,矿工节点Nodej从地址为Pk的交易获取其密钥镜像Ik,并将Ik添加到交易失效名单Blacklist,并向全网矿工节点广播;网络中的矿工节点接收到广播以后更新交易失效名单Blacklist;
上述所有权验证方法为:
其中,Rk′,hashi′,MACk′为解密Proofk′之后获取的内容,其含义分别对应Proofk中的Rk、hashi、MACk。
3.根据权利要求1所述的分布式云存储***的隐私保护方法,其特征在于:所述步骤(4)中数据所有者μi分享文件Fi给数据使用者μj的详细过程如下:
(4.1)首先,μi向***广播分享请求:
(4.2)当***接收到μi的分享请求,***中的矿工开始执行工作量证明算法POW来争取记账权;执行完POW算法后,假定矿工节点Nodej获取到记账权;
(4.3)矿工节点Nodej验证数据所有者μi对文件Fi的所有权;
(4.4)μi通过所有权验证以后,Nodej向μi发送分享指令:
(4.5)当μi接收到指令,μi开始生成文件分享交易Txτ,其中,μi作为交易发送方,μj作为交易接收方;
(4.6)μj作为交易接收方,检查每一个新生成区块中的交易,提取交易中的隐匿地址P和交易公钥R′,使用自己的私钥对计算判断其中, 为密码散列函数;由于如果μj为该交易的接收方,则等式成立;反之,不成立;
4.根据权利要求3所述的分布式云存储***的隐私保护方法,其特征在于:所述步骤(4.5)中文件分享交易生成的方法为:
(4.5.4)交易发送方μi将Rτ,Pτ,Iτ以及Proofτ打包进交易Txτ,且μi计算环签名στ,对交易Txτ进行签名并发送到网络,网络中任何一方都可以验证交易签名,并且不会泄露交易发送方的信息;
(4.5.5)矿工节点Nodej验证交易并将交易打包进区块。
5.根据权利要求1所述的分布式云存储***的隐私保护方法,其特征在于:所述(5)的详细过程如下:
(5.1)数据所有者μi向***广播下载请求:
(5.2)当***接收到μi的下载请求,***中的矿工开始执行工作量证明算法(POW)来争取记账权;执行完POW算法后,假定矿工节点Nodej获取到记账权;
(5.3)矿工节点Nodej验证μi对文件Fi的所有权;
(5.4)μi通过所有权验证以后,Nodej在DHT中查询文件实际存储地址addri,并将下载地址addri返回给μi:
Nodej→μi:hashi,addri;
(5.5)μi使用下载工具将文件从地址addri恢复到本地。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811330536.4A CN109508552B (zh) | 2018-11-09 | 2018-11-09 | 分布式云存储***的隐私保护方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811330536.4A CN109508552B (zh) | 2018-11-09 | 2018-11-09 | 分布式云存储***的隐私保护方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109508552A CN109508552A (zh) | 2019-03-22 |
CN109508552B true CN109508552B (zh) | 2021-04-30 |
Family
ID=65747975
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811330536.4A Active CN109508552B (zh) | 2018-11-09 | 2018-11-09 | 分布式云存储***的隐私保护方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109508552B (zh) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110048851B (zh) * | 2019-03-26 | 2020-03-24 | 阿里巴巴集团控股有限公司 | 区块链中生成和验证多层可链接环签名的方法及装置 |
CN110009499B (zh) * | 2019-04-17 | 2021-05-11 | 北京八分量信息科技有限公司 | 一种基于区块链和隐藏地址的交易方法及*** |
CN110197081B (zh) * | 2019-05-30 | 2021-01-15 | 北京理工大学 | 一种基于区块链的云数据共享隐私保护方法 |
CN110633578A (zh) * | 2019-08-26 | 2019-12-31 | 苏州全时空信息技术有限公司 | 智能共享云存储方法与*** |
CN110519059B (zh) * | 2019-09-29 | 2023-05-05 | 四川师范大学 | 一种基于双线性映射的区块链双密钥隐匿地址处理方法 |
CN111079171A (zh) * | 2019-11-11 | 2020-04-28 | 重庆邮电大学 | 一种基于区块链的医疗数据隐私保护方法及存储介质 |
CN111046398B (zh) * | 2019-11-12 | 2022-06-24 | 杭州师范大学 | 一种安全的pdf签章文档互联互通方法及*** |
CN111008836B (zh) * | 2019-11-15 | 2023-09-05 | 哈尔滨工业大学(深圳) | 一种隐私安全转账支付方法、装置、***及存储介质 |
CN111343150B (zh) * | 2020-02-06 | 2022-11-29 | 深圳市网心科技有限公司 | 一种基于区块链的交易数据传输方法、***及相关组件 |
CN111368318B (zh) * | 2020-03-04 | 2022-08-09 | 江苏大学 | 一种面向多模态区块链交易的客体追踪方法 |
CN111371553A (zh) * | 2020-03-16 | 2020-07-03 | 南京工业大学 | 一种可撤销用户的外包加解密cp-abe方法 |
CN111917720A (zh) * | 2020-06-28 | 2020-11-10 | 中科物缘科技(杭州)有限公司 | 基于区块链的文件碎片化加密存储方法、获取方法及*** |
CN111538996B (zh) * | 2020-07-08 | 2021-06-29 | 支付宝(杭州)信息技术有限公司 | 区块链一体机的可信启动方法及装置 |
CN112364370B (zh) * | 2020-10-14 | 2023-04-07 | 天津大学 | 基于区块链的隐私保护云审计方法 |
CN113079162B (zh) * | 2021-04-02 | 2022-08-30 | 浙江永旗区块链科技有限公司 | 一种基于区块链的分布式存储网络及其实现方法 |
CN115618412B (zh) * | 2022-10-11 | 2023-05-16 | 郑州大学 | 一种基于区块链的医疗隐私数据保护方法 |
CN117201170B (zh) * | 2023-10-07 | 2024-02-09 | 广州市城域信息科技有限公司 | 一种增强非对称加密算法安全性的方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106982205A (zh) * | 2017-03-01 | 2017-07-25 | 中钞***产业发展有限公司北京智能卡技术研究院 | 基于区块链的数字资产处理方法和装置 |
CN108462568A (zh) * | 2018-02-11 | 2018-08-28 | 西安电子科技大学 | 一种基于区块链的安全文件存储和共享方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11238543B2 (en) * | 2017-05-06 | 2022-02-01 | Adp, Llc | Payroll based blockchain identity |
-
2018
- 2018-11-09 CN CN201811330536.4A patent/CN109508552B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106982205A (zh) * | 2017-03-01 | 2017-07-25 | 中钞***产业发展有限公司北京智能卡技术研究院 | 基于区块链的数字资产处理方法和装置 |
CN108462568A (zh) * | 2018-02-11 | 2018-08-28 | 西安电子科技大学 | 一种基于区块链的安全文件存储和共享方法 |
Non-Patent Citations (3)
Title |
---|
A Blockchain-Based Framework for Data Sharing With Fine-Grained Access Control in Decentralized Storage Systems;SHANGPING WANG 等;《IEEE Access》;20180629;正文第38439-38442、38445页及图4 * |
Storj:区块链在云存储上的应用;simmel_;《CSDN》;20170720;博文第1-4页 * |
门罗币基础技术介绍;yuanchaoknightt;《CSDN》;20170314;博文第1页 * |
Also Published As
Publication number | Publication date |
---|---|
CN109508552A (zh) | 2019-03-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109508552B (zh) | 分布式云存储***的隐私保护方法 | |
US10824763B2 (en) | Integrity of communications between blockchain networks and external data sources | |
US10673626B2 (en) | Threshold secret share authentication proof and secure blockchain voting with hardware security modules | |
US11405372B2 (en) | Retrieving access data for blockchain networks using highly available trusted execution environments | |
EP3404891B1 (en) | Method and system for distributing digital content in peer-to-peer network | |
Barsoum et al. | Enabling dynamic data and indirect mutual trust for cloud computing storage systems | |
WO2022199290A1 (zh) | 多方安全计算 | |
Yang et al. | Provable data possession of resource-constrained mobile devices in cloud computing | |
CN103780607B (zh) | 基于不同权限的重复数据删除的方法 | |
CN110096894B (zh) | 一种基于区块链的数据匿名共享***及方法 | |
CN114139203B (zh) | 基于区块链的异构身份联盟风险评估***、方法及终端 | |
CN113645039A (zh) | 一种基于不同权限的通信信息传输***及方法 | |
Vasilopoulos et al. | Message-locked proofs of retrievability with secure deduplication | |
CN117097526A (zh) | 一种基于区块链的数据安全共享方法及装置 | |
CN112887281B (zh) | 支持高效审计和多备份密文去重的存储方法、***及应用 | |
Abbdal et al. | Secure third party auditor for ensuring data integrity in cloud storage | |
WO2024113183A1 (zh) | 物联网***及物联网数据处理方法 | |
Chang et al. | A dependable storage service system in cloud environment | |
CN115879136B (zh) | 云端数据保护方法 | |
Chen | Building Cryptographic Systems from Distributed Trust | |
Aziz et al. | Assured data deletion in cloud computing: security analysis and requirements | |
Pulls | Preserving privacy in transparency logging | |
You et al. | Protocols for Cloud Security | |
Khudaier et al. | A Review of Assured Data Deletion Security Techniques in Cloud Storage | |
CN117675383A (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 | ||
TR01 | Transfer of patent right |
Effective date of registration: 20220330 Address after: No. 168, software Avenue, Yuhuatai District, Nanjing, Jiangsu 210042 Patentee after: Bozhi Safety Technology Co.,Ltd. Address before: No. 302, Xuefu Road, Jingkou District, Zhenjiang City, Jiangsu Province, 212000 Patentee before: JIANGSU University |
|
TR01 | Transfer of patent right |