1. 程式人生 > >Linux基金會超級記賬本開發框架和工具

Linux基金會超級記賬本開發框架和工具

Linux基金會的Hyperledger超級記賬本是一個開源合作的跨行業的區塊鏈技術,包括金融,銀行,物聯網,工廠,科技等行業的領軍者如IBM, Intel, Huawei, Baidu, Tencent, CISCO, Xiaomi等大小公司都是其組織會員。

官網有不少的區塊鏈框架和工具,如果第一次接觸不好選擇,讓我們快速的過一遍。

1.區塊鏈開發框架

1.1 Hyperledger Burrow

狀態

Github Star

開發語言

活躍度

文件

孵化中

520

Go

較高

一般

Burrow是初創公司monax.io捐獻,Intel贊助的之智慧合同應用引擎。部署為Ethereum 以太坊的智慧合同節點,可以執行Permissioned EVM虛擬機器上的智慧合同。智慧合同使用Solidity編寫,可提供交易的最終性, 使用PoS(Proof of Stake)的Tendermint共識引擎實現高的吞吐量。也提供了API閘道器, 暴露為REST和JSON-RPC服務,感覺小巧且便於與其它系統整合。

如果涉及到以太坊的定製開發,Burrow應該是個選擇。

1.2 Hyperledger Fabric

狀態

Github Star

開發語言

活躍度

文件

可用

6726

Go

較高

較好

Fabric是一個分散式的記賬本平臺,旨在提供元件可插拔,可伸縮和易於擴充套件的設計架構。Fabric應該當今商用度,成熟度最高的區塊鏈解決方案之一,國內很多公司都是基於Fabric定製自己的區塊鏈業務平臺,更多資訊可關注筆者公眾號。

1.3 Hyperledger Indy

狀態

Github Star

開發語言

活躍度

文件

孵化中

252

Python

較高

一般

Indy是分散式記賬本,應該是Sovrin基金會捐獻,旨在提供去中心化的身份憑證服務,使用區塊鏈技術加密和交換身份憑證,保障安全。

具體的場景請參考白皮書https://sovrin.org/wp-content/uploads/2018/03/Sovrin-Protocol-and-Token-White-Paper.pdf

更多可能作為一個元件和現實系統整合。

1.4 Hyperledger Iroha

狀態

Github Star

開發語言

活躍度

文件

可用

923

C++

一般

較好

Iroha是C++實現的區塊鏈平臺,實現Yet Anothe BFT共識演算法,和排序服務。

許可權設計基於角色或授權許可權,區塊使用檔案儲存,狀態使用PostgreSQL資料庫儲存。

Iroha是 Soramitsu, Hitachi, NTT Data 和Colu公司捐獻的。

估計推廣一般,不過畢竟是可用,是C++實現的區塊鏈的一個選擇。

1.5 Hyperledger Sawtooth

狀態

Github Star

開發語言

活躍度

文件

可用

1001

Rust

較高

較好

Sawtooth是一個企業級的分散式記賬本,應該是Intel捐獻的, 一些特色是:

  1. 應用和核心繫統的隔離,Sawtooth提供了智慧合同的抽象,應用的開發者選擇各自語言開發合同的邏輯。
  2. 支援私有網路,叢集種的節點可以單獨配置採訪權限。
  3. 並行執行交易,Sawtooth有個排程器把交易分割為並行的流程,隔離開每個交易的執行。
  4. 訊息訂閱
  5. Seth子專案相容乙太網智慧合同
  6. 可插拔的共識演算法

當前主要支援Proof of Elapsed Time (PoET)時間消失證明,它依賴於安全可信任的軟硬體環境(Intel的自身的CPU應該是沒問題),應該就是使用安全的CPU指令保證leader的安全和隨機,優於那些PoW等proof演算法的能量損耗。

還支援Raft等共識演算法。

  1. Sawtooth的資料模型和交易語言使用不同的Transaction Family實現, 即可實現擴充套件,例如子系統的Sabre Transaction Family是支援WebAssembly virtual machine上執行的智慧合同, Supply Chain Transaction Family是支援用於跟蹤商品。

Sawtooth是一個完整的企業級區塊鏈平臺,熱度第二的框架,也是值得研究的。順路說下Rust, 除了火狐瀏覽器沒想到又添多案例,對rust有期待,不過筆者是給Rust的borrow checker打敗了。

2. 開發工具

2.1 Hyperledger Caliper

孵化中,用於測試區塊鏈的效能,指標例如TPS, 傳輸延時,資源使用率等,華為捐獻的。客觀的說華為的BCS平臺是可以的,做了很多自動化運維,部署的工具。

2.2 Hyperledger Cello

孵化中,定位於Fabric區塊鏈網路的自動化運維平臺,例如建立,編輯,刪除主機,區塊鏈網路,部署鏈碼,查詢呼叫鏈碼等功能。 不過筆者需要吐槽下,可能Fabric版本迭代快,實際上Cello還類似個beta版跟不上,一堆的bug,沒有完整的BAAS平臺,指令碼維護靠譜些。

不過Cello定位很重要,Fabric部署是有些麻煩,自動化運維平臺對於Fabric推廣和維護必不可少。

2.3 Hyperledger Composer

孵化中,鏈碼開發基礎提到過的另外一種開發模式,IBM主導,推薦Mac和Ubuntu執行,類似solidity, 用javascript語法,定義資源,參與者,交易,把鏈碼邏輯可暴露為REST服務, Fabric底層, 實際一些配置還是得繞回Fabric, 開發可能相對方便些,運維的話又要多了composer相關的配置,直接用Fabric可能簡單些。

2.4 Hyperledger Explorer

孵化中,Web系統,用於瀏覽,呼叫,部署或查詢區塊鏈網路的資料,交易,網路,節點等資訊。

2.5 Hyperledger Quilt

Quilt提供Interledger 協議(ILP), 一種支付協議,在分散式對賬本系統和非對賬本系統進行轉錢服務,日本NTT Data公司提供,去中心化的支付協議,可以去研究下。

雖然比特幣出來十年,但是區塊鏈正剛起步,有興趣的同學可以繼續關注我們的公眾號。