阅读本文之前推荐读者先去了解一下pos共识机制的相关文章的相关概念,有助于快速理解本文。
Polygon是Layer 2的扩容方案,它通过侧链进行链下计算以及去中心化的权益证明(PoS)的验证器组成的网络来达到扩容的目的。利用现有的开发者社区和生态系统,在不牺牲去中心化的情况下,解决公链的可伸缩性和可用性问题。在更快的交易速度和更便宜的手续费的情况下支持以太坊上现有的所有应用。以太坊是Polygon支持的第一个基链,计划基于社区建议和共识,为其他基链提供支持,以实现一个可互操作的去中心化Layer 2区块链平台。
Validator(验证者)
Polygon依赖于一组验证器来保护网络,这些验证者是通过链上的定时拍卖程序选择的。这些选定的验证器作为块生产者和验证者参与。一旦一个检查点被验证者验证,就会在父链(以太坊主网)上进行更新,并根据验证者在网络中的份额来释放奖励。
验证者在系统中锁定MATIC令牌,并运行Heimdall验证器和Bor出块节点。他们的MATIC令牌作为抵押以保证网络的安全,提供服务并获取奖励。在每个检查点奖励将按照所有利益相关者赌注成比例分配进行分配。而提议者还会获得额外奖金。
Delegator(委托者)
委托者在系统中发挥关键作用,他们是token持有者,通过将自己的利益委托给选中的验证者节点来保护网络。其委托交易是在以太坊的押注合约上进行的。委托者还可以随时选择退出系统。与验证者类似,委托者必须等待约9天的解除绑定期结束后才能撤回他们的股份。
MATIC令牌与以太坊主网上提交的下一个检查点绑定。委托者通过将代币委托给验证者来下注,以获得了一定比例的奖励。相应的,如果验证者存在恶意行为,其上的每一位委托者都有可能被按其授权的股份比例部分削减。
验证者设定一个佣金百分比,以确定委托者投资他们将获得的奖励的百分比。委托者能够查看每个验证者的佣金分配,以了解投资他们的相对回报率。当验证者蛇者100%的佣金率意味着他们自己有足够的代币,从而不需要寻求委托。
架构
Polygon网络是一个提供混合权益证明和等离子侧链的区块链应用平台,其架构特点是从不同的执行环境(如成熟的EVM侧链)和其他Layer 2方法(如零知识汇总)分离出通用的验证层。
Polygon Network大致分为三层:
Ethereum 层 :以太坊主网上的一组合约。
Heimdall (权益证明层) :一组与以太坊主网并行运行的权益证明Heimdall节点,监控部署在以太坊主网上的赌注合约集, 并将Polygon Network检查点提交到以太坊主网. Heimdall基于Tendermint(分布式一致性软件).
Bor(出块层) — 一组由Heimdall节点打乱用于产生块的Bor节点。. Bor基于Go Ethereum协议库.
![](https://i-blog.csdnimg.cn/blog_migrate/5789afc5348505540cdcd97f4099648d.png)
以太坊上的赌注和等离子智能合约
为了在Polygon上启用权益证明(PoS)机制,系统在以太坊主网上使用了一组权益管理合约。这些智能合约实现了以下特征:
任何人都可以在以太坊主网的质押合约上押注MATIC代币,并作为验证者加入系统。
在Polygon网络上验证状态转换以获得赌注奖励。
在以太坊主网上保存检查点。
PoS机制还可以缓解Polygon侧链的数据不可用问题。
Heimdall (验证层)
Heimdall层处理由Bor生成的块聚合到Merkle树中,并定期将Merkle根发布到根链中。定期发布的Bor侧链快照称为检查点。Bor每创建几个区块, Heimdall层的一个验证者都会进行下面的步骤:
验证自上一个检查点以来的所有块。
创建块哈希的Merkle树。
将Merkle根哈希发布到以太坊主网。
检查点之所以重要,有两个原因:
向以太坊主网提供Polygon区块的最终确定性(Finality)
提供提取资产时的烧毁证明。
流程概述如下:
从池中选择活跃的验证器的一部分在一段时间内充当区块生产者。他们负责创建区块,并在网络上广播所创建的区块。
检查点包括在给定的时间间隔内创建的所有块的Merkle树的根哈希。所有节点验证Merkle根哈希并将其签名附加到该哈希上。
从验证器集中选定的提议者负责收集特定检查点的所有签名,并将检查点提交到以太坊主网。
创建块和作为提议者的机会取决于验证者在整个池中的资金比例。
Bor(区块生成层)
Bor是Polygon的侧链区块生产者——负责将交易聚合到区块中。而且它是验证者的子集,定期由Heimdall验证器进行洗牌。
后面的文章我们会对这些角色做展开。