本周报总结了比特币点对点网络中交易包转发的讨论,分享闪电网络开发者会议总结,介绍了一种闪电网络上优化可靠性和降低手续费的论述。此外还有软件新版本总结和比特币基础设施软件的重大变更。
作者:Bitcoin Optech
本周的周报总结了关于在比特币点对点网络中支持交易包转发的讨论,分享了一份来自最近的闪电网络开发者会议的总结,还介绍了一种关于闪电网络上的花费者和路由节点如何能以互惠的方式优化可靠性并降低手续费的论述。此外还有我们的常规栏目:软件的新版本和候选版本总结、热门的比特币基础设施软件的重大变更。
关于交易包转发升级提议的持续讨论:近期的一份关于 交易包转发 的 BIP 草案(见 周报 #201)在过去几周了收到了附加性的评论:
闪电网络开发者会议的总结:Olaoluwa Osuntokun 提供了一份关于上周奥克兰(Oakland)闪电网络开发者会议的 详细总结。其中的主题包括:
基于 Taproot 的闪电网络通道:参与者讨论了将闪电网络迁移到完全使用 taproot 特性的第一步。后续步骤有可能加入对 “ 点时间锁合约(PTLC)” 的支持(见 周报 #164)。
Tapscript 和 MuSig2:作为迁移到基于 taproot 的通道的一部分,我们需要将现有的脚本转化为能够最高效利用区块空间的 tapscript 脚本。此外,还需要在一切可预期双方会则作行动的地方使用 MuSig2 协议来创建签名。所有这些都需要实现和测试来保证它们的工作情况。
递归的 MuSig2:简单的 MuSig2 将允许 Alice 和 Bob 一起创建一个签名。递归的 MuSig2 将允许(举个例子)Alice 使用她的热钱包和硬件签名设备生成她的那部分签名,而无需 Bob 执行任何特殊的操作,Bob 也不会知道 Alice 在使用多于一个私钥来签名。现在大家讨论的是如何设计闪电网络对 MuSig2 的用法,来保证可以使用递归的 MuSig2。还讨论了递归 MuSig2 的安全性。
闪电网络技术基础的插件:另一种说明闪电网络协议规范变化的方法。当前,闪电网络规范的变化是作为一个补丁加入到现有的规范中的。但是,一些开发者倾向于使用 BIP 所用的方法:对协议的重大变更是用一套乃至多套专门说明这些变更的文档作为规范的。这些开发者相信,专门的文档更易于撰写和阅读,因此可以简化和加速开发进度。
闪电网络消息协议升级:会议还延续了当前对闪电网络 gossip 协议升级的讨论(见 周报 #188),这套协议是用来转发关于新通道和通道更新的消息的。根据这份总结,参与者们倾向于在短期内进行微小升级以支持基于 MuSig2 的 taproot 通道,以及将协议升级到完全支持 TLV 语义。
高效消息协议:如 周报 #198 所述,开发者正在研究使用 minisketch 来降低节点间同步 LN gossip 的带宽,我们还可凭此进一步降低更新通道的最小时间的间隔。
洋葱消息拒绝服务式攻击:多个闪电网络实现已经支持 洋葱消息协议,既作为使用 keysend 支付功能来通讯的替代方法,也作为还在提议阶段的 BOLT12 主动支付协议 的通信层。但是,如 周报#190 所述,一些开发者依然担心洋葱消息无法抵御许多不同类型的拒绝服务式攻击。讨论了多种防止拒绝服务式攻击的方法。
路径盲化:一种提议了许多年(见 周报#185)并且现在已经用于洋葱消息的协议也在开展实验,用在常规支付中以允许用户在接收支付时无需公开自己的闪电网络节点的身份。这种方法面临的挑战之一是它要沟通更多的路由信息,所以要使用更大数据量的发票。这可能会让路径盲化的高效实现依赖于更新颖的发票管理协议,比如 BOLT12 主动支付协议或者 LNURL。还讨论了许多别的难点。
余额打探及共享:当前,使用多种技术,你可以 打探 出网络中某个通道的余额分布。这样的侦测对执行侦测的节点来说是没有成本的,却会对网络的普通用户造成困扰,还会降低隐私性。对专门的 “ 通道干扰攻击” 的缓解措施也能帮助限制侦测,但当前人们还有疑虑,所以参与者们讨论了一些节点设定上的简单变更,让侦测变得更困难。
此外,一个之前大家讨论过的思想实验是,把执行侦测的节点可能获取的信息提取出来并主动、免费地分享。要是每一个节点都这样做,带宽要求和隐私降级都会削弱闪电网络的关键优势 —— 但这会让支付路由高效得多。没有人支持这种想法,但之前的一个研究课题讨论了每个节点都只向自己的直接通道对手分享一些可被侦测的信息的想法。有人主张这会极大地提高支付路由的成功率,比如可以增加 “ 柔性的通道再平衡(Just-in-time channel rebalancing)” 机制。
蹦床路由与移动支付: 蹦床路由 允许一个花费者将寻路的任务外包给网络中的另一个节点,还可以选择性维持闪电网络通常的隐私性,即防止任何中间节点知道花费者和接收者的身份。这种外包对移动端的闪电网络客户端尤其有用,因为它们本身不打算为其他节点路由支付。会议总结中提到,蹦床支付可以跟 一跳保管支付(first hop payment holds)(见 周报 #171)相结合,后者的意思是支付由花费者的直接通道对手保管,直到接收节点下一次上线,他能允许一个经常离线的手机节点可靠地接收来自其他经常离线的手机节点的支付。
闪电网络统一资源位置符加闪电网络技术基础十二:闪电网络统一资源位置符(LNURL)协议允许一个节点向一个互联网服务器(webserver)请求一个 [BOLT11][] 发票;而 BOLT12 主动支付 协议允许一个节点向网络中的另一个节点请求发票。围绕这些协议的其它侧面,参与者们讨论了这两个协议如何相互兼容,使得节点可以使用其中一个或同时使用两个。
使用路由费来说明流动性:开发者 ZmnSCPxj 在 Lightning-Dev 邮件组中 发帖,论证了最便宜和可靠的支付如何可以通过花费者和路由节点之间的博弈理论行为来实现:
ZmnSCPxj 使用供给和需求经济学表述了这套论证 —— 随着一个方向上(比如 Alice 到 Bob)的路由支付需求上升,其它方向上可以路由的资金的供给量自然会下降。提高路由费的价格可以遏制需求量的上升,直到供给量因为人们相反方向(从 Bob 到 Alice)的支付而恢复。
花费者已经会自然而然(在其它条件都相同时)选择更低的手续费了,所以 ZmnSCPxj 认为,任何路由节点,只要使用了 高供给量/低手续费 和 低供给量/高手续费 的策略,都会自动让通道保持合理的平衡,并且因此能够在其通道存活的时间里处理更多的成功支付(相比不使用这种策略的节点)。因为路由节点只能从成功的支付中得到报酬,所以使用这种策略的节点会更有竞争力。
这种方法的一个关键好处在于它让花费者的寻路变得非常容易 —— 在容量允许的范围内,只需要通过最便宜的路径来支付即可。缺点则是,在这种策略下,每次路由手续费率的变更都暗示了通道平衡的相应变化,因此会暴露最近通过这个通道来路由的支付的面额。举个例子,如果 Alice→Bob、Bob→Carol 和 Carol→Dan 三条通道的可用容量都下降了 1 BTC,那么你可以合理猜测,Alice 或其通道对手路由了 1 BTC 的支付给 Dan 或者 Dan 的通道对手。还有一个问题是,每次通道的手续费率变更都要 gossip 到整个网络中,这会提高带宽要求,也会导致虚假的路由失败(例如,因为花费者 Sally 不知道 Alice 提高了手续费率,所以试图通过 Alice 跟 Bob 的通道来路由一笔支付,但是使用更旧(也即是更低)的费率,然后 Alice 就拒绝掉了)。
ZmnSCPxj 介绍了多种缓解措施,有一些是无需改变闪电网络协议就可以在节点上实现的,有些则要求略微改变闪电网络的 gsssip 协议。截至本期周报撰写之时,这些缓解策略还未得到邮件组的任何讨论,虽然 Olaoluwa Osuntokun 在闪电网络开发者会议总结中已经提到了它们(已经由 Optech 在上一段中作了进一步总结)。
热门比特币基础设施项目的新版本和候选版本。请考虑升级到新版本或帮助测试候选版本。
本周出现重大变更的有: Bitcoin Core、 Core Lightning、 Eclair、 LDK、 LND、 libsecp256k1、 硬件钱包接口(HWI)、 Rust Bitcoin、 BTCPay Server、 BDK、 Bitcoin Improvement Proposals (BIPs) 以及 Lightning BOLTs。
- 本文转载自: btcstudy.org/2022/06/20/... , 如有侵权请联系管理员删除。
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!