目前常见的跨链机制分析
现在已经出现了很多种不同链上的数字货币,而数字货币之间若是想要无障碍的交易,那么就需要一种跨越不同区块链来进行操作的机制。而本文将概述目前的跨链机制们。
原子交换(Atomic Swap)
原子交换是下面介绍的跨链技术里最安全的一种,但它的限制较多,尤其是要求双方区块链提供相同的单向函数。
原子交换的底层技术和二层网络一样,依赖于哈希时锁(Hash Timelock)交易,因在之前的闪电网络技术介绍中已描述了哈希时锁交易细节,因此只在此做简单介绍。
哈希时锁技术
哈希时锁技术的流程是这样的(假设交易双方为 Alice 和 Bob):
- Alice 在区块链1上创建如下一笔交易,这笔交易有两个提取代币的出口:① 若提供 Bob 的签名和一个特定哈希的原像,则 Bob 可提取 ② 若从交易发出后经过特定块数,则 Alice 可提取。
- Bob 在区块链2上创建如下一笔交易,也有通过哈希值原像和时间提取的出口。
- Alice 通过提供原像解锁 Bob 的交易,之后 Bob 通过 Alice 的交易获得原像,提取 Alice 的交易,原子交换完成。
这种交换叫做原子交换是因为两者在交易完成前的任何一步若是想放弃,则可以在一定时间后将所有交易全部回退。例如
若 Bob 未广播交易2,则 Alice 可在一定时间后提取交易1的代币。
若 Alice 未解锁 Bob 的交易,则在一定时间后两者都可分别回退各自的交易。
显然,这种交易要求双方通过相同的哈希函数来互相提取解锁信息,因此需要两者的链部分同构。
见证者/预言机(Witness/Oracle)机制
在这种模式下,两个链之间的沟通通过联通两个链的预言机进行交互。而预言机本身则负责证明另一条链上的交易发生了,这正是目前常见的各种包装(Wrapped)代币的工作方式。
单见证者机制
在这种模式下,所有包装代币和原币的安全性都取决于这个单个的见证者的可信性。也就是说,该模式下的安全性和传统交易所基本一致。
简单来说,就是一个控制者负责验证是否接受一个链上的代币,并在另一个链上发放替代代币。或者在另一个链上兑换替代代币时销毁替代代币并发出原版代币。
多见证者机制
这种一般是通过侧链或者多签名钱包机制实现的。也就是说,可以通过 PoW/PoS/PoA三种分别对应的机制进行跨链操作。
侧链(PoW/PoS)
这种设计下,出块者负责验证另一条链上的交易进行了并在本链执行相应机制,也就是通过本链的共识机制实现跨链。
这种实现机制的最大缺点就是安全性取决于两者较弱的链,特别是 PoS 这种本身就有点偏向中心化的机制,而且侧链一般相对主链规模较小。
多签名钱包(PoA)
指的是在一边汇入特定的多签名钱包,另一边多签名合约负责发送/销毁代币。
因为验证过程采用的是多签名验证,所以本质上是一种权威证明的机制,不过不同的是这种情况下,验证责任由单一验证者改为了权威集体中的投票进行。
相比于侧链方法,这种方法费用更低并且进行更快,而缺点则是若足够验证者进行了非常规变更,无法移除投票群体里的恶意用户。