閃電網(wǎng)絡(luò)目前面臨的主要困境
作者:RGB++Fans;;來(lái)源:字節(jié)元CKB
在上一篇《閃電網(wǎng)絡(luò)是如何工作的(2)》中,我們探討了Bitcoin閃電網(wǎng)絡(luò)(LightningNetwork)的工作原理。本質(zhì)上,閃電網(wǎng)絡(luò)是一個(gè)精心設(shè)計(jì)的支付通道系統(tǒng),它把一條條支付通道串聯(lián)起來(lái),形成一個(gè)廣闊的、相互連接的支付網(wǎng)絡(luò),讓不直接相連的各方可以通過(guò)多跳路由實(shí)現(xiàn)相互支付,HTLC、PTLC等合約會(huì)保障路由的安全。
經(jīng)過(guò)多年的發(fā)展,盡管閃電網(wǎng)絡(luò)在技術(shù)和用戶(hù)體驗(yàn)方面取得了長(zhǎng)足進(jìn)步,但我們不得不直面一個(gè)現(xiàn)實(shí):它仍未達(dá)到可大規(guī)模采用的程度。今天這篇文章,我們將聚焦閃電網(wǎng)絡(luò)當(dāng)前面臨的一個(gè)關(guān)鍵挑戰(zhàn):流動(dòng)性問(wèn)題。這一問(wèn)題可進(jìn)一步細(xì)分為兩個(gè)方面,一個(gè)是網(wǎng)絡(luò)整體流動(dòng)性不足,另一個(gè)是流動(dòng)性分配問(wèn)題。網(wǎng)絡(luò)整體流動(dòng)性不足
根據(jù) mempool 的最新統(tǒng)計(jì)數(shù)據(jù),Bitcoin閃電網(wǎng)絡(luò)目前擁有12,389個(gè)Node,48000條支付通道,所有的通道容量加起來(lái)為5311.8BTC。

目前,在Bitcoin生態(tài)中,UTXOStack 已經(jīng)宣布轉(zhuǎn)型為閃電網(wǎng)絡(luò)質(zhì)押層,通過(guò)Decentralization質(zhì)押協(xié)議為閃電網(wǎng)絡(luò)提供更好的流動(dòng)性和更好的收益模型。同時(shí),UTXOStack還將推出Tokens激勵(lì)機(jī)制,激勵(lì)用戶(hù)質(zhì)押BTC以增強(qiáng)閃電網(wǎng)絡(luò)支付通道的流動(dòng)性。流動(dòng)性分配問(wèn)題
即便解決了整體流動(dòng)性不足的問(wèn)題,如何有效分配這些流動(dòng)性仍是一個(gè)挑戰(zhàn)。
我們以Alice通過(guò)路由NodeBob向Carol付款為例,假設(shè)初始狀態(tài)時(shí)Alice和Carol在通道中各自有2萬(wàn)聰,Bob在每條通道中有1萬(wàn)聰。經(jīng)過(guò)幾次交易后,通道中的余額分布如下(為了簡(jiǎn)化,不考慮路由NodeBob收取的手續(xù)費(fèi)):
如果未來(lái)的一段時(shí)間內(nèi),Alice和Carol還有業(yè)務(wù)往來(lái),還需要Alice向Carol發(fā)起付款,應(yīng)該怎么辦呢?Bob已經(jīng)無(wú)法路由支付了(即Bob與Carol的通道中,Bob已無(wú)法再向Carol轉(zhuǎn)移資金),他需要再平衡自己的通道。
上面這種情形對(duì)于閃電網(wǎng)絡(luò)中的那些路由Node而言非常常見(jiàn)。Node運(yùn)營(yíng)者必須在自己的通道之間不斷平衡流動(dòng)性,如果通道在你這一端沒(méi)有資金,就無(wú)法發(fā)送支付;如果通道內(nèi)的所有資金都在你這一端,就無(wú)法收取支付。
上面例子中,一種方法是直接關(guān)閉Bob和Carol之間的通道,并開(kāi)啟新的通道,但這個(gè)方法并不經(jīng)濟(jì),因?yàn)殛P(guān)閉通道和開(kāi)啟通道的交易都需要上鏈,都需要支付Bitcoin礦工費(fèi)。閃電網(wǎng)絡(luò)的設(shè)計(jì)初衷,就是為了減少鏈上操作,把盡可能多的交易放在鏈下通道中進(jìn)行,如果閃電網(wǎng)絡(luò)每天有幾億個(gè)通道要開(kāi)啟和關(guān)閉,BitcoinBlockchain會(huì)一直擁堵,礦工費(fèi)會(huì)高到離譜。
為此,Bitcoin社區(qū)提出了多種創(chuàng)新方案來(lái)解決流動(dòng)性分配問(wèn)題:SubmarineSwap(潛水艇互換)
簡(jiǎn)單來(lái)說(shuō),SubmarineSwap可以讓用戶(hù)向閃電網(wǎng)絡(luò)中的互換服務(wù)商發(fā)送通道中的BTC,而互換服務(wù)商會(huì)將相應(yīng)數(shù)量的BTC發(fā)送到Bitcoin鏈上的收款地址,或者反過(guò)來(lái),用戶(hù)發(fā)送鏈上BTC給互換服務(wù)商,互換服務(wù)商發(fā)送通道中的BTC給指定的接收Node。這一過(guò)程雖然有互換服務(wù)商的參與,但是通過(guò)HTLC(哈希時(shí)間鎖合約),全程無(wú)需信任。
SubmarineSwap還啟發(fā)了許多后來(lái)者,比如通道余額調(diào)節(jié)協(xié)議PeerSwap,可以讓用戶(hù)直接跟他的通道對(duì)手實(shí)施潛水艇互換。在上面的例子中,Carol可以直接充當(dāng)互換服務(wù)商的角色,Bob轉(zhuǎn)鏈上的BTC給Carol,Carol在通道中支付相應(yīng)數(shù)量的BTC給Bob,即可。具體來(lái)說(shuō):
Bob生成一個(gè)秘密值R(原像)及其哈希值H。
Bob在BitcoinBlockchain上使用哈希值H創(chuàng)建一個(gè)HTLC:Bob會(huì)給Carol支付1萬(wàn)聰,只要他能在5個(gè)區(qū)塊內(nèi)提供秘密值R,否則這些錢(qián)會(huì)返回給Bob。
Carol在他和Bob的支付通道中,使用同樣的哈希值H創(chuàng)建一個(gè)HTLC:Carol會(huì)在通道中給Bob支付1萬(wàn)聰,只要他能在4個(gè)區(qū)塊內(nèi)提供秘密值R,否則這些錢(qián)會(huì)返回給Carol(為了簡(jiǎn)化,這里不考慮互換服務(wù)商收取的服務(wù)費(fèi))。
Bob使用秘密值R解鎖通道中的HTLC,拿走1萬(wàn)聰。
Bob拿走資金之后,Carol也知道了秘密值R,他用R解鎖Bitcoin鏈上的HTLC,拿走1萬(wàn)聰。
相比關(guān)閉通道然后開(kāi)啟新通道,SubmarineSwap只有一筆鏈上交易,更加經(jīng)濟(jì),而且全程無(wú)需信任。通道拼接(Splicing)
通道拼接一種鏈上的再平衡方法:Node在單筆交易中關(guān)閉通道又再開(kāi)啟通道,從而改變鎖在通道中的余額。當(dāng)這樣做的Node鎖入更多資金,我們稱(chēng)為“加長(zhǎng)(splicein)”;如果減少了鎖定的資金,就叫“剪短(spliceout)”。在上面的例子中,Bob和Carol之間的通道可以通過(guò)通道拼接進(jìn)行加長(zhǎng)。
通道拼接比起用兩筆交易來(lái)關(guān)閉、重新開(kāi)啟通道要方便得多,不過(guò)它依然要在網(wǎng)絡(luò)中廣播交易、支付鏈上礦工費(fèi)并等待交易確認(rèn)。多路徑付款(Multi-PathPayment,MPP)
多路徑付款可以將一筆付款分割成幾部分,這些部分可以同時(shí)在不同的地方停駐或流轉(zhuǎn)。如果Alice需要繼續(xù)給Carol支付1萬(wàn)聰,雖然Bob已經(jīng)無(wú)法路由支付了,但Alice通過(guò)路由NodeDavid可以向Carol支付6000聰,通過(guò)路由NodeEva可以向Carol支付4000聰,那么Alice的這筆1萬(wàn)聰交易就可以通過(guò)多路徑付款的方式完成。
多路徑付款技術(shù)的初衷是為了克服了單路徑支付的局限性,允許更大數(shù)額的支付通過(guò)分割成較小的多個(gè)部分來(lái)送達(dá),比如一筆金額為1BTC的閃電網(wǎng)絡(luò)交易,可以分成100筆0.01BTC的交易來(lái)完成。多路徑付款對(duì)網(wǎng)絡(luò)的Decentralization和交易的隱私保護(hù)有好處,在安全性上,原子化多路徑付款(AMP)技術(shù)可以保證如果有一條路徑無(wú)法完成付款,則所有付款都不會(huì)成功,從而防止混亂和欺詐。
順便提一下,在閃電網(wǎng)絡(luò)中,大額的交易除了通過(guò)多路徑付款之外,還可以通過(guò)Wumbo通道完成。Wumbo通道取消了常規(guī)閃電通道所能持有的Bitcoin數(shù)量上限——0.1667BTC,允許Node擁有更高的通道容量,從而支持大額交易。結(jié)語(yǔ)
流動(dòng)性是制約閃電網(wǎng)絡(luò)發(fā)展的主要因素之一。通過(guò)降低閃電網(wǎng)絡(luò)Node的搭建和維護(hù)門(mén)檻,引入額外的激勵(lì)機(jī)制,可以幫助閃電網(wǎng)絡(luò)解決網(wǎng)絡(luò)流動(dòng)性不足的難題,而SubmarineSwap、通道拼接、多路徑付款等方案,在解決閃電網(wǎng)絡(luò)流動(dòng)性分配方面有一定的幫助。
除了上述方案,Bitcoin社區(qū)還提出了LightningPool(一種通道租賃拍賣(mài)市場(chǎng))、LiquidityAdvertisement(一種通道租賃方案)、環(huán)路支付(一個(gè)Node通過(guò)一條由支付通道形成的環(huán)路來(lái)給自己支付,實(shí)現(xiàn)鏈下再平衡)等其他方案來(lái)優(yōu)化網(wǎng)絡(luò)的流動(dòng)性。
流動(dòng)性管理無(wú)疑是閃電網(wǎng)絡(luò)面臨的一項(xiàng)復(fù)雜工程,但隨著技術(shù)的不斷進(jìn)步和社區(qū)的持續(xù)努力,我們有理由相信,這些流動(dòng)性難題終將得到解決。
