丁丁打折网 - 网友优惠券分享网站,有688999个用户

京东优惠券 小米有品优惠券

当前位置 : 首页>web3>闪电网络新手指南:比特币扩展解决方案

闪电网络新手指南:比特币扩展解决方案

类别:web3 发布时间:2025-07-14 10:10

关键要点

层2解决方案旨在解决区块链技术固有的可扩展性限制。闪电网络是一种层2扩展解决方案,它提供快速交易,无需区块确认,从而实现高效的微支付。它通过多重签名地址和哈希时间锁合约确保支付的安全性和可扩展性。

引言

加密货币具有独特的特性,难以被黑客攻击或关闭,任何人都可以在没有第三方干预的情况下通过它们在全球范围内传输价值。为了保持这些特性,必须做出重大妥协。由于许多节点负责运行一个加密货币网络,其吞吐量是有限的。因此,区块链网络每秒能够处理的交易数量(TPS)对于一项旨在被大众采用的技术来说相对较低。为了克服区块链技术的固有限制,已经提出了许多可扩展性解决方案,以增加网络能够处理的交易数量。在本文中,我们将深入探讨闪电网络,这是比特币协议的一种扩展。

什么是闪电网络?

闪电网络是一个在区块链之上运行的网络,用于促进快速的点对点交易。它不仅仅限于比特币,其他加密货币也已集成使用它。你可能会想知道我们所说的“在区块链之上运行”是什么意思。闪电网络是一个所谓的链下或层2解决方案。它允许个人在不需要在区块链上记录每一笔交易的情况下进行交易。闪电网络与比特币网络是分开的——它有自己的节点和软件,但它仍然与主链通信。为了进入或退出闪电网络,你需要在区块链上创建特殊交易。你在第一次交易中所做的是与另一个用户建立一种智能合约。我们很快会详细讨论——现在,你只需将智能合约视为为你和另一个用户持有一个私人账本。你可以向这个账本写入许多交易。这些交易只对你和你的交易对手可见,但由于设置的一些特殊功能,你们双方都无法作弊。这个迷你账本被称为“通道”。假设Alice和Bob各自向智能合约中存入5个BTC。在他们的通道中,他们现在都拥有5个BTC的余额。Alice可以写下“支付1个BTC给Bob”的交易。现在,Bob在他那边的余额变为6个BTC,而Alice的余额变为4个BTC。然后,Bob可以在稍后将2个BTC返还给Alice,更新余额为Alice的6个BTC和Bob的4个BTC。他们可以继续这样做一段时间。在任何时候,任何一方都可以将通道的当前状态发布到区块链上。此时,通道两端的余额将分配给各自的相关方在链上。正如其名,闪电交易速度极快。无需等待区块确认——只要你的网络连接允许,支付就可以完成。

为什么需要闪电网络?

迄今为止,闪电网络(或简称LN)似乎是扩展比特币区块链最合理的方法。在这样一个庞大的生态系统中协调变革是棘手的——存在硬分叉和潜在灾难性错误的风险。考虑到如此巨大的价值,进行实验是非常危险的。当你将实验移出区块链,你就有更多的灵活性。如果出了问题,它不会对实际的比特币网络产生任何影响。层2解决方案不会破坏任何使协议运行了15年以上的安全假设。也没有义务从旧的方式切换。链上交易对于最终用户来说继续正常工作,但他们现在也可以选择进行链下交易。使用闪电网络有几个好处。我们将在下面看一些主要的好处。

可扩展性

比特币区块大约每十分钟创建一次,并且只能容纳有限数量的交易。区块空间是一种稀缺资源,因此你必须与其他用户竞价以便在合理的时间内将你的交易包含在内。矿工首先关注的是获得报酬,因此他们会优先处理费用较高的交易。当没有太多用户同时尝试发送资金时,这不是一个真正的问题。你可以设置一个较低的费用,并且很可能在下一个区块中包含该交易。但是,当太多用户同时广播交易时,平均费用可能会显著上升。有多次情况费用超过了10美元。在2017年牛市的高峰期,它超过了50美元。2021年4月,平均比特币交易费用超过了60美元。对于移动数千美元价值的比特币的交易来说,这可能看起来微不足道,但对于较小的支付来说,这是不可持续的。谁想为3美元的咖啡支付10美元的费用呢?使用闪电网络,你仍然需要支付两次费用——一次是开启通道,另一次是关闭通道。但是一旦通道开启,你和你的交易对手就可以免费进行成千上万次交易。完成后,你只需将最终状态发布到区块链上。从长远来看,如果更多用户依赖于闪电网络等链下解决方案,区块空间将被更有效地利用。低价值、高频率的转账可以在支付通道中进行,而区块空间则用于处理大额交易和通道开启/关闭。这将使系统能够在长期内扩展到更广泛的用户基础。

微支付

在一笔交易中,你可以发送的最小比特币数量大约是0.00000546 BTC。撰写本文时,这相当于大约38美分。这是一个小的数额,但闪电网络允许你突破极限,以最小的单位0.00000001 BTC或一个聪进行交易。闪电网络对于微支付更具吸引力。常规交易的费用使得在主链上发送微小金额变得不切实际。然而,在通道内,你可以免费发送比特币的一小部分。微支付适用于许多用例。一些人推测,它们可能是替代基于订阅模式的可行替代方案,用户每次使用服务时支付微小金额。

隐私

闪电网络的一个次要好处是它可以为用户提供高度的机密性。各方不需要向更广泛的网络公开他们的通道。虽然你可能能够查看区块链并说“这笔交易开启了一个通道”,但你不一定能知道通道内发生了什么。如果参与者选择使他们的通道私有,只有他们知道正在进行哪些交易。如果Alice和Bob之间有一个通道,Bob和Carol之间有一个通道,Alice和Carol可以通过Bob相互发送支付。如果Dan与Carol连接,Alice可以向他发送支付。你可以想象这扩展成一个由互联支付通道组成的庞大网络。在这样的设置中,一旦通道关闭,你无法确定Alice向谁发送了资金。

闪电网络如何运作?

我们已经在高层次上解释了闪电网络如何依赖于节点之间的通道。现在让我们深入了解其内部运作。

多重签名地址

多重签名(或多签)地址是一个可以由多个私钥花费的地址。创建一个多签地址时,你指定可以花费资金的私钥数量,以及签署交易所需的私钥数量。例如,1-of-5方案意味着五个私钥可以生成有效的签名,并且只需要一个即可。2-of-3方案表示,在三个可能的私钥中,任何两个都需要花费资金。为了初始化一个闪电通道,参与者以2-of-2方案锁定资金。只有两个私钥能够签署,并且需要两者都同意才能移动资金。让我们此时重新引入我们的朋友Alice和Bob。他们将在接下来的几个月内相互进行大量支付,因此他们决定开启一个闪电网络通道。这从他们各自存入3个BTC到共同拥有的多签地址开始。值得重申的是,Bob不能在没有Alice同意的情况下移动资金,反之亦然。现在,他们可以只用一张纸来调整每一边的余额。两者都有3个BTC的起始余额。如果Alice想向Bob支付1个BTC,为什么不只是记下Alice现在拥有2个BTC,而Bob拥有4个BTC呢?可以这样追踪余额,直到他们决定将资金转移出去。这是可能的,但这有什么乐趣呢?更重要的是,这不是很容易让某人不合作吗?如果Alice最终拥有6个BTC而Bob一无所有,Bob拒绝释放资金不会失去什么(除了也许与Alice的友谊)。

哈希时间锁合约(HTLCs)

上述系统很无聊,并且在今天的信任设置下没有提供太多。当我们引入一种机制来强制执行Alice和Bob之间的“合约”时,情况变得更加有趣。如果一方决定不遵守规则,另一方仍然有办法从通道中取回他们的资金。该机制是哈希时间锁合约(或HTLC)。这个术语听起来可能令人生畏,但实际上它是一个相当简单的概念。它结合了两种其他技术(哈希锁和时间锁)来纠正支付通道中的任何不合作行为。哈希锁是一个对交易设定的条件,规定你只能通过证明你知道一个秘密来花费资金。发送方对一个数据进行哈希处理,并将哈希包含在给接收方的交易中。接收方唯一能花费它的方式是提供与哈希匹配的原始数据(秘密)。而他们唯一能提供该数据的方式是发送方将其提供给他们。时间锁是一个条件,阻止你在某个特定时间之前花费资金。它指定为实际时间或特定区块高度。HTLCs通过结合哈希锁和时间锁创建。在实践中,HTLCs可以用来创建条件支付——接收方必须在某个时间之前提供一个秘密,否则发送方可以收回资金。接下来部分可能用一个例子更好地解释,所以让我们回到Alice和Bob。

开启和关闭通道

我们给出了Alice和Bob刚刚创建交易以资助他们将共享的多签地址的例子。但这些交易还没有发布到区块链上!我们首先需要做一件事。Alice想要向一个外部地址发送这六个BTC,她需要Bob的批准。她首先准备一个交易(“六个比特币到这个地址”)并添加她自己的签名。她可以尝试立即广播该交易,但由于Bob没有包含他的签名,它将是无效的。Alice必须先将未完成的交易交给Bob。一旦他添加了他的签名,它就变得有效。我们还没有放置一个机制来确保大家诚实地玩耍。正如我们之前所说,如果你的交易对手拒绝合作,你的资金实际上会被困住。让我们进入防止这种情况的机制。有几个不同的活动部分,所以请耐心等待。每个参与者都需要想出一个秘密——我们就称这些秘密为As和Bs。如果Alice和Bob透露了它们,那将是糟糕的秘密,所以他们现在会保密。这对将生成各自秘密的哈希——h(As)和h(Bs)。因此,他们不是分享他们的秘密,而是分享这些哈希。Alice和Bob还需要在他们将首批交易发布到多签地址之前创建一组“承诺交易”。这将在另一方决定扣押资金的情况下给他们一个补救措施。如果你把一个通道看作我们之前提到的迷你账本,那么承诺交易就是你对账本所做的更新。每当你创建一对新的承诺交易时,你就在两个参与者之间重新平衡资金。Alice的交易将有两个输出——一个支付她自己的地址,另一个锁定到一个“新”的多签地址。她签署它并将其交给Bob。Bob也做同样的事情——一个输出支付自己,另一个支付另一个多签地址。他签署它并将其交给Alice。我们有两个非常相似的未完成交易。通常,Alice可以添加一个签名到Bob的交易中使其有效。但请注意,这些资金是从我们尚未资助的2-of-2多签地址中花费的。这有点像尝试从一个现在零余额的账户中花费一张支票。因此,这些部分签署的交易只有在多签地址开始运行后才可用。新的多签地址(3个BTC输出将被发送到的地方)有一些特殊的属性。让我们看看Alice签署并交给Bob的未完成交易。多签输出可以在以下条件下花费:1. 双方可以合作签署。2. Bob可以在一定时间后自行花费(由于我们的时间锁)。3. 如果Alice知道Bob的秘密Bs,她可以花费。对于Bob交给Alice的交易:1. 双方可以合作签署。2. Alice可以在一定时间后自行花费。3. 如果Bob知道Alice的秘密As,他可以花费。请记住,双方都不知道对方的秘密,所以条件3现在还不是可能的。另一件要注意的事情是,如果你签署了一笔交易,你的交易对手可以立即花费,因为他们的输出上没有特殊条件。你可以等待时间锁到期来自己花费资金,或者你可以与另一方合作直接花费它们。好了!现在你可以将交易发布到原始的2-of-2多签地址中。因为如果你的交易对手放弃通道,你可以取回你的资金,所以现在这样做是安全的。一旦交易被确认,通道就开始运行了。第一对交易显示了迷你账本的当前状态。目前,它将支付3个BTC给Bob,3个BTC给Alice。当Alice想要向Bob进行新的支付时,这对将创建两个新交易来替换第一组。操作是相同的——它们只是半签署的。然而,Alice和Bob首先放弃他们的旧秘密,并为下一轮交易交换新的哈希。如果Alice想要向Bob支付1个BTC,例如,两个新交易将向Alice记入2个BTC,向Bob记入4个BTC。这样,余额得到了更新。任何一方都可以随时签署并广播最新的一笔交易以在区块链上“结算”。但无论哪一方这样做,都需要等到时间锁到期,而另一方可以立即花费。记住,如果Bob签署并广播Alice的交易,她现在有一个没有条件的输出。双方可以同意一起关闭通道(合作关闭)。这可能是将你的资金带回链上的最简单、最快的方式。然而,即使一方变得无响应或拒绝合作,另一方也可以通过等待时间锁到期来收回他们的资金。

闪电网络如何防止作弊?

你可能已经发现了这里的一个攻击向量。如果Bob目前有一个1个BTC的余额,他有什么可以阻止他广播一个他拥有更多资金的老交易呢?他已经有了Alice的半签署交易,他只需要添加他的签名并广播它,对吗?没有什么可以阻止他这样做——除了他可能会失去整个余额的事实。假设他坚持这样做并广播一个旧交易,该交易支付一个BTC给Alice,五个BTC给我们之前提到的那个多签地址。Alice立即收到她的BTC。另一方面,Bob必须等到时间锁到期才能从多签地址花费。记住我们提到过的另一个条件,这个条件允许Alice立即花费这些资金吗?她需要一个她当时没有的秘密。她现在有了——一旦创建了第二轮交易,Bob就泄露了那个秘密。当Bob坐着,等待时间锁到期无法做任何事情时,Alice可以移动那些资金。这种基于惩罚的机制意味着参与者不太可能尝试作弊,因为同伴将获得他们的BTC。

路由支付

我们之前提到过——通道可以连接。否则,闪电网络对于支付就不会那么有用。你真的会为了未来几个月的每日咖啡而在咖啡店锁定500美元吗?你不必这样做。如果Alice与Bob开通了一个通道,而Bob已经与Carol开通了一个通道,Bob可以在这两人之间路由支付。这可以跨多个“跳跃”进行,这意味着Alice可以有效地支付任何存在路径的人。在这个场景中,Alice可以通过多个路径到达Frank。在实践中,她总是会选择最简单的一条。为了他们在路由中的角色,中介可能收取少量费用(尽管没有义务这样做)。闪电网络仍然相对较新,因此费用市场尚未形成。许多人期望看到基于提供的流动性的费用。在基础链上,你的费用完全基于你的交易在区块中占用的空间——传输的价值无关紧要——1美元和1000万美元的支付费用相同。相比之下,闪电网络中没有所谓的区块空间。相反,有“本地和远程余额”的概念。本地余额是你可以“推”到通道另一端的金额,而远程余额是你的交易对手可以推给你的金额。是时候再举一个例子了。让我们仔细看看上述路径之一:Alice <> Carol <> Frank。Alice <> Carol和Carol <> Frank各有1个BTC的总容量。Alice的本地余额是0.7个BTC。如果现在在区块链上结算,她将收到0.7个BTC,而Carol将收到远程余额(即0.3个BTC)。如果Alice想要向Frank发送0.3个BTC,她将0.3个BTC推到Carol通道的另一端。然后Carol从她在与Frank的通道中的本地余额中推出0.3个BTC。结果,Carol的余额保持不变:来自Alice的+0.3个BTC和向Frank的-0.3个BTC相互抵消。Carol在作为Alice和Frank之间的连接时不会失去价值,但她确实使自己变得不那么灵活。你看,她现在可以在与Alice的通道中花费0.6个BTC,但在与Frank的通道中只能花费0.1个BTC。你可以想象一种情况,Alice只与Carol连接,而Frank连接到一个更广泛的网络。Carol之前可以通过Frank向其他人发送总共0.4个BTC,但现在她只能推动0.1个BTC,因为这是她在通道另一端拥有的所有金额。在这种情况下,Alice实际上是在消耗Carol的流动性。如果没有某种激励,Carol可能不希望削弱自己的位置。因此,她可能只是说“我将每0.01个BTC的路由收取十个聪的费用”。这样,Carol在“更强”的路径中牺牲的本地余额越多,她赚的就越多。正如之前提到的,没有事实上的要求收取费用。有些人可能不关心流动性的减少。其他人可能直接向接收者开通通道。

闪电网络的局限性

如果闪电网络被证明是解决比特币所有可扩展性问题的解决方案,那将是非常棒的。不幸的是,它有自己的缺点,可能会阻碍这一点。

易用性

比特币对于初学者来说并不是最直观的系统——地址、费用等可能会让新人感到困惑。在设置了闪电客户端后,用户还需要开始开启通道才能进行支付。这可能是一个耗时的过程,当新人被引入像入站/出站容量这样的概念时,可能会感到不知所措。话虽如此,持续的改进正在减少进入的障碍,并为用户提供更流畅的体验。

流动性

闪电网络最大的批评之一是你的交易能力可能会受到限制。你不能花费超过你锁定在通道中的金额。如果你花费了所有资金,使远程余额拥有通道的所有资金,你就必须关闭通道。或者,你可以等待有人通过它支付给你,但这不是理想的。你的路径也可能受到通道总容量的限制。以前的Alice <> Carol <> Frank的例子中,如果Alice和Carol的通道容量为5个BTC,但Carol和Frank的通道容量只有1个BTC,Alice永远无法发送超过1个BTC。即便如此,整个余额也需要在Carol <> Frank通道的Carol一侧才能实现。这可能会严重限制可以通过LN通道传递的资金数量,从而对易用性产生连锁反应。

集中化枢纽

由于前一节中提到的问题,人们担心网络会促进创建巨大的“枢纽”。也就是说,大型的、高度连接的实体拥有大量流动性。任何重大支付都需要通过这些实体进行路由。显然,这不是一个好情况。这将削弱系统,因为这些实体离线会严重扰乱同伴之间的关系。还有增加审查风险的可能性,因为交易流经的点很少。

闪电网络的当前状态

截至2024年3月,闪电网络看起来健康。它拥有超过13,000个在线节点,52,000多个活跃通道,以及刚超过4,570个BTC的容量。全球闪电网络节点分布。有几种不同的节点实现——Blockstream的c-lightning、Lightning Labs的Lightning Network Daemon和ACINQ的Eclair就是一些例子。对于技术水平较低的用户,许多公司提供即插即用节点。你只需给这些设备供电,你就可以准备好开始使用闪电网络了。

结语

自2018年主网启动以来,闪电网络已经取得了显著的增长。目前操作一个闪电节点仍然需要一定程度的技术熟练度,因此仍有一些易用性的障碍需要克服。但是,随着开发的进行,我们可能会看到进入的障碍随着时间的推移而减少。

丁丁打折网©版权所有,未经许可严禁复制或镜像 ICP证: 湘ICP备20009233号-2

Powered by 丁丁打折网本站为非营利性网站,本站内容均来自网络转载或网友提供,如有侵权或夸大不实请及时联系我们删除!本站不承担任何争议和法律责任!
技术支持:丁丁网 dddazhe@hotmail.com & 2010-2020 All rights reserved