区块链块哈希
精华
小牛编辑
175浏览
2023-03-14
在本节中,我们将了解SHA-256如何应用于在区块链中构建块。在比特币区块链的背景下进行具体讨论,并了解它如何与矿工的角色联系起来。minor 实际上正处于构建块的过程中,这些块添加到区块链中以构建比特币区块链的内容。
在下图中,可以看到此块由块编号,数据字段,与其关联的加密哈希和Nonce组成。
在上图中,生成的散列看起来像:00001acbm010gfh1010xxx
。这个哈希有四个前导零。四个前导零描述块是否有效。出于实际目的,您将看到此哈希对应于nonce
,并且块编号对应于我们的数据。因为Hash有四个前导零,所以它是一个有效的块。
如果在数据部分进行任何更改,它将提供完全不同的Hash,可以在下面的图像中显示。
如果新生成的散列没有四个前导零,那么它将不是有效的块。为了使块有效,我们将使用名为Nonce
的字段来完成。
Nonce
代表加密通信中的数字只用一次(Number Used Once),使得块的散列符合特定标准。可以生成该标准,该散列必须使其前四位数为零。因此,生成的散列看起来像00001acbm010gfh1010xxx
。
nonce
基本上是一个随机数,它可以确定如何使这个特定的块为您提供有效的哈希值。可以通过手动更改随机数来实现此目的。通常,矿工以Nonce
值1
开始并继续递增,直到生成的散列符合指定的标准。因此,可能需要多次迭代,直到生成具有四个前导零的所需散列。在比特币系统中生成块的预期时间是10分钟。一旦矿工成功地挖掘了该区块,就会在系统中释放它,使其成为链条中的最后一个区块。
在Anders Brownworth哈希程序中,当点击图像中所示的mine按钮时,它将给出有效的块。这个块有一个唯一的nonce,哈希在开头有四个零。