以太坊作为全球第二大区块链平台,其核心功能不仅仅是记录简单的交易转账,更重要的是支持复杂的智能合约,构建去中心化的应用生态系统,支撑这一切的,是其独特而精巧的账户模型,理解以太坊的账户模型,是深入理解其工作原理、智能合约交互以及安全性的关键,以太坊主要采用两种账户模型:外部账户(Externally Owned Account, EOA) 和 合约账户(Contract Account),它们共同构成了以太坊状态的基础,各自扮演着不可或缺的角色。
外部账户(EOA):用户的“钱包”
外部账户,也常被称为“用户账户”或“钱包账户”,是由用户通过私钥控制的账户,它是用户与以太坊网络交互的入口,类似于传统银行体系中的个人账户,但拥有更高的自主权和安全性。
核心特征:
- 私钥控制:外部账户的所有权和控制权完全由用户掌握的私钥决定,谁拥有了私钥,谁就拥有了该账户的控制权,可以发起交易、转移资产,这是区块链“拥有私钥即拥有资产”理念的直接体现。
- 无代码:外部账户本身不存储任何可执行的代码,它不能主动发起交易或响应网络事件,只能由用户通过私钥签名后主动发起交易。
- 由公钥-地址标识:外部账户的地址由其对应的公钥通过特定算法生成,是该账户在以太坊网络中的唯一标识。
- 主要功能:
- 发起交易:这是外部账户最核心的功能,用户可以通过EOA发起以下类型的交易:
- 转账交易:向其他EOA或合约账户发送以太币(ETH)或其他代币。
- 合约交互交易:调用智能合约的方法,例如在去中心化交易所(DEX)进行交易、与NFT合约交互等。
- 合约部署交易:将新编写的智能合约代码部署到以太坊网络上,创建一个新的合约账户。
- 持有资产:存储ETH和基于ERC标准的代币(如ERC-20代币、ERC-721 NFT等)。
- 发起交易:这是外部账户最核心的功能,用户可以通过EOA发起以下类型的交易:
EOA就像是你的“数字钱包”和“身份证明”,你可以用它来花钱(发起交易)、收钱(接收转账)以及启动各种智能合约服务。
