矿工和比特币网络工作证明的目的是什么?

时间:2019-01-24 12:38:37

标签: blockchain bitcoin mining

我想知道矿工的目的。我知道采矿将新的比特币引入网络,并检查该区块中的交易。 但是为什么要通过人工来进行开采呢?这么长时间的工作证明的目的是什么?为什么采矿过程不自动化?

3 个答案:

答案 0 :(得分:1)

挖掘的目的是建立分布式共识。矿工必须提供工作证明,请参阅Bitcoin Whitepaper。工作量证明是必须低于目标值(由网络确定)的哈希值。该目标值越低,散列必须完成的平均工作量就越多。

这是因为没有已知的方法可以反向计算one-way functions(在本例中为SHA256)的输入,该输入将产生给定的输出。基本上,工作基本上是在给定的难度下获得有效哈希所需的猜测数。确实有机会获得有效的哈希值是随机的,但概率会随着值的降低而降低,因此(平均)必须完成更多工作。必须从概率和平均尝试次数的角度考虑它。

之所以创建分布式共识,是因为为了撤消交易,必须重做工作(或平均执行相同数量的猜测-以使替换区块可以代替现有链中的区块被接受)。这称为51% attack

在更高的层次上,为了能够做足够的工作来开采一块地雷,一个人必须消耗足够的能量。由于计算需要硬件的前期成本和维护成本以及持续的能源成本,因此这将加起来,并且矿工必须根据采矿硬件的当前性能(例如,每千瓦的哈希率),能源价格和代币价格来确定盈利能力。 。对于那些想要进行51%的攻击以超越网络并重写历史记录的攻击者(例如,冲销其已花费的交易),这成为进入者的障碍。他们必须投入并花费(至少)至少等于网络散列功率的50%以上的时间,以使区块反转并超越网络。

答案 1 :(得分:0)

验证交易并编译区块链。

答案 2 :(得分:0)

由于比特币网络由匿名对等方组成,因此需要一些可用于验证交易的证据。这是工作证明的体现。

矿工必须花费大量的CPU能力和时间才能解决给定的问题。解决问题是一项艰巨的任务,但是检查给定答案是否有效非常简单(我不会就问题的确切内容进行详细介绍)。 一旦找到答案,矿工将其发布在比特币网络上,其他所有矿工都可以检查答案的正确性,并将交易添加到区块链中。这基本上意味着匿名矿工做了一些工作(即用过的CPU能力和时间),现在有了答案(证明他做了工作)。即使同行是匿名的,也可以通过这种方式达成共识。

如果您想详细了解此过程,请阅读以下内容可能会有所帮助:https://bitcoin.org/en/developer-guide#proof-of-work