清华大学金融科技研究院孵化
金融科技与金融创新全媒体

扫描分享

本文共字,预计阅读时间

侧链原生于比特币社区,所以在当时的场景中会有主观的主侧之分,但在现在的场景中侧链更多的是一种关系表述,没有从属关系,因为从数据结构上来说,可以彼此互为侧链。

侧链协议是让链与链相连接的一种方式,但是不是唯一的方式。今天我们就要聊一聊跨链到底有哪几种方式。在以往的资料中,在分类这个角度其实有很大的问题,一般情况下人们会把跨链分为:

1、公证人机制(Notary schemes);

2、侧链/中继(Sidechains/relays);

3、哈希锁定(Hash-locking);

4、分布式私钥控制(Distributed private key control)。

但是为什么这么分呢?到底对不对呢?基本上所有资料上都含糊不清,那今天我们就打散这个固有模式,decode&encode跨链!

首先我们要先了解“跨链”(cross chain)到底真正意味这什么?一种情况是:链与链之间的资产发生了互换;另一种情况是:链与链之间的资产发生了转移。

呃呃呃呃呃,大家不要以为我在玩文字游戏,其实这两者间有着微妙的差异,我一个个来解释一下:

第一种情况,链与链之间的资产发生了互换

什么意思呢?这是指两条链上的不同用户之间进行资产互换,资产所有权发生了变化。而这种形态,典型的例子就是哈希锁定(hash locking)。

我们举个例子,假设小明有一个比特币,他想和小红换20个以太坊。(这个解析过程最好照着图片看)

他们原始的资金状态是这样滴:

小明:1个bitb,0个以太坊

小红:0个比特币,20个以太坊

首先小明随机生成一个密钥K,再通过哈希函数H(K)得到哈希值M,小明把这个哈希值M发给小红,并说:“这个放好了,大有用处!” 至于如何大有用处,稍后再讲!

好,做好了准备工作,小明在比特币网络中发起了转账,给B的地址转了1个比特币,当然到账的前提就是小红签名并提供正确的密钥K。

欸?不对不对,这就转过去了呀???如果小红一直没提供密钥,那小明的钱就被冻住不能动了?

没错,没那么简单,小明为了防止自己的币被锁住,再转过去之前他先发起了一笔退款交易。这笔退款交易的条件是这样的:如果转账交易在48小时内(举例)未获得正确的密钥和签名,那么转账的金额将退回给小明。因为小明和小红是真诚交易的,所以他们共同签署了这份“合同”。

这样,小明就放心地发起了1个比特币地转账交易,但是小红要怎么获得密钥K,从而得到那1个比特币呢?

那就是以物换物,小红同时也发起一笔20个以太坊的转账,当然在发起转账之前,小红也一样发起了一笔退款交易,流程同上。小红的这20个以太坊的转账同样附带条件,那就是:只有小明给了她正确的密钥K,他才可以得到那20个以太坊。

欸,那小红怎么知道小明给了她正确的密钥还是假的呢?

这时候大有用处的M就出场了!小明一早就给了小红密钥K的哈希值M,M不可以推导出K,但是可以验证M的正确性,于是小红给了小明20个以太坊,小明给了她密钥K,小红有了密钥K就可以拿到1个比特币,完美。

我们可以看到,两条链上的资本并未发生转移,而是在各自链上发生了互换!

第二种情况:链与链之间实现了资产转移

既然两条相互独立的链,想要达成互联,无论如何演变,两条链之间总会出现一个“中间人”的角色,这个“中间人”可能是一个也可能是一群,可能是中心化机构也可能是分布式群体,可能要进行数据收集&交易确认&验证一揽子方案,也可能仅仅充当数据收集者的角色。

首先我们按照“中间人”是承担“数据收集&交易确认&验证”还是仅仅收集数据分为“公证人机制(Notary schemes)”和 侧链/中继(Sidechains/relays)

公证人模式是最简单粗暴的模式,如果公证人是一个可信第三方比如交易所,我们称之为“单签名公证人机制”,这个机构同时承担了数据收集&交易确认&验证的任务。

如果公证人是一群机构组成的联盟,我们称之为“多签名公证人机制”,那么跨链资金的转移是这个联盟所控制的。

那很明显上面两种相对而言都比较中心化,于是第三种模式“分布式签名公证人机制”诞生。

分布式签名是基于密码学生成秘钥,并拆分成多个部分分发给随机抽取的公证人,允许一定比例的公证人共同签名后即可拼凑出完整的秘钥,从而完成更加去中心化的“数据收集验证”过程。

侧链/中继模式就是完全不一样的概念,他没有一个可信第三方来控制,通过诸如Relayer收集数据,把数据广播到侧链或主链中,由侧链和主链的矿工进行确认和验证交易。

[Source]

本文系未央网专栏作者发表,属作者个人观点,不代表网站观点,未经许可严禁转载,违者必究!

猜你喜欢

扫描二维码或搜索微信号“iweiyangx”
关注未央网官方微信公众号,获取互联网金融领域前沿资讯。