2011-09-29 77 views
1

我已经阅读了关于在https中运行tomcat并且实现它的好文章。将BIN格式的证书转换为X509格式

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

它工作正常,我的Tomcat是在HTTPS模式下运行。

但问题是我得到的证书在BIN格式。我需要它在X509格式,这样我可以把它作为一种原料资源为我的Android项目

我用java的keytool创建it.Can我使用OpenSSL将其转换为X509格式或Java密钥工具就足够了?

我是新来的这个证券的东西。

请指点我正确的方向,并清除我的疑惑。

回答

0

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

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

+0

感谢您对Nilesh的回复。在上面的网址中提到了.BIN文件实际上是密钥库文件。我现在该怎么办? – Sreeram

+0

使用上述命令并使用其他参数-keystore <您的bin文件名> – Nilesh

+0

您还需要使用私钥吗?或者您只是想在可信商店的android手机上添加服务器证书以避免浏览器警告? [编辑]:看看这可以帮助你:http://conshell.net/wiki/index。php/Keytool_to_OpenSSL_Conversion_tips – Nilesh

0

当然可以,您可以使用OpenSSL证书转换和键和从下列格式

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

在你的情况,考虑到标准PEM私钥文件和数字证书, 使用以下步骤他们都转换为PKCS12格式:

步骤1:转换的PEMs到单个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格式的证书和私钥后,您可以使用此JSK密钥存储在Tomcat的。

+0

PEM不是,也不是证书的标准。二进制DER是X.509证书的标准格式。 –

+0

感谢您的响应Zaki.After一些谷歌搜索后,我发现我有一个JKS的keystore.Are你问我要创建一个新的密钥库? – Sreeram

+0

@Sreeram,是的,创建一个新的jks密钥库,并在您的android项目中使用您的cert&priv密钥文件。 – Zaki

相关问题