深入解析比特币:共识机制、挖矿原理与区块传播
1. 交易冲突与处理
在比特币网络中,节点接收的交易可能存在冲突。例如,Node - 2和Node - 3接收的交易原本都是合法的。当Node - 3尝试向Node - 2广播交易“A Tx(1234) –> C”时,Node - 2会拒绝该交易,因为它已经有了输入交易为Tx(1234)的交易“A Tx(1234) –> B”。其他节点也会出现类似情况,它们要么拥有交易“A Tx(1234) –> B”,要么拥有“A Tx(1234) –> C”,取决于哪个交易先到达,不会同时拥有两者。在挖矿时,成功提议区块的节点会将自己持有的交易包含在区块中,该交易将成为区块链的一部分,而持有另一交易的节点会丢弃Tx(1234)相关的交易,因为它不再是未花费交易输出(UTXO)。
2. 比特币的共识与挖矿概述
比特币网络中的一切都以交易形式呈现。若要进行交易,需消耗一个或多个之前的交易作为输入并生成新交易。为确保交易由正确的人发起,需使用私钥对交易进行签名。然而,这并不能防止双重花费问题。例如,Alice收到交易编号为1234的十枚比特币后,她可以使用私钥对同一笔交易进行签名,将这十枚比特币分别转给Bob和Charlie。
比特币系统无法阻止用户尝试双重花费,但设计上会使这种尝试不成功。防止双重花费的唯一方法是知晓所有正在进行的交易,因此比特币中的所有交易都会广播到整个网络。一旦交易被花费,它就不再是UTXO的一部分,会生成新的交易编号成为UTXO,只有接收者可以花费。节点通过这种方式验证交易。
当矿工提议新的区块时,要求区块中的所有交易都是有效的。虽然节点可以注入欺诈性交易,但其
超级会员免费看
订阅专栏 解锁全文
14

被折叠的 条评论
为什么被折叠?



