閃電網路 (LN) 在 2016 年的白皮書中提出,是建構在比特幣之上的第 2 層解決方案。 LN 的創建是爲了解決比特幣的可擴展性問題,即比特幣交易的速度和成本。
比特幣目前理論上的每秒最大交易量(TPS) 爲10 筆,但實際上在3 到7 筆之間。與VISA 等傳統支付處理器相比,VISA 到2020 年平均處理6,000 TPS(基於VISA聲稱每年處理1,880 億筆交易)年)。
比特幣的交易費用可能會因當前使用網絡的需求而有很大差異。例如,2021 年 4 月 20 日的平均交易費用超過 50 美元,而 2021 年 8 月 9 日的平均交易費用約爲 2.50 美元。對於銀行轉賬或國際匯款等大額交易,比特幣的速度和成本與其他替代方案相當或更勝一籌。但如果要將比特幣用於日常支付(所謂的微交易,例如一杯咖啡、汽油),則交易速度必須提高,交易成本必須大幅降低。
閃電網絡理論
要了解閃電網絡的工作原理以及閃電網絡目前面臨的挑戰,我們需要先了解一下比特幣。比特幣網絡的限制因素是,每筆交易都必須放入鏈上的新區塊中。由於大約每 10 分鐘就會將區塊添加到鏈中,因此在不顯著改變比特幣協議的情況下,可能進行的交易數量存在嚴格限制。
關於比特幣協議重大修改的爭論以前也發生過,並導致了“硬分叉”,最引人注目的是比特幣現金的誕生。閃電網絡不是創建新的區塊鏈,而是一種第 2 層解決方案。這意味着它允許比特幣協議保持相對不變,但提供重大修改可能帶來的好處——至少在理論上如此。
LN 的工作原理是在雙方之間建立支付渠道,其中只有第一筆和最後一筆交易會被放到比特幣區塊鏈上。第一筆和最後一筆之間的任何數量的交易都將在鏈下進行,這意味着這些交易不受比特幣協議的限制。
要啓動支付渠道,雙方必須承諾一定數量的比特幣。只要支付渠道保持開放,比特幣就會被持有並且無法釋放。可以通過此渠道轉移的比特幣總量就是承諾的比特幣總量。讓我們看一個例子來說明這一點:
Alice 和 Bob 想要彼此建立一個支付渠道。Alice 向支付渠道投入 10 BTC,Bob 則投入 5 BTC。一筆包含 Alice 和 Bob 合計 15 BTC 的開倉交易被放入比特幣區塊鏈。一旦該交易被添加到區塊鏈(可能需要 10 分鐘或更長時間),Alice 和 Bob 就可以以更快的速度進行無限次交易,而且實際上成本爲零。以下是 Alice 和 Bob 之間的交易:
Alice 向 Bob 發送 1 BTC Alice:9 BTC Bob:6 BTC
Alice 向 Bob 發送 2 BTC Alice:7 BTC Bob:8 BTC
Bob 向 Alice 發送 3 BTC Alice:10 BTC Bob:5 BTC
Bob 向 Alice 發送 1 BTC Alice:11 BTC Bob:4 BTC
當一方或雙方希望關閉渠道時,會將關閉交易發送到區塊鏈,其中包含 Alice 和 Bob 的最終餘額。在這種情況下,Alice 的最終餘額爲 11 BTC,Bob 的最終餘額爲 4 BTC。
如果 Alice 想與 Carol 交易怎麼辦?碰巧 Bob 與 Carol 之間有支付渠道,因此 Alice 與 Bob 進行交易,Bob 將交易傳遞給 Carol。請注意,在這種情況下,Bob 可能會因傳遞交易而收取少量費用。隨着時間的推移,根據六度分離理論,閃電網絡允許 Alice 與任何人進行交易。
閃電網絡實踐
LN 是一種仍處於測試階段的新協議。因此,它面臨着從可用性到安全性的諸多挑戰。
人們擔心運行 LN 節點的難易程度。LN 要想成功,需要一個運行 LN 協議的強大比特幣節點網絡。運行 LN 節點可能非常困難,運行較小的節點可能存在支付激勵問題。不過,可以說運行 LN 並不比運行完整的比特幣節點困難太多。但是,由於 LN 主要針對小額交易,因此日常使用 LN 的體驗將通過支持 LN 的錢包來實現。支持 LN 的錢包不是很用戶友好,而且大多數此類錢包警告說,由於它們仍處於公開測試階段,建議不要存入太多資金。與一些更成熟的比特幣錢包不同,這些支持 LN 的錢包的新穎性意味着託管和非託管版本之間存在權衡。非託管 LN 錢包有點難用——更令人困惑,不太直接。託管選項更易於使用,但您必須依賴第三方來管理您的比特幣。
最後,最令人擔憂的是,LN 面臨着許多漏洞。其中包括:
惡意攻擊:資金不會丟失,但會導致受害者的閃電資金被凍結,從而導致支付渠道無法處理任何交易。
洪水攻擊和搶劫:攻擊者迫使許多受害者同時從區塊鏈中領取資金(洪水攻擊)。攻擊者利用這種擁堵來竊取在截止日期前無法領取的資金(搶劫)。
時間膨脹攻擊:攻擊者通過延遲區塊傳送來延長受害者意識到新區塊的時間。
固定攻擊:攻擊者誘騙受害者不當關閉其 LN 通道並竊取個人交易。