当我们谈论以太坊时,常常会听到它是一个“世界计算机”的比喻,这个比喻既形象又引人深思:以太坊这个庞大的去中心化网络,究竟在日复一日、年复一年地“计算”着什么呢?它和我们日常使用的电脑、手机,甚至超级计算机的计算有何本质区别?以太坊的核心计算并非为了解决复杂的科学难题或渲染精美的3D图形,而是为了维护一个全球共享、去中心化、抗审查的“状态机”的运行,并在这个状态下执行被称为“智能合约”的程序代码,从而实现价值的自动化流转和逻辑的信任执行。
要理解以太坊的计算,我们首先要理解几个核心概念:

状态(State):以太坊可以看作是一个巨大的、分布式的数据库,记录着整个网络当前的“状态”,这个状态包含了所有账户的信息,主要是账户余额(对于外部账户,EOA,由用户控制)和存储的代码和数据(对于合约账户,由代码控制),每一笔交易的发生,都可能改变这个全局状态,当你发送以太币(ETH)给朋友时,你的账户余额减少,朋友的账户余额增加,这就是状态的转变。
交易(Transaction):交易是外部用户(通过EOA)发起的,要求状态改变的指令,它可以是从一个EOA向另一个EOA发送ETH,也可以是调用一个智能合约的特定功能,交易包含了发送者、接收者、值、数据、签名等关键信息,以及为了执行操作而支付的Gas费用。
区块(Block):交易不是单独执行的,而是被打包进“区块”中,矿工(或验证者,在PoS后)负责收集交易、验证它们,并将它们打包成一个区块,然后添加到区块链上,每个区块都指向前一个区块,形成一条不可篡改的链,区块的打包过程也包含了共识算法的计算,以确保所有节点对区块链的顺序达成一致。
智能合约(Smart Contract):这是以太坊计算的“灵魂”,智能合约是部署在以太坊区块链上的程序代码,它们存储在合约账户中,并且能够接收和响应交易,这些合约定义了在特定条件下如何自动执行的操作,一个简单的智能合约可以规定:“当A向本合约转入10 ETH后,立即向B地址转出10 ETH。”
以太坊到底在计算什么?

以太坊的计算过程,可以概括为“执行交易并更新状态”,每当一个新区块被提议并准备添加到链上时,网络中的所有节点(特别是验证者)都会执行该区块中包含的所有交易,并根据这些交易的结果来更新以太坊的全局状态,这个过程涉及以下核心计算任务:
交易验证与执行:
智能合约代码的运行:
Gas 消耗与计算:
状态转换的计算:

每一笔成功的交易都会导致以太坊从一个“旧状态”转换到一个“新状态”,节点需要根据交易执行的结果,精确地更新账户数据库,更新账户余额、修改合约存储中的变量、创建新的合约账户等,这些状态数据的读写和更新本身就是一种重要的计算操作。
共识机制的计算(PoS后):
在以太坊从工作量证明(PoW)转向权益证明(PoS)后,共识机制的计算也发生了变化,PoS中,验证者通过质押ETH来获得出块权,共识过程不再依赖巨大的哈希运算竞争,而是涉及到验证者资格验证、随机数生成(用于选择出块者)、区块提议与投票、惩罚机制(Slashing)等计算,这些计算确保了区块链的安全性和一致性,是以太坊作为“可信计算机”的基础。
以太坊计算的本质
以太坊的计算,并非追求传统意义上的计算速度或算力峰值,而是以“确定性”和“安全性”为前提,在全球范围内一致地执行预设的逻辑规则,并维护一个可信的、共享的状态数据库。
它计算的是: