10分钟读懂 Arbitrum 的工作原理

注册并登录App即可领取高达 60,000 元的数字货币盲盒:点击此处注册OKX

本文全面解读并总结了 Arbitrum 的工作与技术原理。

来源 | Tracer Blog

作者 |Nick Crow

Arbitrum 架构的概要

由于 Arbitrum (L2) 作为以太坊 (L1) 的扩容解决方案存在,因而 Arbitrum 的架构自然部分存在于 L1 上,部分存在于 L2 上。

存在于 L1 的 Arbitrum 组件是 EthBridge,这是一组以太坊合约。

EthBridge 担任对 Arbitrum Rollup 协议进行裁定,以及保护链的收件箱和发件箱。

坐落 L1 上的收件箱和发件箱答应用户、L1 合约和全节点发送它们的买卖到 Arbitrum 链上,而且调查这些买卖的成果。

Arbitrum 虚拟机 (AVM) 是 L1 和 L2 之间的网关,其功用由 EthBridge 供给。

AVM 可以读取输入,并对这些输入履行核算以发生输出。

ArbOS 在 AVM 上运转,并担任确保 Arbitrum 链上智能合约的履行。

ArbOS 彻底存在于 L2 上,并像在以太坊上相同运转 EVM 合约。

10分钟读懂 Arbitrum 的工作原理

Arbitrum 架构视图

Rollup 协议

收件箱中音讯的次序决议了买卖的成果。

• 随后,任何正在查看收件箱的人都可以知道买卖的成果,只需自行履行即可。

Rollup 协议担任承认现已有用发生的买卖的成果。

参加协议的用户称为验证者;验证者质押 ETH 进存款合约之后,即成为质押者而且可以对 Rollup 链上的区块进行质押。

• 验证者和质押者的权限都是无需答应的。

在安全性方面,只要求有一个独自的诚笃验证者来强制链的有用履行。

• 这使得 rollup 链与以太坊主链具有相同程度的去信赖。

Arbitrum 假设至少存在一名诚笃验证者。

Rollup 协议作用于 Rollup 链,这是一条独立于以太坊区块链存在的 rollup 区块链。

验证者的作用是提议新区块,这些新区块随后被添加至链上。

每一个被提议的区块终究都会由协议承认或许回绝。

每个区块由多个字段组成,除了区块编号字段之外,每个字段中给出的数据都是由区块提议者做出的断语,这些断语可能正确,也可能不正确。

• 假如恣意断语字段无效,协议终究将回绝该区块。

一旦提出一个区块,这个区块就会收到承认的最后期限。

假如有验证者不同意该区块,他们应该提出自己的有用区块;当这些诚笃验证者对无效的区块提出诈骗证明时,他们将获得一些奖赏。

质押

假如质押者想要添加一个 rollup 区块至链上,ta 有必要将其质押金放置在 ta 正添加的区块上。

Staking (质押) 是无需答应的,任何人都可以在任何供给质押的区块上进行质押。

一旦你对某个区块进行质押,在该区块被承认之前你无法提出自己的质押金。

当你对某个区块进行质押时,你将承认该区块是有用的,而且链中最新承认的区块和你已质押的区块之间的每个区块都是有用的。

假如你所质押的区块无效,或许链中最近承认的区块和你所质押的区块之间存在无效区块,那么你的质押金将被没收

假如你没有对某个区块进行质押,那么可以对最新承认的区块质押。

假如你对某个 rollup 区块进行质押,那么你可以将你的质押金扩展到你所质押的区块的恣意后续区块中。

质押所需的金额是动态的。

• 在 Arbitrum 链中,有指定为参数的根底质押金额,大部分时刻都会使用这个参数。

• 一些进犯者哪怕质押金被罚没也要对网络进行进犯以延迟网络,那么网络的安全措施就是,过了第一个未承认区块的截止日期之后,质押数量将乘以一个要素 (这个要素跟着时刻呈指数添加)。

• 这是为了在进犯期间添加此类进犯的本钱。

• 这种质押金额的添加是暂时的,仅在 Arbitrum 链的区块承认进展缓慢时才会发生。

应战协议

当两个质押者分别对两个不同的区块进行质押时 (其间一个区块不是接在另一个区块后边),那么将会有一个大家不同意的区块,因而应战就会发生。

大多数应战发生在 Arbitrum 链上,并由 L1 合约进行裁决。

应战包括发生在 L2 上的交互式、多轮分化游戏,以及在 L1 上履行的一站式证明。

提议争议区块的质押者将为他们的建议辩解,反对持有不同意见的质押者。

争议区块的提议者宣称,以上一个区块为起点,在虚拟机履行了 N 个指令之后,上一个区块的状况将被推动到他们所提议的区块的状况中。

在这场分化游戏中,争议区块的提议者 (Alice) 首先将 N 指令分化成 N/K 巨细的 K 个部分。

• 请注意,子部分的巨细与步数的巨细不相等,而是与 Arbgas 耗费的数量相等。

• 还要注意,每个部分自然会有一个起始点和端点 (这看起来微不足道,但可以使下一个点更容易了解)。

而 Alice 的对立方 (Bob) 也将把指令集分化成 K 个巨细为 N/K 的部分,可是 Bob 其间一个 K 部分的端点与 Alice 相应部分的端点不同。

• 这实践上是 Bob 承认其不同意的部分。

然后,Bob 将履行与 Alice 初始过程相同的操作,将其间一个部分分化成巨细为 N/K 的 K 个子部分,并将该部分连同已承认的子部分返回发送给 Alice。

接着,Alice 履行与 Bob 初始过程相同的操作,并承认与其端点不一致的子部分。

这个分化过程将继续进行,直到 Alice 和 Bob 承认了一个他们不同意的指令。

这个指令被发送至 L1 的合约中,这个合约担任履行该指令并决议争议的获胜者。

争议的输方将被没收质押金,其间一部分将被毁掉 (以免进犯者对冲他们的质押金),其余的部分将作为奖赏供给给诚笃质押者。

在整个分化过程中,L1 合约作为这场游戏的裁判并不知道任何关于指令的信息,它仅仅查看每个玩家是否遵守了这场分化游戏的规则。

在争议发生期间,一切其他验证者都可以在争议终究承认之前自行承认争议的成果;这意味着软分叉已发生,验证者可以继续在有用链上提交 rollup 区块。

应战期有时刻限制,每个质押者大约有一周的时刻。

每个质押者在这一周之内有必要有所动作,否则将会输掉争议。

• 想象一下国际象棋时钟。

10分钟读懂 Arbitrum 的工作原理

在应战协议期间由两位质押者参加的多轮、交互式分化游戏。实践上,有争议的断语将会有更多的指令 (如图中的波涛线),因而这场游戏将会有更多轮,但原理是相同的。

验证者

验证者是 Arbitrum 链上的一个节点,它选择监测 Rollup 协议上的活动并推动链的状况进行。

并非一切节点都充任验证者。

Offchain Labs 希望验证者在“自动、防护或许瞭望塔”三种战略中选择相同;可是,这并不是协议强制履行的。

• “自动验证者” (active validator) 经过提议新区块不断尽力推动链的进行。每条链只需求一个诚笃的自动验证者;添加自动验证者的数量并不会进步链的功率。

• “防护验证者” (defensive validator) 监测 Rollup 协议,而且仅当他们目睹到作恶行为时才会采纳举动。要么提议一个有用的区块;要么在其他验证者提议的有用区块上进行质押。

• “瞭望塔验证者"(watch tower validator) 像防护验证者相同监测着 Rollup 协议。但当他们目睹到作恶行为时,他们不会亲自提议有用区块或许对有用区块质押,而是提醒其他验证者这样做。

Offchain labs 将在他们的 Arbitrum 链上运转一个自动验证者。

大多数时刻,防护验证者和瞭望塔验证者不需求做任何事情,因而进犯者永久不会知道链上有多少个防护验证者。

虽然任何人都可以成为验证者,可是估计首要参加者仍是在链上投资了很多资产的各方,或许被投资者聘为验证者的各方。

全节点

Arbitrum 上的全节点与以太坊上的全节点具有相同的作用;他们都盯梢链的状况而且答应其他人与链交互。

由于有一个内置的 AVM 模拟器,全节点不需求对实践的 Rollup 协议有任何了解,就可以对链上的输入进行核算输出。

一个全节点可以作为链上的聚合器,进一步进步用户的本钱功率。

Arbitrum 具有向用户收取费用的功用,以补偿全节点在充任聚合器时所发生的开支。

全节点还可以紧缩买卖,以进一步下降 L1 调用数据的本钱。

• 全节点将紧缩后的买卖提交到链的收件箱 (inbox),arbOS 在那里接收并解压买卖。

一个全节点通常会一同包括紧缩和聚合功用,也就是说,它会向链的收件箱提交一批已紧缩的买卖。

序列器模式

Arbitrum 链发布时,可以选择和序列器一同发布。

序列器是一个全节点,它拥有额定的特权,可以对链的收件箱中的买卖进行排序。

这样的特权答应序列器立即确保买卖的成果。

当 Arbitrum 链与序列器一同发布时,链的收件箱被有用地分为两个:

• 没有序列器的收件箱将正常运转,节点可以发送信息至收件箱,这些信息会被符号上一个区块高度和时刻戳。

• 第二个收件箱将由序列器办理,而且只要序列器可以发送信息至收件箱。

序列器发送信息到其收件箱之后,他们可以指定这些信息的区块高度和时刻戳。

• 这包括到指定增量区块 (即曩昔的区块) 以及增量秒数 (即曩昔的秒数) 为止的区块高度和时刻戳。

• 这些增量值通常相当于 10 分钟左右。

当 arbOS 查看收件箱时,它将收到区块高度最低的信息,这个区块高度是常规收件箱或许是序列器收件箱的头部。

序列器可以回溯多少个区块数取决于在以太坊上敲定 Arbitrum 区块所需的承认区块的数量。

• 假如在以太坊上完结敲定需求 x 个区块,那么序列器就要回溯 x 个区块,以便其切当地知道哪些买卖将优先于当时的买卖。

当 Arbitrum 链上激活序列器模式时,提交至序列器收件箱的买卖会比那些提交至一般收件箱的买卖提早 x 个区块被敲定。

• 由于对即时敲定、5 分钟敲定、10 分钟敲定进行比较后,三者都有很大的实践差异,所以这被认为是正向的权衡。

然而,某种程度上,一名作恶的序列器可以使用这些特权获得优点。

• 一名作恶的序列器可以经过不将用户的买卖放进序列器收件箱来查看用户的买卖,迫使用户在发现其被查看之后,发送相同的买卖至一般收件箱中。

• 序列器也有能力抢跑用户的买卖。

开始的 Arbitrum 链上的序列器将有 Offchain Labs 运转。

Cornell Tech 团队现已在研发去中心化序列器算法上取得必定的成果,这项研讨还差一些工作需求完结,完结之后便可以应用到 Arbitrum 的长期解决方案中。

10分钟读懂 Arbitrum 的工作原理

序列器模式敞开与封闭时,链中收件箱的异同。

ArbGas / 费用

ArbGas 的操作原理与以太坊 gas 类似,用于衡量 Arbitrum 链上的核算本钱。

然而,Arbitrum 链没有一个硬性的 ArbGas limit 要求,而且 ArbGas 耗费得比以太坊 gas 要快得多。

ArbGas 的一个关键作用是为验证核算成果所需的时刻供给一个可猜测的度量。

每一个 rollup 区块内都包括一个关于链上 ArbGas 耗费总量的声明,这意味着当时区块的声明与前一个区块的声明之间的差异应该是当时区块耗费了多少 ArbGas 的有用指标。

经过这种方法,查看区块有用性时,验证者可以将他们的 gas limit 设置为这个值,假如这些 ArbGas 在区块完结履行前就耗尽了,那么就可以承认这是一个无效区块,并成功应战了该无效区块。

用户在向链提交买卖时,会被收取费用。

假如用户将他们的买卖发送给一个聚合器,那么一部分费用将自动支付给这个聚合器。

剩下的费用将被发送到网络费用池,用于支付确保整条链安全运转的服务费。

费用还包括 L2 买卖、L1 数据调用、核算以及存储本钱。

费用以 ETH 的方式支付。

总结

Arbitrum 是由 Offchain Labs 团队开发的 L2 扩容解决方案:一个使用多轮交互应战协议的 optimistic rollup。

Arbitrum 的旗舰链已于 5 月 28 日面向开发者发布,一旦项目达到必定数量,就会向用户敞开。

从用户的角度来看,与 Arbitrum 链交互和与以太坊交互几乎无差别。

原文出处:以太坊中文社区,不代表云顶量化立场,如有侵权,请联系删除

云顶量化是币圈专业量化策略团队,团队成员均有3年以上金融量化实战经验,主要针对比特币量化(BTC),以太坊量化(ETH),狗狗币(DOGE),SHIB等各种虚拟数字货币推出资金费率套利策略和合约趋势型量化机器人策略。经过长时间实盘测试,策略的稳定型,实用型,可行性都是顶尖水平。

量化客服微信:dx185388