查看原文
其他

科普 | 用算盘了解闪电网络

Roy Sheinfeld 以太坊爱好者 2019-07-11


继上一篇文章《闪电网络是比特币的未来》之后,我收到许多积极的反馈。然而,在浏览其中一些反馈时,我也明白有些人并不完全了解闪电网络(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)来完成,但那就是另一篇文章咯......



原文链接: https://medium.com/@kingonly/understanding-lightning-network-using-an-abacus-daad8dc4cf4b
作者: Roy Sheinfeld
翻译&校对: 小铅笔 & Elisa


小铅笔


本文由作者授权 EthFans 翻译及再出版。


你可能还会喜欢:

观点 | 是比特币的TCP/IP 协议栈
观点 | 没有“胖协议”这回事
观点 | 应用程序协议是更好的投资


    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存