
比特币白皮书-第4篇
2026-06-15 20:21
比特币白皮书-第4篇为了实现一个基于点对点的时间戳服务器,我们需要使用一个类似adam back提出的哈希货币的工作量证明系统,而不是报纸或新闻组帖子那样。 工作量证明采取搜索一个数,使得被哈希时(如使用SHA-256)得到的哈希值以数个0比特开始。 平均所需工作量将随所需0比特呈指数级增长而验证却只需执行一次哈希。 对于我们的时间戳网络。 我们通过在区块中加入一个随机数,直到使得区块的哈希值满足所需0比特的数被找到的方式实现工作量证明。 一旦消耗了cpu算力使区块满足了工作量证明,那么除非重做这个工作否则就无法更改区块。 由于后面的区块是链接在这个区块后面的,改变这个区块将需要重做所有后面的区块。 
工作量证明同时解决了在多数决定中确定投票方式的问题。 如果多数是按ip地址投票来决定,那么它将可能被分配大量ip地址的人破坏。 工作量证明本质上是按CPU投票。最长的链代表了多数决定,因为有最大的计算工作量证明的算力投入到这条链上。 如果多数的CPU算力被诚实节点控制,诚实的链就会增长得最快并超过其他的竞争链。要修改过去的某区块,攻击者必须重做这个区块以及其后的所有区块的工作量证明,从而赶上并超过诚实节点的工作。 我们后面会证明随着后续的区块被添加,一个更慢的攻击者赶上诚实节点的概率将呈指数级递减。 为了抵消硬件运算数度的增加及平衡不同时期运行节点的利益,工作量证明的难度将由移动平均数法来确定每小时生成区块的平均数。如果区块生成得过快,那么生成的难度就会增加。
