Hyperledger Fabric 基礎知識筆記

2021-10-24 19:36:09 字數 3891 閱讀 5567

區塊鏈可以幫助在競爭者之間或具有相反商業利益的組織之間建立信任,這可能導致爭執。

資產在hyperledger fabric中表示為鍵值對的集合,狀態更改記錄為通道 分類賬中的事務。資產可以二進位制和/或json形式表示。

chaincode是定義一項或多項資產的軟體,以及用於修改資產的交易指令;換句話說,這是業務邏輯。

分類帳是結構中所有狀態轉換的有序,防篡改記錄。

分類賬由乙個區塊鏈(「 chain」)和乙個狀態資料庫組成,該區塊鏈將不可變的,有序的記錄儲存在塊中,並維護乙個狀態資料庫。每個通道有乙個分類帳。每個對等方都為其所屬的每個通道維護乙個分類帳的副本。

hyperledger fabric支援所有參與者都具有已知身份的交易網路。公鑰基礎結構用於生成與組織,網路元件以及終端使用者或客戶端應用程式繫結的加密證書。

共識被定義為對包含乙個區塊的一組交易的正確性的全面驗證。

[外鏈轉存失敗,源站可能有防盜煉機制,建議將儲存下來直接上傳(img-ba4s0syz-1602754739866)(

對等節點維護與相關通道關聯的分類賬的副本。

根據網路配置nc4中指定的策略規則管理網路,網路受組織r1和r4的控制。

通道ci根據通道配置cci中指定的策略規則進行管理,通道受其上的組織的管理。

訂購服務o4充當網路管理點,並使用系統通道。同時訂購服務還支援與其關聯的應用程式通道,出於交易目的,將其分為塊進行分發。

在網路級別,證書頒發機構cai用於向ri組織的管理員和網路節點分配身份。

定義網路的第一件事是訂購服務,可以將訂購服務視為網路的初始管理點。

成員資格服務提供程式(msp):實現證書到成員組織的對映。

ca頒發的證書:事務生成和驗證過程的核心。

聯盟(x)

聯盟的定義儲存在具體的網路配置中,並在網路開發的下一階段使用。

nc4的配置方式:只有r1和r4可以建立新的聯盟。

乙個聯盟可以有任意數量的組織成員。

乙個聯盟定義了網路中彼此共享交易需求的組織集合。

為聯盟成員的私有通訊和私有資料提供了一種機制,實現保密性。

通道是主要的通訊機制,財團的成員可以通過該機制相互通訊。

一旦建立了乙個頻道,實際上是「脫離網路」。只有在通道配置中明確指定的組織才能對通道進行控制。

對等節點是託管區塊鏈分類賬l的副本的網路元件。

li物理上託管在pi,但邏輯上託管在ci。

智慧型合約s5已安裝到p1上。組織r1中的客戶端應用程式a必須使用s5通過對等節點p1訪問分類帳。

將智慧型合約安裝在對等節點上並在通道上定義後,即可由客戶端應用程式呼叫。

不承載智慧型合約副本的對等節點可以通過連線到通道了解智慧型合約的介面。

它描述了哪些組織必須批准交易,其他組織才能將其接受到其賬本副本上。

具有智慧型合約的對等節點可以幫助生成交易,而所有對等節點都可以驗證並隨後接受或拒絕交易到其賬本li的副本上。只有安裝了智慧型合約的對等節點才能參與交易背書的過程,對生成有效交易至關重要。

如果安裝了智慧型合約,則擁有智慧型合約的每個對等方都可以成為背書方。但是,要真正成為背書方,客戶端應用程式必須使用對等方上的智慧型合約來生成數字簽名的事務響應。背書對等一詞是對此事實的明確引用

當組織在乙個通道中有多個對等方時,領導對等方是負責將交易從訂購者分發到組織中其他提交對等方的節點。同行可以選擇參與靜態或動態領導選擇。

靜態集可以將零個或多個對等方配置為領導者。

動態集由該集選出乙個對等方作為領導者。如果領導者對等方失敗,則其餘對等方將重新選舉領導者。

用於跨組織領導同行。

網路的管理點、交易的分發點

排序服務是乙個元件,它從應用程式中收集已認可的事務並將它們排序為事務塊,這些事務塊隨後將分發給通道中的每個對等節點。在這些提交對等方的每個對等方,記錄交易(無論有效還是無效),並適當更新其本地分類帳副本。

mod_policy:便於統一nc下的其他組織批准更改才能使欲更改的正v額生效。

ai:應用程式

確定了對資源的確切許可權以及對參與者在區塊鏈網路中擁有的資訊的訪問許可權。

數字身份還具有fabric用來確定許可權的一些其他屬性,並且為身份和關聯的屬性的並集提供了特殊的名稱-主體。

fabric中的預設msp實現使用x.509證書作為身份,並採用傳統的公鑰基礎結構(pki)層次模型。

msp將可驗證的身份轉換為區塊鏈網路的成員。

其中包含與證書持有者有關的一組屬性

傳統的身份驗證機制依賴於數字簽名,該數字簽名允許一方對其訊息進行數字簽名。

證書頒發機構將證書分發給不同的參與者。這些證書由ca進行數字簽名,並將角色與角色的公鑰(以及可選的完整屬性列表)繫結在一起。

由於根ca(賽門鐵克,geotrust等)必須安全地向網際網路使用者分發數億個證書,因此有必要在所謂的中間ca中分散該過程。這些中間ca的證書由根ca或其他中間機構頒發,從而可以為鏈中任何ca頒發的任何證書建立「信任鏈」。

msp要求的實現是一組資料夾,這些資料夾新增到網路的配置中,並用於向內(組織決定其管理員是誰)和向外(通過允許其他組織驗證該實體)來定義組織有權做他們想做的事情)。證書頒發機構生成代表身份的證書,而msp包含乙個允許的身份列表。

msp發生在區塊鏈網路的兩個域中:在角色節點上本地(本地msp)、在通道配置中(通道msp)。

本地msp定義節點的許可權。

客戶的本地msp允許使用者在其交易中作為渠道成員(例如在鏈碼交易中)或作為系統中特定角色的所有者進行身份驗證作為組織管理員。

每個節點都必須定義乙個本地msp(因為它定義該級別具有管理或參與權的人)

渠道msp在渠道級別定義了管理權和參與權。

渠道msp識別誰擁有渠道級別的許可權。

每個參與渠道的組織都必須為其定義msp。建議組織與msp之間存在一對一對映。

乙個組織也可以分為多個組織單位,每個組織單位都有一定的職責集,也稱為affiliations。將ou視為組織內部的乙個部門。

用於將角色賦予身份。這些節點ou角色在檔案中定義,幷包含組織單位的列表,其成員被視為此msp代表的組織的一部分。

[外鏈轉存失敗,源站可能有防盜煉機制,建議將儲存下來直接上傳(img-t1wzmcus-1602754739869)(

定義:一組規則,這些規則定義了如何制定決策和達到特定結果的結構。

保險單是基礎架構管理的機制。

政策是使hyperledger fabric與以太坊或位元幣等其他區塊鏈有所不同的原因之一。在那些系統中,交易可以由網路中的任何節點生成和驗證。支配網路的策略在任何時間點都是固定的,只能使用支配**的相同過程進行更改。由於fabric是許可的區塊鏈,其使用者被基礎基礎結構識別,因此這些使用者具有在啟動網路之前決定網路治理並更改執行中網路的治理的能力。

[外鏈轉存失敗,源站可能有防盜煉機制,建議將儲存下來直接上傳(img-jzahghwj-1602754739872)(

贖回交易可以結束商業票據的生命週期。

保留贖回的商業票據的記錄通常為強制性的。

current state被標識為redeemed狀態允許快速識別票據。

涉及發行事務的組織需要在新發行的交易上簽字。

商業票據可以表示為一組屬性,每個屬性都有乙個值。通常,這些屬性的某種組合將為每張紙提供唯一的金鑰。

單獨的商業票據狀態的整個集合構成了分類帳世界狀態。

fabric狀態實現為鍵/值對,其中值以捕獲物件的多個屬性(通常為json)的格式對物件屬性進行編碼。

狀態具有給定上下文中唯一標識它的屬性的組合–關鍵

*****net商業票據的金鑰是由issuer和 *****屬性的串聯形成的。

狀態鍵使我們能夠唯一地識別**。它是由發行交易建立的,隨後通過購買和贖回進行更新。hyperledger fabric要求分類賬中的每個狀態都有唯一的金鑰。

背書策略。

智慧型合約定義業務物件的不同狀態,並控制在這些不同狀態之間移動物件的流程。智慧型合約之所以重要,是因為它們使架構師和智慧型合約開發人員能夠定義關鍵業務流程和資料,這些關鍵業務流程和資料將在區塊鏈網路中進行協作的不同組織之間共享。

Hyperledger Fabric基礎知識摘記

fabric是hyperledger專案的乙個子專案,它實現了區塊鏈技術,是一種基於交易呼叫和數字事件的分布式共享賬本技術。它採用模組化的架構設計,支援可插拔的元件開發和使用。fabric引入了成員管理的服務,即每個參與者都需要得到對應的證書證明身份才能夠訪問fabric系統,同時引入了多通道的概念...

C 基礎知識整理 基礎知識(2) 類

類,是物件導向語言的基礎。類的三大特性 封裝 繼承 多型。最基本的特性就是封裝性。程式設計師用程式描述世界,將世界的所有事物都看成物件,怎麼描述這個物件?那就是類了。也就是用類來封裝物件。用書上的話說,類是具有相同屬性和行為的物件的抽象。寶馬汽車 別克汽車 五菱之光汽車.基本具有相同的屬性和行為,所...

C 基礎知識整理 基礎知識(2) 類

類,是物件導向語言的基礎。類的三大特性 封裝 繼承 多型。最基本的特性就是封裝性。程式設計師用程式描述世界,將世界的所有事物都看成物件,怎麼描述這個物件?那就是類了。也就是用類來封裝物件。用書上的話說,類是具有相同屬性和行為的物件的抽象。寶馬汽車 別克汽車 五菱之光汽車.基本具有相同的屬性和行為,所...