以太坊的賬戶抽象以創建單一賬戶類型為目標,這種賬戶將包含所有相關方面,而且沒有任何無關的方面,讓開發人員的工作更加輕松。原文標題:《以太坊區塊鏈賬戶抽象概覽》
撰文: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協議
賬戶抽象
以太坊的賬戶抽象以創建單一賬戶類型為目標,這種賬戶將包含所有相關方面,而且沒有任何無關的方面,讓開發人員的工作更加輕松。
以太坊賬戶類型
目前,在以太坊區塊鏈上有兩種類型的賬戶:
Gemini在英國推出Staking Pro服務:6月23日消息,加密交易所Gemini宣布在英國推出Staking Pro服務。Staking Pro是為擁有32枚以上ETH的用戶構建的產品。符合條件的用戶現在可以在以太坊上啟動專用驗證器。加密資產服務由Gemini Intergalactic UK, Ltd.提供。質押服務由Gemini Trust Company, llc提供給,不受英國金融行為監管局(FCA)的監管。[2023/6/23 21:55:35]
用戶賬戶
用戶賬戶是給一般人使用的。
這些賬戶由對應公共地址的私鑰所控制,比如用戶的錢包賬戶。
這些賬戶又稱為外部賬戶(EOA),不需要ETH余額就可以在區塊鏈上創建一個外部賬戶。但是,兩個外部賬戶之間可以用ETH進行交易,也可以用ERC支持的其他代幣。
外部賬戶(錢包)用于加密貨幣的發送和接受功能存在于以太坊虛擬機的外部。
合約
合約是一組由代碼控制的指令。
因為使用了網絡儲存,所以創建一份合約通常會產生相關成本。
用戶可以操作多種功能,比如接收來自外部賬戶和合約賬戶的事務,以及向它們發送事務。
它還可以啟動一個執行多種活動的代碼,包括兌換代幣或是創建一個新合約。
合約賬戶是存在于EVM的「智能合約」。
如果你發送1個ETH到由代碼合約控制的賬戶,那就沒有人可以再控制這個ETH了。唯一可以轉移這個ETH的是合約的執行,即代碼本身。
兩種賬戶類型都具有接收、保留和發送ETH和代幣的潛能,還有與部署在網絡上的其他智能合約進行通信的潛能。
賬戶抽象提案
以太坊賬戶抽象(AA)是對這兩種賬戶形式的加強,讓它們更具有可比性,還使外部賬戶的管理邏輯像合約賬戶一樣通用。
它的目的是將合約賬戶的兩種形式減為一種形式。單個賬戶形式的用途包括鑄幣和合約轉賬。開發者和用戶將不再需要區別賬戶類型,因為事務將完全轉移到EVM上并脫離區塊鏈協議。
愛奇藝使用ERC-3475技術搭建愛奇異版權鏈:10月24日消息,知情人士表示,針對作者作品版權糾紛,平臺扣量,二創和版權投資問題,愛奇藝已成立專項產品部門,開發一套鏈上的版權分銷和記賬系統。該系統運行在私有聯盟鏈上,由愛奇藝發起,版權分銷商提供節點。方案使用ERC-3475技術搭建,實現鏈上記賬轉賬,鏈下付款。
據悉,內部測試版本已在搭建中,2023 Q1開始第一批公測。首先參與測試的是文學版權。初測成功后,同樣的技術也會被應用在影視,音樂和其他類的版權上。[2022/10/24 16:36:26]
以太坊開發者一直在尋找實現的方法,但一直沒有達到?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。
數據:49,999,996枚USDT從Kraken轉移到未知錢包:金色財經報道,Whale Alert數據顯示,49,999,996枚USDT從Kraken轉移到未知錢包。[2022/9/15 6:56:47]
其目的在于避免共識層協議變更,而是依靠更高層次基礎設施。
EIP-86:事務來源和簽名的抽象
根據其「摘要」,EIP-86提議實現一系列改變,這些改變服務于「抽象出」簽名驗證和nonce檢查的綜合目的,允許用戶創建用于執行任意所需簽名/nonce檢查的「賬戶合約」,而不是依賴于使用目前這種硬編碼到事務處理的機制。
傳統模型:ECDSA和默認的nonce方案是保護賬戶的唯一方式。
新模型:所有賬戶都是合約賬戶,它可以支付gas,且用戶可以自由定義他們的安全模型。
以forwardingcontract為例,作者VitalikButerin解釋道,這種合約會驗證簽名,如果簽名是有效,它開始向礦工發起付款,然后使用給定的值和數據向指定地址發送調用指令。
優勢
這個提案的主要優勢如下:
多簽錢包
傳統方法:多簽錢包中的每一筆交易都必須由所有的參與者進行同意。我們可以通過將所有參與者簽名結合為單一批準事務對此進行簡化,但這種方法還是會增加復雜性,因為所有參與者的賬戶都必須持有ETH。
新方法:在這個EIP的幫助下,現在的合約可以持有ETH,直接提交包含所有簽名的事務至合約上,合約將會支付這筆費用。
自定義密碼學
傳統方法:用戶必須遵循ECDSA,這是一種使用橢圓曲線的密碼學。
新方法:用戶可以升級至ed25519簽名或用戶自己希望升級的任何方案;不要求用戶采用ECDSA。
EIP-2938:賬戶抽象
根據EIP-2938的摘要,賬戶抽象(AA)允許合約成為可以支付費用和執行事務的「頂級」賬戶。
傳統模型:事務的有效性直接由ECDSA簽名、一個簡單的nonce值以及賬戶余額進行定義。
Discord機器人MEE6推出NFT統計數據插件:7月7日消息,Discord機器人MEE6宣布推出NFT統計數據插件“NFT Collection Statistics”,持有MEE6 Genesis Pass NFT的用戶可以訪問。[2022/7/7 1:57:21]
新模型:
賬戶抽象通過執行隨機的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費。
區塊廣播時間是一個新區塊到達網絡大多數節點所需平均時間。
過去 3 天,ETH巨鯨購買了1500萬個 MATIC:金色財經報道,WhaleStats報告稱,在過去24小時內,被稱為 \"BlueWhale0072 \"的巨鯨進行了兩次交易,分別購入了10,000,000和4,723,190個MATIC代幣。這兩次購買的價值為870萬美元。這是自去年11月以來MATIC的最大買入。在過去的一周里,該代幣表現出了近70%的漲幅,在過去兩天里,它的價格上漲超26%以上。[2022/6/26 1:31:57]
當具有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并減少了打包上鏈的垃圾交易數量。這將會增加區塊鏈的可擴展性和市場效率,因為套利交易者更能做到糾正跨鏈交易在價格上的差異。
套利交易員指的是利用兩個或更多市場之間的差價,由此同時低價購入并高價賣出的交易員。
來源:金色財經
作為全球首家開創高端NFT拍賣業務的REVA,長期以來,一直被各界投以密切的高度關注,不僅因為元宇宙與NFT風頭正盛,甚至藝術、拍賣此類領域日前,傳出REVA下半年首場主題NFT專場拍賣會.
1900/1/1 0:00:00Web3要真正過渡到由用戶和服務來支撐盈利模式的時代,才會行之久遠。撰文:Spike,ThePrimedia法國社會學家塔爾德在其《模仿律》一書中指出,「在人類的變革進程中,很少出現全新發明,更.
1900/1/1 0:00:00Solana正在為加密市場中罕見的看跌日做準備。資產價格回升是7月中旬以來的共同主題。但隨著美國通脹消息的傳出,交易員的信心一直在閃爍。索拉納似乎比其他人更受沖擊.
1900/1/1 0:00:00花旗警告稱市場情緒普遍過于樂觀,一項指標預示著全球股市即將下跌一半,加密市場與美股表現趨同,加密投資者也應保持謹慎.
1900/1/1 0:00:00作者|CaptainSidd 編譯|黑米 在2022年夏天,我騎著我的哈雷摩托車穿越了美國11,500英里,參加了30場比特幣聚會,并與數百名比特幣愛好者進行了交談.
1900/1/1 0:00:008.6BTC行情分析 文中給的單子多空均有獲利,昨晚行情先漲后跌,空單到達第二目標附近后到手做多,早間多頭發力向上拉升,高位觸及23350附近承壓回落,恭喜跟上思路的幣友共計獲利1200美刀.
1900/1/1 0:00:00