【问题标题】:Convert certificate in BIN format to X509 format将 BIN 格式的证书转换为 X509 格式
【发布时间】:2011-11-27 14:00:37
【问题描述】:

我已经阅读了这篇关于在 https 中运行 tomcat 的好文章并实现了它。

http://techtracer.com/2007/09/12/setting-up-ssl-on-tomcat-in-3-easy-steps/

它工作正常,我的 tomcat 正在 https 模式下运行。

但问题是我获得了 BIN 格式的证书。我需要 X509 格式 以便我可以将它用作我的 Android 项目的原始资源

我是用java keytool创建的,可以用OpenSSL转成X509格式还是java keytool就够了?

我对证券行业不熟悉。

请指出正确的方向并消除我的疑虑。

【问题讨论】:

    标签: ssl https openssl


    【解决方案1】:

    我认为 keytool 已经只处理 X509 格式的证书。您应该已经生成了 .keystore 文件。您可以使用以下命令从中导出证书:

    keytool -export -alias mycert -keystore mykeystore.bin -file certificatefile.cer

    【讨论】:

    • 感谢 Nilesh 的回复。在上面的 url 中提到 .BIN 文件实际上是密钥库文件。我现在该怎么办?
    • 使用上面的命令和附加参数 -keystore
    • 你也需要使用私钥吗?或者您只想在受信任的商店中的 android 手机上添加服务器证书以避免浏览器警告? Edit:看看这对你有没有帮助:conshell.net/wiki/index.php/Keytool_to_OpenSSL_Conversion_tips
    • 我只想在 android 手机上的 truested 商店中添加服务器证书,以便它只接受与此服务器的连接而不会发出任何警告。我希望按照以下 URL [链接]blog.antoine.li/index.php/2010/10/… 中的说明进行操作
    • 好的。在这种情况下,提取证书并将其安装在手机上就足够了。你可以使用上面的命令。
    【解决方案2】:

    当然可以,您可以使用 OpenSSL 将证书和密钥转换为以下格式

    • 标准 PEM
    • DER / 二进制
    • PKCS#7(又名 P7B)
    • PKCS#12(又名 PFX)

    在您的情况下,给定标准 PEM 中的私钥文件和数字证书, 使用以下步骤将它们都转换为 pkcs12 格式:

    第 1 步:将 PEM 转换为单个 PKCS12 文件

        OpenSSL> pkcs12 -export -in CE_cert.cer -inkey CE_prv_key_PEM.key -out
    pkcs12_KeyStore.p12 -name ce_cert_prv_key
    

    这是OpenSSL PKCS12 命令的文档。

    第 2 步:将第 1 步中创建的 PKCS12 文件导入新的 JKS

    C:\>keytool -importkeystore -srckeystore pkcs12_KeyStore.p12 -srcstoretype pkcs12 -srcstorepass somepass -srcalias ce_cert_prv_key -destk
    eystore path/to/JavaKeyStore_KS.jks -deststoretype jks -deststorepass somepass -destkeypass somepass
    

    现在有了 JKS 格式的证书和私钥后,您就可以在 Tomcat 中使用这个 JSK 密钥库了。

    【讨论】:

    • PEM 不是,也从来不是证书的标准。二进制 DER 是 X.509 证书的标准格式。
    • 感谢 Zaki 的回复。经过一番谷歌搜索后,我发现我有一个 JKS 密钥库。你要我创建一个新的密钥库吗?
    • @Sreeram,是的,使用您的 cert 和 priv 密钥文件创建一个新的 jks 密钥库,以便在您的 android 项目中使用。
    • @Zaki-Nilesh 提供了一种将 JKS 密钥库转换为 PKCS12 格式的方法。请参阅他在评论中提供的站点。
    • @Sreeram,我回答中的第 2 步正是这样做的,即将证书和密钥从 pkcs12 密钥库导入现有或新的 JKS 密钥库。
    猜你喜欢
    • 1970-01-01
    • 2017-11-19
    • 2017-06-13
    • 1970-01-01
    • 2011-09-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-21
    相关资源
    最近更新 更多