使用Java生成PKCS12文件

使用Java生成PKCS12文件,java,jce,pkcs#12,Java,Jce,Pkcs#12,我需要使用Java生成一个PKCS12文件。 实际上,我需要使用openssl自动生成以下证书(ca是以前创建的,并没有假装自动创建): openssl genrsa-out client.key 2048 openssl req-new-key-client.key-out-client.csr opensslca-keyfile ca.key-cert ca.crt-out client.crt-policy\u anything-infiles client.csr openssl pkc

我需要使用Java生成一个PKCS12文件。 实际上,我需要使用openssl自动生成以下证书(ca是以前创建的,并没有假装自动创建):

openssl genrsa-out client.key 2048

openssl req-new-key-client.key-out-client.csr

opensslca-keyfile ca.key-cert ca.crt-out client.crt-policy\u anything-infiles client.csr

openssl pkcs12-export-in-client.crt-inkey-client.key-out-client.p12-name-client

我想知道,如果不使用Bouncycastle或类似的库(仅使用JCE),是否可以执行此操作,因为我没有找到任何与PKCS12生成相关的信息。

创建PKCS#12很简单-可以通过编写“PKCS12”实例,添加证书和密钥,然后使用存储将其保存到文件(…)方法


其余的则有点问题。

创建密钥对和证书没有问题,但JCE没有用于签名的API(这是绝对的,我花了很多时间搜索它)。Bouncycatle lib是一个正确的选择。

谢谢你的回答,罗伯特,问题是我没有使用密钥库。我只是创建了这个pkcs证书,作为在web上注册的结果,以控制新用户创建的对其他URL的访问。因此,我需要复制已注释的openssl命令,它只创建一个pkcs,而不创建密钥库。Java包含许多密钥库实现,如PKCS#12和JKS。两者的访问方式完全相同——只需使用
java.security.KeyStore.getInstance(“PKCS12”)