如果有人請你開一張不填銀碼的支票,你只要頭腦夠清醒,都很大機會拒絕。
不過在Defi(去中心化金融)的世界裡,你卻會經常開出這種「不填銀碼」支票,授權智能合約可以無上限地動用你的資金。如果遇到有心人設下陷阱,就很容易血本無歸。
我想介紹一些工具,讓你檢視一下自己到底有否受權智能合約自由動用你的戶口資產,以及如何取消或改變這些授權,保障自己。
無論你想交易代幣、抵押代幣收息(Yield Farming),或購買心儀的NFT(非同質化代幣),很多時都需要向執行這些服務的智能合約作出授權,容許其轉移你銀包內的代幣資產以完成交易。
有很多平台為了優化用家體驗,不需要每次交易或修改條款都重新授權,智能合約可能會要求用家給予一個無金額上限的授權,這種設定於行內並非罕見。
不過,這種做法尤如開出一張不填銀碼的支票,理論上合約是可以挪用你指定戶口內的所有代幣資產。雖然智能合約都是公開的,有心人若要「出蠱惑」也不難被發現,但過去亦有一些例子,是故意於合約裡開了「後門」,即使用家不再使用其服務,合約仍可以控制該錢包,並轉走內裡的代幣,因此而損失逾百萬的大有人在。
這幾年去中心化應用越來越多,活躍的用家都可能已簽下一大堆合約授權而不自知,然而風險日積月累不可以忽視。
幸好近期主要的區塊鏈瀏覽器如 etherscan.io、bscscan.io、polygonscan.io,都相繼推出了代幣核准(Token Approvals)的功能,為你的錢包提供一份的綜合授權清單,並且可以即席修改或取消授權。
以最流行的以太坊瀏覽器 etherscan 為例,讀者只要到其代幣核准網頁(圖一),輸入錢包地址,便可以找到與這地址有關的合約授權,以及當中授權的金額(Allowance) (圖二)。程式還會告訴你涉及有風險的金額及NFT有多少(at risk)。
圖一
圖二
若想修改授權,則要先把錢包地址連結上 etherscan,按 「Connect to Web 3」,然後選取 Revoke,便可以進行修改(圖三),把授權金額調低至一個上限,或甚至索性改成零取消授權(圖四),當然在區塊鏈上的任何手續都需要付費(圖五)。
圖三
圖四
圖五
在去中心化的世界裡,各種各樣的創新每日湧現,但同時亦潛伏著不少陷阱。一不留神,將擁抱新世界賺回來的回報不明不白地回吐,殊為不值。若不想因為大開中門被乘虛而入,亡羊補牢,未為晚也。
注:現時運行智能合約的主要區塊鏈,都有提供代幣核准的功能,以下列出數個供讀者參考:
- Etherscan
- Bscscan
- PolygonScan
- FtmScan
范健文
UDomain(通域存網)行政總裁