今天,我們很高興地宣布Hyperledger Besu加入超級賬本成為最新項目。Hyperledger Besu是一個基于Java的以太坊客戶機,它以前叫做Pantheon,是提交給超級賬本的第一個可以在公鏈上運行的區(qū)塊鏈項目。Besu代表企業(yè)對為其應(yīng)用構(gòu)建許可型和開放型網(wǎng)絡(luò)案例的興趣在日益增長。
該項目的設(shè)計和架構(gòu)策略致力于干凈的界面和模塊化,目標是使Hyperledger Besu成為開放的開發(fā)和部署平臺。Besu被設(shè)計成盡可能模塊化,它將共識算法和其他關(guān)鍵區(qū)塊鏈特點分離開來,使得這些組件易于升級或?qū)崿F(xiàn)。通過在客戶端中的元素之間創(chuàng)建干凈的接口(例如,網(wǎng)絡(luò)、存儲、EVM等),我們相信企業(yè)將可以更容易地配置以太坊來滿足他們的需求,同時也為其他超級賬本項目創(chuàng)造機會來集成和使用Besu的代碼庫的元素。
Hyperledger Besu是什么?
Hyperledger Besu是一個開源的以太坊客戶端,它采用Apache2.0許可協(xié)議,使用Java語言編寫。它可以在以太坊公網(wǎng)或私有許可型網(wǎng)絡(luò)上運行,也可以在Rinkeby、Ropsten和G?i等測試網(wǎng)絡(luò)上運行。Hyperledger Besu包含了PoW、PoA和IBFT在內(nèi)的幾個共識算法,并且擁有專門為聯(lián)盟鏈環(huán)境中使用而設(shè)計的全面的許可方案。
什么是 “以太坊客戶端”?
Hyperledger Besu是數(shù)種以太坊客戶端之一。以太坊客戶端執(zhí)行以太坊協(xié)議。一個以太坊客戶端包括:
· 一個在以太坊區(qū)塊鏈中處理交易的執(zhí)行環(huán)境
· 交易執(zhí)行數(shù)據(jù)持久化所需存儲
· 與其他以太坊節(jié)點通信、同步狀態(tài)所需要的端到端(P2P)網(wǎng)絡(luò)
· 應(yīng)用開發(fā)人員與區(qū)塊鏈交互所需要的API
Hyperledger Besu有什么特點?
Hyperledger Besu執(zhí)行以太坊企業(yè)聯(lián)盟(EEA)規(guī)范。EEA規(guī)范是為了在以太坊中的各種開源和閉源代碼項目之間創(chuàng)建通用接口,以確保用戶沒有供應(yīng)商鎖定,并為構(gòu)建應(yīng)用程序的團隊創(chuàng)建標準接口。Besu通過與EEA客戶機規(guī)范保持一致來實現(xiàn)企業(yè)特性。
Hyperledger Besu具有以下特點:
以太坊虛擬機 (EVM): EVM是圖靈完備的虛擬機,允許通過在以太坊區(qū)塊鏈中部署和執(zhí)行智能合約完成交易。
存儲:Hyperledger Besu使用RocksDB鍵-值數(shù)據(jù)庫來做本地持久化保存鏈數(shù)據(jù)。這個數(shù)據(jù)分成一些子類:
共識算法:Hyperledger Besu執(zhí)行各種共識算法,涉及到交易驗證、區(qū)塊驗證和區(qū)塊生產(chǎn)(即挖礦中的工作量證明)。這些算法包括:
· PoA(Proof of Authority權(quán)威證明): Hyperledger Besu執(zhí)行了幾種權(quán)威證明協(xié)議。當(dāng)參與者相互認識,并且有一定程度的信任(例如,在某個許可型聯(lián)盟鏈中)時,將使用權(quán)威證明的共識協(xié)議。
· IBFT 2.0:IBFT 2.0網(wǎng)絡(luò)中,交易和區(qū)塊由被稱為驗證者的已批準的帳戶進行驗證。驗證者輪流創(chuàng)建下一個區(qū)塊。現(xiàn)有的驗證者提議并投票決定是否添加或移除驗證者。IBFT2.0有即時的結(jié)果。當(dāng)使用IBFT2.0時,沒有分支,所有有效的區(qū)塊都包含在主鏈中。
· Clique: Clique比IBFT 2.0更具容錯性。Clique容忍多達半數(shù)的驗證者失效,而IBFT2.0網(wǎng)絡(luò)需要大于或等于?驗證者才能運行以創(chuàng)建區(qū)塊。Clique沒有即時的結(jié)果。使用Clique的實現(xiàn)必須認識到可能發(fā)生分叉和鏈重組。
· PoW (Ethash): PoW(Proof of Work工作量證明)用于以太坊主網(wǎng)的挖礦行為。
存儲:Hyperledger Besu使用RocksDB鍵-值數(shù)據(jù)庫來做本地持久化保存鏈數(shù)據(jù)。這個數(shù)據(jù)分成一些子類:
· 區(qū)塊鏈:區(qū)塊鏈數(shù)據(jù)由塊頭和塊體組成,塊頭形成數(shù)據(jù)“鏈”,用來對區(qū)塊鏈狀態(tài)進行加密驗證;塊體包含已排序了的交易列表以及交易憑據(jù),交易憑據(jù)包含與交易執(zhí)行相關(guān)的元數(shù)據(jù)(包括交易日志)。
· 全局狀態(tài)(World State):每個塊頭通過一個stateRoot 哈希表達一個全局狀態(tài)。全局狀態(tài)是從地址到帳戶的映射。外部擁有的帳戶包含一個以太余額,而智能合約帳戶則額外包含可執(zhí)行代碼和存儲。
P2P網(wǎng)絡(luò):Hyperledger Besu執(zhí)行以太坊的devp2p網(wǎng)絡(luò)協(xié)議,用于客戶端之間的通信,并為IBFT2實現(xiàn)了附加的子協(xié)議:
· 發(fā)現(xiàn)(Discovery): 一個基于UDP的協(xié)議,用于網(wǎng)絡(luò)上查找端點
· RLPx: 一個基于TCP的協(xié)議,用于端點之間通過各種“子協(xié)議”進行通信:
· ETH子協(xié)議(Ethereum Wire Protocol):用于全網(wǎng)同步區(qū)塊鏈狀態(tài)和傳播新的交易。
· IBF子協(xié)議:被IBFT2用于共識協(xié)議,加速共識決策。
面向用戶的API:Hyperledger Besu通過HTTP和WebSocket協(xié)議以及GraphQL API提供了以太坊主網(wǎng)和EEA JSON-RPC API。
· JSON-RPC
· HTTP JSON-RPC服務(wù)
· WebSocket JSON-RPC服務(wù)
· GraphQL
監(jiān)控:Hyperledger Besu允許你監(jiān)控節(jié)點和網(wǎng)絡(luò)性能
· 節(jié)點性能采用Prometheus 或者debug_metrics JSON-RPC API進行監(jiān)控
· 網(wǎng)絡(luò)性能采用 Alethio工具例如Block Explorer和 EthStats Network Monitor進行監(jiān)控
隱私:Hyperledger Besu中的隱私指的是在交易當(dāng)事人之間保持交易秘密的能力。其他方無法訪問交易內(nèi)容、發(fā)送方或參與方列表。Besu使用一個私有交易管理器來實現(xiàn)隱私。
許可: 許可型網(wǎng)絡(luò)通過啟用節(jié)點許可和/或帳戶許可,只允許指定的節(jié)點和帳戶參與。
Hyperledger Besu支持什么?
Hyperledger Besu包括一個命令行界面,以及基于HTTP和WebSocket的API,用于在以太坊網(wǎng)絡(luò)中運行、維護和監(jiān)控節(jié)點。
Besu客戶端的API支持典型的以太坊功能,例如智能合約和dapp開發(fā)、部署和運營用戶案例。Truffle、Remix和 web3j 工具使這些活動成為可能??蛻舳藢崿F(xiàn)了標準JSON-RPC API,使得與生態(tài)系統(tǒng)工具的集成變得簡單??蛻舳诉€支持創(chuàng)建私有的、經(jīng)過許可的聯(lián)盟網(wǎng)絡(luò)。
出于安全考量,Hyperledger Besu不支持客戶端的密鑰管理。替代方案是,您可以使用EthSigner或任何與以太坊兼容的錢包來管理私鑰。EthSigner 提供了對您的密鑰存儲的訪問,并通過Hashicorp Vault和Microsoft Azure等工具對交易進行簽名。
在Besu中,可以使用基于智能合約和本地配置的節(jié)點和帳戶許可。在客戶端中可以使用零知識方法(包括Aztec協(xié)議的使用)進行私下交易。鏈下方法需要使用Orion,它是一個開源的私下交易管理器,由PegaSys單獨開發(fā)。
在更高層次上,Hyperledger Besu的架構(gòu)如下:
誰參與了Hyperledger Besu?
PegaSys, 是ConsenSys的協(xié)議工程團隊,自從2018年11月啟動Pantheon項目以來,已經(jīng)成為Hyperledger Besu核心代碼庫的主要的貢獻者和維護者。他們建立這個以太坊客戶端的目的是降低企業(yè)的進入壁壘,維護和擴展主網(wǎng)。他們已經(jīng)開發(fā)了一個在代碼庫上使用和構(gòu)建方面的活躍社區(qū)。此外,在Besu之上還有多個應(yīng)用程序,以及在生產(chǎn)中使用Besu的聯(lián)合企業(yè)。PegaSys團隊很高興能與超級賬本社區(qū)合作,繼續(xù)加強Hyperledger Besu平臺。
來源: Hyperledger超級賬本
評論
查看更多