以太坊的賬戶抽象以創建單一賬戶類型為目標,這種賬戶將包含所有相關方面,而且沒有任何無關的方面,讓開發人員的工作更加輕松。原文標題:《以太坊區塊鏈賬戶抽象概覽》
撰文: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協議
賬戶抽象
以太坊的賬戶抽象以創建單一賬戶類型為目標,這種賬戶將包含所有相關方面,而且沒有任何無關的方面,讓開發人員的工作更加輕松。
以太坊賬戶類型
目前,在以太坊區塊鏈上有兩種類型的賬戶:
加密情報解決方案Cloudburst Technologies完成300萬美元融資:金色財經報道,加密貨幣網絡欺詐情報解決方案Cloudburst Technologies宣布完成一輪300萬美元的種子融資。該投資由Strategic Cyber Ventures(SCV)牽頭,Coinbase Ventures和Bloccelerate參投。Cloudburst Technologies的首席執行官兼創始人Evan Kohlmann曾是Flashpoint的聯合創始人。[2023/5/9 14:50:40]
用戶賬戶
用戶賬戶是給一般人使用的。
這些賬戶由對應公共地址的私鑰所控制,比如用戶的錢包賬戶。
這些賬戶又稱為外部賬戶(EOA),不需要ETH余額就可以在區塊鏈上創建一個外部賬戶。但是,兩個外部賬戶之間可以用ETH進行交易,也可以用ERC支持的其他代幣。
外部賬戶(錢包)用于加密貨幣的發送和接受功能存在于以太坊虛擬機的外部。
合約
合約是一組由代碼控制的指令。
因為使用了網絡儲存,所以創建一份合約通常會產生相關成本。
用戶可以操作多種功能,比如接收來自外部賬戶和合約賬戶的事務,以及向它們發送事務。
它還可以啟動一個執行多種活動的代碼,包括兌換代幣或是創建一個新合約。
合約賬戶是存在于EVM的「智能合約」。
如果你發送1個ETH到由代碼合約控制的賬戶,那就沒有人可以再控制這個ETH了。唯一可以轉移這個ETH的是合約的執行,即代碼本身。
兩種賬戶類型都具有接收、保留和發送ETH和代幣的潛能,還有與部署在網絡上的其他智能合約進行通信的潛能。
賬戶抽象提案
以太坊賬戶抽象(AA)是對這兩種賬戶形式的加強,讓它們更具有可比性,還使外部賬戶的管理邏輯像合約賬戶一樣通用。
它的目的是將合約賬戶的兩種形式減為一種形式。單個賬戶形式的用途包括鑄幣和合約轉賬。開發者和用戶將不再需要區別賬戶類型,因為事務將完全轉移到EVM上并脫離區塊鏈協議。
Coinbase 出現間隙性登陸問題,團隊正在解決:金色財經報道,Coinbase 表示,意識到一些用戶在登錄 Coinbase 網站、移動應用和 Coinbase Prime 時遇到問題,團隊正在盡快解決這個問題。Coinbase 賬戶中的資金是安全的。[2023/3/14 13:03:51]
以太坊開發者一直在尋找實現的方法,但一直沒有達到?Final?狀態的提案。在以下部分,我們將概述迄今為止提議賬戶抽象的三個以太坊改進提案(EIP)。
賬戶抽象提案的時間線
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。
其目的在于避免共識層協議變更,而是依靠更高層次基礎設施。
FRAX現報價0.8947美元,24小時跌幅達10.4%:金色財經報道,據CoinGecko最新數據顯示,FRAX現報價0.894788美元,24小時跌幅達10.4%。行情波動較大,請做好風險控制。[2023/3/11 12:56:36]
EIP-86:事務來源和簽名的抽象
根據其「摘要」,EIP-86提議實現一系列改變,這些改變服務于「抽象出」簽名驗證和nonce檢查的綜合目的,允許用戶創建用于執行任意所需簽名/nonce檢查的「賬戶合約」,而不是依賴于使用目前這種硬編碼到事務處理的機制。
傳統模型:ECDSA和默認的nonce方案是保護賬戶的唯一方式。
新模型:所有賬戶都是合約賬戶,它可以支付gas,且用戶可以自由定義他們的安全模型。
以forwardingcontract為例,作者VitalikButerin解釋道,這種合約會驗證簽名,如果簽名是有效,它開始向礦工發起付款,然后使用給定的值和數據向指定地址發送調用指令。
優勢
這個提案的主要優勢如下:
多簽錢包
傳統方法:多簽錢包中的每一筆交易都必須由所有的參與者進行同意。我們可以通過將所有參與者簽名結合為單一批準事務對此進行簡化,但這種方法還是會增加復雜性,因為所有參與者的賬戶都必須持有ETH。
新方法:在這個EIP的幫助下,現在的合約可以持有ETH,直接提交包含所有簽名的事務至合約上,合約將會支付這筆費用。
自定義密碼學
傳統方法:用戶必須遵循ECDSA,這是一種使用橢圓曲線的密碼學。
新方法:用戶可以升級至ed25519簽名或用戶自己希望升級的任何方案;不要求用戶采用ECDSA。
EIP-2938:賬戶抽象
根據EIP-2938的摘要,賬戶抽象(AA)允許合約成為可以支付費用和執行事務的「頂級」賬戶。
傳統模型:事務的有效性直接由ECDSA簽名、一個簡單的nonce值以及賬戶余額進行定義。
過去24小時全網爆倉達3.94億美元,以太坊爆倉1.95億美元:金色財經消息,數據顯示,過去1小時全網爆倉9092萬美元。過去24小時全網爆倉總額達3.94億美元,其中以太坊爆倉達1.95億美元,比特幣爆倉達8148萬美元。[2022/8/27 12:51:48]
新模型:
賬戶抽象通過執行隨機的EVM字節碼來擴展事務的有效性條件。
為了表示有效性,引入了新的EVM操作碼?PAYGAS,還設置了合約的gas價格和gas使用上限。
賬戶抽象現已分為兩類:
單租戶AA:這種類型旨在支持錢包或其他參與者很少的用例。
多租戶AA:這種類型旨在賦能像Uniswap這種有很多用戶的應用。
共識變更
NONCE操作碼:添加一個?NONCE?操作碼,推送事務的nonce字段。
PAYGAS操作碼:添加一個?PAYGAS?操作碼,創建一個不可逆的檢查點,確保?PAYGAS?之前的狀態變更無法被逆轉。
SamWilson是這個提案的作者之一,它在這里解釋了AA事務與其他傳統事務的不同之處。
在AA事務中,不會有gas價格或是gas上限、沒有發送的值和簽名字段,并用?target?代替?to?。在多簽合約中,這些字段在calldata中進行傳遞,并用合約進行處理。
如果一筆事務到達節點,事務的有效性會被檢查。但是傳統事務和AA事務進行檢查的方式不同。
在傳統事務中:節點檢查:他們的nonce與賬戶的下一個nonce匹配、賬戶余額足以支付他們的價值以及最高的gas費用,并且他們的簽名與賬戶的地址匹配。
在AA事務中:節點檢查:他們的nonce與合約的下一個nonce完全匹配、合約的字節碼以標準的前綴開始、驗證邏輯在達到驗證gas上限之前調用?PAYGAS?、沒有禁止的操作碼在??PAYGAS?之前被調用,以及合約余額足夠支付?PAYGAS?設定的gas費。
區塊廣播時間是一個新區塊到達網絡大多數節點所需平均時間。
比特幣礦企Bitfarms在過去一周以6200萬美元出售3000枚比特幣:金色財經消息,比特幣礦企Bitfarms宣布調整HODL戰略來提高流動性并加強資產負債表,在過去的一周,Bitfarms以約6200萬美元的總價格共出售了3000枚比特幣,并完成了之前宣布的與NYDIG合作的3700萬美元的新設備融資,使公司流動性提高了約1億美元。
此外,Bitfarms已將部分收益用于重新平衡其債務,將其與Galaxy Digital的BTC支持的信貸額度從6600萬美元減少到3800萬美元。截至2022年6月20日,Bitfarms持有4200萬美元現金和3349枚BTC。(globenewswire)[2022/6/21 4:43:07]
當具有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并減少了打包上鏈的垃圾交易數量。這將會增加區塊鏈的可擴展性和市場效率,因為套利交易者更能做到糾正跨鏈交易在價格上的差異。
套利交易員指的是利用兩個或更多市場之間的差價,由此同時低價購入并高價賣出的交易員。
來源:金色財經
Tags:GAS以太坊ETHPAYgas幣一分鐘暴漲5600倍比特幣最新價格行情以太坊實時行情EthereumFairBITPAY
卡爾達諾價格目前略高于0.50美元,該資產的價格在過去幾天一直在盤整。ADA一直在直接阻力位下方掙扎。代幣曾嘗試過幾次突破,但每次都遇到空頭。由于卡爾達諾價格橫盤整理,不能立即排除突破的可能性.
1900/1/1 0:00:00以太坊今日日間行情走勢看點;回顧昨日午夜后最低跌幅在1753附近止步,那么我們策劃預計在1750至1760附近進行的多頭,也算是被埋伏成功,凌晨4點制高點拉伸漲幅在1799止步回落.
1900/1/1 0:00:00馬斯克預計通脹峰值已過 在8月5日的特斯拉2022年股東大會上,埃隆·馬斯克預測,即將到來的美國經濟衰退將是“輕度至溫和”.
1900/1/1 0:00:00以太坊的價格表現超越比特幣,原因很簡單根據宏觀經濟學家亞歷克斯分享的數據克魯格,比特幣很久以前就成為了宏觀資產,加密交易者可以用它來交易以太坊,與比特幣一致,具有更大的揮發性.
1900/1/1 0:00:00「除ETC外,我們完全支持ETHPoS,并且不會支持任何ETHPoW分叉。ETH礦工應該轉移到ETC,以使他們的收入長期最大化,就這么簡單」.
1900/1/1 0:00:008.10號早評 行情回顧:比特幣BTC昨天四小時級別收線金針之后,上沖無力,在回踩的過程中直接跌破日內支撐,四小時級別上一根大陰線結束了這波的上沖動能,走出一個下跌的趨勢行情.
1900/1/1 0:00:00