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

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

Author:

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

背景信息

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

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

數據:7000萬枚USDT再次從Tether財政部轉入幣安:金色財經報道,Whale Alert監測數據顯示,北京時間18:29:00,7000萬枚USDT再次從Tether 財政部轉入幣安。金色財經此前報道,6000萬枚USDT從Tether財政部轉入幣安。[2022/10/26 11:44:50]

EIP-2535是以太坊上一個將合約進行代碼模塊化組合的提案,其目的是為了讓大型的智能合約突破24kb大小的最大限制,并且讓合約更方便地更新功能。要理解鉆石協議,首先有幾個相關的概念定義需要知道:鉆石:鉆石可以理解為代理合約,也是與用戶進行交互的主合約切面:正如真正的鉆石有不同的側面一樣,一個鉆石合約也有著不同的面,鉆石合約的每個功能所需要調用的合約對應一個切面,所以也可以理解為實現合約鉆石切割:鉆石協議標準擴展了一種叫鉆石切割的功能,其主要作用從鉆石中增加、替換或刪除切面和功能,可以理解為合約的升級放大鏡:鉆石協議標準中的放大鏡功能主要是返回關于切面的信息和鉆石存在的功能,這些信息是保存在鉆石合約內部的存儲結構——DiamondStorage中整個鉆石模型類似下圖:

1000萬枚USDT從Tether Treasury轉出:金色財經報道,Whale Alert數據顯示,北京時間12月3日23:57,1000萬枚USDT從Tether Treasury轉入0xd41c開頭未知錢包地址,交易哈希為:0xdb5234c4ff9cd6b8a2b52bc6935e269be32206046c659d35567e5a13dfe54225。[2020/12/3 22:56:00]

通過使用鉆石標準規范去創建鉆石合約,這個合約可以像使用當前合約的代碼一樣使用任何數量的其他切面合約的代碼。在該鉆石合約中不同的函數功能需要調用對應的不同的切面合約的代碼來實現,并且可以利用鉆石切割的功能來對鉆石合約中的函數功能進行修改。這與市面上大多數使用一個代理合約和一個實現合約來實現交互與升級的方式有所區別。

1525萬枚USDT從Tether Treasury錢包轉入Binance,價值1533.4萬美元:據WhaleAlert數據顯示,北京時間05月17日23:35,1525萬枚USDT從Tether Treasury錢包轉入Binance交易所,按當前價格計算,價值約1533.4萬美元,交易哈希為:94426a10238e88cbadfe754cfc71acae40048da3fd7330127f4e1b31efd79cdd。[2020/5/18]

事件分析

1000萬枚USDT從Tether Treasury錢包轉出,價值999.9萬美元:據WhaleAlert數據顯示,北京時間04月06日20:32, 1000萬枚USDT從Tether Treasury錢包轉入0x8bb0開頭地址,按當前價格計算,價值約999.9萬美元,交易哈希為:0xb2af55da70ec8427cd4efcf1c21752b3391f7bdd39680188fda3c980ccd7e3b4。[2020/4/6]

接下來回頭分析下TheSaudis這次事件中的一些細節,在該項目的DiamondCutFacet.sol合約中,可以看到實現了diamondCut功能的函數。

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

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

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

從replaceFunctions函數中可以分析出該函數首先會為傳入的地址新增一個切面,接著從存儲中循環讀取傳入的每個函數選擇器對應的舊的切面進行刪除,并為這些函數的切面添加為傳入的新的切面地址。至此可得知TheSaudis項目方就是利用了鉆石切割函數來重寫了轉賬功能,以此來將用戶RIGHTBLOCK手中的NFT轉移回自己的賬戶。相關信息

TheSaudis合約地址:0xe21ebcd28d37a67757b9bc7b290f4c4928a430b1用戶Rightblock地址:0x80266b1e3f0C2cAdAE65A4Ef5Df20f3DF3707FfB項目方更新合約的交易:0xbc559a72f73e6c9a53416fd13a3ebaaa76dca5855ff8b79511585f514eaf2390

Tags:THEETHEETHERUSDBrother Music Platformtogetherbnb手游下載最新中文版etherparty幣前景USDAP價格

KuCoin
那個曾丟掉8000枚比特幣的男人,要用波士頓動力機器狗找回5億美元_LLS

Odaily星球日報譯者|Moni 13年前,比特幣剛誕生不久,英國威爾士紐波特市一位名叫JamesHowells的小伙心血來潮,用一周時間挖出了約8000枚比特幣.

1900/1/1 0:00:00
一文讀懂新興公鏈Decred-Next_DEC

熊市使市場熱度驟減的同時對所有的優質項目來說也是建立新的低位以及新的龍頭爆發之前的醞釀期,當市場嘈雜的噪音褪去,我們可以通過在熊市中看看哪些賽道值得被我們關注.

1900/1/1 0:00:00
OpenSea未上鏈的NFT,為何會出現在鏈上錢包?_OPEN

內容概要粉絲反饋,他在opensea無gas免費創建的NFT資產,竟能出現在小狐貍錢包里,而opensea官方聲明的此NFT在正式交易前是未上鏈鑄造的,這就很奇怪.

1900/1/1 0:00:00
加密市場危機下,Voyager Digital申請破產保護_YAG

Odaily星球日報譯者|念銀思唐VoyagerDigital周二已向美國申請破產保護,成為加密貨幣價格暴跌引發數字資產市場危機的最新受害者.

1900/1/1 0:00:00
V神最新演講:合并不是以太坊的最終目的地_TAL

時尚達人Vitalik帶著他的新提包來到了時尚之都巴黎,出席ETHCC并發表演講。V神表示,比特幣的擁護者認為比特幣已經完成了80%,但以太坊的支持者認為以太坊只完成了40%,預計于今年9月完成.

1900/1/1 0:00:00
探討DAO貢獻者身份的最佳差異:為什么多邊工作會延續?_WEB3

原文作者:JoeyDeBruin原文編譯:Gink本文來自TheSeeDAO。 在DAO組織中經常看到活躍在多個社區的貢獻者,作者用「最佳差異」理論對該現象做出了解釋:多邊工作由歸屬感與差異化雙.

1900/1/1 0:00:00
ads