從零開始,5分鐘創建並玩轉屬於自己的區塊鏈(圖文攻略)

分類:IT技術 時間:2016-10-11

聲明 : 此文檔只做學習交流使用,請勿用作其他商業用途
author : 朝陽_tony
E-mail : linzhaolover@163.com
Create Date: 2016-7-18 10:31:15 Monday
Last Change: 2016-7-18 11:31:22 Monday
轉載請註明出處:http://blog.csdn.net/linzhaolover

前言

區塊鏈今年發展真是飛快!從最初一個陌生的概念,到如今已經在各個行業起步,星星之火大有燎原之勢。真希望能擁有自己的區塊鏈練練手O(∩_∩)O~!可是一個人、一臺電腦,怎麽才能搭起來區塊鏈環境……火到不行的區塊鏈,想說愛你不容易!

Don’t Worry! 小編已經沈迷於區塊鏈和智能合約不可自拔!現在就手把手帶你從零開始,5分鐘玩轉屬於自己的區塊鏈!

ADVERTISEMENT

IBM中國研究院開發的超能雲(SuperVessel)平臺提供了給區塊鏈愛好者、開發者的區塊鏈開發測試環境。通過該平臺,用戶能夠免費、超快速創建基於Hyperledger Fabric的多節點區塊鏈、並在自己的鏈上花式玩轉智能合約。


準備工作

只需要你的本地瀏覽器即可!

註冊一個賬號

訪問超能雲(SuperVessel)區塊鏈服務的公測地址http://crl.ptopenlab.com:8800/bc

點擊右上角Log in(登錄)按鈕,在彈出的窗口中點擊Register(註冊),填寫郵箱和密碼後提交。此時建議去郵箱查看激活郵件,並激活自己的賬號(小編提示:懶的激活也沒關系,只是某些高級服務必須激活後才能使用哦)。
這裏寫圖片描述

快速創建自己的區塊鏈

註冊完成後,回到主頁,點擊偌大的GIVE ME A BLOCKCHAIN(給我一個區塊鏈!)按鈕。在彈出框中選擇你想要的Consensus Plugin(共識插件)和Size(區塊鏈網絡節點數量)。

ADVERTISEMENT

小編備註:目前可選Hyperledger Fabric官方提供的兩種共識插件:noops和pbft**。
這裏寫圖片描述

點擊Submit(提交)後,幾秒後就能得到自己的區塊鏈,並自動進入監控面板。沒錯,拿到一個屬於自己的區塊鏈就是這麽簡單!
這裏寫圖片描述

進入監控面板後可以看到,左側是智能合約管理面板,包括對智能合約的管理和部署;右側是網絡面板,展示申請到的區塊鏈網絡情況,拓撲、節點之間的延遲信息等一目了然;點擊右上角的望遠鏡圖標,則可以實時監控各節點的日誌信息。最下方是區塊鏈面板,展示當前區塊鏈的整體情況,初始狀態下只有一個區塊。

部署和使用智能合約

接下來,小編教你如何在自己的區塊鏈上部署和使用智能合約。
在智能合約管理面板的Smart Contracts(智能合約)標簽下列出了2個智能合約作為示例,分別為map和chaincode_example02。其中map合約可以實現鍵值對(key-value)的存儲,chaincode_example02合約可以模擬兩個人的轉賬和查詢。

ADVERTISEMENT

小編備註:這2個示例合約的代碼可在Hyperledger Fabric源碼中找到(https://github.com/hyperledger/fabric/tree/master/examples/chaincode/go)。
這裏寫圖片描述
以部署和使用chaincode_example02合約為例:

部署合約

點擊chaincode_example02合約對應的Deploy(部署)按鈕,並填寫合約的初始化值,包括合約名、初始函數、初始參數。該合約初始函數為init,初始參數需按格式填寫,如[“a”,”100”,”b”,”200”]表示註冊兩個人a和b,分別給他們100單位和200單位。
這裏寫圖片描述
點擊Deploy按鈕,該合約將部署在你的區塊鏈中,該過程大約需要20~40秒時間。當區塊鏈面板出現一個新區塊,通常表示合約已部署完成。
這裏寫圖片描述

ADVERTISEMENT

調用合約

部署完成後,在智能合約管理面板的My Deployment(我的部署)標簽下查看已部署的合約實例。
這裏寫圖片描述
點擊Action下方的Invoke按鈕調用智能合約,並填寫調用的方法名和相應參數(不同合約的方法名和參數含義不同,具體與合約內容相關哦)。如對該合約,調用invoke方法名,填寫參數[“a”,”b”,”50”],表示a給b轉50個單位。
這裏寫圖片描述
點擊Submit完成調用後,可以查看區塊鏈情況,此時會生成新的區塊。
這裏寫圖片描述

查詢合約

調用完成後,接下來你可以查詢合約執行結果。仍然在My Deployment標簽下,點擊Action下方的Query按鈕查詢智能合約,並填寫查詢的方法名和相應參數。如選擇query方法名,填寫參數[“a”],表示查詢a的當前單位。
這裏寫圖片描述
點擊Submit後可以看到a的當前單位為50。你可以再去查詢b試試看!
這裏寫圖片描述
OK,接下來你可以繼續操作該合約,觀察區塊鏈情況,或者在該區塊鏈上再部署一個新智能合約,比如map。為了方便使用,部署、調用和查詢合約的方法名和參數格式都默認填好了,你只需選擇一個方法名,照貓畫虎改改參數就好!看看你能把鏈玩到多長~

上傳並測試自己的私有智能合約

除了目前提供的兩個公有智能合約,你還可以上傳並測試自己的私有合約!私有合約只有自己能看到。
在Smart Contracts標簽下點擊Import private smart contract。
這裏寫圖片描述
填寫合約名和描述,並上傳合約代碼文件後,點擊Import,完成上傳。
這裏寫圖片描述
之後Smart Contracts列表裏便出現我上傳的合約,可以像前文一樣進行部署、調用和查詢了。
這裏寫圖片描述

感興趣的開發者不妨去學習一下Hyperledger Fabric源碼中的合約示例(https://github.com/hyperledger/fabric/tree/master/examples/chaincode/go),動手編寫並在平臺上測試自己的第一個智能合約吧!

今天的教程就到這裏,歡迎大家參與公測,並在微信公眾號後臺或者向我們的郵箱help@ptopenlab.com發送反饋意見!


Tags: 瀏覽器 臺電腦 愛好者 開發者 研究院

文章來源: