比特币&区块链研究

以太坊挖矿的运作原理——零基础了解以太坊(六)

2018-12-29  本文已影响18人  1a8661c5a646

第0章 引言

我们已经介绍了什么是以太币,那以太币又是如何产生的呢?以太坊挖矿又在挖什么呢?

第1章 以太坊挖矿是如何运作的

矿工在确保以太坊正常运行方面扮演着重要角色。

尽管这个角色并不那么显眼。

很多新用户认为,挖矿的唯一目的是在不需要中央发行机构的情况下生成以太币(ETH)。这是对的。以太币通过挖矿产生,每挖出1个块,就会产出5个以太币。但是,挖矿还扮演着另外一个重要角色。

通常情况下,银行负责保存准确的交易记录。他们负责确保,钱不是凭空产生,用户不会欺诈,不会出现双花。

但区块链引入了一个全新的记账方式,由整个网络,而不是中间机构,负责验证交易并把交易添加到公共账本里。

尽管其目标是创建一个“无需信任”或“信任最小化”的系统,但是仍然需要有人保证金融交易的安全,保证没有人欺诈。

挖矿是一项创新,实现了以去中心化的方式记账。

矿工在防范欺诈(尤其是双花)的同时就交易历史记录达成共识——这是个在PoW算法的区块链出现之前去中心化货币一直未得到解决的问题。

尽管以太坊正在寻找其他在交易验证上达成共识的方法,但是目前网络仍是由挖矿保证正常运行。

挖矿是如何运作的

以太坊的挖矿过程与比特币的几乎是一样的。

挖矿的时候,矿工使用计算机反复迅速地猜一个难题的答案,直到有矿工猜到正确答案为止。

更具体点讲,矿工会对区块头元数据(包括时间戳和软件版本)进行哈希函数运算(函数会得到一个由字母和数字组成、固定长度的字符串),其中会影响哈希值结果的nonce值是唯一的变量。

如果矿工A率先找到满足要求的哈希值,那么矿工A将获得以太币作为奖励,并在全网广播区块,让所有节点进行验证并更新账本。如果矿工B算出正确哈希值,矿工A将停止在当前区块链作运算,并转到在下一个区块上重复此过程。

矿工在这个游戏中很难作弊。他们是没法伪装工作又得出正确答案。这就是为什么这个解题的过程被称为“工作量证明”(proof-of-work)。

另外一方面,其他矿工验证哈希值是否正确几乎不需要什么时间,这实际就是每个节点在干的事。

大约每12-15秒,矿工就会挖出一个区块。如果矿工挖矿的速度过快或者过慢,算法会自动调整难度值,把出块速度保持在12秒左右。

矿工赚取这些以太币是有随机性的,挖矿的收益取决于他们的运气以及他们投入的算力。

以太坊使用的这种工作量证明算法叫做“Ethash”,经过专门设计,需要更多内存,以增加使用更昂贵的ASIC矿机挖矿的难度(ASIC是专业的挖矿芯片,是目前挖比特币唯一有利可图的方式)。

从某种意义上来说,Ethash已经实现了这个目的,因为现在还没有挖矿以太坊的ASIC矿机(至少目前还没有)。

此外,以太坊计划把POW挖矿算法变更为POS(权益证明),所以购买ASIC矿机挖矿并不是一个明智的做法,很有可能挖不了多久。

改用权益证明机制

不过,以太坊可能永远不再需要矿工。

开发者计划弃用工作量证明算法(网络目前使用该算法验证交易以及防止交易被篡改),改用权益证明机制,由代币持有者保证网络的安全。

如果以太坊真的使用这个算法,PoS可能会是一个使用更少资源达成分布式共识的方法。

作者:Alyssa Hertig

原文链接:https://www.coindesk.com/information/ethereum-mining-works

第2章 结束语

只要一个一个概念搭建,就能建立起对以太坊系统的全面认识。


翻译:黄世亮

欢迎关注微信公众号:闪电HSL

上一篇下一篇

猜你喜欢

热点阅读