以太坊的賬戶抽象以創建單一賬戶類型為目標,這種賬戶將包含所有相關方面,而且沒有任何無關的方面,讓開發人員的工作更加輕松。原文標題:《以太坊區塊鏈賬戶抽象概覽》
撰文:YashKamalChaturvedi
編譯:ETH中文
譯者注:賬戶抽象(AccountAbstraction,AA)自2015年以來就一直被討論,并提出了幾個不同版本的EIP(EIP-101、EIP-86、EIP-859、EIP-2938、EIP-4337)。最近,賬戶抽象的研發似乎又成為了社區的討論熱點,應用層面上也陸續推出賬戶抽象的解決方案。那么賬戶抽象究竟是什么?大家想要通過AA來解決什么?本文講述了以太坊賬戶類型、賬戶抽象的EIP、以及賬戶抽象的潛在用例。
計算機編程中的抽象和數據抽象指的是隱藏除了「對象」相關數據以外的所有數據的過程,目的是減少復雜性并提高有效性。它通過省略不必要細節的方式來表示對象。抽象是面向對象編程的三大原理之一,它與封裝和數據隱藏有關。這篇文章將為以下方面提供概覽:
以太坊賬戶抽象
外部賬戶/用戶賬戶
合約
為賬戶抽象提議的EIP
EIP-86:事務來源和簽名的抽象
EIP-2938:賬戶抽象
EIP-4337:通過入口點合約(EntryPointContract)實現的賬戶抽象
用例
錢包
贊助交易
混幣
DeFi協議
賬戶抽象
以太坊的賬戶抽象以創建單一賬戶類型為目標,這種賬戶將包含所有相關方面,而且沒有任何無關的方面,讓開發人員的工作更加輕松。
以太坊賬戶類型
目前,在以太坊區塊鏈上有兩種類型的賬戶:
數據:巨鯨地址今日斥資622ETH加倉4147億枚PEPE:5月6日消息,據Lookonchian數據顯示,某巨鯨地址于30分鐘前將622ETH(約合120萬美元)兌換為4147億枚PEPE,平均買入價格為0.000002912美元。目前該地址持倉4.2萬億枚PEPE,價值約合1200萬美元。[2023/5/6 14:46:56]
用戶賬戶
用戶賬戶是給一般人使用的。
這些賬戶由對應公共地址的私鑰所控制,比如用戶的錢包賬戶。
這些賬戶又稱為外部賬戶(EOA),不需要ETH余額就可以在區塊鏈上創建一個外部賬戶。但是,兩個外部賬戶之間可以用ETH進行交易,也可以用ERC支持的其他代幣。
外部賬戶(錢包)用于加密貨幣的發送和接受功能存在于以太坊虛擬機的外部。
合約
合約是一組由代碼控制的指令。
因為使用了網絡儲存,所以創建一份合約通常會產生相關成本。
用戶可以操作多種功能,比如接收來自外部賬戶和合約賬戶的事務,以及向它們發送事務。
它還可以啟動一個執行多種活動的代碼,包括兌換代幣或是創建一個新合約。
合約賬戶是存在于EVM的「智能合約」。
如果你發送1個ETH到由代碼合約控制的賬戶,那就沒有人可以再控制這個ETH了。唯一可以轉移這個ETH的是合約的執行,即代碼本身。
兩種賬戶類型都具有接收、保留和發送ETH和代幣的潛能,還有與部署在網絡上的其他智能合約進行通信的潛能。
賬戶抽象提案
以太坊賬戶抽象(AA)是對這兩種賬戶形式的加強,讓它們更具有可比性,還使外部賬戶的管理邏輯像合約賬戶一樣通用。
它的目的是將合約賬戶的兩種形式減為一種形式。單個賬戶形式的用途包括鑄幣和合約轉賬。開發者和用戶將不再需要區別賬戶類型,因為事務將完全轉移到EVM上并脫離區塊鏈協議。
以太坊開發者一直在尋找實現的方法,但一直沒有達到?Final?狀態的提案。在以下部分,我們將概述迄今為止提議賬戶抽象的三個以太坊改進提案(EIP)。
TON驗證者將投票決定凍結持有10億枚TON的195個非活躍地址:金色財經報道,TON的驗證者正在考慮暫時凍結195個非活躍地址,投票將于2月21日開始。目前這些地址持有10億枚TON,占總供應量的21.3%,約合25億美元。若投票獲得通過,則受影響地址在4年內無法進行任何交易。
非活躍地址是指在2020年7月至2022年6月期間參與了初始分配階段,且從未進行過轉出交易,這些地址可在投票結束前進行任何交易以避免被暫時凍結。(The Block)[2023/1/24 11:28:07]
賬戶抽象提案的時間線
2016:
VitalikButerin為Metropolis提出最初的抽象變化想法。
其目的是準備一種賬戶安全抽象。在傳統的模型中,ECDSA和默認的nonce方案是保護賬戶的唯一途徑。在此模型中,所有賬戶都是合約賬戶,它可以支付gas,且用戶可以自由定義他們的安全模型。
2017:
VitalikButerin提出了用于事務來源和簽名的抽象的EIP-86。
其目的是抽象出簽名驗證和nonce檢查機制,允許用戶建立賬戶合約來執行任意所需簽名或nonce檢查,而不是依賴于傳統的方法。
2020:
VitalikButerin、AnsgarDietrichs、MattGarnett、WillVillanueva和SamWilson提議了用于賬戶抽象的EIP-2938。
目的在于允許合約成為可以支付費用和執行事務的「頂級」賬戶類型。
2021:
VitalikButerin、YoavWeiss、KristofGazso、NamraPatel以及DrorTirosh提議了通過入口點合約規范進行賬戶抽象的EIP-4337。
其目的在于避免共識層協議變更,而是依靠更高層次基礎設施。
XRP的市值超過200億美元:金色財經報道,據coingecko數據顯示,XRP的市值超過200億美元,當前為20,993,050,589美元;24小時交易量為1,420,392,270美元。[2023/1/22 11:25:27]
EIP-86:事務來源和簽名的抽象
根據其「摘要」,EIP-86提議實現一系列改變,這些改變服務于「抽象出」簽名驗證和nonce檢查的綜合目的,允許用戶創建用于執行任意所需簽名/nonce檢查的「賬戶合約」,而不是依賴于使用目前這種硬編碼到事務處理的機制。
傳統模型:ECDSA和默認的nonce方案是保護賬戶的唯一方式。
新模型:所有賬戶都是合約賬戶,它可以支付gas,且用戶可以自由定義他們的安全模型。
以forwardingcontract為例,作者VitalikButerin解釋道,這種合約會驗證簽名,如果簽名是有效,它開始向礦工發起付款,然后使用給定的值和數據向指定地址發送調用指令。
優勢
這個提案的主要優勢如下:
多簽錢包
傳統方法:多簽錢包中的每一筆交易都必須由所有的參與者進行同意。我們可以通過將所有參與者簽名結合為單一批準事務對此進行簡化,但這種方法還是會增加復雜性,因為所有參與者的賬戶都必須持有ETH。
新方法:在這個EIP的幫助下,現在的合約可以持有ETH,直接提交包含所有簽名的事務至合約上,合約將會支付這筆費用。
自定義密碼學
傳統方法:用戶必須遵循ECDSA,這是一種使用橢圓曲線的密碼學。
新方法:用戶可以升級至ed25519簽名或用戶自己希望升級的任何方案;不要求用戶采用ECDSA。
EIP-2938:賬戶抽象
根據EIP-2938的摘要,賬戶抽象(AA)允許合約成為可以支付費用和執行事務的「頂級」賬戶。
傳統模型:事務的有效性直接由ECDSA簽名、一個簡單的nonce值以及賬戶余額進行定義。
YGG Japan完成280萬美元融資,Animoca Brands等參投:7月12日消息,Yield Guild Games(YGG)子DAO“GG Japan”宣布已完成280萬美元新一輪融資,Infinity Ventures Crypto(IVC)、Animoca Brands、Yield Guild Games、YGG SEA、Akatsuki、double jump.tokyo Inc.、CryptoGames Inc.、Ariva Studios、Kiii和Days參投。據YGG Japan聯合創始人Tetsuya Fujiwara透露,該公會計劃啟動一輪私人融資以籌集更多資金,同時正在尋求與日本頂級游戲發行商和IP持有者合作,以提高對區塊鏈游戲的認識。此外,YGG Japan將建立一個門戶網站,為日本游戲玩家引入更多Web3游戲,同時還會投資一些區塊鏈游戲的NFT和Token資產。(playtoearn)[2022/7/12 2:07:24]
新模型:
賬戶抽象通過執行隨機的EVM字節碼來擴展事務的有效性條件。
為了表示有效性,引入了新的EVM操作碼?PAYGAS,還設置了合約的gas價格和gas使用上限。
賬戶抽象現已分為兩類:
單租戶AA:這種類型旨在支持錢包或其他參與者很少的用例。
多租戶AA:這種類型旨在賦能像Uniswap這種有很多用戶的應用。
共識變更
NONCE操作碼:添加一個?NONCE?操作碼,推送事務的nonce字段。
PAYGAS操作碼:添加一個?PAYGAS?操作碼,創建一個不可逆的檢查點,確保?PAYGAS?之前的狀態變更無法被逆轉。
SamWilson是這個提案的作者之一,它在這里解釋了AA事務與其他傳統事務的不同之處。
在AA事務中,不會有gas價格或是gas上限、沒有發送的值和簽名字段,并用?target?代替?to?。在多簽合約中,這些字段在calldata中進行傳遞,并用合約進行處理。
杠桿挖礦平臺Alpaca Finance發布“自動化金庫策略社區計劃”:5月30日消息,杠桿挖礦平臺Alpaca Finance發布“自動化金庫策略社區計劃”(Automated Vault Strategy Community Program),旨在擴大平臺中策略類型的數量。用戶可提交自己的收益策略,Alpaca Finance將圍繞風險/安全、經濟可行性、開發工作者三點進行評估,成功的策略將從金庫中獲得收入分成(創作者將獲得使用該策略的所有AV實例的0.5%管理費),運營、維護和推廣的所有任務將由Alpaca Finance財務團隊負責。[2022/5/30 3:50:03]
如果一筆事務到達節點,事務的有效性會被檢查。但是傳統事務和AA事務進行檢查的方式不同。
在傳統事務中:節點檢查:他們的nonce與賬戶的下一個nonce匹配、賬戶余額足以支付他們的價值以及最高的gas費用,并且他們的簽名與賬戶的地址匹配。
在AA事務中:節點檢查:他們的nonce與合約的下一個nonce完全匹配、合約的字節碼以標準的前綴開始、驗證邏輯在達到驗證gas上限之前調用?PAYGAS?、沒有禁止的操作碼在??PAYGAS?之前被調用,以及合約余額足夠支付?PAYGAS?設定的gas費。
區塊廣播時間是一個新區塊到達網絡大多數節點所需平均時間。
當具有AA事務的區塊到來時,同一賬戶的所有待處理事務都將被刪除。另一方面,傳統事務會被重新驗證并可能在收到新區塊時發布。
EIP-4337:通過入口點合約實現的賬戶抽象
這是VitalikButerin和社區提出的最新議案。它作為一項ERC提議出來,而這個提案包括了避免共識層協議的變更,而依靠于更高層的基礎設施。
它旨在完成下列目標:
賬戶抽象:允許用戶使用包含隨機驗證邏輯的智能合約錢包作為他們的主要賬戶,而不是EOA。
去中心化:允許打包交易捆的人參與包含賬戶抽象用戶活動的過程。用戶不需要知道任意活動者的直接通信地址,就可以處理發生在整個公共內存池中的任意活動。
無共識變更:為了更快的采用,這個提案避免了共識變更。
交易費支付:用ERC-20標準的代幣支付交易費,使得開發者為其用戶支付費用,以及類似于EIP-3074這樣的贊助的交易提案所支持的用例。
這項提案怎么運作?
圖片來源:Infinitism
VitalikButerin在這里很好地解釋了這項提案的運作。
這是賬戶抽象最新的提案,現在還是draft狀態,等待被合并成為一項EIP。對比常規的以太坊事務內存池,這項設計增添、維護以及犧牲了一些功能。
關鍵亮點
沒有中心化的活動者、移除了用戶端錢包設置復雜性,完全支持EIP-1559、具有代替交費的能力,發送一個比舊UserOperation具有更高溢價的新UserOperation來替換操作或保留了讓它更快被打包的功能。
有一些增添的新優勢:
驗證邏輯的靈活性
足以讓執行層達到量子安全
錢包可升級性
執行邏輯靈活性
然而,盡管協議已經盡了最大的努力,它還是會略微增加DoS攻擊的可能性,它還會增加gas開銷,并且一次只執行一個事務。
賬戶抽象用例
錢包
EOA和合約錢包
EOA錢包:由私鑰保護的錢包。
合約錢包:使用智能合約在鏈上實現的錢包。
安全考慮:如果智能合約代碼中存在bug,合約錢包將面臨來自易受攻擊的智能合約的安全風險。這種風險可以通過由錢包提供商完成的安全測試和審查進行最小化。然而,在EOA錢包中,風險會完全由錢包用戶承擔,就像用戶不小心丟失了私鑰也由他們自己承擔。
Argent,Dapper,GnosisSafe和Monolith都是智能合約錢包的案例。
EOA的元交易
以太坊區塊鏈用戶需要一個持有gas的EOA與區塊鏈網絡進行連接,或依賴錢包供應商通過他們的中繼或第三方中繼網絡促進元交易。前者依賴于(需要做KYC的)中心化交易所購買的ETH,試圖通過將消費者的責任轉移給中繼者來盡量減少用戶體驗摩擦,費用由鏈上/鏈下錢包供應商和/或鏈下用戶支付。
元交易是一種包含了帶有執行交易意愿者所簽署的數據信息的交易。
基于中繼者的架構有一些缺點:
可以將他們視作擁有抑制交易能力的中心化中介
由于中繼交易需要額外的21,000基本gas收費,及其公司在gas費基礎上盈利的需要,他們在技術上/經濟上的效率低下。
對中繼者專用協議權力的使用。
賬戶抽象允許智能合約錢包在不依賴中繼網絡的情況下,接受用戶的無gas費的元交易并為他們支付gas費。在不失去以太坊去中心化保證的情況下,這種基礎層的能力還會大大提升這種錢包的UX。
贊助交易(SponsoredTransactions)
SponsoredTransactions囊括在EIP-2711(狀態為已撤銷)中,這個EIP提議了一種機制:通過允許其他人代付gas費,可以讓人們無需擁有任何ETH就可以進行交易。
一些用例:
允許應用開發者代表用戶支付費用。
允許用戶用ERC-20代幣支付費用,合約則像中介收集ERC-20代幣并以ETH的方式支付網絡費用。
運作
這項提案可以通過出納機制(paymastermechanism)來支持這些用例。
對于用例1:Paymaster會驗證贊助者的簽名被納入在?paymasterData?中,表明贊助已做好為?UserOperation進行支付的準備。如果簽名有效,Paymaster就會接受這項指令,并從贊助者的份額中扣除?UserOperation?的費用。
對于用例2:Paymaster會檢查?sender?的錢包是否有足夠的ERC-20余額來支付這項?UserOperation。如果足夠,Paymaster會接受這項指令,并在索要?postOp?里的ERC-20代幣之前支付ETH費用。
混幣
一起探討TornadoCash混幣機制的例子,以此理解我們如何在DeFi協議中使用AA。
傳統的TornadoCash合約中的隱私問題
當用戶進行提款時,TornadoCash為其提供隱私保護。他們可以證明這筆款來自一筆獨一無二的存款,但除了用戶之外沒人知道這筆存款來自哪里。
用戶通常不會在自己的提款地址里持有ETH,如果用戶使用他們的存款地址來支付gas,這就會在存款地址和提款地址之間生成一條鏈上鏈接。
這個問題可以由第三方中繼者解決,他們會驗證ZK-Snark和nullifier仍然有效的狀態,發布使用其ETH支付gas的交易,并從TornadoCash合約中收集用戶的返款。
賬戶抽象提供的解決方案:用戶可以提交一個針對TC合約的AA事務,在這之后執行ZK-SNARK驗證和nullifier檢查,并直接快速地調用?PAYGAS。這可以讓提款者直接用發送到他們提款地址的代幣中支付gas,無需中繼者或連接其存款地址的鏈上鏈接。
DeFi協議
一起探討DeFi協議Uniswap的案例,了解我們可以在DeFi協議中如何使用AA。
可以創建一種Uniswap的新版本,它允許直接進行針對Uniswap合約的交易。
目前,用戶可以將代幣提前存進Uniswap;Uniswap可以儲存用戶的余額和公鑰,以便驗證花費這些余額的事務。
AA的目標在于通過禁止不符合高級標準的事務被打包到鏈上,從而提高DeFi協議的gas效率。
在傳統模型中:正常的交易員會將他們的代幣儲存在Uniswap的合約之外。
在新模型中:套利交易員會將他們的代幣存在Uniswap上,在外部市場發生變化的情況下,他們還可以轉移執行套利的交易。最終,另一個套利交易員如果首先執行這筆交易時,這些沒有獲利的交易不會被打包上鏈。這讓套利交易員避免了支付gas并減少了打包上鏈的垃圾交易數量。這將會增加區塊鏈的可擴展性和市場效率,因為套利交易者更能做到糾正跨鏈交易在價格上的差異。
套利交易員指的是利用兩個或更多市場之間的差價,由此同時低價購入并高價賣出的交易員。
來源:金色財經
8.11號凌晨行情解讀 消息面; CPI終于超預期落地,大幅低于前值9.1%,低于預期8.7%。雖未如前文中所說創出近20年來新低,但實屬是近兩年新低。說明膨脹是控制有效的,這一消息引爆市場.
1900/1/1 0:00:00到目前為止,8月份比特幣和以太坊的未平倉合約已經超過了整個7月份的未平倉合約。上周加密價格回落,成為全球最大的加密比特幣(比特幣)現在接近24,000美元.
1900/1/1 0:00:00打敗以太坊的或許不是以太坊的Fork,而是更具破局性質,能夠幫助Web3.0走向成熟形態的好用公鏈.
1900/1/1 0:00:00作者丨胡天姣 編輯丨曾芳 華爾街與加密貨幣機構間的旋轉門越來越多。主流金融機構逐步將加密產品納入其日常業務與產品,前者也在不斷向加密貨幣行業輸送人員.
1900/1/1 0:00:00由于Cardano網絡創始人查爾斯·霍斯金森向用戶保證,在將Vasil硬分叉推遲數周后,不應再有進一步的延遲,ADA投資者已經進入了積累模式.
1900/1/1 0:00:00跨鏈互連應用的最佳去中心化開發平臺Moonbeam宣布與Interlay在波卡上集成。Interlay的旗艦產品是interBTC.
1900/1/1 0:00:00