Part I

侧链开发和跨链开发需要了解哪些知识

基础概念

  • 侧链协议本质上是一种跨区块链解决方案。通过这种解决方案,可以实现数字资产从第一个区块链到第二个区块链的转移,又可以在稍后的时间点从第二个区块链安全返回到第一个区块链。

  • 其中第一个区块链通常被称为主区块链或者主链,每二个区块链则被称为侧链。

  • 最初,主链通常指的是比特币区块链,而现在主链可以是任何区块链。侧链协议被设想为一种允许数字资产在主链与侧链之间进行转移的方式,这种技术为开发区块链技术的新型应用和实验打开了一扇大门。

侧链的历史

  • 侧链协议产生的原动力其实来源于其他区块链的创新威胁。

  • 首先,以太坊(Ethereum)、比特股(Bitshares)等更快、更智能的区块链对比特币产生相当大的威胁,智能合约和各种去中心化应用在以上两个区块链上兴起,受到人们欢迎;而基于比特币的应用则因为开发难度大,项目不多。

  • 其次,基于比特币区块链也有合约币(Counterparty)、万事达币(Mastercoin)和彩色币(ColoredCoin)等附生链,但是比特币核心开发组并不欢迎,觉得它们降低了比特币区块链的安全性。他们曾经一度把OP_RETURN的数据区减少到40字节,逼迫合约币开发团队改用其他方式在比特币交易中附带数据。

  • 最后,2014年7月份以太坊众筹时,获得了价值1.4亿人民币的比特币,还有20%的以太币,开发团队获得了巨大的回报。但是比特币核心开发组并没有因为他们辛勤工作获得可观回报,因而他们成立了 BlockStream,拟实现商业化价值。

  • 基于以上三个原因,研发团队提出侧链协议、把比特币转出比特币区块链、另行开发二代区块链,这样的选择既能保证比特币区块链的安全,又能应对二代币的冲击,还能针对不同应用场景实现商业化,因而成了BlockStream的必然选择。

实现方案

  • 侧链实现的技术基础是双向锚定(Two-way Peg),通过双向锚定技术,可以实现暂时的将数字资产在主链中锁定,同时将等价的数字资产在侧链中释放,同样当等价的数字资产在侧链中被锁定的时候,主链的数字资产也可以被释放。双向锚定实现的最大难点是协议改造需兼容现有主链,也就是不能对现有主链的工作造成影响,其具体实现方式可以分为以下几类:

  • 单一托管模式

  • 联盟模式

  • SPV模式

  • 驱动链模式

  • 混合模式

总结

  • 侧链是以融合的方式实现加密货币金融生态的目标,而不是像其它数字资产一样排斥现有的系统。侧链技术进一步扩展了区块链技术的应用范围和创新空间,使传统区块链可以支持多种资产类型,以及小微支付、智能合约、安全处理机制、财产注册等,并可以增强区块链的隐私保护。利用侧链,我们可以轻松的建立各种智能化的应用如金融合约,股票、期货、衍生品等。

跨链的概念

  • 区块链是分布式总账的一种。一条区块链就是一个独立的账本,两条不同的链,就是两个不同的独立的账本,两个账本没有关联。本质上价值没有办法在账本间转移,但是对于具体的某个用户,用户在一条区块链上存储的价值,能够变成另一条链上的价值,这就是价值的流通。

  • 跨链,顾名思义,就是通过一个技术,能让价值跨过链和链之间的障碍,进行直接的流通。跨链本质上和货币兑换是一样的。

  • 跨链并没有改变每个区块链上的价值总额,只是不同的持有人之间进行了一个兑换而已。

  • 跨链技术的核心要素之一是:帮助一条链上的用户Alice找到另一条链上的愿意进行兑换的用户Bob。从业务角度看,跨链技术就是一个交易所,让用户能够到交易所里进行跨链交易。

四种跨链技术

四种主流的跨链技术:

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

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

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

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

跨链技术的应用

  1. 可转移的资产:资产可以多链之间来回转移和使用。

  2. 原子交易:链间资产的同时交换。

  3. 跨链数据预言机:链A需要得知链B的数据的证明。

  4. 跨链执行合约:例如根据链A的股权证明在链B上分发股息。

  5. 跨链交易所:对于协议不直接支持跨链操作的区块链进行补充

跨链/侧链的优势与问题

  • 跨链与侧链的关系

    • 早期的开源侧链项目比如blockstream的元素链,使用的比特币双向挂钩技术,它是跨链的雏形。到后来的BTC-Relay(一种基于以太坊区块链的智能合约),是通过跨链将比特币和以太坊连接起来的技术。

    • 早期的项目主要关注资产的转移,而如今的跨链项目则更多关注链状态的转移,这就形成了各个跨链的技术今天的格局。一般的侧链服务于主链,而跨链志在链之间价值和功能的连通,可以说,侧链与跨链,在技术内容上大体相似,只在谈到他们所服务的对象时才需要做细致的区分。

  • 跨链与侧链的优势

    • 为了解决公有链的低吞吐量带来的高手续费、网络拥塞等诸多问题,很多团队都很有预见性的提出了相应的优化方案。从现有技术实现的角度来说,基本分为三种,分别是侧链,分片和DAG。

目前侧链和跨链开发项目推荐

  • 中继链,中继链本质上算是公证人机制和侧链机制的融合和扩展,目前社区内最活跃的两个跨链项目Cosmos 和 Polkadot 采用的都是基于中继链的多链多层架构,其中Cosmos目前支持的是跨链资产交互而Polkadot则宣称提供任意类型的跨链交互,具体实现还有待观察。

  • Cosmos网络是一个多链混合的区块链网格结构,如下图所示,该网络中主要包括两种角色: Hub: 用于处理跨链交互的中继链; Zone: Cosmos中的平行链, Cosmos中平行链需要具备两个前提条件: 1. 快速确定性(fast finality), 这个特性由共识算法保障,也就是说Cosmos的跨链不直接支持PoW等概率确定模型的区块链; 2. 强监管性(Sovereignty):每个平行链都具有一组验证者能够决定其出块。

  • Polkadot也是一种集成平行链和中继链的多层多链架构,Polkadot的特性包括两个,一个是共享安全性,一个是不需信任的跨链交互。这里的不需信任的跨链交互其实是和第一个特点共享安全性密切相关的,而且Polkadot的不需信任的跨链交互也主要是只其内部的平行链之间。

推荐阅读