時間:2023-06-18|瀏覽:353
在了解HyperLedgerFabric是什么之前,我們先來普及一個概念:什么是區(qū)塊鏈?區(qū)塊鏈(Blockchain)本質上是一種去中心化的數(shù)據(jù)庫,同時也是比特幣的底層技術。它是一個由使用密碼學方法相關聯(lián)產(chǎn)生的數(shù)據(jù)塊組成的串,每個數(shù)據(jù)塊中都包含一次比特幣網(wǎng)絡交易的信息。這些數(shù)據(jù)塊用于驗證信息的有效性和生成下一個區(qū)塊。區(qū)塊鏈最初是由中本聰在2008年提出的概念。
區(qū)塊鏈產(chǎn)生的原因是傳統(tǒng)商業(yè)網(wǎng)絡的交互存在問題。每個公司進行數(shù)據(jù)交互時,會通過自己的數(shù)據(jù)庫對另一家公司提供接口。這樣就無法確保每個公司的數(shù)據(jù)相同。此外,從別人的中心數(shù)據(jù)庫去取數(shù)據(jù)也無法確保數(shù)據(jù)真實性,存在信任問題。區(qū)塊鏈這種分布式賬本的模式可以很好地解決這個問題。
區(qū)塊鏈具有幾個明顯的特點:去中心化、不可偽造、不可篡改、公開透明、賬本一致,并且可以匿名。區(qū)塊鏈分為公有鏈、私有鏈和聯(lián)盟鏈。公有鏈是指全世界任何人都可以讀取、發(fā)送交易并獲得有效確認的區(qū)塊鏈,還可以參與其中共識過程。私有鏈僅對單獨的個人或實體開放,其寫入權限僅在一個組織手里,讀取權限或者對外開放要么受到限制,要么沒有限制。私有鏈的特點是交易速度非???,給隱私提供更好的保障,能夠大幅降低交易成本,甚至讓成本為零。聯(lián)盟鏈針對某個特定群體的成員以及有限的第三方,其內部指定多個預選節(jié)點為記賬人,每個塊的生成由所有的預選節(jié)點共同決定。
HyperLedger是一個旨在推動區(qū)塊鏈跨行業(yè)應用的開源項目。它由Linux基金會于2015年12月發(fā)起,并成為區(qū)塊鏈及分布式記賬系統(tǒng)的跨行業(yè)發(fā)展與協(xié)作項目。HyperLedger著重發(fā)展性能和可靠性,使之可以支持全球商業(yè)交易的主要技術、金融和供應鏈公司。HyperLedger將繼承獨立的開放協(xié)議和標準,通過框架方法和專用模塊,包括各種區(qū)塊鏈的共識機制和存儲方式,以及身份服務、訪問控制和智能合約。
HyperLedger孵化和推廣了一系列商業(yè)區(qū)塊鏈技術,包括分布式分類賬本框架、智能合約引擎、圖形化界面、工具庫和示例應用程序。
HyperLedgerFabric是一個許可的基于商業(yè)的區(qū)塊鏈構架。它主要解決商業(yè)性的區(qū)塊鏈需求。首先,所有節(jié)點都會有一個共享賬本,它會把商業(yè)的合約和合同封裝起來,放在賬本里,根據(jù)條件自動觸發(fā)信息,沒有人為操作步驟,能保證公平公正性。其次,隱私性。聯(lián)盟鏈的不同角色有不同的權限和操作數(shù)據(jù),隱私性功能可以及時保護數(shù)據(jù)。第三,信任機制更好。各個節(jié)點之間無需身份確認即可建立信任關系。
Fabric有幾個關鍵術語。一個是Chaincode:是指運行在區(qū)塊鏈上的智能合約。Transaction是指對智能合約中函數(shù)的調用,修改Iedger與state,WorldState是指存儲在數(shù)據(jù)庫中的K-V,即交易的實際操作數(shù)據(jù)。Peer是指維護賬本的網(wǎng)絡實體,包括背書節(jié)點和記賬節(jié)點。Endorsement指節(jié)點對交易模擬執(zhí)行結果簽名,Commitment指節(jié)點對區(qū)塊校驗并寫入賬本。
Fabric邏輯結構如下:Fabric的主要包括三大部分,第一個是Membership,主要是證書的頒發(fā)和驗證。再一個是Blockchain服務,包括賬本交易的處理。最后一部分是Chaincode,智能合約,負責合同執(zhí)行腳本。所有的賬本都通過Chaincode執(zhí)行。
HyperLedgerFabric其實是商業(yè)業(yè)務網(wǎng)絡的開源框架實現(xiàn),其中成員身份和角色為其他成員所知。借助容器技術,它允許賬本數(shù)據(jù)庫、共識機制和成員服務等組件即插即用。