計算機編程中的抽象和數據抽象指的是隱藏除了「對象」相關數據以外的所有數據的過程,目的是減少復雜性并提高有效性。它通過省略不必要細節的方式來表示對象。抽象是面向對象編程的三大原理之一,它與封裝和數據隱藏有關。這篇文章將為以下方面提供概覽:
以太坊賬戶抽象
·外部賬戶/用戶賬戶
·合約
為賬戶抽象提議的EIP
·EIP-86:事務來源和簽名的抽象
·EIP-2938:賬戶抽象
·EIP-4337:通過入口點合約(EntryPointContract)實現的賬戶抽象
用例
·錢包
·贊助交易
·混幣
·DeFi協議
賬戶抽象
以太坊的賬戶抽象以創建單一賬戶類型為目標,這種賬戶將包含所有相關方面,而且沒有任何無關的方面,讓開發人員的工作更加輕松。
以太坊賬戶類型
目前,在以太坊區塊鏈上有兩種類型的賬戶:
用戶賬戶
用戶賬戶是給一般人使用的。
·這些賬戶由對應公共地址的私鑰所控制,比如用戶的錢包賬戶。
·這些賬戶又稱為外部賬戶(EOA),不需要ETH余額就可以在區塊鏈上創建一個外部賬戶。但是,兩個外部賬戶之間可以用ETH進行交易,也可以用ERC支持的其他Token。
·外部賬戶(錢包)用于加密貨幣的發送和接受功能存在于以太坊虛擬機的外部。
合約
合約是一組由代碼控制的指令。
·因為使用了網絡儲存,所以創建一份合約通常會產生相關成本。
·用戶可以操作多種功能,比如接收來自外部賬戶和合約賬戶的事務,以及向它們發送事務。
Universal Ledger完成1000萬美元融資:金色財經報道,錢包即服務(wallet-as-a-service)提供商Universal Ledger宣布完成1000萬美元融資,Hard Yaka領投。Universal Ledger旨在幫助用戶自己構建加密錢包,其客戶主要是大型金融機構和行政機構,該公司已構建了一個分級驗證系統,可提供電話號碼、電子郵件等低級別驗證,以及其他身份識別信息的高級別驗證,確保交易安全。[2023/4/19 14:13:55]
·它還可以啟動一個執行多種活動的代碼,包括兌換Token或是創建一個新合約。
·合約賬戶是存在于EVM的「智能合約」。
如果你發送1個ETH到由代碼合約控制的賬戶,那就沒有人可以再控制這個ETH了。唯一可以轉移這個ETH的是合約的執行,即代碼本身。
兩種賬戶類型都具有接收、保留和發送ETH和?Token?的潛能,還有與部署在網絡上的其他智能合約進行通信的潛能。
賬戶抽象提案
以太坊賬戶抽象(AA)是對這兩種賬戶形式的加強,讓它們更具有可比性,還使外部賬戶的管理邏輯像合約賬戶一樣通用。
它的目的是將合約賬戶的兩種形式減為一種形式。單個賬戶形式的用途包括鑄幣和合約轉賬。開發者和用戶將不再需要區別賬戶類型,因為事務將完全轉移到EVM上并脫離區塊鏈協議。
以太坊開發者一直在尋找實現的方法,但一直沒有達到?Final?狀態的提案。在以下部分,我們將概述迄今為止提議賬戶抽象的三個以太坊改進提案(EIP)。
賬戶抽象提案的時間線
2016:
·VitalikButerin為Metropolis提出最初的抽象變化想法。
·其目的是準備一種賬戶安全抽象。在傳統的模型中,ECDSA和默認的nonce方案是保護賬戶的唯一途徑。在此模型中,所有賬戶都是合約賬戶,它可以支付gas,且用戶可以自由定義他們的安全模型。
Aave DAO拯救丟失代幣的“救援計劃”提案獲得99.9%贊成票通過:金色財經報道,借貸協議Aave社區發起“救援任務第一階段長期執行人”投票提案已獲得贊成通過,贊成票數比例超過99.9%,只有一名用戶使用單個 AAVE 代幣投票反對該提案。這意味著社區成員送到錯誤地址的代幣將可以獲得“救援”,根據提案數據顯示,將有約218萬美元的代幣將得到恢復,包括LEND、AAVE、UNI、USDT、stkAAVE等,其中超過29,188枚AAVE與107枚質押中的AAVE代幣總價值約216萬美元,不過該提案僅恢復價值500美元以上的代幣。(Cointelegraph)[2023/3/11 12:56:31]
2017:
·VitalikButerin提出了用于事務來源和簽名的抽象的EIP-86。
·其目的是抽象出簽名驗證和nonce檢查機制,允許用戶建立賬戶合約來執行任意所需簽名或nonce檢查,而不是依賴于傳統的方法。
2020:
·VitalikButerin、AnsgarDietrichs、MattGarnett、WillVillanueva和SamWilson提議了用于賬戶抽象的EIP-2938。
·目的在于允許合約成為可以支付費用和執行事務的「頂級」賬戶類型。
2021:
·VitalikButerin、YoavWeiss、KristofGazso、NamraPatel以及DrorTirosh提議了通過入口點合約規范進行賬戶抽象的EIP-4337。
·其目的在于避免共識層協議變更,而是依靠更高層次基礎設施。
EIP-86:事務來源和簽名的抽象
根據其「摘要」,EIP-86提議實現一系列改變,這些改變服務于「抽象出」簽名驗證和nonce檢查的綜合目的,允許用戶創建用于執行任意所需簽名/nonce檢查的「賬戶合約」,而不是依賴于使用目前這種硬編碼到事務處理的機制。
傳統模型:ECDSA和默認的nonce方案是保護賬戶的唯一方式。
納斯達克證交所CEO:正針對加密數字貨幣市場醞釀一個解決方案:金色財經報道,納斯達克證交所CEO Adena Friedman表示,本交易所側重于那些痛點,正針對加密數字貨幣市場醞釀一個解決方案。[2022/12/3 21:20:08]
新模型:所有賬戶都是合約賬戶,它可以支付gas,且用戶可以自由定義他們的安全模型。
以forwardingcontract為例,作者VitalikButerin解釋道,這種合約會驗證簽名,如果簽名是有效,它開始向礦工發起付款,然后使用給定的值和數據向指定地址發送調用指令。
這個提案的主要優勢如下:
多簽錢包
·傳統方法:多簽錢包中的每一筆交易都必須由所有的參與者進行同意。我們可以通過將所有參與者簽名結合為單一批準事務對此進行簡化,但這種方法還是會增加復雜性,因為所有參與者的賬戶都必須持有ETH。
·新方法:在這個EIP的幫助下,現在的合約可以持有ETH,直接提交包含所有簽名的事務至合約上,合約將會支付這筆費用。
自定義密碼學
·傳統方法:用戶必須遵循ECDSA,這是一種使用橢圓曲線的密碼學。
·新方法:用戶可以升級至ed25519簽名或用戶自己希望升級的任何方案;不要求用戶采用ECDSA。
EIP-2938:賬戶抽象
根據EIP-2938的摘要,「賬戶抽象(AA)允許合約成為可以支付費用和執行事務的「頂級」賬戶。
·傳統模型:事務的有效性直接由ECDSA簽名、一個簡單的nonce值以及賬戶余額進行定義。
·新模型:
1.賬戶抽象通過執行隨機的EVM字節碼來擴展事務的有效性條件。
2.為了表示有效性,引入了新的EVM操作碼?PAYGAS,還設置了合約的gas價格和gas使用上限。
3.賬戶抽象現已分為兩類:
單租戶AA:這種類型旨在支持錢包或其他參與者很少的用例。
最近活躍5年以上的BTC供應百分比達到24.695%:金色財經報道,Glassnode數據顯示,最近活躍5年以上的BTC供應百分比剛剛達到24.695%。[2022/9/11 13:22:32]
多租戶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費。
區塊廣播時間是一個新區塊到達網絡大多數節點所需平均時間。
當具有AA事務的區塊到來時,同一賬戶的所有待處理事務都將被刪除。另一方面,傳統事務會被重新驗證并可能在收到新區塊時發布。
EIP-4337:通過入口點合約實現的賬戶抽象
這是VitalikButerin和社區提出的最新議案。它作為一項ERC提議出來,而這個提案包括了避免共識層協議的變更,而依靠于更高層的基礎設施。
Animoca Brands成為Coingecko“銅牌贊助商”:金色財經報道,據Coingecko官方社交媒體披露,香港移動游戲開發及Web3投資公司Animoca Brands已成為其“銅牌贊助商”(Bronze Sponsor)。[2022/7/14 2:12:03]
它旨在完成下列目標:
·賬戶抽象:允許用戶使用包含隨機驗證邏輯的智能合約錢包作為他們的主要賬戶,而不是EOA。
·去中心化:允許打包交易捆的人參與包含賬戶抽象用戶活動的過程。用戶不需要知道任意活動者的直接通信地址,就可以處理發生在整個公共內存池中的任意活動。
·無共識變更:為了更快的采用,這個提案避免了共識變更。
·交易費支付:用ERC-20標準的Token支付交易費,使得開發者為其用戶支付費用,以及類似于EIP-3074這樣的贊助的交易提案所支持的用例。
這項提案怎么運作?
圖片來源:Infinitism
VitalikButerin在這里很好地解釋了這項提案的運作。
這是賬戶抽象最新的提案,現在還是draft狀態,等待被合并成為一項EIP。對比常規的以太坊事務內存池,這項設計增添、維護以及犧牲了一些功能。
關鍵亮點
沒有中心化的活動者、移除了用戶端錢包設置復雜性,完全支持EIP-1559、具有代替交費的能力,發送一個比舊UserOperation具有更高溢價的新UserOperation來替換操作或保留了讓它更快被打包的功能。
有一些增添的新優勢:
1.驗證邏輯的靈活性
2.足以讓執行層達到量子安全
3.錢包可升級性
4.執行邏輯靈活性
然而,盡管協議已經盡了最大的努力,它還是會略微增加DoS攻擊的可能性,它還會增加gas開銷,并且一次只執行一個事務。
賬戶抽象用例
錢包
EOA和合約錢包
·EOA錢包:由私鑰保護的錢包。
·合約錢包:使用智能合約在鏈上實現的錢包。
·安全考慮:如果智能合約代碼中存在bug,合約錢包將面臨來自易受攻擊的智能合約的安全風險。這種風險可以通過由錢包提供商完成的安全測試和審查進行最小化。然而,在EOA錢包中,風險會完全由錢包用戶承擔,就像用戶不小心丟失了私鑰也由他們自己承擔。
Argent,Dapper,GnosisSafe和Monolith都是智能合約錢包的案例。
EOA的元交易
以太坊區塊鏈用戶需要一個持有gas的EOA與區塊鏈網絡進行連接,或依賴錢包供應商通過他們的中繼或第三方中繼網絡促進元交易。前者依賴于(需要做KYC的)CEX購買的ETH,試圖通過將消費者的責任轉移給中繼者來盡量減少用戶體驗摩擦,費用由鏈上/鏈下錢包供應商和/或鏈下用戶支付。
元交易是一種包含了帶有執行交易意愿者所簽署的數據信息的交易。
基于中繼者的架構有一些缺點:
1.可以將他們視作擁有抑制交易能力的中心化中介
2.由于中繼交易需要額外的21,000基本gas收費,及其公司在gas費基礎上盈利的需要,他們在技術上/經濟上的效率低下。
3.對中繼者專用協議權力的使用。
賬戶抽象允許智能合約錢包在不依賴中繼網絡的情況下,接受用戶的無gas費的元交易并為他們支付gas費。在不失去以太坊去中心化保證的情況下,這種基礎層的能力還會大大提升這種錢包的UX。
贊助交易(SponsoredTransactions)
SponsoredTransactions囊括在EIP-2711(狀態為已撤銷)中,這個EIP提議了一種機制:通過允許其他人代付gas費,可以讓人們無需擁有任何ETH就可以進行交易。
一些用例:
1.允許應用開發者代表用戶支付費用。
2.允許用戶用ERC-20Token支付費用,合約則像中介收集ERC-20Token并以ETH的方式支付網絡費用。
運作
這項提案可以通過出納機制(paymastermechanism)來支持這些用例。
·對于用例1:Paymaster會驗證贊助者的簽名被納入在?paymasterData?中,表明贊助已做好為?UserOperation?進行支付的準備。如果簽名有效,Paymaster就會接受這項指令,并從贊助者的份額中扣除?UserOperation?的費用。
·對于用例2:Paymaster會檢查?sender?的錢包是否有足夠的ERC-20余額來支付這項?UserOperation。如果足夠,Paymaster會接受這項指令,并在索要?postOp?里的ERC-20Token之前支付ETH費用。
混幣
一起探討TornadoCash混幣機制的例子,以此理解我們如何在DeFi協議中使用AA。
傳統的TornadoCash合約中的隱私問題
·當用戶進行提款時,TornadoCash為其提供隱私保護。他們可以證明這筆款來自一筆獨一無二的存款,但除了用戶之外沒人知道這筆存款來自哪里。
·用戶通常不會在自己的提款地址里持有ETH,如果用戶使用他們的存款地址來支付gas,這就會在存款地址和提款地址之間生成一條鏈上鏈接。
這個問題可以由第三方中繼者解決,他們會驗證ZK-Snark和nullifier仍然有效的狀態,發布使用其ETH支付gas的交易,并從TornadoCash合約中收集用戶的返款。
賬戶抽象提供的解決方案:用戶可以提交一個針對TC合約的AA事務,在這之后執行ZK-SNARK驗證和nullifier檢查,并直接快速地調用?PAYGAS。這可以讓提款者直接用發送到他們提款地址的Token中支付gas,無需中繼者或連接其存款地址的鏈上鏈接。
DeFi協議
一起探討DeFi協議Uniswap的案例,了解我們可以在DeFi協議中如何使用AA。
可以創建一種Uniswap的新版本,它允許直接進行針對Uniswap合約的交易。
目前,用戶可以將Token提前存進Uniswap;Uniswap可以儲存用戶的余額和公鑰,以便驗證花費這些余額的事務。
AA的目標在于通過禁止不符合高級標準的事務被打包到鏈上,從而提高DeFi協議的gas效率。
在傳統模型中:正常的交易員會將他們的Token儲存在Uniswap的合約之外。
在新模型中:套利交易員會將他們的Token存在Uniswap上,在外部市場發生變化的情況下,他們還可以轉移執行套利的交易。最終,另一個套利交易員如果首先執行這筆交易時,這些沒有獲利的交易不會被打包上鏈。這讓套利交易員避免了支付gas并減少了打包上鏈的垃圾交易數量。這將會增加區塊鏈的可擴展性和市場效率,因為套利交易者更能做到糾正跨鏈交易在價格上的差異。
套利交易員指的是利用兩個或更多市場之間的差價,由此同時低價購入并高價賣出的交易員。
來源:金色財經
作為DEX的原生代幣,SUSHI在很多方面都受到DeFi市場發展的影響。然而最近的悲觀情緒,使得盡管從6月份的低點回升了71%,但SUSHI任然未為其投資者帶來利潤.
1900/1/1 0:00:00從“十四五”規劃中我們看到多地加碼數字經濟,區塊鏈技術已經被上升為下一代信息技術發展戰略。那么,什么是區塊鏈?當前正處于金融體系創新變革的關鍵時期,區塊鏈將如何改變未來數字金融的格局?區塊鏈在數.
1900/1/1 0:00:00熊市是困難的,因為人們眼睜睜地看著他們的賬戶余額隨著比特幣價格下跌而減少。你可以做很多事情來緩解疼痛。在內心深處,我們都知道這會發生。熊市很糟糕,如果這是你的第一次,它們尤其糟糕.
1900/1/1 0:00:008.10號早評 行情回顧:比特幣BTC昨天四小時級別收線金針之后,上沖無力,在回踩的過程中直接跌破日內支撐,四小時級別上一根大陰線結束了這波的上沖動能,走出一個下跌的趨勢行情.
1900/1/1 0:00:002022年8月11日15:00,GoonsofBalatroon項目做客追風社,與大家分享AMA內容的嘉賓是Matt-CommunityLead??CEOMark分享主題:WorldofBala.
1900/1/1 0:00:00注意:講的是波動的規律,不是指會像?luna?一樣歸零,不是一碼事。?首先,通縮≠會上漲,需求才會。?ETH過去總量無限,不影響它上漲;反過來,未來分發減少,需求不變才能長期看漲.
1900/1/1 0:00:00