以太坊價格 以太坊價格
Ctrl+D 以太坊價格
ads
首頁 > SOL > Info

RC20:無限代幣授權 —— 我們能做些什么?

Author:

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

近來以太坊上最火爆的領域就是DeFi。主要的DeFi應用包括ERC20代幣的借貸、質押和交易。若想在Uniswap、Aave和Yearn等DeFi協議上使用ERC20代幣,你需要授權dApp來使用這些代幣。這就是所謂的?*ERC20授權*?。這些授權對于DeFi平臺的運作來說必不可少,但是如果不加以控制,那將是非常危險的。

ERC20授權的必要性

有了以太坊上的原生代幣ETH,你就可以將ETH發送至該智能合約,同時調用智能合約功能。這是通過所謂的可支付函數實現的。但是,由于ERC20代幣本身就是智能合約,你無法通過直接將代幣發送到智能合約來調用其函數。

因此,ERC20標準讓智能合約使用?transferFrom()?函數代表用戶轉移代幣。為此,用戶需要允許智能合約代表他們轉移代幣。

這樣一來,用戶就可以將代幣“存入”智能合約,同時智能合約會更新其狀態來顯示這筆存款。相反,如果你將ERC20代幣發送至該智能合約,則合約不會更新其狀態。

Paradigm地址在10小時前解禁了3000枚MKR:金色財經報道,據Lookonchain數據,Paradigm地址在10小時前解禁了3000枚MKR(約合337萬美元)。Paradigm曾于3月16日向Coinbase存入26625枚MKR(1980萬美元)。

金色財經此前報道,鏈上數據顯示a16z正在逢高出售700萬美元的MKR代幣。[2023/7/26 15:59:23]

例如,如果你將DAI“存入”Aave來賺取利息,你首先要允許Aave合約從你的錢包中取出一些DAI。然后你調用Aave合約里的函數,指定你想要存入的DAI的數量。然后,Aave合約使用?transferFrom()?函數從你的錢包中取出相應數量的DAI,并將同等數量的aDAI代幣記入你的賬戶。

無限ERC20授權的危害

將特定數量的ERC20代幣存入合約時,你就可以選擇將授權額設成這個數量。然而,許多應用會向用戶要求無限授權。

紐交所上市礦企BIT Mining:將于5月30日發布一季度財報:金色財經報道,紐約證券交易所上市礦企BIT Mining Limited宣布擬在2023年5月30日星期二美國股市收盤后發布一季度財報,該公司披露目前其業務涵蓋加密貨幣挖礦、礦池、數據中心運營和礦機制造,擁有區塊鏈瀏覽器BTC.com和BTC.com旗下運營的綜合礦池業務,還擁有一家 7 納米加密貨幣礦機制造商 Bee Computing。(prnewswire)[2023/5/29 9:48:34]

這會帶來極好的用戶體驗,因為用戶不需要在每次存款時重新授權。設置無限授權后,用戶只需要同意一次,之后存款時就不會再重復這一過程。

但是,該設置存在很大的弊端。眾所周知,即使是成熟的項目,也有可能存在漏洞。一旦你給了這些平臺無限授權,不只是你的存款會陷入風險之中,你的錢包中的代幣也是如此。

馬斯克計劃成立人工智能初創公司與Open AI競爭:金色財經報道,馬斯克正在制定計劃,推出一家新的人工智能初創企業,與ChatGPT制造商OpenAI競爭。消息人士透露,馬斯克現正在組建一個由人工智能研究人員和工程師組成的團隊。此外,馬斯克還在與SpaceX和特斯拉的一些投資者討論投資他的新公司的問題。知情人士稱,為了這個新項目,馬斯克已經從英偉達處獲得了數千個高性能GPU處理器。知情人士還稱,馬斯克正在從包括DeepMind在內的頂級人工智能實驗室招募工程師。到目前為止,馬斯克已經邀請了前DeepMind員工Igor Babuschkin,以及大約6名其他工程師。知情人士表示,今年早些時候,為了應對OpenAI的快速發展,馬斯克開始探索成立競爭對手公司的想法。[2023/4/15 14:05:11]

在Devcon5上,我第一次與PaulBerg談到了這個問題。在這次大會上,Paul就本文所討論的問題做了陳述。在開發Sablier時,Paul在他的智能合約中發現了一個漏洞,不僅所有存入該智能合約的DAI有風險,所有測試者的錢包中的DAI也是如此!

8月非農前瞻:勞動力市場需求強勁推動美聯儲激進加息:9月2日消息,美國8月季調后非農就業人口將于北京時間今日20:30公布,各大機構預期新增就業人數在20-45萬之間,也是美聯儲9月議息會議前獲得的最后一批數據之一,很大程度上決定加息幅度。(金十)[2022/9/2 13:04:44]

實際風險

長期以來,無限授權的風險主要是理論上的。在Paul所開發的Sablier平臺正式上線之前,這個漏洞就被修復了。當時,還沒有出現利用ERC20授權的攻擊,但是只要平臺繼續要求無限授權,遲早會出狀況。

去年,我們已經看到了幾起利用ERC20授權的攻擊事件。

意外漏洞

今年早些時候,Bancor出現了一個漏洞,危及用戶資金。執行ERC20?transferFrom()?函數的函數變成了public屬性,因此任何人都可以執行該函數,并取走用戶錢包中的資金。Bancor執行了一次白帽黑客攻擊,控制了損失,并將資金還給了用戶。

1kx和Macro DAO聯合發起Macro黑客松:7月29日消息,1kx和Macro DAO聯合發起Macro黑客松。Macro黑客松旨在加速NFT金融領域的發展,包括提出下一代協議,提高 NFT 的生產力、實用性和財務用例。活動將于8月16日至30日舉行,贊助商包括NFTfi、NFT Bank、Ronin、Sudoswap等。[2022/7/29 2:44:56]

惡意利用漏洞

除了Bancor的意外漏洞之外,還有很多惡意利用漏洞的情況。在今年夏天的DeFi熱潮中,人們都在為各種以食物命名的DeFi分叉產品狂歡,其中也包括一些騙局。即使人們為了規避風險只存入少量代幣,他們錢包中的代幣也會因為無限授權而陷入風險。

ZenGo就在一個名為UniCats的項目中發現了可利用漏洞。人們可以存入Uniswap代幣,然后通過流動性挖礦獲得MEOW代幣。但是如果要存款,用戶必須提供?無限授權。如果項目遭到攻擊,攻擊者不僅可以拿走項目的存款,還可以拿走用戶錢包內的所有UNI代幣。

另一個例子是DegenMoney項目。DegenMoney項目采用了一種不怎么高明的辦法。這個項目沒有開發自己的智能合約,而是創建了一個前端來進行兩次授權交易。一次是向一個運行中的智能合約,另一次是向完全不同的地址。

由于很多人沒有專門檢查錢包地址,這就導致攻擊者可以取走用戶錢包中的代幣。

那硬件錢包呢?

總的來說,硬件錢包比手機、手提電腦和基于瀏覽器的錢包安全的多。原因是,控制資金的私鑰安全地存儲在硬件錢包中,并且永遠不會離開該設備。因此,通過硬件錢包,你可以確保沒人能竊取你的私鑰。

ERC20授權的問題在于,沒人需要竊取你的私鑰才能從你的錢包中取走代幣。因此,硬件錢包也無法防范本文所討論的惡意利用漏洞問題。

使用硬件錢包依然是一種好習慣,因為硬件錢包確實能保護你免受其它漏洞攻擊。但是,你需要注意的是,硬件錢包不能抵御授權漏洞和其它很多智能合約漏洞。

dApp開發者可以做些什么?

在Devcon的講話中,Paul提到了一些關于無限授權問題的解決方案。這些方案各有優缺點。其中最實用的方案是即批即用模式。在這種模式下,應用只會要求用戶授權確切的數額,而非不限額。

這種方案的用戶體驗確實會差一些,因為每當用戶想要發送交易時,都需要發送一筆新的授權交易,不能再像無限授權那樣一勞永逸。這個模式的缺陷是會增加交易費成本,如果交易費像去年那樣暴漲,就會帶來很大的麻煩。

另一種替代型方案是,可以讓用戶選擇僅授權當下需要花費的數額,還是授權更高的數額以便后續進行更多交易。已經有多個項目采用這種策略,例如1inch.exchange和Curve.fi。

另一個減少交易成本的解決方案是,采用EIP2612之類的標準,讓用戶可以通過簽署消息來設置其授權額度,無需再通過發送交易的形式。但是,這類標準并未得到廣泛采用,而且圍繞該標準打造的工具也不多。

用戶可以做些什么?

由于ERC20授權是很多智能合約所不可或缺的部分,完全停止授權的方案并不可行。但是在可能的情況下,請盡量避免無限授權。

人們已經比一年之前更加了解這一問題,因此有些dApp可以讓用戶選擇只授權當前需要花費的數額,但是大多數dApp依然不行。盡管如此,高端用戶還可以通過Metamask的界面來降低其授權額度。

在使用dApp時,請你思考一下是否需要經常使用這個dApp,以及你是否信任這個項目,還是說你只會偶爾使用這個dApp,或者根本不信任這個項目。無論是哪種情況,你最好都要定期查看你的授權額度,并取消對不再使用的dApp的授權。

為便于檢查并撤銷這些授權,我開發了一種名為revoke.cash的工具。通過這個工具,你可以查看地址的代幣余額和授權額度,之后就可以輕而易舉地撤銷或降低授權。類似的工具還有approved.zone等。

結論

許多去中心化應用的運行都離不開授權,但是無限授權通常并不利于安全性。2020年已經出現過幾起利用ERC20授權的漏洞事件,人們對這個問題的認識比一年前深得多。作為一名用戶,你可以采取一些措施來降低上文所述風險,包括定期查看并撤銷多余授權。

Tags:C20RC20ERC20RC2RC20幣Fair BERC20PlayCoin [ERC20]Wrapped Secret (ERC20)

SOL
TAL:重磅 金石投資集團與BAF CAPITAL計劃成立10億美元的數字資產管理基金

12月18日,港股主板上市公司金石投資(00901.HK)與BAFCAPITAL(彼岸花資本)正式簽訂了戰略合作諒解備忘錄,共同探討發展數字資產管理基金和發展合規的數字資產投資策略.

1900/1/1 0:00:00
以太坊:12--20 ETH以太坊早間行情分析

行情目前震蕩蓄力的狀態還是比較明顯的,而附圖指標MACD與KDJ的行情,目前處于下行的狀態之下,行情在經過可蓄力之后,才能再次的迎來突破.

1900/1/1 0:00:00
TAL:老金玩幣:BTC空單止盈第二單——620點

恭喜跟上金生論幣實盤布局空單操作的幣友們,今日下午1點多給出大餅現價23920位置進場空單,目標23600,破位23300.行情在剛剛剛好最低跌到了23300位置.

1900/1/1 0:00:00
ETH:亮亮說幣:12.21ETH早間行情分析.多空博弈.

前言: 所謂最難忘的,恰恰是從來都不曾想起,卻永遠無法忘記,隨著年齡的增長,人總會變得越來越包容,不是沒了脾氣,而是很多事已經無法讓你生氣,有坐下來的素養,也有掀桌子的能力,似水流年.

1900/1/1 0:00:00
VER:全面對比DeFi保險兩強:Cover和Nexus Mutual誰更勝一籌

文?|PANews特約作者?微博:分布式金融DeFiNexusMutual一直是DeFi保險的龍頭老大,而Cover則是獲得AC加持的后起之秀,發展勢頭非常迅猛.

1900/1/1 0:00:00
WETH:采用延時喂價還被黑?Warp Finance 被黑詳解

By:?Kong@慢霧安全團隊 背景 通過以上分析我們可以知道WETH的價格和DAI的價格獲取是正常的,無法被惡意操縱.

1900/1/1 0:00:00
ads