keytool 用法总结

内容概览:

keytool的几个常用的命令。

1.创建证书

2.查看证书库

3.导出证书文件

4.导入证书的信息

5.查看证书信息

6.删除**库中的条目

7.修改证书条目的口令

--------------------------------------------------------------------------------------

预备知识:

keytool的概念

SUN公司提供了制作证书的工具keytool。

      在JDK 1.4以后的版本中都包含了这一工具,它的位置为<JAVA_HOME>\bin\keytool.exe。

--------------------------------------------------------------------------------------

主要内容:

1.创建证书

Cmd代码 keytool 用法总结 keytool 用法总结keytool 用法总结
  1. keytool -genkeypair -alias "test1" -keyalg "RSA" -keystore "test.keystore"  
keytool -genkeypair -alias "test1" -keyalg "RSA" -keystore "test.keystore"

keytool 用法总结

说明:

**库密码为testtest

证书条目密码为testtest1,若别名为test2则密码为testtest2

这样为个不乱

功能:

创建一个别名为test1的证书条目,该条目存放在名为test.keystore的**库中,若test.keystore**库不存在则创建。

参数说明:

-genkeypair:生成一对非对称**;

-alias:指定**对的别名,该别名是公开的;
-keyalg:指定加密算法,本例中的采用通用的RAS加密算法;

-keystore:**库的路径及名称,不指定的话,默认在操作系统的用户目录下生成一个".keystore"的文件

注意:

1.“名字与姓氏”应该是域名,若输成了姓名,和真正运行的时候域名不符,会出问题;

2.再次输入密码,第一次输入的是**库(keystore)的密码,第二次输入的是证书条目的密码

3.这里所说的证书库和**库是等同的(个人观点)

为了测试需要,这里再创建两个别名为test2和test3的证书条目在test.keystore**库中,代码如下:

Cmd代码 keytool 用法总结 keytool 用法总结keytool 用法总结
  1. keytool -genkeypair -alias "test2" -keyalg "RSA" -keystore "test.keystore"  
  2. keytool -genkeypair -alias "test3" -keyalg "RSA" -keystore "test.keystore"  
keytool -genkeypair -alias "test2" -keyalg "RSA" -keystore "test.keystore"
keytool -genkeypair -alias "test3" -keyalg "RSA" -keystore "test.keystore"

 

2.查看证书库

Cmd代码 keytool 用法总结 keytool 用法总结keytool 用法总结
  1. keytool -list -keystore test.keystore  
keytool -list -keystore test.keystore

keytool 用法总结

功能:

查看名为test.keystore的证书库中的证书条目

3.导出到证书文件

Cmd代码 keytool 用法总结 keytool 用法总结keytool 用法总结
  1. keytool -export -alias test1 -file test.crt -keystore test.keystore  
keytool -export -alias test1 -file test.crt -keystore test.keystore

keytool 用法总结

功能:

将名为test.keystore的证书库中别名为test1的证书条目导出到证书文件test.crt中

4.导入证书的信息

Cmd代码 keytool 用法总结 keytool 用法总结keytool 用法总结
  1. keytool -import -keystore test_cacerts -file test.crt   
keytool -import -keystore test_cacerts -file test.crt 

 keytool 用法总结

功能:

将证书文件test.crt导入到名为test_cacerts的证书库中,

5.查看证书信息

Cmd代码 keytool 用法总结 keytool 用法总结keytool 用法总结
  1. keytool -printcert -file "test.crt"   
keytool -printcert -file "test.crt" 

 keytool 用法总结

功能:

查看证书文件test.crt的信息

6.删除**库中的条目

删除前查看**库test.keysote中的证书条目

Cmd代码 keytool 用法总结 keytool 用法总结keytool 用法总结
  1. keytool -list -keystore test.keystore  
keytool -list -keystore test.keystore

删除**库test.keystore中别名为test2的证书条目

Cmd代码 keytool 用法总结 keytool 用法总结keytool 用法总结
  1. keytool -delete -keystore test.keystore -alias test2  
keytool -delete -keystore test.keystore -alias test2

删除后查看**库test.keystore中的证书条目

Cmd代码 keytool 用法总结 keytool 用法总结keytool 用法总结
  1. keytool -list -keystore test.keystore  
keytool -list -keystore test.keystore

keytool 用法总结

7.修改证书条目的口令

交互的方式

Cmd代码 keytool 用法总结 keytool 用法总结keytool 用法总结
  1. keytool -keypasswd -alias test1 -keystore test.keystore  
keytool -keypasswd -alias test1 -keystore test.keystore

 keytool 用法总结

功能:

将**库test.keystore中别名为test1的证书条目的密码修改为testtesttest1

非交互方式

Cmd代码 keytool 用法总结 keytool 用法总结keytool 用法总结
  1. keytool -keypasswd -alias test1 -keypass testtesttest1 -new testtest1 -storepass testtest -keystore test.keystore  
keytool -keypasswd -alias test1 -keypass testtesttest1 -new testtest1 -storepass testtest -keystore test.keystore

功能:

将**库test.keystore中别名为test1的证书条目的密码修改为testtest1