【IPFS】Filecoin: 一个去中心式存储网络(第二章)

2、去中心化存储网络的定义

本节中我们要介绍去中心化存储网络(DSN)的概念。 DSNs汇聚来自众多独立提供者的存储能力,并通过自我协调的方式为客户提供数据读取服务。这种协调是去中心化的,不需要中心式信任方的参与:协议通过协调和查证独立个体的操作来实现系统的安全运行。根据系统要求,DSNs可以调用不同的协调策略,包括拜占庭协议(Byzantine Agreement),流言算法(Gossip Protocols)或者CRDTs等。稍后在第四节中,我们会提供Filecoin DSN的具体架构。

【定义 一】  DSN方案Ⅱ是由存储提供商和客户运行的协议元组:

(Put; Get; Manage)

  • Put(data)→ key: 客户执行Put协议,在特定的身份密匙(key)下存储数据(data)。
  • Get(key) → data: 客户执行Get协议,读取利用密匙存储的数据。
  • Manage(): 各参与者形成的网络通过Manage协议进行协作,以此来控制可用的存储空间,审查存储提供者供应的服务,以及修复一些可能存在的错误。Manage协议由存储提供商(通常也有客户参与)或者审查网络来运作1。DSN方案Π必须确保数据的完整性和可恢复性,以及在管理和存储中的容错性。这些概念会在后文中给出定义。

2.1 容错

2.1.1 管理错误

我们将存储故障定义为Manage协议参与者导致的拜占庭错误(Byzantine Faults)。基于Manage协议的DSN方案应当具有容错性。如果管理错误违反了容错性假设,可能会影响系统的活跃度和安全性。

举例来说,假设有一个DSN方案Π,它的Manage协议需要拜占庭协议(Byzantine Agreement,BA)来审核存储提供者。在这样一个协议中,网络从存储提供者那里收到存储证明,然后运行BA来验证这些有效性。假节点总数为n,BA最多可以容纳f个错误节点,那么我们的DSN可以容忍的故障节点数为f<n/2 个。如果违反这些假设,审计就要做出妥协。

2.1.2 存储错误

我们将存储错误定义为阻止用户获取数据的拜占庭错误。也就是说,这些错误可能是存储矿工丢失了一些数据片段,或是检索矿工在某些片段中停止了服务。一个成功的Put操作应当是(f,m)-tolerant的形式—如果输入的数据被储存在m个独立存储提供者处(总数为n),可以容纳的拜占庭提供者最多为f。f和m 两个参数取决于协议的实现。协议的设计者可以自行设定这两个参数,也可以把选择交给用户,将Put(data)扩展为Put(data, f, m)。在Get命令中,如果错误的存储提供者数量小于f,该命令就可被成功执行。

举例来说,设想一个简单的方案,其中Put协议被设计为每一个存储提供者都要存储所有的数据。在这个方案中,m=n,f=m-1。但是f=m-1永远成立吗?不,有些方案可能会采用可擦除代码设计,这样的话每个存储提供者都储存整体数据的一部分,这样的话如果m个存储供应者中有x个需要检索数据,就有f=m-x。

2.2 特性

这里我们价绍DSN方案应有的两种特性,以及Filecoin DSN所具备的其他特性。

2.2.1 数据完整性

该属性要求没有任何有限对手(bounded adversary) A可以使客户在Get操作结束的时候接受被更改或伪造的数据。

【定义二】  DSN方案Π在以下情况中提供数据完整性:对任意在密匙k下的数据d进行成功的Put操作,都没有可计算边界的对手(computationally-bounded adversary) A可以让客户在对密匙k执行Get操作结束的时候接受d’,其中d’≠ d。

2.2.2 数据恢复性

该属性要求:给出的Π具有容错假设,如果有些数据已经被成功存储在Π中,并且存储提供者持续遵循协议,那么客户最终应当能够检索到数据。

【定义三】一个具有可恢复性的DSN方案Π要求:如果在密匙下的数据有任意成功的Put操作,其同样存在一个成功的Get操作能让客户检索到数据[1]

2.2.3 其他特性

DSNs可以针对具体应用提供特定的其他属性。本文定义了Filecoin DSN所需要的三个关键属性:公开可验证性、可审查性和激励兼容性。

【定义4】  对于每个成功的Put操作,存储网络提供者可以生成数据已被存储的证明。这个存储证明必须说服任何知道密匙但无法访问其对应数据的有效审核人。满足这种情况的DSN方案Π是公开可验证的。

【定义5】  如果方案能够生成可验证的操作记录,并且该记录在未来可以被查证数据的确在特定的时间内被有效存储,那么一个DSN方案Π是可审查的。

【定义6】  如果存储提供者可以通过存储和检索数据而获得回报,或者因为作弊而得到惩罚—体并且所有存储提供者的最优策略就是存储数据。那么一个DSN方案Π是激励可兼容的。

 

【翻译作者  |  浙江大学IPFS研究会:王备 刘晨 burning 刘哲 |  版权由区块先锋社区所有】

 

原创文章,作者:burning,如若转载,请注明出处:http://ipfser.org/2017/12/07/a2/

发表评论

登录后才能评论

评论列表(18条)

联系我们

在线咨询:点击这里给我发消息

邮件:[email protected]

工作时间:周一至周五,9:30-18:30,节假日休息

QR code