【翻译】Ethereum以太坊的“gas”是什么?设计原理是怎么样的?

最近看到一个把gas解释的不错的帖子,所以就翻译过来了。翻译辛苦,请勿转载。

Gas是一种特别的单位用于Ethereum(以太坊)里,它用来衡量一个行为或者一系列行为有多少“工作量”,简单可以理解为是手续交易手续费的一种计量单位。

例如:

计算一个Keccak256加密哈希值,Ethereum平台上的交易或合同执行的每个操作都需要一定数量的gas,每次计算散列时将需要30个gas,加上每256位的6个gas的成本 数据被散列。与需要较少计算资源的操作相比,越多计算资源的操作需要更多的gas成本。

Gas确保一个交易支付了适当的费用给以太网络,它显得非常重要。 执行的每个操作(或合同执行)交易都要求支付其相应的费用,这样才能确保网络不会因为进行大量密集的工作而陷入僵局。

这是一个不同于比特币交易费用的策略,比特币交易费用仅基于交易的千字节大小。 由于Ethereum允许运行任意复杂的计算机代码,所以很短的代码实际上可以导致大量的计算工作正在完成。 因此,直接衡量工作非常重要,而不是仅仅根据交易或合同的长度选择费用。

那么如果gas基本上是一笔交易的手续费,那么该怎么支付呢?

这里有个有个很难理解的地方,虽然gas是可以被衡量的单位,但gas没有任何实际的标记(token)。也就是说,你不能拥有1000个gas,gas只存在于Ethereum虚拟机的内部,作为执行多少工作的计算数量。关于gas的实际支付场景中,交易手续费以一定数量的ether 作为支付,Ethereum网络中的内置机制(token)中,矿工挖矿生成区块的奖励。

初看这个会觉得有点奇怪。 为何不直接在以太网络中计算出手续费?

答案是,以太网络,如比特币,拥有快速变化市场价格!但计算成本不会因为以太网络币价的变化而上涨或下降。 所以将计算的价格与以太币token的价格分开是有帮助的,每次币价市场走动时,操作的成本都不必改变。

这里的术语有点混乱。在EVM(以太网络虚拟机)的运行有gas消耗,但gas本身也拥有一个的gas的价格。 每个交易指定了gas价格(每一单位的gas价值多少ether),允许让市场来决定ether价格与计算操作成本之间的关系(以gas计量)。这是两者的组合,总gas数量乘以gas单位价格,这就是总交易所需要支付的费用。

理解这个区别很重要,因为它会让最初学习者了解有关的Ethereum交易感到困惑:

“您的交易中出现的gas与您的交易之间存在差异,没有足够高的费用来支持交易(out of gas)”

如果我在交易中设置的gas价格太低,没有人会接纳我的交易作为优先运行。矿工基本不会愿意将你的交易打包进区块里。如果我提供了一个大家可接受的gas价格,然而我的交易产生如此多的计算工作,gas的成本费用超过了我附加的费用,这个gas是已“花费”了得,没有办法收回。矿工将停止处理交易,还原这个交易所做的任何更改,但仍将其作为“交易失败”包含在块中,收取费用你支付的费用。

这可能看起来很苛刻,但是当您意识到矿工的真正工作正在执行计算时,您可以看到他们将永远不会获得这些资源。所以只有你支付了费用,他们做了他们应做的任务这样才会是公平的,尽管是你的设计不当,导致没有支付足够的gas。

提供太高的费用也不同于提供太多的ether。 如果你设定了非常高的gas价格,您所需要只是简单几个操作,就为其支付大量的ether,就像在比特币中设置一个超高的交易费用一样。 你的任务一定会在最优先考虑队列前,但是你的钱已经被支付了。

但是,如果您提供正常的gas价格,并且只要附加的ether比您交易消耗的gas所需的更多,那么以太网络将会把超额费用将退还给您。 矿工只收取你们实际工作的费用。您可以将gas价格视为矿工的小时工资,gas成本作为工作时间。

有很多其他的gas的细节,但目前我们还是解释最基础的。gas是使Ethereum网络的复杂计算“网络安全”的关键机制,因为任何失去控制的程序只会工作持续到最后请求他们的任务执行。 当钱停止支付时,矿工们将会停止工作。

你设计的程序中犯的错误,只会影响付费使用它的人。其余的网络不能因为你的错误而遭受性能问题。 当性能问题消耗你的所有ether币时,他们将简单地得到一个 big payday! 没有这个关键技术,通用块链的想法是完全不可能的。

简单而言:
gas是计算费用的方式。
不过,这些费用仍然是以ether计算,这与gas不同。
gas成本是工作量,如劳动时数,而gas价格就像您为完成工作付出的小时工资。 两者的组合决定了您的总交易费用。
如果您的gas价格太低,没有人会处理您的交易。
如果您的gas价格不错,但交易的gas成本超过预算,交易失败,但仍然被打包进区块,劳动者工作了,您不会获得退款。
这样确保没有任何东西永远运行,而且人们会对他们运行的代码注意一点。 它使矿工和用户都能安全避免错误的代码!

(翻译辛苦,请勿转载此译文。)
如果觉得对您有帮助,请给我打赏点币儿吧。
BTC地址:19hexJYkSBpqDmG4phGmE9Q7CK5SRxE4r9
ETH地址:0xa9b6344371588c3911e5172d52f114b3b5377536

原文来自:
https://ethereum.stackexchange.com/questions/3/what-is-meant-by-the-term-gas/62#62

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,524评论 5 460
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,869评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,813评论 0 320
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,210评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,085评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,117评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,533评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,219评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,487评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,582评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,362评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,218评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,589评论 3 299
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,899评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,176评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,503评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,707评论 2 335

推荐阅读更多精彩内容

  • 简介 不管你们知不知道以太坊(Ethereum blockchain)是什么,但是你们大概都听说过以太坊。最近在新...
    Lilymoana阅读 3,883评论 1 22
  • 首先非常感谢imToken钱包的郭辉同志,第一时间将国外对以太坊大都会升级的详细解答翻译成可读通顺的中文资料! 译...
    AndrewDing阅读 747评论 0 2
  • 一、区块链 1. 分布式去中心化 比特币设计的初衷就是要避免依赖中心化的机构,没有发行机构,也不可能操纵发行数量。...
    Tenny1225阅读 33,434评论 5 35
  • 这两天,一直在车上辗转,心情起起伏伏,太多感慨。 年过三十,心里还是有太多柔软的地方,性情中人,就是这样。 这么多...
    王玬锦阅读 869评论 2 3
  • 4.2.3作业3(8组) 我怕……(复原卡1张) 我常常用……方式攻击/防御(复原卡动物卡1张) 其实我投射了……...
    如常0811阅读 288评论 0 0