比特幣交易所 比特幣交易所
Ctrl+D 比特幣交易所
ads
首頁 > Fil > Info

對 EIP-3074 的批評以及一種簡單的替代_BSP

Author:

Time:1900/1/1 0:00:00

對于開發者來說,AUTH/AUTHCALL 機制非常具有吸引力。它可以讓人們創建調用者來實現不同的批量處理策略(例如,支持多個 nonce 來實現更好的并行性)、gas 抽象模型和復雜的賬戶抽象方法等。

這種靈活性源于這一機制賦予了開發者極大的自由。AUTH/AUTHCALL 機制不要求開發者遵循特定的模式,而是要求用戶簽署一個 commit 哈希值(commit 內容將由調用者來解析),讓開發者基于 commit 自行設置限制。

然而,這種靈活性是以犧牲安全性為代價的。在本文中,我想要介紹一種更簡單的替代方案。這個方案具備 AUTH/AUTHCALL 機制的絕大多數優點,但是風險遠低于后者。

為什么簽署一個 AUTH commit 所帶來的風險高于簽署一個與存在漏洞/惡意合約相關的事務?

Green Dot Network開放對 Coinhub 比特幣 ATM 的訪問:金色財經報道,Coinhub 和 Green Dot Network 達成合作伙伴關系。該合作伙伴關系旨在允許使用合作伙伴 Coinhub 比特幣錢包與 CHB Holdings 和 Edge 合作,在Green Dot Network的 20,000 多家商店購買加密貨幣,包括 CVS、Walgreens 和 Krogers。[2023/4/18 14:09:27]

用戶在簽署與合約相關的事務時,所承擔的風險是已知的,即,可能會損失在該合約控制范圍內的資產。比方說,用戶給一個 ERC 20 合約簽署了批準事務,授權惡意的 DEX 合約。這個惡意 DEX 合約就可以提走用戶在 ERC 20 合約中的全部余額。但是,它無法從該用戶的其它 ERC 20 合約中提走代幣,除非得到該用戶的批準。它也不能代表用戶進行其它操作,因為這也需要專門獲得用戶的批準。

BlockSec:已阻止對 ParaSpace 的一起攻擊,挽救了 2900 ETH 資產:3月17日消息,BlockSec 發推表示其阻止了對 NFT 借貸協議 ParaSpace 的一起攻擊,挽救了 2900 ETH 資產,希望 ParaSpace 盡快與其聯系。[2023/3/17 13:10:39]

相較之下,EIP 3074 不僅要求用戶簽署 “空白支票”,而且假設調用者是誠實且沒有漏洞的。一個惡意/存在漏洞的調用者可以代表用戶執行任何操作 —— 訪問用戶持有的資產,代表用戶進行投票,控制用戶所有的合約等。

更糟糕的是,調用者隨時都可以作惡,因為 nonce 實現是由調用者控制的。存在漏洞/惡意的 nonce 邏輯實現可以重放用戶過去的事務。如果 commit 驗證的其它部分的邏輯也存在漏洞,調用者就可以利用這個 nonce 邏輯實現來代表用戶執行任何操作。即使漏洞被發現,用戶也無法撤回空白支票。這個外部賬戶(EOA)已經被永久入侵了。

Gelato Network 推出針對 Uniswap v3 自動再平衡實施方案 G-UNI:以太坊智能合約自動執行工具 Gelato Network 宣布推出 Uniswap v3 自動再平衡實施方案 G-UNI,用來降低 Uniswap v3 的無常損失風險。Uniswap v3 為充分利用流動性,可由用戶決定他們想要提供流動性的范圍,流動性供應更加集中但有可能帶來更大的無常損失風險。[2021/6/11 23:31:38]

編寫一個正確的調用者程序很難,而且我們幾乎可以肯定,調用者會不定期出現錯誤,從 EIP 3074 最后列出的調用者應該警惕的檢查/漏洞/情況非詳盡清單中可見一斑。這份清單勢必會變得越來越長,很可能伴隨著痛苦的發現過程。

此外,惡意參與者可以編寫一個看似無害的調用者程序,但是故意留下一個細微的漏洞,等到大量外部賬戶授權該調用者之后才會被攻擊者利用。

如果攻擊者沒有直接或立即利用這個漏洞從用戶那里竊取資金,這個漏洞可能很長時間都不會被發現。

Layer 2 交易協議 ZKSwap 完成對 Uniswap 流動性提供者的空投:3月3日消息,以太坊 Layer 2 交易協議 ZKSwap (ZKS)團隊已于北京時間 3 月 3 日完成對 Uniswap 上 WBTC/ETH、ETH/USDC、ETH/ DAI、USDC/USDT 4 個交易幣對流動性提供者的空投,空投共計覆蓋約 10,000 個以太坊深度用戶地址,每個地址發放 50 ZKS,合計發放約 56 萬個 ZKS,價值 120 多萬美金,目前已全部發放至用戶以太坊地址的 Layer2 賬戶。符合發放條件的用戶只需登陸 zks.app,連接并解鎖錢包即可領取空投。另外,ZKSwap 也將于北京時間 3 月 6 日晚上 18:00 開啟第一期流動性挖礦(PoL)和交易挖礦(PoT)活動。[2021/3/3 18:10:51]

惡意去中心化交易所 EveSwap 為其用戶編寫了一個調用者程序。這個調用者程序通過空投 EVE 代幣來為用戶提供 gas 資助,并批量處理用戶的批準和轉賬事務。

動態 | Bitfinex有個不存在的USDT/USD交易對 交易量達4500萬美元:據cryptoglobe報道,Bitfinex的CoinMarketCap頁面顯示,Bitfinex有個USDT/USD交易對,交易量達4500萬美元以上,但是該交易對并未出現在Bitfinex網站上,考慮到Bitfinex和Tether最近在銀行業務方面的問題,交易者懷疑Bitfinex參與了沖銷交易(Wash Trading)。Bitfinex回應到,這來自Tether錢包的存取款記錄,“CoinMarketCap會跟蹤我們的API,他們顯示這一交易對不是我們可以控制的,也不是我們推動的。”[2018/10/24]

EveSwap 的調用者程序看似無害,而且永遠不會竊取用戶的代幣,因為這樣馬上就會露餡。

用戶很開心。交易都成功了,交易費也很便宜。幾個月來平安無事。

然而,每當有人使用 EveSwap 交易 AliceSwap 的治理代幣 ALI 時,會自動將用戶的 AliceSwap 投票權委托給 EveSwap。

一旦授權人數達到某個閾值,EveSwap 就會通過治理提案劫持 AliceSwap。

EveSwap 用戶不太可能注意到這個過程,因為交易總是成功的,但是最終會給 AliceSwap 帶來毀滅性的打擊。

EIP 3074 合理地建議 commit 應該包含 chainid。但是,這是由調用者,而非協議執行的。在另一條鏈上有著相同地址的調用者可能會跳過該檢查(或與此相關的檢查)。

EveSwap 在兼容 EVM 的 BobSpongeChain 上運行,后者支持 EIP 3074。EveSwap 在 BobSpongeChain 上部署了一個誠實的調用者。

用戶使用該調用者在 BobSpongeChain 上交易,然后使用橋將資產轉移到以太坊上。

EveSwap 使用同一個部署密鑰在以太坊上部署了另一個地址相同的調用者。這個在以太坊上的調用者不會檢查 commit,只會檢查 ownerOnly,并充當其所有者的通用 AUTH/AUTHCALL 代理。

這樣一來,EveSwap 就可以劫持用戶在以太坊上的外部賬戶并卷走他們的資產了。

用戶從未在以太坊上交易過,運行在 BobSpongeChain 上的調用者程序又經過了嚴格的安全審查。盡管如此,用戶還是丟失了全部資產。

以太坊通過 EIP 155 的重放保護來防范這種情況。AUTHCALL 沒有重放保護。由于所有 commit 檢查都交給調用者完成,我們失去了以太坊提供的一切交易保護。攻擊是在所難免的,因為保護措施很隨意。如果要接受EIP 3074,AUTH 消息必須明確包含 chainid,而非將其作為 commit 的一部分。

我的提議是實現一個更明確的機制,在協議層面強制規定 commit 的含義。commit 結構將是類型化的(如 EIP 712 所述),錢包會以用戶可讀的形式將 commit 呈現出來。用戶可以確切地知道事務是什么樣子的,并確信這個事務不會在任何鏈上重放,無需依賴于調用者程序開發者的品行和能力。

一個可能的實現:

AUTH 將使用包含授權調用列表的類型化結構代替 commit 哈希值。每個調用都將指定 {nonce,to,gas,calldata,value,chainid}。簽名將被驗證,整個授權調用列表將保存為 authorized_transactions 而非 authorized 地址變量。

AUTHCALL 將得到一個新的參數 index,該參數指向最后一個 AUTH 創建的列表中的地址。

用戶地址的 nonce 將隨 AUTHCALL 遞增。nonce 并非由調用者存儲,而是實際的賬戶 nonce。

利:

用戶可以清楚地了解情況。

安全性由協議保障。

依然支持批處理和賬戶抽象。

弊:

nonce 實現,不支持并行。

復雜調用者程序的事務處理起來很繁瑣,因為用戶必須查看并接受整個調用列表。

不同的實現可能支持不同的 nonce 方案。但是,無論我們使用什么機制,該機制必須由協議而非調用者執行。

無論如何都應該避免讓復雜調用者執行大量用戶調用。復雜操作應該作為普通的智能合約實現,而非嘗試實現使用多個外部賬戶調用的算法。

還有一個選擇是完全避免 AUTH 機制,并通過 vbuterin 建議的另一種交易池來解決賬戶抽象和批量處理問題。

無需硬分叉,可由智能合約和可以感知這些智能合約的節點支持。

可用于一切支持 EIP 3074 的實現,而不會引入額外的風險。

不向后兼容已有的外部賬戶。用戶需要部署一個合約錢包并將資產轉移到該錢包內。

除非要求在不遷移的情況下支持已有的外部賬戶,否則這個選擇看起來更安全。

Tags:BSPNBSSWAPAUTHBSPAY價格NBS幣SWAPPAUTH幣

Fil
加密市場二季度復盤:日均波動率上升至17.46% 頭部資產抗風險能力強_AND

二季度,加密市場完成了風格切換,整體從加速上漲至短期高點轉為橫盤寬幅調整。根據CoinMarketCap的統計,加密貨幣總市值從季度初的約1.89萬億美元上漲至峰值約2.55萬億美元后就開始下降.

1900/1/1 0:00:00
虛擬貨幣支付資成為販新趨勢_EGR

隨著互聯網技術和物流業的不斷發展,犯罪的形式也在不斷變化,暗網和虛擬貨幣的出現更是為犯罪提供了新的交易方式.

1900/1/1 0:00:00
晚間必讀5篇 | 礦工收入為何能4天漲50%?_加密貨幣

1.從DeFi到游戲:最熱門的幾個去中心化應用程序本文精選最受歡迎的dapp?。點擊閱讀2.比特幣難度暴跌 但礦工收入為何能4天漲50%?數據顯示,在網絡出現有史以來最大難度下調之后,比特幣礦工.

1900/1/1 0:00:00
Coinbase CEO發文:構造去中心化的“蘋果”_OIN

某種程度上說,創始人就是企業的首席編劇,而作為加密貨幣第一股Coinbase的CEO,過去brian-armstrong的啟發性文章經常被加密社區宗教版的研讀.

1900/1/1 0:00:00
灰度大量GBTC在兩周內解鎖 比特幣會跌破3萬美元嗎?_比特幣

價值數十億美元的比特幣(BTC)投資基金的股票是否會遭到拋售,從而導致該加密貨幣的現貨價格暴跌,已成為業內分析師熱議的話題.

1900/1/1 0:00:00
一文梳理DeFi固定利率項目的機制_USD

固定利率貸款是傳統金融中最常見的貸款類型,固定利率(fixed rate)允許參與者鎖定一個預先確定的利率,而不必承受利率波動的風險.

1900/1/1 0:00:00
ads