gpt4 book ai didi

hyperledger-fabric - 在 Hyperledger Fabric 中更新证书时会发生什么?

转载 作者:行者123 更新时间:2023-12-04 07:56:26 26 4
gpt4 key购买 nike

我正在采用 Hyperledger Fabric 为我的业务构建应用程序。

由于像 Fabric 这样的许可区块链严重依赖 PKI 进行身份管理,而且网络上的每笔交易都需要参与组件的签名,因此交易流和具有这些签名的交易最终在分类账中永久保存。

我想知道如果参与的组件必须更新他们的证书会发生什么? 例如,原始证书已过期或私钥被泄露。

具体来说,我想知道:

  • 在最佳实践中,证书的续订是否需要新的 PKI key 对,还是应该使用原始 key 对创建新证书并延长其有效性?
  • 如果私钥被泄露,我必须撤销原始证书并使用带有新 key 对的新证书怎么办。在这种情况下,我应该如何验证已经保存在分类账中的交易签名?我想知道这是否意味着即使证书被吊销,也应该保留它以验证历史签名。
  • 最佳答案

    首先,Fabric 中有两种类型的证书:

  • TLS 证书
  • 入学证明

  • 对于 TLS 证书,当它们过期时 - 它们不能再使用,但显然事件 TLS 连接在发生时不会被终止。

    对于注册证书 - 当它们过期时,无论它们是否过期,它们仍然继续有用。这是为了防止在对等方较晚加入区块链时 fork 。因此,简而言之 - 证书到期对注册证书没有影响。

    Should renewal of a certificate require a new PKI key pair in best practice, or should a new certificate be created with the original key

    pair be created with its validity extended?



    在大多数情况下,Fabric 将具有相同公钥但不同属性的 2 个证书视为 2 个完全不同的身份(除非您在交易验证时考虑重复数据删除),因此如果您有机会更新节点或客户端的证书- 您也可以使用新的 key 。这不是必需的,但它是可能的。

    What if it's the case when a private key got compromised, and I have to revoke the original certificate and use a new one with a new key pair. In this case, how should I validate signatures of transactions that were already persisted in the ledger? I wonder if it means that even if a certificate were revoked, it should be kept for validating history signatures.



    对于 TLS 证书,Fabric 不使用 CRL,因此您只能依赖较短的有效期,或者您始终可以替换整个证书链,这将隐式地使旧链的叶证书无效。

    对于注册证书,您可以向所有 channel 发布 CRL 配置更新,这将无法在 future 的交易中使用已泄露的 key ,但是过去(在证书撤销之前的区块中)进行的交易签名仍将因显而易见的原因而有效。

    但是,有一个代码路径可以检查注册证书的过期时间:每当来自对等方或客户端的请求通过身份验证以访问资源(即客户端想要执行链码,或者对等方想要拉块) - 那么服务器(peer/orderer)也会检查注册证书的证书过期时间。

    关于hyperledger-fabric - 在 Hyperledger Fabric 中更新证书时会发生什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59525641/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com