对于公证人模式的跨链,如何让链能够带来一些突出的特点

2024-02-04 08:10

本文主要是介绍对于公证人模式的跨链,如何让链能够带来一些突出的特点,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

当前一些主流的跨链模式有:公证人、哈希锁定、中继、侧链等技术,比如Cosmos和波卡链采用是中继模式、瑞波(ILP)采用了公正人模式。各种跨链模式都有自己的一些优缺点和实用场景,无论跨链模式怎么变换,最终都会解决如下问题:

1、链与链之间如何建立一个信任机制,验证跨链之间的交易数据?

      为了解决资产的自由流通,链与链之间的互通互联, 首要任务是链之间怎样建立一种信任机制, 使得一条链能够验证链的交易。比如以太坊上发生的一笔交易,X Chain上怎么知道以太坊上发生的交易是否有效呢?同样,X Chain上发生的交易,以太坊怎么知道X Chain上的交易真实发生有效呢?

     针对上述疑问,其实是如何去验证问题跨链交易,对于X Chain来说以太坊交易来源外部的以太坊,X Chain不会知道以太坊交易的状态,所以必须借助一种机制来验证交易的有效性,目前X Core团队针对不同场景提供了两种解决方案:公正人机制验证区块头+ SPV简易验证

2、交易怎样才算最终确认?

对于交易确认性问题大家都知道与共识算法关系很大,目前来说有两种情况确定性共识和非确定性共识交易的最终确认方式。

在确定性共识下,共识完成后都是一个最终状态,不可能有其它转态,X Chain现在采用的是BFT共识方式,共识完成后就是最终状态。

在非确定性共识下,交易没有最终确认下去实现跨链会出现什么状况呢?比如以太坊采用的是POW共识算法,没有等待最终确认,把交易的状态和结果,发送给X Chain进行验证,X Chain通过区块头和SPV进行验证,X Chain上验证通过,然后在X Chain上的以太坊资产转给相应的人,结果以太坊上的这笔交易没有经过最终确认而且只是发生在最短的一条链上,导致交易最终回滚,持有以太坊资产的用户显然不能接受。这只是一个很容易出现的现象,针对在非确定性共识下,X Chain提出了不同的的解决方案:等待足够多确认区块纠缠DPoS/xBFT

3、如何实现跨链交易原子性互换?

原子性问题在数据库中经常用到,比如数据库的事务操作。在跨链场景下不保证跨链交易的原子性会造成什么呢?比如以太坊和X Chain进行跨链,以太坊上已经进行转移了资产,由于中间环节出了问题,导致X Chain上没法收到资产,这样显然不具有原子性操作。X Core团队分别针对不同场景下采用最终一致性哈希时间锁定两种解决方案。

X Chain在多链(同构链)和分片这种同一套系统内部交互场景下采用最终一致性方案。虽然在账本上拆分成不同的链式结构,但本质上还是同一套系统,安全性和可验证性都能够有效的解决,这样不需要资产的锁定机制,有效提升了跨链交易的效率,X Chain在的多链体系下做了同构方面的跨链尝试,跨链交易实际的吞吐量只是在单链情况下降到一半。对于异构链的场景下X Chain对于原子性问题最终采用的是哈希时间锁定技术,详细流程和原理如下图所示:

4、在异构链场景下资产如何去锚定?

对于跨链资产转移,比如以太坊和X Chain进行跨链,ETH真的流通到X Chain了吗?其实不是,对于ETH和X Chain跨链来说,双方采用的是一种锚定协议,双向锚定是ETH链与X Chain资产按照1: 1兑换比例双向转移的过程,比如ETH可以转移成X Chain上的等量的BETH,反之X Chain上的BETH也可以转成ETH。因为以太坊上的ETH不能被销毁。 所以实际上,当用户把ETH转换成BETH的时候, ETH资产不是被销毁了,而是被转移到一个锁定地址上,同时在X Chain上释放等量的BETH。反之,当BETH需要换回ETH时,把BETH发送到X Chain上的锁定地址,同时在以太坊的锁定地址上释放等量的ETH。

5、跨链资产如何去锁定?

在不同体系的场景下资产不进行锁定会发生什么情况,很显然不锁定,账户有自由的支配权,可以直接把钱转走,那么锁定账户由谁来管理,执行锁定和解锁等操作,如何保证锁定资产被安全的释放,不会造成双花。单一托管人可以实现锁定吗?对于单一托管选取一般会找有信用背书的机构来充当锁定就像你的钱放在银行不用担心银行跑路一样 。联盟托管人方式会怎么样呢?单一托管机制虽然简单易行,但是过于依赖中心化的托管人。更加去中心化的实现方式是联盟托管模式。比如议会,总共有N个议员,其中每位议员都有一份投票权,当接收到跨链的解锁请求时,每位议员独立的验证交易并投票,当投票数达到M时,就能处置锁定的资产。这种投票验证操作可以是手动执行,也可以是自动执行。 相比单一托管人、联盟托管人来说智能合约托管更去中心化。X Chain是一个天然支持智能合约并且验证节点是通过投票选举出来,X Chain采用的是智能合约托管的方式。

6、对于多条链跨链协议适配是N:N还是1:N呢?

以上讲的跨链问题都是以太坊和X Chain这种1:1的对应关系,设计跨链的目的是为了资产能够自由流动和链能够互联互通,N条链之间实现跨链通信,如何简化跨链协议的适配呢,对于N:N,下图所示,每两条区块链之间需要一个跨链协议,所以需要设计C(N, 2)个跨链协议,每一个跨链协议要适配两个区块链系统。当N变得很大的时候,协议适配的工作量会变得非常大。

针对上述复杂的问题,X Chain采用的是将主链作为中继链,它的角色是获得其它链的区块头信息,作为枢纽和其它链系统交互,充当路由,然后转发各链之间的跨链交易。采用中继的模式,只需要考虑N对适配协议,每新加一条链只需要适配X Chain的跨链协议接口,大幅度降低了跨链开发的复杂度。

7、如何激励跨链服务提供者呢?

链本身有交易费作为激励,但是验证可能不是链双方的记账节点。如果这些服务没有手续费会怎么样呢?这样会造成流动性匮乏攻击攻击者可以尝试暂时性阻碍所有流动性的中继或验证人,导致跨链交易失败。整个跨链交易可能处于阻塞状态,也有可能反馈一些无效状态,从而导致跨链网络无法运行。X Chain设计了一种押金审核机制,要成为服务提供者必须缴纳一定质押金,入网还需要多方审核。在整个跨链提供服务的过程中会得到一笔丰富的奖励。并且还设置了举报机制,若服务提供商作恶,验证举报信息有效,作恶者的质押金归举报者所有。X Chain通过一些经济学的手段有效激励服务提供者从而保证了X Chain的有效运行。

总结:

       以比特币、以太坊为代表的公链项目已经向我们展示了区块链的巨大发展前景。但是由于区块链本身技术特点,单链情况下会受到去中心化,安全性,可扩展性的不可能三角的问题,在可扩展性上一直缺少革命性的突破。X Chain秉持着资产自由流通和链能够互联互通的原则,设计了X跨链方案Canal技术,对跨链一些问题的解决带来了新的思路:针对不同链的需求和场景下适配不同的方案,通过不同链之间资产双向锚定、资产在链间能够自由流通。X Chain在Orbits多链技术基础之上,增加了Canal的设计,可以大大扩展原有资产的技术特性和应用场景。不但可以分担X主链上的交易,节约X主链的存储,计算,网络等资源,避免了X主链上的交易拥堵。X Chain Canal技术并不是一个现成的实现技术方案,它是一个成体系的多场景化的解决方案,最近我们在供应链金融方面做了一个X Canal技术的POC尝试,让资产能够自由流通能够成为可能。

这篇关于对于公证人模式的跨链,如何让链能够带来一些突出的特点的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/676850

相关文章

如何开启和关闭3GB模式

https://jingyan.baidu.com/article/4d58d5414dfc2f9dd4e9c082.html

十四、观察者模式与访问者模式详解

21.观察者模式 21.1.课程目标 1、 掌握观察者模式和访问者模式的应用场景。 2、 掌握观察者模式在具体业务场景中的应用。 3、 了解访问者模式的双分派。 4、 观察者模式和访问者模式的优、缺点。 21.2.内容定位 1、 有 Swing开发经验的人群更容易理解观察者模式。 2、 访问者模式被称为最复杂的设计模式。 21.3.观察者模式 观 察 者 模 式 ( Obser

大语言模型(LLMs)能够进行推理和规划吗?

大语言模型(LLMs),基本上是经过强化训练的 n-gram 模型,它们在网络规模的语言语料库(实际上,可以说是我们文明的知识库)上进行了训练,展现出了一种超乎预期的语言行为,引发了我们的广泛关注。从训练和操作的角度来看,LLMs 可以被认为是一种巨大的、非真实的记忆库,相当于为我们所有人提供了一个外部的系统 1(见图 1)。然而,它们表面上的多功能性让许多研究者好奇,这些模型是否也能在通常需要系

有效利用MRP能为中小企业带来什么?

在离散制造企业,主流的生产模式主要为面向订单生产和面向库存生产(又称为预测生产),在中小企业中,一般为面向订单生产,也有部分面向库存和面向订单混合的生产方式(以面向订单为主,面向库存为辅),主要是应对市场需求的波动,对生产稳定性造成影响。 制定资源计划至关重要,但很多中小企业目前依赖人工、Excel表格等传统方式做各种记录、统计分析。时常会遇到: 生产任务无法统筹安排, 采购不及时, 订单

“人工智能+”带来新变化

以生成式人工智能(AIGC)为代表的新一代人工智能技术创新加速演进,相关商业化应用成果也不断涌现,行业应用范围不断拓展,深度赋能实体经济,为行业提质增效与实现减排提供助力。 自主航运初创公司OrcaAI于6月18日发布研究报告显示,通过在海上航行中部署人工智能(AI),全球商业航运业每年可减少碳排放4700万吨。报告指出,借助AI技术,船员将能够得到实时提醒,因近距离遭遇

Builder模式的实现

概念 在创建复杂对象时,将创建该对象的工作交给一个建造者,这个建造者就是一个Builder。在日常的开发中,常常看到,如下这些代码: AlertDialog的实现 AlertDialog.Builder builder = new AlertDialog.Builder(context);builder.setMessage("你好建造者");builder.setTitle

[分布式网络通讯框架]----ZooKeeper下载以及Linux环境下安装与单机模式部署(附带每一步截图)

首先进入apache官网 点击中间的see all Projects->Project List菜单项进入页面 找到zookeeper,进入 在Zookeeper主页的顶部点击菜单Project->Releases,进入Zookeeper发布版本信息页面,如下图: 找到需要下载的版本 进行下载既可,这里我已经下载过3.4.10,所以以下使用3.4.10进行演示其他的步骤。

《分析模式》“鸦脚”表示法起源,Everest、Barker和Hay

DDD领域驱动设计批评文集 做强化自测题获得“软件方法建模师”称号 《软件方法》各章合集 《分析模式》这本书里面用的并不是UML表示法。作者Martin Fowler在书中也说了,该书写于1994-1995年,当时还没有UML。作者在书中用的是一种常被人称为“鸦脚”的表示法。  有的同学会有误解,例如有同学发表以下感想: “鸦脚”表示法当然不是Fowler先使用的。F

设计模式学习之中介者模式

我们平时写代码的过程,一个类必然会与其他类产生依赖关系,如果这种依赖关系如网状般错综复杂,那么必然会影响我们的代码逻辑以及执行效率,适当地使用中介者模式可以对这种依赖关系进行解耦使逻辑结构清晰,本篇博客,我们就一起学习中介者模式。 定义及使用场景 定义:中介者模式包装了一系列对象相互作用的方式,使得这些对象不必相互明显作用。从而使它们可以松散耦合。当某些对象之间的作用发生改变时,不会立即影响其