织梦CMS - 轻松建站从此开始!

我的网站

当前位置: 主页 > 比特币 > 比特币资讯

为什么我钱包里还有ETH 但交易就是确认不了?

时间:2020-09-24 08:52来源:未知 作者:admin 点击:
在 Uniswap 给 20 多万个用户地址撒钱的时候,也许不少人在开心之余心里想的都是,「这 gas 费也太高了。」 当天是以太坊历史上值得纪念的一天,gas 建议最高达到了 1000 GWEI,这是历史

在 Uniswap 给 20 多万个用户地址撒钱的时候,也许不少人在开心之余心里想的都是,「这 gas 费也太高了。」

当天是以太坊历史上值得纪念的一天,gas 建议最高达到了 1000 GWEI,这是历史最高点。

在见证历史、全民领空投的当天上午,不少人都遇到了关于 gas 费的问题,gas 费贵已经不是问题了,问题是 gas 费交到钱包建议的最大值也不能在计划时间内成交。大家 Metamask 上显示都是 pending,一圈一圈转得让人心烦。

为什么你使用了默认的 gas 费金额,却依然不能即时交易?。此文将详细讲解以太坊交易费率机制以及在以太坊上发起交易会遇到的问题。

Gas 的逻辑

这个事要先从以太坊账户讲起。

以太坊网络中有两类账户,外部账户(Externally Owned Account)以及合约账户 (Contract Account)。

外部账户是指用户们所使用的账户,由私钥持有者所控制。合约账户是指带有应用逻辑的智能合约,由合约代码所控制(往往是项目方所有)。用户们在使用 DeFi 应用时,就是在用自己的账户与 DeFi 项目的智能合约进行交互。

各类账户之间可以随意进行交互,钱包间可以进行转账,合约间也可以相互调用。每一次链上交互都需要消耗一定的计算量,计算量消耗的大小由计算难度所决定,而 Gas 就是计算量的计量单位。例如加法运算较简单,需要消耗 3 个 Gas,除法运算相对复杂,需要 5 个 Gas。

每一单位的 Gas 都有其对应的价格,也就是 Gas 价格 (Gas Price),而 Gas 价格以 Wei 为单位。用户需要购买 ETH 来支付 Gas 费用。1 ETH=1e18 Wei,而我们通常看到的单位 GWei 为 1e9Wei。通常,钱包软件会通过历史 Gas Price 对用户将要发起的这笔交易的费用进行预估。

为了避免全节点趋于集中,追求架构去中心化的区块链会严格限制每单个区块的容量。例如比特币的 Block Size Limit 以及以太坊的 Block Gas Limit。在律动 BlockBeats 撰文时,以太坊每单个区块的 Block Gas Limit 约为 12,000,000 个 Gas,这也就是每一区块总计算量的上限。平均每 15 秒出一区块。当交易需求超过区块容量时,用户为了将自己的交易尽快被上链确认,就需要竞争每一区块内的资源。此时用户会对 Gas 进行竞价,矿工会优先将 Gas Price 高的交易纳入区块。

通常用户在进行转账时还会看到钱包会提高可以调节 Gas Limit 的选项。与 Block Gas Limit 不同,Gas Limit 是指对于一笔交易,用户所能接受的 Gas 使用量上限。由于有时合约内可能存在漏洞,一笔交易会不停死循环地进行计算。如果没有 Gas Limit,这笔交易会消耗尽用户钱包内所有的 ETH。而矿工通常所收取的费用是按实际执行该交易时消耗的计算量 (Gas Used by Transaction) 进行结算的,而 Gas Limit 内剩余的 ETH 就会回到用户账户中。 (责任编辑:admin)

织梦二维码生成器
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
栏目列表
推荐内容