比特币区块链技术全解析
1. 交易验证与内存池
在比特币网络中,交易的验证通过执行脚本实现。若脚本输出为“True”(非零整数值),则该交易有效,节点会将其添加到名为“内存池”(mempool 或 memory pool)的交易池中;若输出为“False”(输出为零),交易将被丢弃,节点也不会进一步广播该交易。内存池中的所有交易都是有效的,但尚未得到确认。
2. 挖矿的必要性与节点类型
即便交易有效,也不会立即得到确认,主要是为了防止双花问题。双花指的是有人试图在同一时间的两笔或多笔交易中花费相同的比特币。例如,约翰从同一个输入地址(UTXO)向彼得和奥利维亚分别发送 75 比特币,而该地址只有 100 比特币,虽然两笔交易广播到节点后执行解锁脚本和锁定脚本的组合会返回“True”,看似有效,但存在双花风险。为防止这种情况,就需要进行挖矿。
比特币网络由两种类型的节点组成:
- 全节点 :是强大的专用机器,本地存储包含所有交易的整个区块链(账本)。截至 2022 年 6 月,区块链大小略超过 400Gb。其主要功能是自主验证区块链的状态,通过下载每个区块并根据比特币的共识规则进行检查,移除任何违反规则的交易或区块。
- 轻量级节点 :运行在资源有限的设备上,如智能手机、平板电脑等,主要用作加密钱包。它们不保存整个区块链账本,仅保存部分区块,能够验证交易,但可能需要从对等全节点获取数据。
挖矿可以由全节点或轻量级节点完成。若为轻量级节点,它会连接到全节点以快速从其内存池中获取已验证的交易,因为只有全节点能验证交易。要确认一笔交易,该交易必须成为
超级会员免费看
订阅专栏 解锁全文
5530

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



