漫談閃電網絡

本文做者: yaning-u2算法

最近看了閃電網絡的論文和文章,又有了一些更清晰的理解,因此想分享下。主要從技術理解、落地實現、對比特幣的影響、CKB上實現閃電網絡的優點四方面來闡述。安全

從技術上來說,閃電網絡是解決比特幣的可擴展性、小額支付的一種狀態通道方案,這裏着重介紹下如下幾點:網絡

  • 閃電網絡採用的是離線交易的方案。也就是說,閃電網絡上的交易都是比特幣的交易,而網絡自己只是解決了交易的「溝通「,且交易的資金實際上仍然在比特幣網絡並無轉移到二層網絡。對比Plasma方案,在Plasma中交易實際上發生在Plasma網絡中,且交易處理的是Plasma的數據,用戶的資金更像是從一層網絡「轉移」到二層網絡中,而用戶的「退出」操做是保證用戶在二層網絡的資產轉移回一層網絡。
  • 閃電網絡採用一層網絡的機制來保證二層網絡的安全。閃電網絡的交易是「未確認」的比特幣網絡交易,主要採用比特幣中SIGHASH NOINPUT(當前使用的隔離見證)、nLockTime、HTLC等機制,以及ascribing blame、Breach Remedy Transaction等技巧,來保證「未確認」的交易必定是能夠被安全確認而違反規則是會受到懲罰的,因此這裏依賴的是一層網絡的一些機制來實現二層網絡的安全。對比Plasma,Plasma依賴於用戶能夠安全退出來保證用戶資產的安全,採用的更可能是密碼學的證實以及挑戰機制來保證用戶數據的安全。
  • 交易即時性。對比Plasma因爲處理的交易是二層網絡的數據,這裏沒法在交易完成之時就能肯定交易必然會被一層網絡處理,而閃電網絡上的交易是「未確認」的比特幣的交易,用戶能夠「隨時」選擇將交易發送到網絡上,因此能夠保證即時性。

從現狀來說,閃電網絡還處在很是早期,在2018年的發展也很是不錯,不管在節點數、通道數量、資金容量方面都在持續的增加。app

比特幣實際上仍然還屬於一個很是小衆的產品,而閃電網絡就更屬於小衆了,相對於比特幣的體量,閃電網絡還有很是大的發展空間。在3年多之前翻譯過一篇文章,主要是講閃電網絡存在的問題,如今來看這些問題依然沒有徹底解決,這裏在談談其中涉及到幾個相似的問題:性能

  • 小額交易是否是僞需求?現實中比特幣的大部分用戶是把比特幣當成投資品的。比特幣解決的是法幣不能保值的痛點,以及跨境支付、匿名支付等等問題,而這些跟小額支付關聯並不大。若是是小額支付,對於普通用戶爲何不使用普通法幣呢?在法幣和加密數字貨幣能並存的狀況下,對於普通用戶和商家來說使用法幣在多數狀況下是更有優點的。並且小額交易實際上很是依賴於商家的應用,可是在商家普及這點上其實很是困難。並且能接受閃電網絡的用戶或者商家,也必然是先接受了比特幣的,這點在法律合規、稅收等等各個方面仍然有很大阻力。可是伴隨更多的小額支付的Dapp應用的誕生,以及更多人接納比特幣,或許會誕生出不少新的場景,狀況會慢慢改觀。
  • 比特幣自己波動帶來的問題。若是閃電網絡被用於平常交易,那比特幣的大幅度波動對商家並不利,不便於商家訂價。
  • 閃電網絡的中心化問題。當前主要被人詬病的問題是閃電網絡存在必定的中心化趨勢,看過一個統計LNBIG.com的節點「持有」超過64%的全網資金。我我的以爲,其實這並非一個問題。並且反倒我認爲在二層網絡存在必定的中心化是一種比較好的現象,由於去中心化與性能和成本幾乎是對立的。並且相對於現有的金融系統,閃電網絡仍然有安全性、匿名性等特色。而且是徹底開放的,任何人能夠選擇創建私有的局部的網絡,爲其餘人提供更好的服務的,中心也是存在被取代的可能的。因此這種中心化相對而言是危害較小的。

以前讀過一篇文章,介紹閃電網絡對於比特幣的影響,大意是因爲閃電網絡的存在,會致使比特幣上的多數交易都轉移到閃電網絡,使比特幣上的交易手續費大量減小,礦工收益降低,算力降低,最終會影響比特幣的安全性。可是若是仔細思考,閃電網絡中的交易都是小額交易,而比特幣上的交易是相對的大額交易,那閃電網絡其實更可能是對現有比特幣網絡的一種補充;並且閃電網絡在某種程度上會增長比特幣的應用場景,而擴大比特幣的使用規模和交易規模,從而增長網絡的安全性。固然以上都還須要時間去驗證。當前真正的可能存在的問題是,比特幣產量減半到必定程度後,礦工手續費更多依賴交易收入,而若是到時交易手續費依然不足以支撐礦工收入,可能會對網絡安全性構成比較大的威脅。區塊鏈

最後簡單談下在CKB上實現一個閃電網絡實際上也是可行性,首先CKB已經實現了隔離見證,也就是解決了交易的延展性問題,同時也有相似於比特幣的時間鎖機制。並且因爲支持用戶自定義的鎖定腳本、簽名算法等等,也無須像比特幣同樣單獨去實現一些特殊指令,因此這裏會帶來更多靈活性,或許能夠對現有的閃電網絡協議作進一步改進。另外,因爲閃電網絡的交易,只要能解鎖Funding Transaction便可,因此在CKB上用戶能夠經過Type來定義更靈活的數據類型,理論上是能夠實現非轉帳類型的閃電網絡。若是CKB上實現了穩定代幣,那一樣能夠將穩定代幣經過閃電網絡來進行支付,從這個層面來說一方面能夠用更低的手續費使用穩定代幣,另一方面解決了小額支付做爲商業使用的波動性問題。加密

從經濟模型上講,CKB的二級發行機制也能保證網絡的長期的安全性,避免了可能因爲礦工收益減小而引發的網絡安全性問題。另一個比特幣和以太坊的共同問題是,當用戶在使用二層網絡時,其實是無償使用了一層網絡的安全性,卻不須要支付任何費用,這樣對一層網絡其實是有有害的,從這點上講CKB也是能更好的解決這個問題,在二層網絡繁榮的狀況下,同時一層網絡也能獲益,反過來也能更加保證二層網絡的安全性。翻譯

在文章落筆完成以後,又聽了 https://forkit.fm/ 第7期介紹的閃電網絡,有所收益因此又對原文進行了修改。講的很是精彩,推薦你們聽一聽。網絡安全

參考文章:3年前翻譯的一篇文章《閃電網絡很是不錯,但它存在各類各樣的問題》https://ethfans.org/topics/197 ,雖然當時做者並不看好閃電網絡,隨着這兩年更多團隊加入,以及更多人瞭解區塊鏈,如今狀況已經有所不一樣,但做者提到的幾個問題仍未徹底解決,依然值得思考。get

相關文章
相關標籤/搜索