区块链之联盟链—认识Fabric
一. 介绍Fabric
Fabric 是超级账本联盟推出的核心区块链框架,它适合在复杂的企业内和企业间搭建联盟链。根据超级账本联盟的目标, Fabric 被建设为一个模块化的、支持可插拔组件的基础联盟链框架。;
其独有的channel概念,将企业根据业务目的不同以不同的子网连接起来, 每一个子网对应一个channel,而每个channel有自己独立的区块链。
理解channel的最简单方法就是,将它类比为一个消息服务提供的Topic,实际上Fabic最早就是基于Kafka 的分布式消息服务来实现。
二. 智能合约的执行和业务业务上链
业务上链–将事务结果记录在区块链上
Fabric分为三个阶段:
- 1、业务背书阶段:客户的请求发送的背书节点,通过智能和约完成业务的计算(但不完成个更新状态,并完成背书;将背书结果返回客户端)
- 2、业务的排序阶段:客户端将背书结果通过Channel被发送到排序节点(orderer),在排序节点完成事务的排序,并打包block里,最后下发给所有连接到channel的节点
- 3、CA证书节点
链码必须将其部署到Peer节点上 : 1、链码安装在指定网络节点上,安装完成后对其进行实例化,然后才可以调用链码处理交易(查询或执行事务)
三. Hyperledger Fabric 四大组件
Membership Services 成员服务、Blockchain Services区块链服务、Chaincode Servicel链码服务、Event 事件流
MSP: Membership Services Provider 成员关系服务提供
四. Hyperledger Fabric 典型的交易流程
Hyperledger Fabric 典型的交易流程如下图所示:
** 应用程序使用相应的SDK提供的API构建交易提案并交给相应的背书节点,交易提案中包含:**
channelID:通道信息
chaincodeID:要调用的链码信息
timestamp:时间戳
sign:客户端的签名
txPayload:提交的事务本身包含的内容,包含两项:
operation:要调用的链码的函数及相应的参数
metadata:调用的相关属性
五.思考题 为什么联盟链更适合 企业?
因为企业不喜欢公开自己的数据,希望自己主导数据. 可以通过联邦学习进行相关的数据交互,同时保障了自身数据的安全不被泄露.