前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【链安科技】智能合约随机数算法漏洞

【链安科技】智能合约随机数算法漏洞

作者头像
辉哥
发布2018-08-22 11:05:22
4530
发布2018-08-22 11:05:22
举报
文章被收录于专栏:区块链入门区块链入门

据成都链安科技消息,MyCryptoChamp游戏合约随机数“不随机”,影响游戏公平性。

MyCryptoChamp合约的RandMod函数中使用合约的私有变量randNonce和父块哈希作为参数生成随机数,用户可以通过web3.eth.getStorageAt()函数获取randNonce的值,而父块hash在合约内外都可以读取到。

攻击者可以利用获得的两者数值,通过外部合约计算出较理想的随机数,并在此时参与游戏,新的角色及物品属性就会按照该理想数值生成,进而影响游戏公平性,实现了以较小的成本(gas消耗)获得较大利益。

根据Solidity官方建议,合约开发者可以使用链外的第三方服务,比如Oraclize来获取随机数。成都链安科技提醒所有项目方,进行代码安全审计是项目上链前不可缺少的重要安全举措,必要时可以借助第三方专业审计团队的力量防患于未然。

本文转载自《智能合约随机数算法漏洞》,已获得授权转载

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018.08.11 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档