投資理財
    ERC-4337:探索帳戶抽象的五個主要技術組件

    ERC-4337:探索帳戶抽象的五個主要技術組件

    發布日期:5/20/2023

    A- A A+

    新聞視界時報-記者王秉呈

    ERC-4337標準有五個關鍵元件值得關注:UserOperationBundlerEntryPointAggregatorPaymaster

    1UserOperation

    簡單來說:UserOperation捕捉用戶的意圖和操作,包括與發送方、有效負載和gas費相關的資訊。由於它的設計是為了避免更改共識,乙太坊團隊選擇創建一個全新的結構,以獲取代表使用者發送的交易所包含的全部必要元素。

    為了避免混淆,他們特意沒有將其稱為“交易”。

    更具體地說:智慧合約錢包現在可以創建叫做UserOperation(userOp)的偽交易對象,代表使用者所期望的交易意圖,而無需初始化傳統交易。

    UserOperation不能訪問任何在模擬和執行之間可能發生變化的資訊,例如當前區塊時間、雜湊值、區塊號等。這是為了確保它的有效性,並且能夠為其鏈上交易執行支付費用。

    UserOperation同樣只允許訪問與發送方位址相關的資料。

    與交易類似:UserOperation包含sender、to、calldata、maxFeePerGas、maxPriorityFee、signature和nonce欄位。

    與交易不同:nonce和signature欄位的使用不是由協議定義的,而是由各帳戶實現定義的。

    UserOperation記憶體池

    簡單來說:UserOperation記憶體池是一個等待網路處理的未執行UserOperations的池。UserOperations被發往UserOperation記憶體池,而非傳統的公共記憶體池。

     

    更具體地說:UserOperation記憶體池是任一個UserOperation作為真正交易上鏈之前的最後一個“停靠站”,然後,稱為bundler(下文將詳細介紹)的新質押者可以從該記憶體池裡提取各UserOperation,充當了EOA角色,支付gas費並將UserOperations發送到共識層作為交易執行。

    這是一個專用的高級UserOperation記憶體池,僅供UserOperations使用,也稱為canonical記憶體池。該記憶體池遵循並嚴格執行ERC-4337規則。ERC也允許為UserOperations提供不遵循canonical記憶體池規則的替代記憶體池(alt-mempool)。

    遵守ERC規則的UserOperations被發送到canonical記憶體池。那些不遵守ERC規則的可以被發送到其他規則不同的替代記憶體池。這些替代記憶體池中的UserOperations僅被發送給該池的參與者。

    Bundlers可以通過加入白名單或加入另一個不同ID的替代記憶體池來應對canonical記憶體池的異常情況。Bundlers可以自由加入canonical記憶體池(他們必須無一例外地遵守ERC規則)及替代池。

    注:UserOperations記憶體池的最終版本尚未完全定義,因此預計會有進一步的變化。然而,一個完全去中心化的記憶體池對於協定的採用和健康來說是必不可少的。

    2Bundler

    簡單來說:Bundler充當著它從canonical記憶體池和替代記憶體池中所提取的全部UserOperations的EOA的角色,Bundler將UserOperations發送到EntryPoint合約進行驗證和完整性檢查,然後,最後進入我們在ERC-4337出現之前的世界裡所習慣的交易流程。

    更具體地說:Bundler是一個專門的操作員,它監聽UserOperation記憶體池和所有記憶體池,提取多個UserOperations,將它們打包在一起,並將交易包發送給EntryPoint合約執行。這看起來非常像從EOA到智慧合約的交易,其中UserOperations的執行就如內部交易。“from”地址將是Bundler,“to”地址將是EntryPoint合約。

    Bunders選擇將哪些UserOperations對象包含在他們的打包交易中,基於與今天乙太坊的區塊建設者所使用的類似的價值最大化邏輯。

    成為Bundler的經濟模型/動機是什麼?

    交易上鏈時,Bundler充當“from”位址,正因如此,Bundler將使用ETH為交易包支付gas費。Bundler作為所有單個UserOperation執行的一部分,隨後會獲得費用補償。

    在接收UserOperation之前,Bundler將模擬它來驗證簽名,確保UserOperation可以支付費用,並確保UserOperation在模擬和執行時以相同的方式運行。要靠Bundler來避免包含驗證失敗的UserOperations,避免吸收那些無法支付的gas成本。

    注意:在ERC-4337框架中,區塊建設者也可以充當Bundlers角色,以提供更強大的執行保證,但這並不是必需的。如果沒有這種更強大的執行保證,交易包將被發送到公共池,並且有可能發生搶先交易,導致交易包交易失敗。

    {{AD}}

    3Paymaster

    簡單來說:Paymaster是一個可選的質押者,可以為其他使用者的交易支付費用。為什麼?Paymaster可以為乙太坊交易帶來許多有趣的新功能,例如:

    應用開發者可以很容易地為他們的用戶補貼費用,例如作為一種獲客手段。

    用戶可以使用ERC-20代幣或信用卡或其他訂閱服務等鏈下支付方式輕鬆支付gas費。

    更具體地說:ERC-4337流程並沒有強制要求必須使用paymaster。UserOperation使用paymaster通常有以下兩種選擇:

    驗證Paymaster:這些paymaster提供與鏈下流程相關聯的gas抽象。例如,它可以讓使用者用信用卡或訂閱服務支付交易費用,而不會損害他們的帳戶託管。

    存款Paymaster:這些paymaster提供與鏈上ERC-20代幣相關聯的gas抽象。

    Paymaster要麼必須限制其存儲使用,要麼必須進行質押。

    注:為了防止濫用,系統將降低速度或暫時封禁提交大量無效UserOperations的Paymaster。為了防止實體的“女巫攻擊”,全域實體需要在系統中進行質押,這使得拒絕服務(DoS)攻擊的成本很高。該質押不會被罰沒,可隨時提取,但會受延遲限制。不訪問全域存儲的全域實體例外。

    4Aggregator

    簡單來說:Aggregator是一類特殊的參與者,利用helper智慧合約來處理批量UserOperation簽名,並將它們轉換成一個簽名,也就是將其聚合。

    更具體地說:Aggregator是一個受合約帳戶信任的helper智慧合約,用於驗證聚合簽名。UserOperations包由Aggregator在單個步驟中進行驗證,而不是單獨驗證每個簽名。Aggregator旨在提高大規模交易處理的效率和成本。

    當前的現實:ERC-4337的交易量還不夠高,不足以顯現簽名聚合的好處,但交易量正在快速增長,一旦達到臨界值,Aggregator就會成為一個關鍵的利益相關者,促進大規模交易。

    壓縮的實現過程超出了本文的討論範圍。然而,它已經整合進ERC-4337的設計中。最流行的壓縮方法就是使用BLS簽名聚合。

    從用戶的角度來看,他們看不出有任何不同,但是開發人員需要在智慧帳戶中部署BLS簽名邏輯。

    5EntryPoint

    簡單來說:EntryPoint合約是一個單例合約,驗證並執行發送給它的UserOperations包。它檢查並確保由bundler發送的提交到鏈上的所有UserOperations都是真實有效的。

    更具體地說:EntryPoint合約是所有符合ERC-4337標準的智慧合約錢包必須使用的全域入口點,以便在EVM上進行交易。這一概念類似於單個質押存款合約。

    EntryPoint的使用簡化了智慧合約錢包使用的邏輯,將確保安全所需的更複雜功能推至入口點,而不是錢包本身。其核心目的是防止錢包在進入網路之前進行不必要或未經授權的操作。

    EntryPoint序列

    下圖展示了EntryPoint是如何管理Bundler發送的UserOperation包的。通常有兩個階段,但在使用aggregator的情況下,會增加一個階段。

     

    EntryPoint序列相對簡單,有兩個階段:

    序列中的每個迴圈都有自己的角色,如下:

    迴圈1Aggregator迴圈

    如果一個交易包使用了aggregator,那麼EntryPoint會首先檢查aggregator。由Entry Point來驗證簽名。

    迴圈2:驗證迴圈

    首先,它會檢查合約帳戶是否存在。如果不存在,它就會創建一個。

    如果沒有定義paymaster序列驗證Contract Account在EntryPoint中是否有足夠的存款來支付gas費。如果存款充足,它就會為UserOperation付費。

    如果定義了paymaster:序列驗證paymaster在EntryPoint合約中是否有足夠的存款。如果存款充足,那麼合約將驗證UserOperation。

    迴圈3:執行迴圈

    它使用callData調用合約帳戶。

    如果定義了paymaster,它將調用paymaster中的自訂費用邏輯。

    只有在UserOperation通過序列迴圈的考驗後,才能最終上鏈。

     

    結論:

    雖然為了避免混淆,ERC-4337特意使用了不包含“交易”字眼的用語,但實際上,它可以被視為使用者交易上鏈的替代流程。一旦把所有組成部分連接起來,協議就有能力向現有EOA交易流程引入新的使用者意圖層。

    AA(帳戶抽象)錢包的用戶將把他們的意圖傳遞給UserOperations記憶體池。Bundlers將這些意圖轉換為網路可以像以前一樣處理的簽名交易。

    雖然對於開發者來說,這看起來像是一個有額外步驟的“交易”,但對於使用者來說,這就是手動輸入用戶名/密碼並將其記在筆記本上以確保安全,或使用OAuth只點擊幾下就可訪問web3應用程式之間的區別。

     

     

    狂賀!奇點空間設計粉絲專頁按讚數突破 18,000!

    感謝大家的熱情支持與肯定,未來我們將持續為大家帶來更多創意設計與優質服務,與您一起打造更美好的空間體驗! 🎉🎉

    相關新聞

    全球跨境匯款服務:萬事達卡提供快速支付體驗

    全球跨境匯款服務:萬事達卡提供快速支付體驗

    萬事達卡:跨境匯款服務促進台灣境內外人士金融便利

    2/26/2024

    一週攬下數十萬用戶,基於Solana的AR加密遊戲GG怎麼做到的

    一週攬下數十萬用戶,基於Solana的AR加密遊戲GG怎麼做到的

    透過病毒式行銷, 推出不到一週的GG獲得天胡開局。

    2/4/2024

    FTX擬出售14億美元的Anthropic股份

    FTX擬出售14億美元的Anthropic股份

    美國法官在最終判決中命令Ryder Ripps等人向Yuga Labs支付900萬美元;Genesis尋求破產法院批准出 ...

    2/4/2024

    以太坊坎昆升級將至:盤點利好賽道及20個項目

    以太坊坎昆升級將至:盤點利好賽道及20個項目

    2月1日,Cointelegraph報告,以太坊開發人員計畫2月8日確定Dencun升級的主網啟動日期。在Reddit社 ...

    2/3/2024

    交易所爭上的Solana生態交易聚合器Jupiter(JUP)究竟有何特殊

    交易所爭上的Solana生態交易聚合器Jupiter(JUP)究竟有何特殊

    1月31日,包括Binance、OKX、Bitget等在內的多個主流交易所紛紛宣布上線Solana生態交易聚合器Jupi ...

    2/3/2024

    許正宇:香港將於短期內就擬議的虛擬資產OTC監管框架展開諮詢

    許正宇:香港將於短期內就擬議的虛擬資產OTC監管框架展開諮詢

    據信報道,香港財經事務及庫務局局長許正宇在網志「財庫論」表示,虛擬資產生態圈包括一些場外交易所(Over-the-cou ...

    2/2/2024

    FTX律師:FTX放棄重啟加密交易所,但將全額償還債權人

    FTX律師:FTX放棄重啟加密交易所,但將全額償還債權人

    根據The Block報道,FTX律師Andrew Dietderich在周三的聽證會上表示,已放棄重啟交易所的計劃,但 ...

    2/1/2024

    “和解”已兩個月,幣安終“回血”

    “和解”已兩個月,幣安終“回血”

    儘管11月Binance的資金流出給其他競爭者帶來的分食份額的機會,但市場情況又給了Binance守住基本盤的助力。同時 ...

    2/1/2024

    DWF Labs為2023年交易數量最多的加密風險投資者,Coinbase Ventures排名第二

    DWF Labs為2023年交易數量最多的加密風險投資者,Coinbase Ventures排名第二

    根據彭博社報道,根據PitchBook發布的「2023年交易數量最多的加密風險投資者」排行榜,排名前11位的投資機構分別 ...

    1/31/2024

    彭博:隨著比特幣現貨ETF時代終止了關鍵套利交易,比特幣期貨需求降溫

    彭博:隨著比特幣現貨ETF時代終止了關鍵套利交易,比特幣期貨需求降溫

    根據彭博社報道,比特幣現貨ETF在美國上市後,投資者對比特幣期貨的需求有所緩解,這初步顯示該產品將如何影響加密貨幣交易趨 ...

    1/31/2024