资讯 · 2022年6月22日

详解三大主流跨链技术方案

随着区块链技术的蓬勃发展,数量庞多的区块链项目随之涌现,并形成了具有不同特点、 针对不同应用场景的区块链网络。越来越丰富的技术栈组合支撑起了区块链的蓬勃生态,但也造成了不同项目之间的异构性,使其承载的交易数据和经济价值很难在生态内自由地流转,跨链逐渐成为行业的刚需。

所谓跨链,指的是通过特定的技术方案在不同(同构或者异构)区块链之间实现安全的信息互通与价值转移,赋予其互操作能力。

一次成功的跨链拆分为以下三个步骤:

  • 用户的源链地址发送一笔转账到该链上的某接收地址

  • 该转账的有效性通过验证,并触发目标链上的交易

  • 目标链上的某地址向用户指定的收款地址发送一笔转账

为了完成上述跨链流程,本文将介绍三种技术方案,分析它们的特点,并讨论潜在的风险。它们分别是公证人模式、哈希时间锁和中继模式。

公证人

在行业初期,区块链技术的难点主要在于提升单链的性能,但随着PoS以及拜占庭容错算法的应用,很多区块链的峰值TPS已经能够很好地支撑起用户的需求,基础设施日趋完整。于是,更多的用户开始注意到区块链所带来的金融市场的范式转移,并参与区块链生态的建设。

由此,催生了一个受信的第三方来协调跨链操作,这类受到信任的第三方公证人,在跨链流程中负责跨链消息的验证和转发。根据签名方式的不同,可区分为单签和多签。单签名公证人又称作中心化公证人,通过指定单一的节点/机构为公证人角色,在转账过程中收集源链的交易数据、验证交易有效性、并通过数字签名来启动目标链的交易执行。单签模式简单,且兼具较高的处理速度。但是其缺点也显而易见,即单一节点的故障或者作恶,会导致该跨链交易系统的崩溃,使跨链服务不再可用。

哈希时间锁

区块链2.0的出现,第一次为智能合约提供了可靠的去中心化的执行环境,并在无信任的条件下,实现了资产的自动化管理。简单来说,智能合约是由代码控制、提供读写接口实现信息交互,并根据交互信息触发特定操作的自动化协议。区块链2.0最了不起的创新之处在于,它实现了一个无需任何信任条件的执行环境,使得任何智能合约的部署、交互与执行都不再依靠权威授信的第三方。

于是,通过智能合约部署的哈希时间锁实现了另外一种跨链技术。具体流程如下:

跨链交易的发起者选择一个保密的随机S,然后计算得到该随机数的哈希值h=Hash(S),并将h给跨链交易的响应者

发起者和响应者在各自的区块链上将待交易的资产锁在智能合约中,上锁信息为h,解锁密钥为随机数S,锁定期限分别为T1和T2,其中T1必须晚于T2,,解锁人分别设置为对方的账号

发起者在时刻T2范围内,通过公布S来获得响应者锁定在合约中的资产 ,若超时未取则合约将自动退还资产给响应者

响应者在发起者公布S之后,依然存在不少于T1-T2的时间窗口,去解锁属于他的资产,若超时未取则资产自动退还给发起者

哈希时间锁的出现,很好地解决了跨链交易中的信任问题。只要发起者保护好私密的随机数是,以及时间窗口T1-T2足够使得响应者解锁资产,双方无需任何信任便能实现一次成功的跨链交易,可以说是实现了真正的去中心化跨链交易。

应用哈希时间锁的前提是,实现互操作性所涉及的两条区块链必须支持同一种哈希函数,以及该哈希函数足够安全。前者是工程选择问题,新兴项目开始倾向于选择主流的哈希函数;后者是密码学问题,目前在区块链行业得到应用的哈希函数,例如SHA256 和Keccak-256,都还没有被发现安全隐患。

鉴于人类在数论和量子计算的持续研究,可能在不远的未来,黑客可以利用新发明的数学工具或者计算技术来完成对当前哈希函数的攻击。到那时,密码学家们就该设计出更安全的哈希函数了。密码学大厦就是在这样的矛盾攻守之中,一点点地被构建得更加安全牢靠的。

中继模式

中继是对跨链操作的一种抽象,跨链流程中的信息验证问题被抽象成中继层的共识问题,在此抽象层上可以开发出一条独立的区块链,具有了更好的可扩展性。作为跨链交易的账本,在跨链操作中出现了第三条区块链,即中继链。

在此模式中,存在一系列的中继节点被部署在各个区块链网络中,负责监控和同步该区块链的交易数据到中继链。中继链的共识节点验证跨链交易的有效性,并触发对应交易的执行。通过在每条链上部署智能合约,作为跨链操作的接口,中继模式还能将跨链作为一项基础设施,服务更多有跨链需求的项目。

一次典型的中继跨链操作,如上图所示:

  • 用户在源链发起跨链交易请求

  • 中继节点监测并搬运该交易信息至中继链

  • 中继链共识节点验证交易的有效性

  • 验证通过以后,共识节点构造对应交易

  • 多数共识节点对交易进行签名,组成签名集合

  • 中继节点监测共识节点产生的交易及签名

  • 中继节点搬运该交易至目标链,等待执行

  • 中继链的共识算法决定着跨链服务的性能和安全性,经典的拜占庭容错算法,例如PBFT,能够在大多数节点正常工作的条件下,实现较高的处理速度。改进版的拜占庭容错算法,例如HotStuff,进一步减少了通信复杂度,支持更大规模的节点参与共识。

    中继链作为工程复杂度较高的技术方案,实现难度大,但是其优势也很明显。中继链搭配智能合约,能组成跨链服务网络,用一条中继链可以沟通多条区块链之间的信息,实现更大范围的价值转移。

    作为刚需,跨链解决方案必然伴随着区块链行业的发展持续改进,而跨链技术为资产所赋予的流动性也必然为更多优秀的项目注入增长动力,彼此互惠。对跨链技术演进的持续关注,可以帮助我们更好地理解整个行业的变化