JDK keytool工具使用【三分钟了解】

版权声明:文章来源网络,版权归作者本人所有,如侵犯到原作者权益,请与我们联系删除或授权事宜,如果有误,请联系作者更改,谢谢,本人微信:void666666 https://blog.csdn.net/wt520it/article/details/86551163
恭喜自己,多方联调完毕,下周一上线,还不知道遇到啥问题问题呢,到时候看吧这个是帮个个平台生成的证书(主要是为了统一,到时候方便管理),直接上干货,其实证书以及秘钥的使用方法比较多的,根据我自己的开发经验哈,有的是将对方的私钥导入到自己的公钥,还有的就是公钥,私钥分开。

生成证书及使用方法(主要是通过JDK自带的keytool工具:)

进入JDK的bin目录下 : cmd 开始执行命令
生成私钥

keytool -genkey -alias myprikey -keyalg RSA -keystore D:/dkeystore.keystore -keysize 2048 -validity 3650

根据私钥生成公钥(证书)

keytool -export -alias mykey -keystore D:/dkeystore.keystore -file D:/dpublickey.cer

jks转换成pkcs12 (jdk默认生成keystore格式是jks,jks一般是商业格式)

keytool -importkeystore -srckeystore D:/dkeystore.keystore -srcstoretype JKS -deststoretype PKCS12 -destkeystore D:/pkcs13.keystore

将别人的公钥导入自己的私钥里边

keytool -importcert -alias aaa -file D:/aaa.publickey.cer -keystore D:/bbb.keystore
输入BIM密钥库口令回车后,输入y信任此证书后回车完成导入

查看导入过密钥证书列表

keytool -list -keystore d:/bbb.keystore
输入密钥库口令后,会显示包含的条目信息,这里会多一条aaa的trustedCertEntry条目。

-----------------------------参数详解----------------------------

-genkey 在用户主目录中创建一个默认文件".keystore",还会产生一个mykey的别名,mykey中包含用户的公钥、私钥和证书
-alias 产生别名
-keystore 指定密钥库的名称(产生的各类信息将不在.keystore文件中
-keyalg 指定密钥的算法
-validity 指定创建的证书有效期多少天
-keysize 指定密钥长度
-storepass 指定密钥库的密码
-keypass 指定别名条目的密码
-dname 指定证书拥有者信息 例如: “CN=sagely,OU=atr,O=szu,L=sz,ST=gd,C=cn”
-list 显示密钥库中的证书信息 keytool -list -v -keystore sage -storepass …
-v 显示密钥库中的证书详细信息
-export 将别名指定的证书导出到文件 keytool -export -alias caroot -file caroot.crt
-file 参数指定导出到文件的文件名
-delete 删除密钥库中某条目 keytool -delete -alias sage -keystore sage
-keypasswd 修改密钥库中指定条目口令 keytool -keypasswd -alias sage -keypass … -new … -storepass … -keystore sage
-import 将已签名数字证书导入密钥库 keytool -import -alias sage -keystore sagely -file sagely.crt
导入已签名数字证书用keytool -list -v 以后可以明显发现多了认证链长度,并且把整个CA链全部打印出来。

在实战中学习,在快乐中成长

猜你喜欢

转载自blog.csdn.net/wt520it/article/details/86551163