擴容一直是區塊鏈社區討論的熱點話題,圍繞如何在”更短的時間完成更多的交易”提出了包括增加區塊大小,閃電網絡(雷電網絡),分片,分層網絡,平行鏈等數十種解決方案千萬不要被這些陌生的名詞嚇倒,其實這些方案都是在解決同一個問題:住在我區的小甲如何快速的將10噸麵粉運給住在河對岸II區的小B.
小甲和小乙住在河的兩側,唯一的交通方式是一座窄橋,橋上每次只能通行一輛汽車,這輛車每次只能運1噸麵粉,小甲如何盡快的把10噸麵粉送到河對岸呢?
增加區塊大小
小A首先想到的方案就是增加汽車運力。換一輛每次能運2噸麵粉的貨車,就只需要運5次了。如果直接換一輛能運10噸麵粉的貨車,就只需要1次了。但是,小A如果要運100噸麵粉呢?這個方案最直接也最容易實現,但是並不能從根本上解決問題,因為單輛汽車的運力是有隱性上限的,也就是說單個區塊的容量是有上限的,這就是區塊鏈增加區塊大小的方案。麵粉對應transaction,貨車對應block,橋對應blockchain。我們可以通過增加區塊大小,讓每個區塊容納更多的tx,使得單位時間內能夠執行更多的tx,以達到更快的交易速度。 1M區塊大小不夠就擴展到2M,還不夠就8M。這個方案的瓶頸和小A遇到的瓶頸是一樣的:因為區塊大小不能無限擴大。
閃電網絡
小A現在知道了另一個消息:河對岸的II區的小C每天要往I區運送8噸麵粉給住在I區的小D。小A又想到了一個好辦法,去和小C協商:小A給同側的小D8噸麵粉,小C給同側的小B8噸麵粉,小A只需要運兩噸麵粉給小B就行了。這就是比特幣的閃電網絡方案,通過離鏈交易減輕主鏈的壓力。以太坊也在實現類似的機制,取名雷電網絡。更加學術化的解釋是:大部分交易通過已經建立的鏈下通道進行,只在需要進行最終驗證時才使用鏈上交易。看起來似乎很美好,這個方案的問題在於:小A怎麼知道小C要給小D運麵粉呢?如果小C只有一天需要將8噸麵粉運送給小D呢?小A和小C協商也是需要成本的。如果小C每天都要運8噸麵粉運給小D,和小A協商成本肯定更低。但是,如果小C只有一天需要將8噸麵粉運給小D,則直接通過窄橋運給小D的成本可能比協商成本更低。這就是閃電網絡方案面臨的路徑發現成本、通道建立成本問題。因為存在路徑發現成本和通道建立成本,大家會更傾向於使用已有的路徑和通道,這又會引發第三個問題:中心化。小A不僅可以和小C協商也可以跟EFG協商,以後大家只要想到運麵粉,都會去找小A。小A控制了整個麵粉運輸市場。
分片
為了保證麵粉質量,我們在橋頭設置了檢查站,所有檢察員都會對每一袋麵粉進行仔細檢查,只有大家都認為這個麵粉是合格的,才能運輸。也就是說一袋麵粉在運輸上花費的總時間=橋上運輸時間+檢查時間。因為所有檢察員都要去檢查每一袋麵粉是否合格,所以這個時間會很長。小A提出了一個建議,把所有檢察員分成10組,每一組檢查1/10的麵粉,這樣效率就提高了10倍。如果這個效果不錯,可以進一步分成100組,1000組,甚至更多。這個方案的問題在於:不夠安全。以前小A如果想運輸劣質麵粉需要買通所有人,現在她只需要買通1/10的人,甚至1/1000的人,就可以通過特定的檢察員的驗收,將劣質麵粉運上橋。分片方案一直著力於解決如何在分片之後仍然能達到分片之前相近的安全性。至於具體如何解決,開發團隊表示:讓我們再想想。參照以太坊的shading方案。
分層網絡
小A終於想明白了:根本問題還是路太窄。繼續修路!路多了運力問題就解決了。既然橋已經有了,最直接的方案就是:在現有的橋上再搭建一層,修一條新路出來。這就是區塊鏈的分層網絡方案:在已有網絡上搭建一層或者多層新網絡,比如以太坊的plasma方案。新的問題又出現了,對窄橋的依賴太嚴重了。所有新的路都是以窄橋為地基,一層層蓋上去的,本質上還是只有一座橋。如果窄橋出問題了,大家一起玩完。在以太坊的實現中多層網絡本質上只是一個新的智能合約。
平行鏈
小A突然想到:為什麼不再修一座橋呢!為什麼不呢,因為修建並且運營一座橋實在是太難了。小A自己並不會修橋,它只是一個運麵粉的。這時候建築公司G出現了,告訴小A:我們提供可定制免費修橋服務。小A使用了G提供的服務,橋也很快的修建了起來。可是沒有安檢員,這條路上的麵粉都是沒有經過檢驗的,大家信不過通過這座橋運輸的麵粉。 G說:我們另外幾座橋的安檢人員可以和你共享,每一個安檢員可以同時在幾十座橋上工作,不過安檢員是要收費的。小A爽快的答應了,橋也很快正常運營了起來。小A又想,如果橋和橋之間可互通,我就可以在各個橋上運輸了,豈不是更好。 G告訴小A:兩座橋之間簽署一個互通協議就可以了。不過因為跨橋運輸比較複雜,所以跨橋的車輛需要經過一次特殊的安檢,並且花費的時間比在單橋上運輸時間更長,繳納的費用也更多。小A想了想:有實際需求的時候再跨橋吧,大多數時候我就老老實實在自己的橋上運輸吧。平行鏈方案本質上就是創建一條新的區塊鏈,舊鍊和新鏈之間共享驗證者,新舊鏈之間通過一個價值互換協議VEP進行價值互換。
平行鏈方案在實現難度和可擴展性方面擁有巨大的優勢,比起其他已經出現的方案而言,更能從根本上解決區塊鏈的擴容問題,緩解區塊鏈擁堵。
為了大家更好的形象理解,因此在本文中,使用了“比喻案例”的詮釋手法,關於平行鏈該項技術的實現細節未能做過多的討論。如果,你想要更深入的了解平行鏈技術實現細節,請到我們的官網查閱白皮書。