加密貨幣交易所 加密貨幣交易所
Ctrl+D 加密貨幣交易所
ads

超級賬本:基本架構及運作機制_PEER:FABRIC幣

Author:

Time:1900/1/1 0:00:00

區塊鏈大致可分為公有鏈和聯盟鏈。聯盟鏈是現有中心化商業團體聯盟之間進行商業活動的手段和渠道。

HyperledgerFabric是由IBM牽頭發起的一個代表性的聯盟鏈項目,于15年底移交給Linux基金會維護,成為開源項目。Hyperledger基金會的成員包括IBM,Intel,思科等。

Fabric架構演變

Fabric的架構目前經歷了兩個版本的演進,最初的0.6版本只能被用來做商業驗證,無法被應用于真實場景中。主要原因就是結構簡單,基本所有的功能都集中在peer節點,在擴展性、安全性和隔離性方面有著天然的不足,如圖1所示。在后來推出的1.0正式版中,將peer節點的功能進行分拆,把共識服務從peer節點剝離,獨立為Orderer節點提供可插拔共識服務。更為重要的一個變化就是加入了多通道功能,可實現多業務隔離,因此在0.6版本的基礎上有了質的飛躍。

圖1Fabricv0.6架構

概念術語

Auditability:在一定權限和許可下,可以對鏈上的交易進行審計和檢查。

動態 | IBM官方回應人們對Linux基金會的超級賬本結構性能和規模的疑問:近日,IBM官方博客回答了加密貨幣市場上的一些人對Linux基金會的超級賬本結構的性能和規模的疑問。 IBM工程師Christopher Ferris表示,有6個因素可以影響區塊鏈框架本身。

1.應用程序客戶端。編寫此客戶端所用的編程語言將對選擇超級賬本結構software developer kit (SDK)產生影響。

2.有超分類賬結構的同行(背書人/提交人)和分類賬數據庫的選擇,這兩個分類數據庫是LevelDB和CouchDB。

3.有幾個鏈碼實現選擇,如Go、JavaScript、Java等。

4.訂購服務節點也會影響網絡的性能。

5.在區塊鏈網絡中,基于創建者如何架構地使用通道或私有事務來交付隱私,工作是有分布的。

6.物理或虛擬基礎設施,所有服務都運行在這個基礎設施上,這會嚴重影響性能。[2019/1/30]

CertificateAuthority:負責身份權限管理,又叫MemberService或IdentityService。

聲音 | 超級賬本楊保華:未來十年區塊鏈技術面臨五大挑戰:在由清華經管學院中國金融研究中心主辦的BAC 2018區塊鏈應用大會上,超級賬本全球技術委員、甲骨文區塊鏈首席架構師楊保華表示,未來十年,區塊鏈技術主要面臨五大挑戰,分別是完備的隱私安全、分布式身份管理、可信的智能合約、增強的互操作性、標準化與規范化。[2018/11/25]

Chaincode:區塊鏈上的應用代碼,擴展自“智能合約”的概念,支持Go、Node.js等編程語言,運行在隔離的容器環境中。

Orderer:Fabric1.0架構中的共識服務角色,可以對交易進行排序,批量打包,生成區塊,發給Peer節點。一個區塊鏈網絡中有多個Orderer節點,它們共同提供排序服務。排序服務可以通過不同的方式實現,從一個中心化的服務,到分布式協議。

Endorser:Fabric1.0架構中的一類peer節點角色,負責檢驗某個交易是否合法,是否愿意為之簽名背書。

Committer:Fabric1.0架構中的另一類peer節點角色,負責對orderer排序后的交易進行檢查,選擇合法的交易執行并寫入存儲。

動態 | 霍尼韋爾(Honeywell)宣布加入超級賬本聯盟:據rttnews消息,美國互聯工業企業霍尼韋爾(Honeywell)宣布加入超級賬本聯盟。[2018/9/27]

EnrollmentCertificateAuthority:負責成員身份相關證書管理的CA。

TransactionCertificateAuthority:負責維護交易相關證書管理的CA。

WorldState:一個鍵值數據庫,用于存放鏈碼執行過程中涉及到的狀態變量。

Fabricv1.0架構

Fabricv1.0的架構如圖2所示。

圖2Fabricv1.0架構

Fabric聯盟鏈中有兩種類型的節點:Peer節點和Orderer節點。Chaincode部署在Peer節點上,它對賬本進行讀寫操作。一個Peer節點可以充當多種角色,如背書者endorser,提交者committer。一個區塊鏈網絡中會有多個Peer節點。

超級賬本宣布將會于2018年12月12-15日在瑞士巴塞爾舉辦2018超級賬本全球論壇:超級賬本(Hyperledger)宣布將會于2018年12月12-15日在瑞士巴塞爾舉辦2018超級賬本全球論壇,論壇的議程將涉及企業區塊鏈,分布式賬本和智能合約等主題,最后一周還將舉辦一場區塊鏈技術黑客馬拉松活動。[2018/1/24]

Orderer提供了通向客戶端和Peer節點的共享通信通道。提供了包含交易的消息廣播服務。客戶端可以通過這個通道向所有的節點廣播消息。通道可以向連接到該通道的節點投遞(deliver)消息。

Orderer服務支持多通道。客戶端和Peer節點可以連接到一個給定的通道,并通過給定的通道發送和接收消息。多通道使得給定的peer集合接收包含相關交易的區塊,從而與其他交易完全隔離,實現數據隔離和保密。如圖3所示,peer1,peer2和peerN訂閱紅色通道,共同維護紅色賬本;peer1和peerN訂閱藍色通道并維護藍色賬本;peer2和peer訂閱黑色通道上,共同維護黑色賬本。

索尼全球教育聯手超級賬本Hyperledger打造下一代教育認證平臺:超級賬本Hyperledger剛剛發布推特宣稱,索尼全球教育(Sony Global Education)選擇超級賬本的Hyperledger Fabric打造下一代認證平臺,并公布了白皮書。在此之前,索尼曾向美國專利商標局提交一項新專利申請,其中提到將應用區塊鏈技術打造教育平臺。學生、教師或其他教育工作將作為鏈上不同的“節點”,可以上傳或了解相關教育信息。[2018/1/23]

圖3多通道

鏈碼

鏈碼可以認為是Fabric提供的智能合約,是上層應用與底層區塊鏈平臺交互的媒介。

所有的鏈碼都繼承兩個接口,init和invoke。init接口用于初始化合約,在整個鏈碼的生命周期里,該接口僅僅執行一次。invoke接口是編寫業務邏輯的唯一入口,雖然只有一個入口,但是可以根據參數傳遞的不同自由區分不同業務邏輯。合約接口能獲得數據分為三類:合約輸入參數;與狀態數據庫和歷史數據庫交互;與其他合約的交互。

Fabric1.0交易流程

Fabric上的交易交易分兩種:部署交易和調用交易。

部署交易:把Chaincode部署到peer節點上并準備好被調用,當一個部署交易成功執行時,Chaincode就被部署到peer節點上。

調用交易:客戶端應用程序通過Fabric提供的API調用先前已部署好的某個chaincode中的函數執行交易,并相應地讀取和寫入K-V數據庫,返回成功或者失敗。

如下圖所示,開發者創建客戶端應用和Chaincode,Chaincode被部署到區塊鏈網絡的Peer節點上面。通過Chaincode來操作賬本,當調用一個交易時,實際上是在調用Chaincode中的一個函數方法,令它實現業務邏輯,并對賬本進行get,put,delete操作。客戶端應用提供用戶交互界面,并提交交易到區塊鏈網絡上。Fabric1.0交易流程如下圖所示:

圖4交易流程

客戶端構造交易提案

客戶端應用程序利用任意SDK構造交易提案propose。該提案是一個調用智能合約功能函數的請求,用來確認哪些數據可以讀取或寫入賬本。客戶端把交易提案發送給一個或多個Peer節點,交易提案中包含本次交易要調用的合約標識、合約方法和參數信息以及客戶端簽名等。

背書節點模擬執行交易

背書節點endorser收到交易提案后,驗證簽名并確定提交者是否有權執行操作。背書節點將交易提案的參數作為輸入,在當前狀態K-V數據庫上執行交易,生成包含執行返回值、讀操作集合和寫操作集合的交易結果,這些值的集合、背書節點的簽名和背書結果作為提案的結果返回給客戶端SDK,SDK解析這些信息判斷是否應用于后續的交易。

客戶端把交易發送到共識服務節點

應用程序驗證背書節點簽名,并比較各節點返回的提案結果,判斷提案結果是否一致以及是否參照指定的背書策略執行。客戶端收到各個背書節點的應答后,打包到一起組成一個交易并簽名,發送給Orderers。

共識排序,生成新區塊,提交交易

Orderers對接收到的交易進行共識排序,然后按照區塊生成策略,將一批交易打包到一起,生成新的區塊,調用deliverAPI投遞消息,發送給提交節點。Committer收到區塊后,會對區塊中的每筆交易進行校驗,檢查交易依賴的輸入輸出是否符合當前區塊鏈的狀態,完成后將區塊追加到本地的區塊鏈,并修改K-V狀態數據庫。

補充說明

超級賬本V1.0將執行鏈碼的節點與決定出塊順序的節點相分離。每個peer維護分布式賬本的一個copy,orderers則僅提供共識排序服務,而不必維護賬本的copy。

clients首先要將交易提交給peers的一個子集執行chaincode。必須有足夠多的endorsers背書一致后,clients才將更新后的狀態以及背書簽名等提交給orderers。orderers通過共識協議輸出block的排序。最后,所有的peers再對背書進行驗證。從而:鏈碼的執行可以在共識排序前完成;不需要所有的peers都執行所有的鏈碼。

clients判斷提案結果是否一致主要是為了消除非確定性的影響。這主要是因為交易的執行可能因為種種原因而分叉,如果client發現大多數endorsers的執行結果不一致時,它就會認為該交易的結果是非確定性的,這筆交易也就作廢了。

Fabric的優勢

Fabric采用模塊化架構把交易處理劃分為3個階段:通過Chaincode進行分布式業務邏輯處理和協商;交易排序(orderders);交易的驗證和提交(committers)。這樣劃分帶來的好處:不同的階段由不同的節點參與,不需要全網的節點都參與。網絡的性能和擴展性得到優化。Peer節點和Orderder節點可以獨立擴展,并可以動態增加。此外,Fabric提供可插拔架構,其共識機制和加密算法均是可插拔的,可以根據實際情況選擇替換。

Tags:PEEREERFABRICABRLivepeer TokenMoonBeersFABRIC幣FABRIC價格

POL幣最新價格
元宇宙房產正在從蓬勃發展走向衰落?是給我們上車的機會?_元宇宙:METAWEB3PA幣

今年上半年,NFT可謂是紅極一時,尤其是元宇宙中的土地價格飆升,一些地塊的售價甚至可以高達數百萬美元;許多品牌希望獲得他們認為會在元宇宙中變得流行的空間.

1900/1/1 0:00:00
CC0與商業IP:哪個更好?_NFT:DSOCCER

本文來自NFTEvening,原文作者:AdeleOdaily星球日報譯者|Moni不得不說,NFT領域總會時不時迸發出一些令人耳目一新的火花,今年夏天.

1900/1/1 0:00:00
Matrixport CEO:投資者對加密貨幣市場\"失去了一定程度的信心\",行業需要時間來恢復_MAT:Decimated

金色財經報道,Matrixport的首席執行官JohnGe在接受采訪時表示,最近的市場崩潰是”不可避免的",核心問題是,我們看到的玩家的商業模式就像一個黑盒.

1900/1/1 0:00:00
Weekly Live Streaming Preview: Aug 8 to Aug 12

Gate.ioLiveStreamiscommittedtocreatingabrand-newlivestreamingecosystemfortheblockchainindustry.

1900/1/1 0:00:00
盤中寶——加密市場觀望情緒濃厚,美國今晚公布非農重要就業數據_BTC:PTI

美股隔夜漲跌不一,比特幣整體維持震蕩.美國今晚將公布非農重要就業數據,當下市場觀望情緒濃厚。從合約數據看,空頭持倉占據優勢,多空持倉人數比也開始高位回落,整體上,空頭相對強勢.

1900/1/1 0:00:00
清涼夏日好禮七重送_SDT:USD

尊敬的唯客用戶您好! 清涼夏日好禮七重送 活動時間:2022/08/1012:00至2022/08/2311:59 第一重:新手注冊禮 活動方式: 新注冊用戶活動期間充值任意金額.

1900/1/1 0:00:00
ads