整型溢出是智能合约中常见的漏洞之一。以太坊虚拟机对整数使用固定大小的数据类型,一个整数变量仅能表示一个固定范围的数值,比如uint8类型只能保存[0,255]。当把超过某个数据类型范围的数值保存到这个变量时,就会产生溢出。例如将一个uint8类型,值为0的变量进行减1操作时,计算结果会等
在Solidity中的继承和Solidity中的多线继承这两篇文章中,我们已经学习了Solidity关于继承的相关知识点,这篇文章,我们再聊一个更细致的话题:如何运行父级函数的构造函数。
什么空投合约“空投合约”(AirdropContract)是指专门用于自动向一组地址发送代币或NFT的智能合约:https://learnblockchain.cn/shawn_shaw
什么是Merkle树定义MerkleTree,也叫默克尔树或哈希树,是区块链的底层加密技术,被比特币和以太坊区块链广泛采用。MerkleTree是一种自下而上构建的加密树,每个叶子是对应数据的哈希,而每个非叶子为它的2个子节点的哈希。如何生成Merkle树的数据在solidity中我
1.什么是合约的部署?2.什么是调用合约?3.如何理解转账
Web3实践:在Polkadot上用Solidity玩转DelegatecallWeb3浪潮席卷而来,智能合约作为区块链世界的核心驱动力,正变得越来越灵活和强大。在Polkadot这个多链生态中,Solidity依然是开发者的得力工具,而delegatecall则像是合约设
有三种主要的技术可以防止重入:检查、效果、交互(CEI),重入保护/互斥,提款支付。此外,最后一种方法可能是有效的,但不推荐:限制gas
使用多种推导方式,一篇文章,讲清交易费、协议费。
Solidity编码规范
本文探讨了在NFT铸造过程中节省Gas费用的三种机制:使用映射存储地址、使用私钥签名并在链上验证、使用Merkle树。文章并通过Solidity代码示例展示了每种方法的实现,并分析了从Gas成本角度来看哪种方法最优。
文章主要介绍了RareSkills提供的区块链技术教育培训课程,包括Solidity、零知识证明和Rust等课程的内容、时间安排、费用及讲师信息等,旨在帮助学员深入理解区块链技术并提升实战能力。
Solidity 0.5 的一些新变化
状态可变性是一个可靠的概念,它定义了函数的行为以及它们如何与存储在区块链上的数据进行交互。在本文中,我们将可以了解不同的状态可变性修饰符,以及如何在编写优化的智能合约时应用它们。
文章介绍了Solidity智能合约中的构造函数及其使用,包括如何设置合约部署时的变量,以及构造函数与普通函数的区别。
本文档提供了一份智能合约审计准备清单,旨在帮助开发者在代码审计前进行自查,主要包括代码质量、测试覆盖率、安全工具使用、文档编写等方面,以确保代码的质量和安全性,从而更有效地进行审计。