近日以太坊layer2扩容方案Arbitrum获得三个重大进展:5月28日Arbitrum向开发者开放主网、UniswapV3部署到Arbitrum的提案获得通过、Etherscan宣布正在为Arbitrum构建资源管理器。
但是ArbitrumRollup的具体工作机制,很多人可能还不了解。本文详解,主要来自OffchainLab联合创始人EdFelten的解读文章。
OffchainLab联合创始人兼首席科学家EdFelten曾这样形容ArbitrumRollup,ArbitrumRollup是一个由以太坊链上合约管理的链下协议。为使应用能够在ArbitrumRollup上运行,dApp开发者需要用Solidity编写一组合约,然后将这些合约编译成可以在Arbitrum虚拟机上运行的可执行代码。
Rollup基础知识
Rollup基础知识:我们使用默克尔树来组织虚拟机状态,因而可以算出虚拟机状态的密码学哈希值。我们把这个哈希值存储在链上,因此在协议的任何一个时间点,都会有一些虚拟机的状态被完全确认和最终敲定。这些已经获得终局性状态的哈希值存储在链上。
协议的参与者,通过提出一个争议断言来推进该虚拟机的状态;该断言声明,从某些状态哈希开始,基于一些技术前提,虚拟机将会执行特定数量的计算步骤,生成新的状态哈希,并在执行期间完成相关的支付,生成相关的日志事件。争议断言可能是有效的,也可能是无效的。参与者在提出争议断言时需要为保证断言的有效性而质押上一笔押金。
金色财经挖矿数据播报:BTC今日全网算力下跌5.33%:金色财经报道,据蜘蛛矿池数据显示:
BTC全网算力144.539 EH/s,挖矿难度21.05T,目前区块高度687001,理论收益0.00000620/T/天。
ETH全网算力603.775TH/s,挖矿难度7639.27T,目前区块高度12604022,理论收益0.00264959/100MH/天。
BSV全网算力0.696EH/s,挖矿难度0.10T,目前区块高度690981,理论收益0.00129182/T/天。
BCH全网算力2.046 EH/s,挖矿难度0.33T,目前区块高度691542,理论收益0.00043977/T/天。[2021/6/10 23:26:29]
争议断言会使协议产生一个决策点如上图所示,提出一个争议断言就会产生一个协议最终必须要解决的逻辑决策点。如果争议断言是有效的,则系统将进入图中右上角的新状态,包括由争议断言生成的新状态哈希值,以及其他附带效果。若争议断言是无效的,则进入右下角的分支,争议断言被系统拒绝,原来的状态不会发生变化。
旧的Arbitrum协议
最开始的Arbitrum协议每次只处理一个争议断言。当某些参与者提出一个争议断言后,会有一个挑战期,在此期间任何人都可以挑战这个争议断言。如果没有被挑战,则该争议断言将被系统接受;否则就会执行纠纷解决协议,撤销争议断言。
金色午报 | 6月6日午间重要动态一览:7:00-12:00关键词:中国移动、CSW、马绍尔政府、Grin
1. 中国移动:加快推进5G、区块链等新型信息基础设施开工建设。
2. 马绍尔群岛加密顾问:马绍尔政府将在18个月内分阶段发行preSOV
3. 加密勒索软件背后黑客攻击美国航天局IT承包商。
4. CSW在Kleiman案证词中谎称在2006年使用过iPhone。
5. Grin发布4.0客户端测试版,以支持第3次硬分叉升级。
6. 全国政协委员:建议就行政复议案件流程运用区块链等技术做出专条规定。
7. 直布罗陀金融服务委员会对三个谎称获得许可的加密货币网站发出警告。
8. Coinbase或将向美国政府机构出售区块链分析软件。[2020/6/6]
这样做很简单,但是有两个缺点。首先,因为每次只处理一个争议断言,所以虚拟机的处理速度很受限。在每个挑战期内,正常的处理流程基本上都将停滞。第二,恶意参与者通过故意挑战所有的争议断言可以彻底冻结虚拟机。攻击者需要付出一些押金作为代价,但是只要他们愿意,他们至少可以在某些特定场景下通过这种攻击长时间延误系统。
新的改进版本
新的ArbitrumRollup协议解决了上述的两个缺点。通过“流水线化”处理多个争议断言,验证节点模拟虚拟机的运算速度有多快,虚拟机的处理速度就有多快。第二,我们后面将会解释,恶意参与者无法延阻系统,他们只能暂时延误对最终结果的链上确认,但这些结果对诚实节点来说早已“无需信任地被敲定了”。
金色实力派 | 众安科技:区块链+供应链金融 “双链合一”实现产融结合:12月10日15:00,金色财经重磅推出的“区块链+产业新模式”系列访谈之金色实力派,将与众安科技供应链金融解决方案总监褚维国、西南财经大学中国区块链研究中心CCF区块链专业委员会通讯委员严丽娟,一起聊聊众安科技如何通过区块链+供应链金融实现“双链合一”的产融结合。观看直播可扫码或戳原文链接~[2019/12/10]
所以,到底怎么做到呢?
每个状态后面最多可以接一个争议断言。如果一个状态后面没有争议断言,那么任何人都可以生成一个争议断言接在后面,作为一个新的分叉点。结果就是产生了一棵“可能的未来”之树。
“可能的未来”之树
Staking
协议的另外一个重要的部分是Staking。任何人都可以在树上的某个方框后面质押。对某个方框质押,意味着你在断言该方框最终将被协议确认。换句话说,你在断言从当前状态到你押注的方框所在的这条分支是正确的分支。如果你错了,可以想见你的押金将被罚没。
质押行为不能被撤销。你可以将你的质押向右移动——可以在分叉点后向上或向下选择分支——但你不能向左移动质押,因为这相当于撤销你之前作出的质押承诺。
提出争议断言的参与者要在“认可其断言有效”的继任方框上质押。通常他们可以向右移动已存在的质押到满足条件的方框上。他们不能这样做,他们可以额外再质押到需要的方框上。但是注意,他们将在相冲突的两条路径上质押,因此最终他们会损失至少一笔押金——通常自相矛盾不是明智的移动选择)。
分析 | 金色盘面:USDT折溢价指数持续走低:金色盘面综合分析:USDT折溢价指数最新值为99.0106,总体看随着美元指数调整,该指数也持续走低,但因溢价易导致套利行为,应密切关注折价率变化。[2018/8/30]
关于质押还有一个细节:如果你质押的方框被确认成为被接受的历史的一部分,你可以选择收回押金。这意味着,如果你是正确的,你可以停止移动你的质押,直到系统“追上”你,然后你就可以收回你的押金。
一棵更标准的状态树——由一连串的有效断言组成在这一点上,你可能会担心,“可能的未来”之树会变得非常大,而且枝繁叶茂。这在现实中是不可能发生的,因为这需要多方质押不一致的结果。只要他们中有一个是诚实的,其他所有人都会损失他们的押金。更有可能的是,这棵树实际上是一个由有效DA串成的链,一个接一个,所有的质押都在同一条分支上。
质押期限
我们需要系统在尽可能短的时间内对每个争议断言做出决定。所以当一个争议断言被添加上链、产生一个分叉点的时候,会有一个期限与之关联。这个期限足够长,任何人如果愿意,都有足够的时间检查这个争议断言是否有效,以及产生一笔质押交易上链。任何要质押的人都必须在期限结束之前完成操作。一旦期满,所有可以决定争议断言的质押都将可知。
纠纷
如果Alice和Bob质押不同的方框,那么以下两件事件中,必有一件为真。要么其中一个质押可以向右移动到另一个——意味着他们的断言是一致的——要么找不到这样的路径。如果没有一条向右移动的路径可以连接Alice和Bob的方框,则他们必然有分歧。他们之间一定可以找到一个唯一的分叉点——一个唯一的争议断言,某个人押注这个断言是有效的,而另一个押注其无效。
金色财经现场报道 中国政法大学金晶:智能合约不是一种真正的合同,而是自动执行程序:金色财经现场报道,在数字经济与政府监管研讨会上,中国政法大学副教授金晶指出,智能合约根本就不是一个合约,它只是一个自动执行程序,它的突出优点就是效率性,以及它的匿名性。如果将智能合约视为合同,会发现智能合约会从传统的合同规则体系中逃逸出来,我们传统的合同规则对智能合约相当于是不适用的。与其说智能合约是一种合约,倒不如说智能合约根本就不是一种真正的合同,把它理解为协议的一套执行程序,或者是履行机制更为合适。[2018/6/2]
Alice和Bob之间存在争议当两个参与者之间出现纠纷时,系统可以启动一个交互式纠纷解决协议。我在这里没有足够的篇幅来描述这个纠纷解决协议——我只想说,这是一个类似我们在其他Arbitrum文档中描述过的二分法交互协议。
纠纷解决协议的结果是一个参与者将被发现是错误的。这个参与者的押金会被罚没。质押会从所在的方框上删除。部分押金会给到纠纷的另一方,剩下的被烧掉。
多个纠纷可以同时解决,但是每个质押者一次最多只能参与一个纠纷。因为输家的押注将被删除,每解决一个纠纷都会减少整个系统的分歧数量。损失押金的参与者可以继续质押,但是新的押注无法影响质押期限已过的争议断言。这样做的效果是,一个争议断言的质押窗口结束后,一切有关如何处理该断言的分歧都将被消除。
结果确认
某个争议断言的质押期限到期后,如果所有及时提交的质押,都存在于从该断言产生的同一条分支上,那么系统就可以肯定该断言的结果为真。争议断言要么被接受要么被拒绝,当前状态会移动到争议断言右边正确的方框上。如果争议断言被确认有效,则其附带效果,如支付等,也会在链上生效。虚拟机的状态就是这样向前移动的。
一般情况下,参与者都会诚实守矩,谁也不想因为质押错误而损失押金。只有有效的争议断言会被断言,构成一条链,没有人会在任何争议断言的无效分支上质押。在这种情况下,所有的争议断言都会在质押期限一过后立即被确认。
何以无需信任
ArbitrumRollup的一个重要性质就是无需信任——只要有一个诚实参与者就可以确保虚拟机状态正确向前推进。为什么呢,想象一下Alice总是在正确的分支上质押,如果没有争议断言,她就自己断言。
因为Alice总是在正确的分支上质押,所以她会赢下每一次纠纷。如果有任何人不同意Alice,他们要么(a)与一个无关的第三方产生纠纷并损失押金,或者(b)最终和Alice产生纠纷并输给Alice押金。无论哪种情况,所有与Alice不一致的人都将失去押金。只有同意Alice的质押才能存活下去,所以Alice在树上的路径最终会成为唯一一个有及时质押的分支——并且Alice的路径会被确认。
只要Alice是诚实的,无论别人怎么做,绿色方框都会得到确认因为按这种方式系统是无需信任的,如果Alice质押某个方框,她一定知道到这个方框的路径是可信的,Alice可以确定这个方框最终一定会被确认。对于Alice来说,这条路径就跟被敲定了一样。
即使你没有质押某条路径,如果你看到有好几个人对它质押,只要你相信其中至少有一个诚实的人,你就可以肯定这条路径最终一定会被确认——对你来说,这条路径就跟被敲定了一样。
无需信任的终局性的好处
为什么说无需信任的终局性有价值?经典的例子来自于之前对其他rollup协议的讨论。假设一个虚拟机要向Alice进行支付。支付事件发生在诚实的路径上,但是包含这笔支付的方框还需要等待一些时间被链上确认。
无需信任的终局性让Alice可以立即拿到钱。如果Bob有余钱,可以立即付给Alice,以交换Alice尚未被确定的收款。Bob只有在他能确定Alice的这笔收款一定会发生,才会想和Alice交易。Bob可以通过质押诚实的结果来确保这一点——这样他对这笔支付最终一定会发生抱有无需信任的信心。不仅仅是Bob可以这样做。任何有点钱的人,都可以用这样的方式借钱给Alice或者有她这样需求的人,这些人通过提供更低的费用相互竞争,使Alice立即拿到钱的成本大大降低。
关键是,这种市场机制的可行性取决于无需信任的终局性。如果“每个人”都知道这件事最终会被确认,那么链上确认的延迟就不会带来那么多的不便。
不仅对于支付,虚拟机能做的其他事情也是如此。如果虚拟机要生成一个日志事件记录发生了什么事情,无需信任的终局性意味着任何人都可以肯定地采取行动,因为这个日志事件最终一定会被链上承认。
延迟攻击
因为这个系统是无需信任的,坏人无法强行制造错误的结果。他们能做的只能是延缓系统。这样做需要他们付出押金,如果押金数额巨大,则代价高昂。
想象一下,如果有人宁愿付出押金也要发动延迟攻击,他们能造成的最坏的情况是怎样的?
首先要注意的是,坏人无法阻止好人继续构筑诚实的分支。而且他们也无法阻止好人获得对“诚实的分支终将被确认”的无需信任的信心。
攻击者能做的只是在错误的分支上质押,以延迟诚实路径的链上确认。他们每次的质押都会产生一起和诚实参与者的纠纷,而诚实的参与者会从纠纷中拿走攻击者的一大部分押金。等到攻击者的全部押金被拿走了,链上确认还会继续向前推进。
如果攻击者多笔质押错误的结果会怎样?那么这些押金会在一个接一个的纠纷中被拿走。如果有多人质押诚实的结果,这些人都可以进入纠纷解决,并行拿走攻击者的押金。而且需要注意,所有人都很清楚发生了什么,很多人都想加入进来分一杯羹,质押正确的结果从攻击者手上抢夺押金。如果诚实方有K个人质押,则在一次纠纷延迟期内,就要消耗攻击者K份押金。如果攻击者下更多的质押,那很可能会吸引更多的诚实质押者。这对攻击者来说是个灾难。
尊敬的用户:BiKi平台将于5月28日开启交易RARE、FANS、FOTO,Maker挂单0手续费活动,详情如下:活动时间:5月28日至6月28日活动规则:活动期间.
1900/1/1 0:00:00亲爱的库币用户,为丰富杠杆代币交易区交易种类,库币杠杆代币已上线EOS3L,EOS3S,BCH3L,BCH3S.
1900/1/1 0:00:00北京时间5月27日8点,反映加密货币市场整体走势的?ChaiNext?100?指数报?4734.06?点,过去?24?小时上涨?4.38%,成交额?1567.28?亿美元.
1900/1/1 0:00:00MakerDAO核心单元成员Derek今日发文《MakerDAO的多链策略和路线图》。他表示,当我们考虑在其他链上移动DAI或铸造DAI时,一些风险是MKR持有者无法忽略的,包括:1.zkRol.
1900/1/1 0:00:00继币安智能链BSC、火币生态链HECO等交易所公链崛起后,专注提速、降费的Soloan、雪崩协议、Fantom以及Layer2层侧链们百花齐放,公链领域形成了多链并存的格局.
1900/1/1 0:00:00亲爱的用户:“币安宝”现已上线DUSK定期理财活动,为用户提供闲置数字资产增值服务。定期理财活动申购模式:先到先得申购时间:香港时间2021年05月27日20:00至2021年05月28日20:.
1900/1/1 0:00:00