BDEX知识科普之跨链到底在跨什么?

本文引自闪电&OKEx Research。
跨链是今年区块链里最火爆的技术,主打跨链技术的项目多的很,比如去中心化多协议跨链交易平台BDEX。
但跨链到底是什么?
资产跨链
跨链技术很早就出现了,在2013年就大量出技术在讨论比特币的跨链。主要有三大跨链技术,闪电网络、侧链和中继。
在以太坊出现之前,区块链很少谈及“合约”,当时只谈“币”,当时的跨链技术都是指的是“资产(币)的跨链”。资产跨链,或许应该称为币跨链。
资产跨链简单来说是两条链的币相互发给对方。但这怎么发?币的跨链技术有很多,有双向锚定(two-way-peg),哈希时间锁,原子交换,资产质押转移,网关,联邦签名等等。
双向锚定是比特币侧链技术中非常重要的概念,用来实现比特币主链币和侧链币之间的跨链。双向锚定能够让侧链“知道”主链上的特定币是否处于锁定状态,并且依此锁定状态来解锁或销毁对应数量的侧链币。这就好像BTC“跨”到了侧链,或者反过,侧链币“跨”回了主链。
合约跨链
以太坊诞生后,区块链开始大量讨论智能合约。智能合约本质上就是代码,这些代码可以依据区块链上的特定数据来触发执行。
智能合约我们可以简化理解成为一个函数,输入特定的参数,代码就会自动触发执行,就能得出特定的结果,并且给出稳定的输出结果。
f(x)=y
f()就是合约代码
x就是激活的代码的条件
y就是合约执行结果。
不跨链的智能合约,f(),x,和y都是在一条链上,不会出现在多条链上。
但以太坊上的智能合约,代码是在以太坊区块链上,要激活合约也需要在以太坊区块链上发送特定的交易。
以太坊诞生后,整个区块链社区又搞出了非常非常多的链,很多都带有智能合约的功能。然后就有人提出来,我们能不能在一条链上发布一个智能合约,然后依据另外一条链的特定信息,来触发这个智能合约来执行特定的操作呢?
这就是合约(调用)跨链。
这种的合约就涉及到两条链,这就是合约跨链。一条链上的智能合约,能够读取另外一条链上的特定信息,来执行合约代码,并给出确定性的结果。
跨链的应用举例
跨链有什么用呢?
第一场景是做去中心化的交易所。依赖币可以跨链,支持用户挂单,通过跨链合约来提供撮合,撮合成交后使用币的跨链来完成币的转移。理论上是可以做到完成不依赖于特定的服务器的。
现在的去中心化交易所,以太坊和EOS上的交易所,并不是严格意义上的跨链去中心化交易所。都是ETH和ERC20之间的交易,和EOS和EOS上的代币的交易。
第二个场景是资产抵押。某条链上的币是否解锁,取决于另一条链上的特定信息。
第三个场景是读取链外数据(预言机)的智能合约。比如赌球,有专门的链外数据,即预言机,提供球赛结果。然后用户在以太坊上通过合约来对赌,双方押币进合约,合约采集预言机的特定数据来判决赌资归谁。
实现跨链生态
跨链这个概念的提出,会出现两种情况。第一种情况是,在现有链之间相互跨。比如让以太坊和比特币相互跨。第二种情况是,我造一个标准,以后大家按这个标准来设计新的链,所有这些新链就可以非常方便相互跨。
未来是万链互跨呢?还是万链归一呢?让我们拭目以待。

你可能感兴趣的:(objective-c)