Hi 游客

更多精彩,请登录!

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

+ |4 U8 @, v+ c$ f8 x以太坊的运行环境,也被称为以太坊虚拟机(EVM)。
$ ~: e. b' N2 k7 K. J. p  ^5 [每个参与到网络的节点,都会运行EVM,作为区块验证协议的一部分。每个网络中的全节点,都会进行相同的计算并储存相同的值。6 W- p* j3 {/ {
这也就是我们常说的,区块链的分布式存储。, U! n/ A/ M* {1 G; ~
' R9 [8 p% }7 A3 h2 r1 w
合约执行会在所有节点中被多次重复,而且任何人都可以发布执行合约。
9 G" c2 V+ \, ^+ r这导致了一个结果:合约执行的消耗非常昂贵。3 z* a6 F+ y0 H, x: m$ O7 o: \0 d# ]
; Z' E& o' a& g  W# @
为了防止以太坊网络发生蓄意攻击或滥用的现象,以太坊协议规定交易或合约调用的每个运算步骤,都需要收费。
& ?* ?, J( g, J( j. i& y& U1 ]这笔费用以Gas作为单位计数,也就是俗称的燃料。
$ M9 O3 F- {8 m! C' O: ]以太坊交易的基本概念
3 K% r; v/ |( y"交易"这个术语,在传统经济学领域里,一般被理解为“物物兑换”或者是“钱物兑换”。# \. h) A; b% _6 g) H
在以太坊里,最直观的理解就是:从一个账户发送到区块链上的另一个账户,包含消息和签名的数据包。& e3 I6 a- {7 u! ?7 i
包含如下内容:
: {3 j! b) N6 h5 a& c' l& U7 d发送者的签名
, d7 z) [$ i* U, t$ N接收的地址' z8 X% A# s( |
转移的数字货币数量等内容
7 E+ x- X' ?" |; M% R; v& e4 @/ Q这些内容,我们可以通过查看转账交易,能得到相应信息,后文将说明查看方法。
/ V, E9 O6 }& sETH 有非常多的计量单位:Finney,Szabo,Gwei,Mwei,Kwei 和 Wei,其中人们常用的单位是Gwei。' D7 G  N, B8 L( p. s
Wei是最小的 ETH 单位。5 K2 y3 P/ |, `* e) P, V# z
详细换算表见下图。
. @4 N# k/ ?% C2 c# @
) ]! g% y' p1 x+ O/ j; Y: C汇率:1Ether=10^18wei
2 b5 ~7 ~  R+ ]$ P$ y' v+ k% L具体的汇率查询,可以查看以下网站:
! g! G, q/ U- Shttps://jin10086.github.io/etherconverter/
# ?- Z2 k/ s4 x( R: b0 l! }% V计算交易费用前,我们需要先了解两个名词的含义:
7 k. o, _! c7 G0 z: l1 _GasLimit值% ]. x& T) U2 J  p* m; E
这代表了这个交易的执行最多被允许使用的计算步骤,一般使用默认值即可,无需调整。; N0 Z$ N$ V1 N' n- T. C
5 U" Y& V4 Q$ m! ?! I
GasPrice值
* j. Z' |9 n# U( E" e" Z5 W" m代表了交易发送者愿意支付的gas费用,可以自行设置。支付的费用越多,打包速度越高。& ?, [- Y& p  v2 u- B& }
交易费用如何计算
1 y+ y* p* L* L- |计算交易费用有一个公式:Gas= Gas limit(限制)* Gas Price(价格)
- V3 e$ v1 b! B8 l1 j4 I以下图为例,如果想要普通和低速,设置1.5-1.6的gas费就可以了,如果想要高速在2分钟之内被打包,那需要给到近2倍的价格—3。
+ x6 N2 W) l, l. M每次交易之前,可以查询以下网站来确认需要设置的Gasprice:( H( b- h# S- }! N
https://ethgasstation.info/8 W5 ~8 a5 F5 d, v5 Z
0 E! F6 E& v/ L2 H- m% K0 ?
任何交易都需要消耗Gas,但是交易失败会扣除较少的费用。- C; A% @& ^' j& |& _1 g
例如下面这比交易,设置的是153Gwei,Gas limit40000  U- r7 p( d; [, O8 P
, r( X1 ~) A: N: u1 Y$ O5 \
若交易成功,最大扣除费用是153*40000=0.062Ether。
( V) }! H0 t! I2 }  W& j若交易失败,实际扣除的是0.003697398 Ether。
- O6 K( @' D9 P1 d3 y
) x& z; L0 W4 f9 C" u6 q如何查询你的交易
. @4 a! c+ d# o5 Y5 k无论是在任何钱包进行交易,每笔交易都会产出一个TxHash,6 t5 C6 V  l/ n& G
你可以在https://etherscan.io,查询你的交易状态,
: F# ~- v/ Z3 K7 W+ a1 c2 [以metamask上为例,下图是交易的记录
2 S# t+ _% b) J! G2 n
6 k2 |3 N3 l" @8 l随意点击一笔交易记录,可以查看该交易的状态。" l2 n8 y/ ^" ^7 {
状态有pending,success,faild三种,pending就是正在确认中,success已经成功,faild就是失败,
$ w% F# j* L8 d+ w5 E' j
7 r; z/ V/ {2 e+ p1 J- t& W* s. g
7 i0 f0 G- m* i. w论哪种转态都会扣除一定的燃油费,在实际支付的燃油费中可以查看。
1 s# p7 u" M# V4 }: O  y6 H上图是每笔交易数据的图片详细解析,参照这个说明,你可以了解到任意一笔转账的具体信息。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

成为第一个吐槽的人

盖世英雄16 小学生
  • 粉丝

    0

  • 关注

    0

  • 主题

    7