主要介绍以太坊中常用的一些专业术语。
区块(Block):由区块头与区块体构成,区块头包括区块描述信息、上一区块的散列值、时间戳等,区块体是该时间段的交易列表数据。
区块链(Blockchain):区块之间通过区块头保存上一区块的散列值,使整个网络的区块数据构成了一个不易篡改的「链」式数据库。
账户(Account):以太坊网络的基础工作单元,包括用户账户(EOA)和合约账户(COA)。用户账户由私钥控制;合约账户由其合约代码控制并且仅能由用户账户触发。
交易(Transaction):区块链数据记录的基本单元,每一次转账行为、创建一个智能合约、调用一次智能合约均构成一个交易,交易需要消耗燃料。
工作量证明(POW):目前以太坊主要采用的一种共识机制。这里重点介绍其运行规则:通过挖矿节点计算数学问题,最先算出的节点获得新区块封装权(即记账权),挖矿成功(即成功封装区块)的节点将获得一定量的「虚拟币」,获得新区块封装权的概率主要取决于挖矿节点在网络中的算力占比。
权益证明(POS):正在发展的一种新的共识机制,也是目前以太坊采用的主要共识机制之一。不由算力来决定记账权,而由节点账户在网络中预先分配的权益大小来决定新区块封装的概率。
智能合约(Smart Contract):一段可以由以太坊虚拟机解释执行的代码,创建时被存储于区块链上并获得一个合约账户(地址),执行时向该账户发送一个交易(即调用该合约,交易中包含有运行合约需要消耗的燃料及输入数据),由以太坊虚拟机调用合约代码执行。
以太币(Ether):以太坊网络的基础「虚拟币」。它是以太坊网络的重要应用之一,也是以太坊网络的一个基础设施,可用于支持以太坊以智能合约为核心的各类应用的燃料消耗。(目前以太币在我国不具备法定货币的地位)
燃料(Gas):以太坊提供了可执行图灵完备计算的智能合约,为避免网络资源被随意浪费、恶意滥用或攻击,要求交易发出账户需要为此次交易中所使用的计算资源消耗燃料。(如不做特殊说明,本书中的燃料均指在区块链上执行操作时所消耗资源的名称)。