以太坊(Ethereum)是一个开源的区块链平台,支持智能合约和去中心化应用(DApps)的开发,以下是关于以太坊软件的核心信息,涵盖其组件、用途及资源:
以太坊客户端软件
以太坊由多个独立团队开发的客户端实现,均遵循以太坊协议标准,主流客户端包括:
执行层客户端(Execution Clients)
- Geth (Go-Ethereum):用Go语言编写,最常用的客户端。
- 官网:
- Nethermind:用C#编写,高性能,适合企业级应用。
- 官网:
- Besu:Java开发,支持企业级功能(如权限控制)。
- 官网:
- Lighthouse(Rust)、Prysm(Go)、Teku(Java)等,负责验证区块和质押(Staking)。
智能合约开发
- Solidity:以太坊主流编程语言,语法类似JavaScript。
- Vyper:Python风格的替代语言,强调安全性。
- 开发框架:
- Hardhat:流行的测试和部署工具。
- Truffle Suite:包含测试、调试和部署功能。
- Foundry:基于Rust的高效工具链(支持Solidity测试)。
测试网络
- Sepolia、Goerli:测试网,用于部署DApp前的调试。
- 本地开发链:如Geth的
--dev
模式或Hardhat本地节点。
- 模式或Hardhat本地节点。
- 钱包
- MetaMask:浏览器扩展和移动端钱包,支持DApp交互。
- Ledger/Trezor:硬件钱包,提供更高安全性。
- 浏览器
- Etherscan:区块浏览器,用于查询交易和合约。
- 官网:
- 主网(Mainnet):真实的以太坊网络,使用ETH作为Gas费。
- 运行全节点:需同步区块链数据(约1TB+存储),建议使用SSD和高性能硬件。
- 轻节点:如
Geth
的轻模式,快速同步但安全性较低。
- 的轻模式,快速同步但安全性较低。
- 合并(The Merge, 2022):从PoW转向PoS共识。
- 未来升级:如Danksharding(扩展性改进)、Proto-Danksharding(EIP-4844)等。
- 以太坊官网:
- 文档:
- GitHub:
用户应用
节点运行与网络
升级与路线图
资源链接
共识层客户端(Consensus Clients)(用于PoS共识)
开发者工具
- Geth (Go-Ethereum):用Go语言编写,最常用的客户端。