Filecoin技术文档学习10 去中心化存储的网络系统

Filecoin的去中心化存储网络有以下几个特点:

可审计

公开可验证性

带激励。

构成要素:

1, 参与者:需要存储数据的用户,存储矿机,获取数据的矿机

2, 网络全功能节点:管理存储,记账,验证存储证据等功能

3, 账本:存储所有的交易信息

4, 交易市场:存储交易市场和读取数据的交易市场

数据结构

数据片:用户可以把数据分片,然后把不同的分片交给不同的矿机存储

磁盘扇区:矿机的磁盘空间,用来存储用户的分片之后的数据。

数据分配表:数据片与磁盘扇区之间的关系表

订单及订单表:用户与矿机之间需要就数据存储的价格进行协商,用户发起bid存储请求订单,表明自己的数据大小和价格,矿机通过ask订单出售自己的空间和带宽,表明自己的出价和自己磁盘扇区的大小,如果双方价格达成一致则生成成交的deal订单。

抵押品:矿机必须对自己的磁盘扇区给出抵押品,当存储出现异常时会扣减矿机的抵押品。根据磁盘扇区的大小,矿机需要给出一定的代币担保自己不会作恶。

协议:

存储Put协议:

1, 矿机质押:矿机根据自己提供的磁盘扇区大小和可以提供存储的时长,质押一定的Filecoin到区块链,此质押产生一笔交易Tx,如果用户提供的大小和时长没有按照承诺执行,则自动扣除矿机的质押的Filecoin。如果达成承诺,则押金返还。

2, 存储投标:当质押成功之后,生成一个询价订单Oask到存储交易市场

3, 同时修改磁盘扇区分配表,告知网络有新的可用空间

4, 数据存储客户为自己需要存储的数据投标,生成存储订单Obid

5, 存储市场进行订单的匹配,根据Obid和Oask的大小,价格,备份数量进行撮合。

6, 撮合成功之后,用户将加密分片之后的数据传输给存储矿机。

7, 存储成功之后,客户与存储矿机双方对生成签名的成交订单Odeal

8, 根据成交订单信息,修改扇区分配表信息

9, 数据在从客户传输给矿机的过程中,数据是以Sector,扇区为单元进行存储的,每次一个扇区填满数据之后都要进行封存,封存成功之后生成一个证据,作为一笔交易存放在区块链上

10, 存储成功之后,矿机要重复的,每隔一个固定时间生成一个证据,证明自己正在忠实的存储数据,并将生成的证据,作为一个交易存储在区块链上

11, DSN网络会不停的检查存储矿机生成的证据,如果发现异常则对矿机进行惩罚,扣除相应比例的抵押品,如果错误严重,则会重新生成备份数据的订单,对数据重新存储。如果已经无法保证一份数据的完整性,则对用户进行相应比例的赔偿。

读取(Get)协议:

读取协议相对简单,客户与读取矿机通过读取市场进行撮合,成交后对数据下载,下载成功之后将支付结果作为一笔交易存储在区块链上。

Filecoin去中心化存储网络设计原则

1,数据获取的完整性,即存储数据之后可以完整的取回数据

2,可恢复行,容灾备份能力,容错能力(f,m)-tolerant,m个矿机存储了数据,则在f个矿机故障的情况下仍然可以获取完整的数据

3,公开可以验证和可审计性:矿机的存储证据在区块链上,任何用户都可以对该证据进行审计和验证。无需额外的数据交互

4,赏罚分明:诚实的矿机得到奖励,出错或者恶意的矿机得到惩罚

5,私密性:用户的数据经过加密,无法被矿机解密破解

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容