1. 首页 > 产业新闻 > 节能环保

Polkadot,波卡链:一个畅想跨链通信的区块链基础设施

在介绍Polkadot之前,不得不先说下论文作者:大名鼎鼎的GavinWood。大部分人会说:我只听说过中本聪和Vitalik神童。Gavin行事过于低调和高冷,不是中本聪这样的比特创世纪人物,也不是Vitalik这样的以太坊象征性人物。深入研究过以太坊技术和历史的人,都知道GavinWood做为以太坊创始人的重要性。Vitalik发起了以太坊项目,他个人书写了最初的白皮书,然后发起众筹,组织开发,GavinWood作为CTO加入以太坊,之后撰写了宝典级别的黄皮书YellowPaper,专业术语叫形式化证明,其实也不是数学公式证明,而是对以太坊最细节的逻辑和架构进行了描述,如果你是最大牛级别的程序员,不用照抄Go或Python的客户端,是可以直接对照黄皮书把以太坊重新实现一遍的。以太坊相对比特币复杂了一个数量级,黄皮书全世界能直接看懂的人估计也不超过一百个。之后他几乎是一个人写完了最早C++版本的以太坊客户端cpp-ethereum。另外以太坊还有个Python的原型展示客户端py-ethereum,和真正在用的Go语言的官方客户端Geth。

中继链采用POS共识算法,将主要借鉴Honeybadger,还有Tendermint。假设中继链有144个验证人,会每隔一个块或更长一点时间,随机将验证人分组,然后分配给各个平行链。每组验证人负责这条平行链的数据验证,然后再整体完成中继链区块的共识。大体结构使中继链区块中包含所有平行链区块的块头和类似SPV的树形证明数据,包含跨链交易执行所需的必要数据。然后每条链都有一个入口队列和出口队列,想外发的交易填进出口队列,等待被中继链路由;接收到的其他链的消息会被填入自己的入口队列,然后自己去执行。

平行链由很多固定身份的收集人管理,以收集交易手续费为激励,为中继链提供自己的块头和跨链交易相关的证明数据,这部分数据在Polkadot里称为平行链的候选块,将来由中继链的验证人随机挑选。由于平行链也不一定真有一条链,所以这里的块也是泛指。

【特别声明,是我的理解,并未在论文中详细说明】:平行链会分成两类,第一类是类似以太坊和比特币这样有自身共识系统的区块链,他们有自身的POW矿工来维持链的运转,他们不能直接作为平行链参与到Polkadot网络中来,而是需要新成立一些收集人组建转接桥系统,将以太坊区块的数据整理为中继链所需的格式,这个转接桥系统才是Polkadot的平行链。第二类是还没有出现的过的区块链系统,他们将来的出块人就是收集人,他们链区块的决定权是由中继链的验证人决定的,这类系统可能才真正是Polkadot

所设想的未来平行链。

今年一个很奇怪的事情是,ParityTech用Rust重写了比特币的客户端,我一开始不理解比特币客户端已经是历史悠久了,为什么要重写一个,那些矿池也不会为了快一点去换吧,你们怎么不赶紧去做Polkadot的中继链开发呢。后来想了想知道,这个客户端就是Polkadot的前奏,开发出来也根本不是为比特币现有的矿池做的,而是为了比特币的收集人系统做的,并不参与比特币的出块权争夺,而是为了能更方便地整合将来的上层比特币收集人系统。他们需要维护一个比特币的全同步只读节点,还要参与数据上报,还要在中继链上有权益记账,还要维持中继链的全节点,所以GavinWood干脆就用Rust重新写一个比特币,而不是比如用c++的比特币再套上收集人的逻辑。

以太坊的Parity客户端最近也不更新了,也在紧锣密鼓地为Polkadot进行改造,需要先为这两大系统做出触手,才能对接中继链。所以中继链是一步步根据现有区块链的规则去设计的,而不是无中生有的,每新出现一种区块链技术,中继链的验证规则和路由规则都会重新设计,需要硬分叉级别的改造。不过论文中还提到,以后可能会做出一条纯净的中继链,本身不包含任何平行链的协议,而是用WebAssembly等将区块链的协议做成运行时部署的,再加上中继链的参众两院治理机制,管理中继链的升级。不过这种过于高级,GavinWood说还是以后再弄吧。

一旦中继链这种系统成熟了,平行链其实不用再自己管理共识了,上面所说的第二种平行链就会诞生了。由中继链直接管理共识,平行链收集人只是处理交易,也就不再有转接桥系统了。其实这两种也没有本质区别,只是这一致性和有效性的分界线到底在哪里,Polkadot只是提供了一种选择性。中继链也不是没有有效性,而是其有效性不是为了处理用户的交易需求,而是为了中继链的数据存证计算,中继链上的待路由的交易含义对其是没有意义的,它只是要检查块头、梅克尔树、零知识证明等。所以我们所说的有效性是指大部分的用户交易内容在平行链进行计算,中继链只拿计算结果的哈希存证。

所以Polkadot论文中专门总结了它只做两件事情:合并安全性(Pooled security)、 去信任的跨链交易性(trust-freeinterchaintransactability)。合并安全性的意思就是到底不用都去各自建立一套昂贵的POW挖矿体系,或者新建一个代币没什么价值的POS机制,而是将共识一定程度上让渡给中继链,你就能获得全网安全性的累积。去信任的跨链交易性的意思是所有链的块头都被整合在一起,平行链中要参与跨链的用户和收集人都在中继链开户,中继链管理着跨链交易手续费和跨链数据的惩罚。

本文采摘于网络,不代表本站立场,转载联系作者并注明出处:http://www.fjxmta.com/chanye/jieneng/45504.html

联系我们

在线咨询:点击这里给我发消息

微信号:wx123456