月亮链 月亮链
Ctrl+D收藏月亮链

NFT:从The Saudis NFT事件浅析EIP-2535钻石协议_TOGETHERBnB游戏

作者:

时间:1900/1/1 0:00:00

原文作者:九九,慢雾安全团队

2022年7月10号,一个火热的NFT项目TheSaudis开启了freemint活动。而就在mint活动结束后,一位名叫RIGHTBLOCK的用户在市场上大量地抛售该NFT,项目方发现后迅速锁定到了该用户并对合约进行改动以此来将该用户手里的大量NFT转移回来,他们之后承诺会将这些NFT回馈给社区用户。

那么为什么项目方可以将该用户手里的NFT转移呢?经过我们的分析发现该NFT项目的合约采用了EIP-2535协议也叫做钻石协议,项目方利用该协议重写了合约的功能,以此来实现这些NFT的转移。接下来慢雾安全团队将会为大家介绍下这个钻石协议的细节。

2亿枚USDT从Tether Treasury转移至FTX交易所:据Whale Alert数据,北京时间5月17日13时34分,2亿枚USDT从Tether Treasury转移到FTX交易所,交易哈希为090301a760a386273434b4397d67dd984a9136562ed74940165577a5153608c7。[2021/5/17 22:10:42]

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

1700万枚USDT从Tether Treasury钱包转入Binance,价值1704.8万美元:据WhaleAlert数据显示,北京时间08月10日21:16,1700万枚USDT从Tether Treasury钱包转入Binance,按当前价格计算,价值约1704.8万美元,交易哈希为:11a7d89c38e7e3ca54809d3d186f5fce7d2614140d50df01fb3e895640fbf521。[2020/8/10]

要理解钻石协议,首先有几个相关的概念定义需要知道:

动态 | 499.5万枚USDT从Tether Treasury钱包转出:据Whale Alert监测,北京时间02:19,499.5万枚USDT从Tether Treasury钱包转入0x7c70开头地址。[2019/10/1]

钻石:钻石可以理解为代理合约,也是与用户进行交互的主合约

切面:正如真正的钻石有不同的侧面一样,一个钻石合约也有着不同的面,钻石合约的每个功能所需要调用的合约对应一个切面,所以也可以理解为实现合约

钻石切割:钻石协议标准扩展了一种叫钻石切割的功能,其主要作用从钻石中增加、替换或删除切面和功能,可以理解为合约的升级

放大镜:钻石协议标准中的放大镜功能主要是返回关于切面的信息和钻石存在的功能,这些信息是保存在钻石合约内部的存储结构——DiamondStorage中

整个钻石模型类似下图:

通过使用钻石标准规范去创建钻石合约,这个合约可以像使用当前合约的代码一样使用任何数量的其他切面合约的代码。

在该钻石合约中不同的函数功能需要调用对应的不同的切面合约的代码来实现,并且可以利用钻石切割的功能来对钻石合约中的函数功能进行修改。

这与市面上大多数使用一个代理合约和一个实现合约来实现交互与升级的方式有所区别。

该函数首先会调用LibDiamond库的enforceIsContractOwner函数来判断调用者是否是合约的owner,如果是owner调用的话会调用LibDiamond库的diamondCut函数来实现钻石合约的功能更新。

跟进到该函数我们发现钻石切割会根据传入的不同的action来判断进行添加、替换或删除功能,故接下来跟进看看项目方调用该函数的交易。

我们发现传入了新的切面合约0x70d8ccaf6b50b051ab1e8fa238626163e45a8b03,传入的action设置为1则应该是调用了replaceFunctions来实现替换功能。

从replaceFunctions函数中可以分析出该函数首先会为传入的地址新增一个切面,接着从存储中循环读取传入的每个函数选择器对应的旧的切面进行删除,并为这些函数的切面添加为传入的新的切面地址。

至此可得知TheSaudis项目方就是利用了钻石切割函数来重写了转账功能,以此来将用户RIGHTBLOCK手中的NFT转移回自己的账户。

标签:NFTTHEETHERTETNFTDAOTOGETHERBnB游戏TetherBlackBBYWHTETGRMN价格

比特币价格实时行情热门资讯
ORA:Hyosung America与比特币ATM机运营商DigitalMint达成合作_ATMSSFT

7月14日消息,HyosungAmerica与美国主要比特币ATM机运营商DigitalMint签署了一项合作协议,有望为17.5万台ATM机集成购买比特币的服务.

1900/1/1 0:00:00
COIN:CoinFLEX启动仲裁程序,以向“大型个人客户”追讨8400万美元_FLEX

本文来自Decrypt,原文作者:SanderLutzOdaily星球日报译者|念银思唐加密交易平台CoinFLEX详细介绍了其应对该公司当前流动性危机的战略.

1900/1/1 0:00:00
JED:八年抛售即将结束,Ripple前CTO套现了多少钱?_UniMex Finance

近些年来存在感越来越低的Ripple即将迎来一件“大事”。JedBalance最新数据显示,Ripple第一任首席技术官JedMcCaleb的钱包内仅剩下17945934枚XRP,依照0.31美.

1900/1/1 0:00:00
USD:XT.COM關於新增BTC/XTUSD,ETH/XTUSD,XRP/XTUSD,ADA/XTUSD,SOL/XTUSD 交易的公告_TPS

尊敬的XT.COM用戶:為滿足用戶對幣種交易的多方面需求,提高用戶交易體驗感。XT.COM將於2022年7月13日想08:00在XT交易專區上線BTC/XTUSD,ETH/XTUSD,XRP/X.

1900/1/1 0:00:00
APP:非小号APP更新提醒_CHTT

非小号已经更新发布iOS和安卓的新版本应用,优化了国内网络访问和已知闪退BUG的修复等,部分地区域名访问限制较为严重,可以适当开启VPN的全局模式来进行访问下载.

1900/1/1 0:00:00
OIN:大币网(Dcoin)关于支持QBZ映射公告_coinwatch手表为什么没有了

亲爱的大币网(Dcoin)用户:QBZ代币的映射将按照以下流程进行,请各位用户进行确认。充提交易停止后,将QBZ持币用户的持币数量进行快照,根据QBZ的持币数量按照1:1比例进行互换新的币种,币.

1900/1/1 0:00:00