okex欧易交易所封面图

okex欧易交易所

okex欧易交易所是国内最大的数字货币交易所,现在注册永久免20%手续费!

官网注册

作者:Alex Bosworth

来源:https://lightning.engineering/posts/2025-02-13-loop-musig2/

本文会解释我们如何使用 “MuSig2”(Schnorr 电子签名算法的聚合公钥协议)来加强 Lightning Loop —— 我们的非托管潜水艇互换服务。潜水艇互换让用户可以交换链上的比特币与闪电网络中的比特币(反之亦可),办就是哈希时间锁合约(HTLCs),它保证了原子性、消除了对手方风险。

我们也很高兴分享我们在 Loop In上的技术进步,用户现在可以将链上比特币直接发送到一条闪电通道中以补充出账容量、用于 Lightning Loop。最近的一版更新让 Loop In 的用户可以利用 MuSig2, 在互换的链下部分执行之前,提前在链上为 Loop In 互换注资。从终端用户的角度看,这减少了用户体验的复杂性,而且可以锁定可能的较低成本,而且支持重试,所以是增强了 Loop In 的功能性。

给 Loop 加入 MuSig2

去年,我们将是所有的 Loop 互换都升级成使用 MuSig2 签名,这降低了所有互换的代价。MuSig2 是一种多重签名方案,设计目的是让比特币交易更加高效、隐私和安全。它让多方可以合作生成一个签名,并且这个签名跟放在常规单签名交易中的没有区别(从区块链上看不出区别)。它减少了交易体积,从而降低了手续费,并且也通过隐藏参与者的数量加强了隐私性。与更早的多签名方案相比,MuSig2 更快,而且消除了每一个步骤都需要交互通信的需要。

此外,我们还加入了 Instant Loop Out,可以立即将通道资金换成链上资金,无需等待区块确认。Loop Out 互换的作用是补充通道的入账容量。这种即时模式允许用户预先将资金注入一个非 HTLC 的父输出中,其子 HTLC 是虚拟化的,所以超时机制(在这个注资的时刻)还不会开始计时;因此,我们就可以提前注资,不必等到迫在眉睫。这就像支付通道会提前得到确认,远远早于用户有意支付之前。

这一变更是我们的 MuSig2 和 Taproot 计划的一部分,我们希望完全利用由这些新功能带来的好处。计划的第一步是简单升级到 Schnorr 签名,比起 ECDSA 签名,其体积更小,因此空间效率更高。然而,由于 Taproot 的脚本设计,在一些场景中,这可能会造成更多的空间花费。所以,我们积极迁移到 MuSig2,将互换的机制从脚本执行(会在链上写入互换的所有细节)转变成合作式密钥花费,这样就能省去互换的细节,并且,由于使用了聚合公钥,最终在链上只会留下一个签名,也不会有脚本的执行。

更低的代价,对开发者更友好的用户体验

在最新版本中引入新的 Loop In 功能后,一旦 Loop In 交易在链上得到确认,终端用户就能发起 Loop In,无需等待。这让用户可以抓住低手续费的时机注入资金,从而减少跟 Loop In 服务相关的手续费开销。

这是通过将潜水艇互换的技术实现从一个 “2-of-2 OR HTLC(双签名花费,或 HTLC 花费)” 输出变成一个 “2-of-2 OR RELATIVE-TIMEOUT(双签名花费或相对时间锁过期,可以单方启动退款)” 输出(以及一个虚拟化的子交易)来实现的。这种新的相对时间锁输出,在互换时只会被花费到一个虚拟的带有 HTLC 输出的子交易中;即使该子交易实际用于互换,也依然可以使用合作分支,而不是将 HTLC 完全暴露在链上,所以互换的链上体积已经保持在最小规模 —— 一个签名,没有嵌套的交易。

这样一来,Loop In 就获得了额外的 MuSig2 和 Taproot 特性,服务商可以重试或取消互换,而不是只能让互换成功或失败。这就消除了链下流动性转移比链上确认更快锁带来的潜在故障情形,资金不会再有卡住长达一周的情形,相反,在一段时间里,你可以无限次重试!顺便说一句,取消互换是免费的。

最后,它对开发者也更加友好:一旦一个互换地址(也即 2-of-2 OR RELATIVE-TIMEOUT 输出)建立,这个地址就不会承诺任何具体的时间或者支付哈希值,所以可以无限次使用;甚至不需要跟服务商互动也可以收款。服务商将仅在 Loop In 的用户启动互换时才注意到有这笔资金。这是非常有用的,在开发者不想要加载 Loop 客户端的时候、想要从不支持闪电支付的交易所取出自己的余额时候、希望限制放在自己的活跃通道(热钱包)中的资金而又不想牺牲自己的闪电支付能力的时候。在互换地址的相对时间锁过期之前,你可以随时将这些资金转移到闪电通道中。这就提高了灵活性,因为,你可以在资金存入的几个月后再发起即时互换。

未来的强化

如上所述,这些特性的初步实现从手续费、重试机会以及交易时机上给终端用户提供了更好的体验。除了这些提升,我们也期待还能进一步加强这些特性、给用户更多灵活性。我们已经在开发这些加强措施了,一旦 Loop In 交易在链上得到确认,用户就可以:

  1. 直接开启通道
  2. 以冷存储的私钥来控制这些资金,虽然它们可以随时加入你的通道中
  3. 直接存入一个交易所或者冷钱包

从概念上来说,有了这些升级,向一个 Loop In 地址注资将不需要终端用户牺牲任何东西,因为存入其中的资金可以用于常规的链上支付(不需要支付更多的手续费)。感谢 MuSig2 和 Taproot,Loop In UTXO 将升级成可以做到常规 UTXO 能做的所有事,而且开销完全相同。最终,在未来几个月里,我们计划让这套新流程变成所有 Loop 交易的默认选项。

此外,在未来,Loop In 互换地址可以预充值足够的资金,允许多次互换。所以,虚拟交易将变成单向的支付通道(而不是一次性的互换),用户的签名只是在通道中给服务商分配更多资金。

结论

总结一下,Loop In 互换地址的新模式使之可以重复使用,而这些地址都无需服务商交互就可以存入资金,两者都大大简化了用户体验。此外,用户可以提前几个月注入资金,供后续的互换需要;在合理使用时,这将为用户的互换操作减少链上手续费代价。最后,新模式允许用户在互换失败时重试,从而可以提高一段时间内互换操作的最终成功率。在不远的将来,终端用户将能使用互换地址中的 UTXO 来注资任何链上操作,而不需要承担(比常规的链上资金)更大的开销,从而获得最大的灵活性。

未来,我们还计划使用这种的父子交易机制加入许多新的特性,甚至,我们还可以添加一笔祖父交易或其它分支启动步骤,使之变得更加灵活。我们的主要目标是熔化互换操作的注资,从而,不再是每个用户都每一次互换请求一个自己的输出,而是让用户们在互换间共享他们的输出,然后我们再分割这个注资输出。简单来说,如果两个用户使用 Loop IN,那么,不再是他们各自跟服务商形成一个 2-of-2 输出,而是三方合并成一个 3-of-3 输出,从而 UTXO 的数量可以从 2 个减为 1 个,有了这样的进步,我们就可以推广到 N 个用户的情形,从而每次互换只会形成固定数量个输出,意味着只要规模够大,我们可以将形成输出的成本削减到近乎为零。

链上效率只是 Loop 的其中一个考量。我们也关心其它同样非常重要的方面,例如链下流动性考量、审计、手续费优化、操作安全性、自动化,等等。我们的目标是为以及将 Loop 用于真实世界商务的用户优化体验,并解决去中心化的闪电网络可能遭遇的任何流动性问题。此外,我们也在积极寻求反馈,希望能加速这一切。

关于新的 Loop In 互换,想了解更多,请阅读我们的 Loop In 说明书。我们希望与社区紧密合作以迭代这些特性,欢迎在 GithubSlack 上给我们反馈。

(完)

The End

文章声明:以上内容(如有图片或视频亦包括在内)除非注明,否则均为谈天说币原创文章,转载或复制请以超链接形式并注明出处。

上一篇 下一篇

相关阅读