基于fabric的区块链项目
#搭建fabric环境
##配置证书
fabric网络中节点之间通讯都需要提供证书用来标识自己的身份cryptogen
工具快速生成相关证书
##配置系统链创世块
fabric系统配置是存放在区块链上的,系统成功运行至少要有一个链configtxgen
生成系统链,第一个数据块保存了用户定义的一些配置,
- 会读取configtx.yaml和
crypto-config
文件下的证书用于生成channel的创世块
生成的 genesis.block 是系统链的第一个区块,里面存放了 Orderer 节点、Orderer 管理员的证书,在 Orderer 节点启动时会用到这个数据块。
##如何理解fabric
类似于一个服务器,然后,
fabric用go语言实现链码,实现对peer节点的操作,也即是智能合约。
###链码
一共有五个节点,分为农户【farmer】,原料厂商【material】,生产厂商【productinfo+productProcess】,物流厂商【driver】,零售商【retailer】
####物流厂商
定义上链的信息结构体
通过api接口使用各函数
其他的链码定义方式同上
####路由
定义各个节点的路由
####api代码
引入fabric-client模块,基于此模块进行fabric区块链网络的节点功能调用
通过定义多个路由,利用以下代码进行区块链的上链查询等操作
在区块链环境中,每个希望于网络交互的参与者都需要一个身份,ca提供可验证的数字身份
基于fabric的区块链项目