专栏名称: 比原链Bytom
比原链Bytom 官方资讯平台, 订阅者可以接受比原链开发进度,项目进展, 相关资讯信息
目录
相关文章推荐
政法频道  ·  徒步3000多公里!湖南一对夫妻花200多天 ... ·  3 天前  
政法频道  ·  徒步3000多公里!湖南一对夫妻花200多天 ... ·  3 天前  
网信河北  ·  数字人民币为消费添活力 ·  3 天前  
网信河北  ·  数字人民币为消费添活力 ·  3 天前  
51好读  ›  专栏  ›  比原链Bytom

Bytom CTO朗豫:区块链商用化之路——侧链扩展

比原链Bytom  · 公众号  ·  · 2018-08-22 17:05

正文

点击蓝字关注 比原链公众号



8月18-19日,BCCon全球区块链生态技术大会2018在北京举办。会上,Bytom CTO朗豫带来《区块链商用化之路——侧链扩展》的主题演讲。以下为内容精编,由巴比特整理。


今天我主要讲区块链商用化的一个方向——侧链扩展。分为五点内容,一是为什么区块链没能在传统公司中大规模使用,它存在着怎样的瓶颈?二是在这样的背景下,侧链技术作为解决方案之一存在的价值;三是介绍当前普遍采用的方案和业内的探索;四是讲解比原链为资产领域应用提供技术支撑时,如何通过侧链满足客户的需求?五是展望未来技术可能的发展方向。


一、区块链大规模商用瓶颈


目前主流的区块链项目,包括比特币、以太坊等各种各样的公链在商业应用方面存在较大瓶颈。比如在以太坊上运行的游戏,以太猫、Fomo 3D等都因拥堵而体验不佳。因而我们可以看到,区块链商用的瓶颈之一是产品体验差、使用成本高。


  • 产品体验差、使用成本高

我们知道BTC和BCH的争执就是源于交易成本过高、确认时间长,矿工和开发者在这一件事上无法达成一致,最终导致了分裂。而POW机制之所以难以改进这一问题,是因为在无边界的共识条件下,工作量证明机制需要一定的时间收敛。以太坊虽然是15秒的时间,但实际是牺牲了一定的数据存储空间。


因而就有人问,可不可以采用DPOS, PBFT共识算法呢?在这种情况下实际都存在代理人风险,比如EOS存在仲裁委员会可以判断你是不是非法使用者,然后冻结你的账户。另外它还存在扩展性差的问题,DPOS的共识节点是有限的,它至今还没有突破21个节点,有人提出了100个节点,但这对于网络通信的开销是呈指数增长的,必然导致系统不稳定。另外假如节点都布置在阿里云和AWS上,那么云节点出问题时,是不是所有的代理节点都会出问题,这也是我们需要考虑的问题。


另外一个解决方式是采用零确认,同时加入保险机制,等于引入了外部协商机制。但它也存在担保方的双花攻击风险和交易通道狭窄的问题。如果只是小额交易,比如买杯咖啡,或许可以采用零确认,但若是大额交易,用户未必愿意零确认,中间的仲裁方可能也不愿意做这样的担保。 除上述所说,区块链商用的另一个瓶颈是数据的风险。


  • 区块链数据风险

首先,数据膨胀导致存储成本按用户数同比提升,不可持续。因为全节点记账,意味着每一个用户都要存储全部的数据,如果用户拓展1千倍、1万倍,它的存储成本会非常高。


其次,数据隐私存在暴露风险,全量私密数据链上存储无法取得安全。为什么大机构不愿意使用公链传递数据呢?因为它有很多私密数据,或是不愿意公开,或是出于合规性要求不能够公开。另外,金融资产如股票、证券的上链存在安全方面的担忧,如何解决数据可能被篡改或重置的问题, 目前很难放心上链。


那么在这种情况下,我们需要分层机制,核心数据加密上链,非核心数据存储于其他地方。因此可以看到侧链是相对一种比较好的机制。


二、侧链(Sidechain)技术的价值


  • 什么是侧链?

侧链是通过双向peg (楔入)将不同的区块链进行“连接”,使得多方价值可以在不同协议上进行交易和流转的技术。什么叫双向楔入呢?其实就是主链能感知侧链的行为,侧链同时也能感知主链的行为。



在这里需要注意,“连接”指链上协议的交互,而不代表系统间的通信。什么意思呢?比如运行一个交易,需要先请求某一节点的数据,这种情况下更多的是进程之间的通信,是中心化的网关,而不是协议上的通信,这是我们容易产生的一个误区。


那么侧链存在什么缺点呢?首先是更多复杂性,因为主链和侧链异构的环境都会带来新的不可知的状态,也可能面临着欺诈性交易的风险,而且随着协议的迭代升级也许还存在软分叉风险,这些都是侧链技术面临的挑战。


  • 侧链有什么特征?

第一、主链token在侧链流通时还是主链,通常时1: 1的比例或者其他预定汇率;第二、侧链自己不能产出主币,只能接受主链的输入,并在自己链上生成对应的侧链币;第三、侧链可以有自己的token也可以没有;第四、侧链需要足够的算力和共识保证侧链的安全;第五、侧链独立于主链存在,侧链上发生的任何事情都不会影响主链,从而可以保证主链安全性。


  • 为什么侧链能解决问题?

首先,在主链安全性保障的前提下,侧链可以在小范围共识,优化确认时间。我们可以把tps放在第一位,达到秒级确认。


其次,多种侧链“并行”运行时,主链安全性和业务负载并不显著增加。因为主链上的数据只是侧链数据转入其中存储的状态,它不会面临数据膨胀的问题。


最后,侧链数据可以加密,在小范围传输,记录交易路径,且不泄露隐私。在这样一个策略下,我们既可以在专有领域内传递数据,又可以同主链交互。


三、业界对侧链的探索


侧链的核心是解决跨链问题,跨链和侧链其实是两个不同的问题,比如以太坊上有一些币币交换的协议,是一条链上的不同token进行交互,我们可以认为是一种狭义的跨链,还有原子性交换,不过它并不是把交易从一条链上传递到另一条链上。而侧链实现的就是把价值从主链转移到侧链上,侧链又可以转回到主链上的,是所有跨链中最高级的一种形式。


侧链目前最常采用以下三种形式:

  • 公证人机制(Notary schemes)

类似中心化的模式,比如交易所,它需要中间有一个代理方或者审判方来做价值转换。

  • 中继(Relays)

我们经常实现的是轻客户端的模式,它通过设置SPV客户端把比特币和以太坊交易结合在一起。

  • 哈希锁定(Hash-locking)

这是我们经常在原子交换、闪电网络上经常使用的一种技术。


案例:BTC-Relay

BTC-Relay是基于Ethereum的合约,本质实现比特币的SPV客户端。它的缺点在于需要外界的Feed,即比特币spv-proof-block 数据,和同时难以处理比特币分叉的特殊情况。为什么BTC-Relay现在没能流行起来,一是因为它不能解决多而快的问题,二是缺乏激励,没人愿意花更多的钱传递比特币的区块,将其存储在以太坊上。


案例:Rootstock(RSK)

Rootstock也是很早就开发了,2013年说是要建立在比特币区块链上的智能合约分布式平台,现在已经实现了以太坊虚拟机的一个改进版本。作为比特币的一个侧链,它使用了一种可转换为比特币的代币作为智能合约的“燃料”。在RSK中,把比特币的相关信息写入sidechain,不断产生的区块信息写入SPV同时写入侧链,在比特币中任何区块产生变化都有相应的反应。在将代币解锁为比特币时使用了哈希锁定技术。


四、比原链(Bytom) 上实现侧链


为什么可以在Bytom上实现侧链呢?一是Bytom架构比较灵活且年轻,主网刚上线三个多月;二是POW机制;三是实现了图灵完备智能合约。


Bytom是一种多元比特资产的交互协议,运行在Bytom有不同形态的、异构的比特资产(原生的数字货币、Token)和原子资产(股权,债券,收益权等物理世界对应的金融和非金融资产)。所以我们需要去探索侧链系统,以满足资产上链的这样一个需求。


Bytom是基于POW共识的区块链,需要对传统世界资产进行包容性,合规性,效率性支持。因为做这个区块链系统不可能只是满足于数字货币的交易,还要和现实的商业之间发生关系,因此侧链是我们选择的最好途径之一。


Bytom基于双向锚定(two-peg)进行修改,实现联合锚定(fed-peg)的侧链模型,引入多方中间人机制对于资产的质量和合规性进行把控。双向锚定和交易所的第三方担保不同,它是通过密码学机制来解决这样一个问题。


侧链既可以锚定BTC,也可以锚定BTM。流程就是我们有一个比特币链上资产,可以在Bytom的侧链上使用,比特币的资产也可以Retire,但是这部分由于比特币的原因暂时还不能实现。还有一部分是现在可以实现的,就是锁定BTM或者是BTM链上的资产,我们需要有多方的签名,就可以解锁,把侧链上资产交易传递下去。


所有步骤可以简化为锚定主链资产,价值传递到侧链。等待资产”成熟”之后,就可以在侧链进行交易,侧链的交易跟主链没有任何关系,主链可以允许侧链锁定自己的资产。当侧链的资产一旦赎回之后,或者被销毁了,它无法再次使用,同时主链上的资产也可能消失,只释放赎回金额,同时结算手续费。所有的侧链上因产生共识所花费的成本,都需要支付手续费,这个手续费在侧链上结算,在主链上释放。也就是让所有的交易方或者共识方,都能获得一定的价值,而不是像联盟链一样,交易之间没有产生任何手续费。


三个关键点:

1、“锚定”主链资产,传递至侧链


如何去实现锚定?首先在主链上构建一个多重签名基于pay-to-contract的交易,其实就是一个锚定合约的形式,同时处理合约出现欺诈行为的情况。


我们需要去考虑的情况是,如果主链发生分叉了后,有攻击者使用了分叉链信息去获取这些释放在侧链上的币时,那么如果有任何一个人知道在主链上相应的交易,就可以去解锁侧链交易,把交易中的惩罚金拿到,这个惩罚金需要构建交易时就进行锁定。







请到「今天看啥」查看全文