# 什么是闪电网络？闪电网络是如何工作的？

什么是闪电网络？闪电网络(LN)这一概念由Joseph Poon和Thaddeus Dryja在2015年提出。该项目的主要想法是设计一种链下支付协议，用于解决比特币面临的可扩展性问题。同时，这个概念也可以用于其他的加密货币。

闪电网络启发于比特币以及许多其他加密货币所面临的限制。目前，比特币的网络每秒只能处理2到7个事务(TPS)。随着加密货币生态系统的发展以及更多的参与者加入网络，广播到区块链的交易数量可能会增加。随着网络越来越拥挤，区块链的整体性能会受到影响，这大大降低了比特币作为全球数字货币的实际可用性。在这种情况下，闪电网络的创建是为了减轻比特币的网络拥塞。

### 闪电网络是如何工作的?

闪电网络由一个基于比特币的链下传输网络组成。该系统在点对点(P2P)的层面上工作，其可用性依赖于双向支付通道的创建。用户通过此通道可以进行无缝的加密货币交易。

在双方决定开通一个支付通道后，他们就可以在钱包中来回传递资金。尽管建立支付通道的过程涉及链上交易，所有在通道内发生的交易都是链下的，不需要全球性的整体共识。这就意味着这些交易可以通过智能合约快速执行，从而达到更低的手续费和更高的TPS(每秒交易速率)。

为了创建一个支付通道，双方需要设置一个多重签名钱包并在其中存储一些资金。存储在多重钱包上的资金只有在双方均提供私钥的情况下才能动用(两个或两个以上，取决于具体情况)。这就意味着一方无法在未经另一方同意的情况下打开钱包。

举个例子来说，让我们假设Alice想要使用闪电网络和Bob交易比特币。首先，他们要用多重签名钱包设置一个支付通道。支付通道类似于一个智能合约，多重钱包类似于一个保险箱，其中存放了待交易的资金。在支付通道的有效期内Alice和Bob双方可以进行任意次链下交易。

紧接着每次交易后，Alice和Bob都会签名并且更新他们的资产记录副本，该副本记录了每个人拥有的比特币数量。当他们完成了全部交易后，他们可以关闭支付通道并把自己的资产记录广播到比特币全网。闪电网络的智能合约会确保他们根据最新的资产记录接收比特币。

总结一下，设计的双方只需要跟比特币全网进行两次交互。一次是创建支付通道，而另一次是关闭，这意味着在支付通道内发生的所有其他交易都不会直接与主链交互。

#### 网络路由

即便双方没有建立直接的支付通道，他们仍然通过互联的支付通道发送和接收比特币。这意味着Alice可以在不直接建立支付通道的情况下向Charlie付款，只要他们之前存在着余额足够的网络路由连接。

因此，如果Alice和Bob，Bob和Charlie之间有一个开放的支付通道，Alice可以通过Bob向Charlie支付。支付路由可能涉及许多闪电网络节点，而智能合约将自动搜索最短的可用路径。

#### 闪电网络的优点

闪电网络项目致力于可扩展性问题的链下解决方案。如果成功，它可以减少比特币网络的流量。通过使用双向支付通道，闪电网络可以实现近乎实时的交易。

闪电网络可能适用于小额支付，因为它允许传输最小至1 satoshi的值。此外，自动化的小额支付可以在机器对机器的经济中实现，其中在电子设备之间进行的交易不需要人为干预。

#### 闪电网络的局限性

与链上交易不同，如果接收方不在线上无法进行闪电网络支付。\
网络的参与者可能需要定期监控支付通道，以保证他们的资金安全这种风险可以通过外包监控服务来克服)。\
闪电网络不适合大额付款。由于网络依赖于许多的多签名钱包(基本上是共享的钱包)，因此很可能没有足够的余额来充当大额支付的中间人。\
创建和关闭支付通道涉及到链上交易，这通常需要手动工作和更高的交易费用。

### 闪电网络什么时候上线?

如果我们考虑Lightning Labs宣布的主网测试版本，闪电网络的发布日期是2018年3月15日。但是，官方尚未正式宣布正式版本，因为它没有在比特币区块链之上有效实现。

自测试版发布以来，闪电网络节点和支付通道的数量大幅增加。截至2018年11月，Grafana面板报告了超过12.500个建立的支付通道。

节点和支付通道的共同作用使得闪电网络成为一个有趣的可扩展性问题解决方案。测试版已经进行了大量实验，但是其效率尚未得到证实。然而，闪电网络确实具有改善比特币和加密货币生态系统的巨大潜力。

如有不明白或者不清楚的地方，请加入官方电报群：[**https://t.me/gtokentool**](https://t.me/gtokentool)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.gtokentool.com/qu-kuai-lian/shen-me-shi-shan-dian-wang-luo-shan-dian-wang-luo-shi-ru-he-gong-zuo-de.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
