本文為Arbitrum、GoPocket和Rebase社區聯合舉辦的?『Arbitrum基礎架構講解:快速入門』?講座的文字整理版。
Arbitrum是什么?
Arbitrum是以太坊的樂觀式Rollup?擴容方案,有以下特性:
無需信任的安全性:安全扎根于以太坊,任何人都可以確保正確的L2結果。若L2鏈完全宕機,僅憑以太坊上的信息就可以重建整條L2鏈。
以太坊兼容性:所有EVM標準的合約和轉賬都可以在Arbitrum上執行。
可擴展性:將以太坊的計算和存儲轉移至鏈下,吞吐量更高。
最低成本:為最小化以太坊L1燃氣成本而生,降低每筆交易的成本。
瞬時最終性:開啟序列器模式的Arbitrum鏈會有最終瞬時性這一殺手級特性,瞬時最終性也即交易確認幾乎不需要等待。Arbitrum團隊上線的官方旗艦鏈ArbitrumOne開啟了序列器模式。
dApp開發者關心的內容
代碼需要修改嗎?代碼無需修改。完整的EVM兼容性對開發者是相當友好的。
支持什么語言?Solidity/Vyper,沒有編譯器、版本限制。
開發環境一致嗎?各種工具如Truffle、HardHat以及IDE均可以在Arbitrum上使用,開發環境完全一致。
沒有Gaslimit!Arbitrum上沒有gaslimit,合約開發者有新的玩法。
總結來說,合約開發者從以太坊遷移到Arbitrum其體驗是相同的,幾乎等同于從Rinkeby遷移到主網。當然,會有一小部分特性因為L2的原因而有所不同,請見?官方文檔:與以太坊的不同點。
整體架構
Arbitrum整體架構可以簡要分為L1上的EthBridge與L2上的AVM。
L1EthBridge
EthBridge主要管理著Inbox,Outbox和Rollup合約。
Curve:Arbitrum Tricrypto 池也可能會受影響,請退出使用:7月31日消息,Curve 發推稱,由于版本 0.2.15-0.3.0 中的 Vyper 編譯器存在問題,CRV/ETH、alETH/ETH、msETH/ETH、pETH/ETH 被黑客攻擊。此外,Arbitrum Tricrypto 池也可能會受影響,審計人員和 Vyper 開發人員暫未找到可攻擊漏洞,但請退出使用。[2023/7/31 16:09:03]
Inbox:所有交易都會先發送至Inbox然后再送給L2。Arbitrum鏈將各條信息逐一讀取并依次執行。鏈的狀態僅取決于收件箱,Rollup中也不存在PoW/PoS記賬,所以交易的結果在你將交易提交到收件箱的那一刻就已經是確定的了。
Outbox:記錄著在L2上發生的最終需要返回以太坊上的事務或消息,如提現。
Rollup及挑戰:Rollup協議記錄了一條rollup區塊組成的概念上的鏈。?驗證者可以提出rollup區塊。如果有驗證者不同意其他驗證者提出的rollup區塊,可以發起挑戰。挑戰的裁判為以太坊上的EthBridge,輸家質押的資金一半會被銷毀,一半獎勵給贏家。
L2AVM
Arbitrum在L2底層實現了AVM虛擬機和指令集,并自定義了一種語言mini及其編譯器,通過mini在ArbOS中實現了EVM模擬器。AVM:一個在L2上運行的『操作系統』。ArbOS對不同的合約進行隔離并追蹤其資源使用情況。
ArbOS:Arbitrum虛擬機,AVM,是L1和L2的接口。L1提供了AVM接口并確保VM的正確運行。L2運行AVM并提供了一些功能,如部署合約,運行合約,追蹤余額,以及所有有智能合約的區塊鏈所需的能力。
每個Arbitrum鏈都只有一個AVM,執行所有運算,維護所有存儲空間。有些其他系統對每個合約都單獨運行一個虛擬機,而Arbitrum更像以太坊,一個虛擬機管理整條鏈。對多個合約的管理是由運行在AVM上的軟件實現的。
欺詐證明的設計范式:再執行vs單步證明
當有人對rollup區塊發起挑戰時,以太坊上的仲裁合約需要對rollup區塊的真實性做出驗證。Arbitrum與Optimism使用了不同的設計范式。最終導致了雙方架構和流程有了顯著不同,二者的優缺點與整體設計都來自各自的設計范式。
Starbucks Odyssey推出首個開放版NFT郵票系列:6月21日消息,據NFT市場Nifty Gateway信息顯示,星巴克Web3計劃Starbucks Odyssey將推出首個開放版郵票系列 “Starbucks Odyssey Avatar Collection”,該系列提供三款獨特的設計,靈感源自其原始頭像:熊、老虎和蜂鳥。據悉,該NFT系列將于北京時間6月23日上線銷售,且僅持續48小時,每張NFT郵票售價為25美元,每用戶限購3份郵票。[2023/6/22 21:53:14]
再執行
Optimism使用再執行設計范式,有挑戰時直接在以太坊上重新執行整條交易。
單步證明
Arbitrum使用單步證明設計范式,將被挑戰的rollup區塊中的命令通過分割協議,進行多輪分割,最終會分割為一個不可分割的最小AVM指令集,如ADD。最終以太坊進行單步證明。
二者優缺點
整體而言,Arbitrum的設計范式優于Optimism,有以下非常關鍵的優點:
Gas費用低:Optimism每次交易均需要向L1提交狀態根,Arbitrum則采用批量提交的方式。此差異會帶來顯著的?費用差距。無Gaslimit:由于單步證明每次都分割為最小指令,Arbitrum不需要引入gaslimit。而Optimism為了確保每筆交易都能被以太坊驗證,那每筆交易都必須低于以太坊的gaslimit。更輕便的證明:AVMstate易于被L1證明,單步證明也縮減了證明所需的gas消耗。指令集靈活性:對EVM實現,AVM使用虛擬化設計,而OVM使用容器化設計。如果EVM修改/刪除了某些操作碼,Optimism在L1上的歷史交易的可驗證性上將變得比較棘手。而AVM掌握自己的技術標準,不存在此問題。EVM兼容性:AVM是EVM全兼容的,這意味著合約開發者不需要修改代碼即可遷移,而移植到Optimism上則需要對代碼進行修改,Optimism需要特殊的solidity編譯器來生成OVM字節碼,開發者需要遵循其特殊規則。
當然,Arbitrum這種設計也會有一些缺點,但通常我們認為這些缺點不構成實質問題:
Bitget新增支持在ArbitrumOne上的USDT、USDC和ETH存取款:12月20日消息,加密貨幣交易所Bitget宣布新增支持在ArbitrumOne網絡上的USDT、USDC和ETH存取款服務。[2022/12/20 21:56:43]
對Arbitrum開發團隊而言,AVM實現更復雜。但這與用戶或合約開發者無關。
多輪互動需要雙方在挑戰結束前都在線,以應對挑戰。但這應該對于絕大部分驗證者都不是問題。
用戶角色
普通節點
記錄并追蹤Arbitrum鏈的狀態并接受來自用戶RPC調用的網絡節點。類似于L1以太坊上的非挖礦節點。任何人都可以選擇成為普通節點。
聚合器
聚合器,Aggregator。一種Arbitrum全節點,接收用戶的交易并批量聚合提交。任何人都可以選擇成為聚合器。
序列器——特殊身份,特殊能力
序列器,Sequencer。一個有權對一定時間內的交易進行重排序的節點,也具有批量聚合提交交易的能力。開啟序列器模式的Arbitrum鏈可以使用序列器。
由于這種排序能力,以及上面提及的進入收件箱后交易結果就確定了這兩個特性,向善意的序列器提交交易后,你就可以直接根據序列器返回給你的結果確認最終性而無需參考其他消息。也即在使用Arbitrum的時候你會發現,提交交易后幾乎瞬間交易就完成了,幾乎讓所有UI中的等待動畫都失去了用武之地。
序列器在ArbitrumOne上線初期使用的是中心化指定的方式,由Arbitrum官方運行,并非任何人都可以成為序列器。Arbitrum團隊日后會研發去中心化序列器方案。更多關于公正排序、去中心化序列器的信息請見?Order-FairnessforByzantineConsensus。
即使序列器是ArbitrumOne中主要的交易樞紐,也不能據此認為Arbitrum是中心化的網絡。因為用戶如果不信任序列器,仍然可以向其他普通節點或聚合器提交交易,這些交易將被提交給慢速收件箱。也就是說Arbitrum網絡仍然保留著抗審查能力,即使序列器作惡也無法阻止你的交易提交。另外,序列器的排序能力是有限的,序列器更無法偽造交易。
0x API已上線Arbitrum:9月20日消息,去中心化交易協議0x的API現已在Arbitrum上線,開發者現在可以用0x API來聚合流動資金和智能訂單路由(routing),包括執行價格、深度流動性等等,目前已支持Matcha、Brave、DeFi Saver、DexKit、DODO、Frontier、Nested、Tally、Zapper和Zerion,預計在未來幾周會有更多的集成。[2022/9/20 7:07:58]
驗證者——L2安全基石
驗證者,Validator。質押資金并參與可爭議斷言的人。既可以主動發起斷言更新狀態,也可以監控其他驗證者的斷言并對錯誤斷言進行挑戰。
驗證者的任務是維護rollup鏈的安全,提出新的或質押于已存在的rollup區塊。如果有驗證者不同意其他驗證者提出的rollup區塊,可以發起挑戰。挑戰的裁判為以太坊上的EthBridge,輸家質押的資金一半會被銷毀,一半獎勵給贏家。
驗證者對網絡的安全保障有一個簡單易證的原則:anyTrustGuarantee,也叫一誠則成原則,即只要有一個誠實的驗證者,即可讓整個鏈的狀態向正確的方向推進。
Rollup協議與挑戰
Rollup協議記錄了一條rollup區塊的鏈條,它們與以太坊區塊并不是同一個概念。你可以認為rollup鏈是一條概念上的單獨的鏈,是由Arbitrumrollup協議管理并監控的。Rollup鏈只可能有一條路徑是正確的,其余的分支最終會被挑戰證偽,一般情況下無人作惡則不會有錯誤的分支。
每個rollup區塊包含:
rollup區塊編號
父rollup區塊編號:本rollup區塊之前一個正確的rollup區塊的編號
本鏈歷史上所發生的運算量
本鏈歷史上所接收的收件箱信息數量
對本鏈歷史輸出的哈希
鏈狀態的哈希
FTX已支持Arbitrum主網:2月8日,據官方消息,FTX現已支持Arbitrum主網,并開放主網Arbitrum充值及提現功能。[2022/2/8 9:37:25]
驗證者可以提出rollup區塊。新的rollup區塊一開始是待決狀態。最終每個rollup區塊都會被解決,要么被確認,要么被拒絕。已確認的區塊構成了整條鏈的歷史。
質押
在任何時間,都會有一部分驗證者成為質押者。質押者通過EthBridge充值資金,如果輸掉挑戰則會被沒收。目前所有鏈接受以太幣為質押物。
單筆質押可覆蓋一系列rollup區塊。每個質押者都質押在最新確認區塊上;如果你質押了一個區塊,你還可以繼續向其子區塊質押。所以你是可以質押在一串連續正確的區塊上的。
創建新的rollup區塊必須成為質押者,且已在你所創建的區塊的父區塊上質押了資金。如此便確保了作惡則懲罰機制能夠執行。
挑戰
當一名驗證者不同意另一名驗證者時,會進入挑戰。?每一個DA都有一個挑戰期,在挑戰期結束之前才能進行挑戰。在ArbitrumOne上為7天。關于如何合理地設置挑戰期請參考EdFelten的文章?Optimizingchallengeperiodsinrollup|byEdFelten|OffchainLabs|Medium。
挑戰者發起挑戰后,應戰者將被挑戰的斷言分為分割協議規定的若干份;挑戰者繼續指出其中有問題的一段,應戰者再繼續分割;經過多輪互動后,問題聚焦在一條最小的不可分的指令上,應戰者再向EthBridge提供單步證明。EthBridge驗證后整個挑戰結束。
挑戰結束后,一半資金會獎勵給贏家。另一半資金會被銷毀。?通過低成本解決爭議,對輸家進行高額懲罰的密碼經濟學方式,Arbitrum有力地震懾了作惡行為,即使是發生爭議的情況下,也不會帶來明顯的鏈上沖擊。在正常情況下,驗證者會觀點一致并推進鏈的狀態。
Layers之間的互通性
代幣橋接
自由代幣橋接:原則上來說,L1到L2代幣橋接是自由、免許可的,任何人都可以將任何幣種跨到L2,甚至還可以制作自己的自定義橋。如果某幣種尚未跨到L2上,只需要調用跨鏈功能即可,該操作普通用戶就可以完成,無需代幣項目方許可或者任何特殊權限或專業知識。但目前項目剛上線,為防止不可測的問題,官方還沒有開啟自由橋接,而使用了白名單機制。日后會放開限制。
特殊代幣走橋:Rebase型,持幣生息型,特殊功能代幣,這種需要實現特殊的橋,使用特殊橋進行遷移,否則會出現不可預知的問題。
地址映射關系:L1上的代幣跨到L2后,其地址是確定的。L1地址到L2地址的關系為單射,且可逆推。通過權威地址映射oracle確保,同一個L1代幣不論走過哪些自定義橋,在L2上最終只會有一個合約地址。
反向橋:L2上的原生代幣跨到L1上的橋,目前還不存在。在L2上原生發幣又想回到L1的項目需要注意。
L1到L2:充值
充值最重要的概念是RetryableTickets,該機制解決了充值的原子性和多余燃氣處理問題。在L1充值到L2時,如果不使用Retryable,一旦出現L1成功了但L2上失敗的情況,用戶的錢將永久被鎖定在L1合約里。所以當前的Arbitrum版本已經禁止非Retryable的普通方法。
使用Retryable如果失敗后,可以在一個挑戰期內重試領取。
L2到L1:提現
普通提現
普通提現在L1上有一個等待期,結束后需要手動領取,該過程也需要花費L1上的Gas。
快速提現
快速提現依賴快速提現服務商,以及流動性提供者或交易對手。而快速提現能夠實現而不用等待7天挑戰期,則基于對Arbitrum最終性的理解,文末會詳述。
主要實現方式包括可交易提款和原子鎖交換。目前有cBridge,renBridge,Connext等方案為Arbitrum提供快速提現或跨鏈服務。
另外,單獨的NFT、L2向L1的外流信息等非同質化的token和message,并不適用于基于流動性的快速提現/傳播,因為沒人能夠提供等價物。
自定義官方橋
若想使用?官方橋?但自己實現另一套UI用于自己的產品中,請參考?arbitrum/packages/arb-tsatmaster·OffchainLabs/arbitrum·GitHub?中的內容。
ArbGas
ArbGas是Arbitrum用來管理鏈上執行成本的。與以太坊gas的理念一致,每個AVM指令都會有一定數量的ArbGas消耗,而一次運算的總成本是該運算包含的指令的ArbGas的加總。
我們需要關注幾個點:
豐饒度和數量級:ArbGas的值遠大于L1的gas。ArbGas并不能直接與以太坊gas相比。開發者和用戶應該把ArbGas理解為是比以太坊gas更加且便宜的。
無gaslimit:Arbitrum并沒有硬性的ArbGaslimit,正常情況下Arbitrum鏈每秒可以消耗任意數量的ArbGas,而在以太坊中則有gaslimit。
ComputationalGas:用來描述AVM計算成本,一般情況下接觸不到,在Arbiscan中每條交易的AdvancedInfo中可以查到。該數值與用戶交易時的gas不應混淆。
二價競拍:在以太坊上,一筆交易的燃氣價格等于其聲明的gasbid(price×limit)。在Arbitrum則不同,gasbid會視作該交易所愿支付的最高價格。所以,在Arbitrum中,提交交易時錢包上顯示的gas使用量和實際使用量是不同的,實際使用量可能會比顯示的少50%。
Arbitrum網絡費用的收費機制:Arbitrum的網絡費用主要用于補償驗證者、聚合器、序列器等工作角色在L1上的gas費用,具體經濟模型由ArbOS管理。
對Arbitrum交易成本的預期:
ArbitrumL2的固定成本主要來源于L1上的rollup信息提交行為,其中的固定成本可以攤薄,對固定成本而言_使用人數越多則越便宜。另外,L1上的gas水平因此也影響到L2上的gas水平。綜合這兩方面考慮可以說,在一定數量級內,L1上的用戶涌入到Arbitrum上的越多,則Arbitrum使用起來越便宜。
最終性
Arbitrum上的最終性有四種層級。不同的用戶或開發者,需要根據自身的需求來確定使用不同的最終性標準。對于普通用戶或普通項目的開發者而言,信任序列器即可,這也是大部分錢包、應用默認的選擇,用戶什么也不需要做。特殊項目的開發者,如跨鏈協議等,可能需要考慮更加堅實的最終性以應對極端情況。
以太坊確認
一個挑戰期過后DA被確認,最強的最終性,完全無法更改。由于時間太久,除了官方橋提現等動作需要依照此最終性以外,在實踐中不太可能使用,顯然你不可能在SushiSwap上做了一筆交易后,7天后才能說這筆交易確認了。
信任的驗證者質押
如果你信任某個驗證者,或者你自己就是驗證者,你可以選擇相信別人或你自己。根據一誠則成原則,只要這些驗證者是誠實的,他們背書的DA最終會得到確認。
驗證者或聚合器在不質押的情況下為交易背書
不質押的驗證者,或者普通的聚合器,由于缺乏質押,其可信性比上一種要小一些。但如果你信任的話,也可以采用這種標準。
信任序列器
信任序列器的最終性是最快的,幾乎是瞬時的。只要序列器不作惡,那返回的結果都是正確可信的。大部分用戶和dApp都會采用這種方式。
去中心化技術既是一種組合:一種社會和技術位的構建以形成一個功能性整體,一種組合:一種數據存儲、一種歷史記錄,以及共同創造一個大于其總和的整體.
1900/1/1 0:00:00編者按 資本市場從來不缺各種傳奇。在這里,人們追逐夢想、渴求財富。有人以夢為馬、腳踏實地;也有人玩弄財技、甚至違規違法.
1900/1/1 0:00:00從以比特幣為代表的區塊鏈1.0時代,到以智能合約為基礎、以金融應用為核心的區塊鏈2.0時代,再到區塊鏈應用于政務服務和更廣泛的各行業,10余年間,我們已經開始進入區塊鏈3.0時代.
1900/1/1 0:00:00你搶到數字科幻卡牌了嗎?這是近兩天科幻圈與收藏圈的熱門話題。由境內首個經民政部門批準注冊的科幻協會上海浦東新區科幻協會推出的數字科幻卡牌,9月26日正式上架螞蟻鏈粉絲粒的支付寶小程序,首日上架的.
1900/1/1 0:00:00頭條 ▌支付寶發布《我不是胖虎》系列NFT,并將于9月16日推出亞運會數字火炬9月12日,支付寶發布《我不是胖虎》系列NFT,該系列分為4個時段售賣.
1900/1/1 0:00:00很高興看到大家對ArbitrumOne?的熱情。我承認我起初太悲觀了,但上周末ArbitrumOne的增長是指數級的,其TVL(總鎖倉價值)在48小時內從3億美元增加到20億美元.
1900/1/1 0:00:00