Polkadot共识第1部分:简介

2019-12-30 in  共识-zh-cn
Avatar by Joe Petrowski
Image

翻译:First.vip

来源链接: https://www.first.vip/project/6620.html

本系列文章将讨论Polkadot的安全和共识。在第1节深入介绍Polkadot如何创建和保护区块之前,定义一些术语。

共识算法帮助计算机网络像一台计算机一样运作。实际上,这意味着网络中的几乎所有计算机都必须同意某个初始状态,然后对初始状态的确定性操作日志达成共识,最终达成相同的状态。

虽然区块链给共识算法带来了一些有趣工具,但协调问题不是如今才有的问题。最早追溯到航天,由于太空比较荒凉,卫星或高空飞机上的计算机可能会出现不一致。试想一下,你手上有一个飞行计算机网络,想知道飞机的前进方向。无论询问网络中的哪台计算机都没有关系,因为你始终会得到相同的响应。

这与区块链有何联系?我们同样希望计算机网络就某些值达成共识。这个值可以是帐户余额,表决结果或智能合约的执行结果。

实际上,之前的一些共识算法类似于区块链。早在2001年的一场演讲中,麻省理工学院的教授芭芭拉·里斯科夫(Barbara Liskov)谈论了批量交易是如何提高实际拜占庭容错(PBFT)性能的,当时还没有比特币。

“想象一个非常忙碌的主站(primary),一个接一个的请求令它应接不暇,但这个主站实际上并没有为每个请求启动协议,反而是,它收集一批请求,并针对其中一组请求执行一个协议...因为没有必要每个人都给客户端发送回复。如果其中一位发送回复摘要便足以,因为已足以使客户端知道是否是一致的答复。”

PBFT提供了一组规则,就状态更改达成共识,甚至是就一批状态更改达成共识。

打破区块链共识

在区块链这样的分布式系统,需要回答下述几个问题:

1.谁可以提出下一次更改?

2.哪一组更改为最终更改?

3.如果有人打破规则会怎样?

尽早区分上面三个问题,因为许多区块链共识都是统一的。例如工作量证明,根据证明来筛选合适的区块归属者;最长链决定最终链条;计算证明的成本作为违反规则的惩罚。在波卡,上面三个问题都是孤立解答的。

非区块链系统仍然需要解答这三个问题。例如,假设所有计算机都运行相同的软件。在大多数情况下,这是没问题的。例如波音公司制造了一架飞机,则可以假设他们对飞机上的所有计算机进行了编程。

但是,在公共网络中,我们无法做出这样的假设。区块链利用经济学简化了一些网络假设,所有共识系统都存在“良好”和“作恶”行为。区块链的内置经济属性能奖励良好行为,惩罚作恶行为。PoS网络利用经济作为直接手段,确保达成共识。

区块链系统中的安全性是衡量打破共识的难度。权威证明(proof of authority),安全性是掌控权威的难度。在工作量证明中,安全性是获得和运作大量哈希算力,创建比网络更长链的成本。在权益证明中,安全性是抵押价值和风险价值。

Parity技术和Web3基金会成员开发实现了一个算法库来解决共识和安全性问题。在本系列文章中,开始,我们将先介绍最终性算法GRANDPA,因为所有区块生产算法都必须遵守最终性(头等仓注:finality,最终性指就区块最终状态达成共识)。之后,我们将讨论区块生产引擎BABE,以及如何将区块添加到链中。最后,我们将讨论如何使用经济学来保护GRANDPA和BABE。

来源|波卡官方博客

翻译|头等仓Tracey

编译|头等仓Mark

译文版权属头等仓所有,任何转载请保留文末信息。

arrow_upward
Related articles
Polkadot-zh-cn
Gavin Wood 总结 Polkadot 近一年生态进展,展望 2020 年 Polkadot 2.0 最终设计

翻译:Qinwen、KIKO、Silvia 我在去年的年终总结开头陈列了一些数据,今年似乎也适合继续延续这个传统,首先可以报告一些今年的数据。总的来说,包括 Substrate、Grandpa、Cumulus 和一些其它支持代码在内的 Polkadot 已经拥有了超过 30 万行代码!这是去年完成代码量的 3 倍,而这还并未算上 UI 和智能合约代码库的代码。...

Polkadot-zh-cn
Polkadot年度总结|再见2019年,你好2020年!

为了总结这一年,我们邀请了致力于Polkadot启动工作的同事们来回顾他们在2019 年的工作,并分享2020年他们最期待的事。很高兴能与你一起分享他们的答案(既有严肃,也有轻松!) 提问的回答来自于三大洲的Web3基金会各个团队(从研究和通信到基础架构以及社区与成长)。我们还邀请了主要开发合作伙伴Parity Technologies的一些同事一起来回答。...

共识-zh-cn
Polkadot共识第4部分:安全性

到目前为止,我们已经讨论过BABE是如何创建区块链候选者和GRANDPA如何最终确定它们。我们知道我们需要超过三分之二的验证者来正确遵循协议。但是,到底有多少验证者呢?他们是如何被选择的呢?他们为什么要遵守规则?...

订阅我们的电子报,接收Polkadot最新消息和活动。
mail_outline