最近,賬戶抽象以及EIP-4337在開發者圈子里很火。賬戶抽象指的是未來錢包簽名機制概念化。目前,主流錢包(EOA錢包)采用的簽名機制是CDSA(橢圓曲線數字算法簽名),而未來錢包的簽名機制可以多樣化:采用多簽、其他的加密算法以及ZK驗證等。EIP-4337的提出則推動賬戶抽象概念的落地,未來將可能開啟智能合約錢包新紀元。
那么,賬戶抽象所帶來的錢包改革會帶來什么實質性的好處嗎?在Metamask、Math Wallet等錢包已經成了主流應用的情況下,智能合約錢包還機會興起嗎?本文在科普的基礎上也對上述話題進行探討。
(本文由Fenbushi Capital原創,有匪撰文,感謝Math Wallet CTO Eric 的分享。)
EOA錢包 & 智能合約錢包
錢包的賬戶都有兩部分構成:分別為外部賬戶(externally owned account) 和合約賬戶(contract account)。EOA錢包是用戶通過私鑰直接控制賬戶的錢包(Metamask、Math Wallet)。其中,錢包賬戶的創建是通過隨機生成私鑰、根據私鑰計算出公鑰、根據公鑰計算出地址的方式。用戶發送交易的過程實際上是用私鑰為交易數據簽名的過程,由外部賬戶觸發。
Beosin:BSC鏈上的gala.games項目遭受攻擊事件簡析:金色財經報道,根據區塊鏈安全審計公司Beosin旗下Beosin EagleEye 安全風險監控、預警與阻斷平臺監測顯示,BSC鏈上的gala.games項目遭受攻擊,Beosin分析發現由于pNetwork項目的bridge配置錯誤導致pTokens(GALA) 代幣增發,累計增發55,628,400,000枚pTokens(GALA),攻擊者已經把部分pTokens(GALA) 兌換成12,976個BNB,攻擊者(0x6891A233Bca9E72A078bCB71ba02aD482A44e8C1)累計獲利約434萬美元。Beosin Trace追蹤發現被盜金額還存在攻擊者地址中。
第一筆攻擊交易:0x4b239b0a92b8375ca293e0fde9386cbe6bbeb2f04bc23e7c80147308b9515c2e
第二筆攻擊交易:0x439aa6f526184291a0d3bd3d52fccd459ec3ea0a8c1d5bf001888ef670fe616d[2022/11/4 12:17:00]
慢霧:跨鏈互操作協議Nomad橋攻擊事件簡析:金色財經消息,據慢霧區消息,跨鏈互操作協議Nomad橋遭受黑客攻擊,導致資金被非預期的取出。慢霧安全團隊分析如下:
1. 在Nomad的Replica合約中,用戶可以通過send函數發起跨鏈交易,并在目標鏈上通過process函數進行執行。在進行process操作時會通過acceptableRoot檢查用戶提交的消息必須屬于是可接受的根,其會在prove中被設置。因此用戶必須提交有效的消息才可進行操作。
2. 項目方在進行Replica合約部署初始化時,先將可信根設置為0,隨后又通過update函數對可信根設置為正常非0數據。Replica合約中會通過confirmAt映射保存可信根開始生效的時間以便在acceptableRoot中檢查消息根是否有效。但在update新根時卻并未將舊的根的confirmAt設置為0,這將導致雖然合約中可信根改變了但舊的根仍然在生效狀態。
3. 因此攻擊者可以直接構造任意消息,由于未經過prove因此此消息映射返回的根是0,而項目方由于在初始化時將0設置為可信根且其并未隨著可信根的修改而失效,導致了攻擊者任意構造的消息可以正常執行,從而竊取Nomad橋的資產。
綜上,本次攻擊是由于Nomad橋Replica合約在初始化時可信根被設置為0x0,且在進行可信根修改時并未將舊根失效,導致了攻擊可以構造任意消息對橋進行資金竊取。[2022/8/2 2:52:59]
“
慢霧:DEUS Finance 二次被黑簡析:據慢霧區情報,DEUS Finance DAO在4月28日遭受閃電貸攻擊,慢霧安全團隊以簡訊的形式將攻擊原理分享如下:
1.攻擊者在攻擊之前先往DeiLenderSolidex抵押了SolidexsAMM-USDC/DEI的LP。
2.在幾個小時后攻擊者先從多個池子閃電貸借出143200000USDC。
3.隨后攻擊者使用借來的USDC在BaseV1Pair進行了swap操作,兌換出了9547716.9個的DEI,由于DeiLenderSolidex中的getOnChainPrice函數是直接獲取DEI-USDC交易對的代幣余額進行LP價格計算。因此在此次Swap操作中將拉高getOnChainPrice函數獲取的LP價格。
4.在進行Swap操作后,攻擊者在DeiLenderSolidex合約中通過borrow函數進行借貸,由于borrow函數中用isSolvent進行借貸檢查,而在isSolvent是使用了getOnChainPrice函數參與檢查。但在步驟3中getOnChainPrice的結果已經被拉高了。導致攻擊者超額借出更多的DEI。
5.最后著攻擊者在把用借貸出來DEI兌換成USDC歸還從幾個池子借出來的USDC,獲利離場。
針對該事件,慢霧安全團隊給出以下防范建議:本次攻擊的原因主要在于使用了不安全的預言機來計算LP價格,慢霧安全團隊建議可以參考Alpha Finance關于獲取公平LP價格的方法。[2022/4/28 2:37:18]
EOA錢包的優劣勢包括,優勢:
Grim Finance 被黑簡析:攻擊者通過閃電貸借出 WFTM 與 BTC 代幣:據慢霧區情報,2021 年 12 月 19 日,Fantom 鏈上 Grim Finance 項目遭受攻擊。慢霧安全團隊進行分析后以簡訊的形式分享給大家。
1. 攻擊者通過閃電貸借出 WFTM 與 BTC 代幣,并在 SpiritSwap 中添加流動性獲得 SPIRIT-LP 流動性憑證。
2. 隨后攻擊者通過 Grim Finance 的 GrimBoostVault 合約中的 depositFor 函數進行流動性抵押操作,而 depositFor 允許用戶指定轉入的 token 并通過 safeTransferFrom 將用戶指定的代幣轉入 GrimBoostVault 中,depositFor 會根據用戶轉賬前后本合約與策略池預期接收代幣(預期接收 want 代幣,本次攻擊中應為 SPIRIT-LP)的差值為用戶鑄造抵押憑證。
3. 但由于 depositFor 函數并未檢查用戶指定轉入的 token 的合法性,攻擊者在調用 depositFor 函數時傳入了由攻擊者惡意創建的代幣合約地址。當 GrimBoostVault 通過 safeTransferFrom 函數調用惡意合約的 transferFrom 函數時,惡意合約再次重入調用了 depositFor 函數。攻擊者進行了多次重入并在最后一次轉入真正的 SPIRIT-LP 流動性憑證進行抵押,此操作確保了在重入前后 GrimBoostVault 預期接收代幣的差值存在。隨后 depositFor 函數根據此差值計算并為攻擊者鑄造對應的抵押憑證。
4. 由于攻擊者對 GrimBoostVault 合約重入了多次,因此 GrimBoostVault 合約為攻擊者鑄造了遠多于預期的抵押憑證。攻擊者使用此憑證在 GrimBoostVault 合約中取出了遠多于之前抵押的 SPIRIT-LP 流動性憑證。隨后攻擊者使用此 SPIRIT-LP 流動性憑證移除流動性獲得 WFTM 與 BTC 代幣并歸還閃電貸完成獲利。
此次攻擊是由于 GrimBoostVault 合約的 depositFor 函數未對用戶傳入的 token 的合法性進行檢查且無防重入鎖,導致惡意用戶可以傳入惡意代幣地址對 depositFor 進行重入獲得遠多于預期的抵押憑證。慢霧安全團隊建議:對于用戶傳入的參數應檢查其是否符合預期,對于函數中的外部調用應控制好外部調用帶來的重入攻擊等風險。[2021/12/19 7:49:04]
1. 可以免費創建錢包。
慢霧:Spartan Protocol被黑簡析:據慢霧區情報,幣安智能鏈項目 Spartan Protocol 被黑,損失金額約 3000 萬美元,慢霧安全團隊第一時間介入分析,并以簡訊的形式分享給大家參考:
1. 攻擊者通過閃電貸先從 PancakeSwap 中借出 WBNB;
2. 在 WBNB-SPT1 的池子中,先使用借來的一部分 WBNB 不斷的通過 swap 兌換成 SPT1,導致兌換池中產生巨大滑點;
3. 攻擊者將持有的 WBNB 與 SPT1 向 WBNB-SPT1 池子添加流動性獲得 LP 憑證,但是在添加流動性的時候存在一個滑點修正機制,在添加流動性時將對池的滑點進行修正,但沒有限制最高可修正的滑點大小,此時添加流動性,由于滑點修正機制,獲得的 LP 數量并不是一個正常的值;
4. 隨后繼續進行 swap 操作將 WBNB 兌換成 SPT1,此時池子中的 WBNB 增多 SPT1 減少;
5. swap 之后攻擊者將持有的 WBNB 和 SPT1 都轉移給 WBNB-SPT1 池子,然后進行移除流動性操作;
6. 在移除流動性時會通過池子中實時的代幣數量來計算用戶的 LP 可獲得多少對應的代幣,由于步驟 5,此時會獲得比添加流動性時更多的代幣;
7. 在移除流動性之后會更新池子中的 baseAmount 與 tokenAmount,由于移除流動性時沒有和添加流動性一樣存在滑點修正機制,移除流動性后兩種代幣的數量和合約記錄的代幣數量會存在一定的差值;
8. 因此在與實際有差值的情況下還能再次添加流動性獲得 LP,此后攻擊者只要再次移除流動性就能再次獲得對應的兩種代幣;
9. 之后攻擊者只需再將 SPT1 代幣兌換成 WBNB,最后即可獲得更多的 WBNB。詳情見原文鏈接。[2021/5/2 21:17:59]
2. 轉賬是gas費用較為低廉。
3. 可以同時操作多個賬戶。
劣勢:
1. 用戶在生成一個錢包后,需要保留相應的私鑰。一旦私鑰流出,錢包因資產將面臨被盜風險而被棄用。
2. 用戶在轉賬操作時經常需要授權應用,這給到惡意賬戶可乘之機,智能合約可以瞬間把資產轉走(參考TP錢包漏洞的案例)。
3. 用戶必須用ETH進行支付gas費用。
而合約錢包在保留公私鑰的同時,不同點在于錢包本身由智能合約操作,發起交易則直接通過合約賬戶(contract account)來完成。
合約錢包具備以下優劣勢,優勢:
1. 無需助記詞,可恢復錢包并更換私鑰。
2. 無需購買ETH作為gas費用支付。
3. 可管理,在基礎的轉賬上增添更多功能:隱私交易、多簽、代付gas費用等。
4. 可編程、可升級,定制化。
1. 創建錢包需要一定的成本,無法批量創建免費錢包。
2. 在Layer1的gas費成本高昂,之后搭建在Layer2上會好一點。
3. 一筆交易一次操作,多筆交易無法打包成一次。
4. 合約漏洞會影響錢包安全。
對比下來,EOA錢包像是ATM機,只支持存取、轉賬、余額查詢等基本服務。而合約錢包則更像是智能化的銀行系統,用戶可以設置白名單賬戶、最大提取額度;在轉賬操作上更加寬宥,允許項目方(補貼)、好朋友代付等等。由于各種操作都需要調用智能合約,提高了用戶管理錢包的便捷度。安全方面,EOA錢包和智能合約錢包各自存在隱患:前者容易在私鑰泄露和授權應用上出問題,后者則可能出現合約漏洞。有一點壞處是,用戶在使用合約錢包時每次調用智能合約費用較高。不過,此次以太坊基金會強推賬戶抽象,必有深意,下文繼續分說。
以太坊路線圖 & EIP-4337
賬戶抽象概念自2015年就被提出,經歷過多次的EIP提案也未成型。而最新的EIP-4337之所以受到以太坊基金會的重視,在于以太坊路線圖的確定。在合并之后,以太坊未來升級(proto-danksharding)都會圍繞著為Roll-up服務的基調。Rollup會顯著降低gas費用,而Proto-danksharding在降低gas費上又添助益。這為智能合約錢包的普及奠定了良好的基礎,解決了gas費用貴的主要問題。
EIP-4337無需在以太坊共識層面進行改動,而是推出了由User operation、Bundler以及Paymaster等角色構成的解決方案。解決方案如下:
1、Alice(用戶)發起一個“用戶操作”,并包含它想要執行的交易。
2、她將操作發送到高級別的“用戶操作內存池”。
3、操作被部分驗證并廣播到P2P內存池節點網絡。
4、操作由“Bundler”(打包者)負責,Bundler可以是任何人——MEV搜索者、驗證者、你或我,等等。所有的操作被打包者打包成一筆大額交易。
5、打包者將該區塊與其他交易一起包含在以太坊區塊中。
接著是打包者的功能,來了解交易將如何被執行和驗證。
1、打包者將交易路由到一個全局的“入口點”智能合約。
2、全局合約通過每個用戶操作并調用智能合約錢包中的“驗證函數”。
3、錢包運行這個函數來驗證用戶操作的簽名,并對打包者打包這些交易進行補償。
4、錢包運行一個執行操作來操作指定的交易。
5、執行操作后,剩余的gas會退還至錢包。
關于EIP-4337,其中新的mempool相當于在更高級別的系統中復制原先的交易內存池,bundler相當于sequencer對于交易進行排序并可能獲取一定的MEV收入,entry point contract作為可信入口點用以檢索和檢查打包內容是否有垃圾交易(在一定意義上實現了擴容)。Paymaster的模塊未來可以接入token/法幣通道,代付的應用場景也很豐富:第一,允許應用開發者代用戶付費;第二,允許用戶以ERC20代幣支付費用,合約作為中介收取ERC20并以ETH支付。總得來說,EIP-4337中的user operation mempool以及paymaster 有機會創造出全新的業態,值得開發者深入探索!
短期&長期智能合約錢包落地情況
短期來看,Argent已經實現了部分智能合約錢包的功能,包括無需助記詞和私鑰,僅憑手機號和郵箱賬戶即可創建賬戶;添加可信第三方“guardian”實現無私鑰恢復;支持更復雜的功能,通過DAI/WETH進行gas費用支付等等(它不是原子進行gas費支付)。不過,智能合約錢包并非無后顧之憂,依舊存有風險敞口。
長期來看,智能合約錢包的普及會面對如下阻力:
1. 合約錢包的門檻較高,創建錢包需要花錢。從用戶的角度來看,如果項目方不進行補貼,就難以有動力去使用產品。
2. 合約錢包的廣泛應用有賴于以太坊Layer2的蓬勃生態。就短期來說,Layer2生態還遠未達到成熟的水平。
3. 主流的錢包已經獲取太多用戶了,基于安全等因素的考慮,目前缺乏動力進行改革。
綜上所述,智能合約錢包因其可編程型、智能性、復合功能而備受關注,可能成為主流錢包的發展方向。不過辯證得看,它并不是十全十美、萬無一失,它的普及仍依賴于Layer2生態的成熟。最后是市場因素,這取決于用戶選擇對賬戶的”控制權“還是”便捷性“。
分布式資本
企業專欄
閱讀更多
金色早8點
區塊律動BlockBeats
金色財經
1435Crypto
吳說區塊鏈
blockin
比推 Bitpush News
Block unicorn
Foresight News
Odaily星球日報
Bankless
DeFi之道
一切以技術特性為主要賣點的產品都是半成品。關于EVM和ZK EVM的炒作、爭論已經延續一段時間,尤其是在Vitalik對ZK EVM的類型做出劃分之后,關于字節碼、虛擬機、兼容性等等拗口概念的科.
1900/1/1 0:00:00原文標題:《ZKPs in Web3: Now and the Future》原文作者:Mohamed Fouda、Qiao Wang原文編譯:Frank.
1900/1/1 0:00:00DeFi數據 1、DeFi代幣總市值:477.61億美元 DeFi總市值及前十代幣 數據來源:coingecko2、過去24小時去中心化交易所的交易量66.
1900/1/1 0:00:00隨著聯邦公開市場委員會(FOMC)為期兩天的政策會議即將結束,投資者似乎對美聯儲準備繼續加息充滿信心.
1900/1/1 0:00:00作者:Natalie Mullins區塊鏈的設計空間最近被打開了:我們不再只是有“單體”區塊鏈.
1900/1/1 0:00:00原文作者:本體 HRM Eden原文來源:OWNInsights 專欄本文根據作者自己作為 HR 的無數次招聘經歷,從招聘者的角度為大家提供加入 Web3 所需要的能力與素質作為應聘參考.
1900/1/1 0:00:00