Hyperledger Fabric 私有数据交易流程
Posted thefist11
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Hyperledger Fabric 私有数据交易流程相关的知识,希望对你有一定的参考价值。
step1. 当客户端提交一个调用链码的功能(读或写私有数据)提案请求到具有该私有数据集合操作权限的背书节点,通过提案中的transient
字段进行发送。
step2. 背书节点模拟交易并将私有数据存储到peer
节点上的transient data store
一个临时的数据存储区,并基于私有数据定义的策略,通过Gossip
协议发送到其他具有权限的节点。
step3. 背书节点将提案响应发送给客户端。
提案响应包括已经背书的读写集。读写集包括公共数据和私有数据的哈希值。发送给客户端的不包括任何的私有数据。
step4. 客户端应用提交交易(包括带有私有数据哈希值的提案响应)到排序节点。
- 带有私有数据哈希值得交易将和正常交易一样包括在区块中。
- 带有私有数据哈希值得区块分发到所有节点上。
- 通道中所有的
peer
节点可以通过私有数据的哈希值对交易进行验证而不需要知道任何的私有数据信息。
step5.
a. 在区块提交时,具有权限的节点通过集合策略确定是否具有访问私有数据的权限。
- 如果有权限,将会检查本地的
transient data store
确定他们是否已经在进行链码背书的时候接收到私有数据。 - 如果没有,将试图从其他具有权限的节点处拉取私有数据,
b. 验证公共区块中私有数据的哈希值并提交交易。
c. 当验证与提交结束后,私有数据将移动到他们的私有数据库和私有读写副本中。
d. 从transient data store
中删除私有数据。
以上是关于Hyperledger Fabric 私有数据交易流程的主要内容,如果未能解决你的问题,请参考以下文章