【进阶小课堂】Filecoin的共识机制有哪些特点?

2020-04-23 09:55 来源:IPFS爱好者社区 阅读:4561
让我们先回顾上一期【进阶小课堂】的内容,上一期我们全面了解了Filecoin的融资详情,跟着世界上最聪明的一群人投资,总比自己到处打听小道消息去投资的成功率要高很多,点击下方图片可以回顾往期内容。

让我们先回顾上一期【进阶小课堂】的内容,上一期我们全面了解了Filecoin的融资详情,跟着世界上最聪明的一群人投资,总比自己到处打听小道消息去投资的成功率要高很多,点击下方图片可以回顾往期内容。
区块链被称为价值互联网的基石,而共识机制则是区块链的核心要素,也是区块链的魅力所在,Filecoin作为受投资人热捧的区块链项目,其共识机制着实让不少人着迷。今天,矿哥就和大家一起聊聊Filecoin的共识机制。
   

                                                                        
什么是共识机制?
区块链的自信任主要体现于分布于区块链中的用户无须信任交易的另一方,也无须信任一个中心化的机构,只需要信任区块链协议下的软件系统即可实现交易。

这种自信任的前提是区块链的共识机制(consensus),即在一个互不信任的市场中,要想使各节点达成一致的充分必要条件是每个节点出于对自身利益最大化的考虑,都会自发、诚实地遵守协议中预先设定的规则,判断每一笔记录的真实性,最终将判断为真的记录记入区块链之中。换句话说,如果各节点具有各自独立的利益并互相竞争,则这些节点几乎不可能合谋欺骗你,而当节点们在网络中拥有公共信誉时,这一点体现得尤为明显。

区块链技术正是运用一套基于共识的数学算法,在机器之间建立“信任”网络,从而通过技术背书而非中心化信用机构来进行全新的信用创造。

共识可简单理解为,不同群体所寻求的共同的认识、价值、想法等,在某一方面达成的一致意见。共识机制就是确定达成某种共识和维护共识的方式。

如果说共识是区块链的基础,那么,共识机制就是区块链的灵魂。


常用的共识机制有哪些?


现今区块链的共识机制可分为四大类:工作量证明机制(PoW)、权益证明机制(PoS)、股份授权证明机制(DPoS)和验证池机制(Pool)。

1、工作量证明(Proof of Work,简称PoW):

PoW可简单理解为一份证明,证明你做过一定量的工作。通过查看工作结果,就能知道你完成了指定量的工作。区块链共识算法用的最多的就是PoW。比特币和以太坊都是基于PoW的共识机制。

例如:比特币在区块的生成过程中使用的就是PoW机制,简单理解就是大家共同争夺记账权利,谁先抢到并正确完成记账工作,谁就得到系统的奖励,奖励为比特币,也就是所谓的“挖矿”。矿工通过计算机的算力去完成这个记账工作,这个拥有计算能力的专业计算机就是所谓的“矿机”。

优点:

①完全去中心化,节点自由进出,避免了建立和维护中心化信用机构的成本。

②只要网络破坏者的算力不超过全网总算力的50%,网络的交易状态就能达成一致,并不可篡改历史记录。

③投入越多算力,获得记账权概率越大,越有可能产生新的区块奖励。

缺点:

①目前比特币挖矿造成大量的算力和能源浪费。

②挖矿的激励机制也造成挖矿算力的高度集中

③结算周期长,每秒最多结算7笔交易,不适合商业应用。

2.权益证明(Proof of Stake,简称POS):

通过持有Token的数量和时长来决定你获得记账的机率,类似于股票的分红制度,持有股权越多的人就能够获得更多的分红。Token相当于区块链系统的权益。目前有很多数字资产用pow发行新币。

优点:

①降低了PoW机制的资源浪费;

②加快了运算速度,也可以理解为工作量证明的升级版;

缺点:

拥有币龄越长的节点获得记账权的几率越大,容易导致马太效应,富者越富,权益会越来越集中,从而失去公正性。

3.委托权益证明(Delegated Proof of Stake,简称DPoS):

是基于PoS衍生出的更专业的解决方案,类似于董事会投票,指拥有Token的人投票给固定的节点,选举若干代理人,由代理人负责验证和记账。不同于PoW和PoS的全网都可以参与记账竞争,DPoS的记账节点在一定时间段内是确定的。为了激励更多人参与竞选,系统会生成少量代币作为奖励。比特股就采用该方式。

优点:

相较于PoW,DPoS大幅提高区块链处理数据的能力,甚至可以实现秒到账,同时也大幅降低维护区块链网络安全的费用。

缺点:

去中心程度较弱,节点代理是人为选出的,公平性相比PoS较低,依赖于代币的增发来维持代理节点的稳定性。

4.验证池共识机制(Pool)

这是一种基于传统的分布式一致性技术,加上数据验证的机制,是目前行业链大范围在使用的共识机制;

优点:不需要依赖代币也可以实现秒级共识验证;

缺点:去中心化程度弱,更适合多方参与的多中心商业模式;

总结:每一种共识机制都不能同时满足安全、效率、公平。去中心程度越弱,安全性就越低,区块链的速度就越快;去中心化程度越强,安全性就会越高,区块链的速度就会越慢。PoW完全去中心化,但运行效率太低。PoS提高了效率,但却降低了公平与安全。DPoS有强烈的中心化特性,却在短期内效率最高。目前行业区块链大范围使用Pool共识。


Filecoin的共识机制
对共识机制的探索,Filecoin无疑更具有前瞻性和突破性。Filecoin创新的采用了一种混合共识机制——复制证明(PoRep)+时空证明(PoSt)+ 预期共识(EC),其中复制证明是共识机制中的核心因素,尽管Filecoin的网络协议、共识、其他算法都基本定型,但是复制证明仍然处于不断完善的方案中。
图片来源于Filecoin官方
复制证明(PoRep)是一个交互式证明系统。在这个系统中,存储的提供者需要提供可公开验证的证明,来表明其为一个数据文件副本分配了独有的空间资源,而且所存储的数据是可检索的。
复制证明是新的 PoS存储证明(Proof-of-Storage),PoRep必须能够防范以下三种常见的攻击方式:女巫攻击,外源攻击和生成攻击,他们的共同特点是攻击矿工实际存储的数据大小要比声称存储的数据小,这样攻击矿工就能获得本不该他获得的报酬。
  • 女巫攻击(Sybil Attack):利用n个身份,承诺存储n份数据D,而实际上存储小于n份(比如1份),但是却提供了n份存储证明,攻击成功。

  • 外部数据源攻击(Outsourcing Attack):当攻击者矿工收到检验者要求提供数据D的证明的时候,攻击者矿工从别的矿工那里生成证明,证明自己一直存储了数据D,而实际上没有存储,攻击成功。

  • 生成攻击(Generation Attack):攻击者A可以使用某种方式生成数据D,当检验者验证的时候,攻击者A就可以重新生成数据D来完成存储证明,攻击成功。

防范生成攻击比较困难,所有的PoS协议都会遇到这样的问题,如何保证矿工真正的存储了这些数据,PoRep需要解决这个问题。
因此,Filecoin协议采用一种叫做 RepGame 的游戏来一起解决这三种攻击方式,PoRes还在此基础上引入了时限性(Time Bounded),PoRes协议的实现可能有很多种方式,不管哪种实现方式都必须能够防止上面的三种攻击方式,并且要能够通过RepGame游戏的测试。

时空证明(PoSt)提出了证明链(proof-chain)的数据结构,证明链把一些的挑战(challenge)和证明(proof)链接起来形成。在证明链的基础上添加上时间段,这样就得到了一段时间内的矿工存储数据的证明,这就是时空证明(Proof of Spacetime,PoSt)。
PoSt可以证明在该段时间内矿工存储了特定的数据,并且利用时间戳锚定这些证明链,这样即使验证者(verifier)不在线,也可以在未来的某个时间内利用时空证明去验证该矿工生成了证明链,PoSt会被提交到链上用来产生新的Block。

预期共识(Expected Consensus,EC)是在每一轮里面选举出来一名或者多名矿工来创建新的区块,矿工赢得选举的可能性跟矿工当前的有效存储(算力)成正比。Filecoin把矿工在网络中的当前存储数据相对于整个网络的存储比例转化为矿工投票权(voting power of the miner)。
无论在该周期里,选举出来的是一名还是多名矿工,被选举出来的矿工都需要创建新的区块,并把新的区块对网络进行广播。
尽管链中的区块是线性的,但是Filecoin的区块数据结构采用的DAG(有向无环图),可以在同一时间产生多个区块(所以Filecoin的交易要比BTC的有效的多,这也是为什么把Filecoin叫做“可能的blockchain 3.0”的原因)。

Filecoin首创的混合共识机制,从根本上定义了Filecoin是一个合理高效、去中心化的系统,并体现出Filecoin的公平性、保密性和公开可验证性。
下一期【进阶小课堂】,让我们一起分析Filecoin挖矿的影响因素,欢迎关注。


声明:此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。本网站所提供的信息,只供参考之用。

点击阅读全文