Hyperledger Fabric 2.0 Alpha發(fā)布

Hyperledger?Fabric?2.0?Alpha發(fā)布了!

隨著近期Fabric?v1.4.1?LTS的發(fā)布,F(xiàn)abric項目目前工作的重點正在向1.4.1和2.0的正式版推進(jìn)。v2.0.0是2019年的主要目標(biāo),重點集中在更多的新特性上,包括增強的鏈碼生命周期管理,raft共識機制,以此來循序漸進(jìn)地遷移至拜占庭容錯算法,以及更強大的token支持。近期發(fā)布的2.0版本建議大家僅作為嘗鮮之用,生產(chǎn)環(huán)境暫時不要考慮。

Fabric chaincode lifecycle

Fabric?2.0?Alpha介紹了分布式治理鏈碼的特性,包括在你的節(jié)點上安裝鏈碼以及在一個通道中啟動鏈碼的新流程。新的Fabric生命周期允許多組織對鏈碼的參數(shù)達(dá)成共識,例如鏈碼在開始和賬本進(jìn)行交互前的背書策略。新的模型在之前的生命周期上進(jìn)行了改進(jìn):

多個組織必須同意鏈碼的參數(shù):在Fabric?1.x版本中,一個組織能夠為所有其他通道成員設(shè)置鏈碼參數(shù)(例如背書策略)。新的Fabric鏈碼生命周期將變得更靈活,提供了中心化的信任模型(例如之前版本的生命周期模型)以及去中心化的要求足夠多的組織同意才能生效的模型。

更安全的鏈碼升級過程:在之前的鏈碼生命周期中,升級鏈碼可以由單個組織進(jìn)行發(fā)布,從而尚未安裝新鏈碼的通道成員將可能產(chǎn)生風(fēng)險。新的模型要求只有足夠數(shù)量的組織批準(zhǔn)后才能允許升級鏈碼。

更輕松的背書策略升級:Fabric生命周期允許你在沒有重新打包或者安裝鏈碼的情況下,變更背書策略。用戶可以體驗到默認(rèn)的要求通道內(nèi)大多數(shù)成員同意的策略的好處。這個策略會在通道添加或者移除組織的時候自動更新。

可檢查的鏈碼包:Fabric生命周期將鏈碼以易于閱讀的tar文件的形式打包。這樣可以更加輕松地檢查鏈碼代碼包并協(xié)調(diào)跨多個組織安裝。

使用同一個安裝包啟動多個鏈碼:在之前的生命周期管理中一個通道上的鏈碼可以使用名字和版本來指定一個安裝的鏈碼。在現(xiàn)在的版本中你可以使用一個鏈碼安裝包在同一個通道或者不同的通道使用不同的名字進(jìn)行多次部署。

使用新的鏈碼生命周期

可以使用下列教程來開始使用新的鏈碼生命周期:

Chaindoce?for?Operators:提供了安裝和定義鏈碼所需步驟的詳細(xì)概述,以及新模型可用的功能。

Building?Your?First?Network:如果你想立即開始使用新的生命周期,BYFN教程已經(jīng)更新為使用新的鏈碼生命周期來安裝和定義鏈碼了。

Using?Private?Data?in?Fabric:已經(jīng)更新演示如何通過新的鏈碼生命周期來使用隱私數(shù)據(jù)集合。

Endorsement?policies:了解使用新的鏈碼生命周期如何使用通道配置中的策略作為背書策略。

限制

Fabric?v2.0?Alpha版本中鏈碼生命周期尚未完成。具體來說,請注意Alpha版本中的以下限制:

尚不支持CouchDB索引

使用新生命周期定義的鏈碼還不能通過服務(wù)發(fā)現(xiàn)來發(fā)現(xiàn)

這些限制在后期將被解決。

FabToken

Fabric?2.0?Alpha還為用戶提供了在Fabric通道上輕松將資產(chǎn)轉(zhuǎn)化為token的功能。FabToken是一種token管理系統(tǒng),它使用Unspent?Transaction?Output(UTXO)模型,利用Hyperledger?Fabric提供的身份和成員服務(wù)基礎(chǔ)設(shè)施來發(fā)布傳輸和兌換token。

使用FabToken:這個操作指南提供了有關(guān)如何在Fabric網(wǎng)絡(luò)上使用token的詳細(xì)概述。該指南還包含有如何使用tokenCLI創(chuàng)建和傳輸token的示例。

Alpine images

從v2.0開始,Hyperledger?Fabric?Docker鏡像將會使用Alpine?Linux操作系統(tǒng),一種面向安全的輕量級的Linux發(fā)行版。這意味著Docker鏡像現(xiàn)在將會小很多,提供更快的下載和啟動時間,以及在主機系統(tǒng)上占用更少的磁盤空間。Alpine?Linux的設(shè)計初衷是考慮到安全性,而Alpine的發(fā)行版的極簡主義特性大大降低了安全漏洞的風(fēng)險。

Raft 排序服務(wù)

Raft是v1.4.1中引入的,它是一種基于etcd的崩潰容錯(CFT)排序服務(wù)。Raft遵循“領(lǐng)導(dǎo)者和追隨者”模型,其中每個通道都會選舉一個leader,而且它的決策會復(fù)制給追隨者。和基于Kafka的排序服務(wù)相比,基于Raft的排序服務(wù)將變得更容易設(shè)置和管理,并且它的設(shè)計允許遍布全球的組織成為分散的排序服務(wù)貢獻(xiàn)節(jié)點。

The?Ordering?Service:描述Fabric中排序服務(wù)的作用以及三種排序服務(wù)實現(xiàn)的概述:Solo、Kafka和Raft。

Configuring?and?operating?a?Raft?ordering?service:展示部署基于Raft的排序服務(wù)時所需注意的配置參數(shù)和注意事項。

Setting?up?an?ordering?node:描述部署排序服務(wù)節(jié)點的過程,與排序服務(wù)的實現(xiàn)無關(guān)。

Building?Your?First?Network:已經(jīng)更新,允許使用基于Raft的排序服務(wù)來構(gòu)建樣本網(wǎng)絡(luò)。

References

[1]Chaindoce?for?Operators:https://hyperledger-fabric.readthedocs.io/en/latest/chaincode4noah.html

[2]Building?Your?First?Network:https://hyperledger-fabric.readthedocs.io/en/latest/build_network.html

[3]Using?Private?Data?in?Fabric:https://hyperledger-fabric.readthedocs.io/en/latest/private_data_tutorial.html

[4]Endorsement?policies:https://hyperledger-fabric.readthedocs.io/en/latest/endorsement-policies.html

[5]使用FabToken:https://hyperledger-fabric.readthedocs.io/en/latest/token/FabToken.html

[6]token:https://hyperledger-fabric.readthedocs.io/en/latest/commands/token.html

[7]Raft:https://raft.github.io/raft.pdf

[8]etcd:https://coreos.com/etcd/

[9]The?Ordering?Service:https://hyperledger-fabric.readthedocs.io/en/latest/orderer/ordering_service.html

[10]Configuring?and?operating?a?Raft?ordering?service:https://hyperledger-fabric.readthedocs.io/en/latest/raft_configuration.html

[11]Setting?up?an?ordering?node:https://hyperledger-fabric.readthedocs.io/en/latest/orderer_deploy.html

[12]Building?Your?First?Network:https://hyperledger-fabric.readthedocs.io/en/latest/build_network.html

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容