gas(Gas)

Gas是以太坊用于衡量程序执行一个或一组动作所需计算量的单位。交易或合约执行的每项操作都需要一定数量的gas; 所需的gas数量与正在执行的计算步骤的类型和数量有关。与仅以千字节(kB)计算交易规模的比特币交易费相比,以太坊交易费必须考虑智能合约代码可以执行的任意数量的计算步骤。程序执行的操作数越多,运行完成的成本就越高。

每次操作都需要固定量的gas。以太坊黄皮书的的一些例子:

  • 添加两个数字需要3个gas

  • 计算Keccak256哈希值,需要30个gas+ 每256位数据被哈希6个gas

  • 发送交易成本为21000 gas

gas是以太坊的重要组成部分,具有双重作用。一,作为以太坊价格(具有波动性)和矿工对其工作的奖励之间的抽象层。另一种是抵御拒绝服务攻击。为了防止网络中的意外或恶意无限循环或其他计算浪费,每个交易的发起者需要设置他们愿意花费在gas上的金额的限制。因此,gas系统阻止攻击者发送垃圾邮件交易,因为他们必须按比例支付他们消耗的计算,带宽和存储资源。