Java 从PEM获取私钥

Java 从PEM获取私钥,java,ssl,https,openssl,pkcs#12,Java,Ssl,Https,Openssl,Pkcs#12,PEM文件内容。我也有PEM文件的密码 *Bag Attributes localKeyID: 12 7B 3C 4C ... subject=/C..OTHER FIELDS -----BEGIN CERTIFICATE----- ... -----END CERTIFICATE----- Bag Attributes localKeyID: 12 7B 3C 4C .. Key Attributes: <No Attributes> -----BEGIN ENC

PEM文件内容。我也有PEM文件的密码

*Bag Attributes
    localKeyID: 12 7B 3C 4C ... 
subject=/C..OTHER FIELDS
-----BEGIN CERTIFICATE-----
...
-----END CERTIFICATE-----
Bag Attributes
    localKeyID: 12 7B 3C 4C ..
Key Attributes: <No Attributes>
-----BEGIN ENCRYPTED PRIVATE KEY-----
...
-----END ENCRYPTED PRIVATE KEY-----*
但我无法提取私钥。请尝试下列命令。这两个命令的OpenSSL都挂起。我是不是漏掉了什么明显的东西

openssl pkey -in client.pem -out key.pem

我需要提取客户端证书和密钥文件,以在java中创建
SSLSocketFactory
对象。

我假设命令行将提示输入密码短语,但需要提供参数
-passin file:passphrase.txt



openssl pkey-通知PEM-outform DER-in client.PEM-passin文件:passphrase.txt-out key.PEM

您可能应该使用
openss pkcs12…
命令。Dave Thompson在openssl pkcs12中提供了一个
awk
命令,该命令可用于.pfx文件,但提供给我的文件是PEM格式。Stack Overflow是一个用于编程和开发问题的网站。这个问题似乎离题了,因为它与编程或开发无关。请参见帮助中心中的。也许或者会是一个更好的提问的地方。也看到我的坏;我以为你想用C或Java来做这件事。如果您需要有关不相关命令的帮助,如转换证书的
openssl
,您应该在stack exchange网络的另一个站点上询问。
openssl pkey -in client.pem -out key.pem