今天看了一个波卡的平行链是如何通过XCMP来进行跨链消息传递的视频,来理一理波卡的跨链过程。
首先我们需要弄清楚波卡的大体结构。
1.波卡整个体系可以理解为由很多不同的区块链组成的一个区块链网络,这些区块链可以分成三种不同的类型。分别是中继链,平行链以及转接桥平行链。
这些叫法很复杂,我们可以用其他区块链的常用叫法来比喻。
中继链:就是波卡的主链,相当于以太坊的第一层网络主链,或者Nervos的底层CKB这样的意思;
动态 | BafeEx解读:欧洲央行对欧元稳定币态度较为乐观:1月3日,欧洲央行市场基础设施和支付总监Ulrich Bindseil发布了央行欧元稳定币CBDC工作总结。BafeEx交易所分析师Zoy表示,从文章来看,欧洲央行对欧元稳定币CBDC持较为乐观的态度,注意不是极度乐观。欧洲央行主要担心:1.金融脱媒(Disintermediation),储户和机构通过这种方式藏匿和转移欧元资产,规避欧洲央行监管;2.无法应对危机时期的银行的系统性建导(Facilitation)问题,即CBDC相对来说更难被央行调控。BafeEx分析师Zoy强调,CBDC的双层利率系统也许可以应对上述两个问题,CBDC得以顺利发行的可能性在逐渐提高。[2020/1/4]
平行链:是基于波卡的底层区块链框架搭建出来的链,也就是在Substrate框架上开发出来的区块链。他们是同构链,因为都是从Substrate这个底层框架上搭起来的,拥有相同的底层设计。
声音 | 最高人民法院工作报告解读:探索司法区块链等互联网模式:据新华网消息,12日,最高人民法院办公厅副主任陈志远接受专访,解读最高人民法院工作报告中网民高度关注的热点内容。陈志远介绍,杭州互联网法院通过全流程在线审理平台,实现案件全流程在线办理,让当事人打官司“一次都不用跑”;采用司法区块链等技术,让存证取证更方便,让电子证据更可靠。[2019/3/12]
转接桥平行链:他们不是基于波卡的Substrate框架开发的区块链,而是独立于波卡设计的其他外部链,比如以太坊,比特币,Cosmos,EOS等等,与Substrate框架上面搭建的区块链相比,他们具有不同的底层架构,因此他们是异构链。
这些链要跟波卡主链,其他平行链,或者其他异构链进行沟通交流,波卡会给他们之间先架起一座桥,叫做转接桥,用来在他们之间传递信息。因此这些外部异构链在波卡的术语中叫做转接桥平行链。
动态 | 媒体:蚂蚁金服成立区块链公司只是事务性公司 不要过度解读:据上海黄埔2月25日报道,蚂蚁金服旗下蚂蚁区块链科技(上海)有限公司在黄浦区正式揭牌成立。据了解,除蚂蚁区块链科技(上海)有限公司之外,蚂蚁金服旗下另一创新企业蚂蚁双链科技(上海)有限公司也在同期成立。消息人士称,蚂蚁金服旗下的子公司众多,而这些子公司往往跟注册地有关,跟实际负责业务关联不大。而成立这两家公司只是属于事务性的,为了当地办事方便,不必做过分解读。(财经网)[2019/2/26]
2.波卡的网络中主要有如下几种角色在维持网络的运行。
收集人:他们负责收集平行链上新的消息和交易;并把来自平行链的候选区块发送给中继链的验证人。
证券时报发文解读比特币价格暴力拉升的背后原因: 证券时报发文称,这次拉升从各交易所分钟级时间差来看,是从Bitfinex开始拉,然后被套利交易者迅速扩散到了其他平台上。据币圈一位专业投资者介绍,由于Bitfinex自己发行了USDT,然后用自己发行的USDT买入BTC,短时间内拉升比特币价格,同时平台上的空仓悉数爆仓,从而获得大量BTC,接着再以BTC交换海量增发出去的USDT进而回收大部分的增发,并盈余大量BTC。[2018/4/15]
验证人:他们负责验证平行链上提交的区块;打包区块,并在中继链上生成区块。类似于比特币网络中的记账矿工。
钓鱼人:网络监督者,负责监督和举报作恶的节点。
金色财经独家分析 巨人转让区块链相关股份的两种解读:被投资公司盈利能力反映在巨人公司的投资损益项,盈利能力存在风险会直接对其财务报表产生风险,而这正是股东看重的地方。巨人公司出售OKC股份,从因“不确定性”而“保护投资者”理由解释合理充分,转让对价2850万美元占2%左右比例并不高,董事会在其职权范围内作出决定也不用劳烦整个股东大会,巨人也按照程序做了相同的关联方解释,资产并未被低估贱卖,完全符合要求。
然而“不确定性”却存在两种解读。如果解释为风险,史玉柱等自然展现了担当与无私;如果解释为潜在收益,那么OKC成功转型带来的利润巨人公司的广大股东也是享受不到的。旁人并不知道史玉柱和董事会的想法,但至少,此次减少“区块链”相关的股权,并不能说明OKC或区块链概念的利空。如果真是巨大风险,就没必要卖给“利益相关方”了,解释为史玉柱与股东会的“分歧”更为准确。而且值得注意的是,OKC是从经营币到搞区块链“实业”,更符合政策,有理由是个正向消息。[2018/3/24]
弄清楚了波卡网络的整体结构,接下来要来说一下波卡实现跨链的一个协议,叫做XCMP。
它的基本原理是由XCMP向两个不同的链搭建一座沟通的桥来传递消息,在消息被另一方接收到,并执行了相关操作之后,由中继链帮助验证执行的结果,同时对验证结果的提供共识的安全保障。
跨链传递消息的具体过程如下:
假设你准备从以太坊上发动一条消息到EOS的一个地址上。
在你向B发送消息之前,实际是任何两个异构的平行链之间发送消息之前,XCMP都需要在你们之间开启一条单向通道,建一座临时的转接桥。用来在你和B之间传递消息。
1.有了这个桥,你就可以从以太坊地址通过它将你想要向B传递的消息发布出来。
2.这时候,在以太坊上面服务的收集人就会把这条消息向中继链上的所有节点进行广播,相当于向全网络公开宣布以太坊上有这样一条消息发给了B。
在每一条跨链消息中,都会包含一个目的地和时间戳,用来辨认每条消息的唯一性。
3.你发的这条消息也会带着这些信息,被中继链上的节点在网络中点对点地传播。最终,会被EOS上的收集者看到,因为他们的工作就是随时都在监听网络中有没有新消息,他们就是一群到处探听消息的八卦婆。
而这些收集人既是中继链上的全节点,也是平行链上的全节点。所以他们之间时刻都处于相互联系的状态之中。
4.平行链B,也就是EOS上的收集人收集到来自你从以太坊链上发来的新信息之后,会对这条消息进行初步的检验,没有问题之后会加上自己的签名,打包进一个新提议的区块之中,这个区块被称为候选区块。
5.然后把这个候选区块发送到中继链上,提交给中继链上的验证人,让他们去做验证。
5.区块提议包含了想要放到中继链上去的新消息和交易,一旦EOS上的收集人创建了一个新提议的去留,并提交给了中继链上的验证人,验证人就会验证该区块。
6.如果中继链上验证人认为区块没有问题,会,那么验证人就会把EOS收集人提交的这个区块提议通过算法生成一个哈希值,并把它打包成区块,发给其他验证人进行验证。
7.中继链上超过一半的验证人确认之后,这个新区块就会被加入到中继链的区块链上去。
这样平行链A的消息就传递到平行链B上去了。
如果你从A发往B的是一笔资产,波卡的处理流程为
1.你从A链发起一笔10ETH的转账,转给B在以太坊链上的地址;
2.以太坊上的收集人收到这条消息,验证交易没有问题,会把相关交易和信息打包成区块放在以太坊链上的输出队列中,等待中继链上的验证者来传递;
3.中继链上的验证者会将这条信息传递到B,并放到B的输入队列;
4.EOS链上的收集人收集到这条信息并验证没有问题之后,会怎么做呢?
如果你在A链上的转账要求是跨链到EOS上,那么EOS链上的收集人会帮你在EOS链上铸造与10个ETH相同价值的10个OETH,并发到你在EOS链上的地址。如果你的要求是兑换,那么EOS链上的收集人会帮你把10个ETH对应的EOS数量发到你灾难EOS上的地址。
当然这里面的转账实际操作都是智能合约,而非真实的人在操作。
从这个过程,我们能看出波卡的资产跨链,实质是把一个链上的资产转换成了另一个链上的资产。
这应该是目前绝大部分跨链方案都采用的方法。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。