问题描述
我正尝试为我的本地应用程序做一个自签名证书,以进行测试。 我设法创建了一个p12密钥库,从该密钥库生成了服务器证书和私钥。我的服务器启动正常。 我使用了openssl和keytool。
客户端应用程序需要受信任的证书。
如何生成此文件?我在互联网上尝试了很多,却没有发现有用的东西。
解决方法
您可以使用。
keytool -exportcert -keystore ksfile.p12 [-alias name] [-rfc] [-file file]
-export
可以使用缩写-exportcert
。如果省略-file
输出是标准输出,则可以使用通常的方法重定向或管道输出。如果未指定-rfc
,则输出为DER;如果执行此操作,则输出为PEM。尽管当今大多数导入证书的内容都可以接受DER或PEM,但PEM通常更适合复制到其他系统。如果您省略-file
和,并且不重定向并输出到终端(控制台等),则PEM可以运行,但是DER始终不可用,并且有时会损坏终端/显示器/任何东西。
openssl pkcs12 -in ksfile.p12 -nokeys -clcerts [-out file]
在PEM中输出证书(此处没有DER选项,尽管某些其他 OpenSSL函数具有DER选项)。如果省略-out
,则输出为标准输出。 如果在密钥库中只有一个条目,那么这将是正确的条目。如果您有多个条目,则将它们全部输出,并且您必须查看有关Friendlyname,颁发者和主题的“注释”,以识别正确的条目。
请参见系统man pkcs12
或最新版本man openssl-pkcs12
或on the web上的手册页。