破解一个游戏合约了解如何预防攻击 —— 不要再用this.balance
了
本文将主要说明如何使用 Rust 在 Gear 区块链网络上创建一个简单的去中心化应用程序。我们以一个投票应用程序为例,来研究 Gear 智能合约的基础结构,以及学习如何使用程序的 Actor 模型架构,处理消息,以及与状态进行交互。
区块链领域的安全问题不容忽视,这就要求开发者必须时刻小心谨慎,养成防御性编程思维
黑客往往会利用溢出构造一个极小值/极大值,从而绕过某些检查,使巨额恶意转账得以成功
使用重入锁并不能解决所有问题,可以考虑使用checks-effects-interactions模式,另外,转账最好放在一个完整逻辑的最开始或者最结尾,避免状态不一致。
今天看了一下Venus项目的逻辑和代码,发现其存在一个较严重的漏洞,这个漏洞可能导致资金池被盗。 Venus的代码是fork自Compound的,经分析,此漏洞在Compound和Cream中也存在。
ERC777代币标准使用 防范风险
ethers-multicall项目解读,站在代码角度看问题。
tx.origin、msg.sender有什么不一样
发现一种gas优化的新方法
最近看到一个很有意思的项目FORT,说他有意思,一个是其产品的逻辑新颖,折现计算机和无限流动性,这些看起来很技术化的概念有意思。另外一个是其合约的写法有很多有意思的地方。...
如何节省 gas 的批量铸造 NFT
来看看RandomDAO事件背后的合约分析
阅读 geth 源代码是对预言机部分的学习,包括理论和源码解读
rust 版的合约开发工具Foundry入门
在公共测试网上部署智能合约
约通常也处理以太,并且经常将以太发送到各种外部用户地址。这些操作要求合约提交外部调用。这些外部调用可能会被攻击者劫持,攻击者可以强制合约执行进一步的代码(通过一个回退函数),包括对自身的调用。