美文网首页金马带你定投区块链区块链研习社程序员
以太坊技术黄皮书学习笔记10:gas和支付

以太坊技术黄皮书学习笔记10:gas和支付

作者: 西二旗李老师 | 来源:发表于2018-05-16 15:43 被阅读19次

以太坊曾经发生过这样的攻击,就是通过不断的转移额度非常小的帐目,使得整个网络瘫痪,当时交易的费用非常低,可以忽略不计,因此以太坊引入了gas的概念,任何转账以及智能合约的执行,都要消耗一定的费用即gas,如果gas消耗完毕,则代码不再继续执行,这样防止恶意代码的for循环不停的执行,以至于整个网络无法继续向下一个状态迁移。因此我们知道任何计算,存储都是需要付出成本的,这样杜绝恶意攻击代码。以太坊为每一个代码功能都定义了成本,具体成本如下:

每一个交易都可以定义gasLimit和gasPrice,其中gasLimit是通过系统计算出来的,表示该交易需要消耗的指令的最高成本,如果超过这个成本还没有执行结束,说明系统出现问题,就不再继续往下执行。gasPrice是用户可以为每一个指令指定较高的价格,以Wei为单位,指定这个目的是,激励旷工更快的将自己的交易打包到区块链上,这样越早被打包,就越快完成交易。

Tp表示交易的gasPrice,Tg表示交易的gasLimit。旷工们会从交易池中寻找那些gas价格高,指令数量多的叫Tx来打包,这样他们得到收益自然就会变多。每个新打包的区块B,其区块头信息都包含Hc即beneficiary字段,该字段就是将区块打包成功的旷工的地址,所有消耗的gas都会转移的旷工的账号下。

如果在将交易打包的过程中,gas没有全部消耗完,还剩下了一部分gas,那么这个gas就会打回到支付gas的账号下面。

这一章节的内容比较简单,没有更多的细节可以讨论。

相关文章

网友评论

    本文标题:以太坊技术黄皮书学习笔记10:gas和支付

    本文链接:https://www.haomeiwen.com/subject/xynpdftx.html