比特币核心开发者James O"Beirne提出了一种运行比特币修剪节点的新方法。他的提议彻底改变了修剪比特币区块链的传统方法。当然,比特币节点运营商多年来一直可以进行修剪。
(相关资料图)
使用标准的比特币核心软件,节点运营商通过设置他们愿意存储在他们的bitcoin.conf文件中的最大兆字节数来启用修剪。他们还可以在比特币核心图形用户界面(GUI)的设置区域中修改此设置。
比特币节点的两个最大的软件客户端,Bitcoin Core和 Bitcoin QT,可以被删减。然而,一旦节点所有者激活了修剪,他们可能不会通过比特币网络传输旧区块,也不会验证旧钱包。
当然,修剪是有取舍的。然而,首先是O"Beirne的提议。
James O"Beirne提出了一种运行比特币修剪节点的新方法
O"Beirne提出了对全节点修剪方法的更新。该提案是他更大的assumeUTXO协议项目的一部分。
O"Beirne的assumeUTXO不是现状——在那个里程碑之前设置多个区块并压缩历史区块——而是一种实验性的方式,新的比特币全节点延迟他们验证历史交易的需要,直到用户收到最近的交易。
假设 UTXO 兼容的节点客户端将包含一个硬编码的哈希值,该哈希值是在最近一个安全的时间点花费所有比特币(UTXO 集)所需的条件(O"Beirne 流行的比特币核心客户端的变体,Bitcoin Core #25740 , 支持assumeUTXO).
由于其重要性,开发人员必须在代码审查期间检查硬编码assumeUTXO散列的任何修订版的正确性。只要快照哈希是正确的,它就会允许被修剪的节点操作员选择忽略该哈希之前的完整数据。这个经过修剪的区块链文件将比比特币的整个0.5TB区块链小得多。
此外,O"Beirne提议的更新可以为assumeUTXO协议添加后台验证。assumeUTXO提议添加了序列化的UTXO集,减少了同步新比特币节点所需的时间。它还减少了保存比特币区块链所需的存储空间。
回顾assumeUTXO修剪节点提案
总而言之,James O"Beirne提出,经过修剪的节点运营商可以选择信任特定历史点的开发人员审查过的区块链快照。修剪后的节点可以使用该快照哈希来减少比特币区块链的大文件大小。
一旦节点使用该散列通过了比特币账本的准确性检查,该节点就可以在下次软件客户端重新启动时删除用于执行检查的信息。删除此数据后,该节点已成为修剪节点。与其他修剪技术一样,O"Beirne提出的功能降低了区块链存储要求。
开发人员仍在努力完成 assumeUTXO提案。需要明确的是,假设UTXO与今天的主要比特币网络不一致。开发、安全检查和代码审查正在进行中。Bitcoin Core开发人员正在讨论O"Beirne的提议,辩论其优缺点,并调试代码草稿。