上篇文章中我们介绍了链码的概念,本文中我们将介绍Fabric下链码的编写和测试。我们会通过一个简单例子的方式来阐述链码API的使用。 链码API 每一个链码程序都必须实现一个链码接口, 这些方法用来响应接受到的交易。特别的,当链码接收到Instantiate``和``upgrade``类型的交易时会 ...
分类:
其他好文 时间:
2017-12-17 15:02:46
阅读次数:
90
什么是链码(Chaincode)? 我们知道区块链有3个发展阶段:区块链1.0,区块链2.0,区块链3.0。其中区块链2.0就是各种区块链平台百花齐放的阶段,区块链2.0最大的特点就是智能合约,我们接下来要介绍的链码就是智能合约的一种,是Hyperledger子项目Fabric提供的智能合约,叫做c ...
分类:
其他好文 时间:
2017-12-17 14:58:42
阅读次数:
77
一.证书目录解析 通过cryptogen生成所有证书文件后,以peerOrgannizations的第一个组织树org1为例,每个目录和对应文件的功能如下: ca: 存放组织的根证书和对应的私钥文件,默认采用EC算法,证书为自签名。组织内的实体将基于该证书作为证书根。 tlsca:存放组织tls连接 ...
分类:
其他好文 时间:
2017-11-21 19:52:45
阅读次数:
237
上个版本的chaincode有很多功能不完备,所以要部署新版本的chaincode。Fabric支持在保留现有状态的前提对chaincode进行升级。 一.新版chaincode 新版本的chaincode增加的功能如下: 1.增加了数据追溯功能,在社区用户发起transaction时,chainc ...
分类:
其他好文 时间:
2017-11-21 18:50:28
阅读次数:
128
接下来我要做的是用fabric sdk来做出应用程序,代替CLI与整个区块链网络交互。并且实现一个http API,向社区提供一个简单的接口,使社区轻松的与区块链交互。 官方虽然提供了Node.JS,Java,Go(最近刚出了python)等多种语言的SDK,但是很多SDK还不成熟和完善,有的甚至文 ...
分类:
Web程序 时间:
2017-10-30 19:50:45
阅读次数:
380
现在所有的文件都已经准备完毕,我们可以启动fabric网络了。 一.启动orderer节点 在orderer服务器上运行: 运行完毕后我们可以使用docker ps看到运行了一个名字为orderer.example.com的容器。 二.启动peer节点 2.1安装couchdb 我们要为每一个pee ...
分类:
其他好文 时间:
2017-10-30 18:28:07
阅读次数:
195
一.生成公私钥和证书 Fabric中有两种类型的公私钥和证书,一种是给节点之前通讯安全而准备的TLS证书,另一种是用户登录和权限控制的用户证书。这些证书本来应该是由CA来颁发,但是目前只有两个社区,所以目前暂时没有启用CA节点,但是Fabric帮我们提供了一个crytogen工具来生成证书。 1.1 ...
分类:
其他好文 时间:
2017-10-25 19:52:22
阅读次数:
2641
fabric中通过工厂模式来生成bccsp实例,进而通过bccsp的接口来实现加密、解密、签名验证以及哈希等操作。 fabric的factory工厂默认返回的bccsp实例是sw(也就是所有密码操作都是封装go底层算法来实现的),这里的工厂模式代码不多,大家可以自己去fabric/bccsp/fac ...
分类:
其他好文 时间:
2017-09-27 23:54:44
阅读次数:
201
4:创建Fabric多节点集群 4.1、配置说明 首先可以根据官方Fabric自带的e2e_cli列子中的集群方案来生成我们自己的集群,与案例不同的是我们需要把容器都分配到不同的服务器上,彼此之间通过网络来进行通信,网络构建完成后则进行相关的channel和chaincode操作。 笔者目前申请了五 ...
分类:
其他好文 时间:
2017-09-18 11:04:16
阅读次数:
183
3:运行测试e2e 3.1、运行fabric-samples的问题说明 该问题说明能够解决6.1、平台特定使用的二进制文件配置第一步的问题。可以选择继续阅读该说明,或者等参考到6.1小节时再反向阅读本说明,具体在6.1中会重新指向本步骤。 一般情况下,我们会参照官网来完成第一个网络测试,在该在线文档 ...
分类:
其他好文 时间:
2017-09-16 20:47:13
阅读次数:
150