动手写第一个fabric智能合约

感谢higer给我们上了精彩的一课,带我们入门fabric智能合约。

就像笑来老师说的,学会最少必要知识后,就要马上行动,马上用起来。现在higer已经教把最少必要知识教给了我,不行动说不过去。

说来遗憾,5月26日那天正好发烧,没办法听higer的直播,直到今天才回听。

废话就不多说了,直接上作业吧!

一、登陆IBM Blockchain

网址:https://crl.ptopenlab.com:8800/bc/#home

如果没有账号的话,需要注册1个账号,IBM会发送验证邮件到你的邮箱,在邮箱激活后,点击下图红色方框,即可进入开发界面:


二、正式开发

1、新建一条区块链

点击“Apply a New Chain”,新建一条区块链,共识算法选择为“pbft”

2、新建一个智能合约

选择“chaincode_example02”,点击旁边打勾的标志,即可弹出下图。初始化参数设置好了之后,点击"Deploy"。

这里务必注意,init函数数只能接受4个参数,也就是2个人的名字以及初始“余额”。

3、写账本

第2步部署后,就会弹出以下的界面:

下图显示的正是我们新建区块链时设置的节点数,即4个验证节点。

由于区块创建需要时间,所以现在暂时只有创世区块(区块0)


稍等片刻,部署区块(区块1)就出现了


接下来是higer给zhongxh转账5000,点击右下角的“invoke”,就可以看到下面的界面。

“Function”我们选择"tranfer",在这个场景是转账的意思

“Arguments”表明:higer向zhongxh转账5000

这一次,我们很快就看到invoke区块(区块2),看到invoke区块生成了,我们也就可以查询了


点击右下角的“Query”,就可以看到如下的界面。

“Function”我们选择"query",在这个场景是转账的意思

“Arguments”表明:查询higer的余额


点击“Query”按钮后,就会显示higer的余额


higer账户的余额由10000变成5000,可见钱已经从higer的账户里面转出

那我们现在还不是很放心,钱到了zhongxh的账户了吗?

那我们查查zhongxh账户的余额吧!


和上面查询higer的账户余额一模一样,只是“Argument”换成了["zhongxh"]而已
zhongxh账户的余额由500变成5500,可见higer账户转出的钱已经到账

到这里,higer向zhongxh转账成功了。

那我们接下来可能会问:新建智能合约的时候只能init两个账户,如果我还想要init更多的账户怎么办?

答案是多deploy几个智能合约。

点击下图右下角的“Deploy”,即可新建智能合约。

“Smart Contract”我们仍然选择"chaincode_example02"

“Instance Name”为"instance2"

"Arguments"为"["Alice","10000","Bob","50000"]",表明Alice账户拥有10000,Bob的账户拥有5000

请注意,这里的Arguments不能再出现"higer"和“zhongxh”,否则会与instance1冲突

新建智能合约后,就会有Deploy区块(区块3)产生


现在我们可以查询Alice和Bob的账户余额:


Bob的账户余额是50000,表明初始化成功



Alice的账户余额是10000,表明初始化成功

假设Alice在Bob的咖啡厅买了一杯咖啡,支付了500


Alice向Bob转了500



一个新的invoke的区块(区块4)产生了
查询Alice账户的余额
Alice账户的余额由原来的10000变成9500,表明钱已经转出去了
查询Bob账户的余额
Bob账户的余额由原来的50000变成5000,表明钱已经收到了


从上面的图,可以得知,Alice支付给Bob的咖啡钱已经到账。

本次作业到此结束,写得不好的地方,请不吝指教,谢谢!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 158,425评论 4 361
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,058评论 1 291
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,186评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,848评论 0 204
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,249评论 3 286
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,554评论 1 216
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,830评论 2 312
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,536评论 0 197
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,239评论 1 241
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,505评论 2 244
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,004评论 1 258
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,346评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 32,999评论 3 235
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,060评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,821评论 0 194
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,574评论 2 271
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,480评论 2 267

推荐阅读更多精彩内容

  • 本文是对以太坊文档 Ethereum Frontier Guide 和 Ethereum Homestead 的整...
    趁风卷阅读 9,366评论 0 16
  • 1.介绍 本文旨在对Aeternity区块链的架构和可能的应用进行总览。未来我们将提供更细致的论文,尤其是针对共识...
    X1nMa阅读 1,215评论 0 5
  • 听者在接受和理解言语的意义时,他同时要对这一言语采取积极的应对的立场:同意或是不同意,补充它、应用它、准备实现它等...
    黑物质阅读 231评论 0 0
  • 喜欢你 而恰好 你也喜欢我 一段时间 不长亦不短 呼吸 皱眉 怄气 优点 缺陷 见过你的家人 温婉而慈祥 也许 明...
    大囍Daisy阅读 155评论 3 1
  • 母亲坐在旧板凳上扎着小菜,昏暗的灯光把她的身影拉的很长很长,我总是捋着小绳将它们递给母亲,而后她熟练的把小菜择...
    婳瑾阅读 171评论 0 5