以太幣交易所 以太幣交易所
Ctrl+D 以太幣交易所
ads
首頁 > Gate.io > Info

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

Author:

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

對于開發者來說,AUTH/AUTHCALL?機制非常具有吸引力。它可以讓人們創建調用者來實現不同的批量處理策略、gas抽象模型和復雜的賬戶抽象方法等。

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

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

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

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

Asproex(阿波羅)正式開通SNN/USDT交易對 開盤漲幅達183.33%:據官方消息,2020年9月14日16:00(UTC+8),Asproex(阿波羅)正式開通SNN/USDT交易對,開盤價格0.3USDT,現報價為0.85USDT(5.81元/枚),開盤漲幅高達183.33%。

SNN基于Skynet公鏈及POS+POM+POS合成挖礦激勵機制,打造全民共建、全民共享、完全公平公正、安全、透明的去中心化超級挖礦,最終建立支持數字資產支付與結算、借貸 、投融 資等全方位服務的分布式數字資產金融基礎設施與生態。據悉SNN作為SN的子幣,總發行量為210萬,零流通全靠母幣產出,且每月減半。

Asproex(阿波羅)作為一家離岸銀行控股持牌交易平臺,也是一家涵蓋CTO企業通證上市的交易平臺,持有5國牌照,為全球中小微企業提供融資難的解決方案,助力數字化上市。[2020/9/14]

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

行情 | Bicc平臺通證切換交易對 漲幅達200%:Bicc幣交所昨日公告,因其與USDA穩定幣戰略運營升級合作,雙方將共同發展與建設Bicc平臺通證BSS的通證價值體系。故Bicc幣交所將于近日下線BSS/USDT交易對,并開通BSS/USDA交易對。

目前BSS/USDA交易對已上線20分鐘,開盤漲幅達到200%。[2020/2/11]

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

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

分析 | BTC多空開單量保持謹慎 Coinbase BTC/USD 對 Bitfinex仍處負溢價狀態:據TokenGazer數據分析顯示,截止至6月19日17點整,BTC價格為$9170.8,市值為162,838.6MM,主流交易所24H BTC交易量約為$1126.9MM,環比昨日下滑18%;經過比對Bitfinex、Bitstamp、Coinbase三個交易所18日全天交易數據,TokenGazer發現Bitstamp上的主動買單超過了主動賣單,Bitfinex與Coinbase上主動賣單多于主動買單;當前Coinbase BTC/USD 對 Bitfinex仍處負溢價狀態,但是溢價差距在縮小;算力方面,BTC算力呈現一定下降趨勢;期貨方面,BTC多空開單量都存在輕微下滑情況。[2019/6/19]

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

分析 | BTC多空開單量有一定下滑 Coinbase BTC/USD 對 Bitfinex 處正溢價 ?:據TokenGazer數據分析顯示,截止至6月17日17點整,BTC價格為$9,181.5,市值為162,493.3MM,主流交易所24H BTC交易量約為$1200.3MM,較此前有較大幅度提升,BTC價格持續繼續攀升,目前在9100點高位盤整;BTCUSD/Coinbase對BTCUSDT/Bitfinex已經從此前的負溢價狀態轉變為正溢價;算力方面,受益于價格的不斷抬升,BTC算力呈現持續上升態勢,有望沖擊新高;活躍地址數增幅放緩;期貨方面,多空開單量都有一定幅度下降。[2019/6/17]

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

治理劫持示例

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

動態 | BP 對 EOS 全區塊歷史都進行了存儲 只是有 5 個 BP 做了歷史索引并對外提供查詢接口:據 IMEOS 報道,針對“只有 5 個 BP 存儲了全部 EOS 區塊數據”的謠言消息,IMEOS 向 EOS ASIA 郭達峰求證,該消息是對EOS WEEKLY 的誤解。實際情況是所有 BP 都存儲了全區塊歷史,只是有 5 個 BP 使用了“History API”插件,提供區塊歷史數據的索引和查詢。[2019/2/17]

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

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

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

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

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

跨鏈重放示例

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

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

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

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

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

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

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

我們還能采取什么別的手段?

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

一個可能的實現:

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

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

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

利:

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

安全性由協議保障。

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

弊:

nonce實現,不支持并行。

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

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

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

替代方案:完全避免硬分叉

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

利:

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

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

弊:

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

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

Tags:AUTHBTCSWAPESWAuthorshipbtc期貨交易平臺美金DniswapESWAP價格

Gate.io
NFT的核“裂變”到“聚變”_NFT

2021年北京時間3月11日,在世界著名藝術品拍賣行——佳士得拍賣行上,數字藝術家Beeple的NFT藝術作品《每一天:最初的5000天》,拿下了高達6934萬美元的成交價.

1900/1/1 0:00:00
金色前哨|成都將發放1200萬元數字人民幣出行禮包_區塊鏈

金色財經報道,7月2日,《每日經濟新聞》記者從成都市地方金融監督管理局獲悉,成都將向市民發放價值1200萬元的數字人民幣公共交通出行禮包,共計10萬份.

1900/1/1 0:00:00
從“天王級”到“天亡級”?Swarm現狀大起底_ARM

Swarm,仿佛在最近發生了大型反轉,或者相對不客氣地說,我們可以稱之為“大型翻車事件”,從“天王級項目”到“天亡級項目”.

1900/1/1 0:00:00
NFT市場6月數據解讀:6月下半旬出現回暖跡象 殺出兩匹黑馬_NFT

我們都知道去年的這個時候,DeFi是加密貨幣市場最耀眼的星。今年隨著名人、名企的涌入,NFT也打響了名聲。7月的第一槍是推特的140件免費NFT.

1900/1/1 0:00:00
金色觀察 | 南北夾擊下 美國比特幣ETF依然懸而未決_比特幣

6月24日,區塊鏈投資公司QRCapital的比特幣交易所交易基金開始在巴西證券交易所交易。此前3月,巴西證券交易委員會批準QRCapital的BTCETF在位于圣保羅的B3交易所交易,交易代碼.

1900/1/1 0:00:00
以太坊基金會第六次Reddit AMA:涉及狀態管理、無狀態性、經濟機制等_以太坊

北京時間6月23日晚,以太坊基金會研究團隊在Reddit論壇進行了第六次AMA,包括以太坊共識機制、質押、合并、分片、Layer2、狀態管理及以太坊經濟機制等眾多主題.

1900/1/1 0:00:00
ads