文章閱讀頁通欄

KBaaS:金山云發布的區塊鏈云服務平臺產品

來源: 金山云 作者:
KBaaS(Kingsoft Blockchain as a Service)是金山云發布的一款區塊鏈云服務平臺產品,旨在幫助開發者快速構建區塊鏈基礎設施,提供區塊鏈應用開發、部署、測試......
KBaaS(Kingsoft Blockchain as a Service)是金山云發布的一款區塊鏈云服務平臺產品,旨在幫助開發者快速構建區塊鏈基礎設施,提供區塊鏈應用開發、部署、測試和監控的整套解決方案。

KBaaS堅持技術研發與自主創新,支持各類主流的聯盟鏈、公有鏈開發環境,包括Hyperledger Fabric、Zig-Ledger、Ethereum等,并將陸續支持EOS等底層區塊鏈開發環境。KBaaS為開發者提供了簡單易用的開發工具,開發者可以在可視化的操作界面下完成區塊鏈的構建與操作,極大地降低了開發門檻,提高了開發效率。

產品功能

產品優勢

開放共贏
秉承開放共贏的設計原則,KBaaS支持各類主流的聯盟鏈、公有鏈開發環境,包括Hyperledger Fabric、Zig-Ledger、Ethereum,并將陸續支持EOS等。

簡單易用
KBaaS以開發者需求為導向,支持區塊鏈產品的免費試用,并提供簡單易用的開發者工具與服務,開發者可以在可視化的操作界面下完成區塊鏈的構建與操作,極大地降低了開發門檻,提高了開發效率。

自主創新
KBaaS堅持技術研發與自主創新,提供基于Hyperledger Fabric 1.x自主研發的Zig-Ledger企業級聯盟鏈服務,并持續研究共識算法、密碼學算法、跨鏈交互、去中心化存儲等前沿技術,為開發者提供最先進的技術服務。

成熟可靠
KBaaS構建于Kubernetes、Docker之上,自身具備極高的可靠性和擴展性,為開發者提供成熟可靠的企業級區塊鏈基礎設施服務。

操作指南

Zig-Ledger

Zig-Ledger是基于Hyperledger Fabric 1.0基礎之上自主研發的商用級聯盟鏈底層及配套工具集。包括區塊鏈底層系統、SDK、瀏覽器、運維平臺等產品,在資產登記和流轉,共識機制,隱私保護,行為監管,跨鏈交互等方面做出許多重要改進,使之可覆蓋更豐富的企業或消費者場景。

Zig-Ledger的主要特點包括:

· 企業級分布式賬本:基于Hyperledger Fabric 1.0 標準自主研發的商用級聯盟鏈底層,適用于大規模企業級應用。
· 高性能:解耦復雜處理環節,消除計算處理瓶頸,實現商用級TPS,滿足企業長遠發展。
· 靈活的權限管理:身份證書管理,支持多通道特性,提高數據安全性,為企業級應用提供底層權限管理能力。
· 可擴展的系統架構:遵循插件化設計風格,支持可插拔、可擴展的模塊配置,包括共識、權限、加解密、手續費等。
· 去中心化賬戶:新增去中心化的自主匿名賬戶模塊,滿足大規模消費者場景下與區塊鏈交互的需求。
· 資產登記與流轉:新增數值通證、權限通證等模塊,新增Transfer Set記賬模型,為聯盟鏈環境中數字資產的登記和高并發流轉提供底層支持。

目前金山云KBaaS服務為客戶提供了"免費試用版"

免費試用版適用于區塊鏈應用前期開發與調試驗證 相關資源資源將在部署后168小時自動釋放,請勿將生產環境業務部署在"免費試用版"。

Zig -Ledg er環境構建-免費試用版

Zig-Ledger是基于Hyperledger Fabric 1.0基礎之上自主研發的商用級聯盟鏈底層,及配套工具集。包括區塊鏈底層系統、智能合約、SDK、瀏覽器、運維平臺等產品,在共識機制、可擴展性、資產登記和流轉、權限管理和隱私保護、跨鏈交互等方面做出許多重要改進,使之更適用于大規模企業級應用。

以下為您介紹在KBaaS中搭建Zig-Ledger環境并完成鏈碼操作的步驟:

1、環境構建

登錄金山云KBaaS控制臺,在【我的項目】點擊"添加服務",進入服務創建流程,選擇區塊鏈配置。

舉例:區塊鏈名稱為“test”,共識算法選擇“solo”,類型選擇“高級配置”,點擊完成,創建成功,進入我的項目頁。
提示:試用版區塊鏈將在部署后168小時自動釋放。

2、項目控制臺

創建成功的Zig-Ledger將會在我的項目中以卡片形式顯示,點擊卡片上“進入項目”可進入項目控制臺。

項目控制臺頁面左側導航欄展示了控制臺的功能:區塊鏈瀏覽器、鏈碼管理、API調用、賬戶、通證、日志。

· 區塊鏈瀏覽器:展示區塊鏈賬本基本信息,包括區塊信息、交易信息、合約數量等;
· 鏈碼管理:查看區塊鏈鏈碼信息,執行鏈碼(智能合約)的安裝、實例化等操作;
· API調用:提供Restful API,支持可視化調用并查看調用結果;
· 賬戶:提供賬戶管理工具,支持賬戶的創建、刪除、查看資產和資產轉賬等功能;
· 通證:區塊鏈通證資產查看,支持自定義通證發行;
· 日志:實時查看區塊鏈各節點日志。

3、賬戶與通證

Zig-Ledger在Hyperledger Fabric基礎上新增了賬戶和通證的功能。 為了便于用戶操作和理解,Zig-Ledger區塊鏈在初始化階段會默認創建1個賬戶并給這個賬戶發行1000億個ZIG Token。 ZIG Token是Zig-Ledger的原生Token,賬戶發起交易時需耗一定比例的ZIG Token作為手續費。

3.1、添加賬戶

進入“賬戶”模塊,可以看到當前創建的全部賬戶,包括初始化生成的默認賬戶,記為賬戶1。 點擊“添加賬戶”按鈕新增一個賬戶,此時頁面會有2個賬戶,新增的賬戶記為賬戶2。后文將針對賬戶1和賬戶2進行操作。

3.2、發行通證

進入“通證”模塊,可以看到當前發行的全部通證信息,包括初始化生成的原生通證ZIG。 點擊“發行通證”,輸入通證名稱、個數、小數點個數,發行賬戶等信息。 舉例,名稱:AToken;通證個數:100000000;小數點個數:3;賬戶:賬戶1。(以上數據代表實際發行通證數量為100000.000)


通證發行成功后進入“賬戶”模塊,選擇賬戶1點擊“資產”查看當前賬戶地址下所有通證名稱及數量。可以發現賬戶1已經擁有ZIG和AToken兩種通證資產。

3.3、賬戶間通證轉賬

在賬戶1的通證資產頁面,點擊ZIG通證的“轉賬”,輸入通證個數和轉賬地址。舉例,通證個數:5000.00;轉賬地址:賬戶2。 點擊“確定”后稍等一段時間,轉賬交易被確認。同理,可將AToken進行轉賬操作,通證個數:5000.000;轉賬地址:賬戶2。 此時可在賬戶2的資產頁面,查看其資產數額變化信息。

目前,賬戶2已擁有ZIG和AToken兩種資產,在后文將繼續介紹賬戶2如何使用者兩種資產。

4、示例鏈碼演示

4. 1、鏈碼部署

“鏈碼管理”模塊展示了該區塊鏈上已安裝或已部署的鏈碼,用戶可以在該模塊中為區塊鏈安裝部署新的鏈碼。 在“鏈碼管理”模塊中點擊加號執行鏈碼安裝,在“合約中心”中選擇“資產掛單交易/asset”示例合約進行安裝。 “資產掛單交易/asset”示例合約支持注冊新用戶,用戶可以將資產以Token形式定價掛單,其他用戶可以通過指定Token進行資產購買。

安裝成功后,在“鏈碼管理”頁面會顯示該示例鏈碼。點擊“部署”執行鏈碼實例化,無需填寫參數,點擊提交,等待一段時間后,部署成功。

4.2、鏈碼調用

鏈碼部署成功后,進入“API調用”頁面,對剛部署成功的示例鏈碼進行API調用。 API調用界面展示了所提供的多種API,包括獲取鏈信息、獲取區塊信息、獲取交易信息、鏈碼調用、賬戶和通證操作等等。鏈碼的調用方式包括Invoke和Query,分別對應“Invoke Chaincode”和“Query Chaincode”這兩個API。用戶可點擊進入,填寫相關參數,執行調用并查看反饋結果。

需要注意的是:在Zig-Ledger中通過Invoke方式調用合約時需要指定賬戶,每次進行Invoke操作時需要從ZIG賬戶中扣除一定額度的手續費,費用以當前已經發送的交易字節數來確定。以下繼續介紹“資產轉移合約”的示例操作步驟: 1) 添加用戶U1、用戶U2 創建U1,在“Invoke Chaincode”API中,填寫鏈碼名稱“asset”,鏈碼版本“1.0”,鏈碼函數“addUser”,參數“U1”“15”,調用賬戶“賬戶1”,執行調用,獲得如下結果:

返回了交易TxHash,代表交易成功。 同理,繼續創建用戶U2,填寫鏈碼名稱“asset”,鏈碼版本“1.0”,鏈碼函數“addUser”,參數“U2”“20”,調用賬戶“賬戶2”,執行調用,完成創建。

2)查詢用戶信息 在“Query Chaincode”API中,填寫鏈碼名稱“asset”,鏈碼版本“1.0”,鏈碼函數“queryUser”,參數“U1”,執行查詢,獲得如下結果:

返回了U1用戶的信息,說明U1成功創建。 同理,在“Query Chaincode”API中,填寫鏈碼名稱“asset”,鏈碼版本“1.0”,鏈碼函數“queryUser”,參數“U2”,執行查詢,返回U2信息,U2成功創建。

3)添加資產-BO O K1 現在我們為U1添加1個掛單資產,該資產設定為一本書,名叫BOOK1,類型是BOOK,描述是Aguidebook,并定價2.00單位的AToken。 在“Invoke Chaincode”API中,填寫鏈碼名稱“asset”,鏈碼版本“1.0”,鏈碼函數“addAsset”,參數“BOOK1”“BOOK”“A guidebook”“AToken”“200”“U1”(參數200包含了小數點,代表2.00個AToken),調用賬戶“賬戶1”,執行調用,獲得如下結果:

返回了交易TxHash,代表交易成功。

4)查詢資產-BO O K1 在“Query Chaincode”API中,填寫鏈碼名稱“asset”,鏈碼版本“1.0”,鏈碼函數“readAsset”,參數“BOOK1”,執行查詢,獲得如下結果:

返回了BOOK1資產的信息,資產成功創建,owner是U1。 同理,也可以使用函數“readAssetByRange”來查詢名稱在A-Z范圍內的所有資產。

5)U2購買資產BO O K1 在“Invoke Chaincode”API中,填寫鏈碼名稱“asset”,鏈碼版本“1.0”,鏈碼函數“buyAsset”,參數“BOOK1”“U2”,調用賬戶“賬戶2”,執行調用,獲得如下結果:

6)查詢資產-BO O K1 在“Query Chaincode”API中,填寫鏈碼名稱“asset”,鏈碼版本“1.0”,鏈碼函數“readAsset”,參數“BOOK1”,執行查詢,獲得如下結果:

可以發現,BOOK1的owner已經變更為U2。

7)查詢賬戶的資產 在“賬戶”模塊中查詢賬戶1和賬戶2的資產信息,發現資產數量發生變化,賬戶2的AToken減少了2個,而賬戶1的AToken增加了2個,驗證之前的交易成功執行。

下表匯總了示例合約的操作流程:

4.3、完成調用

調用完成后,返回“區塊鏈瀏覽器”,發現此時區塊鏈信息已經發生變化,區塊和交易數量有所增加。 點擊可查看剛才調用所產生的區塊和交易詳情。

4.4、Restf u l API調用

開發者可以通過可視化的界面完成調用,也可以通過Restful API進行調用。Zig-Ledger構建服務提供了一系列Restful API用于幫助開發者快速構建區塊鏈應用,開發者在調用前需先獲取Token令牌來獲得調用權限。

5、日志查看

進入“日志”模塊,查看區塊鏈網絡中節點的運行日志。在Zig-Ledger的高級配置中,可以通過下拉菜單選擇查看CA節點、Orderer節點或Peer節點的日志信息。

6、釋放區塊鏈

當不需要此鏈時,進入“我的項目”,選擇該區塊鏈并點擊“立即釋放”。

Hyperiger Fabric

Hyperiger Fabric是一個面向企業的分布式賬本平臺,具有高度的靈活性、模塊化和可擴展性能。Zig-BaaS提供Hyperledger
Fabric網絡的快速構建與按需配置,并為開發者提供區塊瀏覽器、鏈碼管理、API調用、日志查看等功能。

Hyp erledg er Fab ric環境構建

本文主要介紹在KBaaS控制臺中搭建Hyperledger Fabric環境(免費試用版)并完成鏈碼操作的步驟

1、環境構建

登錄金山云KBaaS控制臺,在【我的項目】點擊"添加服務",進入服務創建流程,選擇區塊鏈配置。

舉例:區塊鏈名稱為“test”,共識算法選擇”solo“,類型選擇“基礎配置”,點擊完成,創建成功,進入我的項目頁。
提示:試用版區塊鏈將在部署后168小時自動釋放。

2、項目控制臺

創建成功的Hyperledger Fabric將會在我的項目中以卡片形式顯示,點擊卡片上“進入項目”可進入項目控制臺。

項目控制臺頁面左側導航欄展示了控制臺的功能:區塊鏈瀏覽器、鏈碼管理、API調用、日志。

· 區塊鏈瀏覽器:展示區塊鏈賬本基本信息,包括區塊信息、交易信息、合約數量等;
· 鏈碼管理:查看區塊鏈鏈碼信息,執行鏈碼(智能合約)的安裝、實例化等操作;
· API調用:提供Restful API,支持可視化調用并查看調用結果;
· 日志:實時查看區塊鏈各節點日志。

3、示例鏈碼演示

3.1、鏈碼部署

“鏈碼管理”模塊展示了該區塊鏈上已安裝或已部署的鏈碼,用戶可以在該模塊中為區塊鏈安裝部署新的鏈碼。 在“鏈碼管理”中點擊“安裝鏈碼”,在“合約中心”中選擇“資產轉移合約/trans”示例合約進行安裝

安裝成功后,在“鏈碼管理”頁面會顯示該示例鏈碼。點擊“部署”執行鏈碼實例化,部署時需輸入參數:a,10,b,10,點擊提交,等待一段時間后,部署成功。

3.2、鏈碼調用

鏈碼部署成功后,進入“API調用”頁面,對剛部署成功的示例鏈碼進行API調用。 API調用界面展示了所提供的多種API,包括獲取鏈信息、獲取區塊信息、獲取交易信息、鏈碼調用等等。鏈碼的調用方式包括Invoke和Query,分別對應“InvokeChaincode”和“Query Chaincode”這兩個API。用戶可點擊進入,填寫相關參數,執行調用并查看反饋結果。

以下繼續介紹“資產轉移合約”的示例操作步驟:

1)查詢實體a、實體b的資產 在“Query Chaincode”API中,填寫鏈碼名稱“trans”,鏈碼版本“1.0”,鏈碼函數“query”,參數“a”,執行查詢,獲得如下結果:

代表a具有10單位的資產。

同理查詢實體b的資產,填寫鏈碼名稱“trans”,鏈碼版本“1.0”,鏈碼函數“query”,參數“b”,執行查詢。查詢得到實體b具有10單位的資產。 a、b的資產數量與部署時填寫的初始化參數相符。

2)從a向b轉移5個單位的資產 在“Invoke Chaincode”API中,填寫鏈碼名稱“trans”,鏈碼版本“1.0”,鏈碼函數“invoke”,參數“a”“b”“5”,執行查詢,獲得如下結果:

返回了交易TxHash,代表交易成功。

3)查詢實體a、實體b的資產 在“Query Chaincode”API中,填寫鏈碼名稱“trans”,鏈碼版本“1.0”,鏈碼函數“query”,參數“a”,執行查詢,獲得如下結果:

代表a具有5單位的資產,因為在上一步,a向b轉移了5單位的資產。 同理查詢實體b的資產,可以發現實體b擁有15單位的資產,資產轉移成功。

下表匯總了示例合約的操作流程:


3.3、完成調用

調用完成后,返回“區塊鏈瀏覽器”,發現此時區塊鏈信息已經發生變化,區塊和交易數量有所增加。

點擊可查看剛才調用所產生的區塊和交易詳情。

3.4、Restf u l API調用

開發者可以通過可視化的界面完成調用,也可以通過Restful API進行調用。Hyperledger Fabric構建服務提供了一系列Restful API用于幫助開發者快速構建區塊鏈應用,開發者在調用前需先獲取Token令牌來獲得調用權限。Restful API接口詳見“API調用”模塊。具體接口使用方法詳見 技術文檔 - Hyperledger Fabric Restful API文檔。

4、日志查看

進入“日志”模塊,查看區塊鏈網絡中節點的運行日志。在Hyperledger Fabric的基礎配置中,可以通過下拉菜單選擇查看CA節點、Orderer節點或Peer節點的日志信息。

5、釋放區塊鏈

當不需要此鏈時,進入“我的項目”,選擇該區塊鏈并點擊“立即釋放”。


Ethereum

以太坊(Ethereum)是一個基于智能合約的分布式應用平臺。Zig-BaaS提供以太坊測試網絡的快速接入功能,并提供基于Remix的IDE,開發者可以在平臺內上傳智能合約、在線編輯,并完成編譯、部署和調試。

Ethereum測試網絡接入

1、測試網絡接入

登錄金山云KBaaS控制臺,在【我的項目】點擊"添加服務",進入服務創建流程,選擇需要接入的區塊鏈網絡。 其中,Ropsten和Rinkeby是以太坊官方測試網絡,采用不同的共識機制。Kovan是以太坊錢包Parity開發團隊發起的測試網絡項目。

2、項目控制臺

創建成功的Ethereum將會在我的項目中以卡片形式顯示,點擊卡片上“進入項目”可進入項目控制臺。

項目控制臺頁面左側導航欄展示了控制臺的功能:區塊鏈瀏覽器、合約IDE。

· 區塊鏈瀏覽器:展示區塊鏈賬本基本信息,包括區塊信息、交易信息等;
· 合約IDE:基于Remix的智能合約IDE工具,支持合約的在線編輯、編譯、部署和調試等操作。

需注意:本服務提供公共的節點實現以太坊測試網絡的接入,請勿將敏感資料和私人密鑰等信息上傳至該公共節點,也不要使用測試網絡環境搭建生產環境的商業應用。

3、智能合約IDE

Remix是面向Solidity Dapp開發者的智能合約在線IDE,集成了一系列套件工具,可以便捷地實現合約管理、編輯、部署和調試。

KBaaS集成了一套Remix開發工具,并與所創建的測試網絡相連通,開發者可以基于IDE進行合約開發并完成測試網絡的部署和調試。

Remix的更多信息可以參考:https://remix.readthedocs.io/en/latest/

IPFS

IPFS全稱InterPlanetary File System,中文名:星際文件系統,是一個旨在創建持久且分布式存儲和共享文件的網絡傳輸協議。 它是一種內容可尋址的對等超媒體分發協議。在IPFS網絡中的節點將構成一個分布式文件系統。它是一個開放源代碼項目,自2014年開始由Protocol Labs (協議實驗室)在開源社區的幫助下發展。其最初由Juan Benet設計。IPFS是點對點的超媒體協議,可以讓網絡更快、更安全、更開放。它是一個面向全球的、點對點的分布式版本文件系統,試圖將所有具有相同文件系統的計算設備連接在一起。

Zig-BaaS提供了IPFS公共網絡接入,用戶可以通過共享的IPFS網絡節點訪問網絡。請注意:由于IPFS是一個公開的網絡,且Zig-BaaS提供的是共享的IPFS節點,因此,請勿將重要或敏感的文件信息上傳。

IPFS網絡接入

1、網絡接入

登錄金山云KBaaS控制臺,在【我的項目】點擊"添加服務",進入服務創建流程,選擇需要接入的區塊鏈網絡-IPFS網絡接入。

2、項目控制臺

創建成功的IPFS服務將會在我的項目中以卡片形式顯示,點擊卡片上“進入項目”可進入項目控制臺。

項目控制臺頁面左側導航欄展示了控制臺的功能:節點信息、網絡連接、文件上傳、文件檢索。

· 節點信息:IPFS接入節點信息的可視化展示;
· 網絡連接:查看IPFS網絡連接狀態,節點連接數量等信息;
· 文件上傳:將文件通過節點上傳至IPFS網絡;
· 文件檢索:通過節點檢索IPFS網絡中的文件。

3、IPFS應用開發

進行IPFS應用開發,需要對IPFS RESTful API 有一定程度的了解;可以使用IPFS提供的API接口進行應用開發,也可以使用JS-IPFS-API 調用PIFS服務。

IPFS RESTful API 資料:https://ipfs.io/docs/api/
JS-IPFS-API 資料:https://www.npmjs.com/package/ipfs-api

IPFS RESTf ul API 示例:

curl "http://localhost:5001/api/v0/dag/get?arg="

其中localhost需參考節點信息中的節點IP,例如“106.14.182.200”。
JS-IPFS-API 示例:

const ipfsAPI = require('ipfs-api');
const ipfs = ipfsAPI({host: 'localhost', port: '5001', protocol: 'http'});
exports.get = (hash) =>{
return new Promise((resolve,reject)=>{
try{
ipfs.get(hash,function (err,files) {
if (err || typeof files == "undefined") {
reject(err);
}else{
resolve(files[0].content);
}
})
}catch (ex){
reject(ex);
}
});
}



關鍵詞: KBaaS  金山區塊鏈  區塊鏈服務  
0/300
? 好运彩3单双