【问题标题】:Hyperledger Fabric: How private keys are stored in Hyperledger?Hyperledger Fabric:私钥如何存储在 Hyperledger 中?
【发布时间】:2018-08-19 18:25:21
【问题描述】:

场景:

每个节点都会向区块链发送一个私人号码,智能合约应添加这些号码并公开分享结果。每个节点只能看到它的编号。

在超级账本中,数字被加密,因此用户无法查看数字。但是,智能合约可以访问解密密钥,这是添加数字所必需的。知道智能合约被复制到所有对等点并存储在本地。因此,用户可以访问智能合约,而智能合约又可以访问解密密钥。因此,用户可以通过篡改机器获得解密密钥。如果是这种情况,那么它并不完全安全。我说的对吗?

问题 2: 私钥是否存储在所有节点上?

问题 3: 代码只能作为背书人运行,以限制拥有私钥的节点数量吗?

【问题讨论】:

    标签: blockchain hyperledger-fabric hyperledger hyperledger-composer smartcontracts


    【解决方案1】:

    有多个假设/概念可能不是 100% 正确的。我希望您花更多时间了解 HLF 的工作原理。

    • 智能合约(阅读 Hyperledger Fabric 的链码)始终是公开的,至少对管理员或参与合约的所有各方的决策者而言。通常,智能合约与各方的最终用户是绝缘的,因此最终用户访问链码并不容易。此外,在 HLF 中,链码是在部署之前构建的,这可以增加一层安全性。现在说到你的意思,如果你把私钥放在链码上,它将暴露给该合约的所有参与者(范围有多广,这取决于每一方)

    • 通过私钥,我假设您在谈论最终用户的私钥。现在这取决于最终用户或组织在哪里存储密钥。默认情况下,Hyperledger 不存储任何私钥/公钥。同样,这完全取决于您如何管理每个组织的用户。

    • 是的,Chaincode 可以在有限数量的节点上运行,它与私钥无关(假设这些是您正在谈论的用户的私钥)

    【讨论】:

      猜你喜欢
      • 2019-01-15
      • 2019-03-23
      • 2019-01-31
      • 2017-12-24
      • 1970-01-01
      • 2018-12-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多