作者:Brand
来源:https://medium.com/@The1Brand7/lightning-faq-67bd2b957d70
1. 问:什么是闪电网络?
答:闪电网络是一个去中心化网络,旨在实现比特币所有权的实时链下转移,并且无需用户信任第三方。该系统目前还在开发中。(译者注:原文撰写于 2016 年;当前闪电网络已经有了多个可用的实现,见《闪电网络实现概览》)
闪电网络使用由多签地址组成的双向支付通道。
开启和关闭通道各需执行一笔比特币链上事务。
一旦通道开启,价值就可以在交易对手方之间即时转移。交易对手方之间相互发送比特币交易,但是不会将它们广播到比特币网络上。
新的交易会覆盖之前的交易。只要通道未关闭,交易对手方就会将所有数据存储在本地。
2. 问:闪电网络是开源的吗?
答:没错,闪电网络是开源的。任何人都能审查闪电网络的代码(就像审查比特币的代码那样)。
3. 问:闪电网络由谁所有?受谁控制?
答:和比特币一样,闪电网络不归任何人所有,也不受任何人控制。
闪电网络的代码是开源的,可供任何人下载并审查。
任何人都能运行节点并参与该网络。
4. 问:闪电网络的创造者是谁?
答:Joseph Poon 和 Thaddeus Dryja 撰写了闪电网络的白皮书。
闪电网络是开源项目,因此任何人都可以贡献代码。
目前有几个独立实现正在开发中:
5. 问:闪电网络有发行自己的代币吗?
答:没有,也不需要这么做。
闪电网络使用真正的比特币来执行交易。
6. 问:闪电网络的实现依赖于共识吗?
答:不,闪电网络的实现不需要比特币网络的共识。
闪电网络既不是软分叉,也不是硬分叉,而是在比特币网络的基础上构建的一个附加层。
因此,闪电网络的实现是不需要共识的。
7. 问:闪电网络存在任何托管风险吗?我需要将资产交由其他可信方保管吗?
答:不,闪电网络并非建立在信任基础上。你的资产仍在你的完全掌控下。
如果出现任何问题,你只需将通道的最新状态作为普通的比特币事务广播到链上。
你的所有资金都会退回你的比特币地址,并记录在链上。
8. 问:我听说闪电网络交易发生在 “链下” …… 这是否意味着我的比特币会从链上抹去?
答:不,你的比特币永远都不会离开区块链。
当你的支付通道处于开启状态时,你的比特币将存储在一个多签地址上。通道关闭后,你俩之间的最后一笔交易将会上链(并导致多钱地址内的资金在你俩之间分割)。
“链下” 不是一个非常恰当的表述。之所以会用它,是为了强调所有权转移不再体现在链上这一事实。
9. 问:我听说闪电网络要将我的比特币锁仓……是真的吗?
答:就闪电网络而言,“锁仓” 一词极具误导性。
闪电网络不影响你访问自己的资产。
实际上,闪电网络通道会让你的资产变得更易用。
首先,在闪电网络中,你不需要等待确认,资产转移几乎是即时的。
其次,让你的资产 “回到链上” 就和发送普通的比特币交易一样简单。你只需等待一次确认,你的资产就从 “链下” 转移到链上了。
只有一个例外:你的通道在交易过程中发生故障(交易对手离线),但是这种情况很少见。
一旦出现上述例外情况,你要等待一小段时间才能动用你的资产。等待的时长视你的支付通道的参数而定(估计最短要几个小时,最长要几天)。
10. 问:闪电网络有自己的区块链吗?
答:没有,闪电网络依托于比特币区块链。当比特币网络中的对等节点开启和关闭支付通道时,需要执行链上事务。
一旦通道开启,比特币的所有权就可以在链下进行双向转移。
通道内的交易是货真价实的比特币交易,但是当通道处于开启状态时,这些交易不会在比特币网络中广播,而是由通道内的交易对手方存储在本地。
因此,闪电网络可以实现即时交易和近乎无限的吞吐量。
11. 问:有任何形式的挖矿保障闪电网络的安全性吗?
答:没有,安全性由比特币网络中的矿工提供。
12. 问:比特币区块链的算力高达 2 ExaHash/s,但是闪电网络没有任何算力保障其安全性……闪电网络如何才能跟比特币区块链一样安全呢?
答:闪电网络的安全性源自比特币区块链。
闪电网络无法独立运行,它完全依赖于比特币区块链来保障安全性。
简单来说,比特币网络是闪电网络下方的安全网。
如果闪电网络的通道出现问题(如交易对手方掉线),你还可以选择落入安全网。
(你可以将通道的最新状态作为普通的比特币事务广播到链上。)
13. 问:闪电网络是否有自己的公共账本或记录所有交易的数据库?
答:没有,闪电网络没有自己的账本和数据库。
在闪电网络上持有价值意味着你拥有经过双重签名的交易。这些交易都是有效的,只是没有广播到比特币网络上。
你持有的交易属于 2/2 多签交易。
你和你的对手方都会签署这些交易,并将它们存储在本地。
这些交易将使用多签地址(共有资金地址)作为输入,并指向两个不同的地址作为输出。
一个输出指向只有你可以控制的地址,另一个输出指向只有你的对手方可以控制的地址。
14. (1)问:你说闪电网络中的交易都是真正的比特币交易……既然没有记录在链上,怎么能说是真实的比特币交易呢?
简答:
要想弄懂这点,我们首先要理解什么是真正的比特币交易……
事实上,比特币区块链上没有所谓的 “代币”……只有已签署的消息和提交至区块链的更新。
假设 Alice 向 Bob 发送 1 BTC……
我们称之为点对点交易,因为价值的所有权直接从 Alice 转移给了 Bob。
但是 Bob 实际上并没有从 Alice 那里收到 “数字代币”。
实际情况是:网络中的所有节点将更新它们存储在本地的公共账本副本。
公共账本更新后,原先登记在 Alice 的地址下的 “代币” 被重新登记到了 Bob 的地址下。
详解:
Alice 发送给 Bob 的比特币交易实际上只是一条 Alice 广播给所有人的、她用私钥签过名的消息。
这个消息不仅发送给了 Bob,还被广播给了网络中的所有节点。
在撰写本文时,比特币网络中有 5400 多个 “全节点”。
Alice 向 Bob 发送比特币交易的具体流程如下:
- 当 Alice 广播她签过名的消息(即比特币交易)时,该消息将被网络中的一些全节点接收。
- 这些全节点将按照共识规则独立验证该消息(交易)。如果节点发现该消息有效,就会再次广播该消息给网络中的其它节点。
- 网络中的其它节点收到该消息后重复上述流程,直到全网 5400 多个全节点都独立验证并广播该消息(交易)为止。
- 某一时刻,矿工成功挖出包含 Alice 的消息(交易)的有效区块。由于挖矿会消耗大量电力,矿工必须承担高昂的成本。
- 矿工将新挖出的区块广播出去。一些全节点将收到该区块,并独立验证该区块及其全部内容。这就意味着,它们会对 Alice 的消息(交易)进行二次验证。如果全节点(按照共识规则)确认该消息有效,它们将广播该区块给其它全节点。
- 其它全节点接收、验证并广播该区块。这一流程将持续下去,直到网络中所有全节点都验证过该区块且二次验证过 Alice 的消息(交易)为止。
由上述步骤可见,一笔普通的比特币交易实际上涉及到全网参与者。
Alice 的消息经过 5400 个节点独立验证过两次(总共经过 10800 次验证)。
尽管如此,我们还是称之为 “点对点交易” ,因为价值的所有权直接从 Alice 转移给了 Bob。
(但是,所有人都要帮忙更新他们存储在本地的账本副本。)
结论:
比特币交易本质上是带有有效数字签名的消息。
假设 Alice 想要通过闪电网络上的支付通道向 Bob 发送 1 BTC:
Alice 将一些 BTC 存入一个 2/2 多签地址。
Alice 和 Bob 签署同一个消息,将 1 BTC 的所有权从 Alice 转移给 Bob。
该消息是一笔有效的比特币交易,但是不会广播到比特币网络上。
Alice 和 Bob 都将该交易(消息)存储在本地。
从 Bob 的角度来看,这个 “双重签名消息” 价值 1 BTC。
这个消息之所以价值 1 BTC,是因为 Bob 随时都可以在链上花费这笔钱,只需将该消息广播至比特币网络即可。
比特币交易 = 带有数字签名的消息 = 闪电网络上的交易
任何货币交易的目的都是改变价值的所有权。
在比特币网络中,我们使用签过名的消息来改变价值的所有权。
闪电网络交易是双重签名消息。
因此,双重签名消息是货真价实的比特币交易。
14. (2)问:一个标准的比特币交易需要链上确认 …… 声称闪电网络交易和比特币交易一样真的合理吗?
答:说到点上了,二者是不同的……
闪电网络交易是零确认交易。但是,只要被广播到比特币网络上,它就和 “链上的” 零确认交易一样有效。
两种交易最终都会被记录到比特币区块链上,只要支付足够多的交易费。
但是,相比标准的零确认交易,闪电网络交易采用的安全模型不同,因此可靠得多。
闪电网络交易间接受到工作量证明的保护。这是因为闪电网络完全依赖于底层比特币网络(见第 12 问)。
在一条开启的闪电网络通道内,会有一组不同的博弈论机制提供不同类型的安全模型。
闪电网络会在不引入可信第三方的前提下扩展比特币的功能。
但代价是,你必须通过运行全节点来监控比特币网络。
监控可以外包给其他人来做,但是这样一来,你必须信任外部服务器会忠于职守。你的资产不会经过外部服务器路由。该服务器的唯一作用就是监控比特币网络,并在必要时广播 “惩罚交易”。
请注意,外包监控服务只是一种选择,在你不想运行自己的全节点的时候可以选,不是说你非得外包。
第三方不可能从闪电网络的通道内窃取资金。
另外还要注意的是,闪电网络被设计为小额价值(低于 100 美元)转移平台。
所有闪电网络交易必须经过通道内双方参与者的签名才能生效。因此,传统的多重花费(double-spend)攻击很难成功。
但是,有一种风险是确实存在的,即,攻击者可以将过时的闪电网络交易广播至比特币网络。
过时的闪电网络交易指的是代表非最新通道状态的交易。
上述风险就是你(或你信任的服务)必须运行 “瞭望塔节点(Watcher Node)” 的原因。
瞭望塔节点会监控所有被广播至比特币网络的交易。
如果你的观察者节点发现了一笔过时交易,就会广播一笔 “惩罚交易” 来作为应对措施。
惩罚交易 可以让你有权没收你的通道内的所有资产(包括原本属于你的交易对手方的资产)。
但是,只有当你发现过时交易被广播上链时,你广播的惩罚交易才有效。
由于你能够广播惩罚交易,你的对手方广播过时交易时需要承担很大的风险。
另一个 安全/隐私 功能是所有闪电网络交易都将在参与者之间进行端到端加密。
总结:
闪电网络交易在安全模型上有别于传统的比特币交易。
一旦被广播到比特币网络上,闪电网络交易就会被视为有效的比特币交易。
但是,
只要支付通道处于开启状态,闪电网络就不会被广播上链,只会在通道内的参与者之间进行交换,并由参与者存储在本地。
因此,我们可以将闪电网络交易定义为:
带有额外安全机制的未被广播的零确认多签比特币交易。
15. 问:我听过闪电网络需要用户持续监控区块链……这是真的吗?
答:没错,这是真的。
用户需要运行软件来主动监控区块链上是否存在违约行为(即,广播过时交易)。
但是,用户也可以将监控外包给第三方服务提供商。
外包不会侵犯你的隐私,但是你必须信任服务提供商会诚实守信。
优点是:
这会鼓励更多人在比特币网络上运行全节点。
你的全节点甚至可以帮你赚点小钱:
“全节点/闪电网络节点” 可以作为 “Bob” 赚取手续费(详见下文解释)。
你还可以选择自己配置全节点来提供区块链监控服务。从理论上来说,这会给你带来一些 “微薄的收入”。
16. 问:我听说闪电网络会收取一些手续费……这些手续费是给谁的?
答:运行闪电网络节点的任何人。
举例:
Alice 想给 Carol 转账,但是 Alice 与 Carol 之间没有支付通道。幸好 Alice 和 Carol 都与 Bob 创建了支付通道。Alice 可以通过 Bob 将付款路由给 Carol,免去与 Carol 开通新的通道的麻烦:
Alice —> Bob —> Carol
在这种情况下,Bob 会收取少量手续费。
17. 问:使用路由支付时,如果防止中间方 Bob 私吞?
简答:
Bob 先用自己的钱付给 Carol,再从 Alice 那里拿回钱。
详解:
- Carol 生成一个随机数 R 作为临时秘密值。
- Carol 计算出 R 的哈希值 H。
- Carol 将 H 告诉 Alice。
- Alice 创建了一笔特殊的转账交易,收款方是 Bob 。但是,该交易必须包含 R 才有效。此时,由于缺少 R,该交易无效。Alice 将 H 告诉了 Bob,Bob 知道 H 就是缺失的 R 的哈希值。
- Bob 创建了另一笔特殊的转账交易,收款方是 Carol。但是,这个交易也必须包含 R 才有效。此时,由于 Bob 没有 R,该交易无效。
- Carol 想拿回她的钱,于是将 R 告诉 Bob,让交易生效。
- 由于 Bob 已经有了 Alice 创建的交易,可以直接将 R 放入交易使其生效。Bob 可以根据 R 的哈希值 H 来验证 Carol 是否给了他对的 R 。
- 与此同时,Bob 也将 R 透露给了 Alice。
现在,Alice 可以使用 R 来证明她已经把钱付给了 Carol(R 起到了收据的作用)。
18. 问:闪电网络需要隔离见证吗?
答:靠谱的答案请戳 https://medium.com/@rusty_lightning/bitcoin-lightning-things-to-know-e5ea8d84369f#.oujgao7s2
19. 问:我还可以在哪里找到更多关于闪电网络的信息?
答:闪电网络的相关资料:
- https://medium.com/lightning-resources
- http://lightning.network/
- https://letstalkbitcoin.com/blog/post/lets-talk-bitcoin-286-drinks-on-a-lightning-network
- https://letstalkbitcoin.com/blog/post/the-lightning-network-elidhdicacs
- https://github.com/lightningnetwork/lightning-rfc/blob/master/00-introduction.md
- https://www.youtube.com/watch?v=8zVzw912wPo
(完)
Brand 2021-12-14
https://www.btcstudy.org/2021/12/14/lightning-faq-by-Brand/