首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

侧链,被忽视的好东西

大家好,我是三七

欢迎大家

22:22

准时收看你的月亮我的韭菜花

今天我们来看看什么是侧链

在2012年前后,比特币聊天室首次出现了关于侧链的对话,当时比特币核心的开发者们正在考虑如何安全地升级比特币的协议。

其中的一个想法是进行“one-way peg(单向锚定)”,即用户可以将比特币移动到一个单独的区块链来测试一个新客户端,然而,一旦这些资产被转移走,它们就不能在被转移回主链上去了。

在此后的一年的时间内,比特币IRC的频道上,比特币核心开发者Greg Maxwell提出了一种“two-way peg(双向锚定)”的想法,即价值可以转移到另一个链上,然后再回到原先的比特币链上。

在当时,一个双相锚定的技术又引起了另一个日益增加的担忧:即其他的币种,像是莱特币和域名币,正变得越来越流行。人们担心的是这些“山寨币”会稀释比特币的价值。因此比特币的核心开发者认为,可以把比特币作为一种储备货币,并将新功能转移到侧链上。

这就是侧链的雏形。通过双向锚定的方式,使得人们既可以应用侧链的新功能,又可以利用比特币的价值。

于是就有了后来侧链的定义:不是特指某个区块链,而是指遵守侧链协议的所有区块链,该词是相对于比特币主链来说的。

侧链协议:则指可以让比特币安全地从比特币主链转移到其他区块链,又可以从其他区块链安全地返回比特币主链的一种协议。

但侧链的正式定义应该是“缠绕链”,负责缠绕对接“应用链”和“结算链”。这三者的关系是分层的,类似IP、TCP、HTTP,这是三种不同的协议、不同的报文格式,只有小部分功能特征相似,但主要功能是分层次松耦合度的,各自为政,各自可以对各自透明,也可以做到各自对各自透明,但是又可以对接协同工作。比特币是典型“结算链”,实现的功能包括:不可逆记账、去中心化安全共识。

从以上我们可以得出侧链产生的原因包括以下几个方面:

1、应对其他区块链的创新威胁

2、比特币核心开发组不欢迎附生链

3、BlockStream商业化考虑

侧链产生的原因,使得侧链必须具备以下属性:

在侧链间移动的资产应当能够被当前持有者移回,但除此之外的任何人则不行(包括前持有者)。

资产的移动应当无交易对手风险;也就是说,不诚实的一方无法阻止转移的发生。

资产转移应当是元操作(原子操作),即要么完全完成,要么根本不发生,不应存在会导致资产损失或允许欺诈产生的失败模式。

侧链应当设有防火墙:一个会使某条链发生资产铸造(或偷盗)的缺陷(bug),不应导致任何其他链出现资产的铸造或偷盗。

区块链重组时应当处理干净,即使在资产转移的期间也要如此;任何破坏应当只发生在它所处的侧链上。总的来说,理想情况下,侧链应当完全独立,自其他链上的全部所需数据由用户提供来。侧链的验证者应当只有在侧链本身的显式共识规则有要求时,才需要跟踪其他链。

不应要求用户去跟踪他们未主动使用的侧链。

侧链产生的目的是实现双向锚定,使比特币可以在主链和侧链中互转,这里的双向锚定主要分以下几个阶段:

发送锁定交易,把比特币锁定在主链上。

由比特币持有者操作,发送一个特殊交易,把比特币锁定在区块链上。

等待一个确认期

确认期的作用是等待锁定交易被更多区块确认,可防止假冒锁定交易和拒绝服务攻击,典型的等待时间是1-2天。

在侧链上赎回比特币

确认期结束后,用户在侧链上创建一个交易花掉锁定交易的输出,并且提供一个SPV工作量证明,输出到自己在侧链上的地址中去。该交易称为赎回交易,SPV工作量证明是指赎回交易所在区块的工作量证明。

等待一个竞争期

竞争期的作用是防止双花。在此期间赎回交易不会被打包到区块;新传输到侧链的比特币不能使用;如果有工作量更大的工作证明出现,即该赎回交易包括了比特币主链更大难度的SPV证明,则上一个赎回交易将被替换。

竞争期结束后,该赎回交易将被打包到区块中,用户就可以使用他的比特币。

由此可以看出,侧链链接了不同的区块链,换句话说就是,不同的区块链之间若想通讯,做价值转移,就需要通过侧链。侧链成了不同区块链之间的通道,像是区块链世界的高速公路。能够链接越多的区块链,那这样的侧链的价值将会越大。

!!!

不管爱我还是恨我

另外

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181203A1NNXY00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券