Hi 游客

更多精彩,请登录!

比特池塘 区块链技术 正文
币圈或者链圈的人可能对Gas都不陌生,但是即使自己在转账的时候会自然而然地用到它,但大家对其的认识也可能只停留在转账确认需要消耗的费用,那么,Gas到底是个什么东西,一笔转账到底是如何进行的?本文来自dapdap区块链,读完你可能就会对Gas有一个相对全面的认识。9 t' E' r" Z1 S7 T% d' v, C# A7 O

) R; E& m$ E. |) N) ]- j* u( x4 \以太坊的运行环境,也被称为以太坊虚拟机(EVM)。  O5 `( R: D: k
每个参与到网络的节点,都会运行EVM,作为区块验证协议的一部分。每个网络中的全节点,都会进行相同的计算并储存相同的值。5 I; ?% ^0 u/ }& {
这也就是我们常说的,区块链的分布式存储。
! V% K7 i9 [" q
1 J2 l' W& p! u( P* n合约执行会在所有节点中被多次重复,而且任何人都可以发布执行合约。8 n  i6 h( y$ d6 `
这导致了一个结果:合约执行的消耗非常昂贵。3 ]  h: x' s% p1 u
. h/ H- ], s6 w: {* t  t
为了防止以太坊网络发生蓄意攻击或滥用的现象,以太坊协议规定交易或合约调用的每个运算步骤,都需要收费。9 k+ T0 v- N8 d' Q% k+ p5 w) W
这笔费用以Gas作为单位计数,也就是俗称的燃料。( ~" r# a( t' ~1 P2 a& a
以太坊交易的基本概念
' r% V- z  c$ u# S"交易"这个术语,在传统经济学领域里,一般被理解为“物物兑换”或者是“钱物兑换”。* x. ^' m6 Z5 `5 i: K2 }/ M0 D
在以太坊里,最直观的理解就是:从一个账户发送到区块链上的另一个账户,包含消息和签名的数据包。
  A% @# d1 Z7 g/ C2 ?包含如下内容:
4 t) x# V$ {, x2 W7 a, T. G3 ^发送者的签名
$ |* U- Z, _& M+ H; v接收的地址
3 K& ^% U; U, J9 P; j转移的数字货币数量等内容
6 ^. Z( L: s! K+ i, s这些内容,我们可以通过查看转账交易,能得到相应信息,后文将说明查看方法。
( F, }# `( `$ e5 Y' v0 M' V% m' @) ~ETH 有非常多的计量单位:Finney,Szabo,Gwei,Mwei,Kwei 和 Wei,其中人们常用的单位是Gwei。  _  T1 c3 g5 U) ?
Wei是最小的 ETH 单位。6 F! y/ b* ?( }
详细换算表见下图。8 N2 J' F, y3 K* V7 h4 y& E
' O: ?9 D- t) b
汇率:1Ether=10^18wei* K3 a3 e/ N7 F
具体的汇率查询,可以查看以下网站:$ x. F8 h+ I, y
https://jin10086.github.io/etherconverter/: d: ]( S& H' L4 S1 m; g* X' D
计算交易费用前,我们需要先了解两个名词的含义:  t; V0 d5 q- }  k
GasLimit值
3 L3 Q/ G+ _/ ]6 E  D/ B这代表了这个交易的执行最多被允许使用的计算步骤,一般使用默认值即可,无需调整。' q* P! T. B! A/ j6 M3 N( Z
7 @: }; Y3 O+ e5 A) ^# ?
GasPrice值
# J1 a" j: M. ?, O8 K3 I9 x* p代表了交易发送者愿意支付的gas费用,可以自行设置。支付的费用越多,打包速度越高。+ R9 _+ V/ N# X
交易费用如何计算
$ f, Z- F# h) ^3 T5 ^9 X8 W# G计算交易费用有一个公式:Gas= Gas limit(限制)* Gas Price(价格)8 r8 S2 n& _. _; r/ o* A
以下图为例,如果想要普通和低速,设置1.5-1.6的gas费就可以了,如果想要高速在2分钟之内被打包,那需要给到近2倍的价格—3。
6 ]; a8 ]6 s8 Q( @  h% F) J每次交易之前,可以查询以下网站来确认需要设置的Gasprice:3 o' G  w+ T' A. m7 l  g* Z  @
https://ethgasstation.info/# `1 x2 B. R% Y5 V- m# m* A
/ F/ q) s  Y5 \' {
任何交易都需要消耗Gas,但是交易失败会扣除较少的费用。. q4 q: Z7 I6 ]/ C9 D
例如下面这比交易,设置的是153Gwei,Gas limit400001 E4 h% m3 ?# O$ [

  r3 u6 ]; I( ^& h5 F1 W若交易成功,最大扣除费用是153*40000=0.062Ether。+ q" z$ B+ P5 p) G5 }; @4 j, G
若交易失败,实际扣除的是0.003697398 Ether。
0 n' y& K4 j  F5 f. o; k: d* a9 A+ y1 l$ z
如何查询你的交易
) W. R- r9 m% c; ?% Z无论是在任何钱包进行交易,每笔交易都会产出一个TxHash,
/ N0 S4 e+ w) c你可以在https://etherscan.io,查询你的交易状态,
! Z7 U; M+ D! \以metamask上为例,下图是交易的记录
  R2 c" {. h4 t; n; j# t0 [+ y
& @( X/ V& p1 n0 T" y& Q随意点击一笔交易记录,可以查看该交易的状态。% Z# K7 z  d; X! P4 N' _* `  s
状态有pending,success,faild三种,pending就是正在确认中,success已经成功,faild就是失败,
" M  U3 i9 F" J1 U! H0 `& {+ b
) q0 S" i1 ?1 `+ o1 p: d, W5 S5 T; E6 ]* P
论哪种转态都会扣除一定的燃油费,在实际支付的燃油费中可以查看。
5 F$ X6 N/ p: ]& u, V上图是每笔交易数据的图片详细解析,参照这个说明,你可以了解到任意一笔转账的具体信息。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

成为第一个吐槽的人

盖世英雄16 小学生
  • 粉丝

    0

  • 关注

    0

  • 主题

    7