文章介绍了如何在Solidity中与以太坊互动,特别是如何通过payable函数接收和发送以太币,并解释了以太币的单位及在区块链中的处理方式。
payable
Certora团队的John Toman发现了Solidity 0.7.3中的一个bug,该bug导致编译器在一些写入操作中错误地将垃圾数据写入持久存储。这一问题可能导致合同执行成本增加,但目前尚未确认其安全影响。Solidity编译器团队已在0.7.4版本中修复了该bug。
文章详细介绍了在Solidity编译器中发现的一种代码生成漏洞,允许恶意存储字段欺骗Solidity,将不相关信息插入通过abi.encodePacked等方法生成的数组中。该漏洞已在Solidity 0.8.0版本中修复。
abi.encodePacked
本文介绍了如何在Foundry环境中使用OpenZeppelin安全地创建和验证ECDSA签名,提供了Verifier.sol合约和测试代码Verifier.t.sol的示例。
本文详细介绍了Keccak256哈希函数及其在Solidity和以太坊中的应用,包括其原理、安全性、实现方式及常见用例。
1.保存已部署的合约 2.Sindri集成 3.Vyper编译器
本文全面概述了Solidity中的“delegatecall”函数,详细介绍了它在一个智能合约的上下文中执行另一个智能合约中的代码的重要性。
Solidity 瞬态存储的使用
利用 evm 冷热读特点 staticcall 两次调用返回不同的值实现绕过
本文以简洁的语言,剖析了 EVM 的内存结构以及栈内存、状态变量的内存结构,提到了各种不同数据类型所占用的 slot 大小,以及 gas优化的思路。方便小白进行快速掌握 EVM 和 solidity 的内存结构:https://learnblockchain.cn/shawn_shaw
ERC4626代币金库(Vault)是ERC20的拓展。本质上可以理解为一个智能合约,支持把资产托管进去这个合约中,合约代表你去赚钱,赚到的钱按份额分配。ERC4626继承于ERC20,基本接口和ERC20一致,但添加了增强的存款、取款、赎回、会计等接口:https://learnblockchai
[第1部分] 使用Solidity 和 React在以太坊上构建具有社交找回功能的智能合约钱包
前言本文高效梳理Solidity编程语言进阶知识点1.底层调用call、delegatecall以及Multicallcall:用于调用其他合约的函数,可以修改目标合约的状态。delegatecall:在调用者的上下文中执行目标合约的代码,可以修改调用者的状态。Multical
本文是30天Solidity学习系列的第1天,主要介绍了Solidity是什么,以及为什么要学习Solidity。Solidity是一种用于在以太坊虚拟机(EVM)上编写智能合约的静态类型、高级编程语言。学习Solidity可以用于DeFi、NFT、DAO、游戏等领域的开发,并且Solidity开发者有很高的市场需求。
文章介绍了Solidity中的onlyOwner修饰符及其在智能合约中的应用,特别讨论了Ownable2Step相较于Ownable的安全性改进,包括所有权转移的两步验证机制。
onlyOwner