Ethernaut题库闯关连载第12篇题解
全面理解复杂类型的存储布局
本篇文章是关于可升级智能合约的系列文章中的第二篇,深入探讨了Solidity的数据存储方法及使用代理合约的潜在问题。文章重点讲解了以太坊虚拟机(EVM)的存储模型,以及如何避免不同版本智能合约之间存储布局的碰撞,提供了一些最佳实践和解决方案,具有较高的技术深度和实用价值。
所有存储在区块链上都是公开可见的,包括合约的私有状态变量!所以不要在区块链上存储密码和私钥,而且对于确实需要存储的敏感数据尽量使用hash比对的存储密文hash。通过本文可以理解合约数据的存储,并学会访问合约的状态变量数据。
智能合约状态变量的存储体现
Solidity 瞬态存储的使用