这个函数受限会按照chainName从数据库中取出对应的chain。然后操作GetBlockCount函数得到chain的高度。然后举办一个伪确定性的检测。
(2) 可以按照差异需求实现侧链,,满意多种场景
这里它建设了一个跨链生意业务orm。详细的布局如下。可以看到,这里它的布局体中包罗有source和dest的字段。
(4)跨链生意业务(主链到侧链的deposit)处理惩罚
在此之后,函数会遍历所有生意业务的输出,然后建设跨链生意业务请求,详细的布局如下。3、跨链优缺点
(1) 跨链模子、代码较为完整。当前有许多项目利用跨链技能,可是真正实现跨链的凤毛麟角。
vapor为主侧链模子,Cosmos为Hub-Zone的中继链模子。
利益
vapor侧链已经可以或许实现跨链。Cosmos今朝暂无成熟跨链项目呈现,ibc协议处于最终开拓阶段。
图片来自Bystack白皮书
(3)区块处理惩罚
很显然,这个处所的生意业务范例有pay to public key hash 和 pay to script hash这两种。这里会按照差异的生意业务范例举办一个地点的获取。
这部门主要分为主链到侧链的deposit和侧链到主链的withdraw。先看较量巨大的主链到侧链的deposit这部门代码的处理惩罚。
到这里,对主链到侧链的deposit已经处理惩罚完毕。
(1) 跨链速度较慢,需期待10个区块确认,这在今朝Bytom网络上所需时间为30分钟阁下
跨链模子
4、跨链模子平行比拟Cosmos
在这的processIssuing函数,它内部会遍历所有生意业务输入Input的资产范例,也就是AssetID。当这个AssetID不存在的时候,则会去在系统中建设一个对应的资产范例。每个Asset对应的数据布局如下所示。
可扩展性
5、参考发起
Run函数会挪用syncBlock函数同步区块。
在processBlock函数中,还会判定区块中每笔生意业务是否为跨链生意业务。主要通过isDepositTx和isWithdrawalTx函数举办判定。
(2)主侧链同步区块
在此之后,通过挪用tryAttachBlock函数进一法式用processBlock函数处理惩罚区块。Bystack是由
主要是为了判定链上的资产是否已经不行逆。这里Confirmations的值被设为10。假如不举办这个期待不行逆的进程,很大概主链资产跨链后,主链的最长链改变,导致这笔生意业务没有在主链被打包,而侧链却增加了相应的资产。在此之后,通过GetBlockByHeight函数得到chain的下一个区块。
郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。