Java密钥工具:将私钥插入X.509证书
Java的keytool是否能够导出包含私钥的X.509证书Java密钥工具:将私钥插入X.509证书,java,key,private,keytool,x509,Java,Key,Private,Keytool,X509,Java的keytool是否能够导出包含私钥的X.509证书 我正在考虑一个场景,其中用户生成一个包含私钥的证书,并将其提供给签名工具。签名工具使用证书中的私钥对目标文件进行签名。最终,私钥将从证书中删除,证书将附加到目标文件以进行分发。我还不能发表评论,因此我将使用以下表单: 通常使用PKCS 12存储带有私钥的证书。此外,还可以将公钥/私钥对存储在PCKS 8容器中,并单独发送证书 如果您感兴趣,我想我有一些PKCS12存储的java代码示例 此外,开源Java证书颁发机构EJBCAhttp
我正在考虑一个场景,其中用户生成一个包含私钥的证书,并将其提供给签名工具。签名工具使用证书中的私钥对目标文件进行签名。最终,私钥将从证书中删除,证书将附加到目标文件以进行分发。我还不能发表评论,因此我将使用以下表单: 通常使用PKCS 12存储带有私钥的证书。此外,还可以将公钥/私钥对存储在PCKS 8容器中,并单独发送证书 如果您感兴趣,我想我有一些PKCS12存储的java代码示例
此外,开源Java证书颁发机构EJBCAhttp://www.ejbca.org/ 是一个很好的例子来源。我还不能评论,所以我将使用以下表单: 通常使用PKCS 12存储带有私钥的证书。此外,还可以将公钥/私钥对存储在PCKS 8容器中,并单独发送证书 如果您感兴趣,我想我有一些PKCS12存储的java代码示例
此外,开源Java证书颁发机构EJBCAhttp://www.ejbca.org/ 是一个很好的例子来源。生成的私钥从未被他人出于任何目的使用或共享。
据我所知,签名工具将使用自己的私钥生成签名,以验证您的公钥。例如,您使用keytool生成密钥对并向CA提交CSR。CA将使用其自己的pvt密钥在您的证书上加盖签名。生成的私钥从未被其他人出于任何目的使用或共享。
据我所知,签名工具将使用自己的私钥生成签名,以验证您的公钥。例如,您使用keytool生成密钥对并向CA提交CSR。CA将使用其自己的pvt密钥在您的证书上加盖签名。命令行可执行文件的keytool没有导出私钥的选项。但是,您可以使用JSA-API以编程方式进行操作,但尚未尝试。命令行可执行文件的keytool没有导出私钥的选项。但是,您可以使用JSA-API以编程方式进行操作,但还没有尝试。密钥及其签名证书通常存储在密钥库容器中,如PKCS12或Java的JKS。还可以将证书和密钥提取到PEM格式的文件中,以便在Apache HTTPD等应用程序中使用 要从JKS文件中提取证书和密钥,必须先将其转换为PKCS12格式文件,然后再使用openssl提取证书:
keytool -importkeystore -srckeystore keystore.jks -destkeystore keystore.pkcs12 -deststoretype pkcs12
openssl pkcs12 -in keystore.pkcs12 -out mycert.crt -nokeys
openssl pkcs12 -in keystore.pkcs12 -out mykey.key -nocerts
密钥及其签名证书通常存储在密钥库容器中,如PKCS12或Java的JKS。还可以将证书和密钥提取到PEM格式的文件中,以便在Apache HTTPD等应用程序中使用 要从JKS文件中提取证书和密钥,必须先将其转换为PKCS12格式文件,然后再使用openssl提取证书:
keytool -importkeystore -srckeystore keystore.jks -destkeystore keystore.pkcs12 -deststoretype pkcs12
openssl pkcs12 -in keystore.pkcs12 -out mycert.crt -nokeys
openssl pkcs12 -in keystore.pkcs12 -out mykey.key -nocerts
X509证书没有私钥。这也是我最初的理解。事实证明,.NET有一个证书创建工具,可以选择将私钥包含在X.509证书中。X509证书没有私钥。这也是我最初的理解。事实证明,.NET有一个证书创建工具,可以选择将私钥包含在X.509证书中。由于我仍然无法发表评论,我想补充一点:您引用的证书创建工具不会创建包含私钥的X.509证书,它创建一个专有的未受保护的*.snk文件,其中包含证书和私钥。他们也建议使用容器来存储证书和密钥。明白了。阅读PKCS12使我意识到这将是密钥库文件使用的格式,例如允许在同一文件中存储私钥和证书对的Java密钥库。谢谢你的回复。我会在你之前的回复中提到的网站上了解更多关于这方面的信息。由于我仍然无法发表评论,我想补充一点:你提到的证书创建工具不会创建包含私钥的x.509证书,但是,它会创建一个包含证书和私钥的专有的未受保护的*.snk文件。他们也建议使用容器来存储证书和密钥。明白了。阅读PKCS12使我意识到这将是密钥库文件使用的格式,例如允许在同一文件中存储私钥和证书对的Java密钥库。谢谢你的回复。我将在您之前的回复中引用的网站上了解更多关于此的信息。名为PEM的文件,包含私钥和公钥。名为PEM的文件,包含私钥和公钥