Fabric的6大特性
文章目錄
- 什么是Hyperledger Fabric
- 1. 成員準(zhǔn)入
- 2. 性能,可伸縮性和信任級(jí)別
- 3 需要了解的數(shù)據(jù)
- 4 通過(guò)不可變的分布式賬本進(jìn)行復(fù)雜查詢(xún)
- 5 支持插件組件的模塊化架構(gòu)
- 6 保護(hù)數(shù)字鑰匙和敏感數(shù)據(jù)
什么是Hyperledger Fabric
為了滿(mǎn)足現(xiàn)代業(yè)務(wù)需求,IBM與其他公司合作,共同開(kāi)發(fā)了一個(gè)開(kāi)放源代碼,可立即投入生產(chǎn)的業(yè)務(wù)區(qū)塊鏈框架,稱(chēng)為Hyperledger Fabric?,這是由LinuxFoundation?托管的8個(gè)Hyperledger?項(xiàng)目之一。
Hyperledger Fabric是被廣泛使用的,支持準(zhǔn)入網(wǎng)絡(luò)上的分布式賬本解決方案。它的模塊化架構(gòu)最大程度地提高了區(qū)塊鏈解決方案的機(jī)密性,彈性和靈活性。
1. 成員準(zhǔn)入
Hyperledger Fabric是用于準(zhǔn)入網(wǎng)絡(luò)的框架,其中所有參與者都具有已知身份。在考慮準(zhǔn)入的網(wǎng)絡(luò)時(shí),您應(yīng)該考慮您的區(qū)塊鏈用例是否需要遵守?cái)?shù)據(jù)保護(hù)法規(guī)。許多用例(尤其是在金融部門(mén)和醫(yī)療保健行業(yè))受數(shù)據(jù)保護(hù)法律的約束,這些法律要求了解網(wǎng)絡(luò)的成員是誰(shuí)以及誰(shuí)在訪問(wèn)特定數(shù)據(jù)。
例如,考慮一家私募股權(quán)公司。根據(jù)定義,私募股權(quán)不在證券交易所公開(kāi)交易,其投資者通常是風(fēng)險(xiǎn)投資公司,私募股權(quán)公司或天使投資者。該網(wǎng)絡(luò)的參與者必須是已知的,并且在資金方面具有信譽(yù),才能進(jìn)行投資才能參與區(qū)塊鏈。
2. 性能,可伸縮性和信任級(jí)別
Hyperledger Fabric建立在模塊化架構(gòu)之上,該架構(gòu)將事務(wù)處理分為三個(gè)階段:分布式邏輯處理和協(xié)議(“鏈碼”),事務(wù)排序以及事務(wù)驗(yàn)證和承諾。這種分離具有多個(gè)優(yōu)點(diǎn):跨節(jié)點(diǎn)類(lèi)型所需的信任和驗(yàn)證級(jí)別更少,并且網(wǎng)絡(luò)可伸縮性和性能得到了優(yōu)化。
為了說(shuō)明這一點(diǎn),讓我們看一下Hyperledger Fabric v1.0中的事務(wù)流,如下圖所示。
從圖的左側(cè)開(kāi)始:
1)交易建議由應(yīng)用程序提交給背書(shū)的peer節(jié)點(diǎn)。
2)背書(shū)政策概述了簽署提案需要多少個(gè)背書(shū)人和/或哪些背書(shū)人組合。背書(shū)者執(zhí)行鏈碼以模擬網(wǎng)絡(luò)對(duì)等方中的提議,從而創(chuàng)建一個(gè)讀/寫(xiě)集。
3)然后背書(shū)的peer節(jié)點(diǎn)將簽名的提案響應(yīng)(背書(shū))發(fā)送回應(yīng)用程序。
4)應(yīng)用程序?qū)⒔灰缀秃灻峤唤oOrder服務(wù)
5)創(chuàng)建一批或一組交易,并將其交付給提交peer節(jié)點(diǎn)。
6)當(dāng)提交peer節(jié)點(diǎn)收到一批事務(wù)時(shí)
7)驗(yàn)證是否符合背書(shū)策略,并檢查讀/寫(xiě)集以檢測(cè)沖突的事務(wù)。如果兩項(xiàng)檢查均通過(guò),則該塊將提交到賬本,并且每個(gè)事務(wù)的狀態(tài)更新都將反映在狀態(tài)數(shù)據(jù)庫(kù)中。
由于使用新的v1.X架構(gòu),只有簽名和讀/寫(xiě)集是通過(guò)網(wǎng)絡(luò)發(fā)送的,因此可伸縮性和性能得到了優(yōu)化。此外,由于只有背書(shū)人和提交人才能真正看到交易,因此在區(qū)塊鏈系統(tǒng)的不同部分中需要較少的信任級(jí)別,從而提供了更高的安全性。
例如,在資本市場(chǎng)中,隨著股權(quán)支持證券或債券的買(mǎi)賣(mài),交易量由于參與者的增加而增加。增加的事務(wù)需要改進(jìn)的可伸縮性和性能,Hyperledger Fabric v1.X提供了此功能,部分原因是拆分了鏈代碼執(zhí)行。
拆分鏈碼執(zhí)行還可以使網(wǎng)絡(luò)動(dòng)態(tài)增長(zhǎng)。在Hyperledger Fabric v1.X中,可以動(dòng)態(tài)和以編程方式添加peer,而不是像v0.6中那樣以靜態(tài)方式添加。例如,假設(shè)一家管理外匯匯率的公司有一家新銀行要添加到網(wǎng)絡(luò)中。使用Hyperledger Fabric v1.X,他們可以以編程方式執(zhí)行此操作。
3 需要了解的數(shù)據(jù)
由于競(jìng)爭(zhēng)力,保護(hù)法和個(gè)人數(shù)據(jù)機(jī)密性的規(guī)定,企業(yè)需要對(duì)某些數(shù)據(jù)元素進(jìn)行隱私保護(hù),這可以通過(guò)在區(qū)塊鏈上進(jìn)行數(shù)據(jù)分區(qū)來(lái)實(shí)現(xiàn)。 Hyperledger Fabric支持的通道允許數(shù)據(jù)僅傳遞給需要了解的各方。
例如,許多金融實(shí)體對(duì)競(jìng)爭(zhēng)對(duì)手甚至看到正在處理的交易數(shù)量表示擔(dān)憂(yōu)。一些金融機(jī)構(gòu)認(rèn)為加密“不足”來(lái)保護(hù)其數(shù)據(jù)。鑒于某些金融工具需要花費(fèi)10年或更長(zhǎng)的時(shí)間才能實(shí)現(xiàn)價(jià)值,隨著時(shí)間的流逝,密碼破解的風(fēng)險(xiǎn)可能會(huì)使私人信息公開(kāi)。通道幫助提供了數(shù)據(jù)分區(qū)功能,只有那些需要了解數(shù)據(jù)的人員才能看到事務(wù)數(shù)和數(shù)據(jù)本身。
4 通過(guò)不可變的分布式賬本進(jìn)行復(fù)雜查詢(xún)
分布式賬本是區(qū)塊鏈應(yīng)用程序狀態(tài)轉(zhuǎn)換的順序記錄。每筆交易都會(huì)產(chǎn)生一組資產(chǎn)鍵值對(duì),這些鍵值對(duì)在創(chuàng)建,更新或刪除時(shí)將被提交到賬本。 peer支持LevelDB和CouchDB兩種格式存儲(chǔ)。
默認(rèn)情況下,LevelDB鍵值數(shù)據(jù)庫(kù)支持鍵查詢(xún),復(fù)合鍵查詢(xún)和鍵范圍查詢(xún)。如果您還需要復(fù)雜的豐富查詢(xún),則可以使用CouchDB,它支持LevelDB的基本功能,并添加完整的數(shù)據(jù)復(fù)雜查詢(xún)。這種文檔數(shù)據(jù)庫(kù)(例如CouchDB)的內(nèi)容是JSON格式的,同時(shí)支持復(fù)雜查詢(xún),其中數(shù)據(jù)模型與現(xiàn)有鍵/值編程模型兼容。
這種JSON格式有助于最大程度地減少生成簡(jiǎn)單報(bào)告和執(zhí)行審核功能所需的工作。例如,在供應(yīng)鏈場(chǎng)景中,您可以使用JSON文檔樣式來(lái)幫助概述商品和運(yùn)輸實(shí)體的特定數(shù)據(jù)。您可以輕松地生成用于資產(chǎn)到最終目的地的不同地點(diǎn)和運(yùn)輸實(shí)體的資產(chǎn)報(bào)告。
5 支持插件組件的模塊化架構(gòu)
Hyperledger Fabric體系結(jié)構(gòu)的模塊化使網(wǎng)絡(luò)設(shè)計(jì)人員可以插入其首選組件實(shí)現(xiàn),這是一個(gè)優(yōu)勢(shì)。最需要模塊化的領(lǐng)域之一是“使用自己的身份認(rèn)證系統(tǒng)”。很多公司已經(jīng)具有自己的身份管理,并且想要重用而不是重建。
可插拔的體系結(jié)構(gòu)的其他組件包括共識(shí)或加密,允許使用自己的加密標(biāo)準(zhǔn)。
6 保護(hù)數(shù)字鑰匙和敏感數(shù)據(jù)
HSM(硬件安全模塊)提供了對(duì)數(shù)字密鑰的高級(jí)保護(hù)。對(duì)于涉及身份管理的方案,HSM可以更好的保護(hù)密鑰和敏感數(shù)據(jù)。
更多精彩內(nèi)容且看:
- 區(qū)塊鏈從入門(mén)到放棄系列教程-涵蓋密碼學(xué),超級(jí)賬本,以太坊,Libra,比特幣等持續(xù)更新
- Spring Boot 2.X系列教程:七天從無(wú)到有掌握Spring Boot-持續(xù)更新
- Spring 5.X系列教程:滿(mǎn)足你對(duì)Spring5的一切想象-持續(xù)更新
- java程序員從小工到專(zhuān)家成神之路(2020版)-持續(xù)更新中,附詳細(xì)文章教程
更多教程請(qǐng)參考 flydean的博客
總結(jié)
以上是生活随笔為你收集整理的Fabric的6大特性的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 混合密码系统
- 下一篇: Solidity的Bytecode和Op