本周的周报描述了为非历史地址创建签名消息的 BIP 提议,并总结了关于可证的燃烧少量比特币以防护拒绝服务攻击的讨论。此外还有我们的常规部分,其中包含来自 Bitcoin Stack Exchange 的热门问题和答案、新版本和候选版本的公告,以及流行的比特币基础设施软件的重大变更总结。

新闻

  • 多格式单签名消息签名:Bitcoin Core 和许多其他钱包长期以来一直支持密钥对一个 P2PKH 地址的任意消息进行签名和验证。而 Bitcoin Core 不支持对任何其他地址类型的任意消息进行签名或验证,包括单签名 P2SH-P2WPKH、原生 P2WPKH 和 P2TR 输出的地址。先前可以与任意脚本一起使用的、提供完全通用的消息签名BIP322 提议,尚未被合并到 Bitcoin Core 或被添加到任何其他我们所知的流行钱包。

    本周,Ali Sherief 提议用于 P2WPKH 的相同消息签名算法也可用于其他输出类型。对于验证,程序(如果需要)应当推断如何去派生密钥并用地址类型来验证签名。例如,当提供带有 20 字节数据元素的 bech32 地址时,假设它用于 P2WPKH 输出。

    开发人员 Peter Gray 指出 ColdCard 钱包已经以这种方式创建签名。开发人员 Craig Raw 表示 Sparrow Wallet 钱包可以验证它们,并且还遵循了 BIP137 验证规则以及在 Electrum 中实现的一组略有不同的规则。

    Sherief 正计划编写一个 BIP 来详细说明该行为。

  • 微销毁的证明:一些开发人员讨论了链上交易的用例和设计。该设计是按照一个小的增量来销毁比特币(“燃烧”比特币)作为资源消耗的证明。如果要展开 Ruben Somsen 的讨论主题帖中的一个示例用例,该思路是允许 100 个用户在他们的电子邮件中附加一个证明 1 美元比特币已被烧毁的证据,以提供反垃圾邮件的一种防护。这个思路最初也被描述为 hashcash 的一种有益效果。

    上述讨论涉及到了几种使用默克尔树解决方案。然而一位受访者认为所涉及的少量销毁,可能会让参与者信任(或部分信任)中心化第三方成为避免不必要复杂性的一种合理方法。

Bitcoin Stack Exchange 精选问答

Bitcoin Stack Exchange 是 Optech 贡献者寻找问题答案或是当我们有一些空闲时间来帮助好奇或困惑的用户时的首选地之一。在这个月度专题中,我们重点介绍了自上次更新以来发布的一些投票率最高的问题和答案。

软件的新版本和候选版本

流行比特币基础设施项目的新版本和候选版本。请考虑升级到最新版本或帮助测试候选版本。

  • BTCPay Server 1.6.3 为这个流行的自托管支付处理器添加了新功能、改进和错误修复。

  • LDK 0.0.110 向该库添加了多种新功能(许多在此前的周报中介绍过)用于构建启用闪电网络的应用程序。

重大代码及文档变更

本周内,Bitcoin CoreCore LightningEclairLDKLNDlibsecp256k1Hardware Wallet Interface (HWI)Rust BitcoinBDKBitcoin Improvement Proposals (BIPs)Lightning BOLTs 出现的重大变更。

  • Bitcoin Core #25351 确保在将地址、密钥或描述符导入钱包后,后续的重新扫描不仅会扫描区块链,还会评估交易池中的交易是否与该钱包相关。

  • Core Lightning #5370 重新实现了 commando 插件,并使其成为 CLN 内置的一部分。Commando 允许节点使用闪电网络消息接收来自授权节点的命令。节点使用 runes。进行授权。这是一种基于 macaroons 简化版本的自定义 CLN 协议。尽管 Commando 现在已内置到 CLN 中,但它只有在用户创建 rune 身份验证令牌时才可操作。更多信息,请参阅 CLN 的 commandocommando-rune 手册。

  • BOLTs #1001 建议,节点在广播了更改其支付转发策略后,应继续接受使用旧策略接收付款约 10 分钟。这可以防止由于发送方不知道最近的策略更新而导致的付款失败。有关采用此类规则的实现示例,请参见 周报 #169