以太坊價格 以太坊價格
Ctrl+D 以太坊價格
ads

THE:從The Saudis NFT事件淺析EIP-2535鉆石協議

Author:

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

原文作者:九九,慢霧安全團隊

2022年7月10號,一個火熱的NFT項目TheSaudis開啟了freemint活動。而就在mint活動結束后,一位名叫RIGHTBLOCK的用戶在市場上大量地拋售該NFT,項目方發現后迅速鎖定到了該用戶并對合約進行改動以此來將該用戶手里的大量NFT轉移回來,他們之后承諾會將這些NFT回饋給社區用戶。

那么為什么項目方可以將該用戶手里的NFT轉移呢?經過我們的分析發現該NFT項目的合約采用了EIP-2535協議也叫做鉆石協議,項目方利用該協議重寫了合約的功能,以此來實現這些NFT的轉移。接下來慢霧安全團隊將會為大家介紹下這個鉆石協議的細節。

2000萬枚USDT從Tether 錢包轉入Binance,價值1995.1萬美元:據Whale Alert數據顯示,北京時間11月21日23:05,2000萬枚USDT從Tether Treasury錢包轉入Binance,按當前價格計算,價值約1995.1萬美元,交易哈希為:7a07f51b18e70a8247ab513a4ab1afc48dfc341325370525655ce6bcca52808f。[2020/11/21 21:37:09]

智能合約突破24kb大小的最大限制,并且讓合約更方便地更新功能。

1350萬枚USDT從Tether Treasury錢包轉入交易所:據WhaleAlert數據顯示,北京時間08月10日04:39,1350萬枚USDT從Tether Treasury錢包轉入交易所,按當前價格計算,價值約1352萬美元,交易哈希為:63de61224674c14b1832fdaf5d5e2692a5d422e068e34d2ca4e4351955750061。[2020/8/10]

要理解鉆石協議,首先有幾個相關的概念定義需要知道:

1400萬枚USDT從Tether Treasury錢包轉入幣安,價值1405.2萬美元:據WhaleAlert數據顯示,北京時間07月28日19:37,1400萬枚USDT從Tether Treasury錢包轉入幣安,按當前價格計算,價值約1405.2萬美元,交易哈希為:e0da53efdd144f83543d0e568022520c7e91cee674cc56529f8651ce42267abd。[2020/7/28]

鉆石:鉆石可以理解為代理合約,也是與用戶進行交互的主合約

切面:正如真正的鉆石有不同的側面一樣,一個鉆石合約也有著不同的面,鉆石合約的每個功能所需要調用的合約對應一個切面,所以也可以理解為實現合約

鉆石切割:鉆石協議標準擴展了一種叫鉆石切割的功能,其主要作用從鉆石中增加、替換或刪除切面和功能,可以理解為合約的升級

放大鏡:鉆石協議標準中的放大鏡功能主要是返回關于切面的信息和鉆石存在的功能,這些信息是保存在鉆石合約內部的存儲結構——DiamondStorage中

整個鉆石模型類似下圖:

通過使用鉆石標準規范去創建鉆石合約,這個合約可以像使用當前合約的代碼一樣使用任何數量的其他切面合約的代碼。

在該鉆石合約中不同的函數功能需要調用對應的不同的切面合約的代碼來實現,并且可以利用鉆石切割的功能來對鉆石合約中的函數功能進行修改。

這與市面上大多數使用一個代理合約和一個實現合約來實現交互與升級的方式有所區別。

該函數首先會調用LibDiamond庫的enforceIsContractOwner函數來判斷調用者是否是合約的owner,如果是owner調用的話會調用LibDiamond庫的diamondCut函數來實現鉆石合約的功能更新。

跟進到該函數我們發現鉆石切割會根據傳入的不同的action來判斷進行添加、替換或刪除功能,故接下來跟進看看項目方調用該函數的交易。

我們發現傳入了新的切面合約0x70d8ccaf6b50b051ab1e8fa238626163e45a8b03,傳入的action設置為1則應該是調用了replaceFunctions來實現替換功能。

從replaceFunctions函數中可以分析出該函數首先會為傳入的地址新增一個切面,接著從存儲中循環讀取傳入的每個函數選擇器對應的舊的切面進行刪除,并為這些函數的切面添加為傳入的新的切面地址。

至此可得知TheSaudis項目方就是利用了鉆石切割函數來重寫了轉賬功能,以此來將用戶RIGHTBLOCK手中的NFT轉移回自己的賬戶。

Tags:NFTTHEETHERSDTNFTY價格WEATHER價格Ethereal英文名寓意MOMMYUSDT

比特幣價格今日行情
DOG:在埃隆馬斯克冷落推特后,狗狗幣未能達到目標——下一步是什么?

特斯拉和SpaceX的CEO曾考慮將DOGE支付添加到Twitter上。狗狗幣(DOGE)未能達到備受期待的技術上行目標,在埃隆馬斯克和Twitter之間的持續爭執中,過去一周下跌了近10%.

1900/1/1 0:00:00
INE:6月CPI數據令人擔憂,下次會議或升息100個基點

美國亞特蘭大聯邦儲備銀行行長RaphaelBostic在周三的采訪中表示,在美國6月通脹數據續創新的40年高點后,政策行動“一切皆有可能”,決策者或將在下次會議上考慮升息100個基點.

1900/1/1 0:00:00
加密貨幣:盡管通脹水平上升,比特幣仍上漲 2%

2022年7月15日的比特幣價格分析對世界上最龐大的加密貨幣略有看漲,因為我們可以看到BTC代幣在過去24小時內以2%的價格飆升至20K中間價格區域.

1900/1/1 0:00:00
區塊鏈:金色晨訊 | 7月13日隔夜重要動態一覽

21:00-7:00關鍵詞:推特、Celsius、美SEC、Bitwise、BlockFi1.推特正式對馬斯克提起訴訟以強制執行收購協議;2.Celsius拒絕向潛在投資者披露財務數據.

1900/1/1 0:00:00
加密貨幣:央行貨幣政策司司長:扎實穩妥推進數字人民幣試點測試

7月13日消息,中國人民銀行貨幣政策司司長鄒瀾在國務院新聞辦公室今日舉行的新聞發布會上表示,今年上半年,人民銀行繼續會同各參研機構,扎實穩妥推進數字人民幣試點測試.

1900/1/1 0:00:00
GMT:ZT將下架部分幣種

親愛的ZT用戶: 為給用戶提供更好的交易體驗,ZT會對已上線項目進行嚴格審查,根據項目下架規則,ZT決定對MIX,SAITO,CRE,SKT,IOI,FREE,LSS,DOP,DEHUB.

1900/1/1 0:00:00
ads