许多初次接触比特币的朋友,都会被“挖矿”这个词所吸引,他们脑海中浮现的或许是矿工在地下奋力挖掘矿石的场景,只是换成了计算机在运算,当深入理解比特币的工作原理时,一个核心问题常常浮现:比特币挖矿,真的需要保存一整个账本吗?

这个问题的答案,既简单又复杂,它触及了比特币网络运行的核心机制,为了彻底弄明白,我们需要先区分两个概念:“账本”和“区块”。
我们通常理解的“账本”,可能像一本厚厚的、记录了所有交易历史的总账,如果比特币的账本真的如此,那么每个矿工都需要下载并存储自2009年比特币诞生以来的每一个交易记录,这将是数百GB的数据,并且还在不断增长,这听起来就令人望而生畏,似乎不太现实。
但实际上,比特币的“账本”并不是一本单一的大书,而是一个由无数个小“账本”拼接而成的、不断生长的链条,这个小“账本”,就是“区块”(Block)。
我们可以回答核心问题了:

比特币挖矿,并不需要矿工保存一整个历史账本,但他们必须处理并验证最新的“账本页”(区块),并将其链接到历史账本上。
这个过程是这样的:

接收候选区块: 当矿工开始竞争挖矿时,他们首先会从比特币网络中接收到一个“候选区块”,这个区块包含了:
验证交易,而非保存历史: 在开始计算之前,一个负责任的矿工会先验证候选区块内的每一条交易,他们会检查:
进行哈希运算(“挖矿”): 验证交易无误后,矿工便开始了真正意义上的“挖矿”——不断尝试改变随机数,对候选区块进行哈希运算,目标是找到一个特定的哈希值,使其满足网络当前的难度要求,这个过程纯粹是计算力的比拼,与保存旧账本无关。
“书写”新账本页并广播: 当某个矿工幸运地找到了正确的答案(即“挖出”了一个区块),他会立即将这个新区块广播到整个网络,其他节点在收到这个新区块后,会:
到这里,您可能会问:既然挖矿时不需要保存完整账本,那为什么现在每个全节点(Full Node,包括矿机)都存储着几十GB的完整区块链数据呢?
这背后有两个关键原因:
回到最初的问题:比特币挖矿要保存账本吗?
免责声明:本文为转载,非本网原创内容,不代表本网观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
如有疑问请发送邮件至:bangqikeconnect@gmail.com