比特币:闪电网络的历史:从头脑风暴到测试版本(上)

几周以前,第一个闪电网络实现?lnd?已经正式推出beta版。第二个实现?eclair?在上周发布,第三个实现?c-lightning?也快要来了。因此,这个在比特币上实现便宜和即时支付的覆盖层网络,已被大部分其开发者认为可以安全地用在比特币主网上了:这是这项技术在经年开发之后的一个重大里程碑。

这个故事,说起来可就长了。

第一串火花

闪电网络在观念上的起源最早可以追溯到比特币本身。

闪电网络用到的第一个概念叫做“支付通道”。而支付通道本质上就是两个比特币用户之间的比特币余额;而且只需要他们彼此知道就好,其他人既不需要知道,也不需要关心他们相互之间的关系。重要的是,他们彼此的余额无需任何链上的比特币交易就能更新;而且A的余额增加,就意味着B的余额减少同样的数量。

在他们完成交易,心满意足之后,他们只需在网络中广播一笔交易就可以结算他们的支付通道:这一笔交易会基于他们的通道余额,给双方分发应得的数额。对于他们双方来说,这也意味着通道的更新相对更便宜,因为不需要付矿工手续费,而且也更快,因为不需要区块链的确认。

这个观念,整体上可以说跟中本聪在2009年放出的比特币软件一样早。Bitcoin0.1就包含了一个代码草稿,是允许用户在交易被网络确认之前更新这笔交易的:

比特币闪电网络节点数量为36,136个:金色财经报道,1ML网站数据显示,比特币闪电网络(LightningNetwork)的节点数量为36,136个,同比增长2.26%;通道数量为86,024个,同比下降1.3%;网络容量为3,714.88BTC,同比增长6%。[2022/4/9 14:13:41]

Bitcoin0.1包含的支付通道草稿

虽然这份代码很粗糙,中本聪后来在跟?bitcoinj?开发者私聊时MikeHearn讲了更多支付通道如何工作的细节。

几年以后,Hearn在比特币开发邮件组中公开了中本聪对支付通道的解释:

中本聪对支付通道原理的解释,曝光自MikeHearn

第一个支付通道

虽然支付通道作为一个概念,可以说与比特币同样久远,中本聪的设计是不够安全的。更重要的是,支付通道中的一个用户可以跟矿工合起伙来让区块链确认一个旧的交易,从而获得比自己该得的数量更多的比特币。

闪电网络节点数量约为12040个:金色财经报道,据1ML数据显示,当前比特币闪电网络节点数为12040个,过去30天内增加3.58%;通道数量为36140个,过去30天内下降0.5%;网络容量达到928.95个BTC,过去30天内上升4%。[2020/3/30]

这个问题的第一个解决方案出现在2011年。Bitcointalk论坛用户“hashcoin”?构想了一种双层的支付通道hashcoin,需要用户交换部分签名的多签名事务,以及与这些多签名事务相互依赖的时间锁事务。如果一个参与者消失了了,另一方可以在等待一段时间后拿走通道中的所有资金。不过,这一设计的缺陷在于,这种支付通道是单向的。Alice可以给Bob支付任意次,但Bob没法用同一个通道给Alice支付。

另一个类似于hashcoin的想法在2013年早期浮出水面,而这一次它不再只是想想而已。在这一年的4月份,JeremySpilman在比特币开发邮件组中描述了一个支付通道的概念。他甚至写了一份概念验证代码。这个设计又由MikeHearn调整过,后来成为BitcoinCore软件贡献者、Blockstream?公司联合创始人和?ChaincodeLabs?开发者的MattCorallo在?2013中段把它从概念变成了?bitcoinj?上可以工作的代码。

又过了一年,AlexAkselrod首次提出了双向的支付通道。Alice可以给Bob支付任意多次,而Bob也可以使用递减的时间锁,在同一个通道中给Alice支付——只不过次数是有限的。不过,不像单向的支付通道,这个解决方案从来没被代码实现过。

动态 | 研究:闪电网络集中程度超出预期:金色财经报道,根据瑞士、法国、意大利和加拿大的一组学者在arXiv上发表的一篇论文,闪电网络(LN)的配置正变得越来越集中,并形成了多个集线器。这些学者收集了从2018年1月18日到2019年7月13日间闪电网络的信息。他们发现,该网络在节点集中和财富分配方面均显示出极高的基尼系数。每个节点上的比特币分布极为不均匀,基尼系数为0.88,相当于10%的节点持有80%的BTC。这表明BLN(比特币闪电网络)正在成为一个越来越集中的网络,与核心外围结构越来越兼容。[2020/2/22]

第一个支付网络概念

在第一个支付通道的概念出现的同一时间,其他人——包括BitcoinCore开发者?PeterTodd?和?GavinAndresen?——也在思考离链的支付网络。如果Alice可以通过链下的交易给Bob支付,而Bob可以通过一笔链下的交易给Carol支付,那么Alice也应该能通过Bob给Carol支付、无需让交易上链才对。

CornéPlooy也一直在研究比特币的支付层,根源于他在?2011年提出的一个初步想法。

动态 | 比特币闪电网络节点数量已达11269个:据1ML数据,当前比特币闪电网络节点数为11269个,过去30天内增加2.83%;通道数量为36015个,过去30天内增加1.6%;网络容量达到877.75个BTC,过去30天内增加2%。[2020/2/3]

?Plooy的支付层层的一个早期图示,后来成了闪电网络的前身AmikoPay

在BitcoinCore的开发者和未来Blockstream公司的CTO?GregoryMaxwell,以及Ripple创始人?RyanFugger的建议之下,这个想法?经过?了?多年?的发展,变成了比特币和原初的Ripple基础的集合体,并产生出了一个Plooy叫做“AmikoPay”的系统。AmikoPay更早的草稿没有用到支付通道的,因此需要为这个系统注入信任:如果某个用户拒绝与另一个用户结算余额,后者没有任何办法。

一个使用了支付通道的早期支付网络构想由数学家、后来成为?BitcoinemBassyTLV?合伙人的MeniRosenfeld在2012年提出。在Bitcointalk论坛上,Rosenfeld描述了一个由支付处理商替代Bob,服务于Alice和Carol的例子。这个支付处理商,反过来,也跟其他的支付处理商开设了支付通道,所以整个支付通道网络是一个车轮模型。?

这种解决方案在过去几年中出现了很多次。例如,BitcoinCore的贡献者PeterTodd就曾在2014年在比特币开发者邮件组中提出过这种概念。与此同时,支付处理商?BitPay?也在2015年初公开了一份有关类似的通道内支付方案的白皮书。而一个相似的解决方案也由瑞典的创业公司?Strawpay?实现了出来,叫做?Stroem,就在几乎同一时间——但这些进展都没有造成很大影响。

金色相对论 |?Blockstream缪永权:闪电网络不需要大众的共识来进行代码修改:在本期金色相对论之“闪电网络:Hello,TPS”上,金色财经合伙人佟扬对话Blockstream首席战略官缪永权,针对目前闪电网络是否已经足够安全的问题,缪永权表示,多一层代码其实是多一层安全。就和互联网一样,比特币的开发也是一层一层来的。互联网拥有5层:物理层、链路层、网络层、传输层和应用层。你能看到的这段话其实是在应用层上。在比特币的第1层里,矿工进行挖矿,交易一般在10分钟内得到确认。比特币的第2层上则有闪电网络以及侧链,例如Liquid网络。在第1层上开发必须小心谨慎地进行,因为稍有不慎就有可能毁掉整个网络。像比特币这么大规模的网络,如果在第1层上出问题,则后果不堪设想。而在第2层上,我们可以更快地进行创新和升级。如果第2层上出了什么问题影响也没这么大,因为第1层还是完整的。闪电网络的设计非常巧妙,并且包含了故障保险,即使代码出现问题,也只会带来较小的故障,而不会有资产损失的风险。更好更安全的设计也能够很快地进行安装,因为不需要大众的共识来进行代码修改。[2019/3/7]

现已倒闭的Strawpay小额支付公司的Logo

一个更早的、建立免信任的支付通道网络的尝试,来自AlexAkselrod。他在2013年提出了一个草案,在2014年这份草案转化为一份概念验证代码。Akselrod的解决方案花了很大力气,在理论上解决了这个问题。但在实践中,问题依旧。比如说,如果一笔支付在路由过程中失败了,用户没有任何追索权,只有等支付通道的时间锁解除后资金释放,而这可能要经历几个月的时间。

与此同时,到了2015年,Plooy的AmikoPay已经进化到了可以免信任工作的地步。不过,他的设计需要对比特币协议进行相对深远的更改,以至于需要回滚特定类型的交易。虽然在技术上是可以做到的,但这样对比特币的更改会不会被接受,并不那么显然。

这一年的年底,来自苏黎世联邦理工学院的研究员、ChristianDecker博士和RogerWattenhofer在他们的白皮书“AFastandScalablePaymentNetworkwithBitcoinDuplexMicroaymentChannels”中提出了另一种覆盖层网络设计。他们的解决方案重度依赖于时间锁来作为通道有效性的“倒计时装置”,以及一种叫做“无效树”的密码学技巧来作废陈旧的通道交易。

Akselrod的解决方案、AmikoPay后来的草案,还有Duplex小额支付通道都在某些方面类似于闪电网络,也都可以在不同的假设下正常工作。如果闪电网络没有发明,这里的任何一个方案都有可能成为比特币扩展层的基础。

但是,历史没有如果,闪电网络横空出世。

闪电网络

支付通道和网络设计演化了多年之后,终于在2015年初集齐了所有的拼图。

智能合约交易平台?Mirror?的CTOThaddeus“Tadge”Dryja和JosephPoon一起撰写了一份名为“TheBitcoinLightningNetwork:ScalableOff-ChainInstantPayments”的白皮书,在2015年的2月首次出版。

事实证明,它扭转了乾坤。

闪电网络白皮书提出了多种解决方案,来实现一个完全免信任的支付通道网络:任何人,只要想欺诈,就要冒着失去自己在通道中所有余额的风险;而且传递支付交易的中介也别想偷走一分钱。此外,这个解决方案只需对比特币协议做相对较少的变更,并且承诺比已经有的其它方案更灵活、对用户更友好。

这个白皮书所描述的关键创新是“Poon-Dryja通道”。跟早期的其它支付通道设计一样,Poon-Dryja通道也依赖于参与者交换部分签名且未广播至全网的交易。但与前辈们不同的是,这种新的通道还需要额外的一步:双方需要不断交换秘密数值;这一设计使得通道可以在任意“方向”上更新。Alixe可以给Bob支付任意次,而Bob也可以在同一个通道中给Alice支付任意次。

此外,闪电网络还利用了?哈希时间锁合约。这个概念一般认为是TierNolan?提出的,设计初衷是用于跨区块链交易;举个例子,用于免信任地互换比特币和莱特币。在闪电网络中,这种工具用于把多个支付通道串联起来。

Poon和Dryja在2015年2月的旧金山比特币开发者研讨会上首次展示了他们的构想。

在这之后的几个月,整个2015年的春天和夏天,比特币的扩展问题和区块大小上限的分歧演变成了公开的争执。在这种危机气氛中,人们在2015年底召开了连续两场大会:9月份召开了?ScalingBitcoinMontreal,10月份是?ScalingBitcoinHongKong。在蒙特利尔,Poon和Dryja?再次登台演讲,并且?Poon?和?Dryja?都在香港作了第二次更深入的演讲。

就在香港的大会之后,GregoryMaxwell在比特币开发者邮件组中提出了一份扩展方案路线图。这张路线图突出地包括了闪电网络。它获得了比特币技术社区大部分人的支持,并且变成了BitcoinCore项目在事实上的路线图。

如果人们原本对闪电网络的期待还不够高,这下就完全够了。

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

地球链

SOLDAO:DAO理想有点早

DAO(去中心自治组织)在几年前就了解,近期在加密VC圈又开始火了,记不清是哪个投资人说的,现在的DAO将会是下一个"defisummer"?.

[0:0ms0-1:658ms