原文標題:《閃電網絡是什麼?大白話版的解釋》
作者:Mohit Mamoria
翻譯:SL

目前閃電網絡的容量超過 1,000BTC,支付通道數達到 3,9000 多個,節點數超過 7,000 個,增速一直不錯。很多人都期待閃電網絡能夠解決比特幣擴展性問題。不過,要認識到閃電網絡還只是 beta 版本,還處於非常早期,還有很多未解決的問題,還遠不到成功,更不到神話它的時候。比如閃電網絡在用戶體驗、節點激勵、資產流動性等方面都存在一些問題。本文適合初學者瞭解什麼是閃電網絡,至於對閃電網絡的深度剖析,筆者後續會進一步推出。要看到它的進展,也要看到它的缺陷,以最大可能把全貌揭示出來。

區塊鏈很慢,也很貴。如要轉出比特幣,接收方需要花好幾個小時候才能收到,且發送人還需要支付很高的交易費用。就這樣的情況,區塊鏈還怎麼接管世界?

任何試圖解決區塊鏈擴展性問題的想法都值得關注,並花費時間和精力。閃電網絡也是其中之一。但在我們理解它之前,首先來看看問題在哪裏。

如果你對這些問題已經熟知,可以直接跳過,進入下個章節。

爲什麼區塊鏈很慢?

「我是緩慢的行者,但我從不回頭。」
——阿伯拉罕 · 林肯

可以將區塊鏈看作爲登記的賬簿,而這個賬簿包含多個頁面,在這裏的頁面類似於區塊,每個頁面都有多個交易。一旦一個頁面填滿交易,它就需要添加進入賬簿,之後才能繼續在下一個頁面裏記錄交易。

在頁面被增添到賬簿(鏈)之前,還有一些程序需要完成,這樣才能確保每個人都同意頁面上包含的內容。對於比特幣區塊鏈來說,每個區塊的處理過程大約需要 10 分鐘。

想象一下,你發送 1btc 給你的朋友 Joe。交易如下圖所示:

閃電網絡究竟解決了哪些痛點,它本身又有哪些缺陷?

除了其他事項,交易包含發送人、接收人、金額以及交易費用信息。

等一下,交易費?

「顧問可以幫助其客戶省錢,省下的錢足夠支付顧問費。」
——Arnold H. Glasow

是的,會有額外費用。通過支付費用,可以激勵礦工儘快打包你的交易。沒有固定的價格,主要取決於你願意花費多少費用來加速交易。費用越高,交易得到的處理就越快。

在任何特定時間,都有一些交易記錄在當前的頁面上。

閃電網絡究竟解決了哪些痛點,它本身又有哪些缺陷?

礦工,也就是那些在區塊鏈網絡中工作的計算機,必須決定在當前的區塊中包含哪些可用的交易。在做決定時,他們會查看哪些交易能帶來更多回報,也就是說,費用越高的交易會被優先打包進入區塊。

閃電網絡究竟解決了哪些痛點,它本身又有哪些缺陷?

如果其他人的交易費用比你的高,你只能排隊等候。等待的時間從幾分鐘到幾個小時不等。有時甚至會花上幾天時間。你支付的交易費用越多,你的交易越快完成。

閃電網絡究竟解決了哪些痛點,它本身又有哪些缺陷?

這就是爲什麼區塊鏈很慢的原因,因此,對於使用者來說,費用也不便宜。理想情況下,區快鏈會走向主流人羣的採用,但這意味着會發生更多的交易,不過問題是,隨着交易數量的增加,網絡將趨於緩慢,這個反過來會阻礙主流人羣的採用。這是一個悖論!

閃電網絡是解決這個問題的一個潛在方案。

那麼,什麼是閃電網絡?

「雷聲很好,它讓人印象深刻;但真正工作的是閃電。」
——馬克 · 吐溫

閃電網絡背後的想法是,並不是所有的交易都需要在記錄在區塊鏈上。

想象一下,你和我之間進行多次交易。在這種場景下,我們可以繞過區塊鏈上的交易記錄,在鏈外完成交易即可。

用最簡單的話來說它是如何運作的?

在我們之間打開「支付通道」,並在區塊鏈上記錄它。那麼,現在,通過這個「支付通道」我們就可以進行多次交易,並且在任意時間保持開放。只有當我們想關閉通道時,纔會重新跟區塊鏈發生接觸。然後,我們把鏈外通道交易的最終狀態記錄在區塊鏈上。

使用這種支付通道的概念,我們可以創建一個支付通道網絡,這樣只需少部分交易發生在鏈上。可以想象一下,有三個人——Xan,Yelena 和 Zeke。

如果 Xan 和 Yelena 之間打開了支付通道,Yelena 和 Zeke 之間有一個打開的支付通道,那麼,Xan 可以通過 Yelena 向 Zeke 轉帳。

假設 Xan 想發給 Zeke2BTC,Yelena 將向 Zeke 發送 2BTC,而 Xan 將償還 2BTC 給 Yelena。

這是閃電網絡的理念。因爲你不會經常在區塊鏈上發生交易,那麼,交易可以像閃電一樣快速。這個速度都是拜支付通道所賜。

那麼,支付通道又是什麼?

「一個人只是一滴水。合在一起,我們就是海洋。」
——Ryunosuke Satoro

它就像一個安全的存款箱,兩個人把相同金額的錢存進去,每個人給它一把鎖。

閃電網絡究竟解決了哪些痛點,它本身又有哪些缺陷?

在同一個箱子存入相同數額的金錢,這種行爲會在區塊鏈上記錄下來,以「開盤交易」的形式記錄,如此這般,支付通道就在兩個人之間打開了。
(譯註:開盤交易,這裏是說起始的交易。)

在同一個箱子存入錢想法的背後是,沒有任何一方可以在不經另外一方同意的情況下花費箱子裏的錢。箱子中的錢用於兩者之間的交易。

想象一下,Xan 和 Yelena 在同一箱子中各存入 10BTC。假如現在,Xan 想給 Yelena 發送 2BTC,他會怎麼做?

要成功實現轉賬,他會承諾把自己在箱子中的 2BTC 所有權轉給 Yelena。在轉讓承諾完成後,如果箱子解鎖,那麼,Xan 可以從箱子中取走 8BTC,而 Yelena 能夠取走 12BTC。

閃電網絡究竟解決了哪些痛點,它本身又有哪些缺陷?

不過他們暫時不會打開箱子,因爲他們還想繼續進行交易。這正是這種安排的美妙之處。

現在,如果第二天,Yelena 不得不向 Xan 發送 1BTC,她也會做相同的事情,就是把其中 1BTC 的所有權承諾轉讓給 Xan。在這兩筆交易之後,如果箱子打開,那麼,Xan 可以取走 9BTC,而 Yelena 可以取走 11BTC。

想象一下,鏈外交易的樣子,看看下圖:

閃電網絡究竟解決了哪些痛點,它本身又有哪些缺陷?

概括來說,支付通道只不過是把一些資金彙集在一起,然後按照商定的方式把池中資金的所有權進行承諾轉讓。如果 Xan 或 Yelena 想要關閉通道,他們可以關閉。

關閉支付通道只是意味着打開存款箱,並把裏面的錢取走。存款箱的打開記錄在區塊鏈上,它會記錄誰在存款箱有多少錢,這些記錄會永久保存。

閃電網絡究竟解決了哪些痛點,它本身又有哪些缺陷?

這就是支付通道的運作方式。但它還遠沒有揭示其真正的潛力。當兩個或多個支付通道共同組成一個支付網絡時,它的力量纔會真正釋放出來。

那麼,它實際上是如何工作的?

「偉大的事情是由一系列小事情組合做成的。」
——文森特 · 梵高

閃電網絡實現價值轉移的方式是把比特幣所有權轉移轉變爲對比特幣所有權承諾的轉讓來實現。

這種轉變是巨大的。我們通過例子來說明這一點。假設有三個人,Xan、Yelena 和 Zeke,在 Xan 和 Yelena 之間有打開的支付通道,同時,Yelena 和 Zeke 之間也打開了支付通道。請注意,Zeke 和 Xan 之間並無支付通道。

在這種情況下,如果 Xan 想向 Zeke 發送 2BTC,他可以利用 Yelena 和 Zeke 的支付通道來實現轉賬。這看起來是什麼樣的?

Xan 請求 Yelena 在 Yelena-Zeke 的支付通道轉移 2BTC 給 Zeke 的承諾,然後,他在 Xan-Yelena 通道償還 Yelena 2 BTC。

閃電網絡究竟解決了哪些痛點,它本身又有哪些缺陷?

通過這樣的支付通道網絡,可以在鏈外進行大量的交易,因此,可以釋放區塊鏈的帶寬。使用支付通道網絡,可以發生數百萬筆的交易,而且交易費用也不貴。

這就是大白話版的閃電網絡。