从零开始,5分钟创建并玩转属于自己的区块链-图文攻略

简介:

前言

区块链今年发展真是飞快!从最初一个陌生的概念,到如今已经在各个行业起步,星星之火大有燎原之势。真希望能拥有自己的区块链练练手O(∩_∩)O~!可是一个人、一台电脑,怎么才能搭起来区块链环境……火到不行的区块链,想说爱你不容易!

Don’t Worry! 小编已经沉迷于区块链和智能合约不可自拔!现在就手把手带你从零开始,5分钟玩转属于自己的区块链!

IBM中国研究院开发的超能云(SuperVessel)平台提供了给区块链爱好者、开发者的区块链开发测试环境。通过该平台,用户能够免费、超快速创建基于Hyperledger Fabric的多节点区块链、并在自己的链上花式玩转智能合约。


准备工作

只需要你的本地浏览器即可!

注册一个账号

访问超能云(SuperVessel)区块链服务的公测地址http://crl.ptopenlab.com:8800/bc

点击右上角Log in(登录)按钮,在弹出的窗口中点击Register(注册),填写邮箱和密码后提交。此时建议去邮箱查看激活邮件,并激活自己的账号(小编提示:懒的激活也没关系,只是某些高级服务必须激活后才能使用哦)。
r84uIThB1bAAAAAElFTkSuQmCC

快速创建自己的区块链

注册完成后,回到主页,点击偌大的GIVE ME A BLOCKCHAIN(给我一个区块链!)按钮。在弹出框中选择你想要的Consensus Plugin(共识插件)和Size(区块链网络节点数量)。

小编备注:目前可选Hyperledger Fabric官方提供的两种共识插件:noops和pbft**。
4IKMtX8Bi1RAAAAAElFTkSuQmCC

点击Submit(提交)后,几秒后就能得到自己的区块链,并自动进入监控面板。没错,拿到一个属于自己的区块链就是这么简单!
0WxrkVI1WLcAAAAASUVORK5CYII=

进入监控面板后可以看到,左侧是智能合约管理面板,包括对智能合约的管理和部署;右侧是网络面板,展示申请到的区块链网络情况,拓扑、节点之间的延迟信息等一目了然;点击右上角的望远镜图标,则可以实时监控各节点的日志信息。最下方是区块链面板,展示当前区块链的整体情况,初始状态下只有一个区块。

部署和使用智能合约

接下来,小编教你如何在自己的区块链上部署和使用智能合约。
在智能合约管理面板的Smart Contracts(智能合约)标签下列出了2个智能合约作为示例,分别为map和chaincode_example02。其中map合约可以实现键值对(key-value)的存储,chaincode_example02合约可以模拟两个人的转账和查询。

小编备注:这2个示例合约的代码可在Hyperledger Fabric源码中找到(https://github.com/hyperledger/fabric/tree/master/examples/chaincode/go)。
w9pIjiU88qsfgAAAABJRU5ErkJggg==
以部署和使用chaincode_example02合约为例:

部署合约

点击chaincode_example02合约对应的Deploy(部署)按钮,并填写合约的初始化值,包括合约名、初始函数、初始参数。该合约初始函数为init,初始参数需按格式填写,如[“a”,”100”,”b”,”200”]表示注册两个人a和b,分别给他们100单位和200单位。
0OW68uZ+0SAAAAAASUVORK5CYII=
点击Deploy按钮,该合约将部署在你的区块链中,该过程大约需要20~40秒时间。当区块链面板出现一个新区块,通常表示合约已部署完成。
A5H1EmX7AF3nAAAAAElFTkSuQmCC

调用合约

部署完成后,在智能合约管理面板的My Deployment(我的部署)标签下查看已部署的合约实例。
W638nKwlCgOV8SBACAPyPIARYjs96AQAARAlCAAC
点击Action下方的Invoke按钮调用智能合约,并填写调用的方法名和相应参数(不同合约的方法名和参数含义不同,具体与合约内容相关哦)。如对该合约,调用invoke方法名,填写参数[“a”,”b”,”50”],表示a给b转50个单位。
2clDQAAIESkAQAAhIg0AACAjGH4DXSjfUdmcNrtA
点击Submit完成调用后,可以查看区块链情况,此时会生成新的区块。
w+jxvAS9FX+yQAAAABJRU5ErkJggg==

查询合约

调用完成后,接下来你可以查询合约执行结果。仍然在My Deployment标签下,点击Action下方的Query按钮查询智能合约,并填写查询的方法名和相应参数。如选择query方法名,填写参数[“a”],表示查询a的当前单位。
88VPAAAgAiBBwAAECHwAAAAIgQeAABAwjD8BqANM
点击Submit后可以看到a的当前单位为50。你可以再去查询b试试看!
ok9B3tQL7XAAAAAElFTkSuQmCC
OK,接下来你可以继续操作该合约,观察区块链情况,或者在该区块链上再部署一个新智能合约,比如map。为了方便使用,部署、调用和查询合约的方法名和参数格式都默认填好了,你只需选择一个方法名,照猫画虎改改参数就好!看看你能把链玩到多长~

上传并测试自己的私有智能合约

除了目前提供的两个公有智能合约,你还可以上传并测试自己的私有合约!私有合约只有自己能看到。
在Smart Contracts标签下点击Import private smart contract。
wcKhx1HPZuhmQAAAABJRU5ErkJggg==
填写合约名和描述,并上传合约代码文件后,点击Import,完成上传。
QBAHAjyefzisfjJuhl5PZ45fF6q2MAANcLlwlq55
之后Smart Contracts列表里便出现我上传的合约,可以像前文一样进行部署、调用和查询了。
H6jscrBu9e9tAAAAAElFTkSuQmCC

感兴趣的开发者不妨去学习一下Hyperledger Fabric源码中的合约示例(https://github.com/hyperledger/fabric/tree/master/examples/chaincode/go),动手编写并在平台上测试自己的第一个智能合约吧!



原文发布时间为:2018年02月22日
本文作者:macair123
本文来源:CSDN,如需转载请联系原作者。

目录
相关文章
|
2月前
|
存储 运维 安全
隐语第二期学习内容随笔
数据要素在采集、存储等环节内外循环,数据持有方需确保内外循环中的数据安全与管控。信任焦虑源于数据权属等问题,依赖技术信任解决。隐私计算原则与开源隐语技术保障隐私安全。数据资产化驱动价值释放,技术信任促进流通,强调数据安全、隐私和信任的核心地位。
20 0
|
2月前
|
存储 监控 安全
隐语第一期学习内容随笔
构建基于技术信任的数据可信流通体系,确保数据传输、处理、存储安全可控,防范持有权风险和越权使用导致的数据泄露、篡改。密态数据和密态天空计算强化数据安全,实现跨云互联。内外循环管理数据安全域,全程保障涉及身份确认、利益对齐等环节,依赖先进加密和跨域管控技术。
20 0
|
12月前
|
移动开发 前端开发 数据可视化
《Bakery 产品演示平台的探索与实践-念响》演讲视频 + 文字版
《Bakery 产品演示平台的探索与实践-念响》演讲视频 + 文字版
177 0
|
存储 缓存 人工智能
云架构师进阶攻略(完整版)-1
云架构师进阶攻略(完整版)
252 0
云架构师进阶攻略(完整版)-1
|
分布式计算 资源调度 搜索推荐
云架构师进阶攻略(完整版)-5
云架构师进阶攻略(完整版)
|
缓存 监控 Kubernetes
云架构师进阶攻略(完整版)-6
云架构师进阶攻略(完整版)
131 0
|
存储 运维 Kubernetes
云架构师进阶攻略(完整版)-4
云架构师进阶攻略(完整版)
152 0
|
网络协议 架构师 Linux
云架构师进阶攻略(完整版)-3
云架构师进阶攻略(完整版)
146 0
|
运维 架构师 网络协议
云架构师进阶攻略(完整版)-2
云架构师进阶攻略(完整版)
103 0
云架构师进阶攻略(完整版)-2
从零开始,搭建一个简单的购物平台(十一)
从零开始,搭建一个简单的购物平台(十一)
196 0
从零开始,搭建一个简单的购物平台(十一)