【问题标题】:Import .pem public and private keys to JKS keystore将 .pem 公钥和私钥导入 JKS 密钥库
【发布时间】:2011-01-29 20:29:00
【问题描述】:

我在单独的 .pem 文件中有公钥和私钥,我需要以某种方式进入 JKS 密钥库。

为此尝试使用 KeyTool 中的 -import 命令,但出现“不是 X.509 证书”错误。

我猜该解决方案与 OpenSSL 有关,但我不完全确定如何处理它。

非常感谢任何帮助,因为我对所有与加密相关的事情一无所知。

提前致谢, --罗尔夫

【问题讨论】:

    标签: cryptography certificate public-key keystore private-key


    【解决方案1】:

    KeyTool 需要 DER 格式的对象。 PEM 是 Base64 编码的 DER,带有页眉和页脚。 KeyTool 无法解析 PEM。

    但是,OpenSSL 可以将 PEM 对象转换为 DER。例如,对于 X.509 证书,-outform DER 命令行标志指示 OpenSSL 使用 DER 作为其输出格式。

    This page 显然包含一些更详细的解释。

    【讨论】:

    • 您好,感谢您的回答!我设法使用 OpenSSL 将私钥转换为 DER,但不是公钥。 openssl x509 -in pubkey.pem -inform PEM -out pubkey.der -outform DER 导致以下错误:无法加载证书 5280:error:0906D06C:PEMroutines:PEM_read_bio:no start line:.\crypto\pem\pem_lib .c:642:Expecting: TRUSTED CERTIFICATE 我猜它希望公钥文件以“BEGIN TRUSTED CERTIFICATE”标头开头,但它实际包含的是“BEGIN PUBLIC KEY”
    • 你有一个“唯一的公钥”。你需要一个证书。 KeyTool 遵循 KeyStore 格式,该格式仅接受带有证书的私钥。证书包含公钥,以及其他信息,例如身份(“密钥所有者名称”)和“证书颁发机构”的签名。您可以使用私钥创建“自签名证书”(相对于密钥本身计算签名的证书);试试这个:openssl req -new -x509 -key privkey.pem -out cert.pem
    • 您是如何解决“期望:可信证书”错误的?谢谢
    猜你喜欢
    • 2013-08-06
    • 1970-01-01
    • 2014-09-27
    • 2015-04-05
    • 1970-01-01
    • 2022-01-15
    • 1970-01-01
    • 2013-07-11
    • 1970-01-01
    相关资源
    最近更新 更多