【问题标题】:What exactly is the point of private-data collection?私人数据收集到底有什么意义?
【发布时间】:2019-11-06 16:01:30
【问题描述】:

如果我们知道某些组织可能希望将某些信息保密,为什么不创建一个单独的渠道呢?私有数据是否纯粹只是为了管理和减少渠道开销?

我已阅读有关何时在频道内使用集合与何时使用单独频道的文档:

当整个交易(和分类账)必须在作为通道成员的一组组织内保密时使用通道。

当交易(和分类账)必须在一组组织之间共享,但只有这些组织的一个子集应该有权访问交易中的部分(或全部)数据时,请使用集合。此外,由于私有数据是点对点传播的,而不是通过区块传播的,因此当交易数据必须对排序服务节点保密时,请使用私有数据集合。

【问题讨论】:

    标签: hyperledger-fabric hyperledger


    【解决方案1】:

    为此举一个实际的例子。有一个拍卖行和3-4个定期投标的供应商。投标类型为封闭式拍卖。拍卖行是一个节点,将公布要投标的物品。此项目必须对所有供应商可见。然后,每个供应商将通过区块链提交他们对该项目的投标。由于每个出价都是私密的,供应商只能查看他们的出价,而拍卖行则拥有完整的可见性。

    没有私人数据 1) 频道 PUBLIC -> 拍卖行创建出价,所有供应商都可以查看 2) 频道 VENDOR_1、VENDOR_2、VENDOR_3 - 此频道上只有一个供应商和拍卖行。供应商在这里提交投标

    现在拍卖行必须检查多个渠道的出价,选择获胜者,然后适当地更新所有渠道。在更大规模和更复杂的系统中,相关的开销是巨大的。您可能需要单独的模块/API 调用,以确保某些对象(出价)的状态在各个渠道中是相同的。

    相反,私有数据将允许使用单个通道。卖家可以提交所有人都可以查看的出价,但将出价标记为私有,因此只有拍卖行和卖家可以查看。

    【讨论】:

      【解决方案2】:

      是的,私有数据主要用于减少通道开销。 动态添加新的私有数据集合更加方便和容易,并且几乎没有网络开销。

      网络中频道太多可能导致维护噩梦,并可能严重影响网络性能。

      何时使用多个渠道

      • 何时可以进行隔离交易

      • 频道数量可控。

      何时使用私有数据收集。

      • 只需要隐藏 txn 数据(机密数据)和 不隔离其他用户查看他们之间的交互 相关方。(其他人无论如何只能看到数据的哈希值,但是 他们会知道相关各方之间存在 txn。)

      【讨论】:

      • 如何动态创建PDC参与者,能否参考API文档?
      【解决方案3】:

      想强调一个重要的区别(它也在您的文档引用中):私人收藏隐藏来自订购者的交易数据,即这些交易永远不会提交订购。使用多渠道方法时,您的交易将与订购者共享。

      【讨论】:

      • PDC 对 orderer 隐藏交易数据,而不是对整个交易。通过这种方式,散列的交易数据在无权在网络中查看它的其他对等方之间共享。所以他们会知道一些txn 发生在其他各方之间,但不知道数据。
      猜你喜欢
      • 2021-10-29
      • 2011-04-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-04-07
      • 2018-12-28
      • 2020-10-23
      • 1970-01-01
      相关资源
      最近更新 更多