0

gas

gas知识专题栏目,提供与gas相关内容的知识集合,希望能快速帮助您找到有用的信息以解决您遇到的gas问题。

分享

浏览

5185

文章

16

飞利浦空气净化器显示gas L

全文共 623 字

+ 加入清单

飞利浦空气净化器具有自动检测有害气体,L1表示良好。现在飞利浦净化器通常都带有gas、PM2.5、过敏原、甲醛的检测。gas主要是检测有害气体L1,表示空气质量良好。空气良好的时候,大家也可以放心点,就是自动净化模式。现在市面上的飞利浦空气净化器gas、PM2.5、过敏原、甲醛检测还是比较准确的,对于家中有小孩子、对于空气敏感、有呼吸道疾病的人来说,个人感觉空气净化器是一个不可多得选择。今天疫情病毒的蔓延,空气净化器还具有除菌的作用,像老朋友来家中做客,难免在来的途中会沾染其他的细菌,这时可以打开空气净化器,根据空气净化器上的空气质量环颜色的显示,选择相应的净化模式,还能进行杀菌。基本上你睡觉的时候,你可以打开空气净化器,看到gas显示L1,是比较良好的,你也可以放心的睡觉。个人感觉,这些数值的显示对我们的生活具有很大的帮助。飞利浦空气净化器,gas、甲醛等物质的检测是通过电化学传感器,通过电流感应进行检测的。电化学检测是非常的准确以及迅速的,所以对我们还是具有一定的帮助。通过检测的浓度数据,飞利浦空气净化器进行净化模式。

飞利浦空气净化器净化原理是什么?

飞利浦空气净化器的工作原理十分的简单,主动式的就是主动的进行空气净化,被动式的就是抽送空气,而且飞利浦净化器基本上都是采用多层滤网模式,先把空气中可吸入的颗粒物进行预过滤,然后甲醛等其他有害的气体,在多重滤网(含有特殊处理的活性炭)进行过滤。这样的话个人感觉是过滤的比较全面的。

展开阅读全文

飞利浦空气净化器gas显示L

全文共 642 字

+ 加入清单

飞利浦空气净化器gas显示L4

现在飞利浦净化器通常都带有gas、PM2.5、过敏原、甲醛的检测。gas主要是检测有害气体L4表示空气质量最差,从而会导致空气质量环,显示红色,而让我们精准全面净化。飞利浦净化器gas、PM2.5、过敏原、甲醛检测还是比较准确的,对于家中有小孩子、对于空气敏感、有呼吸道疾病的人来说,个人感觉空气净化器是一个不可多得选择。今天疫情病毒的蔓延,空气净化器还具有除菌的作用,像老朋友来家中做客,难免在来的途中会沾染其他的细菌,这时可以打开空气净化器,根据空气净化器上的空气质量环颜色的显示,选择相应的净化模式,还能进行杀菌。假如你某一天,炒菜时忘记关燃气,空气净化器会变红,gas显示L4表示具有强烈的有害气体,空气净化器就会进行全面的净化模式,也能提醒你关掉燃气。个人感觉,这些数值的显示对我们的生活具有很大的帮助。

飞利浦空气净化器该怎么检测呢?

飞利浦空气净化器,gas、甲醛等物质的检测是通过电化学传感器,通过电流感应进行检测的。电化学检测是非常的准确以及迅速的,所以对我们还是具有一定的帮助。通过检测的浓度数据,飞利浦空气净化器进行净化模式。

飞利浦空气净化器净化原理是什么?

飞利浦空气净化器的工作原理十分的简单,主动式的就是主动的进行空气净化,被动式的就是抽送空气,而且飞利浦净化器基本上都是采用多层滤网模式,先把空气中可吸入的颗粒物进行预过滤,然后甲醛等其他有害的气体,在多重滤网(含有特殊处理的活性炭)进行过滤。这样的话个人感觉是过滤的比较全面的。

展开阅读全文

飞利浦净化器gas代表什么

全文共 654 字

+ 加入清单

飞利浦净化器是最近市面上比较火的一款净化器,很多人都很好奇净化器上显示的代表什么,一个是PM2.5,一个gas代表是有害气体,另一个lal代表过敏原。然而空气净化器显示中有这三个标志,一方面能清楚知道空气中PM2.5、过敏原以及有害物质的存在,能更好的根据数值开启相应的净化模式,从而能更好更准确的净化。过敏原那个数值对于易过敏体质的人群来说,更是一个福利。通过飞利浦净化器的净化原理,把过敏原吸附在过滤网中,减少过敏症状的发生。所以个人感觉,飞利浦空气净化器这个数值的显示,给我们了很大的帮助。但是在生活中,我们首先要注意个人卫生勤洗手,保持家中卫生勤拖地。当然最主要的还是勤通风,保持空气流动。

怎么样的空气净化器才是好的呢?

想要有个好的空气净化器,选择是一个很重要的点,但是呢选择又是一个很大的难题,选的不好就很难,选对了当然就是好的。为了能更高效的选择一款好的空气净化器,我们的得从多方面进行分析。首先我们得了解我们自身的需求,以及家中环境等等。其次我们得了解空气净化器的工作原理、净化功效、滤网的大小。空气净化器还有主动式和被动式,主动式自然而然是主动去净化,而被动式需要自行抽送空气。主要是把空气中的污染物吸入,首先进行预过滤,把稍微大的吸附在滤网中,小分子物质,直接进入多重过滤网。然后再把净化后的空气放出。所以再选择时,要选择知名度好一点的大品牌净化器,那种专门做净化器品牌的更好。其次一定要选择滤网比较大的,吸附能力较强的。所以个人认为,好的空气净化器得从净化效能好的、滤网大的吸附能力强的。

展开阅读全文

Gas是什么?有什么作用?

全文共 1014 字

+ 加入清单

如果您曾经在以太坊上发送过交易,那么必须选择一定数量的gas才能进行确认。没有适当数量的Gas,则网络的矿工将不会选择您的交易,也不会将其打包在后续区块中。本文将用形象的方法来进行Gas的科普,帮助新手玩家对Gas有进一步的认识。

什么是Gas?

Gas对以太坊网络至关重要,从字面意思上看,Gas是使其运转的燃料。更具体的,Gas是指测量在以太坊网络上执行特定操作所需的计算单位。当您想参加代币交易或玩CryptoKitties时,您需要Gas来激励矿工将您的交易打包到区块链中。

Gas以ETH支付,多数情况下会转换为GWEI,以获得更好的用户体验。

理解Gas在以太坊网络中的作用的一个简单类比是将其与汽车需要汽油或运行的方式进行比较。一个人前往加油站并支付加满汽车费用的方式,以太坊网络的用户支付费用使其智能合约由矿工执行。这就是为什么区块链社区中的许多人喜欢将ETH称为“数字经济的燃料”,ETH确实可以转化为燃料,激励矿工在全球网络上进行计算。

Gas至关重要,因为它是以太坊网络中的主要激励机制。请记住,矿工必须花费自己的计算能力来运行智能合约操作,他们这样做并非出于其善意,因为他们可以通过提供有价值的服务来赚钱。

像在任何工作量证明系统中一样,网络的安全性依赖于矿工哈希率,矿工哈希率主要取决于保证网络安全的动机。以太坊矿工可以获得的Gas越多,网络将越安全。

考虑Gas时,有两个主要组成部分:Gas限制和Gas价格。执行一项操作的总成本是“Gas限制”和“Gas价格”的乘积(Gas限制x Gas价格)。

Gas限制

Gas限制是指用户愿意花费在计算上的最大Gas。一些基本计算需要预定数量的Gas,钱包很容易根据用户尝试执行的操作类型提供这些估算值。例如,以太坊黄皮书指出,每笔交易都需要21000 Gas。这就是为什么大多数用户界面默认显示21000作为“Gas限制”的原因。

Gas价格

单位Gas的价格以GWEI表示,GWEI是WEI的用户更易理解的方式。1 GWEI=10⁹WEI,在计算Gas成本方面提供了更好的用户体验。

如您所料,设置的Gas价格越高,该交易将被包含在下一个区块中的机会就越高,因为这是对矿工的激励。大多数接口上的默认Gas价格为20 GWEI,这足以在接下来的几分钟内完成交易。将价格提高到40 GWEI可能会使您进入下一个区块。

来源|medium.com

作者|LYFCOIN

编译|头等仓Mark

展开阅读全文

如何在Opium上购买看涨期权来对冲Gas价格

全文共 1480 字

+ 加入清单

本文解释了如何通过在Opium交易所上购买看涨期权对冲gas价格波动的风险。

通过交易金融工具来对冲风险的常见用例

由于网络堵塞而导致的 Gas 价格上涨可能会对 dApp 开发者和以太坊用户产生巨大影响。然而,通过期权(追踪 Gas 价格的金融工具)交易,我们可以轻而易举地降低这一风险。期权交易虽然不会直接影响 Gas 价格本身,但是可以帮助判断正确的交易者规避损失。

以下是一份详细指南,介绍了如何通过期权交易来对冲 Gas 价格上涨的风险。

你可以将期权交易理解成一种保险,用来保护你自己或你的项目免受 Gas 价格波动的影响。

购买看涨期权是一种对冲高额 Gas 费的方法。假设现在有一个合约,Gas 费用的执行价格是 35 gwei 。也就是说,未来一周内,该合约预计 Gas 价格均值为 35 gwei 。通过该合约,交易者能以 0.35 WETH 的价格购买 10,000,000(单价是 35 gwei)。如果你认为这周的 Gas 价格均值将高于 35 gwei ,看涨期权刚好可以满足你的需求。我们先别管合约价格,快进到这周末。

-图 1 :Gas 价格均值超过 35 -

情景 1 :Gas 价格上涨!(见图 1 )

不出你所料,Gas 价格暴涨,均值达到了 45 gwei 。由于你之前以 35 gwei 的单价购买了 Gas 价格的看涨期权,现在 Gas 价格已经涨至 45 gwei ,你获得了 0.1 WETH 的净利润。

-图 2 Gas 价格均值低于 35 -

情景 2 :Gas 价格降低。(见图 2)

你预判失误,这周 Gas 价格很低,均值只有 15 gwei 。由于实际的 Gas 价格低于你的看涨期权的价格,你并不会 “行使” 该期权。这就好比是一份医疗保险,你在身体健康的时候不需要用到医疗服务,也就不会行使期权。在这种情况下,期权交易者损失的只是合约成本。

“这样一份期权合约的售价是多少?价格是多少才划算?”

这里没有正确答案,因为:

期权合约的价格不是由 Opium 交易所决定的,而是市场;通过订单簿,你可以了解其他用户愿意为这样一份合约支付的价格。

目前,看涨期权合约的最低售价是 0.232 WETH 。有 3 份合约以这个价格出售。如果你想购买更多看涨期权合约,你可以以 0.233 WETH 的价格再购买 3 份合约。

当然了,如果你认为这个价格不公平的话,可以按自己心仪的价格创建买单或卖单。

你只需在提交订单时设定价格即可。随后,你的订单会被添加到订单簿上,等待愿意以这个价格卖给你的交易对手。

在订单簿上,你可以看到其他买单及其价格。目前,最高的买单价格是 0.011 WETH 。

- 译者注:上图模拟了看涨期权的交易流程及结果。假定 Alice 向 Bob 出售看涨期权,那么 Bob 其实是看多 Gas 价格、觉得 Gas 价格会涨的一方。Alice 正好相反。Bob 当下就支付 0.1 WETH,Alice 则要锁入 0.245 WETH。期权到期后,如果 Gas 涨价,则 Bob 可根据 Gas 的数量和期权价格与市场价格的差额获得收益(并要向合约支付手续费);而 Alice 拿回 Bob 收益和合约手续费之外的剩余资金。如果 Gas 价格跌了,则 Bob 根本不会行使购买权利,因此仅损失了买入期权的费用;而 Alice 就净赚期权费,并能拿回自己锁入合约的资金。-

交易保障

为避免尾部风险,我们提供的所有衍生品,如,Gas 价格期权,都有固定的初始保证金要求。也就是说,买方和卖方在挂单时锁定的初始保证金限制了你的盈亏。

就 Gas 价格的看涨期权而言,只有卖方需要锁定一些代币作为初始保证金。请注意 Opium 交易所面板上的 “初始保证金” 信息,可以有效防止输入错误。

哪里可以买到看涨期权?

展开阅读全文

什么是以太坊gas?价格是多少?

全文共 1040 字

+ 加入清单

什么是以太坊gas?以太坊gas价格又是多少?以太坊是受比特币启发并作出改进的一个去中心化的区块链平台。与比特币相比,以太坊的功能会更加强大和灵活。随着以太坊的发展,吸引了越来越多投资者的目光。相信不少投资者对以太坊gas价格和以太坊gas的概念不太明白。这里笔者就来简单地概括一下gas的基本概念,还有许多人关心的以太坊gas价格。

想了解以太坊gas价格,首先要知道什么是以太坊。以太坊是在2013年-2014年提出来的,距离现在也才不到十年的历史。以太坊自己的虚拟货币以太币,已经成为了全球所有加密数字货币中市值第二高的数字货币。以太坊简单来说,就是一个提供各种各样的材料数据和模板的区块链平台。若是将搭建区块链应用比作建造房子,那么以太坊就给用户提供房顶、砖瓦、墙壁等建筑材料。这样一来用户只需要将这些材料搭建好便可以建造完成。所以以太坊的出现让开发区块链应用变得更加容易。最近的以太坊热度开始持续不减,除此之外,gas行情也变得火爆。

什么是以太坊gas?以太坊gas价格又是多少?在英文单词中 gas是汽油的意思。不过在以太坊区块中,gas属于一种计量单位。是矿工打包交易向用户收取gas的手续费,也就是一定量的以太币。在以太坊中,矿工有权自己选择打包哪笔交易,若是哪笔交易支付的gas更多,也就会有越多的矿工想要打包,这样一来,交易速度也会更快。如果想要立即完成交易打包,可以选择支付额外的gas。

那么以太坊gas价格又是多少呢?在前不久,1000个左右的以太坊区块,需要花费的gas平均价格在247gwei左右。据统计,每天花费的以太坊gas费用就在17500左右枚以太币,这也是gas的历史最高值。总的来说,gas是一种度量以太坊交易上所需要花费多少的计量单位,加入一笔交易的难度和复杂程度越大,那么所需要花费的gas就会更多。

相信通过以上概括,读者们都对以太坊gas价格有了一定了解。gas是以太坊中非常重要的存在,若是想要深入了解,那么就需要投资者们自己去学习和了解了。因为以太坊的难度和原理还是有一定难度的。

最后,想要投资以太坊,除了需要了解清楚以太坊gas价格之外,还需要按照目前的以太坊gas价格计划好自己的成本。并且需要弄明白以太坊到底是什么,值不值得投资?这些都是投资者所要思考的问题,一定要有自己的分析及判断能力,不能盲目跟风。还有购买以太币的数字货币交易所也要选好,目前有名的OKEx就十分不错,平台大,安全系数也很高,这样也能够不用担心资金安全。

展开阅读全文

一文读懂Gas价格指示器如何使用,需付多少Gas费一目了然

全文共 2454 字

+ 加入清单

对于以太坊用户来说,真正的灵魂三问莫过于:我在做什么交易?我该给多少的gas?应该把 Gas Price 设成多少才经济实惠?

简单来说,Gas 是用来度量以太坊上一笔交易所需花用的计算量的单位。一笔交易的复杂度越高,所需花用的 Gas 也就越多,所以,越是复杂的交易,在发起交易时越要设定(预留)较多的 Gas 额度,如果发起者预留的 Gas 数量不够多,交易会因为计算资源耗尽而失败。

但是好就好在,这事用不着操心,可以设一个自己的账户支付得起又充分大的数值,因为,没有用掉的 Gas 是不会计算手续费的,换言之,虽然你设置了这笔交易可以用掉 100 Gas,但实际上只用掉了 20 Gas,那打包你的交易的出块者就只能得到 20 Gas 的手续费,不能白收你的。此外,现在的 Gas使用量估算技术已经很普遍了,用户使用 Metamask 钱包插件跟应用交互的时候,会发现自己根本不需要手动设置 Gas Limit,插件已经帮你估算好了。

但是讲到 Gas Price,就头疼了。大家都知道,这个参数表达的是交易发起者自己愿意为每一单位的 Gas 支付的价格,而这部分价格最终会被打包该笔交易的出块者得到;有鉴于此,出块者当然青睐那些 Gas Price 高的交易。但是,谁不想让手续费便宜一些呢?谁不想经济实惠地达成交易呢?

因此,几乎所有的以太坊用户在日常使用中都会接触到一种工具:Gas 价格指示器,它的作用是告诉你,你设置多少的 Gas Price,就能让自己的交易在自己想要的时间内被打包。比如下图展示的就是生态里可能是最常用的 Gas 价格指示器:Gas Station。

它的大意是说:如果你想要自己的交易在 2 分钟之内被打包,那就要设置 95 Gwei 乃至更高的 Gas 价格;如果你只需要它在 5 分钟之内被打包,那设置成 79 Gwei 以上就好

大多数像你我一样的用户,在使用 Gas Station 时都不会发觉有什么问题。但是,假如你要做高频的交易呢?或者假如你要写一个交易机器人呢?Gas Station 真的可以依赖吗?

这可不是在找茬,也不是装神弄鬼。这篇文章就提到了 2020 年 3 月 14 日(因ETH价格暴跌而导致链上活动大量增加)时候许多用户的艰难遭遇:在以太坊协议中,一个账户发起的交易是有顺序的,由一个只增不减的流水号 nonce 来标记顺序;当你的前序交易因为 Gas Price 太低而被出块节点丢弃的时候,不论你给后序交易设置再高的 Gas Price,都于事无补,因为节点不能越过前序交易直接打包后序交易,但是前序交易已经丢弃了,这就等于使你的账户锁死了。唯一的解救办法就是找回你最早一笔还未上链的交易,使用这笔交易的流水号重发一笔交易,并且 Gas Price 要足够高。同样地,许多交易机器人也因为同样的原因被卡,原因就是因为它们依赖的 Gas 价格报告器对网络 Gas 价格的预估有误,发出几笔交易之后,机器人就卡死了。

这些血淋淋的教训充分说明了,为每一笔交易安排合适的 Gas 价格,有多么重要。因为当链上应用活跃的时候(比如前一段时间的 Yield Farming 热潮),一笔交易的成功不仅会影响这笔交易,还会影响后序交易。

但是,是什么阻碍了我们获得准确的 Gas 价格估计呢?我们能克服吗?

在最根本上来说,阻碍我们的是区块链网络的点对点网络架构:所有节点都是分散的,当某一笔交易被发送到一个节点时,该节点做一定的校验之后会把交易数据广播给其它节点;这种网络结构决定了,没有任何一个节点能实时获得整个网络的未处理交易的全局状态,交易的传播需要时间,也需要偶然(某些节点可能会用更高的 Gas Price 作为门槛、拒收低手续费的交易来保护自己)。对于这一点,我们只能改善,不可能从根本上克服,因为我们不想要一个中心化的网络结构。

但另一方面,至关重要的是我们预估 Gas 价格的方法。目前为止,绝大部分 Gas 价格指示器所用的方法,都是根据过去一段时间里被打包到区块里的交易的 Gas 价格加以统计方法处理,得出对未来 Gas 价格的估计。仔细想想这其实很不合理,在你发交易的这一刻,决定你的交易多快能上链的是现有未处理交易中比你交易的 Gas 价格更高的交易有多少,以及在你的交易还未打包的这段时间里有多少人发出了比你的 Gas 价格更高的交易。拿已经上链的交易,也就是历史数据,去做这样的预估,貌似合理,实则荒谬。当网络活动快速增加、Gas 价格快速攀升的时候,按历史数据估计的方法大概率只能给出低估的 Gas 价格。更准确的估计应该基于现有未处理交易的 Gas 价格分布,哪怕还需要统计方法处理,也会比拿历史数据来估计要更简单。

这就是 GasNow 厉害的地方。它不再基于历史数据来预测未来,它基于星火矿池节点的交易池中交易的 Gas 价格分布。为了收益的最大化,矿池一方面要尽可能地收集交易,另一方面,要从高到低打包交易池中待打包的交易。所以,GasNow 给出的数据,是真正具有参考意义的。

如图,网页直接告诉了你矿池交易队列中由高到低排序的第 50 笔、第 200 笔、第 400 笔交易的 Gas 价格。这就有的放矢了

理论上来说,所有的 Gas 价格指示器,都应该转变成 GasNow 这样的模式,不再根据历史数据,而是根据实时数据,来帮助用户做决策。但饶是如此,GasNow 也是有竞争力的。因为矿池的交易池会比普通的、没有优化的节点的交易池更全面,更有参考意义。

Gas Station 在自述中说,“希望能提高 Gas 价格的透明度”,这当然是个很有意义的目标;而且,Gas 价格的不清晰,其实根值于网络的点对点特性(因此,我个人非常不愿意把这种不清晰当成是一种 “问题”),值得更多人作出更多的尝试,用服务本身的分散性来降低点对点网络带来的不确定性、使我们获得更全局的视野。

但至少,GasNow 应该是离这个理想更近一步了。

展开阅读全文

带你了解以太坊高Gas费背后引发的区块链可扩展性问题

全文共 7831 字

+ 加入清单

你最近要是用了 DeFi 产品,一定会因高额交易费望而却步。现在为以太坊交易支付几十到上百美元交易费再正常不过。以当前的费率,只有「巨鲸」交易才能获利。就忘了那些所谓的「让没有银行账户的人享受金融服务」 (banking-the-unbanked) 或「构建普惠大众的无需许可金融基础设施」这些高尚的目标吧。以太坊变成了富人的乐园。

小额交易手续费有时会高达 10%

高额交易费的背后是区块链可扩展性问题。这个问题众所周知,甚至还有一个专门维基百科页面。可扩展性是目前区块链发展的最大限制,除此之外还有确定性时间长、易出现抢先交易、跨链互操作性等问题。

我们想要创造一个所有价值可自由流动的代币化世界,区块链的局限却正在阻碍我们实现这一使命。这就是为什么 0x Labs 专门成立工程师团队,力图解决这些局限性的问题。通过我们的研究,我们希望通过本文来探讨以太坊的局限性,及其如何影响 DeFi 用户。此外,本文也会简单论及下一代区块链。在未来,我们还将撰写文章,探讨不同的解决方案 Layer 2,并演示我们满足 DeFi 需求的策略。

首先要说明,以太坊交易的大小以gas计算。区块中收集交易,大约每 13 秒一个区块。每个区块所容纳的交易数量空间有限,也就是「gas 上限」。目前每个区块大约有 1,200 万 gas 交易空间。纯 ERC-20 代币转账大约需要五万 gas。也就是每个区块可容纳最多 240 笔代币转账,约每秒 18 笔转账。DeFi 转账通常涉及多笔代币转账和簿记,造成交易成本翻倍,进而限制区块吞吐量。「gas 上限」和区块时间意味着需要持续提供交易所需的 gas。

首先,我们来看以太坊历史上 gas 供应及其使用如何增长。

Gas 使用

每天以太坊上约有六千区块挖出,有几十亿价值 gas 交易空间。主要由于「gas 上限」增加,gas 交易数量也随着时间改变、增加。同时,交易消耗总 gas 费也会随着以太坊上的交易增多、变大而增长。

回顾以太坊整个历史的 gas 供应(灰色)和消费(黑色),如下图:

从上图可以看出,以太坊是企业级应用,因为办公时间应用最高

拜占庭 (Byzantium)、君士坦丁堡 (Constantinople) 和缪尔冰川 (Muir Glacier) 硬分叉之前,以太坊 gas 供应有几次断续下跌。这都是以太坊「难度炸弹」(也称为 「冰川时代」)的影响。

在「冰河时代」,出块时间大幅增加,造成单日出块量减少,gas 供应降低。当然这种情况非常不受欢迎,迫使网络硬分叉来调整。这样做的目的就是:迫使硬分叉带来升级改进,防止陷入创新停滞。伊斯坦布尔 (Istanbul) 硬分叉没有重设「难度炸弹」,所以很快进行了缪尔冰川硬分叉。即将进行的柏林(Berlin) 硬分叉考虑更改这一机制 (EIP 2515)。

看用量情况(黑色),以太坊自从 2017 年 ICO 热潮以来,gas 用量始终占 60% 以上。之后「gas 上限」几次增长到四倍,每次上限增长后 gas 用量也成比例增长。过去几个月,以太坊用量一直卡在 95%。

要理解以太坊 gas 用量为何不会超过 95%,需要先了解「空块」 (empty block) 和「叔块」 (ommer block) 的概念。

「空块」和「叔块」

以太坊历史上,即使需求再高,gas 用量也从未超过上限 95%。让人惊讶的是,剩余 5% 浪费在完全空的区块。这些空块定期出现,大约每二十个块有一个。有交易要付款进入打包入块,为什么还会有人要挖空块?先看以下数据:

空块率随着时间稳定增长,目前是 5%。所有矿池的空块率相等,所以挖空块的不会是恶意矿工。相反,真实原因可能是出块过快。如果挖块时间低于六秒,那获得空块的概率便会几何增长。

一个解释就是,矿工一获得新区块头,在完整个区块没打包完成前便开始挖下一个区块。这种操作在比特币里称为 SPV 挖矿,让矿工可以没完成一个区块验证可即刻开始找下一个区块,但只能加入空区块。新区块完全打包完成后,就可以添加下一个完整区块,并切换去挖。

这种解释的进一步证据就是,如果同一矿工快速连续挖到两个区块,空块率就会降低 25%。

挖空块的另一种方法就是,在挖上一个区块的同时,处理新区块。这就造成同时挖出多个区块。如果出现此类情况,以太坊会选出一个主干区块,把其他区块标记为「叔块」 (ommer)。挖到「叔块」的矿工仍旧可以得到小额奖励。这种情况出现的比率稳定:

2018 年 gas 用量达到峰值期间,「叔块」率也到新高,但之后占比降到所有挖出区块的 5%。这与矿工可能此时更改挖矿策略造成空块率升高相吻合。

空块率对以太坊可扩展性的伤害没有立即表现出来,但确实有影响。自从拜占庭升级的 EIP-100 提案,难度调整维持一定主干链区块和「叔块」比率。所以「叔块」率高就表示浪费的「叔块」增多,主链增加的块减少。这就表现为每日出块时间延长,每日总 gas 量减少。(造成出块时间延长的另一个原因是「难度炸弹」)

「叔块」或空块都是以太坊网络的重要健康指标。任何一个指标增长,都意味着每日用于交易的总 gas 减少。「叔块」率分析是支持 EIP 2028 和 1559 研究(参见 1、2、3)的主要部分。意外的是,这两个 EIP 都没提到空块率,而且研究存在方法缺陷。用逻辑回归等恰当的统计学方法分析「叔块」率和空块率,这样更严谨的分析会更好。

有方法可以降低空块率和「叔块」率。推定根本原因就是,由于网络和处理延迟,矿池没有最新的状态可用。一个简单但不太让人满意的解决方案就是,让矿池更中心化,最近的状态就会集中在一起。

更去中心化一点的解决方案就是 bloXroute 那样,创建矿池间专用连接。受「间谍挖矿」 (spy mining) 启发,可以让矿池预先分享目前在挖的区块。其他矿池会准备可能会挖的后续区块。矿池成功挖完自己的块后,就已经知道后续可以挖哪些块,立即切换。在堆栈上方,改进节点通讯协议和处理算法也有效,这些地方仍有改进空间。最终,降低空块率和「叔块」率才能单日提升最多 5% gas 供应量。

所以似乎有 95% gas 上限,但如果有人想要使用超过 95% 的量怎么办?

Gas 价格

以太坊 gas 上限到顶会怎样?矿工可以自由选择打包交易(后续详述),但实际上矿工按「高 gas 费优先原则」打包交易,因为这样利润最高。这样就产生对可用 gas 的第一价格拍卖现象。

Gas 价格已成为「完美非弹性供应量」的教科书范本。随着网络使用率超过 80%,涨到 95% 位置,gas 价格明显增加。任何潜在需求增加只会增加价格,直到价格赶退需求,降回相同水平。

让价格下降的唯一方式就是增加 gas 供应,或降低需求,而最近 gas 上限增加不足以有效降低 gas 价格。

乍一看,对以太坊都兴趣增加,只会推升价格,不会造成用量增长。实际上,高价值使用会驱逐低价值使用,便宜的游戏类非同质化代币 (NFT) 交易减少,大额 DeFi 交易更多。

提案 EIP 1559 意在使短期内 gas 供应更加弹性。在需求高峰期,可以加大区块容量(高达 2,000 万 gas)。这就有助于保持高峰 gas 价格平稳,可以更快打包交易。但这样无法改变长期供应量不具弹性的问题。

根据提案 EIP-1559,长期仍有固定 gas 发行率,意味着 gas 价格会持续上升,直到需求足够小。EIP-1559 仍旧鼓励同一区块内支付溢价的优先打包处理(假设矿池继续按原先顺序挖区块)。这就意味着抢先交易、gas 竞价和矿工牟利的情况仍旧存在。

图中的数字代表下个区块内可打包交易的最低价格。你愿意等得越久,gas 价格会越低。历史数据表明,若你愿意等两分钟或更久,那价格便会很低。EIP-1559 有助于降低溢价,便于更快处理交易。

因此,gas 上限促使 gas 价格上升,那我们该如何提高上限?

Gas 上限

矿池确定 gas 上限。下面简要概述矿工和矿池工作原理:几乎所有矿工都会把算力资源聚集一起。矿工们不会冒着长期没有收获的风险单独去到下一个区块,而是将资源聚集而获得稳定收入。矿池来验证每个矿工贡献的算力,再继续挖下个区块,这种方式推动了矿池发展。大型矿池最终会挖得较大份额区块。

下面来看以太坊上矿池份额的发展情况:

星火、Ethermine 和鱼池三家获得主要区块。

除了进行硬分叉外,矿池运营者有重要治理责任:他们可以设置以太坊 gas 上限。与出块时间和 gas 价格(新特性)不同,gas 上限由每个区块各自确定。新 gas 上限限于上一区块的 0.1%,所以每个区块仅能做出微小浮动(《黄皮书》公式 47)。要是三家矿池一致同意快速复利滚动单边浮动,两个半小时 gas 上限就能翻倍或减半。要是意见不一致,gas 上限就是矿池规模的加权平均数。

目前由于缺少矿工实际操作的详细信息,我们会用简单的方法:投票系统。[…] 希望未来我们可以软分叉,变为更精确的算法。

以太坊设计原理 (2015 年 3 月首次加入)

以太坊早期矿工设定 gas 上限的方式是「补缺解决方案」。很多「补缺解决方案」足够好,就变成了备用参数。EIP 1559 建议采用不同机制,目前正在讨论在柏林分叉时应用。这之前,矿池运营者可像 OPEC 控制石油产量一样控制 gas 供应量。

Ethermine 矿池运营者

最近两大矿池一致决定提升 gas 产量 25%,颇有争议。目的本是通过增加 gas 供应来缓解高交易费压力。目前我们所看到的,交易需求增长快过 gas 上限增长速度。这就造成价格暂时趋缓,最终还是会上升。

提高 gas 上限会对以太坊安全带来巨大隐患。如上所述,gas 上限会增加「叔块」率和空块率。正常交易负载下,这一增长很小。但对于安全问题,我们不关心正常行为,只关心糟糕情况下的不利行为。Perez 和 Livshits (2019 年) 研究了这种糟糕情况,结果就是同等 gas 成本下,糟糕时的交易要比正常交易慢百倍。需要九十秒区块才能填满交易。这就造成节点同步滞后,矿池挖「叔块」和空块。至本稿发布,问题已有缓解,但不足以避免。这就引致两位节点主开发者 Péter Szilágyi 和 Alexey Akhunov 批评提高 gas 上限的决定。

所以,gas 上限促使 gas 价格上升。似乎我们不该一味增加 gas 上限。那该怎么做?或许可以降低交易所需的 gas 成本?

Gas 成本

交易的 gas 成本主要由 EVM 运行成本组成。交易是由众多 EVM 操作组成,每次运行成本由 EIP 和硬分叉决定。过去几次硬分叉中,有些操作的 gas 成本已经增加 (EIPs 150、160、1884),有些降低 (EIPs 1108、2028、2200)。计划中的柏林硬分叉也在在考虑变更一些特定操作的 gas 成本。

所有变更的目标是要让费用更准确反应操作的真实成本。这就意味着,随着计算机和算法变快,计算运行成本会降低。

而存储操作成本有所不同。存储与检索成本视链上状态大小而定,而以太坊状态大小在持续增加。改善存储设备或数据库不会抵消状态规模的增加。

这就意味着,存储仍旧是 DeFi 应用的大额成本。创建新的余额要两万 gas,修改现有余额要五千 gas。转账至少要修改两次余额,汇兑至少要修改四次,DeFi 交易所需的状态费用更高。似乎没有简单方法能降低相关存储量,有需求,存储费就会上升。好的一面,Layer 2 扩展解决方案偏向轻量存储和高计算量,似乎更有优势。

最后,随着 gas 上限提高,也会出现相同的安全担忧:糟糕情况影响大。本地优化 gas 成本达到当前操作的平均成本很危险。

这样就很清楚为何以太坊扩展性的问题这么棘手。在给出解决方案前,还需提及目前以太坊伤害 DeFi 用户的另一局限之处。

矿工牟利

区块打包者遵守共识规则。共识规则保证交易选择和排序等重要自由。对于普通代币转账,问题不大。但对交易所等 DeFi 交易,抢先交易就有很高经济价值。目标交易两面受攻击,便会出现更复杂的牟利行为。Daian 等人 (2019) 称之为「矿工牟利」 (miner extractable value)。

矿池似乎不会恶意使用自己的交易排序自由,但仍可以用其牟利。矿池有可能使用 Geth 按 gas 价格排序交易(参见 1、2)。这就会产生 gas 价格拍卖,最高竞价交易优先。这会造成不良影响,任何人都可以通过高竞价抢先交易。竞争交易者持续竞价让 gas 价格升高,直到交易利润完全抵消 gas 费。目前,所有牟利都会变为交易费落入矿工口袋。

其他情况下,恰好接着一笔交易会有价值,例如价格预言机更新后第一个清算仓位。这称为「back-running」,结果也是矿工获益。

大价差、价格偏离、高手续费及更多失败交易,最终会让 DeFi 用户受损,矿工牟利。要有更好的 DeFi 体验,这个问题就得解决。解决这个问题就要限制交易排序自由,例如要求一个区块内最低 gas 价格的交易优先。

现在已完全了解以太坊的局限,及其如何影响 DeFi。当然所有致力于扩展性的明星团队终将解决这个问题,对吧。

强化底层,着眼二层

有很多出众的团队致力于不同可扩展性解决方案。解决方案有两种:Layer 1 和 Layer 2。Layer 1 解决方案的目标是构建扩展性更好的以太坊,Layer 2 解决方案是要在以太坊的基础上构建更具可扩展性的基础设施。

从最明显的问题开始:提升现有以太坊的性能——这是 Eth1x 要做的事情。改进以太坊客户端性能,仍旧可以有很多提高。糟糕的是,Eth1x 几乎没有得到任何应有的支持,所有进展很慢。

要了解 Eth1x 可以达到何种性能,可以先来看看 Solana。Solona 吞吐量可达到以太坊千倍以上,还有提升空间。这种方法的主要劣势是,运行全节点的硬件要求很高。

多数其他解决方案都有三个共同点:

使用 WebAssembly 作为虚拟机,极简状态架构,和最重要的分片。目前以太坊上的所有交易都按序列执行。交易排序毫无疑问是区块链的关键。这种模式的缺点是,很难并行处理,所以投入更多资源也无法轻松解决可扩展性问题。这就是下一代区块链 Eth2.0 要解决的。

通过更改交易执行方式,让交易平行处理。将区块链分为多个松散连接的域,也就是称作「分片」的处理程序,来实现这一方案。一个分片内的交易仍旧按顺序排列,但分片之间是异步进行。这就允许所有分片平行运行,依分片数量扩展网络。

用以分离的域不一定与分片相匹配,同一个分片可以有多个域,甚至可以迁移域,达到负载平衡。如需深入了解分片技术,读者请浏览 Near 协议的「夜影」论文。

下一代区块链主链从哪里分为域何时分为域,视情况而定。第二代区块链可看作是从细粒化(众多微小域)到粗粒化(少量大域)光谱。

两个项目各占粒度光谱两边:Dfinity 在细粒度一端,每个代理人有自己的域,每次代理人交互都是异步。Near 协议细粒度化稍小,每个合约都有自己的域。粗粒度一端是波卡,其域是就是整个分片,这种情况称为「平行链」更准确。从 DApp 开发者角度判断以太坊 2.0 为时尚早。Eth1EE (Eth2 上的 Eth1 执行环境)将为粗粒度,有与分片一致的界限,目前的以太坊会成为一个分片。细粒度解决方案的优势是透明;合约间调用无论是否跨分片边界,都能看上去一样。这就进而允许在分片间移动合约来轻松平衡负载。

缺点是跨域交易不再是原子化,而是变成并行,其中部分不可撤销。Dfinity 和 Near 中显示合约间调用为 async,返回约定等待 await 。await 期间所有发生的交易都会写入链上。之后其他人的交易可以叠加之上。这时候之前的所有交易就不能撤销。await 最终确认后,可返回合约调用成功或失败指令。有多个提案避免这一情况,让跨分片获得一定原子化,但这样也有劣势。拥抱非原子化似乎是自然结果。

对于 DeFi,异步 transferFrom 调用构成很大挑战。设想双方进行简单交易,Alice 和 Bob 想要用 ETH 和 DAI 交易。基本合约应该是:

但现在我需要处理错误。如果第一次交易失败,我们可停止交易。如果第二次交易失败,就需要将 1 个 ETH 退给 Alice。问题是,这时 Bob 可能已经把那 1 个 ETH 花了。解决这个问题的一个方式就是托管。

这样就行了,没人会损失。但现在 Bob 就对 Alice 的交易有了专属自由选择权。Alice 的代币被托管,不会再进行其他交易,也尚未保证与 Bob 的交易一定会成功。解决这个问题可以对违规者惩罚。而 DeFi 交易会很贵,就难以确定多少惩罚额度合适。解决这个问题可以要求市场各方最开始都在一个存款合约存入资金托管。而这样又变成中心化状态,根本上就不需要分片了。

另一个需要注意的是,这些并发问题到底能多复杂。真实交易中,也有需要更新的序列填充状态 (fill-state of the order),这就让协议更加复杂。相比并发漏洞,困扰以太坊 1.0 的重入攻击漏洞便不足为奇。并发漏洞为不确定性,测试中也不会发生。从上述简单交易可知,要解决这个问题就需要重新思考基础架构,唯一可靠的方式就是打翻重来。

交易是 DeFi 构建的基础,是一系列处理程序。我们已知道交易所交易簿如何构成挑战。自动做市商交易所就较为简单,因为有托管储备金在,但储备金余额形成妨碍并行的瓶颈。即使最快的传统交易所,结算也没有并行(尽管会有冗余),在单一匹配引擎排序完成。如需详细了解传统交易所工作原理,Brian Nigito 的演讲非常棒。

这并不意味着这些问题无解。最简单的解决方案就是这些所有协议在每个分片部署独立的实例,让套利者保持彼此间同步。或许可以得到性能足够的单独同步分片纳入所有 DeFi 交易,这样就无需担心并发的问题。

本文深入探讨了以太坊扩展 DeFi 应用方面的局限性。如上所述,这问题复杂而不可一蹴而就。之后我们会撰写另外一篇文章探讨 Layer 2 特定解决方案,并演示 0x 自己的策略。

参考

Daniel Perez & Benjamin Livshits (2019). “Broken Metre: Attacking Resource Metering in EVM.”

Daian et al. (2019). “Flash Boys 2.0: Frontrunning, Transaction Reordering, and Consensus Instability in Decentralized Exchanges.”

Brian Nigito (2017). “How to Build an Exchange.”

Danny Ryan (2020). “The State of Eth2, June 2020.”

Scott Shapiro & William Villanueva (2020). “ETH 2 Phase 2 WIKI.”

Near Protocol sharding design

展开阅读全文

一文详解Filecoin项目交易Gas费原理

全文共 2369 字

+ 加入清单

引言

这篇文章深入探讨gas–收费的运作方式以及为什么它们对Filecoin网络稳定很重要。

Filecoin是区块链经济,参与者在分布式网络上进行交易。通过矿工在他们挖掘的区块中记录和处理消息来更新网络状态。网络中有多种消息需要打包存储,包括存储入库、存储交易正在进行的证明以及令牌交易等。

但是由于链性能、可伸缩性和验证时间所施加的约束条件,一个块中可以处理的消息数受到限制。这样在任何给定时间,网络上只有交易消息的子集可以使其成为一个块。

此外,执行消息会消耗网络上的计算和存储资源。在这里,“Gas”开始发挥作用,以衡量消息消耗的资源。消息消耗的Gas直接影响发送者将消息提交到区块链所支付的成本。并且一个块中所有消息的总用气量是有限的。

Gas可以被视为Filecoin区块链的燃料,就像汽车燃料一样。在进行公路旅行之前,您必须支付在行驶距离和为山上和下坡引擎供电时消耗的汽油。同样,Filecoin上的消息发送者要为“推动”或“推动” Filecoin区块链上的消息执行的Gas付费。

Filecoin如何使用Gas

Gas最初是在以太坊区块链上使用的,用于衡量消息消耗的计算和存储资源。这是短语“ GasUnit”的起源。从历史上看,在其他区块链中,矿工以本机货币指定GasFee,然后根据消息消耗的Gas向生产矿工的区块支付优先费用。

但是,Gas消耗是整个网络应承担的成本,因为网络上的每个节点都必须花费存储和计算资源来验证每条消息并保持网络的一致状态。这样,基于特定消息的Gas使用量,会燃烧一些Gas以补偿网络。不散布此成本会造成激励失调,因为成块生产的矿工可能会免费包含计算上昂贵的消息,而其他人则会为此付出代价。

BaseFee是以太坊的EIP1559引入的概念。一条消息的BaseFee乘以Gas使用量即被“燃烧”。刻录意味着将其发送到无法使用的地址,并从网络上的流通中删除。它会根据给定时刻对网络带宽的需求进行动态调整。当网络变得拥塞时,它会上升,从而使估值低于网络BaseFee的邮件发件人将保留并等待直到拥塞消除。BaseFee的变化速率旨在快速增加潜在的DOS攻击,并随着网络变得不那么繁忙而迅速降低。导致网络变得更加拥塞的消息发件人也将通过支付更高的费用来内部化成本。燃烧还会产生缓慢的通缩压力,使所有网络参与者受益。

回到我们的公路旅行类比中,考虑一下汽车中的天然气之类的天然气,以及正常交通中的网络。如果道路拥堵(例如在高峰时段),并且交通停走,您的汽车将消耗更多的汽油。在这种情况下,可能需要稍等片刻然后再开始旅行。相同的理论也适用于Filecoin网络-当网络流量拥塞时,Gas费将很高,因此等待稍后再试可能是有意义的。

除了烧掉一些费用以补偿网络之外,消息发送方还包括针对生产矿工的区块的优先级费用,该费用不受消息消耗的Gas量的束缚。这称为GasPremium,也可以在协议之外进行安排。

Gas使用指南

为了帮助读者更好地了解加油站收费机制,以下内容描述了消息的相关加油站概念及其相互作用。这些字段可以由消息发送者设置,但是目前在Lotus中是自动的,可以开发更多工具。

GasLimit– 消息发送者可以消耗,估计和指定的消息执行量的限制。块中包含的所有消息的GasLimit之和不得超过BlockGasLimit。这以GasUnit为单位。

GasUsage– 一条消息的执行实际消耗的气体量。当前协议不知道消息在执行之前将确切消耗多少Gas。这以GasUnit为单位。

GasFeeCap– 发件人愿意为每个GasUnit为在块中包含消息而支付的最大令牌数量。发送消息时,消息发送者的最低余额必须等于GasFeeCap乘以GasLimit的最低余额,即使并非所有余额都将被消耗掉。以attoFIL / GasUnit为单位。

GasPremium– 优先权费用,它按每单位GasLimit的价格支付给块状生产矿工。这受GasFeeCap的限制,BaseFee具有更高的优先级。这以attoFIL / GasUnit为单位,并且可以低至1 attoFIL / GasUnit。

BaseFee– 一个网络范围的变量,可以根据上一个技巧集中的所有消息的GasLimit之和动态调整。当总GasLimit超出某个块的GasLimit目标(信号网络拥塞)时,它将增加,而当低于此值时,它将减少。以attoFIL / GasUnit为单位。

消息发送者只需为每个消息指定一个GasFeeCap和GasLimit。随着链上资源的消耗,GasUsage乘以BaseFee将被燃烧。从GasFeeCap中减去BaseFee将产生GasPremium。GasPremium乘以GasLimit将作为优先费用进入生产矿工的区块。GasLimit和GasUsage之间的部分差异将作为高估损失而被消耗掉。其余的将返回给邮件发件人。

当前默认实现是矿工基于GasFeeCap / GasLimit选择消息,以在给定GasLimit的情况下最大化其预期收益。当网络拥堵且BaseFee很高时,矿工可以选择对包装进行装箱,从而减少GasLimit总量,以降低BaseFee,但可能以牺牲GasPremium为代价。

未来的工作

研究和工程团队正在努力减少不同链上消息的资源消耗,以减少Gas使用量并改善网络性能以增加容量。

但是,当前在Filecoin上有一些消息(SubmitWindowedPoSt)必须包含在相对较短的窗口内的链中,否则会产生罚款。为了改善经济结构并为这些类型的消息提供服务质量保证,正在做更多的工作。

Filecoin网络由客户,矿工,开发人员,合作伙伴和令牌持有者组成,将继续合作并将网络发展到更好的方向。请遵循Filecoin Lotus文档和Filecoin改进协议以进行将来的改进。

展开阅读全文

一文读懂Filecoin Gas费供需现状与超额燃烧

全文共 2735 字

+ 加入清单

最近gas费溢价很高,暴涨百万倍。交易信息量比上周增长100%,导致单笔手续费异常高。全网手续费由每天的数十枚FIL增长到3万多枚FIL。那么,按照目前平均每天17万枚FIL区块奖励和3万多枚FIL手续费的消耗,以及每天算力增长的抵押需求。

我们都知道,gas费对于BTC、ETH等区块链项目来说是不可或缺的。因为区块链本质是记账的过程,而网络的交易是由矿工来进行记账的,gas费是支付给矿工的记账酬劳。

因为区块链的应用是综合安全、性能和隐私性,但区块链项目很难同时满足“不可能三角”,也就意味着BTC、ETH在保证安全、隐私性能的前提下提高TPS。在不能直接提高TPS的情况下,网络交易笔数过多会直接导致网络拥堵,所以会一度出现高昂gas费的现象。在今年8月份defi盛行之际,每天花在以太坊gas费用就超过了17500 ETH。

一、Filecoin全网手续费突破3.5万FIL

根据UTC 11月8-14日数据统计,全网gas费逐步攀升,其中14日总手续费高达3.6万枚FIL。根据数据显示ProveCommitSector占比最高,占比超过总手续费50%以上,其次是PreCommitSector和SubmitWindowedPoSt占比15%-25%,其余占比不超过2%手续费。

Filecoin一周gas费变化曲线(UTC,成功交易),来源:IPFS原力区,2020-11-16

不仅如此,因为手续支付费过低导致信息上链失败也有不少,最高时一天因失败损失的FIL高达千枚以上。笔者认为,Filecoin手续费过高主要有以下因素:

近段时间算力增长过大,直接导致信息过多,网络上普遍信息高达1100万条以上,比上周增长超过了100%;

全网算力增长(UTC),来源:IPFS原力区,2020-11-17

根据Filecoin网络的设定限制,每30秒只能打包几百笔信息(根据信息大小),消息过多就会产生拥堵;

网络拥堵时,gas费用过高,矿工选择自行打包信息,导致网络上实际打包信息的矿工较少。

在高gas费情况下,矿工能够实现盈亏平衡?

二、杯水车薪的区块奖励

Gas费的上涨对矿工的区块奖励产生了间接影响,支出的提高需要区块奖励来弥补,那么矿工的收益如何?参考胡飞瞳近日在《再次闲聊 Filecoin 的 Gas 费用》文章分享的数据显示,可以得出几点:

来源:胡飞瞳《再次闲聊 Filecoin 的 Gas 费用》,2020-11-07

单T可释放每天维持1PiB的时空证明需要支付的手续费约为11.16枚FIL,单PiB一天的区块奖励为177枚FIL左右,25%直接释放为44枚,每天盈余约33枚FIL;

每PiB不引入外部FIL抵押,利用区块奖励做抵押,忽略其它信息打包,以ProveCommitSector和PreCommitSector手续费和抵押为主要费用,折合为0.1212+0.1223+0.09=0.3335枚FIL费用,忽略其他支付,33枚FIL每天只能做99TiB算力增长。

三、ETH EIP1559 VS Filecoin EIP1559

ETH EIP1559主要费用架构是基本费用+小费,其中基本费用主要是调整网络交易拥堵的基本费用,这块会被销毁;小费是相当于优先权费用,用户可以多出费用进行提高转账速度。

Filecoin主要是基于ETH EIP1559进行修改优化,其中主要调整有以下三点:

Filecoin网络不支持用户支付过高的费用进行优选“插队”,所以在Filecoin网络中,超过基本费用+小费gas费的部分会被直接销毁,而ETH网络则会返还该部分;

“不该打包交易”即是发出交易的人无法顺利支付矿工费,而矿工已完成打包交易,针对该部分Filecoin网络会针对矿工进行三倍该费用的惩罚。通过该措施,让矿工来监督“不该打包交易”,而这也是Filecoin网络独创的。

对于Filecoin网络,失败的交易也需要扣除失败费用。

Filecoin燃油费由三部分组成:基本费用、小费和超额燃油费,这次我们聊一下超额燃烧费(EstimateMessage Gas)。

超额燃油费(EstimateMessage Gas)

我们都知道ETH中的 Gas Limit 可以设置的非常大,当过大的时候,ETH上多余的Gas费用会全数返还,但Filecoin 并不是这样。因为Filecoin的 Gas Limit 参与了 Base Fee 和 Gas Premium 的计算,Gas Limit参考真实转账情况变得尤为重要。如果一个交易,设置了不合理的 Gas Limit,Filecoin 采取了一种惩罚机制。

对此Filecoin为gas设定了一个指标over,主要是为了避免使用过大的燃烧,其中Over=Gas Limit-11/10*Gas Used。

来源:Filecoin GitHub,2020-11-17

当Over<0时,Gas Limit/Gas Used<1.1,需要扣除手续费:(Gas Limit-Gas Used)*Base Fee。

当Over>Gas Used时,Gas Limit/Gas Used<2.1,Over=Gas Used,那么Base Fee为((Gas Limit-Gas Used)*over)/Gas Used*Base Fee=(Gas Limit-Gas Used)*Base Fee。

当0≤Over≦Gas Used时,1.1≤Gas Limit/Gas Used≤2.1,基本费用计算公式为((Gas Limit-Gas Used)*over)/Gas Used*Base Fee。

由上可知1.1≤Gas Limit/Gas Used≤2.1较为合理,即是1.1-2.1倍较为合理的。

四、困兽之境,原地踏步?

总的来说,因为手续费过于高昂,直接导致矿工在一定程度上难以实现算力顺利增长。目前矿工可以选择在低gas费期间进行算力增长或者自行打包信息交易,但不适合长期发展。不过对于技术层面,胡飞瞳提出三点可改进算法:

允许成批提交 PreCommitSector 消息,通过合并消息,减少Gas消耗;

增大Sector Size(挖矿设备可能会受影响)

提升Gas Limit和计算的上限(要求大家有更好的设备和网络)

最后,希望投资者们能够携手与矿工一起共渡这次的gas难关!

Gas Used:每一笔交易实际消耗的 Gas 值。Gas Limit:对一笔交易 Gas 消耗的预估限制值,意味着该交易可消耗的上限值。Base Fee:即基础费,这个值由链上的交易拥堵情况决定,会根据实际网络状况上下波动,用户无法手动调节。Base Fee 越高代表区块利用率越高,也就是单个区块内包含的交易数据越多。Gas Premium:即小费汇率值,在网络拥堵的情况下,可以通过支付小费,激励交易被尽快打包。

展开阅读全文

如何核算Filecoin网络上的Gas费

全文共 3050 字

+ 加入清单

之前撰写了一篇《一文读懂Filecoingas费供需现状与超额燃烧》文章,收到一些用户的反馈。基于有部分用户不太理解如何运用该公式,这次我们分享一下如何一步步核算Gas费,从矿工的角度来看如何支付Gas比较适合,避免转账失败或迟到账的情况。

首先我们先回顾下Filecoin网络的近况。

1)居高不下的信息数量超过100万

信息数量过多是导致网络拥堵的直接原因,其本质是Filecoin网络TPS不足,每个区块只能够完成几百笔信息的打包,间接影响了Block Gas Limit。

(图一)11月14日-12月13日Filecoin信息数量,来源:IPFS原力区,2020-12-15

假如一个区块的Block Gas Limit只能容纳100箱子,市场上五个矿工分别有10、20、30、40、50(Gas Limit)个箱子需要打包运输,因区块只能打包不超过100的数量。那么在这个区块只能装(10+20+30+40)或者(40+50)。

那么大家会问,能否提高区块的容纳量?目前来说很难实现,主要从安全性和经济收益说起。

安全性。我们都知道“蒙代尔不可能三角定律”:效率、安全性和“去中心化”无法同时实现。在目前技术水平上,升级其中一个指标不可避免地牺牲其他两个指标。假如提高TPS,很多数据不能及时上传的话,会逐步削弱去中心化的性能,在影响去中心化的同时也影响着网络的共识和安全性。

经济收益。假如提高区块链的容纳量,就会导致很多信息延迟上传,就容易出现空块或者孤块,降低矿工收益。即便是延长区块时间,Filecoin网络原本每日2880高度,减少每日产块无疑是减少区块奖励。所以从经济收益角度上看,扩大容纳量会降低矿工的收益。

从安全和经济收益角度看,目前尚未有一种可直接降低Gas的策略,不过最近官方也提及到FIP-08提案聚合提交PreCommitSector 消息,通过合并消息降低网络拥堵,减少Gas消耗;还有一种提高TPS但是不失安全性的方式,即是扩容区块,从而实现Block Gas Limit上限的提升,同时提高矿工硬件的性能,继续投入新的硬件,这种方式对矿工来说不太友好。

2)Gas费=基本燃烧费(BaseToBurn)+小费(Miner Fee)+超额燃烧费(OverEstimateToBurn)

之前超额燃烧文章有提及过,协议实验室官方不太提倡使用过高的Gas费,所以会对超额的部分做一些惩罚,即是超额燃烧费。下文,我们以某一Gas费为例子,展开计算说明。

(图二),来源:filfox.info,2020-12-14

小费(Miner Fee)

当 BaseFee + GasPremium >GasFeeCap,Miner Fee=Gas Limit*(GasFeeCap-BaseFee)

当 BaseFee + GasPremium ≤GasFeeCap,Miner Fee=Gas Limit*GasPremium

BaseFee、GasPremium和GasFeeCap分别是三种费率,BaseFee针对基本燃烧费,GasPremium针对小费费率,GasFeeCap针对总的支付费率。官方对小费设定了一个参数,主要是为了让GasFeeCap与两者的关系BaseFee + GasPremium,尽可能地支付更少的小费。

目前按市场上的消息小费都是BaseFee + GasPremium ≤GasFeeCap,即是Miner Fee=Gas Limit*GasPremium,代入上图数据得出

Miner Fee=439951486*1*10-9=0.439951486nanoFIL

因为图二的Burn Fee是包含基本燃烧费和超额燃烧费,所以我们需要计算出两个值。

基本燃烧费(BaseToBurn)

我们都知道BaseToBurn=Base Fee*Gas Used,代入图二数据计算得

BaseToBurn=3.914244846*352018389*10-9=1.37788616484047FIL

超额燃烧费(OverEstimateToBurn)

对于超额燃烧费Filecoin为gas设定了一个指标Over,主要是为了避免使用过高的Gas费,其中Over=Gas Limit-11/10*Gas Used。

(图三)Over指标,来源:IPFS原力区,2020-12-15

根据之前文章的内容可知,整理后,我们需要得知Gas Limit/Gas Used的范围。图三是我们整理了11月14日-12月14日的Gas Limit/Gas Used,大多数都是在1.2-1.3范围内,所以可用以下公式。

(图三)《一文读懂Filecoin Gas费供需现状与超额燃烧》,来源:IPFS原力区,2020-11-08

以上图二的数据为例,先求得Gas Limit/Gas Used=439951486/352018389=1.24979688490081,符合图三条件,代入Over求得超额燃烧费

代入以上求出的OverEstimateToBurn和BaseToBurn,Burn Fee=OverEstimateToBurn+BaseToBurn=0.0515588402332158+1.37788616484047=1.4294450050FIL,即是图二的Burn Fee费用。

所以实际总支付的Gas费为OverEstimateToBurn+BaseToBurn+Miner Fee,多余的部分会被退回去。

3)如何设定费用能驱动矿工打包?

矿工打包两个主要步骤:检查Gas Fee Cap是否比目前Base Fee大,以及Gas Premium是否足够大。

Gas Fee Cap是否比目前Base Fee大。因为Gas Fee Cap是用户能支付的最大费率,假如费率过低会三倍惩罚矿工。例如,本来一笔转账用户需要支付10元,但是用户填写了最大能支付9元,但是矿工由于忽略打包完成了,差额1元需要矿工支付,同时还要额外2倍惩罚,即2元,所以总的来说差额部分会对矿工造成三倍惩罚(3元)。因为现在一天信息超过百万条,矿工有可能会因为忽略了这一点造成严重的FIL惩罚。

确保了信息可以打包后,矿工需要权衡自己的利益是否最大?

Gas Premium是否足够大。这块主要是涉及矿工的利益,Gas Premium越大矿工获得手续费会较多(当BaseFee + GasPremium ≤GasFeeCap时),因为Miner Fee=Gas Limit*GasPremium,即使矿工获得利益最大。否则就会如图二的数据,Gas Fee Cap为19.57nanoFIL很大,但是Gas Premium为1 attoFIL,实际给到矿工的利益很小,市场行为就会延后打包。

所以用户需要快速转账时,需要先确保Gas Fee Cap是否比Base Fee大,以及Gas Premium是否足够大,这样才能确保转账被即使执行。

该以上建议适合用户使用,对于矿工仅供参考。因为矿工每日需要打包信息较多,需要更为精密的计算才能保障Gas费的合理使用,由于过于复杂,不在此展开。

本文主要为用户解答一些问题,虽然Filecoin网络过于拥堵,导致矿工无法顺利增长算力。但是笔者相信随着FIP提案优化,机制或者技术会逐步解决Gas费高昂的问题。

因为Filecoin的夙愿是成为Web 3.0的基建,未来道阻且长,希望众投资者耐心等候。

展开阅读全文

一文详解什么是矿工费Gas Fee?

全文共 749 字

+ 加入清单

简单来说,矿工费(gasFee)就是支付给矿工的手续费,当你在以太坊区块链上进行转账时,矿工要把你的交易打包并放上区块链,才能使交易完成,在这过程中会消耗区块链的运算资源,所以要支付费用。

Gas Fee由Gas Limit(限制) 和 Gas Price(价格) 相乘得到。

不同时期、不同的操作gas limit默认值不同,而在执行操作时可以自行设置Gas Limit。需要注意的是,完成一笔交易所需的Gas 单位数量,取决于交易的复杂程度。当一笔交易越复杂,就必须要耗费较多的运算资源,因此需要花费较多Gas。

Gas Price是指Gwei的数量,它会影响到你的交易被矿工打包放上区块链的速度。如果Gas Price 设的越高,就会让给矿工更有动力将你的交易打包;相反的,如果Gas Price 设的低就要等待比较长的时间。如果不急着完成一笔交易,你就可以选择较低的Gas Price 来省钱。在每次的交易中,你都可以依照需求调整Gas Limit和Gas Price。

这里还有一些关于转账和打包的常见问题解答:

1. 交易一直显示打包(Pending)中,可以取消吗?

区块链上的交易一旦发出,就无法修改或取消。如果你急于资产到账,可以选择加速交易,追加矿工费让交易尽快打包。

2. 发起了几笔交易,为什么都没有成功?

如果你有一笔交易处于等待打包,没有成功的状态,那么后续发起的多笔交易就会排队等待打包。对于同一个地址发起的交易来说,矿工需要按照交易发起的先后顺序进行打包。当第一笔交易成功后,才会轮到后续的几笔交易。

3. 交易打包失败后,我的资产会消失吗?

只有交易成功后,代币才会从你的地址中扣除。如果在转账时矿工费设置得过低,导致交易被矿工丢弃,也就是打包失败的情况,代币依然会留在你的地址中。

展开阅读全文

详解V神新提案:为什么EIP-3298能降低Gas费?

全文共 1477 字

+ 加入清单

据 GitHub 显示,2 月 28 日 Vitalik 已更新 EIP 3298提案,提案内容为在伦敦升级中移除「执行 SELFDESTRUCT 获得gas费退款」的规则。虽然该提案至少要等到 7 月才有望执行,但 Gas 费周末的确有所下降,截止发稿时,Gas 费平均水平在 76 gwei 左右。据律动此前报道,伦敦升级将在 7 月中旬左右执行。

那么 SELFDESTRUCT 是什么?

自毁操作 SELFDESTRUCT(EIP6 之前称为 suicide)的功能是允许人们通过删除旧的或者未使用的合约来清理区块链,该操作系统会提供 gas 退款,励用户删除存储状态的方式释放资源,删除智能合约并不会清除合约之前历史的交易记录,区块链本身并不可改变。

Twitter ID 为@n2ckchong的交易员Nick Chong进一步解释了 SELFDESTRUCT 是如何影响了 Gas 费用,并且为何在 V 神更新提案后,Gas 费大幅下滑。律动将 Nick Chong 推文整理并翻译如下:

当前每个在以太坊上的交易都需要 Gas 费用。而通常交易越复杂,交易消耗的 Gas 费就越多。而 SELFDESTRUCT 是 EVM 级别的操作码,可将合约的余额发送到「地址」。它的独特之处还在于,执行操作码会直接销毁合约,但 EVM 实际上会退还给用户一些手续费用,以消除状态膨胀,从而帮助节点管理状态(State)大小。

这听起来可能并不有趣,但一些聪明的开发者意识到,你可以通过在 Gas 价格低廉时在合约中储存 Gas 费用,将廉价的状态空间保持下去。

存储的方式简单来说就是,在 Gas 费便宜的时候铸造或者购买 Gas 费代币,比如 GST 和 1inch 团队推出的 CHI,然后在 Gas 费波动的时候通过销毁这些代币实现收益。

律动注:Gas 代币将 Gas 费通证化为一个 ERC20 Token,允许用户直接买卖,或者作为将来使用 gas 的预付费。在 Gas 价格便宜时用户可适当购买、储存,然后在 gas 价格高涨时可以使用。

具体而言,在 Gas 价格较低时,Gas 代币鼓励用户到合约中创建或铸造代币 GST1/GST2,此时 Gas 代币将用用户提供的资金以较低的费用存储数据/创建合约。待 Gas 价格暴涨时,用户可以使用或消耗 GST1/GST2,Gas 代币便通过删除数据或合约(也就是 SELFDESTRUCT)的方式,获得网络奖励或者称 gas 退款,由此实现以较低的价格消耗 Gas。

这也就解释了为什么很多在以太坊浏览器 Etherscan 上的套利交易,在查看交易细节之前都会有「自毁合约 0x…」的提示。

这种方式很聪明。

当一个运行中的套利机器人每天花费价值数千美元的以太坊交易费时,随着时间的推移,他们通过使用 Gas 代币节约手续费用可以省下来不少钱呢。

一些人认为,Gas 代币的存在导致了相当大的状态膨胀,因为当 Gas 币还便宜的时候,以太坊节点中注入了很多「无意义的」合约。通过增加状态膨胀,叔块的比率可能会增加。

以上大概就是为何 Vitalik 昨天建议在伦敦升级中取消 SELFDESTRUCT 的 Gas 退款规则。

不管怎么说,还是感谢 V 神的这个提议,在这个提议发出之后,Gas 费用大幅下滑,回到了较为正常的水平。而 Gas 费代币 CHI 和 GST 代币价格也出现了跳水:CHI 价格下降了 40%,GST 下降了 30%。

而一旦提案正式执行,这些代币可能很快就会变得无用,因此可能没有任何诱因让用户铸造 CHI 或 GST。

展开阅读全文

以太坊网络中Gas、GasLimit和GasPrice分别是什么意思?

全文共 584 字

+ 加入清单

gas是什么?

Gas 在以太坊 EVM 内部,计算网络当中的工作量。

Gas是以太坊网络中的燃料,为以太坊网络正常运行提供动力。不管是以太坊用户和开发者,Gas必不可少。

Gas出现在以太坊中的每一个角落,每一个在以太坊中的操作所需的 Gas 数量消耗都是确定的。

比如部署 NEST 预言机报价合约的用户需要支付一定的 Gas 费,去执行这笔交易,而 Gas 就是以太坊系统向用户收取的手续费。这笔交易费用需要通过以太坊的方式支付。

GasLimit又是什么?

GasLimit 重点在于最大值,这是以太坊用户愿意为执行交易所支付的最大 Gas 数量。

这个最大值是需要适当设置的。GasLimit 设置过低,就会影响交易逻辑进行,交易可能就会失败。Gas 费用依旧会被收取,该费用作为奖励发放给打包这个区块的矿工。

如果过高,那么对于以太坊网络当中,处理交易量的数目将会比较庞大。如果没有到你的GasLimit,那么打包将会成功,未用完的 Gas 会退还到交易发起地址。

GasPrice是单个交易需要的资金,单位是 Gwei 。

一般而言,1 ETH = 1,000,000,000 Gwei

如果你想要在交易网络当中更快实现交易,那么你需要提高你的 GasPrice 数值,优先完成打包,不然如果这个值设置得比较低,那么交易将会长时间处于 pending 状态,延缓打包进度。

展开阅读全文

以太坊网络计划推出第二种gas

全文共 632 字

+ 加入清单

以太坊开发者最近提出,可以为以太坊网络注入新的gas,并与目前燃料(gas)并轨运行。

以太坊2.0将会在今年推出,工作量证明(PoS)共识将会向权益证明(PoS)共识进行转变。

“石油”润滑以太坊的发展“齿轮”

最近关于以太坊网络当中第二种燃料的提案正在被推出,Alexey Akhunov(@realLedgerwatch)在推文中发布了该提案。

作为我们提到的gas,主要的作用是1.支付计算和存储资源的费用,2.通过严格限制一次调用所可以使用的gas数量来防止重入。

以太坊基金会技术作家格里芬·霍奇基斯(Griffin Hotchkiss)建议“石油(oil,这种燃料被建议使用的名字)”与gas平行运行。

Akhunov 阐述;

“作为无状态以太坊研究的一部分,这已经成为现实,这是认识到需要支付见证人费用的一部分,但是调整gas成本可能是一个非常痛苦的方法。 相反,开发者更愿意调整oil成本。”

该提案中包含了有关这种新燃料如何与gas协同工作的规范和示例。 Akhunov补充说,oil主要是取代gas的主要交易目的,次要目的才是取代现有的gas。

解决向后兼容性问题

未来几个月内,许多解决方案将会出现,用于解决向后兼容性的问题,这个新燃料提案便是其中之一。 当新的ETH 2.0区块链在主网上上线时,为ETH 1.0编写的智能合约将出现兼容性问题。

本质上,当这些阶段推出时,将需要为新链及其侧链(分片)重新编写它们。 使用第二种燃料可以缓解一些可能会出现的问题。

展开阅读全文

矿工费、gas分别是什么?

全文共 610 字

+ 加入清单

最近比特币减半让矿工费用占到区块奖励总值的20%左右,那么矿工交易费用是什么呢?

其实矿工费就是矿工验证打包交易纪录和维护整个区块链网络产生的手续费用。

一般来说矿工费用是以gas作为计算单位的,如果向矿工支付矿工费就和转账的方式是一样的,需要把加密货币打到对应的账户上面。

什么是 Gas?

Gas 就是矿工在执行程式码时,实际运算了几步。运算越简单,所要求的 Gas 就较低;反之Gas 消耗量就大,交易费用也就高。

如何计算矿工费(交易费用)?

Transaction Fees 交易费用 = Gas Limit * Gas Price

Gas Limit:愿意最多给到多少 Gas 去完成此笔交易

如果交易尚未完成,消耗的 Gas 已经超过设定的 Gas Limit,此笔交易就会被取消,而已经被消耗的手续费同样会被作为矿工的奖励。如果交易已经完成,消耗的 Gas 并未触及 Gas Limit,此时只有实际被消耗的部分,会转换成手续费支付给矿工。

Gas Price:愿意为每单位 Gas 支付多少 Eth 给以太坊区块链的矿工帮你验证此笔交易

我们实际在 Ethereum BlockChain Explorer and Search 摘取其中一笔交易,此笔交易实际支付为 21000 Gas * 0.000000001 Ether = 0.000021 Ether,只会扣除实际用掉的部分,未消耗的 Gas 就不会被收取费用。

展开阅读全文