来源:OffchainLabs
作者:EdFelten
此前我发过一篇文章比较ArbitrumRollup和其他rollup解决方案。但是没有细说ArbitrumRollup的工作原理,所以本文将详细介绍Arbitrum。
ArbitrumRollup是一个由以太坊链上合约管理的链下协议。一个dApp开发者用Solidity写了一组合约,将这些合约编写进Arbitrum虚拟机(VirtualMachine,VM)中,然后就可以在ArbitrumRollup中运行合约了。这样运行速度能够快些。
Rollup的基础原理
让我们从基础说起。虚拟机的状态以默克尔树的形式组织,因此就可以计算出该虚拟机状态的加密哈希。在协议的任意时间点,都有一些虚拟机状态被完全确认和敲定。这些虚拟机状态的哈希是储存在链上的。
协议参与者可以提出一个“争议断言”(DisputableAssertion,DA)。该断言声称,虚拟机从某些状态哈希开始,基于一些技术前提可以执行特定数量的计算步骤,从而生成新的状态哈希。并在计算期间完成特定的支付以及生成特定的日志事件。该“争议断言”可能有效,可能无效。提出“争议断言”的一方需要基于断言的有效性质押一笔保证金。(更多关于质押及其运作原理将在下文介绍)
动态 | 浙商银行推广区块链技术 五服务平台获备案:11月26日消息,浙商银行在金融科技运用方面率先布局,已将区块链技术广泛应用到公司、零售和金融市场等各类金融服务中。公开信息显示,自2019年初《区块链信息服务管理规定》正式实施以来,浙商银行的应收款链平台、仓单通平台、个人理财转让平台、同有益平台等5个区块链服务平台获得了国家网信相关部门发布的首批境内区块链信息服务备案编号。(中国经营报)[2019/11/26]
图:一个争议断言在协议中产生了一个决策点
如上图左侧所示,一个争议断言产生了一个协议最终必须解决的逻辑决策点。如果该断言有效,系统会进入一个新状态(右上角),根据特定的断言产生新的状态哈希和其他诸如支付和日志的附带效果。否则就会进入另一个分支(右下角),该断言就会被拒绝,状态保持不变。
旧版Arbitrum协议
最开始的Arbitrum协议每次处理一个“争议断言”。当某方提出一个断言时,挑战期便开始,在此期间任何人都可以对该断言发起挑战。如果没人发起挑战,该断言就会被确认;否则争议协议就会运行以取消争议断言(以防提议者和挑战者串通起来炮制争议结果)。
这个设计很简单,但有两个缺点。首先,由于每次仅处理一个争议断言,导致虚拟机的处理速率有限。因此,每个挑战期期间,处理进程基本上停滞下来。第二,作恶者可以通过对某虚拟机所有的争议断言发起挑战来冻结该虚拟机。攻击者会为此付出一定的代价(质押金),但是如果他们不介意这些损失,至少在一些场景下他们可以造成系统的处理进程延误很长一段时间。
改进版本
新版ArbitrumRollup协议解决了上面两个问题。将多个争议断言按流水线式排布,这样设计下,虚拟机处理速度就可以和验证节点模拟虚拟机运算的速度一样快了。第二,正如下图所示,作恶者无法延缓进程,他们只能暂时延误对结果的链上确认,而对于诚实节点来说,这些结果已经是“无需信任地被敲定了”。
动态 | 新任南非总统儿子看好区块链技术 并将发起南非首所区块链大学:据Beincrypto消息,新当选的南非总统的儿子Tumelo Ramaphosa是非洲区块链的倡导者,看好加密货币有可能为非洲大陆的无银行账户提供银行服务,在其父亲的宣誓就职仪式上穿了比特币主题的袜子。并且今年,Tumelo将领导发起南非第一所面向年轻企业家的区块链大学。他希望通过教育,可以为南非、非洲大陆其他地区和美国等其他地区蓬勃发展的区块链产业搭建桥梁。[2019/5/27]
其工作原理是什么?我需要更进一步地介绍这个新的协议....
每个状态最多有一个争议断言跟在其后。如果某个状态后没有争议断言,那么任何人都可以在其后创建一个争议断言,作为一个新的分支点。从而产生一颗多种可能的未来之树。
图:一颗多种可能的未来之树
质押
Arbitrum的另一个重要部分就是质押(staking)。任何人都可以往那颗树中的方框里质押一定金额。通过质押,用户则押注了某个方框最终将被协议确认。换句话说,该用户认为其押注的方框是当前状态的正确分支。如果用户押错注了,其押金便会受到罚没。
质押行为不可以撤销。用户可以将押金向右移动(在每个分支点选择向右上/右下移动),但是不可以向左移动,因为这相当于用户撤销其此前的质押操作。
奥迪组建研究小组测试区块链技术 未来有可能接受加密货币支付:据cointelegraph报道,奥迪正在测试区块链技术的物理和财务分配处理能力。奥迪旨在通过新的解决方案提高其全球供应链的安全性和透明度。去年,奥迪发布了区块链系统的概念验证(PoC)。由于效果反馈积极,奥迪管理层决定将区块链项目推进到PoC阶段之外。由财务,生产,物流和信息技术等各个组织单位的代表组成的研究小组正在探索包括财务结算在内的国际物流流程的表达和记录。此外,该团队正在探索区块链的各种使用方法,以提高数据传输的安全性和供应链的有效性,管理当地能源电网和数字实体。奥迪财务部负责人Alexander Dietmeier在接受采访时表示,区块链有可能改变工业企业内部的各种运营原则,并开创新的可能性。 他还认为奥迪可能会在不久的将来接受加密货币作为支付方式。最近,其他德国汽车制造商,例如宝马,奔驰和保时捷也都曾表示正在进行区块链技术的实验。[2018/3/31]
提出争议断言的一方需要押注其提出的争议断言有效。通常情况下他们都能够满足这一要求——将其现存的押金往右移动并押注在要求的方框上。(极少数情况下他们无法这样操作时,他们可以将额外的资金押注在要求的方框上。但是请注意,这样做很可能会在两个相冲突的分支上质押,这会导致损失至少一个分支上的质押金。因此做出自相矛盾的操作是不明智的。)
关于质押还有一个细节:如果用户押注的方框被确认且被记录在协议上了,用户可以选择取回押金。这意味着,用户如果押对注了,便可以选择不再移动押金,留在原处直到被系统追上,然后就可以取回其押金了。
宁波计划引入区块链技术 建立家政服务行业征信体系:央广网宁波3月20日消息,3月18日,宁波市商务委负责人透露,宁波正在酝酿建立家政服务行业征信体系,相关工作今年启动。宁波市商务委消费处处长尹秋平坦言,缺乏诚信是目前家政服务行业最大的痛点。尹秋平说,等到这套征信系统逐步完善,还考虑引入区块链技术,让缺乏诚信的服务人员无所遁形。“区块链的特点是去中心化,很适合在征信系统中运用。当一个人的重要行为都被记录在案,都可以查询到的时候,每个人都要为自己的行为负责。” 尹秋平说,宁波家政创业园已经跟从事区块链技术开发应用的机构接触,研究进一步合作的可能性。[2018/3/21]
图:更加典型的状态树—由一系列正确的断言组成
在这一点上大家可能会担心那颗充满各种可能的树会变得非常庞大、枝繁叶茂。这在实践中不太可能发生,因为这需要多方对不一致的结果押注。其中仅有一方是正确的,其他人则会损失押金。那么结果最有可能是这样的:这是一颗由“有效的争议断言”所组成的链,一个接一个,所有质押者都具有同样结果的分支上。
质押期限
我们需要系统尽可能快地对每个争议断言做出决定。所以当新的争议断言被添加上链且出现一个分支点时,就会产生一个与该争议断言相关联的期限。这个期限足够长以至于任何人都可以在期限内判断该争议断言是否有效,然后需要在期限之前选择是否押注。(期限过后,质押交易仍能在链上进行,但他们不能参与决定某争议断言是否正确。)一旦期限满了,所有参与决定争议断言的押注都将可知。
争议
如果Alice和Bob在不同的方框上进行押注,会有两种情况发生:要么其中一位向右移动到另一个人的押注上(即他们两个的押注结果相符合);要么找不到这样的路径。如果Alice和Bob之间没有一条可以连接他们的向右的路径,则他们必定相矛盾。那么在他们之间一定可以找到一个唯一的分叉点——这一点将他们两个分叉,各押注了相矛盾的分支方框。
区块链游戏“Etheremon”接入VR技术 创始人想做区块链版Pokemon:\t\t\t\t \t\t\t\t近日,区块链游戏“Etheremon”在 Twitter 宣布,正式加入 Decentraland 虚拟世界,双方达成合作。Etheremon将在第三阶段的发展中借由 VR 技术和去中心化来实现最佳化游戏体验。谈到这款游戏未来的发展时,游戏创始人Jarvis Nguyen表示:“你看到人们对Pokemon有多疯狂了吗?Etheremon也将会做到这点,更何况基于区块链技术,我们会表现得更好。”[2018/3/7]
图:Alice和Bob之间存在争议
当两方之间出现争议时,系统会在他们之间启动一个交互式的争议解决协议。可惜在本文中我没有足够的篇幅来描述该争议解决协议——这是一个二分法交互协议(bisection-typeinteractiveprotocol),类似于我之前在其他Arbitrum文档中的描述。
该协议带来的结果是,其中一方会被证实错误的。其押金会被罚没,且押注会从方框中移除。而这些押注的部分会给争议的另一方,剩余的会被销毁。
多个争议可以同时存在,但每个质押者每次最多只能选择一个争议。因为错误的押注会被删除,每一次争议的出现都会减少系统中的分歧数量。损失押金的质押者可以选择再次押注,但是新的押注不能再影响期限已过的争议断言。如此带来的影响是,一个争议断言的质押期限过了之后,关于如何处理该争议断言的争议都会被消除。
结果确认
当某个争议断言的质押期限到期之后,并且所有在期限内存入的押注在该断言的同一个分支上,系统就可以确认该争议断言的结果。它会被确认或拒绝,当前状态会向右移动到正确的方框上。如果该断言被正式有效,其附带效果(如支付)也会被记录上链。虚拟机状态就是这样向前移动的。
一般情况下,为了不损失自己的押金,参与者都将诚实押注。只有有效的争议断言会被提出,没人将在争议断言的无效分支上押注,从而形成一条单一的链。在这种情况下,每个争议断言都能在质押期限过后立即被确认。
为何说其无需信任
ArbitrumRollup的一个重要性质就是无需信任——单个诚实参与者就可以确保虚拟机状态正确推进。为什么?假设Alice总是对每个争议断言的正确分支进行押注,并且当树不再产生分支了,她就提议一个争议断言。
因为Alice在正确的分支上押注,所以每一次争议她都是胜利方。如果任何人与Alice相矛盾,他们将(a)在一个不相关的争议中损失他们的质押金,(b)最终进入Alice所在的争议中,其押金将输给Alice。不管哪个方式,任何反对Alice的一方最终都会被罚没。只有与Alice相符合的押注才会胜利到最后,所以Alice所在的分支会成为唯一一个及时收到押注的路径——该路径会被确认。
图:只要Alice是诚实的,无论其他人怎么做,绿色方框最终都会被确认
由于在这种方式上系统是无需信任的,如果Alice在一个方框上押注并且她知道该方框的路径是正确的,那么她可以确认其所在的方框上将最终被确认。对于Alice来说,该路径就像被敲定了一样。
即使用户没有在某条路径上押注,但是如果用户看到其他一些用户押注该路径,并且相信该路径上至少一个人是诚实的,那么其就可以确认该路径将最终被确认——对该用户来说,这条路径就像被敲定了一样。
最终确定性无需信任的好处
结果最终确定性的无需信任为什么如此重要?那篇对于其他rollup协议的讨论中举出了一个经典的例子。假设一个虚拟机打算向Alice支付一笔交易。该支付事件位于正确的路径上,但这笔交易还需等待一段时间,直到这笔交付交易所在的方框在链上被确认。
最终确定性无需信任让Alice能够即时收到汇款。如果Bob手上有闲钱,他可以立即给Alice钱,作为交换,Alice把未来即将被确认的支付款项转给Bob(额外给Bob一点手续费)。Bob只有确定该支付交易一定会发生才会愿意这么做。Bob可以通过押注诚实结果来确保这一点——那么他就可以对这笔支付一定会发生抱有无需信任的信心。不仅Bob可以这样做,任何人都能够以这种方式把钱借给Alice或其他像她那样的人。这些人还可以通过提供更少的手续费以竞争。
关键是,这种市场机制的可行性取决于无需信任的最终确定性。如果“每个人”都已经知道该事件将最终被确认,那么链上确认的延迟就不会带来不便。
不仅支付这个案例,对于虚拟机所做的其他事情也是如此。如果虚拟机打算生成一个日志项来广播发生了的事件,无需信任的最终确定性意味着任何人都可以确信该日志将被链上承认。
延迟攻击
因为系统是无需信任的,作恶者无法强行生成一个错误的结果。他们可以做的只有延缓系统处理过程。但这样会牺牲他们的押金,如果质押数额很大的话成本将会非常高。
想象一下如果有人想要发起延迟攻击,且愿意牺牲他们的押金。他们可以带来最大的破坏是什么?
首先,作恶者不能阻止诚实验证者继续在树上构建他们的诚实分支。他们也不能妨碍诚实验证者相信诚实分支的最终确认具有无需信任性。
攻击者可以做的只有在错误分支上质押,以延缓对诚实路径的链上确认。他们的每笔押注都会给诚实质押者创造多一个争议,在这个过程中诚实验证者都会分走一大半攻击者的押金。当攻击者的押金都被分走时,链上工作便继续进行。
那如果攻击者在多个错误结果上质押呢?那么,那些押金就会在一次次的争议里被分走。如果有多人在诚实结果上质押,他们可以进入有攻击者的争议里,与攻击者并行工作,然后把质押者的押金分走。而当人们留意到这一点,大家都知道在发生什么事了,就会有很多人加入到在正确结果上做质押,这样他们就能分走制造争议的攻击者的押金。如果有K个人在诚实结果上做质押,攻击者就要花费K份押金来一次争议期的延迟。如果攻击者花费更多的押金,这可能会吸引更多的诚实质押者。对攻击者来说情况只会越来越坏。
优化
有很多优化方案可以实施,以减少运行协议必需的链上记账数据量、减少链上gas消耗、以及让延迟攻击所带来的分食狂欢更容易发生。笔者在这里就不对优化详细展开了,这篇文章已经够长了。
标签:区块链ALIICEALICE区块链币币交易Just for DecentralizationBlockVoicealice币前景
据TheBlock3月3日消息,区块链项目LazyLedgerLabs已获得150万美元的种子轮融资.
1900/1/1 0:00:00为了让你不在下次空投到来时成为狂欢人群中的孤独小丑,「先知实验室」整理了目前较为靠谱的一些交互机会,全部搞一波,空投领到手软。UNI在2020年的空投神话,让IC0之后沉寂已久的撒钱活动又再次随着牛市的到来兴起.
1900/1/1 0:00:00金色财经?区块链2月27日讯?自比特币诞生至今,加密行业曾对区块链提出过许多质疑,如:如何在多设备上实现、区块链如何扩容、是否可以有效添加计算、区块链若不完全透明是否会更好等等.
1900/1/1 0:00:00基于UMA协议开发的合成资产考虑到了趣味性或用户需求,这或许才是「合成资产」应该有的样子,而不是被「预言机」束缚想象力.
1900/1/1 0:00:00归纳与展望 2020是卓越不凡的一年,也是灾难重重的一年。新冠肺炎给全球经济和人类生活带来了深远的负面影响。3月12日的大跌使市场失去信心,但随之而来的DeFi的崛起引爆了整个盛夏.
1900/1/1 0:00:00谁还不是个「Layer2」?区块律动BlockBeats 刚刚 30 这场关于迁移到Layer2的运动从去年9月就已经开启,大家时不时能看见关于Uniswap、Synthetix等头部DeFi项目的部署进展.
1900/1/1 0:00:00