曉幣:比特幣為何需要擴容?區塊鏈最大問題是擴容?

比特幣為什麼要擴容?為什麼擴容是區塊鏈最大的問題?目前區塊鏈平臺最大的問題,可以用一個簡單的類比來說明:二十一世紀初,互聯網的速度非常緩慢。當時如果你有一個博客,用戶要訪問它既費時又費錢。人們注意到這個問題,但同時也認識到了互聯網的用處。為了解決此問題,很多人努力改進互聯網的基礎設施和設計。與此同時,人們還構建了更強大的硬件來運行這些互聯網的設施。

由於這些改進,互聯網變得更快,訪問成本變得更低。以前,開發人員們只能創建單個網頁。但現在,開發者可以在改進的基礎設施上建立像臉譜網、谷歌和Twitter這樣的網站。所有這些都是可能的,因為互聯網的速度和容量得到了極大提升。

曉幣:比特幣為何需要擴容?區塊鏈最大問題是擴容?



區塊鏈技術也面臨著類似的問題--緩慢而昂貴。

許多區塊鏈公司都致力於構建可擴容的基礎設施,從而使區塊鏈平臺在未來成為主流。一旦那一天到來,人們不僅可以使用區塊鏈進行支付,還可以在其之上構建類似於谷歌和臉書的應用程序。

區塊鏈和擴容能力問題

在解釋擴容問題之前,必須要先解釋吞吐量的概念。假設你在火車站等車,每趟火車間隔一小時,只能做10個人。一旦火車滿載,第十一名乘客只能等待下一趟。與這個做類比,乘客代表交易,比特幣或以太坊這樣常見的區塊鏈平臺每秒平均可以處理大約10次交易。

相比之下,像VISA這樣的支付公司目前平均每秒處理5000到8000次交易。任務處理的速率稱為吞吐量。與Visa等支付平臺相比,區塊鏈平臺目前的吞吐量非常低。

現在假設你在同一個火車站,但這次還有另外一百人個想坐這列火車。火車來了,售票員看了看人群,說:"付錢最多的10個人可以上火車。"你因為趕時間,所以你就付了一大筆錢買票上火車。

由於區塊鏈平臺的吞吐量低,交易費用不斷上升。例如,一筆10美元的交易在擁擠的區塊鏈平臺上很可能需要支付2美元的交易費用。因此,緩慢和高成本是互聯網上的主流交易往區塊鏈平臺上遷移的巨大障礙。

提升擴容能力

為了提升區塊鏈平臺的主流接受度,這些平臺需要進行擴容。區塊鏈公司們為此提出了幾種解決方案。

1、增加區塊大小

第一種最直接的方法是增加區塊大小。回到火車類比,這意味著將火車的容量從10人增加到20人。這樣,火車就可以在特定時間內運送更多的乘客,減少車站的擁擠。

比特幣當前的區塊大小1MB,提高到2MB可以使其每秒處理量增加一倍。區塊越大,每秒處理量就越高。

但這在實踐中是有問題的,假設你將塊大小從1MB增加到1GB,當你創建塊時,必須將其傳送給網絡中的其他人,而網絡無法快速處理龐大的文件。就像你使用電子郵件,當你上傳一個大文件時,郵箱會不接受。這就是增加區塊大小的毛病,不能超越某個臨界點,所以這種解決方案的能力是有限的。

2、鏈下解決方案

第二種可能性是鏈下解決方案,比如比特幣的閃電網絡,以太坊的雷電網絡,和Neo的本體網絡。

在當前的情況下,每次交易處理,都必須得到網絡中每個節點的驗證。(節點是運行算法並處理交易的計算機。

例如,你想在一個月時間裡每天從一個特定的咖啡店買一杯咖啡,咖啡的價格是1美元,但在網絡上每天交易1美元是非常昂貴的,你不想為1美元的交易而擁擠整個網絡。因此你和咖啡館老闆簽了一個合同。合同規定,你每天都要付象徵1美元的通證作為咖啡費。你向網絡發送一筆交易來標記合同的開始,30天后再發送一筆交易來標誌該合同的結束,合同結束後,咖啡館老闆可以在網絡上把這30個通證交換為30美元。

因為這些是在區塊鏈網絡之外發生的私人協議,所以它們被稱為鏈下解決方案。這種交易系統的缺點是,整個過程都集中在託管這些鏈下交易的服務器上,這些鏈下網絡也是黑箱,其透明性和安全性是值得懷疑的。

3、代理共識協議

目前區塊鏈網絡上的處理速度是非常慢的,因為網絡中的每個節點都必須參與處理。如果網絡中有一千個節點,那麼一千個節點都必須參與處理網絡中的每筆交易。

如果一個社區裡有1000個人,每個人都必須達成一致,過程不僅漫長,而且會非常混亂。相反,如果你從社區中選出10名代表,任命他們為社區的管理員,讓這10個人投票,達成共識會更快和更容易。

類似的,您可以委託一組節點來運行協議並在事務上達成一致,代理節點的共識將代表社區的共識。

大多數可擴容的區塊鏈項目都採用這種協議。為了進入治理聯盟,社區成員必須登記興趣並通過測試(稱為權益證明或權威證明)。如果他們成功通過,將被授予加入治理聯盟的權證並運行共識協議。

4、分片技術

分片技術是一種把網絡分割成碎片的鏈上擴容方案,但分片不是數據庫領域中的新概念。分片技術將大型數據庫分成更小、更快、更易於管理的部分,稱為數據碎片。

為了展示它的工作原理,現在假設你有一個包含五個步驟的問題。

想象你在一個班級裡有10個學生可以幫你這個問題,而且這個問題可以分成5個並行的步驟。於是你把班級分成5組,每組兩人,每組解決一個子任務。

一旦有小組完成了它的子任務,就會把信息傳遞給老師了,老師就會彙總五個組的所有答案,並將完整的答案傳遞給所有的組。這樣,即使各個小組專注於他們的子任務時,並不知道其它組在做什麼,但最終所有的參與者都會得到答案。

在這個例子中,學生是網絡上的節點。班級就是網絡中所有的節點,而小組則是分片。老師則代表了目錄服務委員會(DS),而它本身就是一個分片。

如果把比特幣網絡比作一個教室,學生們必須自己解決每一步的問題,這要花費長得多的時間,而且每個參與者的負擔也要大得多。

但是使用網絡分片技術,如果你有10000個節點,通過工作量證明過程,它們將被隨機分為10組,每個組被稱為一個分片。每個分片處理一組不同的數據,並得出小組內一致同意的答案。然後,各分片將這些數據的摘要報告提交給一個名為目錄服務委員會的分片,由它來統籌不同分片的數據摘要,並將它們組合起來形成一個更大的數據集,稱為最終區塊,最終區塊的數據又會被返回所有分片。

從上面的分析可以看到,分片技術是一種去中心化的、安全的鏈上擴容方案,具有線性的擴容能力--也就是說,節點越多,得到的吞吐量就越大。

分片技術有兩種類型:網絡分片和狀態分片,以太坊正在開發的技術是狀態分片。兩種技術的不同之處在於,在網絡分片中,不是每個節點都必須處理每條信息,但是每個節點都必須存儲網絡中其它分片的信息;如果使用狀態分片,每個節點都只存儲它們自己處理過的信息子集,雖然這減少了每個節點的負擔,但分片之間的互通會變得複雜。

分片技術的缺點是設計和部署的複雜性

部署一個簡單版本的分片很容易,但是要正確且安全地運行很難,這就是為什麼現在很少的團隊研究它。與最簡單的解決方案相比較,增加區塊容量只需調整一個參數--區塊大小,然後吞吐量就增加了。但是當引入分片技術時,需要考慮的事情就非常多。

如何合理地劃分小組成員?如何分配任務?所有這些都給系統帶來了複雜性。但如果做得正確,系統將是分佈式的、安全的,並且有線性的擴容能力。

寬帶和存儲容量是所有擴容方案的通病

對於比特幣和以太坊這些的區塊鏈平臺來說,這個問題還不嚴重,因為它們的吞吐量很低。比特幣和以太坊每秒處理10筆交易,按目前的速度,一年內的所有交易數據將達到幾GB.

但是,當我們每天處理數億筆交易時,數據就會爆棚。為了存儲所有這些數據,我們必須找到更好的存儲解決方案,這不是網絡分片可以直接解決的。

​瞭解數字貨幣、區塊鏈、交易所、方面的新聞和知識,歡迎關注曉幣,歡迎加入數字貨幣學習群。


分享到:


相關文章: