在生产环境中用 CA 颁发的其他证书替换 cryptogen 证书

Replacing cryptogen certificates with other certifcates issued by a CA in a production environment

我已经在生产环境中部署了一个 fabric 网络,其中包含使用 cryptogen 工具生成的证书。现在我需要将这些证书替换为使用 Fabric-CA 或任何其他 CA 生成的证书。实现这一目标的正确方法是什么。是否可以进行交易配置更新,我用新证书替换现有证书,以及由旧证书(cryptogen 证书)签名的现有交易(块)会发生什么。

如有任何帮助,我们将不胜感激。

是的,这是一团糟,但你可以做到。您应该为订购服务渠道和每个受影响的渠道逐一更新每个组织的 CA 证书(MSP 和 TLS)。请谨慎订购并保存所有证书和密钥(旧的和新的,因为您将在不同的步骤中需要不同的签名)。该过程涉及获取配置、通过 configtxlator 进行转换、签名和交易;以类似于创建新频道或添加新组织的方式。

事实上,这是在您的 CA 证书过期时应该在常规操作中执行的操作。

提醒一下,在 生产 环境中,您应该始终使用 CA(避免 cryptogen,因为它不允许您管理身份)。始终使用 CouchDB 作为状态(而不是 LevelDB)。并始终使用 Raft 作为排序服务的共识。

编辑: 如果您处于懒惰模式并且新的 CA 尚不存在,您也可以尝试使用来自 configtxgen。您将无法管理或撤销旧的 identities/certificates,但可能比更新您的网络更容易。