如何生成jsk自签证书

jks 全称java key store ,通常是java 常用的证书文件,一般jks 证书文件包含私钥以及签名的cert一起组成的;想要生成jks证书,一般无特殊要求的情况下,可以通过使用keytool和openssl 来完生成jks证书文件

当前环境centos 7操作系统,且环境已部署有openssl和keytool
如未部署以上服务,请先自行使用yum部署即可

创建 JKS 文件

执行如下指令

keytool -genkeypair -alias ipm -keyalg RSA -keypass 123456 -storepass 123456 -keyalg RSA -keysize 2048 -validity 3650 -keystore ipm.jks

参数注解:
genkeypair 生成密钥对
alias 别名
keyalt 采用公钥算法,默认是DSA
keypass 私钥加解密密码
storepass 密钥库
keysize 密钥长度(DSA算法对应的默认算法是sha1withDSA,不支持2048长度,此时需指定RSA)
keystore 指定keystore文件 如ipm.jks
执行结果

 在JDK1.7后的版本生成的jsk文件后都会提示转为使用PKCS12行业标准格式(根据实际需要进行,非必须)

转换为p12格式

keytool -importkeystore -srckeystore ipm.jks -destkeystore ipm.p12 -deststoretype pkcs12

执行结果:

 同时如果有其他要求需要装换为其他格式或者提取jks密钥和证书的可以参考如下:
转换为pem格式

转换为pem格式这里就不能使用keytool工具进行操作了,需要使用openssl工具

执行如下:

openssl pkcs12 -in ipm.p12 -out ipm.pem -nodes

执行结果:

 从 JKS 密钥库文件导出提取私钥

需要提取私钥是无法直接从 jks文件中获取到私钥的,需要通过openssl将jks文件转换成pfx格式

转换pfx格式

keytool -v -importkeystore -srckeystore ipm.jks -srcstoretype jks -srcstorepass 123456 -destkeystore ipm.pfx -deststoretype pkcs12 -deststorepass 123456 -destkeypass 123456

 执行结果:

然后再进行私钥的提取,执行如下:

openssl pkcs12 -in ipm.pfx -nocerts -nodes -out ipm.key

执行结果:

从 JKS 密钥库文件导出公共证书

 执行如下:

keytool -export -alias ipm -file ipm.cer -keystore ipm.jks

执行结果:

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值