大多數關于帳戶抽象的文章都很糟糕
如果你正在閱讀本文,你很可能已經閱讀了一些便于理解帳戶抽象的文章。你可能會同意99%關于帳戶抽象的帖子都非常爛。?
你發現幾乎所有的人都從描述EOA和智能合約之間的區別開始,并含糊得提及用戶體驗的改進。他們未能解釋賬戶抽象本質上是什么,而是專注于賬戶抽象的副產品。
本指南涵蓋了賬戶抽象思想的每一步,從賬戶抽象是什么,到為什么每個人都稱它為下一個大事件。
什么是賬戶抽象?
我發現從帳戶抽象不是什么開始更容易,賬戶抽象不是:
支付用戶的Gas費??原生多簽簽名??web3auth類型的“社交登錄”作為帳戶抽象實現的結果,你可以執行這些操作。?
如果我將帳戶抽象重新命名會更直觀,它會被稱為“可編程的交易有效性(programmabletransactionvalidity)“。
通俗來說,賬戶抽象是可以以編程方式設定交易的有效性條件。
我們稍后將更深入地介紹由Vitalik等人撰寫的EIP-4337(https://eips.ethereum.org/EIPS/eip-4337),它提到,“實現賬戶抽象的關鍵目標:允許用戶使用包含任意驗證邏輯的智能合約錢包,而不是EOA,作為他們的主要賬戶。”
目前,在以太坊上,當且僅當滿足以下條件時,交易才有效:
1.有足夠的余額支付gas。??
2.nonce是正確的。??
3.具有有效的數字簽名。?
但是,如果開發人員可以定義一組不同的交易有效性條件呢??
Coinbase首席法務官:美國聯邦第三巡回上訴法院已詢問SEC是否會拒絕Coinbase此前提出的規則制定申請:6月7日消息,據 Coinbase 首席法務官 Paul Grewal 在社交媒體透露,美國聯邦第三巡回上訴法院今天已對 Coinbase 的強制執行令(mandamus action)發布了一份短期命令(short order),其中提到該法院已經注意到美國證券交易委員會(SEC)對 Coinbase 提起的訴訟,而且已經詢問了 SEC 發起對 Coinbase 訴訟是否意味著會拒絕 Coinbase 此前針對未決規則制定向 SEC 提出的申請,美國證券交易委員會有 7 天時間做出回應。
Paul Grewal 稱,Coinbase 認為,如果美國證券交易委員會尚未決定是否拒絕規則制定申請,就不應該提起訴訟,立法或規則制定必須先于執法行動。如果 SEC 對 Coinbase 提出規則制定請求的回答是否,那么 Coinbase 有合法權利在法庭上質疑這個否,同時還會有一些嚴肅的問題要詢問 SEC。Coinbase 對美國聯邦第三巡回上訴法院關注此事表示感謝。[2023/6/7 21:21:14]
當我在做研究時和James(@_prestwich)聊過,回過頭來看,他將帳戶抽象的問題表述為,“如果你可以通過密鑰以外的任何方式進行身份驗證怎么辦?你可以做些哪些很酷的事情?”
無法自動執行交易
無狀態(stateless)vs有狀態(Stateful)的帳戶抽象
在我們繼續之前,重要的是要知道存在兩種類型的帳戶抽象:無狀態的和有狀態的。????
許多人將賬戶抽象描述為“一旦滿足某些條件就自動執行交易”的方案。如果你正在實現無狀態的帳戶抽象,那么只有上述表述中的一些子集情況是可能的!
安全公司:已阻止一次攻擊并幫助0xsifu挽救100 ETH:4月9日消息,安全公司BlockSec發推稱,已成功阻止一個攻擊交易并挽救100 ETH,0xsifu可以與其聯系。
據此前報道,派盾發推稱,SushiSwap RouteProcessor2合約存在與Approve相關漏洞,導致Frog Nation前CFO 0xsifu損失超過330萬美元(約1900 ETH)。派盾提醒用戶盡快撤銷0x044b7開頭合約相關權限以避免遭受損失。
此前推特用戶Trust表示,自己已進行白帽黑客攻擊并轉移0xsifu的100 ETH,希望將其歸還給0xsifu,0xsifu可以私信聯系自己。Trust之后發推稱,“這太瘋狂了。在我拯救一切之前,MEV機器人已經部署合約并復制了攻擊。”[2023/4/9 13:53:12]
Stateless=不依賴于外部狀態,沒有副作用。?Stateful=可以依賴于外部狀態,可以訪問鏈的狀態。在有狀態賬戶抽象實現中,定義有效性條件的智能合約可以訪問鏈的狀態。這樣做的問題是,在一個實例中為真的條件在另一個實例中可能不為真。實際上,這看起來像是一個節點發送一筆當前有效但之后變得無效的交易。例如,假設你想在區塊高度為1000000時自動執行一筆交易。在區塊高度為1000000時,你可以將用戶操作提交到內存池中,這在當時是有效的。當區塊打包者試圖將它放入下一個塊時,它可能是無效的,因為區塊號增加了。
接收的節點必須花費資源來驗證永遠不會上鏈的東西,并且不能將交易發送方列入黑名單,因為它在發送時是有效的。?
我們稍后會詳細介紹ERC4337,其中研究人員花了很多時間來弄清楚如何避免這種情況。出于上述的原因,規范中禁止使用特定的操作碼,如“blockNumber”。??
美股行業ETF盤初多數下跌,區域銀行ETF暴跌5.3%:金色財經報道,美股行業ETF盤初多數下跌,區域銀行ETF暴跌5.3%,銀行業ETF跌超4.3%,金融業ETF跌1.8%。[2023/3/11 12:55:18]
使用無狀態帳戶抽象,您永遠不會有更改有效性條件的風險——它是單調的。
Fuel:無狀態的賬戶抽象?
我們稍后會討論其他生態系統如何實現帳戶抽象。從Fuel開始,你將看到如何從頭開始構建一個新系統和模塊化理論,以及為現有系統構建之間的對比。
Fuel使用謂詞(Predicate)實現無狀態的賬戶抽象。謂詞是你可以花費UTXO的條件。其是主函數返回布爾值的腳本。函數邏輯控制如果求值為真,則該謂詞下的資產被解鎖,可以由調用者使用。謂詞擁有或控制UTXO。
注:UTXO代表未花費的交易輸出。對UTXO核心的基本理解是,對于每筆交易,都會花費全部余額,或者說代幣數量。你發送給目標收款人的金額會全部轉給他們,其余的會被銷毀,然后再次鑄造,從而產生新的未花費輸出。?Fuel謂詞的關鍵是你可以內省或檢查謂詞的輸入和輸出,這將允許你構建訂單簿Dex,或在多方之間進行原子化的Swap。
在交易層面,UTXO交易描述了交易影響的一個子集。這部分效果可以在無狀態帳戶抽象中進行調節。Fuel通過UTXO模型的設計實現了這一點。這使系統能夠了解交易的輸入和輸出。在以太坊上,你只知道輸入。使用Fuel,你可以使用輸出來編寫邏輯,如果你提供X,則提供Y。
實際操作層面來說
你可以將代幣鎖定在一個具有可編程的有效性的謂詞中,該謂詞表示,“有一些可以花費的代幣,滿足一些條件時,X數量的Y資產發送到某個地址。同樣,你可能有一些邏輯說明此交易僅在X以特定價格Swap時才有效。這里的誤區在于不是你要*發送*任何東西。它已經被發送了。你看到的是交易的最終效果,在這個例子中,代幣已被發送。??
推特告知員工,沒有全公司裁員的計劃:金色財經消息,推特公司告知員工,自與馬斯克簽署收購協議以來,還沒有在全公司范圍內裁員的計劃。
此前據《華盛頓郵報》報道,推特未來幾個月將進行大規模裁員,馬斯克在收購該公司的交易中告訴潛在投資者,他計劃解雇推特7500名員工中的近75%,將公司員工數量精簡至只有2000名以上。(金十)[2022/10/21 16:33:51]
謂詞有效性
在作用域執行期間不檢查謂詞。而是在交易有效時間內進行檢查。謂詞可以檢查交易的輸入是否具有特定屬性,但它不關心這些輸入是否有效。當然交易輸入必須是有效的,交易才是有效的,但不是謂詞在強制執行該有效性。?
未來
目前,Fuel謂詞受到字節數的限制,以此作為計量它們的一種方式。將來,Fuel團隊將使用Gas來約束謂詞,從而允許使用循環。這使得像自定義哈希和簽名驗證這樣的密碼學成為可能,因為它們通常需要使用循環。
Fuel實現方案的好處
注:如果您想繼續閱讀使用賬戶抽象可以做什么,可以跳過此部分UTXO內省
在比特幣和以太坊,以及使用類似實現的協議上,你無法內省交易。這意味著你無法內省花費它的交易,也無法用編程方式,根據輸出來設定要執行的操作。
Fuel賬戶抽象實現的核心是為開發者和用戶提供更大的靈活性,因為這些不是在協議級別編碼的東西。Fuel的帳戶抽象允許開發人員在應用程序級別自定義驗證方案。?
FuelLabs團隊有一個以太坊私鑰的ECRecover示例。如果你想要實現不同曲線的ECRecover,開發者完全可以在應用層編寫一個!查看Hashcloack用Sway編寫的BLS12-381和Edwards25519的實現(https://github.com/hashcloak/fuel-crypto)。?
全球加密貨幣總市值反彈重回至一萬億美元以上:金色財經消息,據coingecko數據顯示,全球加密貨幣總市值反彈重回至一萬億美元以上。截至發稿時,全球加密貨幣總市值為1,006,906,593,365美元,24小時增漲2.5%。全球加密貨幣24小時交易額為91,439,107,691美元。[2022/7/17 2:18:41]
ECRECOVER:當向以太坊網絡發送交易時,你必須使用你的私鑰來簽署該交易。ECRecover正在將這種驗證簽名的功能轉移到智能合約中,而不是只有以太坊節點才能做。有了這,你可以驗證的將不僅僅是交易簽名本身。沒有狀態膨脹
無狀態賬戶抽象不會使狀態膨脹,因為即使它被花費了,它也永遠不會進入到區塊鏈狀態,只會進入歷史。?
有了謂詞,就沒有合約、狀態或存儲。謂詞最初沒有狀態,如果隨后有人代表謂詞進行花費,你只會得到一條只針對UTXO的數據庫條目,而不是狀態樹。
其他生態系統如何實現賬戶抽象
與計算機科學中的大多數事情一樣,帳戶抽象可以通過多種方式實現。目前沒有一種實現是整個行業的標準。?
以太坊
EIP-2938(https://eips.ethereum.org/EIPS/eip-2938)是最早提出賬戶抽象的EIP,其允許合約成為支付費用和開始交易執行的頂級賬戶。實現是圍繞引入一個新的EVM操作碼來發出有效性信號,來通過執行任意的EVM字節碼來擴展交易條件。該提案沒有納入協議,因為開發人員正忙于合并等其他更改,無法冒險進行如此大的協議更改。?
ERC-4337(https://medium.com/infinitism/erc-4337-account-abstraction-without-ethereum-protocol-changes-d75c9d94dc4a)是第一個無需更改核心協議即可實現以太坊帳戶抽象的提案/標準。它通過將交易驗證移出協議本身并將其移至更高級別來實現這一點。?
在以太坊上,EOA是以太坊上的賬戶,其功能被硬編碼到協議中。定義他們如何支付gas,如何簽署交易如何使用nonce等。這個標準擺脫了EOA帶來的帳戶硬編碼性質。
Starknet
Starknet(https://starkware.co/starknet/)是以太坊上的zk-rollup。Starkware實現了以太坊EIP-4337模型的修改版本。更多相關信息可以閱讀如下鏈接。
(https://community.starknet.io/t/starknet-account-abstraction-model-part-1/781)
zkSync
zkSync是以太坊上的zk-rollup。zkSync實現了EIP-4337的修改版本。更多相關信息可以閱讀如下鏈接。
(https://v2-docs.zksync.io/dev/developer-guides/aa.html#extending-eip4337)可以。
Biconomy
Biconomy是一個開發者工具平臺,專注于以太坊生態系統的基礎設施和工具。Biconomy實現了EIP-4337的修改版本,并提供SDK,其中一部分可以實現支付用戶gas費用的功能。更多相關信息可以閱讀如下鏈接。
(https://biconomy.gitbook.io/sdk/additional-content/account-abstraction)
模塊化設計
模塊化的精神(https://fuellabs.github.io/fuel-docs/master/modular-execution.html)不是設計一個與另一個系統緊密耦合的系統,從而提供更大的靈活性。Fuel對賬戶抽象的實現就是一個體現。Fuel的帳戶抽象實現允許更高的靈活性,帶來高度可定制的環境,開發人員可以在應用程序級別定義有效性條件,而無需依賴Fuel協議來支持它。
因為Fuel不是專門為以太坊或任何其他系統構建的,所以Fuel的實現不會被其他系統的包袱所拖累,從而有了更大創新的空間。
雖然zkSync、Starkware和Biconomy都實現了EIP-4337的修改版本,但Fuel實現了更獨特和更高性能的帳戶抽象。因為Fuel將作為以太坊上的Rollup進行部署,所以從一些賬戶來看,以太坊已經有了賬戶抽象。
帳戶抽象可以做什么
你看到的正在構建的新的用戶體驗是由帳戶抽象實現的功能,而不是帳戶抽象本身。諸如用戶支付gas費用和Web3Auth之類的,都是建立在帳戶抽象之上的應用層。這些事情本質上成為可能是因為帳戶抽象的核心原理:以編程方式設置交易有效性條件。
建立在賬戶抽象之上的例子:
Web3auth為其他用戶支付gas費簽名驗證方案的自由檢查多簽查看如下利用了Fuel帳戶抽象功能的項目:
Authsome(https://taikai.network/ethlisbon/hackathons/ethlisbon-2022/projects/cl9tv1epm14319401w1mf7ltuhm/idea)-無錢包登錄系統。這個錢包隨后被用作可插拔的認證基礎設施,類似于Web3Auth。Thunder(https://twitter.com/ThunderbyFuel/status/1598338104573714433?s=20&t=MCV2iY9PdkvkpoWJAtouBQ)-Fuel上的NFT市場,可以一鍵批量執行交易。Poolshark](https://twitter.com/poolsharks_labs)-一種定向流動性協議。Poolshark使用Fuel的賬戶抽象與匯集的流動性匹配條件訂單,以提高高級交易者的可訪問性并降低費用。
提升用戶體驗
錢包的社會恢復批量交易應用程序可以為其用戶的交易支付gas?使用來自不同生態系統的錢包無錢包web3登錄用戶不需要在他們的“常規”錢包中使用ETH來發起交易能夠將100%的資金放入多重簽名并直接從其發起交易
解鎖新應用
“沒有人知道,但這極具啟發性。它讓人們行動起來!”
事實上:我們還不完全知曉可以解鎖哪些創新型的應用程序,但我們可以開始大幅提升現有應用程序的用戶體驗,這是一個很好的開始。?
最后
幾年前,區塊鏈在用戶層面的問題是世界上大多數人在經濟上無法負擔其使用成本。隨著Layer2的持續發展和衍生,我們遇到了一個新的問題:UX。
突然間,我們可以將費用降到足夠低以使區塊鏈可用,但應用程序的用戶體驗需要更加舒適和穩健。在下一個周期中,我預計會有更多團隊關注支持在帳戶抽象上提升用戶體驗和改進流程。這將為web3帶來類似web2的托管體驗。??
一、錢包與Web3應用的困境錢包在Web3世界是資產、身份、賬號的統一體,加上其在不同應用之間的一致性和可組合性,其重要程度甚至超過了微信或Google賬號在傳統世界位置.
1900/1/1 0:00:00在觀察Blur項目的過程中被問到很多次“你怎么看Blur”,我最直接簡單的回答是“它改變了我的交易習慣”.
1900/1/1 0:00:00去年7月,YugaLabs?元宇宙項目Otherside完成了「FirstTrip」內測首秀。在此次測試中,Voyagers可以參與多種活動,如自由移動,發送表情符號,沖刺、跳舞和完成空中翻轉,
1900/1/1 0:00:00市場觀點: 1.宏觀流動性 貨幣流動性趨緊。美聯儲主席鮑威爾鷹派發言,利率峰值可能高于預期,如有必要將提速加息.
1900/1/1 0:00:00過去,GMX、Velodrome等受到扶持和激勵的第2層(L2)應用程序已被證明其成功性并成為贏家;那么,通過研究下一輪潛在的激勵接受者,可能會指引我們發現下一波可能崛起的協議.
1900/1/1 0:00:00本文旨在介紹初學者如何與L2Dapps交互。在本指南中,我將討論如何開始使用ScrollzkEVM以及如何與以太坊L2Dapp交互。理論上,在本指南中學到的技能可遷移至任何其他2層網絡.
1900/1/1 0:00:00