木星链 木星链
Ctrl+D收藏木星链
首页 > 火币APP > 正文

YFI:安?实验室发布「YFII流动性挖矿合约安全性研究」,所涉四项合约未包含致命安全漏洞

作者:

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

YFII是一个新型去中心化DeFi矿池,应社区小伙伴邀请,安比实验室于2020年7月27日至8月2日对YFII智能合约进行了安全性研究。分析对象为下列合约:YFIIPool1:0xb81D3cB2708530ea990a287142b82D058725C092YFIIPool2:0xAFfcD3D45cEF58B1DfA773463824c6F6bB0Dc13aYFIIToken:0xa1d0E215a23d7030842FC67cE582a6aFa3CCaB83BPTToken:0x16cAC1403377978644e78769Daa49d8f6B6CF565初步分析结果表明,以上四个合约并未包含致命安全漏洞。安比实验室希望通过本文对研究过程做一个记录和总结,Token价格、经济模型、其他外部合约模块、以及未来新的合约不在本文讨论内。YFII和YFI是什么

YearnFinance是一个DeFi收益聚合器,于7月17日推出治理TokenYFI后因其新颖的分发机制和治理方案迅速引爆了流动性挖矿市场。而YFII是对YFI项目的分叉,遵循YIP-8,实施了类似比特币的减半机制。YFII相对YFI做了哪些改动

adoptwombat Discord服务器已被入侵:金色财经消息,据CertiK监测,adoptwombat Discord服务器已被入侵,在公告中发布了一个钓鱼网站,请不要点击或与之互动。[2023/6/16 21:41:13]

目前,YFII合约代码均直接Fork自YearnFinance,做了较小的改动以支持YFIIToken的定期减半分发。下表为YFII涉及的合约与YFI合约对应关系及地址。

YFI/YFIIToken为项目治理Token合约,二者实现一致,具体为一个带mint和简单governance功能的标准ERC-20Token。BPTToken为BalancerPoolToken合约,是做市商的流动性证明Token,实际由自动做市协议Balancer的BFactory入口合约创建,因此二者实现完全一致。该合约代码此前由TrailofBits和ConsensysDiligence进行过审计。Pool1和Pool2是用于分发治理Token的流动性挖矿合约,Pool1和Pool2的代码实现一致,均被称为YearnRewards合约,而YFII相对于YFI的改动即在这该合约中。YFIIPool1和Pool2合约相对于原始代码新增了checkStart()和checkhalve()两个修饰符函数,分别用于控制挖矿开始时间,和治理Token周期性地产量减半。YFII&YFI核心合约简析

Alberta Enterprise向Alpaca VC第三只基金投资750 万美元:金色财经报道,Alberta Enterprise宣布向纽约投资公司Alpaca VC旗下第三只基金投资750 万美元, Alpaca VC为其第三只基金设定了7500 万美元的融资目标。Alpaca VC专注于区块链基础设施、供应链和金融科技等领域,其投资组合包括NFT篮球游戏Swoops、NFT 工具提供商Venly、DAO启动与管理工具Upstream 等。(newswire)[2023/3/7 12:47:49]

YFII和YFI流动性挖矿的核心合约代码YearnRewards实际源自于Synthetix项目的Unipool,原本用于奖励在Uniswap上为ETH/sETH交易对提供流动性的做市商SNXToken,该代码之前经过SigmaPrime审计。基于YearnRewards的流动性挖矿整个流程可以分为以下几步:具有RewardDistribution权限的地址,预先通过调用YearnRewards合约的notifyRewardAmount()函数,设置奖励数额,而对应金额的YFIToken应由YFIminter转入YearnRewards合约中。矿工向YearnRewards合约指定的目标DeFi合约提供流动性,拿到对应的流动性证明Token,该Token可以用于换回资产以及赚取利息或手续费收益。矿工将得到的PoolToken通过调用stake()函数存入YearnRewards合约中,合约自动根据Stake时长和矿工存入资金规模占资金池总规模的大小来计算矿工应得的奖励。矿工可随时提走自己的应有奖励以及之前存入的PoolToken。通常一个YearnRewards合约专门用于单个特定DeFi项目的流动性挖矿,如Pool1对接Curve项目的y池,Pool2对接Balancer上的YFI-DAIPool。一些发现

ETHStorage创始人Qi Zhou:一旦L2等技术相对成熟,相信比特币也会采用这些技术:金色财经报道,在由比特大陆联合金色财经举办的《比特币诞生14周年》主题活动上,ETHStorage创始人Qi Zhou表示,据我的观察,往往一个链时间越长,市值越高,这个链对新的技术、对新的一些应用的支持的话会非常谨慎,比如以太坊早期加入一些功能是相对容易很多的,后面的话随着以太坊的市值增长和应用不断成熟,再加入新的功能和应用比如L2等会花很多时间。

在去中心化方面比特币还是有着比较大的统治地位,在应用上像以太坊的分叉是非常频繁的,以太坊历史上秘密修理了很多bug,曾经遭到比特币社区的批评不够去中心化,中本聪的离开等信号标志着比特币是完全去中心化驱动,不仅是节点运营,包括整个开发流程没有人去能够中心化控制,这样导致比特币采用新技术,会有一些困难性,一旦L2等技术相对成熟,相信比特币也会采用这些技术,解决更复杂的问题,比特币还会有非常大的升值空间。[2023/1/3 9:50:03]

前面提到YFII相对于YFI的改动,代码改动整体较小。新增两个修饰器函数用于约束stake()withdraw()getReward()三个主要功能函数。

美股高开低走,三大指数悉数转跌:行情显示,美股高开低走,三大指数悉数转跌,纳指跌超0.2%。[2022/6/28 1:37:09]

notifyRewardAmount()函数中新增了一行代码,用于在notify的同时直接控制YFIToken合约mint指定数量的Token到当前YearnRewards合约,将其作为奖励用于分发。因此,Pool1和Pool2合约必须是YFIIToken合约的minter。这让YFII与YFI在Token分发细节逻辑上稍有不同。YFI每期奖励的分发都需要由特定地址负责设置金额并转入Token。而YFII除了第一期开始前执行了notifyRewardAmount()操作,之后会随着用户的调用,产量自动定期减半。

Genesis称已清算一个“大型交易对手”的头寸,未直接点名三箭资本:6月18日消息,加密贷款和交易公司Genesis首席执行官Michael Moro周五表示,该公司已经清算了一个“大型交易对手”的抵押品,这几乎证实了该公司与三箭资本的关联。

Moro称,“Genesis可以证实,针对本周早些时候未能满足我方追加保证金要求的大型交易对手,我们谨慎思考后减轻了损失。没有客户资金受到影响。我们出售和或对冲了手头所有的流动性抵押品,以最大限度地减少损失。”

Moro还补充说,“我们将通过一切可能的手段积极地追回任何潜在的剩余损失,好在我们的潜在损失是有限的,可以从我们自己的资产负债表中扣除。我们已经摆脱了风险,并将继续前进。” Moro没有直接点名三箭资本。(The Block)[2022/6/18 4:36:07]

另外,在与社区开发者Madao和gaojin讨论代码细节的过程中,Madao提到Token产量自动减半的执行需要依赖checkhalve()函数的执行,实际则依赖用户与合约交互,执行时间无法精准控制到上一个周期的结尾,减半发生时间会与预期时间存在一定的时间差,并且合约减半实际发生时间很大概率晚于预期时间。特别地,合约计算奖励时会将两个周期间多出来的时间差计算在内,导致给每个用户计算的奖励值会略高于预期值,产生了一定误差。进而我们发现,只要误差存在,理论上最后一个从Pool中提取reward的人可能无法正常提现。这是因为合约在减半的同时MintYFIIToken至Pool合约。由于前面误差的存在,导致合约中用户账面收益高于实际Mint出来的Token数量。误差的大小计算方法为每个周期结束时间与下次减半发生实际发生时间之间的时间差Delta乘以减半后的rewardRate。根据上图测算,平均延时60秒减半,累计误差在1个YFII以内。只要能控制时间误差足够小,再加上持续有下一周期的Token作为补充,因此该误差问题影响较小。YFII管理员权限处理

YFI类Token都存在铸币接口,具有mint权限的地址可以增发Token。YFI类Token还存在Governance管理员,具有权限添加和删除Minter。通常理想情况下这些地址特殊权限地址应该为多签合约或其他专门合约。另外YearnRewards合约有rewardDistribution权限地址,用于调用notifyRewardAmount()函数设置奖励金额。YearnRewards合约还存在owner权限地址,用于设置rewardDistribution地址。目前,YFII项目的做法是将YFIIToken的Governance管理员、Pool1和Pool2的rewardDistribution均设为了0地址。管理员权限销毁记录可参见https://burn.yfii.finance/。经查验,管理员权限销毁属实。目前只有Pool1和Pool2两个合约地址具有YFIIToken的mint权限,属于为了实现周期性减半的必要权限,且未来无法被滥用。特别值得一提地是,原版YFIToken代码实现中,并未给addMinter()该特权函数添加Event,导致普通用户无法方便地查看究竟合约有多少minter。当心,这让各种类YFI项目非常容易藏入后门。经查验,YFIIToken合约总共只有两条addMinter()记录,分别为Pool1和Pool2合约添加mint权限,未引入多余的minter。总结

YFI整体是一次非常有意义的DeFi创新实验,通过YearnFinance我们看到去中心化的治理代币分发,充分激发了DeFi社区的挖矿和治理热情。YFII在YFI的基础上实现了YIP-8提案,探索了一种可能更公平的治理代币分发方案,并且短时间在社区内产生了较大影响,发展势头惊人。安全建议

随着流动性挖矿和DeFi产品的火热,市面上涌现出来各种新型DeFi智能合约,组合性风险剧增。安比实验室提醒用户与任何DeFi项目交互时一定要注意安全第一,认清域名、合约地址,仔细审查所有与资金相关的操作,尽量不要与来源不明的智能合约交互。另外,我们应更多关注DeFi产品本身和智能合约安全,分析价值基础和风险来源,不盲信APR,只投入能够承受损失的金额。特别提醒,记得用本文中提供的线索自行检查参与的类YFI项目管理员权限。

标签:YFIKENTOKENTOKYFIO币Warlord Tokenameitoken0xWallet Token

火币APP热门资讯
DOT:波卡的盔甲与弱肋

编者按:本文来自链捕手,作者:王大树,Odaily星球日报经授权转载。在当下这个众所盼望的「牛市」起点,波卡作为跨链明星项目被公众寄予厚望,然而,此「厚望」的实现仍需跨越一系列艰难险阻.

1900/1/1 0:00:00
比特币:比特币短暂突破10000美元,背后或有两大原因

编者按:本文来自巴比特资讯,作者:JOSEPHYOUNG,译者:隔夜的粥,星球日报经授权发布。北京时间7月26日晚上,比特币价格在短期内经历了快速上涨,最高飙升至10272美元,仅仅在BitME.

1900/1/1 0:00:00
区块链:四大行大规模测试数字钱包app,广州南沙将建IPv6示范基地

文/王巧编辑/独秀锌链接作为首个提出产业区块链的机构媒体,一直积极推动产业区块链落地。通过深度报道直戳行业痛点,通过分享会聆听行业声音,通过周报呈现行业大观,通过评论展现独特产业观察视角.

1900/1/1 0:00:00
区块链:资深游戏玩家讲:通证Token和非同质化通证NFT

最近一段时间,关于NFT的讨论此起彼伏,NFT带有金融属性,有投机的空间人们的热情就会调动起来.

1900/1/1 0:00:00
区块链:迪拜推出阿联酋KYC区块链数据平台

编者按:本文来自Cointelegraph中文,作者:HELENPARTZ,Odaily星球日报经授权转载。KYC平台将成为一个全国性的系统,用于交换经过验证的客户数据.

1900/1/1 0:00:00
比特币:威廉:V神再因“总量有限”问题被围攻

大致意思就是Vitalik认为总量有限无意义,通过一定量的增发来保证安全,才是坠吼滴。 Samson反驳其实也是大家熟悉的路子,未来比特币的区块奖励结束之后,手续费也完全可以覆盖掉矿工的收入,让.

1900/1/1 0:00:00