主页 > imtoken钱包国际版下载 > 什么是气体? 为什么现在以太坊交易费用这么高?
什么是气体? 为什么现在以太坊交易费用这么高?
什么是气体? 为什么现在以太坊网络上的交易费用如此之高? 有哪些方法可以降低交易费用? 您将在本文中找到这些问题的答案。
让我们先来谈谈气体到底是什么。
什么是气体?
Gas 是用于衡量在以太坊区块链上执行特定操作所需的计算量的单位。
这个名字本身并不是偶然选择的。 天然气实际上类似于汽油。 后者作为汽车的能源,保证汽车能够正常行驶。 以太坊网络上的 gas 为交易“加油”并允许用户执行不同的操作。
以太坊区块链上的每个操作,或者更准确地说是以太坊虚拟机 (EVM) 上的每个操作,都有相应的 gas 成本。 例如:两个数字相加需要 3 个 gas; 获得账户余额需要 400 gas; 发送一笔交易需要 21,000 gas。
智能合约通常包括多项操作,这些操作加起来可能会花费数十万gas。
有趣的是,gas price 本身并没有告诉我们在某笔交易中需要支付多少。 要计算交易费用,我们必须将 gas 乘以 gas 价格。
gas的价格单位是gwei,gwei的单位小于ether,1 gwei等于0.000000001 ETH。 我们可以把它们之间的关系想象成分和美元。
例如,如果 ETH 的价格是 1800 美元,我们想发送一个简单的以太坊交易。 最流行的以太坊钱包(如 Metamask)估计所需的汽油价格,并允许我们在快速、中速和慢速交易确认速度之间进行选择。 让我们假设,如果我们希望我们的交易在一分钟内得到确认,钱包估计 gas 价格将设置为 100gwei。
我们现在可以快速计算出我们需要为这样的交易支付 3.78 美元。 我们将发送交易的 gas 成本(21,000 gas)乘以 gas 价格(100 gwei),等于 2,100,000 gwei,或 0.0021 ETH。 以 1,800 美元的 ETH 价格计算,交易费为 3.78 美元。
ETH的价格和gas有什么关系
值得一提的是,gas只是一个抽象单位,只存在于以太坊虚拟机中,用户实际上总是为以太坊网络中的交易付费。
使用单独的单位来衡量计算工作的主要原因是将其与 ETH 的价格脱钩。
这意味着 ETH 价格上涨不会改变交易成本。 如果网络活动保持不变,我们应该会看到天然气价格随着 ETH 价格的上涨而下降,因此以 ETH 衡量的最终交易成本应该保持不变(以美元价值计算)。
但 ETH 价格的上涨通常与以太坊网络上的活动增加有关,这会增加交易成本。
现在,让我们看看增加的网络活动究竟是如何导致更高的交易成本的。
首先,所有交易都被发送到以太坊的内存池(mempool)。 所有未处理的交易都在等待矿工将它们捡起来并将它们包含在以太坊网络的下一个区块中。
矿工被激励首先选择 gas 价格最高的交易,因为他们通常会在固定的工作时间内选择价格较高的交易。
以太坊协议还限制了矿工可以包含在一个区块中的交易数量。 这是由每个区块的最大气体限制决定的。 在撰写本文时,此限制设置为 12.5M gas。
作为一个简单的例子,我们假设内存池中只有简单的 ETH 交易,每笔交易花费 21,000 gas。 一个矿工可以打包 595 笔这样的交易。 假设 mempool 中有 1000 笔未决交易,矿工将所有未决交易按照 gas price 进行排序,并选择 595 笔手续费较高的交易进行打包。
当前的费用模型基于一种简单的拍卖机制,在该机制中,希望矿工处理其交易的用户必须首先以比其他人更高的费用在区块中获得一个位置。 这反过来又推高了天然气成本,尤其是当许多用户有紧急交易需要确认时。
为什么我们需要天然气
为了更好地解释气体,我们需要先了解气体为什么存在。 以太坊虚拟机是一个图灵完备的机器以太坊转账手续费,可以执行任意代码。 虽然这是使以太坊如此强大的主要因素之一,但它也更容易受到停机问题的影响。 停机问题是根据任意计算机程序的代码和输入确定该程序是结束还是永远继续运行。
如果没有气体,用户可以执行一个永不停止的程序。 原因可能是代码错误,或者有人做错了。 为了防止这种情况发生,以太坊引入了与每个操作相关的 gas 成本,这将防止程序永远运行,最终使整个网络陷入停顿。
除了 gas price 之外,每笔交易还有一个 gas limit,它必须等于或高于成功执行特定交易所需的预期 gas 量。
在执行交易中的每个操作之前,以太坊虚拟机检查是否有足够的可用空间来执行该操作。 如果剩余的gas不够用,使用“out of gas”来回滚整个交易,回滚所有状态。 即使交易失败,用户仍将按照已完成的工作量向矿工支付交易费。 这也是为了避免有人对网络发起恶意攻击。
如果交易消耗的 gas 比最初预期的少,则剩余的 gas 将转换为 ETH 并退还给发送方。
同样重要的是以太坊转账手续费,以太坊上的所有操作都有正确的 gas 成本; 否则,它可能成为另一个攻击目标。 其中一次攻击发生在 2016 年,导致以太坊网络硬分叉,导致系统中某些简单操作的重新定价。
现在,既然我们对 gas 有了更多的了解,那么让我们来看看最近交易费用是如何上涨的,以及一些现在和未来可以降低交易成本的解决方案。
以太坊的高额费用
随着去中心化交易所(DEX)创纪录的交易量,锁定在 DeFi 借贷平台的总价值越来越高,许多 Yield Farming 项目创造了很多机会,网络上创造的 NFT(非同质化)代币)不断增加,以太坊网络异常繁忙。
这导致对区块空间的需求极高,进而推高交易成本。
为 ERC20 转账支付超过 10 美元或为 Uniswap 交易支付 50-100 美元已变得司空见惯。 当然,收费过高也不是什么好事,因为这会让小玩家很难参与到以太坊生态中。
幸运的是,一些解决方案已经可用或正在积极研究中。 让我们来看看其中一些最重要的解决方案。
第 2 层扩展解决方案和 Eth2
第 2 层扩展是一种解决方案的术语,它通过处理链下交易来帮助增加以太坊主链(第 1 层)的容量。 除了提高交易速度和交易吞吐量外,第二层解决方案还可以显着降低交易费用。
Loopring 就是一个很好的例子,这是一个建立在第二层网络上的去中心化交易所。 该平台锁定的总价值最近达到2亿美元,每日交易量超过1000万美元。
另一个项目 Matic 最近更名为 Polygon,其在 Plasma+PoS 链上的锁仓也超过了 2000 万美元。
一个更通用的解决方案——基于 optimistic rollups 的 Optimism 也正在推出。 它的推出很重要,因为它将允许 DeFi 智能合约以类似于它们在主网上交互的方式在第二层网络上进行交互。
可以进一步提高第 2 层解决方案采用率的一种方法是直接参与现有的第 2 层网络项目。 这可以进一步降低交易成本,因为用户可以将他们的 ETH 直接从交易所转移到路印协议等第二层解决方案。