注册
关闭
区块链大帝

区块链大帝

发布于 2020-01-20 阅读数 2604

观点丨从区块链应用落地看区块链共识

1月18号20:00,BlockMania AMA直播第43期继续进行,本期活动由著名技术社区Comunion主办,BlockMania协办,本期主题为「从区块链应用落地看区块链共识」,分享嘉宾为FileStorm创始人傅献农,清华大学毕业,获美国佐治亚州立大学计算机硕士学位,在美国 IT 行业工作二十年,有丰富的行业经验。主要研究方向包括区块链,大数据,人工智能,商业智能,和企业级软件架构。

以下为本次AMA全程回顾(有删减)

 

1、区块链共识是什么?

共识机制是区块链的灵魂。就像一个国家的法律,维系着区块链世界的正常运作。区块链最早的共识是工作量证明(POW),比特币和以太坊都是采用的工作量证明。

现在流行的一个趋势是权益证明(POS)。以太坊2.0就会采用 POS 共识,还有最新的公链如 Tezos,Polkadot,Algorand 等等。

权益证明还包括委托权益证明(DPOS),代表公链有EOS。FileStorm 现在就是采用的 DPOS 共识,联盟链就还有 PBFT, RBFT 等等共识。共识是区块链的灵魂,是区块链价值的基础。

详细介绍参见:

https://www.jianshu.com/p/2f29f3909b11

2、为什么需要共识?

 

从技术上讲,因为区块链是去中心化的。所有参与的节点需要有一个共识,才能维护一条唯一的链。这个选择唯一的链的方式,是一个规则,可以是大家竞争得到,也可以是投票得出。

这个规则,就是共识。所以也可以说,区块链共识的目的是决定出块权。

工作量证明的基本思想就是用算力来决定出块权。如果你能第一个解出 POW 的计算难题,你就可以出块。

在每一个时间点,大家都在算题,然后在差不多的时间里,大家把题算出来,再把计算结果发布出去。这其实就是一个投票的过程。发布的块就是投的票。最后被选中的票,就是来自于那个最快算出结果的矿机。至于没有发布块的节点,相当于弃权了。

工作量证明的一个最大优点,就是所投的票和投票权是绑定的。而且一旦投票成功以后,即使是投票者本人也修改不了投票的内容。因为一般在出块前,节点就已经打包好一个块,然后才对这个块做工作量证明,做完后马上投出去。这个时候打包的块已经没有办法修改了。所以工作量证明的安全性很有保障。

缺点就是延迟比较高,因为我们把交易打包到区块以后,还要完成一个工作量证明,这个区块才能称为候选区块。工作量证明的时间还不能设得特别短,否则容易分叉。

于是,至少从打包好区块到做完区块的工作量证明这一段时间内,交易是能被确认的。

POW 机制另一个被人诟病的点就是能耗特别高,不环保。因为哈希运算耗电。所以,要想让区块链支持大规模的商用,POW 需要改变。所以,就有了 POS。

跟 POW 不知道有多少矿机参与挖矿不同,POS 协议必须知道所有共识参与者的数量和它们的持币量,然后去分配打包权和投票权。

所以 POS 的共识建立在大家经济上对一条链的投入多少。在 POW 里面,打包权和投票权是一起的,但是在 POS 里,这两者是可以分开的。

有区块以前就知道谁有投票权了。拿到投票权以后,可以随便地去投,这就意味着我可以选择的策略空间更大,整个博弈会变得更复杂。

通常来说,策略空间大对于安全性是不好的,因为给攻击者留出了更大的操作空间。这对链的安全性是有挑战的,因为节点可以通过一票多投,或者放弃投票来做恶。

但是在 POS 系统中,节点做了质押,如果检测到有参与者违反了 POS 共识的协议,可以对他们做出一些惩罚。委托权益证明 DPOS是 POS 的变种。

因为在去中心化机制中,我们需要选举谁负责打包,谁负责投票。有时候为了效率,大家会先选出一个比较小的委员会,然后由他们负责投票。这样的委员会通常是随机选取的,而且为了公平性还要经常轮换。

或者还可以用代理权益证明的 DPOS 机制,选取相对固定的委员会负责打包和投票。这样虽然损失一些去中心化程度,但是可以大大提高效率。

FileStorm就是用的 DPOS 机制,我们的节点协助我们推广平台,这也是为什么我们的平台能发展得这么快。

 

3、能不能再详细的介绍一下当今区块链比较流行的一些共识机制呢?

 

区块链最早的共识是工作量证明,这个大家比较熟知。BTC,ETH,和很多2017年之前出来的公链绝大部分都是采用的工作量证明。

新的公链大多数采用 POS,所以,我这里主要介绍几个 POS 的共识,主要了解他们的基本原理和各自的差异。

1、Tendermint

这是跨链平台 Cosmos 采用的共识。可以做为了解 POS 的入门共识。Tendermint 每次由不固定的节点发布新块,然后通过 PBFT 的方式让其他所有节点对区块进行投票验证。超过2/3的赞同票就通过,而且是对区块的终极确认,不像 POW 还要等好几个块。但缺点就是,如果投票通不过,就要一直等着。

2、Polkadot

波卡也是一个跨链的平台,它的中继链采用的是 Nominated Proof of Stake,既「提名权益证明」。参与者通过质押成为提名人,然后从提名人里选举出验证者,验证者再负责出块。

验证者的数量可以控制,民主集中,这样效率会高很多。NPOS 跟 DPOS 很像,都是选出少数被选中节点出块,但是 DPOS 选出来的都是大财阀,需要做大量质押。NPOS 更民主,草根更容易参政,而且验证者轮换也更频繁。

3、Algorand

前面提到,POS 共识的一个本质问题就是出块权由大家投票决定的,所以在出块前大家就知道谁是出块节点,这样容易被攻击;而出块节点也可以选择各种打包策略将自己的利益最大化。

那如果有一种机制,可以随机的产生一个节点,这个随机性是不可以被轻易预测到,但可以是大家很容易验证的,那就可以采用这样的方式来选举出块节点了。

Algorand 就找到了这样一个产生随机节点的方式。这种方法其实就跟 POW 的方式很接近了。大家都可以打包提交候选区块,但最后不是看谁最快算出题,而是通过一个真随机数,选出唯一的下一个出块。

4、Casper

Casper是以太坊 2.0 将要采用的共识方式,Casper有了权益质押,有了投票机制,但现在还是一个 POW 和 POS 的混合体,将来要慢慢发展成一个完全的 POS 协议。

因为要对现有的基于 POW 的以太坊进行升级,它考虑更多的是链的可用性而非最终一致性。Casper出块还是会通过 POW,然后再由 POS 节点投票。

投票的节点有点像是在赌博,可以随便投任何块,但是如果你没有投中最后被选中的块,会受到惩罚,所以最后大家都会趋向投最长的链上的一个块。

5、FileCoin

这是我们分布式存储行业里的一个明星项目,他采用了一种新的共识机制叫预期共识。这可以理解成一种新的 POW 或者 POS 模式,说它是 POW,因为他把算力挖矿改成了存储挖矿,说他是 POS 是因为它给投票权的理由不是看 Staking 里的通证数,而是看你的有效存储量。

其实每个项目的共识都很复杂,这里只是蜻蜓点水一样的讲一下。

从前面的分享中,大家可以看到,其实 POW,POS,包括 DPOS 都不完美,未来 FileStorm 将继续研究一种理论上无懈可击,又具有实用性的区块链共识。

FileStorm 采用的 DPOS 共识,前期对我们的项目启动帮助很大。但是未来我们希望能让我们的项目走向更加去中心化的公链共识。同时实现多链架构,更好的支持更多的存储应用。

 

4、从区块链应用落地看区块链共识,能否谈一下落地应用和共识的关系?

 

刚才一直谈共识,为什么需要共识?因为区块链改变的是人类的生产关系。以后没有老板和员工了,不存在谁为谁打工,而是大家为了共同的目标一起奋斗。

但是每个人的诉求是不一样的,为一件事愿意做的付出也是不一样的,如果希望通过区块链的激励机制来实现利益的公平分配,大家就需要对区块链高度认同,这个认同就是共识。

POW 通过算力投入实现共识,POS 通过资金投入巩固共识,共识的价值通过通证来体现。共识越强,通证的价值就越高。但是,如果这个通证不能真正实现应用,那这个通证就是空气币,就迟早要归零。

比特币因为是世界上第一个区块链的实现,共识强大,所以虽然它还没有实现中本聪赋予它的成为点对点的电子支付系统这个使命,它依然有价值。它是加密货币的黄金。

但是以太坊的价值来自于它实现了智能合约。这个智能合约让开发基于区块链的应用成为可能。代币发行,去中心化金融,都是它的应用。

FileStorm 的价值来自于发行的通证可以用来做存储。用户用通证购买存储,矿工通过提供存储服务来赚取通证,这就形成了一个经济闭环。这个经济闭环就能体现区块链的价值。很遗憾的是,当今实现经济闭环的区块链应用很少,FileStorm 是为数不多的一个。

但是我们要乐观的看问题。整个区块链行业还很新。基于区块链的应用占有的市场份额还很小,前途无量。使用我们存储的用户还远远不够,我们的业务未来会成指数级增长。我们的通证价值也会不可估量。如何让更多的用户知道我们的应用,就需要更多的人帮我们去布道,去加强大家对 FileStorm 的共识。这也是每一个区块链应用必须走的路。

 

Q&A

Q1:共识的前提是需要有共识者,一般是如何寻找共识者呢吗?非公链项目如何设计共识呢?

您这里有两个问题:

公链如何寻找共识者。其实1CO是一个公链寻找共识者的好方法,因为一开始就从经济上把共识者绑定。ETH就是一个非常成功的案例。可惜后来被玩坏了。DPOS 其实也是一个很好的方法,可以早期就找到金主做盟友一起推广。但是缺点是盟友可能成为利益冲突者。权利太大,影响共识发展。

非公链项目如何设计共识:这个用联盟链的方式可以实现。其实比公链简单。

Q2:能评论一下POC共识吗?

您说的 POC 是指的 proof of capacity 硬盘存储空间挖矿对吧?这个跟我们存储挖矿行业很接近,因为用的是硬盘空间做共识。

跟比特币用算力挖矿不一样的是。POC 提前把哈希运算做好,存在硬盘里,像存了一堆彩票。然后到点抽奖,抽中了谁,谁就出块。

Q3:您是怎么看待集权与效率,投票与共识的呢?

这个问题非常好。也是我们常常讨论的。集权提高效率,但是牺牲去中心化。投票民主,但是效率降低。

我觉得每个项目要根据具体情况选择共识。看注重的是效率,还是民主。

不是每个项目都追求高TPS,这样的话,选择慢一点的区块链也挺好的。FileStorm想做多链生态,就是看到每个项目都不一样,未来我们希望能支持基于各类共识的应用。

Q4:您认为共识和效率能否共存呢?如果能,那么有什么方法呢?

现在就是共存的呀。只不过是以互相博弈的方式共存。联盟链的效率很高。如果这个共识能被认可,联盟链足够了!

做为原教旨主意区块链信仰者,我原来其实更支持公链。直到我看到谷歌的Libra,一个巨大的联盟链平台,只要拥护的人多,共识一样很强大。

Q5:现在底层的组件或协议除了 IPSF 以外还有别的类似基于区块链的分布式存储吗?

底层协议很多,不是一定需要IPFS。FileStorm也在IPFS的基础上做了很多改造,这是FileStorm最新的数据传播协议层架构。

BlockMania是区块链咨询智库,旨在将区块链行业最深度的认知和思考带给行业与公众。如同区块链一样,我们认为每一个idea都有成为连接另外的idea而成为节点的可能性,因此我们要搭建一个将idea从点连接成线,从线汇聚成网络的平台。

在过去的一年里,围绕区块链市场、技术、应用等话题已举办多场高质量线上AMA活动,欢迎关注。

  • 0
区块链大帝
区块链大帝

0 条评论