金色观察|闪电网络最新客户端中包含了哪些升级?
闪电网络的客户端LND,在6月28日升级到了0.15beta版,通过公告可以发现,这是闪电网络完成对 比特币 Tarpoot支持之后更新的第一个版本,这个版本主要实现了对tarpoot的完整支持,因此成为最好的tarpoot钱包之一。
新的版本包含了以下能力:
基于Taproot的地址创建和支付的能力
支持实验性MuSig2签名的新RPC方法
将数据库空间减少约95%
新的寻路变量可以更好地控制时间和成本权衡
Taproot
在此版本中,lnd能够生成用于接收(lnclinewaddressp2tr)和通过bech32m发送的P2TR地址。此外,用户可以使用新的PSBT扩展来资助、填充和验证一个空的或完整的PSBT,以及以下签名逻辑:普通密钥挂起路径、BIP86密钥挂起路径以及Tapscript签名。
会提供一个离线工具,允许用户安全地“升级”种子,提高钱包导入和重新扫描的效率。
Musig2API
增加了对符合最新BIP草案的实验性Musig2API支持。标记为实验性的,可能仍然会发生变化。目前已经开始将基于Musig2的多方签名集成到使用API操作的各种系统中。
数据库大小减少约95%
为了安全地推进承诺状态,lnd保存了过去的状态,并在远程违约的情况下构建了一个正确交易。考虑到繁忙的操作通道,磁盘上的状态可能会变得非常大。在最新版本中,已从撤销日志存储桶中删除冗余数据,以减少数据库大小并提高节点性能。初步测试表明,用户可以预期新频道更新占用的磁盘空间减少约95%。
寻路控制
开发人员经常要求能够以更精细的方式控制寻路。此请求来自这样一个事实,即某些付款可能需要更快地到达目的地,而某些付款可能有兴趣进行优化以降低成本。因此,在此版本中,用户可以通过变量更好地控制寻路偏好time-pref,这使用户可以控制寻路成本权衡的时间。该变量是[-1,1]范围内的连续变量,将变量设置为-1将仅针对费用进行优化,从而为付款人提供较低成本的路线。相反,将变量设置为1将优化可靠性,这可以减少完成付款所需的时间,但也会导致更高的费用。让用户选择这个变量意味着对于不同的支付,用户可以根据自己的需要选择不同的选项。可以想象一个钱包内置一个滑块,用户可以在较低成本或较高可靠性之间滑动。
可选的比特币轮询模式
作为ZMQ(ZeroMQ)的替代方案,在此版本中,用户可以选择使用bitcoind轮询来配置块和交易订阅通知。用户可以轮询JSON-RPC接口,而不是为这些通知使用ZMQ。当一组lnd节点从单个bitcoind节点提供数据时,这种更改的好处是可能比使用ZMQ更不容易出错。
为流动性服务提供商提供工具
在此版本中,用户可以使用更强大的HTLC拦截器版本,这是一种允许自定义转发逻辑的工具,现在可以:发送自定义失败消息,拦截链上HTLC,并且还可以配置为“始终假定其存在”。这些改进允许构建更高级的闪电服务,如闪电多路复用器,这是一种更具可扩展性的方式来设置需要高可用性和可靠性的节点。对于在正常运行时间、功能和可靠性方面进行竞争的流动性服务提供商而言,这些工具改进至关重要。
此外,使用新的CLI命令,lncliconstrain macaroon开发人员可以向现有的macaroon添加约束,而无需新的macaroon。这允许在节点访问和安全性方面增加灵活性。
改善移动开发者体验
对于专注于移动的开发人员,此版本包括对子服务器的一些关键改进,以便为未来版本中更强大的移动开发人员支持奠定基础。这些改进包括一个新的neutrino子服务器,能够进行状态检查、添加、断开和列出对等点、获取紧凑型过滤器和块/块头。此外,gomobile绑定现在默认包含所有子服务器,支持更多基于lnd构建的自定义移动应用程序。