如何使用Hyperledger中的交易证书来强制执行隐私?

时间:2017-03-09 00:37:04

标签: blockchain hyperledger hyperledger-fabric

我正在Hyperledger中创建一个区块链应用程序,用于为制造公司执行出价过程。招标过程涉及4个供应商(供应商A到供应商D)。出价最低的那个获胜。

我可以为此创建链代码。但是,由于它是区块链,供应商可以看到彼此的出价(例如,通过简单地查看区块的内容)。此外,未获奖的供应商将知道谁实际赢得了招标过程。

我想在区块链中强制执行以下隐私规则:

  

一个。只有制造公司和供应商本身才能看到特定供应商的报价(例如,供应商A看不到供应商B的报价)

     

湾只有制造公司和获胜供应商知道谁赢了(例如,如果供应商A失去了出价,供应商A只知道它失去了出价,但不知道谁赢了)

我已经查看了交易证书的目的,我认为这将解决我的隐私问题。

我可以使用REST API请求多个交易证书。但是,我不确定如何使用交易证书。

是否意味着在链代码之外使用(例如,它是否用于加密将传递给调用函数的参数)?

或者它是否意味着作为参数传递给链代码函数并在链代码中使用它来加密特定数据,然后将其存储在区块链中?

如何使用交易证书执行实际加密?

我目前正在使用Hyperledger结构的v0.6作为我的链码。对于我的前端,我使用Node.JS HFC SDK v0.6.5。

我是否可以使用示例代码作为理解交易证书如何用于解决隐私的基础?

2 个答案:

答案 0 :(得分:4)

注册用户可以申请交易证书。然后,这些证书用于调用区块链上的Chaincode事务。我认为这些证书不会让您隐私,他们更多的是对交易的所有者进行身份验证。

但是,如果我是你,我会开始使用Hyperledger Fabric的v1.0。

  • Hyperledger结构的v0.6是为测试区块链的优缺点而开发的项目。他们意识到网络中的每个对等体都需要执行每个事务,维护分类账并达成共识。因此,它们无法很好地扩展,也无法支持真正的私人交易和保密合同。 https://www.youtube.com/watch?v=EKa5Gh9whgU
  • v1.0让您有机会在网络中创建隔离的区块链。这要归功于渠道。定义频道时,您可以定义谁是其成员,因此,只有那些对等方可以通过该频道发送事务。因此,只有频道成员才能看到您的交易。
  • 因此,对于您的方法,您应该创建四个渠道,每个渠道为每个供应商。 manufacturinf公司应该是所有渠道的一员。

在我看来,现在有关于v1.0的更多信息。

答案 1 :(得分:1)

我认为除了allenchen之前所说的以外,还有一种方式可以用手动方式执行此操作。但是,您可能希望遵循一些未解决的问题:

祝你的用例好运!