本文不會從頭介紹EIP-4337,僅介紹4337的主要合約是如何實現的。適合對4337有一定了解的開發者,由其是錢包開發者,以及愛好者或研究員閱讀。
主要內容位于流程圖中Figma。
需要配合4337源碼閱讀GitHub—eth-infinitism/account-abstractionatmain。
4337Spec中有更多詳細細節EIP-4337:AccountAbstractionusingaltmempool。
請注意:
本流程圖只畫出了普通類型的交易,未涉及Aggregator。掌握普通流程后才方便掌握聚合型的交易。流程圖中箭頭不代表程序的調用棧或輸入輸出,僅代表相關角色、函數、事件的發生的先后順序。為方便讀者對宏觀架構的快速理解,流程圖中省略了一部分函數調用和邏輯。被省略的部分有可能對你研究的問題或疑惑有很大意義,具體看你想了解什么內容,所以還是需要你必要時仔細閱讀源碼。核心概念
Blur:Blend將于5月22日再次上新,當前貸款額已達2.5億美元:5月20日消息,NFT聚合市場Blur在官推宣布旗下NFT借貸平臺Blend將于5月22日再次上新,但沒有透露下次將要支持的NFT系列名稱,本文撰寫時Blend平臺上已支持6個NFT系列,分別是:CryptoPunks、Azuki、Milady Maker、DeGods、BAYC和MAYC。
此外,Blur還透露截止目前Blend平臺貸款額已達2.5億美元,在NFT借款人交易額中占據了超八成的市場份額,另外一項促進部分償還貸款的功能也可能在下周上線。[2023/5/20 15:15:20]
研究4337需要掌握以下核心概念:
UserOperation的內容EntryPoint實現Wallet實現Paymaster實現驗證階段、執行階段的執行流程與錯誤處理Gas的支付流程與計算UserOperation
1inch在Optimism和Arbitrum等5個網絡上推出Fusion模式:5月5日消息,DEX聚合器1inch在Optimism、Arbitrum、Avalanche、Fantom和Gnosis啟動Fusion模式。在1inch Swap Engine的支持下,Fusion模式使用戶能夠在各種DEX上兌換代幣,而無需支付任何網絡費用,還能為用戶提供額外的MEV保護。(Medium)[2023/5/5 14:44:05]
一種內容類似transaction的偽交易對象,通過新的RPC方法eth_sendUserOperation提交給節點。
UO中的字段含義大部分是顯然的,僅挑選幾個容易誤解的進行分析:
sender,此處指的是要交互的wallet,而非msg.sender或tx.origin等其他任何概念verificationGasLimit,驗證交易時的gasLimitcallGasLimit,執行交易時的gasLimitpreVerificationGas,補償bundler調用handleOps()時會一部分未計算在內的gas成本。Prefund
Paxos Treasury銷毀近9330萬枚BUSD:金色財經報道,據Etherscan數據顯示,Paxos Treasury于1小時前(2月22日17:21:23UTC)銷毀93,336,183枚BUSD。[2023/2/23 12:23:41]
這個并非UO中的一個字段,而是由上面三個gas參數計算而出。代表了該UO在驗證階段預先支付給EntryPoint的總成本。Prefund雖然是在驗證階段支付的,但包含了preVerificationGas,驗證和執行三部分的成本。之后不會再向EntryPoint進行支付gas。
prefund/gasPrice=callGasLimit+verificationGasLimit*mul+preVerificationGas
mul=mUserOp.paymaster!=address(0)?3:1;
美國銀行:美聯儲主席鮑威爾要傳達一個具有挑戰性的信息:12月15日消息,美國銀行表示,雖然美國11月CPI報告是一個“明確的好消息”,但美聯儲主席鮑威爾今天的任務可能是提醒市場,還有更多的工作需要完成。美國銀行經濟學家預計,美聯儲將加息50個基點,并預期2024年利率預期中值將上調25個基點。他們表示,11月CPI增加了2023年終端利率相對于9月預測僅上調25個基點的風險,這意味著終端利率為4.75-5%。“這是一個難以傳達的信息,大宗商品價格下跌和供應鏈問題消退不足以讓通脹達到美聯儲的目標,市場可能不會完全接受這一信息。然而,我們預計會聽到美聯儲表示,要實現其目標,仍然需要消除勞動力需求和勞動力供應之間持續的不平衡。”[2022/12/15 21:45:02]
具體計算參見EntryPoint中的_getRequiredPrefund。
美國財政部將Tornado Cash列入黑名單,禁止美國公民使用:8月8日消息,美國財政部海外資產控制辦公室(OFAC)將TornadoCash納入制裁名單(SDN),包括其網站以及多個以太坊和USDC錢包地址。所有美國個人和實體都被禁止與TornadoCash或任何與該協議綁定的以太坊錢包地址進行交互。(CoinDesk)[2022/8/8 12:10:22]
EntryPoint
EntryPoint是所有功能的核心入口。每個項目自行部署自己的EntryPoint。Bundler,Wallet和Paymaster都需要圍繞EntryPoint工作。
Bundler在EntryPoint內實現兩個功能
鏈下驗證UO,剔除不符合要求和有問題的UO。鏈下驗證一是防止DoS,二是避免bundler在鏈上損失gas。打包合規的UO,提交上鏈。Wallet與EntryPoint
向EntryPoint支付gas費只響應來自EntryPoint的消息執行來自EntryPoint的具體交易內容注意,EntryPoint不是Wallet的factory。官方給出的圖片容易給人造成這種誤解,但官方實現并非如此。Paymaster與EntryPoint
向EntryPoint支付gas費只響應來自EntryPoint的消息向EntryPoint確認自己的為某UO服務的意愿在EntryPoint內質押才能成為paymaster我們可以看到Wallet與Paymaster都有可能向EntryPoint支付gas。gas余額會存儲在deposits這個mapping中。
注意,雖然deposits字面意思為充值,但并非必須一個需要預先手動完成的動作,也可以在每一筆UO發生時,計算缺少多少gas并自動充值。
最終,若所有操作的actualGasCost小于prefund,?EntryPoint
會將多余額度退款至你的deposit。
actualGasCost/gasPrice=validationActualCost+callActualCost+preVerificationGas
注意,?validationActualCost?&?callActualCost?僅僅是為了說明而作的標記,并非真實存在的變量。它們是由gasPrice()累加的。
Wallet
代表用戶最終使用的錢包。需要開發者至少實現以下兩個自定義方法:
簽名驗證:你可以使用任何密碼學手段來實現簽名驗證,比如,為了配合使用蘋果的SecurityEnclave而實現NISTP-256的ECDSA。如果沒有特殊需求可直接使用以太坊的ECDSA。處理交易:EntryPoint通過address(sender).call(callData)來調用wallet中的具體的交易功能。那么call需要有至少一個可執行的函數,如transferEther(),callAnotherContrat()等。開發者還需要自行實現walletfactory,需要創建錢包時,工廠會被SenderCreator合約調用。新建錢包應使用CREATE2方法以保障生成地址的確定性。
Paymaster
Paymaster可以為用戶支付gas,因此可以實現:
免費交易:用戶激勵,讓用戶免費使用錢包gasless交易:不直接用ether支付gas,而使用其他token或nft等等等其他類似的贊助交易功能Paymaster需要開發者實現:
validatePaymasterUserOp():由于paymaster的開放性,驗證邏輯需要開發者完全自己定義。驗證后有可能需要實現類似wallet中payPrefund()的功能。_postOp:必須重寫此方法,否則會被revert。此方法可以定義在paymaster贊助完交易后需要做什么,如在驗證時為用戶支付了ether,則此處要求用戶支付等價的ERC-20。
交易所代幣是由加密貨幣交易所發行的數字資產。這些代幣通常會在發行交易所為其持有人提供某些好處,例如較低的交易費用、使用獨家功能或對影響交易所的決策進行投票的能力.
1900/1/1 0:00:0012?月6日,上任僅兩個月的?Sushi新任“主廚”JaredGrey于治理論壇發起了一項新提案.
1900/1/1 0:00:00一、從Layer1到Layer3Layer1是底層區塊鏈。Ethereum、Bitcoin、Solana等公鏈都是Layer1區塊鏈,它們是區塊鏈網絡的基礎,各種Layer2都搭建在這些公鏈之上.
1900/1/1 0:00:00隨著?FTX?崩盤,潮水褪去,建設者、投資者、狂熱者以及幾乎所有對加密感興趣的人都想知道:還有誰在“裸泳”?現在所有的目光都集中在數字貨幣集團(DCG)上.
1900/1/1 0:00:00MarsBitCryptoDaily2022年12月8日 一、今日要聞 數據:自FTX事件后,Solana平均每日鏈上流動價值下降96%據DelphiDigital數據,今年10月初.
1900/1/1 0:00:00注:本文來自@NintendoDoomed推特,整理如下:美債暴跌會導致USDC/USDT爆雷么?由于最近市場悲觀情緒蔓延,加上聯儲加息導致美債價格下跌,已經有不少朋友開始詢問這個問題了.
1900/1/1 0:00:00