【摘要】 Hyperledger cactus是一個(gè)區(qū)塊鏈集成框架,能夠在多個(gè)分布式賬本上執(zhí)行交易,最大的特點(diǎn)是靈活可插拔的架構(gòu),官方定義:SDK of SDKs。Cactus 現(xiàn)在已經(jīng)支持的分布式賬本有Hyperledger Besu、Corda、Corda OS、Hyperledger Fabric、Go-Ethereum、Quorum、Hyperledger Sawtooth等,均通過賬本插件的...
Hyperledger cactus是一個(gè)區(qū)塊鏈集成框架,能夠在多個(gè)分布式賬本上執(zhí)行交易,最大的特點(diǎn)是靈活可插拔的架構(gòu),官方定義:SDK of SDKs。
Cactus?現(xiàn)在已經(jīng)支持的分布式賬本有Hyperledger Besu、Corda、Corda OS、Hyperledger Fabric、Go-Ethereum、Quorum、Hyperledger Sawtooth等,均通過賬本插件的方式實(shí)現(xiàn)。
對(duì)于分布式賬本的操作支持部署賬本、執(zhí)行交易、獲取共識(shí)協(xié)議、判斷是否具有最終性,如下接口定義所示。
所有的分布式賬本接入cactus都需要實(shí)現(xiàn)此接口

插件化的架構(gòu)如下圖所示:

左下角的business logic plugin是業(yè)務(wù)邏輯插件,用于實(shí)現(xiàn)具體的業(yè)務(wù)邏輯,由web服務(wù)或者智能合約來實(shí)現(xiàn),比如供應(yīng)鏈溯源、時(shí)間哈希鎖轉(zhuǎn)移資產(chǎn)等等。
右下角的validator是具體連接分布式賬本的模塊,包括對(duì)上文的IPluginLedgerConnector的實(shí)現(xiàn),一方面,validator用于執(zhí)行對(duì)區(qū)塊鏈的操作,另一方面,validator也會(huì)開啟一個(gè)monitor,監(jiān)聽區(qū)塊鏈的事件和區(qū)塊,用于驗(yàn)證交易是否成功。為了避免validator作惡,cactus現(xiàn)有的安全機(jī)制也有對(duì)應(yīng)的預(yù)防措施,比如validator是可以被關(guān)閉的,一旦發(fā)現(xiàn)validator作惡,可以在不改變部署架構(gòu)的情況下關(guān)閉某些validator,以及對(duì)于同一條區(qū)塊鏈,可以部署多個(gè)validator由多個(gè)參與方共同構(gòu)建,降低被攻擊的風(fēng)險(xiǎn)。