摘要:區(qū)塊鏈接到區(qū)塊,區(qū)塊鏈接到區(qū)塊。共識(shí)整個(gè)交易流的更廣泛的術(shù)語(yǔ),用于生成順序協(xié)議并確認(rèn)構(gòu)成區(qū)塊的交易集合的正確性。策略策略是由數(shù)字身份的屬性組成的表達(dá)式,例如。在中,智能合約被稱為鏈碼,智能合約鏈碼安裝在對(duì)等節(jié)點(diǎn)上并實(shí)例化為一個(gè)或多個(gè)通道。
術(shù)語(yǔ)表
術(shù)語(yǔ)很重要,以便所有Hyperledger Fabric用戶和開(kāi)發(fā)人員都同意每個(gè)特定術(shù)語(yǔ)的含義,例如,什么是智能合約。文檔將根據(jù)需要引用術(shù)語(yǔ)表,但如果你愿意,可以隨意閱讀整個(gè)內(nèi)容;這很有啟發(fā)性!
錨點(diǎn)由八卦使用以確保不同組織中的對(duì)等點(diǎn)彼此了解。
當(dāng)提交包含對(duì)錨點(diǎn)更新的配置塊時(shí),對(duì)等點(diǎn)會(huì)聯(lián)系到錨點(diǎn)并從中了解錨點(diǎn)已知的所有對(duì)等點(diǎn)。一旦來(lái)自每個(gè)組織的至少一個(gè)對(duì)等點(diǎn)已經(jīng)聯(lián)系了錨點(diǎn),錨點(diǎn)就會(huì)了解通道中的每個(gè)對(duì)等點(diǎn)。由于八卦通訊是連續(xù)的,并且因?yàn)閷?duì)等點(diǎn)總是要求被告知他們不知道的任何對(duì)等點(diǎn)的存在,可以為通道建立共同的成員資格觀點(diǎn)。
例如,假設(shè)我們?cè)谕ǖ乐杏腥齻€(gè)組織 — A、B、C和一個(gè)多帶帶的為組織C定義的錨點(diǎn) - peer0.orgC,當(dāng)peer1.orgA(來(lái)自組織A)聯(lián)系peer0.orgC時(shí),它會(huì)告訴它關(guān)于peer0.orgA,而且,稍后peer1.orgB聯(lián)系peer0.orgC,后者會(huì)告訴前者關(guān)于peer0.orgA。從那時(shí)起,組織A和B將開(kāi)始直接交換成員資格信息,而無(wú)需peer0.orgC的任何幫助。
由于跨組織的通信依賴于八卦以便工作,因此必須在通道配置中定義至少一個(gè)錨點(diǎn),強(qiáng)烈建議每個(gè)組織都提供自己的一組錨點(diǎn),以實(shí)現(xiàn)高可用性和冗余。
ACLACL或訪問(wèn)控制列表,將對(duì)特定對(duì)等點(diǎn)資源(例如系統(tǒng)鏈碼API或事件服務(wù))的訪問(wèn)權(quán)限關(guān)聯(lián)到策略(指定需要多少和什么類(lèi)型的組織或角色類(lèi)型)。ACL是通道配置的一部分,因此它存在于通道的配置塊中,并可使用標(biāo)準(zhǔn)配置更新機(jī)制進(jìn)行更新。
ACL被格式化為鍵值對(duì)列表,其中鍵標(biāo)識(shí)我們希望控制其訪問(wèn)權(quán)限的資源,并且該值標(biāo)識(shí)允許訪問(wèn)它的通道策略(組)。例如,lscc/GetDeploymentSpec: /Channel/Application/Readers定義對(duì)生命周期鏈碼GetDeploymentSpec API(資源)的訪問(wèn)可由滿足/Channel/Application/Readers策略的身份訪問(wèn)。
configtx.yaml文件中提供了一組默認(rèn)ACL,configtxgen使用該文件來(lái)構(gòu)建通道配置??梢栽?b>configtx.yaml的頂級(jí)“Application”部分中設(shè)置默認(rèn)值,也可以在“Profiles”部分中按每個(gè)配置文件覆蓋默認(rèn)值。
區(qū)塊區(qū)塊包含一組有序的交易,它以加密方式鏈接到前一個(gè)區(qū)塊,然后鏈接到后續(xù)區(qū)塊,這種區(qū)塊鏈中的第一個(gè)區(qū)塊稱為創(chuàng)世區(qū)塊,區(qū)塊由排序系統(tǒng)創(chuàng)建,并由對(duì)等點(diǎn)驗(yàn)證。
區(qū)塊B1鏈接到區(qū)塊B0,區(qū)塊B2鏈接到區(qū)塊B1。
鏈分類(lèi)帳的鏈?zhǔn)且粋€(gè)交易日志,結(jié)構(gòu)為哈希鏈接的交易區(qū)塊,對(duì)等點(diǎn)從排序服務(wù)接收交易區(qū)塊,根據(jù)認(rèn)可策略和并發(fā)沖突將區(qū)塊的交易標(biāo)記為有效或無(wú)效,并將區(qū)塊附加到對(duì)等點(diǎn)的文件系統(tǒng)上的哈希鏈。
區(qū)塊鏈B包含區(qū)塊0,1,2。
鏈碼請(qǐng)參閱智能合約。
通道通道是私有區(qū)塊鏈覆蓋,允許數(shù)據(jù)隔離和機(jī)密性,一個(gè)特定于通道的分類(lèi)帳在通道中的對(duì)等點(diǎn)之間共享,并且交易方必須正確地認(rèn)證到通道,以便與其進(jìn)行交互,通道由配置區(qū)塊定義。
通道C連接應(yīng)用程序A1,對(duì)等點(diǎn)P2和排序服務(wù)O1。
提交通道上的每個(gè)對(duì)等點(diǎn)驗(yàn)證有序的交易區(qū)塊,然后將區(qū)塊提交(寫(xiě)入/附加)到其通道分類(lèi)賬的副本,對(duì)等點(diǎn)還將每個(gè)區(qū)塊中的每個(gè)交易標(biāo)記為有效或無(wú)效。
并發(fā)控制版本檢查并發(fā)控制版本檢查是一種跨通道上的對(duì)等點(diǎn)保持狀態(tài)同步的方法。對(duì)等點(diǎn)并行執(zhí)行交易,在提交到分類(lèi)賬之前,對(duì)等點(diǎn)檢查執(zhí)行時(shí)讀取的數(shù)據(jù)未更改,如果為交易讀取的數(shù)據(jù)在執(zhí)行時(shí)間和提交時(shí)間之間發(fā)生了變化,然后發(fā)生了并發(fā)控制版本檢查違規(guī),并且交易在分類(lèi)帳上標(biāo)記為無(wú)效,并且狀態(tài)數(shù)據(jù)庫(kù)中的值不會(huì)更新。
配置區(qū)塊包含定義系統(tǒng)鏈(排序服務(wù))或通道的成員和策略的配置數(shù)據(jù),對(duì)通道或整個(gè)網(wǎng)絡(luò)的任何配置修改(例如,離開(kāi)或加入的成員)將導(dǎo)致將新配置區(qū)塊附加到適當(dāng)?shù)逆湥搮^(qū)塊將包含創(chuàng)世塊的內(nèi)容加上delta。
共識(shí)整個(gè)交易流的更廣泛的術(shù)語(yǔ),用于生成順序協(xié)議并確認(rèn)構(gòu)成區(qū)塊的交易集合的正確性。
聯(lián)盟聯(lián)盟是區(qū)塊鏈網(wǎng)絡(luò)上的非定序組織的集合,這些是組建和加入通道以及擁有對(duì)等點(diǎn)的組織,雖然區(qū)塊鏈網(wǎng)絡(luò)可以有多個(gè)聯(lián)盟,大多數(shù)區(qū)塊鏈網(wǎng)絡(luò)只有一個(gè)聯(lián)盟。在通道創(chuàng)建時(shí),添加到通道的所有組織必須是聯(lián)盟的一部分,但是,未在聯(lián)盟中定義的組織可能會(huì)添加到現(xiàn)有通道。
當(dāng)前狀態(tài)請(qǐng)參閱世界狀態(tài)
動(dòng)態(tài)成員資格Hyperledger Fabric支持添加/刪除成員、對(duì)等點(diǎn)和排序服務(wù)節(jié)點(diǎn),而不會(huì)影響整個(gè)網(wǎng)絡(luò)的可操作性,當(dāng)業(yè)務(wù)關(guān)系調(diào)整并且出于各種原因需要添加/刪除實(shí)體時(shí),動(dòng)態(tài)成員資格至關(guān)重要。
認(rèn)可 認(rèn)可策略 Hyperledger Fabric CA 創(chuàng)世區(qū)塊 八卦協(xié)議 初始化 安裝 實(shí)例化 調(diào)用 領(lǐng)導(dǎo)對(duì)等點(diǎn) 分類(lèi)賬 成員請(qǐng)參閱組織。
成員資格服務(wù)提供商 成員資格服務(wù) 排序服務(wù)一個(gè)已定義的將交易排序到一個(gè)塊中的節(jié)點(diǎn)集合,排序服務(wù)獨(dú)立于對(duì)等點(diǎn)進(jìn)程,并以先到先服務(wù)的方式為網(wǎng)絡(luò)上的所有通道排序交易,排序服務(wù)旨在支持超越開(kāi)箱即用的SOLO和Kafka變種的可插拔實(shí)現(xiàn),排序服務(wù)是整個(gè)網(wǎng)絡(luò)的通用綁定;它包含與每個(gè)成員關(guān)聯(lián)的加密身份資料。
組織 對(duì)等點(diǎn)維護(hù)分類(lèi)帳并運(yùn)行鏈碼容器以便對(duì)分類(lèi)帳執(zhí)行讀/寫(xiě)操作的網(wǎng)絡(luò)實(shí)體,對(duì)等點(diǎn)由成員擁有和維護(hù)。
一個(gè)對(duì)等點(diǎn),‘P’。
策略策略是由數(shù)字身份的屬性組成的表達(dá)式,例如:Org1.Peer OR Org2.Peer。它們用于限制對(duì)區(qū)塊鏈網(wǎng)絡(luò)上的資源的訪問(wèn),例如,他們決定誰(shuí)可以讀取或?qū)懭氲酵ǖ溃蛘l(shuí)可以通過(guò)ACL使用特定的鏈碼API,在引導(dǎo)排序服務(wù)或創(chuàng)建通道之前,可以在configtx.yaml中定義策略,或者可以在通道上實(shí)例化鏈碼時(shí)指定它們,示例configtx.yaml中提供了一組默認(rèn)策略,適用于大多數(shù)網(wǎng)絡(luò)。
私有數(shù)據(jù) 私有數(shù)據(jù)集合(集合) 提案針對(duì)通道上特定對(duì)等點(diǎn)的認(rèn)可請(qǐng)求,每個(gè)提案都是實(shí)例化或調(diào)用(讀/寫(xiě))請(qǐng)求。
查詢 軟件開(kāi)發(fā)工具包(SDK) 智能合約智能合約就是代碼 - 由區(qū)塊鏈網(wǎng)絡(luò)外部的客戶端應(yīng)用程序調(diào)用 - 管理對(duì)世界狀態(tài)中一組鍵值對(duì)的訪問(wèn)和修改。在Hyperledger Fabric中,智能合約被稱為鏈碼,智能合約鏈碼安裝在對(duì)等節(jié)點(diǎn)上并實(shí)例化為一個(gè)或多個(gè)通道。
狀態(tài)數(shù)據(jù)庫(kù)當(dāng)前狀態(tài)數(shù)據(jù)存儲(chǔ)在狀態(tài)數(shù)據(jù)庫(kù)中,用于從鏈碼進(jìn)行有效的讀取和查詢,支持的數(shù)據(jù)庫(kù)包括levelDB和couchDB。
系統(tǒng)鏈 交易調(diào)用或?qū)嵗峤唤o排序、驗(yàn)證和提交的結(jié)果。調(diào)用是從分類(lèi)帳讀取/寫(xiě)入數(shù)據(jù)的請(qǐng)求,實(shí)例化是一個(gè)啟動(dòng)和初始化通道鏈碼的請(qǐng)求。應(yīng)用程序客戶端收集來(lái)自認(rèn)可的對(duì)等點(diǎn)的調(diào)用或?qū)嵗憫?yīng),并將結(jié)果和認(rèn)可打包到提交給排序、驗(yàn)證和提交的交易中。
一個(gè)交易,"T"。
世界狀態(tài)也被稱為“當(dāng)前狀態(tài)”,世界狀態(tài)是HyperLedger Fabric分類(lèi)賬的一個(gè)組件,世界狀態(tài)表示鏈交易日志中包含的所有鍵的最新值,鏈碼針對(duì)世界狀態(tài)數(shù)據(jù)執(zhí)行交易提案,因?yàn)槭澜鐮顟B(tài)提供對(duì)這些鍵的最新值的直接訪問(wèn),而不是通過(guò)遍歷整個(gè)交易日志來(lái)計(jì)算它們。每當(dāng)鍵的值發(fā)生變化時(shí)(例如,當(dāng)汽車(chē)的所有權(quán) - “鍵” - 從一個(gè)所有者轉(zhuǎn)移到另一個(gè)所有者 - “值”)或添加新鍵時(shí),世界狀態(tài)就會(huì)改變(一輛車(chē)被創(chuàng)造出來(lái))。因此,世界狀態(tài)對(duì)交易流至關(guān)重要,因?yàn)楸仨氈梨I值對(duì)的當(dāng)前狀態(tài)才能改變它,對(duì)等點(diǎn)將處理塊中包含的每個(gè)有效交易的最新值提交到分類(lèi)帳世界狀態(tài)。
世界狀態(tài),"W"。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/24203.html
摘要:企業(yè)區(qū)塊鏈平臺(tái)企業(yè)級(jí)許可的分布式分類(lèi)賬平臺(tái),為廣泛的行業(yè)用例提供模塊化和多功能性。這些節(jié)點(diǎn)通過(guò)應(yīng)用已經(jīng)由共識(shí)協(xié)議驗(yàn)證的交易來(lái)維護(hù)分類(lèi)帳的副本,該交易被分組為包括將每個(gè)塊綁定到前一個(gè)塊的散列的塊中。 企業(yè)區(qū)塊鏈平臺(tái) 企業(yè)級(jí)許可的分布式分類(lèi)賬平臺(tái),為廣泛的行業(yè)用例提供模塊化和多功能性。 介紹 一般而言,區(qū)塊鏈?zhǔn)且粋€(gè)不可變的交易分類(lèi)賬,維護(hù)在一個(gè)分布式對(duì)等節(jié)點(diǎn)網(wǎng)絡(luò)中。這些節(jié)點(diǎn)通過(guò)應(yīng)用已經(jīng)由共...
摘要:在上周周記的結(jié)尾,我曾經(jīng)說(shuō)過(guò)本周要介紹的開(kāi)發(fā)和應(yīng)用??稍谕ㄗx完的文檔之后,我立即取消了原定計(jì)劃,直接介紹。讓其成為開(kāi)發(fā)首選的理由只有一個(gè)對(duì)開(kāi)發(fā)者友好。將發(fā)布到的暴露成,供外部調(diào)用,完全語(yǔ)言中立。而后者則是為測(cè)試而生的。 在上周周記的結(jié)尾,我曾經(jīng)說(shuō)過(guò)本周要介紹Fabric的開(kāi)發(fā)和應(yīng)用。按照最開(kāi)始的寫(xiě)作計(jì)劃,我打算講講兩種開(kāi)發(fā)模式:直接使用Fabric API和利用Composer框架???..
摘要:原文地址作者超級(jí)賬本如何貢獻(xiàn)個(gè)人感受,文檔看的再多,學(xué)習(xí)的速度也不如參與到項(xiàng)目中去,深入了解實(shí)現(xiàn)原理和設(shè)計(jì)的初衷。維護(hù)者負(fù)責(zé)評(píng)審和合并提交評(píng)審的所有布丁,并在超級(jí)賬本技術(shù)委員會(huì)的方針下指導(dǎo)項(xiàng)目的技術(shù)發(fā)展路線。 原文地址:https://www.xuanzhangjiong.to...作者:TopJohn 超級(jí)賬本-如何貢獻(xiàn) 個(gè)人感受,文檔看的再多,學(xué)習(xí)的速度也不如參與到項(xiàng)目中去,深入...
摘要:腳本列出了在結(jié)束時(shí)安裝的映像。在不同的體系結(jié)構(gòu),將用標(biāo)識(shí)體系結(jié)構(gòu)的字符串替換。提供了許多來(lái)支持各種編程語(yǔ)言,官方發(fā)布了兩款針對(duì)和的和文檔。。 入門(mén) 在我們開(kāi)始之前,如果你還沒(méi)有這樣做,你可能希望檢查是否已經(jīng)在開(kāi)發(fā)區(qū)塊鏈應(yīng)用程序和/或運(yùn)行Hyperledger Fabric的平臺(tái)上安裝了所有前提條件。 一旦安裝了前提條件,就可以下載并安裝HyperLedger Fabric了,當(dāng)我們?cè)贔...
摘要:環(huán)境搭建快速入門(mén)前提安裝安裝安裝安裝查看版本信息輸出安裝查看版本信息輸出版本要求版本要求上傳解壓文件編輯環(huán)境變量文件添加如下內(nèi)容輸出如果系統(tǒng)中有舊版本的則使用如下命令卸載舊版本的然后再重新安裝 環(huán)境搭建 快速入門(mén): http://hyperledger-fabric.rea... 前提 安裝git $ sudo apt update $ sudo apt install git 安裝...
閱讀 2595·2021-09-30 09:48
閱讀 2593·2019-08-30 14:10
閱讀 2743·2019-08-29 11:22
閱讀 1863·2019-08-26 13:51
閱讀 2300·2019-08-26 12:02
閱讀 2446·2019-08-23 16:06
閱讀 3584·2019-08-23 14:06
閱讀 1117·2019-08-23 13:56