首页 > IPFS > 小白也能看懂的波卡XCMP协议解读
区块链小童鞋  

小白也能看懂的波卡XCMP协议解读

摘要:我们都知道波卡最大的价值是在于成为区块链的区块链,也就是能够将不同链上的资产与业务逻辑(智能合约)打通,让各个区块链摆脱"信息孤岛",从而实现真正的WEB3.0。

我们都知道波卡最大的价值是在于成为区块链的区块链,也就是能够将不同链上的资产与业务逻辑(智能合约)打通,让各个区块链摆脱“信息孤岛”,从而实现真正的WEB3.0。

但在技术上这一点是如何实现的呢,那我们就不得不提到波卡上的链间信息传输协议:XCMP协议。

在此之前,我们先复习一下波卡的基本知识:

波卡的架构组成

波卡的架构一共分为三个部分,其分别是:中继链,平行链与转接桥。

中继链也就是波卡的主链,负责网络的安全性、共识以及跨链的互操作性。平行链一般是指基于Substrate框架开发的同构链(和波卡本身的底层一样),转接桥一般是用于帮助一些异构链(例如ETH,EOSFIL等独立公链)作为接入中继链的媒介。

当然其他的一些组成如平行进程,则属于二级产物,不需要大家深入了解。

除了弄清楚波卡的架构组成之外,我们还需要知道波卡的共识系统有哪些参与者。

波卡共识的参与者们

波卡共识的参与者角色一共有4个,其分别是:提名人,验证人,收集人和钓鱼人。

提名人相当于股东,他们通过投票选出董事会成员(验证人)。验证人负责验证平行链上的区块,并打包区块,是波卡的直接控制人。收集人负责收集链上的新消息和交易,并把这些消息和交易交给验证人,类似于情报收集人员。钓鱼人是作为监督者的角色出现的,负责发现和举报链上的恶意行为。

有了上面这些基本的概念,我们就能够比较容易地理解XCMP协议(波卡上链间信息传输协议)是如何实现的。

XCMP协议的实现

XCMP协议

我们看上面这张图,比较清晰地解释了XCMP协议的运作逻辑。

首先,我们会看到两条平行链:平行链A和平行链B。现在一个用户想要用部署在平行链A上的一个智能合约,发一条跨链调用的消息给平行链B,从而调用位于链B上的合约完成资产转移。

第一步,用户在平行链A上调用智能合约,初始化一条跨链消息,这条消息的目的地是平行链B。

第二步,平行链A上的收集人(就是专门收集链上信息的那个角色)会将这条消息放在平行链A的出口消息队列上。

第三步,平行链B的收集人会发现目的地是平行链B的消息,并把消息放在平行链B的入口队列中。

第四步,平行链A和平行链B的验证人都对这条消息进行验证。

第五步,平行链B的收集人在构建新区块的过程中会处理消息,因此会运行消息中的智能合约,于是完成资产转移。

第六步,平行链B的验证人验证了这条消息确实被处理过,而且没有什么问题,于是就把这个区块写到了中继链中。

以上就是XCMP协议的实现过程,尽管有些细节在真实场景下会更复杂一些,但基本的原理就是这样。

在整个过程中完全依靠智能合约与波卡的共识系统,没有任何中心化的参与,因此这是非常安全的。


来源:曹靖彬Web3

 
 
免责声明
世链财经作为开放的信息发布平台,所有资讯仅代表作者个人观点,与世链财经无关。如文章、图片、音频或视频出现侵权、违规及其他不当言论,请提供相关材料,发送到:2785592653@qq.com。
风险提示:本站所提供的资讯不代表任何投资暗示。投资有风险,入市须谨慎。
世链粉丝群:提供最新热点新闻,空投糖果、红包等福利,微信:juu3644。