【问题标题】:I can't extract private keys from EJBCA Community Edition - PrivateKeyNotExtractableException我无法从 EJBCA 社区版中提取私钥 - PrivateKeyNotExtractableException
【发布时间】:2020-11-09 22:28:45
【问题描述】:

开始使用 EJBCA 社区版,我对它相当满意,尽管对我的需求来说有点矫枉过正。我想备份我的 Root 和 Issuer CA 的私钥,以防我以后决定使用不同的工具或简单地使用 openssl 来代替。

我正在阅读,我可以使用

$ ejbca.sh ca exportca SomeCA SomeCA.p12

获取私钥。

但是我遇到了一个异常:

org.cesecore.keys.token.PrivateKeyNotExtractableException: Crypto Token 2750234253 does not allow to extract private keys.

如何获取我的私钥?

【问题讨论】:

  • 我遇到了同样的问题,如果创建的 CA 没有“允许导出私钥”选项,即使您编辑并尝试重新激活,也无法导出私钥。因此,我开发了一个小型 Java 软件来解码取自 EFBCA 数据库的 SoftCryptoToken。您可以在那里找到所有信息:github.com/simonlopez/ejbca-keystore-recovery
  • 尚未实际测试建议的解决方案,因为我从头开始,但最有希望因此被接受。

标签: pki ejbca


【解决方案1】:

对于软加密令牌,您可以进入管理 UI->加密令牌。选择您的加密令牌,单击“切换到编辑模式”,选中“允许导出私钥”复选框并保存。现在您可以导出密钥了。

【讨论】:

    【解决方案2】:

    这可能是因为您在创建加密令牌时没有勾选允许导出私钥选项。

    假设您没有使用硬件加密令牌(例如 HSM),那么理论上,由于私钥存储在 CA 的某个位置,如果您对其付出足够的努力和技巧,它应该是可以访问的。

    由于您才刚刚开始,我建议您创建一个新的加密令牌,因此很遗憾,您可以创建新的密钥/证书,并勾选上述选项;或者,使用 OpenSSL 创建替换密钥和根证书并将它们导入 EJBCA。这样您就无需导出即可获得备份。

    【讨论】:

    • 我担心会是这样。尚不接受答案,因为可能有人可以提供从 CA 内部获取答案的详细信息。
    猜你喜欢
    • 1970-01-01
    • 2019-07-23
    • 1970-01-01
    • 2011-07-31
    • 1970-01-01
    • 2012-04-30
    • 1970-01-01
    • 1970-01-01
    • 2019-12-13
    相关资源
    最近更新 更多