波卡(Polkadot)深度解析

历时三年明星跨链项目—波卡(Polkadot),在这风风雨雨的2020悄然上线了,在Defi重新引爆区块链市场的热潮下,跨链无疑被认定为下一个业界风口,而波卡(Polkadot)的跨链究竟是什么呢?就让我们一起来了解它的始末,也可以知道自己到底在炒什么币(X)

明星创始人— Gavin Wood

说到Polkadot就不能不提到明星创办人Gavin Wood。

Gavin Wood在创立Polkadot之前,是以太坊联合创办人与Web3基金会的创办人,也是以太坊技术长(CTO)。

Gavin Wood最广为人知的就是他是以太坊黄皮书(Ethereum yellow paper)的撰写人,黄皮书可视为是以太坊的技术圣经。

黄皮书当中提出了智能合约专用程式语言— Solidity、以太坊虚拟机(EVM)的概念,Gavin Wood之后作为技术长也包办了以太坊源码、结构、技术整合等工程,奠定了以太坊稳固的技术基础,以太坊能在这么短的时间能进行商业崛起,成为第二大公链,都是建立在其稳定的技术基础上,Gavin Wood可说是功不可没。

Gavin Wood随后创办了区块链技术开发公司— Ethercore,后改为Parity Technologies,Polkadot这一项目也由Parity Technologies所管理。

番外篇— Parity wallet惨案

Parity wallet是由Gavin Wood所打造的以太坊客户端钱包,是当时主打快速与使用体验极佳的钱包之一,但先后在2019年的7/20与11/6发生两起技术漏洞,造成大量金额损失。

7/20:骇客透过该Parity Wallet中的多重签名(multi-signature)功能漏洞,使黑客将钱包的所有权转移到自己手上(正确来说,是控制后头智能合约的所有权),从而窃取了15.3万颗的以太坊,折合当时市价约3000万美元。(这还是白帽骇客抢救过后的损失…)

11/6:GitHub 用户devops199 发表了代号#6995的提案— 「任何人都可以删除合约」,然后声称自己将Parity wallet的合约删除了。

devops199透过调用合约的公开函数,将合约的所有权移转给自己(又来了)

结果他就把合约删掉了…

结果他就把合约删掉了…

结果他就把合约删掉了…

当时Polkadot已经成功结束一轮融资,devops199这么一搞,除了93万颗ETH就这么被冻结了(当时市价约2.8亿美元),也冻结住Polkadot融资获得的30万颗ETH(约为9000万美元) 。

Polkadot跨链结构

背景介绍完了,我们该来看看Polkadot的跨链葫芦中卖的是药了。

先来参阅一下Polkadot白皮书中所提到的跨链架构:

来源:Polkadot白皮书

好的,可以跳过不看整张图。

这张图中我们只需要先找出中间白色的Relay chain、旁边白色圆点连接的Parachain,以及下方连结Ethereum的Parachain bridge就好。

中继链(Relay chain)、平行链(Parachain)、桥(Bridge),为Polkdadot跨链的核心架构。

中继链(Relay chain):

Polkadot网络的底层,也是我们一般称为的「主链」,负责共识算法与交易,验证平行链中的资讯,以确保全局一致性。

平行链(Parachain):

平行链可视为中继链的「子链」,这些链有自己的状态机、自己的规则、自己的代币、以及自己的区块验证机制。

从上图的环状结构中,旁边的白色圆点都是连接中继链的「插槽」,而在Polkadot的中继链上,任何人皆可建立属于自己的Token与自己的应用场景,将产生的数据与程式运算后纪录于中继链上。

转接桥(Bridge):

转接桥为Polkadot跨链的核心架构,可视为是特殊的平行链。

Polkadot可透过转接桥,将例如比特币、以太坊的资料连接到平行链上,目前Polkadot有三种跨链机制:

1.桥接合约(Bridge Contracts):

透过在平行链与其他主链(例如:比特币、以太坊)上部署智能合约,以此达到跨链沟通的效果。

2.跨平行链通讯(Cross-Parachain Communication):

平行链之间可透过Polkadot的ICMP(Inter-Chain Message Passing)机制进行通讯,主要过程为

A将自己需要跨链的交易/讯息放到自己的输出等待列中

A的资料收集人将资料提供给A的验证人

验证人验证成功后将A的区块链讯息与等待列资料提交到中继链上

中继链透过共识算法进行确认后,中继链上的验证人将A的交易从A的等待列中输入至B的等待列中

B根据等待列的资讯修改自身的区块链帐本

3.内置桥接模块(In-built Bridging Modules):

将内置模块直接串接到特定的链上,例如比特币或以太坊,可以将其他主链的资料直接,概念上可将其他主链视为Polkadot的平行链,这一做法可快速地与其他主链进行对接,实现代币经济的扩展,但也同时否定掉桥接合约的必要性。

说了这么多专有名词,用最简单的方式来解释:

Polkadot就像一个延长线(中继链)。

延长线上有很多插槽可以连接各式家电(平行链)。

平行链可以透过连接桥串接不同的主链。

共识算法

Polkadot需要所有的节点达成共识后才能继续延续区块链,通过共识机制也能使所有节点状态彼此同步,目的在于能提供所有Polkadot网络的参与者客观事实,而这些网络参与者(平行链)也有自己的规则,最终互相同步以延续新的区块。

Polkadot的共识机制采取混合共识,分为GRANPA与BABE两种,其中GRANDPA用于区块的确认,BABE用于区块的产生。

BABE ( B lind A ssignment for B lockchain E xtension):

BABE的核心在于「随机挑选不同的验证人,在每一个插槽中生成一个区块」。

BABE会根据参与插槽并抵押代币成为验证人之中进行抽奖,根据抽奖结果决定谁是生成区块的候选人,一个插槽有6秒的时间。

而这个「插槽」可能会有多个验证人,也可能没有验证人。

若同一个时间段选中多个验证人,采取先到先得,谁先将区块传送到最多的节点中即为获胜。

若没有验证人,Polkadot会透过后台选定一个验证人以避免验证人消失的状况发生,让他生成次级区块(Secondary block),以确保区块产生的完整性。

GRANDPA ( G HOST-based R ecursive AN cestor D eriving P refix Agreement):

类似拜占庭协议,只要有2/3的节点是诚实的,并且可以在不同步状态中运算1/5的节点,就能维持此网络在「部分同步」的模型中。

区别在于GRANDPA是在链上达成共识,而不是区块上达成共识,加快了确认区块的过程,所以,即使这个区块链网络长期分区或是其他节点故障,GRANDPA协议仍然会针对某条链达成共识,而非针对区块形成共识。

简言之,透过上述两种共识混合,BABE共识会在GRANDPA共识确定好的链上生成区块,而BABE共识会在具有最多主要区块的链上创建区块,如下图。

来源:Polkadot wiki

Polkadot共识机制中的参与人

共识机制的执行下,共有四种角色:

收集者(Collat​​ors):

收集者类似矿工的角色,帮助验证者收集平行链区块链上的资讯与交易,将一个未打包的区块交给验证者进行验证。

收集者不需抵押代币,在收集资料中以交易手续费作为收集奖励,但不会收到区块奖励,此外,收集者必须维运一个平行链的全节点。

提名者(Nominator):

为共识机制中的代理制度。

提名者可抵押DOT提供给可信任的验证人参与共识机制,所以持有DOT代币的人皆可以成为提名者。

提名者可能是持有少量DOT的投资人,也可能是缺乏维护节点的相关技能,因此无法成为直接的验证人。

验证者(Validator):

验证人负责Polkadot网络的出块,也是整个Polkadot网络中权限最大的角色。

验证者需要抵押DOT并运行一个中继链的节点,对提名出的平行链区块进行验证,当这些平行链的区块被验证者确认后,验证者就会将区块组装到中继链上进行共识算法。

如果验证人履行职责,则可获得区块奖励+交易手续费,但若未履行职责(如:稳定出块),则根据情节没收部分或全部的DOT,将DOT销毁一部分,其余的分配给优良的验证者。

验证人的惩罚级别分为4个等级,等级后方的括号为其最高惩罚额度:

Lv 1(扣除0.1%代币or踢出节点池):该验证而未验证,或是低安全威胁级别

Lv 2(扣除1%代币):无恶意但却因为不良操作而导致不良结果

Lv 3(扣除10%代币):恶意导致之不良行为,但不会造成高安全威胁或占用大量主网资源

Lv 4(扣除100%代币):对系统造成严重安全威胁、验证者节点之间互相串通、不良行为导致系统花费大量资源

验证者是以组的形式存在,验证者由中继链进行统一管理,可视为一个「验证者池」,与平行链区隔开来,通过共识算法随机分组配发给平行链进行验证。

钓鱼人(Fisherman):

钓鱼人负责审查与监控Polkadot网络中的恶意行为,一旦发现恶意行为就会于Polkadot网络中进行举报。

钓鱼人在举报交易前也需要抵押DOT并且运行节点,此举报过程也需要经过共识机制筛选,如果通过2/3以上的验证就会被打包进区块中,如果这举报有效,钓鱼人就会获得奖励,而这奖励随着恶意行为的严重性可能会非常丰厚,但若是钓鱼人进行虚假的举报,抵押的DOT也会被没收作为惩罚。

来源:Polkadot light paper

由这四种角色所组成的机制也被称为提名权益证明— NPoS(Nominated Proof of Stake)

简单的用属性来区分以上四位角色,

交易手续费奖励:验证者、收集者

区块验证奖励:验证者、提名者(由验证者分润)

举报奖励:钓鱼人

需质押DOT:验证者、钓鱼人、提名者

DOT代币经济

Polkadot代币简写为DOT,为Polkadot网络中的原生代币。

初始发行量为1000万DOT,随后接着通货膨胀增加代币总量,而这通货膨胀的系数,经由官方目前提出的模型来算,约为主网DOT抵押率达50%时,通膨率为10%

初始发行量中,第一轮募资卖出50%的DOT(1.44亿美元),第二轮卖出5%DOT(6600万美元),30%预留给Web3基金会,15%待后续分发。

DOT除了买卖以外,在Polkadot网络中有什么用途呢?主要有以下几种:

治理(Goverance):

DOT 的持有者,透过治理机制可以管理Polkadot网络中的重要事件,例如:协议的升级和修复。

营运(Operation):

为维持Polkadot主网的运作,将DOT的质押与奖励分发给收集者、验证者、提名者、钓鱼人四种角色,这四种角色的权责可参阅上方的共识机制

操作(Inter-operability):

于Polkadot区块链上进行交易的发送与传递讯息,可能会使用DOT作为手续费,其概念等同于以太坊的Gas,但这手续费不是必需的。

绑定(Bonding):

新的平行链需要通过绑定DOT 来加入网络中,也就是我们之前所提到的「插槽」。

无人维护或是没人使用的平行链也可以通过解除绑定DOT 以从网络中删除。

平行链的插槽拍卖‌

按照目前官方的说法,在Polkadot 运行的第1年或2年之间,随着各类实现的优化,平行链插槽将从5 个增加至50 到200 个,未来会随着主网的状态进行增减,以确保确保Polkadot 中继链的安全性。

控制初期的平行链数量,也可以有效的维持插槽与DOT的供需平衡,促使验证奖励够吸引人以成为验证者。

Polkadot网络通过拍卖机制来竞拍平行链的使用权,此拍卖机制为调整过后的蜡烛式拍卖,可以当作是英式拍卖的变种。

蜡烛式拍卖:随机决定拍卖结束的时间,目的是确保没人能确切知道拍卖会何时结束并进行最后一秒的竞标。

出价最高的人需要在主网中锁定一定数量的DOT,才可以在一定时间段内拥有所拍得平行链的使用权。‌

这代表想要使用Polkadot 上的平行链,需要购买并锁定大量DOT ,直到不想再使用这条平行链为止。‌

总结

回首2020之前风风雨雨的公链项目,Polkadot所提出的概念依旧具有前瞻性。

在未来的区块链生态中,跨链的资产与资讯互通是必然的趋势,单以最近火热的Defi议题来看,各Defi都在考虑将BTC纳入Defi的资金选项,唯有资产能互通于各种主链之间,将流动性扩展开来,才能建构出健全的金融生态。

对区块链的开发者而言,Polkadot提供了一个新的技术场域,甚至可以说是开发者的乐园,在这里可以打破公链的框架,也能探索更多区块链在商业应用上的可能。

但,再好的经济模型与技术架构,有时候也抵挡不了人性血淋淋的贪婪。如今,Polkadot的进程尚未实现到治理阶段,也是众多投资人所关心的议题之一,在这个任何事都有可能发生的2020,我们该做的就是充实对区块链技术的了解与认知,谨慎地配置自己的资产。

本文链接地址:https://www.wwsww.cn/qtszb/6292.html
郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。