编者按:本文来自蓝狐笔记,Odaily星球日报经授权转载。前言:区块链的技术术语中,有很多概念经常会混淆使用。其中之一就是侧链和状态通道。两者都是区块链的扩展解决方案。但在社区的使用中,经常被互换使用。那么它们之间到底有什么不同,有什么优缺点,谁更好?本文有助于回答你的困惑。本文作者Vasa,由“蓝狐笔记”的“Moqi”翻译。以太坊社区中“状态通道”和“侧链”这两个术语经常被互换使用,从而导致普通用户的混淆。今天我们将这个问题搞清楚。先煮杯咖啡,因为它会需要耗费一些时间。本文的主要目的很明确:什么是状态通道?什么是侧链?然后我们进行比较:它们两者试图解决什么问题?哪个是更好的扩展解决方案?现在开始。什么是状态通道?
状态通道是一种非常广泛且简单的思考问题的方式:思考将可能发生在区块链上的交易,在不显著增加任何参与者风险的情况下在链下执行。这一策略最著名的例子是比特币的支付通道概念,它允许在双方之间直接发送即时的低费用支付。状态通道是支付通道的一般形式,将相同的想法应用于通常在区块链上执行的任何类型的状态改变操作。将这些交互移至链下,且无须要求任何额外的信任,可以实现成本和速度的极大改善。状态通道将是扩展区块链技术的关键部分,它支持更高级别的用户使用。状态通道的基本组成非常简单:
双向状态通道1.将区块链状态的一部分通过多重签名或某种智能合约锁定,因此,特定的参与者集必须彼此间完全同意才能对其状态进行更新。2.参与者们通过构建和签名可被提交至区块链的交易,以更新他们之间的状态,而在此之前状态只是暂时保持在内部。每个新的状态更新都“高于”之前的更新。3.最后,参与者们将状态提交回区块链,这将关闭状态通道,并再次解锁状态。就这样。如果参与者之间更新的“状态”是加密货币的余额,那么,我们就有了一个支付通道。打开和关闭通道的步骤1和3涉及到了区块链操作。但步骤2可以快速执行不限制次数的更新,且无须涉及到区块链。这就是状态通道可以发挥作用的地方。因为,仅有步骤1和3需要发布到网络上,以及支付费用或等待确认。实际上,通过仔细的规划和设计,状态通道几乎可以无限期保持开放状态,且可用于大型枢纽系统的一部分,为整个经济或生态系统提供动力。尽管这里描述看似简单,但人们通常认为状态/支付通道是非常复杂的。造成这种情况的原因有很多:其中之一就是在对这三个步骤的表述中隐藏了一些重要的微妙之处。让我们仔细看下这些简单的短语所隐含的含义:可以提交到区块链为了使状态通道正常工作,必须确保参与者可以在任何时候将其当前通道的状态发布到区块链上。这导致产生了一些重大的局限,例如这样的事实:在通道关闭之前,有人必须保持在线以保护每一方的利益。想象一下,假设当我们开启一个支付通道时,我以100BTC开始,而你以10BTC开始。如果我们首先签署将10个BTC转给我的更新,然后又签署将50个BTC转回给你的更新,第二个更新明显比上个更新对你更有利。如果你意外地网络掉线,而我则可以假装第二次更新从来没有发生过,那么,我能将第一次更新发布到区块链上,从而有效地从你哪里窃取了50个BTC。你需要的是有人保持在线,拥有最新交易的副本,以便于它们可以“高于”早前的交易,并确保你的比特币得到保护。不一定是你自己保持在线。你可以将副本发送到很多随机服务器,它们同意通过智能合约仅在需要时才发布它。但是,无论你如何做,你都需要确保最新签名的状态更新都是高于其他所有更新的。这使得我们进入下一个微妙的短语:每个最新更新都“高于”之前的更新为了使状态通道的这一部分正常工作,必须正确地设计锁定和解锁机制,以便提交给区块链的旧状态有机会被取代它们的新状态所纠正。最简单的方法是让任何解锁尝试启动计时器,在此期间,任何新的更新都能取代旧的更新。当计时器完结,通道关闭,并且状态将进行调整以反映最后一次收到的更新。可以为每个状态通道选择计时器的长度,以平衡较长通道关闭时间的不便利性和不断增加的应对互联网连接或区块链问题的安全性。或者,你可以通过罚款方式来构建通道,这样任何向区块链发布不正确更新的人的损失要比他们假装没有发生后续交易所获得的更多。但是这个机制最终不会有太大关系,因为这种情况的博弈论使得事情产生变化。只要这种机制在理论上是合理的,它就可能永远不必使用它。实际上通过计时器/惩罚程序可能会带来额外的费用、时延或其他不便;考虑到迫使某人进入机制并不能给你带来任何好处,因此,一个状态通道的参与方可能会只是通过相互商定最终通道状态来关闭通道。这种最终关闭操作跟普通的“中介”更新有根本上的不同,因此,参与者对于在特定通道内锁定的状态的每个部分仅是签署一次关闭交易。这些“微妙之处”的细节并不是特别重要。最终归结为参与者通过设置“法官”智能合约来打开通道,相互签署如有必要“法官”可以强制执行和裁决的承诺,然后,相互协商关闭通道,这样法官的裁决就不需要。只要“法官”机制被认为是可靠的,这些承诺就可以算作为即时转移,只有在特殊情况下法官才会出现,例如参与方消失时。当然,这些细节只是人们认为状态/支付通道是复杂的部分原因。更大的原因是比特币的支付通道是复杂的。在比特币上构建具有合理有用属性的“法官”机制是非常复杂的。不过,一旦你对状态通道有一个清晰的总体概念,就能看到,这只是由于在一个受限的环境中试图实施这个概念而产生。基本的智能合约功能,例如计时器机制和根据提交的签名信息来允许采用两种不同路径,这些在比特币中很难做到。其中的一些功能正在逐步添加或构建。支付通道只是更广泛“状态通道”概念的特殊子情况,我们可以意识到这是一种更广泛的技术,状态通道可以应用到任何智能合约,这些智能合约在定义好的参与者组中处理频繁的更新。你可以预期在很多分布式应用中看到这种方法。现在,我们对什么是“状态通道”有了更明晰的理解。因此,我们来看看侧链。什么是侧链?
IOVLabs发布RIF Flyover协议,推进比特币主网和RSK侧链上BTC转账:2月22日消息,根据IOVLabs分享的官方声明,其全新的“还款协议”RIF Flyover已经发布,以优化Rootstock基础设施框架平台的设计。RIF Flyover是一个开源工具,旨在从比特币主网和RSK侧链中转移比特币。
据悉,IOVLabs是一家专注于将比特币引入可编程金融生态系统的项目。(U.Today)[2023/2/22 12:20:39]
侧链是使用双向锚定关联于其父链的单独区块链。换句话说,你可以将资产移至侧链,并再移回父链。
侧链双向锚定使得可以在父链和子链之间以预定的汇率进行资产互换。原始区块链通常成为“主链”,其他所有外加的区块链都称为“侧链”。区块链平台Ardor将其侧链称为“子链”。父链上的用户首先必须发送其代币到一个输出地址,这些代币会被锁定,因此用户无法在其他地方消费它们。在交易完成之后,会通过跨链进行确认,然后等待一段时间,以提高安全性。在等待期过后,侧链上会释放等量的代币,允许用户获取并在此处进行消费。当将资产从侧链移回主链,流程刚好相反。联盟
联盟是一个组,它在主链和其一个侧链之间充当中间点。这个组确定何时锁定和释放用户使用的代币。侧链的创建者可以选择联盟的成员。联盟结构的问题在于,它在主链和侧链之间添加了另外一个层。侧链要负责自身的安全。如果没有足够的算力来保护侧链的安全,它有可能会被攻破。因为每条侧链都是独立的,如果它遭受攻击或入侵,损坏会在该链中发生,而不会影响主链。相反,如果主链遭受攻击,侧链仍能运行,但其锚定资产将会失去大部分价值。侧链需要它们自己的矿工。可以通过“合并挖矿”激励这些矿工,因此,两种独立的代币,基于相同的算法,可以同时开采出来。现在,我们对侧链也有一个很好的了解。所以,让我们把它们放在一起。它们想解决什么问题?
以太坊侧链SKALE上dApps可向验证者支付费用补贴以实现用户免gas交互:据官方推特,以太坊侧链SKALE宣布该网络的dApps可以通过直接向验证者支付费用以补贴用户gas费。用户由此可实现免gas交互。[2023/1/9 11:01:43]
通常,侧链和状态通道都是用来提高区块链可扩展性的。他们遵循类似的模型。锁定状态/资产在区块链/主链之外进行交易从状态通道/侧链中解锁状态/资产但尽管有这样的类比,但两者间有很多不同,这是因为状态通道中我们不使用单独的区块链,而在侧链中我们使用单独的区块链。让我们来看看这会导致什么结果。两者中哪个是更好的扩展性解决方案?为了得出答案,我们来看看它们的优缺点。状态通道的优点
状态通道有很强的隐私属性:这是因为所有事情都发生在参与者之间的通道“内部”,而不是公开广播和在链上记录。只有打开和关闭的交易必须是公开的。而在侧链上,每笔交易都会发布到侧链上,无论你是否跟侧链上的所有参与者交互,交易都会被侧链上每个参与者接收。状态通道有即时最终性。这意味着只要双方签署状态更新,它就可以被认为是最终状态。双方都有很高的保证,如有必要,他们可以在链上“强制执行”该状态。但正如上面提到的,考虑交易的安全级别,状态通道的关闭可能需要花费不同的时间。而在侧链中,另一边有一条区块链,因此,最终性依赖于侧链的挖矿算力。状态通道的缺点
比特币侧链Liquid Network在升级后遭遇区块签名问题,逾7小时未出块:10月5日消息,由 Blockstream 推出的比特币侧链 Liquid Network 在近期的升级后遭遇区块签名相关的问题,导致超过 7 小时未生成区块。据 Liquid Network 的区块浏览器显示,最后一个区块为 1517039,生成时间为 7 个小时前。Liquid Network 在推特上表示,“正在调查一个与最近功能升级相关的区块签名问题,但用户资金是安全的,不受影响。”此前 Blockstream 团队宣布 Liquid Network 于 10 月 4 日进行 DynaFed 硬分叉升级。[2021/10/5 17:24:56]
状态通道需要所有参与者100%的在线:正如我们上面讨论的,如果任何参与者不在线,那么,这可能对他来说要付出代价。如果参与者不在线,参与者可以使用其他人来代表TA。但代表被攻击或被贿赂的可能性让会它会成为状态通道的问题。而在侧链上则你不必总是在线。状态通道最适合用于有已定义好参与者集的应用:这是因为“法官”合约必须了解特定通道部分的参与者/主体。我们可以添加和移除人,但它要求每次对合约进行更改。而在侧链中,参与者变化方面没有这种限制。状态通道在这种情形下尤其有用:参与者将要在长时期内交换很多状态更新:这是因为创建通道部署“法官”合约会产生初始成本。但是,一旦部署,在状态通道内每次状态更新的成本会非常低。侧链的优点
Axie Infinity推出侧链Ronin公共测试网,育碧将成为验证者:基于以太坊的数字宠物游戏Axie Infinity宣布推出一个新侧链Ronin的公共测试网,旨在进行拓展以容纳更多玩家,而主要游戏发行商育碧将作为Ronin的验证者参与其中。该侧链旨在帮助Axie Infinity将以太坊网络拥塞的影响降至最低,并加快游戏体验,它已经通过之前的私人测试网进行了测试,此次的公共测试网预计将持续几个月。(Decrypt)[2020/12/24 16:22:04]
侧链是永久的。如果存在有侧链,你无须为特定目的而创建专属的侧链。侧链一旦创建,就是完成构建并进行维护。我们不会关闭侧链,而是锁定在侧链上的资产以移回主链。这是非常有用的方式,任何在区块链/主链外做特定任务的人都会来到相同的侧链。因此,你不必为每个新参与者创建独立的链。而在状态通道,你通常必须创建新的状态通道来添加新参与者。但诸如闪电网络、雷电网络这些项目为此提出了出色的解决方案。他们创建了参与者网络,由此你不必为与之互动的每个新参与者创建新的通道。你可以跟参与者进行间接互动,方式是在你和接收者之间通过你们之间共同的其他参与者来创建一个通道:你和接收者。侧链允许加密货币相互交互:它们增加了灵活性,并允许开发者在山寨币的Beta版本或软件更新上线主链之前,可以在侧链上实验。像传统的银行功能可以在侧链上测试,然后再移至主链。侧链的缺点
基于贝尔链主网的第一条侧链BV今日正式发布:据官方消息,基于贝尔链主网的第一条侧链BV今日正式发布。BV(Bitcoin vision)是基于用户需求打造的一个高性能、可扩展、全球区块链算力共享挖矿生态应用平台。贝尔链(BaerChain)是区块链游戏的垂直公链。BV作为贝尔链主网上线后第一条侧链,将与贝尔游戏生态社区共同合作,推进POC挖矿领域的发展应用。[2020/3/13]
侧链需要很多初始投资来启动:为了创建侧链,我们需要足够的矿工,以使网络免遭攻击者的攻击。此外,我们必须确保它们已经启动和在运行。然而,在状态通道中没有区块链,因此,没有这些要求。侧链需要联盟:这在主链和侧链之间增加了额外的层。这可能是攻击者可以攻击的另外一个弱点:可以贿赂或攻击联盟。然而在状态通道中,我们只需要一个智能合约就可以为我们完成这项任务。两者之间的竞争是伟大的。尘埃落定,但两者依然站立。由于研究依然在持续,实际的使用还没有传播,我们无法确定谁会是赢家。或许它们会融合,形成一种混合解决方案,来解决扩展性问题。直到实现之前,我们还需要等待,看看什么时候能看到。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。