通常我们得到的SSL证书至少包含三个文件:

ca.pem:CA根证书

cert.pem:ca.pem签发的用户证书

cert.key:用户私钥

视情况可能还有中间CA的证书。

生成JKS文件需要用到Java中的keytool工具,用来生成KeyStore文件。而keytool需要P12格式,因而需要用到openssl将PEM转换为P12。P12同时包含了证书/私钥,通常由密码保护。openssl的pcs12命令参数如下:

OpenSSL的PKCS12命令

我们可以利用该命令把PEM格式的证书和私钥转换成P12格式:

openssl pkcs12 -export -out cert.p12 -in cert.pem -inkey cert.key -passout pass:yourpassword

1

opensslpkcs12-export-outcert.p12-incert.pem-inkeycert.key-passoutpass:yourpassword

请注意,我们所用的不是-certfile参数:

使用OpenSSL将PEM格式转换为P12格式

然后可以使用命令:

openssl pkcs12 -info -in cert.p12

1

opensslpkcs12-info-incert.p12

来查看包含了证书和私钥的P12文件:

使用OpenSSL查看P12文件

之后,我们可以使用Java中的keytool工具:

Java中的秘钥和管理工具:keytool工具

来生成JKS文件:

keytool.exe -importkeystore -srckeystore cert.p12 -srcstoretype PKCS12 -srcstorepass yourpassword -destkeystore cert.jks -deststorepass yourpassword

1

keytool.exe-importkeystore-srckeystorecert.p12-srcstoretypePKCS12-srcstorepassyourpassword-destkeystorecert.jks-deststorepassyourpassword

使用keytool将p12文件转换为jks文件

其中的参数为:

keytool的importkeystore参数

请注意,keytool执行时的warning中的JCEKS(实际转换后变成了同时兼容JKS和JCEKS两种的格式)。

我们可以使用keytool的list参数查看JKS中的证书和秘钥:

keytool.exe -list -keystore cert.jks

keytool.exe -list -rfc -keystore cert.jks

1

2

keytool.exe-list-keystorecert.jks

keytool.exe-list-rfc-keystorecert.jks

使用keytool的list参数查看JKS中的证书和秘钥

转载时请保留出处,违法转载追究到底:进城务工人员小梅 » PEM证书转JKS

Java jks转换pem,PEM证书转JKS相关推荐

  1. Android签名证书 keystore jks pem x509

    Android签名证书 背景 因业务需求,经常与系统厂商打交道,大多需要厂商开放root权限 目前获取系统权限的总结有三种方式(均有实际应用) platform签名 root固件 (有su) 调用厂商 ...

  2. SSL证书格式PEM、CER、JKS、PKCS12

    一.主流的SSL证书格式 根据不同的服务器以及服务器的版本,我们需要用到不同的证书格式,就市面上主流的服务器来说,大概有以下格式: DER.CER,文件是二进制格式,只保存证书,不保存私钥. PEM, ...

  3. HTTPS证书转换成PEM格式

    PEM 格式的证书文件(*.pem)一般为以下格式: 注意:PEM 格式证书文件可用 notepad++ 等文本编辑器打开. CER / CRT 格式证书转换为 PEM 格式 对于 CER / CRT ...

  4. 如何将.crt的ssl证书文件转换成.pem格式

    如何将.crt的ssl证书文件转换成.pem格式 摘自:https://www.landui.com/help/show-8127 2018-07-04 14:55:41 2158次 准备:有一台安装 ...

  5. 证书 keystore 转换为 pem再提取 证书/私钥

    今天遇到一个问题,让我这边提供ssl证书的 pem和key.但是查看了tomcat的配置发现只有一个tomcat.keystore文件 配置如下 <Connector port="44 ...

  6. linux cer证书转为jks,常见SSL证书格式介绍以及SSL证书格式转化方法

    我们大部分站长使用的SSL证书一般都是.CRT..KEY 这样子的文件,没错这个都是我们常用的Linux服务器Nginx环境的证书文件.不管我们是购买的付费SSL证书,还是使用的免费SSL证书看到的证 ...

  7. Nginx证书配置:cer文件和jks文件转nginx证书.crt和key文件

    Nginx证书配置:cer文件和jks文件转nginx证书.crt和key文件 环境 步骤 1.利用JDK的keytool工具生成密钥库和证书(以下代码片段是一个bat脚本) 1.1 查看jks文件中 ...

  8. iOS:苹果推送(APNS)-pem/p12证书的生成

        pem文件是服务器向苹果服务器做推送时候需要的文件,主要是做服务器的小伙伴们要用,下面介绍一下pem文件的生成. 打开KeychainAccess,在Certificates里面找到上篇文章中 ...

  9. 【SSL】java keytool工具创建自己的(localhost)(JKS)证书库

    前言 java : jdk1.8 证书库:用于在本地测试的证书库,域名为:locahost. 证书库密码:密码为"localhost". 证书库位置:当前路径 证书库文件名:loc ...

  10. crt格式证书转pem格式证书

    我是用IE浏览器间接转换的,先把crt格式证书导入IE浏览器,再导出来,这时候成了cer格式证书,再用命令把cer格式证书转换pem格式证书,记录一下过程. 1.打开IE浏览器的齿轮图标(右上角)直接 ...

最新文章

  1. 网站开发技巧参考大全
  2. 3步理清Python数据分析关键点,新手必看
  3. mysql 5.0 修改字符集_修改及查看mysql数据库的字符集
  4. orcale 之 集合操作
  5. ORACLE SQL总结六:管理方案对象
  6. mysql php 连接查询_php如何连接mysql并查询数据
  7. node-sass 安装失败 win32-x64-57_binding.node
  8. Windows 10 计算器全新升级,支持三角函数运算
  9. 分页存储过程--From:桌面备份 - sql2005新功能.docx
  10. cogs 1111. 最短路
  11. 39个C语言小程序(适合新手)
  12. win10不用密码登录及不显示“要使用本计算机,用户必须输入用户名和密码”的解决办法
  13. N720实现4G的TCP连接,数据上云的方法
  14. 【电脑录制屏】如何使用bandicam录游戏 设置图文教程
  15. HWADDR配置错误导致network重启失败处理
  16. linux 卸载mono,Linux系统(centos7.6)安装mono3.8
  17. 网络传输的两种方式——同步传输和异步传输的区别
  18. SAP QA11 检验决策并过帐 BAPI
  19. xml转pdf xsl取值问题 语法问题
  20. PHP开发工程师(初级,中级,高级)

热门文章

  1. 常微分方程matlab求解英文文献,常微分方程及其matlab求解毕业论文设计
  2. processing交互应用——双人对战游戏
  3. Win10 【TITAN Xp】和【TITAN RTX】-【TensorFlow】环境简单总结
  4. Ubuntu18.04+TITAN XP+anaconda+cuda10+cudnn+pytorch
  5. json解析教程(1)程序员不得不掌握的数据格式json
  6. android octet stream,Java MimetypesFileTypeMap始终在Android模拟器上返回application/octet-stream...
  7. 小米路由器 mini 刷 Padavan 详细教程
  8. 【ERROR】ValueError: Of the four parameters: start, end, periods, and freq, exactly three must be spec
  9. DDR2(SDRAM)初始化 28个步骤总结
  10. Go语言操作sqllite