以太坊:通用的区块链

原始区块链(比特币的区块链)追踪比特币单位的状态及其所有权。你可以将比特币视为分布式共识 状态机,其中交易引起全局的_状态转移 _,从而更改比特币的所有权。状态转移受共识规则的制约,允许所有参与者(最终)在开采数个区块后在系统的共同(共识)状态上汇合。

以太坊也是一个分布式状态机。但是,不仅仅追踪货币所有权的状态,以太坊追踪通用数据存储的状态转换。通常我们指的是任何可以表示为 键值对 key-value tuple_的数据。键值数据存储简单地存储任何通过某个键引用的值。例如,存储由“Book Title”键引用的值“Mastering Ethereum”。在某些方面,这与通用计算机使用的 _Random访问存储器(RAM) 的数据存储模型具有相同的用途。以太坊有 memory 存储代码和数据,它使用以太坊区块链来跟踪这些内存随着时间的变化。就像通用的存储程序的计算机一样,以太坊可以将代码加载到其状态机中并运行该代码,将结果状态更改存储在其区块链中。与通用计算机的两个重要差异在于,以太坊状态的变化受共识规则的支配,并且状态通过共享账本全球分布。以太坊回答了这样一个问题:“跟踪任何状态并对状态机进行编程,以创建一个在共识之下运行的全球计算机会怎样?”。