以太坊网络的挖矿过程介绍

区块链

574人已加入

描述

矿工是验证新交易并将其记录到区块链中的人。挖矿过程不仅用于交易验证,而且对于生成ethers(以太币)也非常必要。每隔15秒,以太坊网络就会生成以太币类物质,而生成以太币类物质的唯一方法就是开采区块。因此,每隔15秒,以太坊网络就会为它的区块链生成一个新区块。采矿者从其他人那里得到开采区块的报酬。

挖矿过程

在以太坊的主网中,交易每时每刻都在发生。但是我们不能把15秒内发生的所有交易都放到一个块中。因此,所有尚未处理的交易都位于一个名为交易池的位置。在该交易池中,可能有一些交易等待处理的时间超过了几个小时。原因是,人们会选择最有利可图的交易,首先进入区块开采。因此,他们首先选择包含交易的较高数量的交易费,然后将它们放入一个块中,并使用块哈希对其进行密封。

挖矿

但是如果两个节点同时创建两个单独的块会发生什么呢?

这将导致区块链分成两个分支。但是在区块链网络中,只能有一个分支。再过15秒,另一个区块被创建出来,它被连接到区块链的两个分支之一,从而赢得最长的链。因此,丢失分支中包含的其他块(称为孤立块)它们将返回到交易池。

当矿工在开采区块时,他们所做的就是猜测他们要开采的区块的编号。系统本身给出了一个nonce值,可以在其中的子函数范围内计算,所要做的就是在这个范围内正确地计算nonce值。

在正确猜测nonce值之后,系统将把该块添加到区块链中。因此,矿工之间存在着巨大的挖矿竞争。所以他们需要包含巨大处理能力的机器。

这些nonce值是数字。这个数字很难确定,你无法预测。矿工惟一要做的就是检查哈希值,方法是在获取正确值的同时给出不同的nonce值。

挖矿

交易

交易只是一个记录。例如,如果我们使用一个帐户向另一个帐户发送一些钱,然后创建transaction对象,它记录这些帐户之间交互的所有数据。

交易对象具有一些属性。

Nonce:

发送设置交易的次数

TO:

接收方的地址

Gasprice:

当我们做交易时,我们必须为矿工支付一些费用来处理我们的交易。有数以百万计的采矿团体连接到以太坊网络以开采矿块。因此,我们必须为他们支付一些费用,使我们的交易到达区块链。当他们开采一个区块时,他们会获得最多的gas价格包含的交易,并开采该区块。因此,如果你支付更高的GAS价格,你的交易就会很快得到处理。

挖矿

· Gas Limit:

交易可以消耗的最大GAS单位。交易需要与其复杂性相关的不同数量的处理能力。根据这种复杂性,交易消耗的GAS价格从低到高。

将智能合约部署到区块链网络也是一个交易。如果智能合约包含无限循环,那么交易的复杂性将是无限的。这些交易在网络的每个节点中执行,如果没有GAS限制,那么将停止整个网络的运行。

为了避免这种风险,每笔交易都有它的GAS限制。

如果您为一个交易分配了较低的GAS限制,并且在智能合约代码完成执行之前就耗尽了GAS,那么该交易将不会发生,并且GAS价格将由矿工获得。简单地说,为了处理我们的交易,我们向矿工支付交易费+天然气价格。所有这些费用都是由开采我们交易块的矿商收取的。

· v,r&s值:

这些值是使用发送方的私钥生成的。在交易对象中,没有添加发送方地址的属性。通过使用它,它生成发送者的帐户地址。它是验证发送方的方法。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分