当前位置:首页 >> 人工智能

区块链矿工如何以七个步骤处理挖矿工作并进

人工智能  |  2019-12-06  |  来源:潜江物联网云平台

区块链矿工如何以七个步骤处理挖矿工作并进行交易

你有没有想过区块链的发掘过程如何进行的,或你的交易如何得到确认并添加到了区块链好吧,我也是如此由于我找不到任何明确的逐渐解释这个进程文章,我决定深入研究并自己编写指南以下是区块链交易如何通过七个步骤从你的钱包处理到区块链中

步骤1

用户注销交易从他们的钱包应用程序,尝试从他们发送某个加密币或代币给其他人

步骤2

交易由钱包应用程序广播,现在等待矿工在相应的区块链上接收只要它没有被挖掘,它就会在“未经证实的交易池”中徘徊此池是络上等待处理的交易的集合这些未经证实的交易通常不会收集在一个巨型池中,但更常见的是在小型细分的本地池中

步骤3

络上的矿工(有时称为节点,但不完全相同)从这些池中选择交易并将其构成“块”除一些元数据之外,块基本上是交易的集合(此时,仍然是未经证实的交易)每个矿工都构建他们自己的区块,但是多个矿工可以选择要包含在他们区块中的相同交易

示例:两名矿工,矿工A和矿工B矿工A和矿工B都可以决定将交易X包括在他们的区块中块具有最大数据大小在比特币区块链中,块的最大大小是最大1MB的数据但在将交易添加到其块之前,小型企业需要根据区块链历史检查交易是否有资历履行如果发件人的钱包余额根据现有的区块链历史记录具有足够的资金,则该交易被认为是有效的并且可以添加到该块中矿工通常会优先考虑设置高交易费的交易,因为这会给他们更高的回报

步骤4

通过选择交易并将其添加到其区块,矿工创建一个交易块要将此交易块添加到区块链(以使所有其他节点和矿工注册交易),该块首先需要签名此签名是通过解决每个交易块所特有的非常复杂的数学问题来创建的每个块都有不同的数学问题,这意味着每个矿工都会处理他们构建的块所特有的不同问题,但所有这些问题一样难以解决为了解决这个数学问题,需要大量的计算能力(因此需要大量的电力)这是称为发掘的进程如果你想了解更多有关其工作原理的信息,请继续阅读下面的内容,否则请跳至第5步

挖掘aka哈希(工作量证明算法)

当尝试向区块链添加块时,每个矿工面临的数学问题是找到其块中的数据的哈希输出(也称为签名),其以一定量的连续零开始这听起来很复杂吧但实际上并不那末难让我试着用一个简单的方法向你解释

在我们继续之前,解哈希函数是什么很重要不用担心,我不会触及太多的技术细节哈希函数只是一个很难解决的数学问题,但答案很容易验证

哈希函数接受数字和字母的输入字符串(字面意思是任意字符串的随机字母,数字和/或符号),并将其转换为由随机字母和数字组成的新的32位字符串这个32位数字符串是哈希输出如果输入字符串中的任何数字或字母产生更改,则哈希输出也将随机更改但是,相同的输入字符串将始终提供相同的输出字符串

现在斟酌块内的数据作为哈希输入(一串数据)当对此输入进行哈希处理时,它会提供哈希输出(32位数字符串)比特币区块链的一个规则是该输出字符串需要以连续数量的零开始,以便有资格作为块签名

这是每个矿工在尝试向区块链添加区块时所寻觅的东西;以一定量零开始的输出字符串但是如果块的数据字符串没有哈希到以零的数量开头的输出字符串中呢好吧,这就是为什么矿工们反复更改其块内的一部分数据,称为nonce由于随机数会一直在变化,因此哈希函数的输入数据也会发生变化,从而致使不同的哈希输出最终,矿工希望找到一个输入字符串(块数据和字符串的字符串),这些字符串哈希为符合条件的输出字符串(以零的数量开头)下面的例子使用七个零,但这个零的数量实际上取决于区块链的区块难度如果你还没准备好,请不要点击它

这就是矿工们需要找到符合条件的签名的方式,这也是解决这个数学问题需要如此大的计算能力的原因猜想这么多不同的nonce需要花费大量的时间和计算能力如果你顺利完成了很好的工作,现在让我们继续前进到第5步

注意:此进程实际上并未定义为数学问题,而是定义为确定性事项——计算机正在对数字执行预定操作以查看输出是不是合乎需要

步骤5

矿工首先为其区块找到符合条件的签名(解决方案),将此签名广播给所有其他矿工

步骤6

其他矿工现在验证该解决方案是否与发件人块的问题相对应(如果哈希输入实际上导致该签名)如果有效,其他矿工将确认解决方案并同意该块可以添加到区块链中这就是“工作量证明”定义的来源找到解决方案的矿工将其“工作量证明”(又称解决方案)发送给其他矿工,然后他们将验证解决方案是否合法如果是,那么其他矿工将同意并且就区块链达成“共识”现在可以将块添加到区块链中,并将其广播到络上的所有其他节点及其签名只要块内的交易与该时间点的当前钱包余额(交易历史)正确对应,其他节点将接受该块并将其保存到其交易数据中

步骤7

如果大多数矿工达成共鸣,则块被添加到区块链中每次在此块的顶部添加另一个块时,它将被视为其下方块的另一个“确认”例如,如果我的交易包括在块502中,并且区块链是507个区块长,则意味着我的交易有5个确认()这也是Etherscan在向你展示交易详情时所指的内容你的交易确认越多,攻击者就越难以改变它当新区块被添加到区块链时,所有矿工将不得不在第3步重新开始,构成一个新的交易区块矿工们不能继续(好吧,他们可以,但这是无关紧要的)采矿也解决了他们正在研究的区块问题,缘由有两个

1.它可能包含已被添加到区块链的最后一个块确认的交易,因此其中一些交易现在可能无效,使得整个块无效

2.每个块都需要添加哈希输出添加到区块链的最后一个块到其元数据中

这就是它成为区块链的缘由如果矿工继续挖掘他们已在处理的块,其他矿工会注意到哈希输出与区块链上最新添加的块的输出不对应,因此将谢绝该块

来源:汇智

多区块链信息:

区块链 挖矿 区块链挖矿app

如何消除小儿积食

小孩脸色发黄如何调理

怎么调理小儿脾胃虚弱

云南治疗盆腔炎费用

安阳治疗子宫内膜炎医院

达州治疗前列腺囊肿费用

贵阳癫痫病医院哪家治得好
郑州权威癫痫病医院
昆明治癫痫权威医院