<科普>用算盘了解闪电网络


#1

继上一篇文章《闪电网络是比特币的未来》之后,我收到许多积极的反馈。然而,在浏览其中一些反馈时,我也明白有些人并不完全了解闪电网络(Lightning Network)实际的工作原理。在这篇文章中,我将尝试使用算盘作类比,在不涉及闪电网络实施的技术细节的前提下,来揭示闪电网络及其支付渠背后的概念。

这是一个算盘:

现在,让我们把一个闪电网络的支付通道,想象成算盘上的一根算盘线,而算珠代表通道内的比特币。当 Alice 和 Bob 之间互相创建支付通道时,Alice 把她的比特币从区块链上存储到支付通道中。现在,这些比特币(例如 10 bits 或 0.00001 BTC)是属于 Alice 的。在这个例子中,每个算珠等于 1 bit:

算盘线和支付通道具有以下共同特点:

  • 双向性 :珠算线上的算珠可以从左向右,或从右到左移动,比特币可以从 Alice 那里转给Bob,也可以从 Bob 那转给 Alice。
  • 所有权 :在算盘中,算珠可以在左边或者右边,但它不会在算盘线中间。同样地,支付通道中的比特币可以属于 Alice,也可以属于 Bob。
  • 固定性 :就像在算盘线中,不能添加或移除算珠,Alice 和 Bob 可以之间交换比特币,但其数量要和他们创建支付通道时所设置的一致。如果想交换大量的比特币,他们必须进行另外的链上交易。

下面是 Alice 向 Bob 支付 2 bits 之后支付通道的样子:

目前 Alice 有 8 颗算珠,Bob 有 2 颗算珠。现在我们假设 Bob 同样通过闪电网络使用 10 bits 支付通道连接到 Carol:

通过闪电网络,Alice 可以通过 Bob 支付给 Carol。在算盘类比中,如果 Alice 想要向 Carol 支付 2 bits,那么她将算盘线 Alice-Bob 中的 2 个算珠移动到右边(Bob),Bob 将算盘线 Bob-Carol 中的 2 个算珠移动到右边(Carol)。这是 Alice 支付给 Carol 2 bits 后的样子:

有一点很重要,如果 Bob 同意参与这笔交易,那么他必须移动相同数量的算珠给 Carol,才能接受 Alice 的算珠。

通过算盘的类比,我们简单明了地解释了链下闪电网络交易的性质,尤其是关于支付通道在处理交易时需要满足哪些要求。例如,我们可以很容易地看出,为什么 Alice 支付给 Carol 的算珠不能多于 Bob 支付给 Carol 的。不过话说回来,也许未来她可以用原子多层通道支付(AMPs)来完成,但那就是另一篇文章咯…

来源:ETHFANS