当前位置: 首页 > Web前端 > HTML5

BDEX知识普及:跨链实现形式

时间:2023-04-05 00:30:04 HTML5

本文引用自《行业研究报告丨跨链篇》跨链实现形式目前的区块链公链是一个自适应的分布式系统,是一个相对封闭的自循环系统,虽然可以允许新的节点加入和旧节点退出,可以容忍少量错误,但很难与其他外部系统兼容。链与链之间的信息交互,特别是基于代币的价值交互难度很大,是区块链网络的一大发展瓶颈。一般来说,链与链之间的价值/数据交互主要有两种形式:1)链间资产交换:通常是指两条链上不同用户之间的资产交换,但是每条链网络上的资产总量没有增加也没有减少,但是资产的所有权发生了变化,而这个所有权变化的过程需要在两条链上同时发生。例如,Alice想用比特币上的10BTC换取Bob在以太坊上的100ETH。交易成功的结果是Bob在以太坊的100ETH转入了Alice在以太坊的地址,而Alice在比特币地址的账户中的10BTC转入了Bob在比特币的地址。比特币和以太坊资产总数没有增加或减少。2)跨链资产转移(单向/双向):资产转移和资产互换虽然看起来很相似,但本质上是不同的。上述资产互换中各链的资产总数不变,但资产转移是资产价值的转移,各链可用资产总量会相应增加或减少。例如Alice要将A链的100个资产转移到B链,交易成功的结果是A链的可用资产减少100(减少的100个资产将冻结在链的具体地址a)、新生成相应的等价资产。目前,跨链的研究和应用主要集中在资产互换和资产转移两种方式上。一些项目提出了跨链智能合约的概念,多是指一条链上的智能合约可以确认原链上的跨链交易的场景。这在技术实现上类似于跨链资产转移的实现,需要对原链上的交易进行确认和验证,因此本文不再单独讨论,主要分析两类的技术方案资产互换和资产转移问题。实现跨链需要解决的问题1)如何保证跨链交易的原子性。即跨链交易要么发生,要么不发生,否则两条链的状态不一致、不同步将成为跨链交易最大的系统漏洞,双方系统的安全都会受到威胁。这是实现跨链交易的基本要求,也是跨链交易必须解决的难点。2)如何在另一条链上完成交易确认。交易的确认包括两个层面的问题。一是确认交易已经发生并已上传到链上写入区块账本;另一个是交易已经被系统中足够多的区块确认。交易因结构而无效的概率会很低。区块链系统本身是一个相对封闭的系统,缺乏主动获取外部信息的机制。因此,确认另一条链的交易状态并不是一件容易的事,这可以说是跨链交易的核心难点之一。3)如何保证两条链的总资产不变。在资产互换场景下,两条链的资产并没有实质性的互换,所以这种情况不会改变每条链的资产总量。但是在资产转移的场景下,每条链的可用资产数量是变化的。只有准确记录跨链交易,两条链的记账完全同步才能实现。也就是说,两条链的记账必须是原子的,要么同时全部记账,要么根本不记账。另外,问题的关键在于,一条链重组时,两条链的总资产是否还能保持不变。4)如何保证两条链的独立安全。当两个系统交互时,必然会对彼此的系统产生影响。如何在跨链交易过程中保证自己系统和对方系统的安全是一个值得思考的问题。如果不能隔离安全问题,攻击哪条链,将影响整个跨链网络。5)如何实现多条链之间的跨链互联。参照计算机网络的发展历史,独立的区块链网络最终会走上互联互通的未来,那么如何将这些现有的和未来的区块链网络连接起来,形成一个统一的整体,将是未来跨链的最重要的问题之一。网络。