區(qū)塊鏈的基本架構(gòu)

區(qū)塊鏈的基本架構(gòu)
一、六層層級結(jié)構(gòu)
1.1應(yīng)用層
智能合約、鏈碼(Hyperledger生態(tài))和去中心化應(yīng)用程序(DApp)構(gòu)成了應(yīng)用層,應(yīng)用層包括最終用戶用來與區(qū)塊鏈網(wǎng)絡(luò)通信的程序,腳本、應(yīng)用程序編程接口 (API)、用戶界面和框架都是其中的一部分。
應(yīng)用層協(xié)議進(jìn)一步細(xì)分為應(yīng)用層和執(zhí)行層。
1.2服務(wù)和可選組件層
服務(wù)層通過附加功能增強(qiáng)區(qū)塊鏈功能。
1.3協(xié)議/共識層
設(shè)置節(jié)點在狀態(tài)上達(dá)成一致的規(guī)則。通過 Protocol/Consensus 層的設(shè)計,區(qū)塊鏈系統(tǒng)能夠?qū)崿F(xiàn)去中心化、安全、可信的交易記錄和共識達(dá)成。不同的共識機(jī)制和通信協(xié)議選擇將根據(jù)具體的區(qū)塊鏈系統(tǒng)和應(yīng)用需求來確定。
1.4 網(wǎng)絡(luò)層
網(wǎng)絡(luò)層提供對等節(jié)點的交互和發(fā)現(xiàn)。
節(jié)點會定位引導(dǎo)節(jié)點,該引導(dǎo)節(jié)點會掃描可用的對等點并啟動綁定。 信息的流通過程會通過可信執(zhí)行環(huán)境 (TEE) 得到保護(hù),以保持?jǐn)?shù)據(jù)的完整性。節(jié)點會話維護(hù)因網(wǎng)絡(luò)而異,例如以太坊采用遞歸長度前綴,定義定位、驗證和共享數(shù)據(jù)所需的時間節(jié)點。
- 網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)
- 節(jié)點連接和發(fā)現(xiàn)
- 路由和傳輸
- 安全性和保護(hù)機(jī)制
1.5 數(shù)據(jù)層
區(qū)塊鏈的 Data(數(shù)據(jù))層是區(qū)塊鏈架構(gòu)中的一個關(guān)鍵組成部分,它涉及區(qū)塊鏈中數(shù)據(jù)的存儲、驗證和一致性。該層負(fù)責(zé)確保區(qū)塊鏈數(shù)據(jù)的安全性、可靠性和完整性。
- 分布式賬本
- 數(shù)據(jù)驗證和一致性
- 數(shù)據(jù)存儲
1.6 硬件/基礎(chǔ)設(shè)施層
區(qū)塊鏈的 Hardware/Infrastructure(硬件/基礎(chǔ)設(shè)施)層是區(qū)塊鏈架構(gòu)中的一個關(guān)鍵組成部分,它涉及支持區(qū)塊鏈系統(tǒng)運行所需的硬件設(shè)備和基礎(chǔ)設(shè)施。該層提供了計算、存儲和網(wǎng)絡(luò)等基礎(chǔ)設(shè)施,支持區(qū)塊鏈網(wǎng)絡(luò)的功能和性能。
- 硬件設(shè)備
- 基礎(chǔ)設(shè)施
二、執(zhí)行、結(jié)算、排序、數(shù)據(jù)可用性
區(qū)塊鏈的 Execution(執(zhí)行)層、Settlement(結(jié)算)層、Data Availability(數(shù)據(jù)可用性)層和Ordering(排序)層是區(qū)塊鏈架構(gòu)中的四個關(guān)鍵組成部分,用于處理和管理交易的執(zhí)行、結(jié)算、數(shù)據(jù)傳輸和排序。
- Execution層(執(zhí)行層)
Execution層處理區(qū)塊鏈上的交易執(zhí)行,確保交易的可靠性和一致性。它包括智能合約引擎、虛擬機(jī)和執(zhí)行環(huán)境等組件,用于驗證和執(zhí)行用戶提交的智能合約和交易。Execution 層負(fù)責(zé)執(zhí)行交易中的計算操作,并在區(qū)塊鏈網(wǎng)絡(luò)中更新狀態(tài)和賬本數(shù)據(jù)。它通常使用編程語言和執(zhí)行環(huán)境來處理智能合約的邏輯和業(yè)務(wù)邏輯。
- Settlement層(結(jié)算層)
結(jié)算層是通過共識機(jī)制確保交易的合法性和一致性,處理和確認(rèn)交易結(jié)算,并提供安全的交易環(huán)境。它是區(qū)塊鏈系統(tǒng)中至關(guān)重要的組成部分,為交易的安全性和可靠性提供了堅實的基礎(chǔ)。它涉及將執(zhí)行層中執(zhí)行的交易結(jié)果映射到區(qū)塊鏈賬本中的狀態(tài)變化和賬戶余額。
- Data Availability層(數(shù)據(jù)可用性層)
數(shù)據(jù)可用性層是指區(qū)塊鏈技術(shù)中負(fù)責(zé)存儲、訪問和檢索數(shù)據(jù)的組成部分,用于確保區(qū)塊鏈上的數(shù)據(jù)可以被有效地存儲、傳輸和使用,為區(qū)塊鏈的可靠性、可用性和數(shù)據(jù)安全性提供了基礎(chǔ)支持。
- Ordering層(排序?qū)樱?/strong>
Ordering 層負(fù)責(zé)對區(qū)塊鏈中的交易進(jìn)行排序,并將已排序的交易打包成區(qū)塊,確保交易的正確執(zhí)行、結(jié)算、數(shù)據(jù)傳輸和順序。
三、L1 和 L2
區(qū)塊鏈的 Layer1 和 Layer2 是指區(qū)塊鏈技術(shù)中的兩個層級或?qū)哟谓Y(jié)構(gòu),用于描述不同的技術(shù)和解決方案。
- Layer1
Layer1是區(qū)塊鏈技術(shù)的基礎(chǔ)層,包括底層協(xié)議、共識機(jī)制、加密算法、網(wǎng)絡(luò)和數(shù)據(jù)結(jié)構(gòu)。它提供了區(qū)塊鏈系統(tǒng)的基本架構(gòu)和功能,確保數(shù)據(jù)的安全性、一致性和可用性。Layer1的設(shè)計和實現(xiàn)對于區(qū)塊鏈的性能、安全性和可擴(kuò)展性至關(guān)重要
- Layer2:
Layer2是在區(qū)塊鏈 Layer1 之上構(gòu)建的一系列擴(kuò)展性解決方案和協(xié)議,旨在提高區(qū)塊鏈系統(tǒng)的性能、可擴(kuò)展性和交易吞吐量。Layer2不是獨立的區(qū)塊鏈,而是在區(qū)塊鏈 Layer1 上的補(bǔ)充技術(shù),旨在增強(qiáng)區(qū)塊鏈系統(tǒng)的性能和功能。Layer2解決方案通過在區(qū)塊鏈之外進(jìn)行交易和數(shù)據(jù)處理,減輕了Layer1上的負(fù)擔(dān),從而提供了更高效的交易和應(yīng)用體驗。常見的 Layer2 解決方案包括閃電網(wǎng)絡(luò)(Lightning Network)、Plasma 、rollup 等。
- 公鏈和 Layer1 的區(qū)別
Layer1和公鏈(Public Blockchain)在概念上有一些區(qū)別,盡管它們在某些方面可以重疊或相關(guān)。
- Layer1是指區(qū)塊鏈技術(shù)中的基礎(chǔ)層級,它包括底層的區(qū)塊鏈協(xié)議、共識算法、數(shù)據(jù)結(jié)構(gòu)和網(wǎng)絡(luò)協(xié)議等。Layer1是區(qū)塊鏈系統(tǒng)的核心組成部分,提供了區(qū)塊鏈的基本功能和特性,例如分布式賬本、交易驗證和共識達(dá)成。Layer1的設(shè)計決定了區(qū)塊鏈系統(tǒng)的安全性、可靠性、性能和可擴(kuò)展性。在 Layer1 中,可以實現(xiàn)不同類型的區(qū)塊鏈,包括公鏈、私鏈和聯(lián)盟鏈等。
- 公鏈?zhǔn)且环N開放的區(qū)塊鏈網(wǎng)絡(luò),允許任何人加入并參與其中,無需特定的許可或限制。
因此,公鏈?zhǔn)侵富贚ayer1的開放區(qū)塊鏈網(wǎng)絡(luò),允許任何人參與其中,并保持公開、透明和去中心化的特性。公鏈?zhǔn)荓ayer1的一種應(yīng)用和實現(xiàn)方式,而Layer1更廣泛地涵蓋了區(qū)塊鏈技術(shù)的基礎(chǔ)層級和協(xié)議。公鏈可以視為Layer1的一種形式或類型,用于實現(xiàn)開放和去中心化的區(qū)塊鏈網(wǎng)絡(luò)。