比特币用来分布式储存数据的,以太坊用来分布式储存数据并且计算。这些小型的电脑运行程序叫做智能合约,合约由参与者在他们自己的机器上通过一种称为 ”以太坊虚拟机“的操作系统运行。
-
智能合约是运行在区块链上的一段代码,代码的逻辑定义了合约的内容。
-
智能合约的账户保存了合约当前的运行状态
balance: 当前余额
nonce: 交易次数
code: 合约代码
storage: 存储,数据结构是一棵MPT
-
Solidity是智能合约最常用的语言
在以太坊中,你可以创建一个包含代码的新帐户,并在交易中将其上传到以太坊的区块链上,从而建立一个智能合约。
只要合约上传成功,就会像自动点唱机一样:想要运行合约时,只需要给它发送一个包含以太币支付的交易,当然可能还需要额外提供另一些信息。
每一台挖矿电脑会用以太坊虚拟机来运行智能合约(这是他们挖矿过程的一部分),并得出最终的输出值。理论上,如果没有人使坏,以太坊网络上的每台电脑都会输出一样的结果,因为用户都运行着包含相同信息的智能合约代码。
挖出区块后,获胜的矿工会向网络的其他用户公布挖到的块,其他矿工纷纷验证并在得到相同的结果后,把该区块放到他们的区块链中。
这就是更新以太坊的区块链状态的方式。
参考链接:
网友评论