随着Web3的迅猛发展,各种智能合约层出不穷,某些智能合约中的漏洞很致命的:无论是以代币还是以太币的形式,合约可以管理重要的财产资源,漏洞造成的损失将可能以数百万美元计。不过,以太坊区块链上的代码比任何单个合约都更重要:智能合约库代码。
普通开发者需要了解的优化 Solidity 合约的基础
如何发送以太币?
最近大家都在谈论APE的空投被撸羊毛的事件,老板也让我分析一下。这里我就把我自己分析的部分贴出来,包括一些POC,欢迎讨论
Uniswap 交易对地址是如何计算出来的
Remix 编译器介绍,智能合约部署在以太坊测试网
本文介绍了如何使用Hardhat工具在以太坊主网分叉中设置和修改存储变量的值,特别是在真实合约中找到各种类型变量的存储位置,并通过实用示例展示如何修改公共变量、映射和数组。通过这篇教程,开发者或白帽黑客可以安全地模拟链上操作,理解合约的存储布局和修改过程。
整体的思路是特洛伊木马token的思路,重入masterChef中的 depositByAddLiquidity方法。该方法的核心错误逻辑在于:它只检查了lpToken的地址合法性,没有检查token0,token1的地址合法性。从而让token0可以做成一个特洛伊木马,在token0里面transfer一个合法的token,从而成功添加流动性;而导致deposit重复计算。
字符串格式化函数在应用开发时经常用到,而在合约中使用场景似乎没有那么多,然而要实现这个函数,则需要先解决一些问题,本文就探讨一下如何来解决这些问题。
web3 ,ethers对比
项目开发中还有另一种收益产生的情况,不是每个块或者每秒产出固定的数量,而是每次打进质押合约一笔 就加权平分一笔,这时质押算rewardPerTokenStored数值方法就得做更改,只要理解算法是用的每个阶段的挖矿产量一切迎刃而解。
rewardPerTokenStored
原文:https://noxx.substack.com/p/evm-deep-dives-the-path-to-shadowy?utm_source=url&s=r 译文出自:Shenstone。 译者:Shenstone。 校对:Shenstone。 本文永久链接:https://learnblockchain.cn/article/3647
代币数量,超出了总量很多,还能成交?
状态可变性是一个可靠的概念,它定义了函数的行为以及它们如何与存储在区块链上的数据进行交互。在本文中,我们将可以了解不同的状态可变性修饰符,以及如何在编写优化的智能合约时应用它们。
解读两种常见合约的坑,有tx和合约代码,真实案例。
区块链领域的安全问题不容忽视,这就要求开发者必须时刻小心谨慎,养成防御性编程思维
黑客往往会利用溢出构造一个极小值/极大值,从而绕过某些检查,使巨额恶意转账得以成功
合约开发中遇到很多质押挖矿类的需求,单币质押、双币质押、算力挖矿等等,这些需求大多都是美秒产多少币(每个块产多少币),根据质押的量加权平分产出的币。如果中心化的程序很容易完成这个需求,但在区块链上没有定时器,不能实现大量循环。这些局限让我们体会了区块链的极简之美。
本篇文章我们简单介绍了智能合约的一些基础概念,并针对没有编程基础的同学介绍了编程中常见的概念。和大家一起分析了个简易版的智能合约帮助大家了解智能合约的整体结构。最后结合智能合约比较热门的应用NFT了解了接口的概念,再次讨论了什么是上链。
ethers-multicall项目解读,站在代码角度看问题。
扫一扫 - 使用登链小程序
378 篇文章,2016 学分
209 篇文章,381 学分
187 篇文章,374 学分
65 篇文章,266 学分
114 篇文章,226 学分