将BIN格式的证书转换为X509格式

时间:2011-09-29 10:04:57

标签: ssl https openssl

我已经阅读了这篇关于在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就足够了吗?

我是这个证券的新手。

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

2 个答案:

答案 0 :(得分:0)

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

  

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

答案 1 :(得分:0)

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

  • 标准PEM
  • DER / Binary
  • 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密钥库。