Keytool工具的基本使用
前言
keytool 是个密钥和证书管理工具。它使用户能够管理自己的公钥/私钥对及相关证书,用于(通过数字签名)自我认证(用户向别的用户/服务认证自己)或数据完整性以及认证服务。它还允许用户储存他们的通信对等者的公钥(以证书形式)。下面简单介绍一下Keytool工具的几个基本命令。
创建证书库文件并生成证书
keytool -genkeypair -alias test -storetype PKCS12 -keyalg RSA -keystore test.jks -storepass 12345678 -validity 3650 -keysize 2048
参数说明:
-alias test 条目名test
-keyalg RSA 加密算法RSA
-keysize 2048 密钥长度
-keystore test.keystore 密钥文件存储路径
-validity 3650 有效期3650天,默认90天
可以在jks文件中添加多个密钥,只需条目名不同即可
如:创建test1并指定证书开始时间2020年5月1日,有效期1年
keytool -genkeypair -alias test1 -storetype PKCS12 -keyalg RSA -keystore ./test.jks -storepass 12345678 -startdate 2020/05/01 -validity 365
创建test2并指定使用者为cn=test2,o=test2,c=cn
keytool -genkeypair -alias test2 -storetype PKCS12 -keyalg RSA -keystore ./test.jks -storepass 12345678 -dname "cn=test2,o=test2,c=cn"
查看证书库
通过keytool -list查看证书库中内容(可通过-alias指定显示哪个条目)
keytool -list -keystore test.jks -storepass 12345678
keytool -list -rfc -keystore test.jks -storepass 12345678
以RFC形式输出
keytool -list -v -keystore test.jks -storepass 12345678
详细输出
删除证书条目
keytool -delete -keystore test.jks -storepass 12345678 -alias test2
再次查看证书库可以看到test2条目已经没有了
导出证书
keytool -exportcert -alias test -keystore test.jks -storepass 12345678 -file test.cer
该证书为一张自签名证书
查看证书
keytool -printcert -file test.cer
keytool -printcert -rfc -file test.cer
keytool -printcert -v -file test.cer
生成证书请求
keytool -certreq -alias test1 -keystore test.jks -storepass 12345678 -file test1.csr
利用csr证书请求签发证书
keytool -gencert -keystore test.jks -storepass 12345678 -alias test -infile test1.csr -outfile test1.cer
可以看到test1的颁发者是test
导入证书
可以将颁发的test1.cer导入证书库将原来的test1覆盖
keytool -importcert -file test1.cer -alias test1 -keystore test.jks -storepass 12345678
以上为Keytool工具的基本用法
Keytool常用命令
Keytool工具综合使用
利用Keytool生成多级证书链
之前的博客已经记录,地址如下:https://www.cnblogs.com/werr370/p/14678983.html
利用Keytool实现tomcat双向SSL连接
之前的博客已经记录,地址如下:https://www.cnblogs.com/werr370/p/14637351.html
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 在鹅厂做java开发是什么体验
· 百万级群聊的设计实践
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
· 永远不要相信用户的输入:从 SQL 注入攻防看输入验证的重要性
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析