区块链扩展技术 – 侧链 Sidechain

 

Bitcoin 的成功奠定了区块链技术实现可信任货币的基础,创建了区块链 1.0 时代。Ethereum 在区块链上整合智能合约,在 2017 年将去中心化应用推向开发普及,是为区块链 2.0 时代。

区块链想要做到更深度的市场应用普及,关键就是要解决数据传输的吞吐量和交易速度问题,也是在区块链世界中常听到的扩展能力,在现前区块链扩展的技术主流以侧链 Sidechain 与分片 Sharding为主。

  • 採用侧链 Sidechain 做扩展的知名计画有:比特币闪电网路 Bitcoin Lightning Network、Ethereum Raiden Network 与 NEO Trinity。
  • 採用分片 Sharding 做扩展的知名计画有:ZilliqaQuarkChain,甚至是 Ethereum 也打算採用 Sharding 做扩展。
    此篇,我们来探讨侧链 Sidechain 的扩展技术。

 

什麽是侧链 Sidechain?

侧链 Sidechain 最早是针对比特币的扩容问题所提出的解决方案:可以让比特币安全的从比特币主链转移到其他区块链,又可以从其他区块链安全的返回比特币主链的一种协议。

简单说,侧链就是会在不同的交易传输节点间直接额外建立一个单独通道,并建立预设信任关係以简化节点间的共识机制来达到数据传输併发的高扩展性。

此外,侧链协议因为是独立的区块链,具有自身的帐本、共识机制、智能合约等,可将一些需要进行高频的交易或订製化的交易放到主链外 (侧链) 进行,从而不需对主链进行修改更新,因此当侧链发生灾难性的问题时,主链不会因此受影响,为一种更安全的协议升级方式。

 

市场应用范例

这边举两个採用侧链协议来完成交易的知名应用情境:

1. 比特币闪电网路 Bitcoin Lightning Network:比特币快速交易

比特币闪电网路 Bitcoin Lightning Network 是一种侧链技术,他的运作方式为:想要进行交易的双方一同把比特币锁定到一个链下多重签名的钱包中,然后进行交易签名更改双方各自能够取回的比特币数量。交易的双方都有权利随时关闭独立的交易通道,最后一笔经过签名的交易讯息将会被广播至区块链网路并写回主链上。

另一种情况是多方交易:譬如 A, B, C 三方仅 B 有与其他双方建立独立支付通道,A 想和 C 交易时可以同时透过 B 完成,整体的交易过程不需要由主链执行确认验证而快速,只要多方授权签名同意,并在交易通道过币后,才会将最后确认的各自馀额写回主链帐本中。

2. BTC Relay:比特币、以太币跨链交易

ConsenSys 团队推出的 BTC Relay 被认为是区块链上的第一个侧链, BTC Relay 项目是在以太坊基金会之下诞生并成长起来的,BTC Relay 其主要原理是 BTC Relay 把以太坊网络与比特币网络以一种安全去中心化的方式连接起来。BTC Relay 通过使用以太坊的智能合约功能可以允许用户在以太坊区块链上验证比特币交易。侧链机制不仅允许用户将交易发送到其他的地址或帐户,还可以发送到其他的区块链。BTC Relay 使用区块头创建一种小型版本的比特币区块链,以太坊 DAPP 开发者可以从智能合约向 BTC Relay 进行API 调用来验证比特币网络活动。BTC Relay 主要功能有:

  • 验证比特币交易
  • 传递 Bitcoin 交易到以太坊智能合约
  • 存储 Bitcoin header 区块头部
  • 检查智能合约内部最新的 Bitcoin 区块信息

 

BTC Relay

 

最后

侧链技术的出现意味着比特币不仅可以在比特币区块链上流通,同时亦可以在其他不同的区块链上互相流转,更重要的是将会令比特币区块链系统,甚至整个区块链技术的应用范围更广,交易效率更佳,提高交易速度后将能解决原区块链的 “每秒只能完成7笔交易” 困境。透过开发各种创新的应用并使用侧链协议与主链对接,这将使比特币的在市场上的地位更稳固,例如闪电网络会把很多交易放在侧链上,只有在做清算时才用主链,这样一来能极大地提升交易速度,又不会增加主链的存储负担。对系统本身而言亦是一个最佳的选择,以共融的方式扩展整个加密货币生态,而并不是选择排斥其他区块链系统,同时,未来亦能为比特币区块链本身进行无缝升级过渡。随着各类侧链的发展,这些侧链拥有各自的系统,在系统内所有的交易可以自行在系统内处理好。如果要在不同的侧链进行交易,那就需要用到跨链技术(Cross-chain),目前主流的跨链技术包含公证人机制(Notary Schemes)、侧链/中继(Sidechains/Relays)、哈希锁定(Hash-Locking)、分布式私钥控制(Distributed Private Key Control)。而使用侧链技术,将两条侧链和主链双向锚定,就是以主链作为双方完成交易的”中间人”。侧链技术及其他跨链技术,不单止可以用来转帐,而且未来还有机会进一步打通各不同区块链之间的资料联通,发展潜力不容忽视。

 

延伸阅读

区块链扩展技术 – 侧链 Sidechain
区块链扩展技术 – 分片 Sharding