Vision為構(gòu)建下一代 Web3 應(yīng)用程序提供了理想的基礎(chǔ)設(shè)施
區(qū)塊鏈技術(shù)及其生態(tài)的出現(xiàn)為創(chuàng)新者、開發(fā)者和用戶提供了許多機(jī)會。但目前為止,可擴(kuò)展性、交易速度和搶先交易相關(guān)的問題一直阻礙著 Web3 走向真正的 mass adaption 。


第一:什么限制了可擴(kuò)展性?
區(qū)塊鏈發(fā)展方向是實現(xiàn)最大化的Decentralization、包容性的網(wǎng)絡(luò)。在實現(xiàn)這一目標(biāo)過程中,會受制于兩個基本的屬性:硬件、狀態(tài)。

硬件要求:一個Decentralization的區(qū)塊鏈網(wǎng)絡(luò)由網(wǎng)絡(luò)中最弱的Node驗證這個區(qū)塊鏈和保持狀態(tài)的能力決定的。因此,運行一個Node成本(硬件、帶寬、存儲)應(yīng)該盡可能地降低,以使盡可能多的人成為去信任網(wǎng)絡(luò)無需許可的參與者。
狀態(tài)增長:狀態(tài)的增長是指區(qū)塊鏈增長的速度。一個區(qū)塊鏈在每單位時間允許越多的吞吐,這個區(qū)塊鏈增長的就越快。全Node存儲網(wǎng)絡(luò)歷史,同時它們也必須能夠驗證網(wǎng)絡(luò)狀態(tài)。通過使用樹狀等高效結(jié)構(gòu),Ethereum的網(wǎng)絡(luò)狀態(tài)被儲存和引用。隨著狀態(tài)增長,新的“葉子”和“分枝”被添加進(jìn)去,使得其執(zhí)行特定的行為時會更加復(fù)雜和消耗更多的時間。隨著鏈的規(guī)模增長,Node在最壞情況下的執(zhí)行會變得更糟糕,從而導(dǎo)致驗證新塊的時間不斷增加。隨著時間的增加,這也增加了全Node同步所需要的總時間。

第二:怎么解決可擴(kuò)展性三難困境
為了在網(wǎng)絡(luò)安全、Decentralization和可擴(kuò)展性之間找到有效的平衡點,真正解決可擴(kuò)展性三難問題,整個行業(yè)已經(jīng)做了很多嘗試。
Layer 1 解決方案中,基于Layer 1網(wǎng)絡(luò),即Bitcoin或Ethereum這樣的區(qū)塊鏈,Layer 2解決方案直接優(yōu)化區(qū)塊鏈協(xié)議本身,以提升交易速度和容量,實現(xiàn)可擴(kuò)展性增強(qiáng)。提高Layer 1區(qū)塊鏈可擴(kuò)展性的常見方法是分片和新的共識機(jī)制。分片將交易分為更小的 "碎片",可以同時進(jìn)行平行處理,并允許每個Node只持有從整個區(qū)塊鏈數(shù)據(jù)中分割出來的一部分自容數(shù)據(jù),以提升效率。Ethereum2.0的結(jié)果是共識機(jī)制從工作證明(PoW)升級到獲取證明(PoS)。PoS不要求Node使用大量的計算能力進(jìn)行加密算法,而是根據(jù)Node在區(qū)塊鏈中的質(zhì)押來決定Node的地位,這將提高網(wǎng)絡(luò)的容量,同時增強(qiáng)Decentralization和安全性。然而,在大型既定的Layer 1網(wǎng)絡(luò)上的擴(kuò)展解決方案需要社區(qū)共識和足夠的時間來全面部署,當(dāng)然也不是沒有風(fēng)險,因此實施起來更加困難。
Q1
在模塊化的方案中,模塊化區(qū)塊鏈的優(yōu)點也為此類問題的解決帶來一定的的啟示:
可擴(kuò)展性:在區(qū)塊鏈中使用模塊化可以增加規(guī)模,而不會引入有害的信任假設(shè)。
簡化鏈部署:通過利用模塊化設(shè)計,新的區(qū)塊鏈可以更快地被啟動,同時也不必?fù)?dān)心架構(gòu)的每個方面都要保持正確。
靈活性:專門構(gòu)建的模塊化鏈為權(quán)衡和設(shè)計實現(xiàn)提供了更多的選擇。例如,模塊化區(qū)塊鏈系統(tǒng)可能包括關(guān)注安全性和數(shù)據(jù)可用性的模塊化鏈,而其他的則關(guān)注執(zhí)行。
眾所周知,區(qū)塊的確認(rèn)需要依次進(jìn)行區(qū)塊提議、驗證者投票、達(dá)成共識和廣播區(qū)塊這幾個過程。由于上述步驟是串行進(jìn)行的,沒有辦法進(jìn)行加速。
Q2
如果將這幾個步驟并行處理,則可以顯著提高區(qū)塊性能,Vision基于上述兩點在共識層面作出了優(yōu)化:
第一:讓每個驗證者的 mempool 盡可能的包含所有的交易信息
第二:其他驗證者可以很快速的知道區(qū)塊提議者打包的交易信息
區(qū)塊提議者在 propose 區(qū)塊的時候會將區(qū)塊打碎并發(fā)送給全網(wǎng),同時發(fā)送一條區(qū)塊內(nèi)所有交易的 hash。其他驗證者根據(jù)該 hash 在自己的 mempool 里尋找相應(yīng)的交易,如果缺少一部分交易,則從區(qū)塊提議者發(fā)送的區(qū)塊碎片里尋找缺失的部分交易以實現(xiàn)區(qū)塊重構(gòu)。通過這種方式 VisionNetwork 縮減了其他驗證者同步區(qū)塊信息所需的時間。