LOADING...
LOADING...
LOADING...
当前位置: 玩币族首页 > 区块链资产 > 连载/跨链通信简要研究(一)

连载/跨链通信简要研究(一)

2019-12-16 DegameLabs链游实验室 来源:区块链网络

7WJRmXaDzPEEp9HYKYuYrlz7hx8GnPhlSjcgJpV0.jpeg

1 Abstract

跨链技术本质上是一种将A链上的数据D(或信息I,或消息M)安全可信地转移到B链并在B链上产生预期效果的一种技术。因为区块链系统本来就是一种特殊的分布式账簿数据库系统,所以这个转移的数据,最常见的就是资产的数据,如代币余额。

目前主流的区块链跨链技术方案按照其具体的实现方式主要有:公证人机制、哈希锁定、侧链&中继链、分布式私钥控制。

目前最有名的跨链项目有Cosmos和Polkadot,两者采用的都是基于中继链的多链多层架构。由此可见,侧链&中继链技术将会是未来跨链技术的主力。

本文首先简要介绍跨链的技术原理。其中会简要介绍公证人机制、哈希锁定,详细介绍侧链&中继链技术。然后本文将介绍几个相关的跨链项目,包括基于ETH的Plasma、基于Polkadot的达尔文网络,基于Cosmos的IRIS。

2 公证人机制及哈希锁定[1]

跨链交互根据所跨越的区块链底层技术平台的不同可以分为同构链跨链和异构链跨链。同构链之间安全机制、共识算法、网络拓扑、区块生成验证逻辑都一致,它们之间的跨链交互相对简单。而异构链的跨链交互相对复杂,如Bitcoin采用PoW算法而Fabric采用传统确定性共识算法,其区块的组成形式和确定性保证机制均有很大不同,直接跨链交互机制不易设计。异构链之间的跨链交互一般需要第三方辅助服务辅助跨链交互。

跨链要达到安全可信必然对跨链机制、步骤等有一些要求,其中最重要的就是跨链事务的原子性。对于普通的链内交易来说,交易需要支持原子性——交易如果失败则需要回滚。而跨链的交易也是如此,其失败时要回滚涉及本次交易两条或多条链的交易。

2.1 公证人机制(Notary schemes)

公证人也称见证人机制,其是一种中介的方式。设区块链A和B本身是不能直接进行互操作的,那么他们可以引入一个共同信任的第三方作为中介,由这个共同信任的中介进行跨链消息的验证和转发。很多时候,这个公证人/中介就是交易所。其优点在于支持异构的区块链跨链,缺点在于有中心化风险,只能实现交换不能实现转移。

跨链交易实例:假设Alice想和Bob进行1个BTC换50个ETH的交易

1.Alice将自己的1个BTC存入交易所的比特币地址;Bob将自己的50个ETH存入交易所的以太坊地址;

2.Alice在交易所上挂单:1 BTC for 50 ETH;

3.Bob通过交易所完成与Alice的交易,Alice得到50 ETH,Bob得到1 BTC

–?这里会有不少的形式。一种是Bob挂出购买比特币的单子,然后交易所撮合。一种是Bob直接看到Alice挂出卖单,然后直接要这个卖单。

4.Alice将交易所得的50 ETH提币到自己的以太坊账户;Bob将交易所得的1 BTC提币到自己的比特币账户;

通过引入中介完成了Alice和Bob的BTC和ETH的交换。通过该例子可以看出交易所的方式目前仅能够支持资产的交换,且资产交换的原子性、安全性完全由中心化的交易所保障,故存在一定的中心化风险。

2.2 哈希锁定(Hash-locking)

哈希锁定的典型实现是哈希时间锁定合约HTLC(Hashed TimeLock Contract)。哈希时间锁定最早出现在比特币的闪电网络。哈希时间锁定巧妙地采用了哈希锁和时间锁,迫使资产的接收方在deadline内确定收款并产生一种收款证明给打款人,否则资产会归还给打款人。收款证明能够被付款人用来获取接收人区块链上的等量价值的数量资产或触发其他事件。哈希锁定只能做到交换而不能做到资产或者信息的转移,因此其使用场景有限。

跨链交易实例(仍以前一节中的交易需求为例):

Alice随机构建一个字符串s,并计算出其哈希h;

Alice将h发送给Bob;

Alice通过合约锁定自己的1个BTC资产,设置一个较长的锁定时间T1, 再设置了获取该BTC的条件:Bob提供h的原始值s;

Bob锁定50ETH到自己的合约,设置一个相对较短的锁定时间T2(T2 < T1)。再设置50ETH的获取条件:Alice提供h的原始值s;

Alice将字符串s发送到Bob的合约获得50个ETH;

Bob观察到步骤5中Alice的s值,将其发送给Alice的合约成功获取1个BTC; 至此完成资产的交换。

如果超时,则锁定的资产返回原主。

从上述的过程可以看出哈希时间锁定合约有一些约束条件:

??双方必须能够解析双方的合约内部数据,例如s,例如锁定资产的证明等;

??哈希锁定的超时时间设置时需要保证存在时间差,这样在单方面作弊时另一方可以及时撤回自己的资产。

公众号:DegameLabs链游实验室,专注于链游新玩法,定期最新技术分享~

—-

编译者/作者:DegameLabs链游实验室

玩币族申明:玩币族作为开放的资讯翻译/分享平台,所提供的所有资讯仅代表作者个人观点,与玩币族平台立场无关,且不构成任何投资理财建议。文章版权归原作者所有。

LOADING...
LOADING...