【发布时间】:2019-01-25 14:18:47
【问题描述】:
我不明白读写集是否适用于 Hyperledger Fabric 中的私有数据。
据我了解,当 peer 从 orderer 接收包含私有数据交易哈希的块时,peer 可能没有私有数据。
文档说:
如果请求节点无法在 >pullRetryThreshold 内检索私有数据,它会将事务提交到它的区块链 >(包括私有数据哈希),而不包含私有数据。
但这意味着在验证阶段,没有私有数据的peer只能在之前有完全相同的交易的情况下判断该交易是无效的。
但是如果有情况,发生了一些不完全相同的交易,但是它改变了我们正在改变的键值对的状态?
在正常情况下(没有私有数据),它将通过读写逻辑检查被标记为无效。
在私有数据的情况下如何工作?
我已阅读https://hyperledger-fabric.readthedocs.io/en/release-1.4/private-data-arch.html 和https://hyperledger-fabric.readthedocs.io/en/release-1.4/private-data/private-data.html在话题上,但行为仍不清楚;
【问题讨论】:
-
我想我找到了答案 - 私有数据的键和值的哈希值也存储在公共存储中,这样可以执行读写检查。