溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Hyperledger Fabric基礎(chǔ)知識有哪些

發(fā)布時間:2021-12-06 14:05:28 來源:億速云 閱讀:204 作者:小新 欄目:互聯(lián)網(wǎng)科技

這篇文章給大家分享的是有關(guān)Hyperledger Fabric基礎(chǔ)知識有哪些的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。


Hyperledger Fabric基礎(chǔ)知識

本文我們會介紹Hyperledger Fabric的基礎(chǔ)知識,并了解如何充分利用這個多功能的區(qū)塊鏈框架。

區(qū)塊鏈技術(shù)為創(chuàng)新提供了豐富的機(jī)會。它提供了一種新的交易方式,從而可以從根本上改變業(yè)務(wù)的實現(xiàn)。

那么,在眾多的區(qū)塊鏈框架中,開發(fā)人員應(yīng)該首先掌握哪個框架呢?IBM開發(fā)的Hyperledger Fabric肯定是最佳選擇,尤其在今天這個公鏈應(yīng)用不明朗的情況下,使用Fabric開發(fā)聯(lián)盟鏈應(yīng)該是最常見也最實用的框架了。

Hyperledger是一種開源協(xié)作成果,旨在促進(jìn)跨行業(yè)的區(qū)塊鏈技術(shù)供企業(yè)使用。該全球合作由The Linux Foundation主持。

Hyperledger孵化并支持一系列區(qū)塊鏈業(yè)務(wù)技術(shù),框架,庫和應(yīng)用程序。 Hyperledger項目托管了多個區(qū)塊鏈框架,包括Hyperledger Fabric。本文概述了什么是Hyperledger Fabric,如何使用它來構(gòu)建解決方案以及如何在Hyperledger Fabric中執(zhí)行事務(wù)。

什么是Hyperledger Fabric?

Hyperledger Fabric是用于私有鏈和聯(lián)盟鏈業(yè)務(wù)網(wǎng)絡(luò)的開源框架實現(xiàn),其中成員身份和角色對于其他成員是已知的。它是一種模塊化的架構(gòu)。它允許賬本數(shù)據(jù)庫,共識機(jī)制和成員資格服務(wù)等組件即插即用。它使用了容器技術(shù),從而提供了企業(yè)級的網(wǎng)絡(luò)安全性,可伸縮性和機(jī)密性。

Hyperledger Fabric網(wǎng)絡(luò)具有以下組件:

  • Assets。資產(chǎn)是任何有價值的東西。資產(chǎn)具有狀態(tài)和所有權(quán)。資產(chǎn)在Hyperledger Fabric中表示為鍵值對的集合。

  • Shared ledger。共享賬本記錄資產(chǎn)的狀態(tài)和所有權(quán)。共享賬本包括兩個部分:

    • world state描述了給定時間點的共享賬本狀態(tài)。這是共享賬本的數(shù)據(jù)庫。

    • blockchain是記錄所有交易的交易日志歷史記錄。

  • Smart contract。 Hyperledger Fabric智能合約稱為chaincode。 Chaincode是定義資產(chǎn)和相關(guān)交易的軟件;換句話說,它包含系統(tǒng)的業(yè)務(wù)邏輯。當(dāng)應(yīng)用程序需要與共享賬本交互時,將調(diào)用Chaincode。鏈碼可以用Golang或Node.js編寫。

  • Peer nodes。Peer是網(wǎng)絡(luò)的基本元素,因為它們托管共享賬本和智能合約。Peer執(zhí)行鏈碼,訪問共享賬本數(shù)據(jù),認(rèn)可交易并與應(yīng)用程序?qū)?。Peer可以是endorsing peers,也可以是endorsers。每個鏈碼都可以指定背書策略,該政策定義了有效交易背書的必要條件和充分條件。

  • Channel。通道是由peers集合形成的邏輯結(jié)構(gòu)。此功能允許一組peers創(chuàng)建單獨的交易共享賬本。

  • Organizations。 Hyperledger Fabric網(wǎng)絡(luò)是由網(wǎng)絡(luò)中不同組織擁有和貢獻(xiàn)的peers構(gòu)建的。該網(wǎng)絡(luò)之所以存在是因為組織將其個人資源貢獻(xiàn)給了集體網(wǎng)絡(luò)。peers具有成員資格服務(wù)提供商從其所屬組織分配的身份(數(shù)字證書)。不同組織的Peers可以在同一channel上。

  • Membership Services Provider (MSP)。 MSP是證書頒發(fā)機(jī)構(gòu),以管理用于認(rèn)證成員身份和角色的證書。在Hyperledger Fabric網(wǎng)絡(luò)中,所有的節(jié)點必須要有認(rèn)證過的身份才能進(jìn)行交易。MSP管理用戶ID并驗證網(wǎng)絡(luò)上的所有參與者,從而使Hyperledger Fabric成為一個私有的和準(zhǔn)入的網(wǎng)絡(luò)。

  • Ordering service。Ordering service將交易打包成塊,以交付給通道上的peers。它保證了網(wǎng)絡(luò)中的交易順利執(zhí)行。它與peers和endorsing peers進(jìn)行通信。Ordering service目前只支持Solo和Kafka。

下圖是Hyperledger Fabric的組件和構(gòu)成:

Hyperledger Fabric基礎(chǔ)知識有哪些

Hyperledger架構(gòu)是怎么工作的?

在Hyperledger解決方案中,Hyperledger Fabric網(wǎng)絡(luò)充當(dāng)后端,而應(yīng)用程序前端則與網(wǎng)絡(luò)進(jìn)行通信。 SDK可幫助您在前端和后端之間建立通信,例如Node.js SDK和Java SDK。 SDK提供了一種執(zhí)行用戶鏈碼,在網(wǎng)絡(luò)中執(zhí)行事務(wù),監(jiān)視事件等的方法。

要編寫區(qū)塊鏈應(yīng)用程序,您需要:

  1. 用受支持的編程語言(例如Go)編寫chaincode。

  2. 在Hyperledger Fabric網(wǎng)絡(luò)上部署鏈碼。

  3. 使用SDK開發(fā)客戶端應(yīng)用程序。

Hyperledger交易如何執(zhí)行

Hyperledger Fabric網(wǎng)絡(luò)中事務(wù)的請求流如下所示:

  1. 客戶端使用Node.js或Java?SDK連接到Hyperledger Fabric網(wǎng)絡(luò)??蛻舳耸褂肧DK API,創(chuàng)建一個事務(wù)并將其發(fā)送給背書peer。

  2. endorsing peer會驗證客戶的簽名,模擬交易并發(fā)送背書簽名。

  3. 如果交易得到認(rèn)可,則客戶將交易提交給ordering service。否則,交易被取消。

  4. ordering service將交易傳遞給peers。所有peers都提交并應(yīng)用相同的事務(wù)序列并更新其狀態(tài)。

感謝各位的閱讀!關(guān)于“Hyperledger Fabric基礎(chǔ)知識有哪些”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI