前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >两学一做,基于区块链的智能合约技术

两学一做,基于区块链的智能合约技术

作者头像
Rainbond开源
发布2019-04-19 17:43:42
5300
发布2019-04-19 17:43:42
举报

书接上文,上回书说到如何快速上手「大数据处理框架SMACK」,由于其强大的处理性能和复杂的技术架构,洋洋洒洒复制粘贴了近三千字依然难表其貌,更多详情移步原文地址

本节云框架将用“两学一做”思想,帮助大家清晰明了理解「基于区块链的智能合约技术」。

1

学习区块链的核心思想

先给大家讲一个发生在象牙山故事,带大家认识认识我们屯里的人....

特点1:去中心化

传统谢大脚在记账的时候,刘能经常来捣乱说“谢谢谢大脚,你别乱给我加钱,我我我昨天压根就没来买鸡爪子”。

大脚仔细一想发现事情并不简单,之前也遇到过屯里人对记账本的真实性有疑问。所以有必要找出一种每笔交易都能被乡亲知悉,交易信息可追溯,产生民主信任的记账办法。

特点2:去信任

大脚跟刘能说“你先别谢谢我,我还得谢谢你。以后这账啊我不记了,省的大家说记账有问题,大脚成臭脚。我让大家一块记账,记账又快又好的那个人,我还有特殊奖励(比特币)!”。

新的记账办法一出,村民都觉得这办法利大于弊,反正闲着也是闲着,每个人都有机会有义务有责任审核交易,唤起了每一个村民心中的“主人翁精神”。于是村民都说:“我觉得ok”。

特点3:集体维护

从这之后象牙山这块小区有了一个公共账本,热心农民企业家王大拿亲自命名为《象牙山区块链账本》。

这个记账本的交易模式为:刘能向大脚购买了某种商品,由大脚和刘能双方都用大喇叭向村民发送交易信息。(交易广播

这时候手快的赵四听到消息,就把这个交易信息记录下来,完成计算之后,用大喇叭广播通知说“都憋算了,最近5分钟的交易信息我都记完了,交易最终状态你们都看看,放心吧肯定不会有错的,你们以后就从我这个账本上开始记账”。然后赵四兴高采烈地去找大脚拿奖励。(挖矿

其他村民虽然没得到记录信息的奖励,但这个账本所有交易信息都是公开透明,并且经过大家确认,所以大家都表示“我觉得ok”。(账本链+1

同样这种记账办法不限于商品买卖,也同样适用于村民之间的借贷等问题。

特点4:账本可靠

这种记账方式一出现,就解决了村民之间的交易信任的共识问题,获得了象牙山村民的一致拥护。虽然记账流程稍微麻烦点,但是大家都乐于参与其中,共同维护《象牙山区块链账本》。

2

学习区块链应用场景-智能合约

在《象牙山区块链账本1.0》期间,解决了村民之间的货币和支付手段的去中心化问题。但是像刘英和赵玉田结婚时候房子所有权,一亩三分地,以及村民随礼记账等资产认证的问题依旧没得到解决。

于是机智农民企业家王大拿将账本升级为《象牙山区块链账本2.0》,利用区块链核心思想衍生出“智能合约”技术,用来注册、确认、转移不同类型的资产及合约。

这里以赵玉田刘英结婚,村民随礼为例。于是有了一个随礼链,村民可通过随礼链完成:

  1. 注册随礼链账户,完成初始礼金充值
  2. 增加礼金金额
  3. 查询账户礼金信息
  4. 随礼(随机随礼/指定随礼)
  5. 查询随礼记录
  6. 查询礼金账户余额信息
  7. … 3

快速上手实践

step 1.安装云帮PaaS平台

  1. 好雨云帮PaaS平台(免费版)(智能合约框架最佳运行平台)
  2. 好雨云帮PaaS平台(企业版)(智能合约框架最佳运行平台)

(平台运行最小环境要求:4CPUs & 8GB Memory

框架运行最小环境要求:8CPUs & 32GB Memory)

step 2.下载 docker compose

git clone https://github.com/cloudframeworks-blockchain/user-guide-fabric-smart-contract

step 3.运行智能合约框架

视频内容

step 4.变成自己的项目

  1. 根据具体业务编写链码文件,结构参考示例代码格式:https://github.com/cloudframeworks-blockchain/user-guide-fabric-smart-contract/blob/master/chaincode/charity/charity_contract.go
  2. 将链码放置于容器中,下载go环境镜像,编译链码(推荐本例中使用的name为chaincode的镜像进行) docker exec -it chaincode bash cd $yourProj go build
  3. 修改docker-charity.yml文件 修改script.sh中的channel注册与chaincode实例化; 将cli的entrypoint指令指定为你个人的chaincode; peer中的entrypoint指令,指定安装以及实例化你个人的chaincode。
  4. 重复 #step 3.通过云帮PaaS运行智能合约框架#

《基于区块链的智能合约》就到这,更多教程请移步github

下期预告《智能门卫老大爷,KONG API Gateway》,十一之后,十九大前。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2017-09-14,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Rainbond 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
区块链
云链聚未来,协同无边界。腾讯云区块链作为中国领先的区块链服务平台和技术提供商,致力于构建技术、数据、价值、产业互联互通的区块链基础设施,引领区块链底层技术及行业应用创新,助力传统产业转型升级,推动实体经济与数字经济深度融合。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档