今天标志着的正式发布 比特币核心0.20.0, 中本聪(Satoshi Nakamoto)于11年前发布的第20个主要版本的比特币原始软件客户端.

监督者 比特币核心 首席维护者Wladimir van der Laan,这个最新的主要版本是由100多个贡献者在大约六个月的时间内开发的。超过500个合并的拉取请求的结果,Bitcoin Core 0.20.0主要清理并强化了Bitcoin Core代码库,改进了硬件钱包集成,提高了网络可靠性,并进行了其他一些改进.

以下是一些比较明显的变化.

GUI中的进一步硬件钱包集成

自0.18.0版以来,Bitcoin Core已与硬件钱包兼容。但是,用户仍无法通过Bitcoin Core的图形用户界面(GUI)使用硬件钱包进行交易;他们必须改为使用命令行界面(CLI)来执行此操作.

Bitcoin Core 0.20.0正在朝着将硬件钱包集成到GUI中迈出一步。用户现在可以使用部分签名的比特币交易(PSBT)格式在Bitcoin Core GUI中创建不带签名的交易,并将其复制到剪贴板。复制后,他们可以将交易转移到其硬件钱包中进行签名-但是,这种转移尚未实现自动化,并且广播交易仍需要使用CLI.

未来的比特币核心版本将继续推进硬件钱包集成.

Asmap提供更可靠的网络连接

比特币核心连接到比特币网络上的多个对等点(其他比特币节点)。 Bitcoin Core根据其IP地址映射其他节点,以与来自不同地区和Internet服务提供商(ISP)的对等方建立连接。如果节点从世界各地的对等节点接收到数据块和交易,则可以降低保留某些数据(例如特定交易)的风险.

比特币核心目前通过以下方式映射IP地址 网络运营商组. 但是,其中一些组实际上是同一组的一部分 自治系统 (AS):网络运营商群组的群集共享关键的互联网路由,因此可能共享相同的路由瓶颈,从而可能过滤数据.

Bitcoin Core 0.20.0包含一个称为Asmap的新配置选项,该选项通过自治系统编号(ASN)映射IP地址。这样可以确保该节点与来自不同AS的对等方连接,从而减少了潜在的网络瓶颈,从而进一步限制了保留特定数据的风险。 (但是,将IP地址映射到网络运营商的组中仍然是当前的默认配置。)

删除BIP61拒绝消息

拒绝邮件(BIP61)是节点从对等方收到的交易被拒绝时返回的通知,以及原因。 (也许是因为该交易无效,也许是因为该交易未包含足够的费用,也许还有其他原因被拒绝。)

但是,比特币核心开发人员并不认为拒绝消息很有用。最重要的是,不应假定对等方可靠地返回拒绝消息。换句话说,如果节点未收到拒绝消息,则不一定表示交易已被接受。这限制了消息的实用性,同时还有更好的解决方案来检查交易是否有效并包含足够的费用。同时,这些消息使对等协议变得更加复杂,并且占用了带宽.

因此,默认情况下,BIP61拒绝消息已在Bitcoin Core 0.18.0中被禁用。比特币0.20.0现在已经完全删除了该功能.

删除BIP70付款协议(和OpenSSL)

付款协议(BIP 70)是几年前设计的,目的是改善比特币的付款体验。用户和商家可以交流有关付款的其他详细信息,例如人类可读的目的地地址(商家名称)和退款地址,以防购买出现问题.

尽管比特币核心集成了支付协议,但该标准从未得到广泛采用。相反,大多数钱包仍然使用更基本的URI方案(BIP21):可点击的链接或可扫描的QR码格式,例如,传达付款地址和金额.

也许比缺乏采用更为重要的是,BIP70支付协议遭受了 许多安全和隐私漏洞 这些年来。最值得注意的是,它依赖于OpenSSL软件库的加密功能,需要进行一系列的紧急通知紧急升级。由于这些原因,一些比特币钱包有, 拒绝了 完全实施BIP70.

Bitcoin Core 0.19.0从GUI删除了付款协议,但用户仍可以使用特殊配置来编译其节点以使用该功能。比特币核心0.20.0现在已经完全删除了支付协议.

随着BIP70的消失(以及其他一些软件调整来消除依赖性),Bitcoin Core也已经能够从其代码库中完全删除OpenSSL。.

Dumptxoutset作为快速启动的Assumeutxo的第一步

新的远程过程调用(RPC)使Bitcoin Core 0.20.0生成UTXO集的快照,该快照反映了特定时间点(块高度)在区块链上记录的比特币所有权状态。可以共享此快照.

当同行首次加入网络时,未来的比特币核心版本将共享这样的快照。这允许新节点从创建快照的时间点立即开始参与网络,同时在后台检查区块链的整个历史记录。 (就像一个类似的快捷方式Assumevalid一样,Assumeutxo在检查整个区块链之前确实会进行信任权衡,并且在此之前应牢记这些权衡。)

有关升级的更详细列表,另请参阅 Bitcoin Core 0.20.0发行说明.

感谢Sjors Provoost的信息和反馈.