区块链 挖矿
区块链中,当Bob付款给Alice时,创建了一个转账交易,但他不会将其单独发送给Alice。相反,交易消息将在他所连接的整个网络上广播。Bob的网络如图所示。
消息传递到所有连接的节点(机器),图中的一些节点被标记为矿工。这些机器运行着挖掘比特币的软件。接下来,我们将解释这种挖掘的含义。
挖矿过程
由于整个网络是广泛分布的,网络中的每个矿工,在任何给定的时间内都会接收来自多人的多个消息。矿工所做的是将这些消息打包到一个区块中。如图所示
在形成一个消息块之后,矿工使用前面描述的哈希函数,在该块上生成一个哈希值。现在,如果任何第三方修改了这个块的内容,那么它的哈希(散列)值将无效。
另外,每个消息都有时间戳,因此时间顺序是不能修改的,因为改了时间戳,哈希值就会无效。
因此,区块中的内容、区块的顺序是完全不能篡改的。我们可以进一步理解,为什么区块链机制可以保护网络中的交易不被篡改。
由不同矿工创建的区块被连接在一起,形成了所谓的真正分布式公共账本。链中的每个块包含多个消息(事务),如上图所示。链条上的一个区块可能来自任何矿工。在创建区块链时,可以看到会把前一个区块的哈希值添加到当前区块中。因此,矿工在 ...