
账户与签名是理解交互的起点
以太坊区块链教程涉及哪些技术概念,可以沿着“谁发起请求、什么逻辑执行、哪些状态改变”来理解。账户用于定位链上状态,签名用于验证请求的授权,智能合约则定义收到调用后执行的规则。
以太坊账户文档区分了由私钥控制的外部账户和由代码控制的合约账户,也明确指出钱包是与账户交互的应用。私钥、公钥和地址承担不同角色:私钥参与签名,公钥用于验证,地址用于标识账户。理解这些区别,有助于避免把钱包界面误认为资产实际存储的位置。

合约执行与状态存储
智能合约的代码在以太坊虚拟机,即 EVM 中执行。合约账户没有自己的私钥,其行为取决于代码逻辑,并通过交易引发的调用参与执行。教程中的“调用合约”,因此需要同时理解输入参数、执行规则和状态变化。

账户状态涉及 nonce、余额、代码哈希和存储根。nonce 的含义与账户类型有关;代码哈希关联代码,存储根概括存储内容。学习时应区分完整数据与数据的哈希标识,不能将哈希当成可直接阅读的程序或余额列表。
ERC-20 把代币行为表达为接口
OpenZeppelin 的 ERC-20 文档介绍了同质化代币的标准实现,以及通过继承复用合约功能的方式。余额查询、转移和供应量管理属于代币合约的知识范围。这里的代币余额与账户原生 ETH 余额是不同的记账对象。
理解标准接口的作用,比只记函数名称更重要:统一接口让应用能够以共同方式读取或调用代币,但不能据此推断不同合约具有完全相同的权限与供应规则。具体行为仍需结合实现理解。
金额精度的适用条件与常见问题
ERC-20 的 decimals 用于解释显示精度,合约金额按整数处理。例如精度为两位时,整数 125 可显示为 1.25 个代币。这只是单位换算,并未让底层整数运算变成小数运算;读取余额时必须结合该合约的精度设置。
常见疑问是“有地址是否就能操作账户”和“采用 ERC-20 是否就代表合约安全”。地址本身不提供签名授权,接口兼容也不能证明实现安全。上述概念适合账户交互与同质化代币开发入门,不能替代对具体合约权限、执行逻辑及边界条件的检查。