以太坊基础知识讲解:账户、合约、验证者和费用
了解以太坊的基本知识,包括账户和验证器的工作原理、智能合约的作用以及费用的计算方式。
以太坊是一个去中心化的区块链平台,它通过智能合约实现点对点交易,无需依赖中央机构。使用以太坊的关键在于理解其核心组件。让我们从以太坊账户开始,它们充当网络上的数字身份。
以太坊账户类型
以太坊账户分为两种类型:
- 外部所有账户 (EOA): 这些账户由私钥控制,属于个人用户。它们可以发起交易并持有加密货币。
- 合约账户: 这些是部署在以太坊区块链上的智能合约。与 EOA 不同,它们不是由私钥控制,而是由存储在区块链上的代码控制。 它们仅在被其他交易触发时才会执行。
账户结构
每个以太坊账户包含以下变量:
- Nonce: 账户已发送交易数量的计数器。
- Balance: 账户持有的以太币 (ETH) 数量。
- Storage Root: 用于编码账户存储内容的 Merkle Patricia trie 树的根哈希值(主要用于合约)。
- Code Hash: 账户 EVM 代码的哈希值(同样专用于合约)。
以太坊地址的生成
以太坊地址由外部账户的公钥派生而来。
具体来说,该过程涉及取公钥 Keccak-256 哈希值的最后 20 个字节,生成一个 40 个字符的十六进制标识符。以太坊网络上的所有交互都使用这些地址。账户的主要功能
- 发起和接收交易
- 部署智能合约并与之交互
- 持有和转移 ETH 和 ERC-20 代币
确保账户私钥的安全至关重要。任何拥有私钥的人都可以控制相关的资金和权限。
公钥和私钥的安全
以太坊账户的所有权通过密钥加密技术来建立。私钥用于证明账户所有者的身份,而公钥则允许其他人验证签名。
私钥丢失通常意味着永久失去对资金的访问权限。与传统银行不同,以太坊账户没有“忘记密码”选项。因此,安全存储密钥和助记词至关重要,通常使用硬件钱包来增强安全性。
以太坊的标志性特性之一是其对智能合约的支持。智能合约是可自动执行的代码片段,能够自动执行协议条款。智能合约通过消除中间人,彻底革新了去中心化应用程序(dApp)。
什么是智能合约?
智能合约是存储在以太坊区块链上的程序。一旦部署,它们会在满足特定条件时执行预定的操作。智能合约的运行具有确定性,这意味着对于给定的输入和状态,它们始终产生相同的输出。
智能合约编程
大多数以太坊智能合约都是用Solidity编写的,Solidity 是一种受 JavaScript 和 C++ 启发的高级编程语言。
编写和测试完成后,开发者会将智能合约编译成与 EVM 兼容的字节码,并将其部署到区块链上。智能合约的生命周期
- 开发: 代码使用 Solidity 编写,并在 Remix 或 Truffle 等开发环境中进行测试。
- 部署: 合约通过交易进行部署。部署成功后,会创建一个新的合约地址。
- 交互: 用户或其他合约通过发送包含函数调用和参数的交易与已部署的合约进行交互。
主要属性
- 不可变性: 智能合约的代码一旦部署,就无法更改。更新需要部署新版本。
- 无需信任: 无需信任中心化机构或中介。
- 透明: 代码在区块链上公开可验证,这意味着任何人都可以阅读和审计它。
智能合约的应用案例
- 去中心化金融 (DeFi): 无需中介即可进行借贷和交易。
- 供应链管理: 透明地追踪货物的来源和流转。
- 去中心化投票: 确保选举结果即时公布,且不可篡改。
- 非同质化代币 (NFT): 管理独特数字代币的发行和转让。 资产。
智能合约的局限性
尽管智能合约潜力巨大,但它们也存在局限性:
- 漏洞和安全隐患:编写不佳的合约容易受到攻击,因此安全审计至关重要。
- Gas 成本:每次执行都需要消耗 Gas;复杂的合约交互成本可能很高。
- 不可逆性:一旦部署,漏洞修复或撤销必须通过新的部署或辅助合约来处理。
总而言之,智能合约是实现自动化和去中心化应用程序逻辑的强大工具,但要使其有效,需要精心设计和严格审查。
以太坊于 2022 年 9 月从工作量证明 (PoW) 过渡到权益证明 (PoS),这一事件通常被称为合并。此次升级从根本上改变了以太坊保护其网络和处理交易的方式,用验证者取代了矿工。
验证者的角色
验证者是指锁定 ETH(称为质押)以获得提议和验证新区块权利的用户。最低质押金额为 32 ETH,但也可以通过质押池使用更少的金额。
验证者由随机选择来提议新区块并确认其他用户提议的区块。他们必须保持在线并诚实行事;否则,他们可能会因受到惩罚而损失一部分质押的 ETH。
交易费用和 Gas
在以太坊上,交易费用使用称为gas的单位计算。
在以太坊网络上进行的任何操作——无论是发送 ETH、转移代币还是与智能合约交互——都会消耗 gas。用户支付的总费用为:
总费用 = 使用的 gas 单位 × Gas 单价
- Gas 上限: 用户愿意为单笔交易使用的最大 gas 量。
- Gas 单价: 用户愿意为每单位 gas 支付的 ETH 数量(以 gwei 为单位)。
EIP-1559 升级
EIP-1559 于 2021 年 8 月推出,彻底改革了以太坊的费用机制。
它引入了:- 基础费用: 一项不可协商的费用,将被销毁并从流通中移除。
- 优先费用(小费): 一项可选的支付,用于激励验证者优先处理用户的交易。
这使得 gas 费用更加可预测,销毁基础费用有助于 ETH 的通缩压力。
费用如何影响用户
无论用户是转账 ETH 还是执行智能合约中的函数,都必须支付 gas 费用。更复杂的操作需要支付更多 gas。
当网络拥堵时,由于竞价争夺区块快速打包权,gas 价格会飙升。降低交易成本
有几种策略可以降低或缓解交易成本:
- 时机选择: 避免在区块空间需求高峰时段进行交易。
- Layer 2 解决方案: Arbitrum、Optimism 和 zkSync 等平台通过在链下处理交易并将压缩数据发布到以太坊,显著降低交易费用。
- 批量处理: 尽可能将多个交易合并为一个交易。
验证者的合并后奖励
验证者因向区块链添加区块并验证其他区块而获得奖励。
他们的奖励包括:- 基础奖励,直接支付给履行职责者
- MEV(矿工可提取价值),现在通过新的基础设施传递给验证者
- 优先手续费和用户小费
以太坊向 PoS 的转变已被证明更具环境可持续性,同时增强了安全性和可扩展性。未来在于持续升级,例如分片链和Danksharding,以在降低手续费的同时处理更高的吞吐量。