35

我有一个持有单个证书的 Java 密钥库(.jks 文件)。如何从此密钥库创建 .pfx 文件?

4

5 回答 5

60

从 Java 6 开始,keytool有一个-importkeystore选项,它应该能够将 JKS 存储转换为 PKCS#12 存储 (.p12/.pfx):

keytool -importkeystore -srckeystore thekeystore.jks \
            -srcstoretype JKS \
            -destkeystore thekeystore.pfx \
            -deststoretype PKCS12

它会要求您输入源和目标(jks、pfx)文件的密码

于 2012-01-12T16:44:33.527 回答
6

在http://teddyhai.blogspot.com/2009/06/how-to-convert-java-jks-keystore-to.html查看指南

于 2010-05-13T07:58:23.757 回答
3

这家伙()似乎已经编写了一个小的 Java 类和批处理文件,并在此处提供了很好的说明:http ://www.crionics.com/products/opensource/faq/signFree.htm#DownloadTools

如果你想自己做,.bat 文件中的关键行似乎是使用

keytool -export -rfc -keystore %KEYSTORE% -storepass %PASSWORD% -alias %ALIAS% > %CERT_64%
java -classpath %JAVACLASSPATH% ExportPrvKey %KEYSTORE% %PASSWORD% %ALIAS% > %PKEY_8%
openssl enc -in %PKEY_8% -a >> %PKEY_64%
openssl pkcs12 -inkey %PKEY_64% -in %CERT_64% -out %CERT_P12% -export

其中 ExportPrvKey 执行从密钥库中提取私钥的步骤。

于 2009-02-09T12:07:57.250 回答
0

keytool -importkeystore -srckeystore [MY_KEYSTORE.jks] -destkeystore [MY_FILE.p12] -srcstoretype JKS -deststoretype PKCS12

然后它会请求你的密码和 BAM - 很好,昨晚刚试过,效果很好。

您可能必须先将 dir 更改为您的 java jdk 或 jre bin 文件夹,然后包含当前 Keystore 的完整路径和 dest .p12 文件。

于 2021-01-20T14:33:11.607 回答
-1

您可以使用以下命令导出包含私钥的 PFX 文件:

keytool -importkeystore -deststorepass secret -destkeypass secret -destkeystore KEYSTOREFILE.jks -srckeystore PFXFILE.pfx -srcstoretype PKCS12 -srcstorepass secret
于 2016-10-13T20:33:42.657 回答