Jan 带你细数八种支付通道解决方案

本周三晚,Nervos 首席架构师 Jan 在 Nervos 直播间和大家分享了八种支付通道方案:

  • Nakamoto「high frequency trades」
  • Spilman Channel
  • Duplex Channel
  • Timelock Channel
  • Duplex Micropayment Channel
  • Poon-Dryja Channel
  • Eltoo Channel
  • Generalized Bitcoin-compatible Channel

直播全程将近两个小时,干货满满。快来点击视频查看吧!

:point_down::point_down::point_down:

八种支付通道

虽然表面上看,状态通道是支付通道的泛化版本,但是实际上它们在一些核心区域的差异,导致它们在使用性和构造上都有很大的区别。我们今天看到比较有趣的支付通道构造大部分都构建在比特币之上,所以 Jan 的分享会以比特币上的支付通道为主。

首先,Jan 和大家介绍了 Nakamoto「high frequency trades」 。中本聪以前跟社区的交流当中,其实就已经提到了支付通道的想法,但是方案比较简单,也有较多的缺陷。

后来, Spilman Chennel 改进了中本聪的提议,做了一个开销低,且没有挑战期的通道。但问题是它依旧是单向的支付,没有办法做到双向传输。

因此后续又有了 Duplex channel ,它将单向通道变成了双向通道,方法是直接产生两个 Channel。不过,这样的方案一样会面临一些问题:通道的生命周期有限,资金的使用非常低效。如果每当通道里的资金没有了,就必须得再开一个通道。

于是,就出现了 Timelock Chaneel ,它通过时间锁来实现双向的通道。这样的好处就是他没有挑战期。但问题是他可以更新的次数是有限制的,而且支付的时间粒度会比较大。

之后,出现了 Decker-Wattenhofer Duplex Micropayment Channel (DMC) 的混合构造。DMC 的特点是多了 Invalidation Tree,它不仅是双向通道,而且没有挑战期,也没有之前几个通道那样的诸多限制。不过它仍然会存在三个问题:生命周期有限,Reset 次数依旧有限,而且单方面关闭通道的成本很高。

闪电网络的 Poon-Dryja Channel 提出了新的框架来解决之前面临的问题,并且通过惩罚机制来处罚发出老旧交易的一方,这是在过去的比特币的通道中一直无法达成的创新,同时 Poon-Dryja Channel 考量的问题特别周到,解决了很多前人遇到的问题,所以才会是目前比特币的闪电网络的方案。它可以无限制的做更新,而且通道的生命周期是无限的,惩罚机制也防止了通道的双方发送老旧交易。但是,Poon-Dryja Channel 也遇到了新的问题:首先是复杂度高,需要构造特别多的交易;其次是惩罚机制会占用特别大的空间(因为以前的交易状态都要保留);而且没有组合性(因为交易是不对称的) 。但 Jan 认为其实闪电网络已经非常了不起了,因为它解决的问题很多,甚至考虑了隐私这个设计难度和跨度很大的面向。

随后,Jan 和大家介绍一种新的构造方案 Eltoo 。Eltoo 是在 Poon-Dryja Channel 之后提出的,特点是用 Replace by version 的机制,也就是让每次更新的交易都带入一个版本号,来代替惩罚机制,并且用最新的版本号来达到状态最终的一致性。这样设计起来会相对的简单,复杂度低,而且组合性好,但目前他需要一个 SIGHASH_NOINPUT 的构造,目前比特币上还不具备,需要分叉后才有办法支持。然而 Jan 认为这也是一个很有趣的设计,而且达到状态的一致性的设计和比特币达成最终共识的思路有很大的相似。

最后,Jan 介绍了 Generelized Bitcoin-compatible Channel ,它也是双向的通道,并且有无限的生命周期,可以无限的更新,单方面关闭通道也是常量级的,去掉了闪电网络构造中的非对称性,所以会有更好的可组合性。但是它的问题是,因为它是基于 LN 惩罚的思路,所以依然会有 O(n)space cost,同时也有挑战期。

一起加入通道网络研讨会

为什么 Nervos 在研究支付通道呢?熟悉 Nervos 的小伙伴都知道 Nervos 是一个分层架构,目前 Layer 1 已经上线,但 这只是万里长征的第一步

Layer 2 是一个非常开放的问题,如何去组合它们,Layer 2 如何发展,怎样才能做到最好的 Layer 2,Layer 2 未来又会是怎样的状况,这些都是非常值得深入探讨的问题。

这个行业里已经有很多团队都在做着自己的探索,我们也是。另外,我们现在还在做 Channel Network 在线研讨会 ,已经举办过两期,我们会一起探讨虚拟通道、Routings 等方案。我们希望通过这样的形式,让更多的人能够参与到通道网络的研究中来。

在课程的最后,Jan 也给大家留了三道抢答题, 最先答对的三位同学将被邀请参加每周四正在进行的 Nervos Channel Network 在线研讨会

1.哪些通道建设不需要挑战期?
2. LN 的缺点是什么?
3.关闭 Eltoo 通道需要多少个交易?

欢迎小伙伴们在「Nervos 中文社区」公众号后台留下你的答案,一起探讨更多的通道网络方案。

扩展阅读