主页 > imtoken钱包苹果版下载 > 什么是比特币的闪电网络?

什么是比特币的闪电网络?

imtoken钱包苹果版下载 2023-12-15 05:08:53

闪电网络弥补了比特币的不足

1.比特币支付不是即时的。一条区块链包含许多区块,每个区块记录多笔交易。一旦一个区块被交易填满,就需要在下一个区块开始记录交易之前将其添加到区块链中。但是,在将一个块添加到区块链之前,需要执行一些处理以确保每个人都信任它包含的内容。这个过程称为挖矿。这样,一旦区块被挖出,区块内的交易就被确认,支付成功完成。但是挖一个区块平均需要 9 到 10 分钟。

2.缺乏可扩展性。为了保持其去中心化的性质,块大小限制为 1MB。由于区块大小的限制和区块挖掘之间的最小延迟,区块链每秒只能处理 2 到 12 笔交易。如果以比特币作为主要支付方式,其区块链的交易处理能力至少需要提升3个数量级。

3.交易手续费太高。交易速度限制导致区块链网络拥堵,数千笔交易等待确认,交易延迟数小时。区块链的架构性质(给予的费用越多,激励矿工将交易打包成块的速度越快)推动了费用的增加,因为用户愿意支付更高的费用以使他们的交易放在前面事务队列。交易费用的任何暂时下降都可归因于交易量的减少。

闪电网络(LN,Lightning Network)为比特币演变为功能性货币奠定了基础。闪电网络提出了一种解决当前区块链缺点的脱链交易模型。该模型可实现:

1.即时付款。闪电网络可以快速完成支付,无需担心交易何时被确认。安全性由区块链智能合约保证,无需将单个交易转移到主链进行处理。支付速度以毫秒计算。

2.出色的可扩展性。整个网络每秒能够处理数百万到数十亿笔交易。通道容量比传统的块容量大几个数量级。现在无需托管即可完成付款。

3.费用低。通过链下交易,闪电网络能够以极低的费用实现即时小额支付。

这是闪电网络的起源

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

闪电网络难题的第一部分可以从一个名为“支付渠道”的概念开始。支付通道本质上是两个比特币用户之间的比特币余额,而该​​通道只连接两个用户:世界其他地方不需要知道或关心他们的共同余额是多少。更重要的是,这些余额可以在不需要任何比特币链上交易的情况下更新;当一个用户的余额增加时,另一个用户的余额相应减少。实际上,这个过程允许参与者相互交易,而不会用他们的交易数据给整个比特币网络带来负担。

一旦用户完成交易,他们可以通过向网络传输一笔交易来结算他们的支付渠道:交易根据用户的渠道余额支付他们每个人应该收到的比特币。这个过程对用户的好处意味着通道更新(“链下交易”)更便宜,因为他们不需要支付挖矿费用,并且由于这些交易不需要区块链确认,其相应的交易速度更快。

这种普遍观点可以说是早在 2009 年中本聪发布第一个比特币软件时。比特币 0.1 包含一个原始草稿代码,允许用户在确认交易之前更新交易:

(包含比特币支付渠道代码草稿的副本0.1)

虽然此代码只是一个粗略的草稿,但在 Satoshi Nakamoto 与当时的 bitcoinj 开发人员 Mike Hearn 私下交流时,它更加详细,解释了支付渠道的工作原理。

几年后的 2013 年,赫恩在比特币开发邮件列表上发表了中本聪对支付渠道的解释:

(中本聪对支付渠道如何运作的解释,如 Mike Hearn 所述。)

第一个支付渠道

虽然支付通道的概念存在时间和比特币一样长,但中本聪的设计并不完全安全。最重要的是,支付通道的用户可以与矿工串通以获得比通道余额更多的比特币。

在 2011 年夏天,中本聪离开比特币项目后,首次提出了该问题的解决方案。 Bitcointalk 论坛用户“hashcoin”列出了一个两层支付通道,该通道要求用户将几个部分签名的多重签名交易与具有依赖于彼此确认的时间锁的交易进行交换。如果一个参与者消失,另一个参与者可以在一定时间后索取支付通道中的所有资金。然而,这种设计的缺点是哈希币通道只能在一个交易方向上工作。 Alice 可以向 Bob 支付任意数量的款项,但 Bob 不能通过同一渠道向 Alice 支付款项。

类似哈希币的想法在 2013 年初重新出现,这一次绕过了理论领域。那年 4 月,Jeremy Spilman 在比特币开发邮件列表中描述了支付渠道的概念。他甚至写了一个概念验证机制。在比特币核心参与者、Blockstream 联合创始人和 Chaincode Labs 开发人员 Matt Corallo 在 2013 年年中将该概念转化为 bitcoinj 的工作代码之后,Mike Hearn 对设计进行了调整。

一年后的 2014 年,Alex Akselrod(现为 Lightning Labs 的工程师)率先提出双向支付渠道。在这个通道中,Alice 可以向 Bob 支付任意次数,但是通过使用更少的时间锁,Bob 可以在同一通道中向 Alice 支付,尽管支付次数有限。但与单向支付渠道相比,这种解决方案从未真正在代码中实现。

第一个支付网络的概念被提出

大约在提出第一个支付渠道的同时,正在考虑其他人,包括比特币核心开发人员 Peter Todd 和 Gavin Andresen 链下支付网络。如果 Alice 可以通过链下交易向 Bob 付款,而 Bob 可以通过链下交易向 Carol 付款,那么 Alice 应该能够通过 Bob 向 Carol 付款,而无需进行任何链上交易。

Corné Plooy(现为荷兰比特币交易所 BL3P 的闪电网络开发人员)也在研究比特币支付层,这是他在 2011 年首次提出的想法。

(这是 Plooy 支付层设计的早期示例,它将演变为闪电网络的前身 Amiko Pay。)

在比特币核心开发人员和 Blockstream 未来首席技术官、Gregory Maxwell 和 Ripple 发明人 Ryan Fugger(以及其他人)的建议下,这个想法在过去几年演变成比特币和比特币。原始 Ripple 技术的合并版本最终形成了名为“Amiko Pay”的 Plooy 系统。 Amiko Payments 的早期草案没有设计使用支付渠道,因此开发人员在系统中注入了信任机制,但是:如果一个用户拒绝与另一个用户结算余额,后者没有相关的追索权。

2012 年夏天,未来比特币公司 TLV 的联合创始人、数学家 Meni Rosenfeld 提出了一个利用支付渠道的早期支付网络。在 Bitcointalk 论坛上,Rosenfeld 描述了一个系统,其中 Bob(来自上面的示例)被一个支付处理器取代,其中 Alice 和 Carol 都是其中的客户。支付处理商还可以将渠道与拥有更多客户的其他支付处理商连接起来,从而将支付渠道网络变成一个轴辐式系统。

而且这样的系统确实在支付处理中引入了一点信任——他们可以拒绝完成支付并将钱留在手中——这个过程非常冒险:但是这种方法只能完成一次支付,直到用户注意到并停止使用该频道。此外,较大的付款可以分成较小的部分,如果付款处理器被证明不可靠,则只会丢失一小部分付款数据。

多年来,该解决方案已被多次重新审视。例如,Bitcoin Core 贡献者 Peter Todd 于 2014 年在比特币开发邮件列表上发布了该概念。同时,支付处理器 BitPay 在 2015 年初发布了关于类似跨渠道支付(“Impulse”)的白皮书。同时,类似的解决方案是实际上是由瑞典初创公司 Stroem 实现的——但这些迭代都没有以有意义的方式失败。

Alex Akselrod 是建立去信任支付渠道网络的早期尝试。在 2013 年的 wiki 草案中,Akselrod 的解决方案从理论上解决了这个问题。但他的解决方案的主要问题是它在实践中仍然相当笨拙。例如,如果在任一交易路径上支付失败,则用户没有追索权,他们必须等待资金通过支付渠道时间锁定才能释放,这个过程可能需要几个月的时间。

同时,在 2015 年,Plooy 的 Amiko Pay 已经发展到值得信赖的地步。然而,它的设计需要对比特币协议进行相对深远的改变,即需要回滚某些类型的交易。虽然这个想法在技术上是可行的,但不清楚这些对比特币协议的更改是否会被采纳。

同年晚些时候,来自苏黎世联邦理工学院的 Christian Decker 博士(现在在 Blockstream)和 Roger Wattenhofer 在他们的白皮书“使用另一种覆盖网络设计的快速、可扩展的支付网络”中提出了“比特币的双微支付通道”。他们的解决方案在很大程度上依赖于时间锁定作为支付通道有效性的“倒计时代码”,并结合一种称为“失效树”的加密技巧来处理过期通道余额。

Akselrod 的解决方案(后来成为 Amiko Pay)和 Duplex Micropayment Channels (DMC) 在某些方面类似于闪电网络,它们可以通过做出不同的权衡来实现自己。如果没有发明闪电网络,这些解决方案中的任何一个都可能成为比特币首选的扩展层。

当然,闪电网络是发明出来的。

闪电网络

经过多年的支付渠道和网络设计演变,闪电网络拼图的所有部分终于在 2015 年初拼凑在一起,形成了完整的形象。

智能合约交易平台 Mirror 的首席技术官 Thaddeus “Tadge” Dryja 和 Joseph Poon 于当年 2 月撰写了题为“比特币闪电网络:可扩展的链上即时支付”的白皮书。本月首次发布。

事实证明它改变了游戏规则。

这篇被认为是闪电网络白皮书的白皮书提出了几种实现完全无需信任的支付渠道网络的解决方案:当参与者将所有资金存入他们的账户时,当他们在同一渠道上时,他们不会冒欺诈风险,而中间商当用户完成交易时,他们甚至不能从用户那里窃取一丁点比特币。此外,该解决方案需要对比特币协议进行相对较少的修改,并且有望比目前提出的替代方案更加灵活和友好。

本白皮书中描述的关键创新是“Poon – Dryja Channel”。与早期的支付通道设计一样,Poon-Dryja 通道依赖于部分签名和非广播交易的交换。但与以前的支付渠道相比,这些新渠道采取了一些额外的步骤,包括交换密码,这使得支付渠道可以在不同的“方向”上更新。 Alice 可以向 Bob 支付任意次数,而 Bob 可以在同一频道中向 Alice 支付任意次数。

此外,闪电网络使用散列时间锁合约 (HTLC)。这个概念通常被认为是由 Tier Noan 首次提出的,最初是为跨区块链交易而设计的;例如,通过这个系统,用户可以无需信任地交易比特币和莱特币。在闪电网络中,该解决方案用于通过支付渠道连接支付。

Poon 和 Dryja 于 2015 年 2 月在旧金山举行的比特币研讨会上首次分享了他们的想法。

在接下来的几个月里,在 2015 年春季和夏季,关于比特币扩容问题和区块大小限制的争论变成了一场公开斗争。在这种危机气氛下,2015 年底,利益相关者组织了一系列会议:9 月的 Scaling Bitcoin Montreal 和 12 月的 Scaling Bitcoin Hongkong。在蒙特利尔,Poon 和 Dryja 再次提出了他们的建议,随后在香港就该主题进行了第二次更深入的介绍。

在香港会议的第二次扩容会议之后,Gregory Maxwell 在比特币开发邮件列表中展示了比特币扩容路线图,其中还包括闪电网络。该路线图得到了大多数比特币技术社区的支持,并成为比特币核心项目的路线图。

如果没有预期闪电网络足够大,那么现在肯定会变得更大。

闪电网络的实现

闪电网络白皮书是一篇冗长而复杂的论文,涵盖了高度技术性的概念;在 2015 年,很少有人有时间和相关技能来阅读和理解它。但是,长期从事 Linux 内核开发的 Rusty Russell 了解了这份白皮书,他对这项技术的理解有了长足的进步。在 2015 年初发布的一系列博客文章中,Russel 将白皮书“翻译”成普通读者更容易理解的提案(但其内容仍然相当技术性)。

在接下来的 2015 年 5 月,区块链开发公司 Blockstream 聘请了 Russell,并希望它在 C: C – Lightning 中实施闪电网络。这一重大举措被证明对闪电网络的实施至关重要。几个月前才提出的一个概念,现在正在由世界级的开发人员实施。后来,Christian Decker 也加入了 Russell 在 Blockstream 的项目什么币有可能是第二个比特币,包括 Corne Plooy 在内的其他开发人员也将在未来几年为开源项目做出贡献。

在 Russel 开始研究 c-lightning 后不久,Blockstream 就不再是唯一一家实施闪电的公司。到 2015 年夏天,原本计划开发基于 Android 的硬件钱包的小型比特币技术公司 ACINQ 也决定尝试这项有前途的技术。这家总部位于巴黎的初创公司后来宣布,它已经开发了自己的 Scala 编程语言“eclair”来实现闪电网络端协议。

闪电网络的第三次实施也将在未来几个月内进行。到 2016 年 1 月,闪电网络的两位作者 Poon 和 Dryja,以及 Elizabeth Stark 和 Olaoluwa “Laolu” Osuntokun 共同创立了一家全新的公司来开发闪电网络:Lightning Labs。 Lightning Labs 将带头开发 lnd,这是一种以 Google 的 Go 编程语言(也称为“golang”)实现的闪电网络技术,他们在公司成立之前就开始开发。

在公司成立大约一年后,2016 年底,Dryja 离开了闪电实验室,加入了麻省理工学院媒体实验室的数字货币计划,该组织聘请了比特币核心开发者作者 Wladimir van der Laan 和其他几位比特币核心贡献者。在麻省理工学院,Dryja 继续致力于他在闪电实验室所做的闪电网络实施,他将其重新命名为 lit。今天 lnd 和 lit 都存在。 Lit 与 lnd 和其他闪电网络技术的区别在于,将钱包和节点封装在一个数据包中;今天,它还通过配置选项同时支持多个硬币。

此外,以矿池和挖矿硬件闻名的区块链公司 Bitfury 分叉了 lnd 实施以生产另一个版本的软件。分叉的独特之处在于它在设计时进行了权衡,因此不需要对比特币网络进行可塑性修正——稍后将详细介绍这种独特性。 Bitfury 在交易路由领域也做出了贡献,最引人注目的是一个名为“Flare”的协议。 (不过,目前 lnd 的 Bitfury 分叉的开发进度似乎停滞不前。)

此外,2016 年,主要钱包提供商 Blockchain 宣布开发了一种名为 Thunder 的闪电网络的简化版本。与典型的闪电网络实施相比,这个版本做出了相当大的权衡,最明显的是因为它需要获得网络上交易对手的信任。通过这种权衡,它能够在 2016 年春季发布其实施的内部测试版,比其他开发团队早得多。 (虽然迅雷也可能兼容未来的闪电网络,但目前这个项目的开发似乎已经停滞不前了。)

2016 年底,第三届扩容大会——Milanbite 在扩容比特币米兰之后的几天里,闪电网络实施的大多数贡献者齐聚一堂,参加了第一届闪电峰会。在这次会议上,他们讨论了如何让所有不同的闪电网络实现相互协作,从而产生了一个名为“BOLT”(基于闪电的技术的首字母缩写词)的闪电网络协议规范。闪电网络白皮书是一个理论上的提议,而 BOLT 成为了我们今天所知的闪电网络的基础。

比特币的协议变化

当闪电网络白皮书首次发布时,它所描述的想法实际上与比特币协议不兼容——至少它并不安全。为了能够启用所描述的闪电网络,所涉及的开发人员需要对比特币进行一些协议更改。

第一个协议更改是一个新的时间锁,它将使支付渠道能够抵抗比特币的延展性漏洞。然而,这个问题早在闪电网络白皮书发布之前就已经解决,并在 2015 年彻底解决,当时由 Peter Todd 设计并提出的新比特币协议在比特币中实现:CheckLockTimeVerify (CLTV)。

后来,Bitcoin Core 的开发人员意识到闪电网络和相关的时间锁定功能会表现得更好。这些功能允许用户在确认另一笔交易后在特定时间点锁定比特币。使用闪电网络,用户可以无限期地打开他们的支付渠道,而 CLTV 时间锁则要求他们定期关闭他们的渠道。 2016 年夏天,在比特币网络上推出了名为 CheckSequenceVerify (CSV) 的软分叉升级,以实现相对时间锁定。

但闪电网络需要的最大协议更改(至少假设用户拥有良好的用户体验)是对任何比特币交易的延展性进行修改。

在闪电网络白皮书发布时,这被认为是一个巨大的挑战。虽然软分叉草案正在解决挑战,但开发人员不确定这样的解决方案是否可行,并认为网络需要硬分叉来解决问题。然后,到 2015 年底,比特币核心参与者意识到,作为 Blockstream 元素项目的一部分,隔离见证 (SegWit) 可以作为反向兼容软分叉部署在比特币上。

经过漫长的奋斗,SegWit 软分叉终于在 2017 年夏天启动,也为比特币闪电网络的发展铺平了道路。

闪电网络的内部测试版

虽然 SegWit 尚未部署在比特币协议上(也不确定是否会部署)什么币有可能是第二个比特币,但闪电网络仍在开发中。处理中。

闪电网络的部署始于一个测试网络,一个专门为测试目的而设计的比特币副本。或者更准确地说,在这种情况下,闪电网络从一个名为“SegNet 4”的专用测试网版本开始(这是隔离见证的第四个测试网),并于 2016 年 5 月正式启动。

在 2016 年 10 月部署 SegNet 4 后不到 6 个月,Blockstream 开发团队已将 c-lightning 原型升级到可以使用的地步。在被称为“闪电网络第一战”的活动中,Decker 在早期闪电网络周期中使用测试网比特币从 Russell 那里“购买”了一张猫的照片。

(这只猫的照片是 Christian Decker 从 Rusty Russell 那里购买的。)

到 2017 年 1 月,没有。闪电网络的实现 - lnd 的内部测试版发布。同时,闪电网络本身已经“正式”进入“内测”:首次邀请全球开发者试用该技术,闪电实验室将继续帮助项目测试并完善相应代码。

这个内部测试阶段反过来又导致越来越多的开发人员在 lnd 和其他闪电网络实施之上构建应用程序。在闪电网络上实现的这些应用程序被称为“Lapps”,这些应用程序包括从桌面和移动钱包到小额支付博客平台,再到赌博网站、浏览器等等的一切——尽管在大多数情况下,这些应用程序仍然是经过设计的用于比特币的测试网络。

2017 年夏天,SegWit 终于启动,比特币闪电网络的基础工作完成。从那时起,闪电网络的第一笔交易在比特币的主流网站上公布了三个月。不久之后,11 月,闪电实验室在区块链上进行了第一次闪电网络跨链交易:从比特币到莱特币。 12 月,来自 Blockstream、Lightning Labs 和 ACINQ 的开发团队宣布他们已成功完成互操作性测试。

此外,到今年年底,其他人开始使用比特币在比特币主网上的闪电网络上进行交易——在某些情况下违反了开发人员的建议。随着越来越多的闪电通道开通,到 12 月,开发者 Alex Bosworth 通过他构建的 Bitrefill 支付处理器的闪电通道支付电话费:有史以来第一次在闪电网络上进行真钱买卖。

一个月后,尽管该网站上有明确的风险警告,但 Blockstream(尽管其 c-lightning 的实施仍处于外部测试阶段)开设了一家在线商店,人们可以在那里购买真正的比特币来购买比特币产品。 2018 年 2 月,以比特币披萨闻名的比特币传奇人物 Lazlo Hanyecz 宣布将通过闪电网络购买两个披萨!

闪电网络的外部测试版

经过多年的发展,甚至更多年的概念化,闪电网络可能在几周前处于其发展道路上的最大里程碑。

截至 2018 年 3 月中旬,Lightning Labs 的 lnd 是第一个在外部测试版中发布的闪电网络实施。该公司还宣布了一项 250 万美元的种子投资计划,其中包括 Twitter 首席执行官 Jack Dorsey 等知名投资者,闪电实验室认为该公司一直在为比特币的主流网络(主要是技术用户)使用闪电网络做准备。

随后,ACINQ 于 3 月 28 日发布了一条推文,宣布 eclair 也发布了一个外部测试版,因此这也被认为是闪电网络为主网启动做好了准备。该公司还表示,他们的安卓版闪电钱包将于下周发布。 (本文发表时,发布日期为下周。)

Blockstream 的 c-lightning 实现尚未在外部测试版中发布,尽管其开发团队已向比特币杂志表示它也将很快发布。然而,这家区块链开发公司在今年 3 月的最后一周推出了七款新的 Lapp,这也凸显了该公司在闪电网络上的进展。

虽然人们已经在使用 Lightning 软件,但它的外部测试阶段只会进一步刺激这种增长。截至发文时,1000 多个闪电节点已经开通了近 5000 个支付通道,总共持有 10 个比特币(约合 7 万美元)。每天都有数百个新节点在线出现,甚至专门部署在莱特币上的闪电网络也正在形成,未来可能与比特币互通。

(撰写本文时的闪电网络图)

然而,即使有了这些进步,闪电网络仍处于早期阶段。今天大多数闪电网络用户仍然是技术专家(通常是开发人员),他们的使用主要是实验性的。虽然测试版软件是闪电网络发展的一个重要里程碑,但开发和改进网络是一个持续的过程,相关人员还有很多工作要做,闪电网络上存在一些未解决的问题路由、隐私和其他风险。还存在。这些问题很可能只有在更多人使用 Lightning 时才能得到解答。