使用检查、影响和交互模式(简称CEI:Checks, Effects, and Interactions)、互斥锁、Pull 支付方式以及gas限制都是防止可重入攻击的有效技术。
自动化调用dapp的方法一种是直接调用合约的方法进行交易,另一种是用无头浏览器通过操作dapp页面进行自动化交易。
对比使用mapping、默克尔树、及离线签名 3 中方式处理白名单的优缺点。
注意:该项目仅供学习区块链知识,不作为任何投资建议。市场有风险,投资需谨慎。
Openzeppelin 新增了 CrossChain (跨链)功能,看看如何使用它。
现在写合约中有很多方法可以节省 Gas, 这里发现一个不错案例比较循序渐进,可以参考。
本文分享如何用Vyper而不是Solidity编写智能合约
Solidity 中 storage memeory calldata 区别
链上通信协议,到底有什么用?
solidity新手,从别的语言转来的,对solidity的引用的理解总觉得有什么不到位的地方,很别扭,静心深究,终于有些小小的感悟。 把b赋值给变量a,如果产生了引用,即意味着,在a里,存储了一个...
极快的测试,不再使用 BigNumber.js,只有 Solidity 代码
在我们发布【链必验】新版本之后,目前已有大批开发者前来试用,今天,我们还需要详细介绍这款工具。【链必验】智能合约自动检测工具,可用来检测区块链智能合约漏洞。平台针对每个用户模拟了一条单独的测试链,用户可以自主在测试链上对智能合约进行部署、测试和验证,是集智能合约开发、测试、验证于一体的综合平台。
使用ganache的主网fork技术 搭配python友好的brownie框架,高效对合约进行开发测试。
该扩展支持的主要功能之一是新的和现有的 Infura 用户能够通过 Infura 节点部署他们的智能合约,而无需在 VS Code 和 Infura 门户之间切换。
NBA最近发行了数字藏品,然而我们发现,其售卖数字藏品的合约存在非常严重的漏洞。攻击者(“科学家”)可以通过漏洞无成本铸造藏品然后出售获利。
漏洞的成因在于对白名单用户的签名校验有安...
此扩展旨在帮助 VS Code 用户使用 Truffle 工具套件在以太坊区块链上构建、调试和部署智能合约。
我们通过delegatecall这一方式实现了合约升级,同时通过对合约状态存储的理解明白了为什么会存在存储冲突并采用继承的方式进行规避,最后我们的升级是建立在代理合约的fallback函数之上的,这个函数没有返回值,我们通过Solidity Assembly的方式进行数据返回。合约升级在技术上是不可或缺的手段,较好的使用可以帮助我们修复合约漏洞,对合约进行功能迭代,但如果使用不当则会造成较坏的影响,所以合约升级应该配合有效的升级治理方案。
Solidity - 使用位运算节省 gas,在这篇文章中,我将解释其中的一些技巧,并通过一款更简单的井字棋游戏来分享我的思考过程。
本系列题目出自推特博主@the_ethernaut系列推特。 本人是在准备面试过程中,总结一些有意思的题目。 本文永久链接:https://learnblockchain.cn/article/3860
本系列题目出自推特博主@the_ethernaut系列推特。 本人是在准备面试过程中,总结一些有意思的题目。 本文永久链接:https://learnblockchain.cn/article/3845
扫一扫 - 使用登链小程序
106 篇文章,294 学分
3 篇文章,269 学分
55 篇文章,237 学分
13 篇文章,206 学分
16 篇文章,163 学分