Hyperledger Fabric(四):共识服务
2019-10-18 本文已影响0人
Jarvist
新文档 2019-10-17 09.28.50.jpg
共识服务是Fabric系统中的区块链系统核心功能
1、分布式账本
Fabric账本数据存储模块提供了文件系统和键值型数据库,统一封装为Peer节点的账本对象(kvLedger)进行管理。利用文件系统保存区块数据,键值型数据库保存区块索引、是区块链世界状态、历史数据、隐私数据等。
2、排序服务
排序服务由Orderer节点的kafka中间件提供。client发送来的交易提案是一个数据的读写集,因此可以在验证提案的背书签名等数据后,可以将其放入kafka队列进行排序,然后orderer节点接收kafka消息(排列后的交易),然后按照配置的规则构造区块并分发区块。
3、P2P网络协议
Fabric中的P2P协议主要采用Gossip协议。其模块功能如下:
1.管理网络Peer成员节点,维护节点信息相关列表;
2.分发数据消息和更新通道状态;
3.同步缺失数据;
4.提供Gossip消息存储更新和安全机制。
4.背书验证
client向Orderer发送交易请求前,需要先向EndorsorPeer节点发送交易提案,Endorsor提案进行模拟执行,并对模拟执行结果签名,标识Endorsor节点认为此次交易是有效的,然后将签名背书信息等打包成交易提案响应回复给client。client再将提案响应等打包成Envelope格式发送给Orderer节点进行排序。