JDK中密钥跟证书管理工具Keytool常用命令

JDK中密钥和证书管理工具Keytool常用命令
keytool JAVA是个密钥和证书管理工具。它使用户能够管理自己的公钥/私钥对及相关证书,用于(通过数字签名)自我认证(用户向别的用户/服务认证自己)或数据完整性以及认证服务。它还允许用户储存他们的通信对等者的公钥(以证书形式)。

-genkey 在用户的主目录中创建一个默认文件".keystore" , 还会产生一个mykey 的别名, mykey 中包含用户的公钥、私钥和证书, 在windows系统下,用户的主目录指的一般是"C:/Documents and Settings/计算机用户名", 这个是不会变的。例如我的主目录:"C:/Documents and Settings/holdbelief"。
-alias 产生别名
-keystore 指定密钥库的名称(产生的各类信息将不在.keystore 文件中)
-keyalg 指定密钥的算法
-validity 指定创建的证书的有效时间
-keysize 指定密钥长度
-storepass 指定密钥库的密码
-keypass 指定别名条目的密码
-dname 指定证书拥有者信息,例如:"CN=firstName,OU=org,O=bj,L=bj,ST=gd,C=cn"
-list 显示密钥库中的证书信息,例如:keytool -list -v -keystore 别名 -storepass ....
-v 显示密钥库中的证书信息
-export 将别名指定的证书导入到文件,例如:keytool -export -alias 别名 -file 文件名.crt
-file 参数指定导出到文件的文件名
-delete 删除密钥库中某条目,例如:keytool -delete -alias 别名 -keystore sage(keystore名字)
-keypasswd 修改密钥库中指定条目口令,例如:keytool -keypasswd -alias 别名 -keypass ... -new ... -storepass -keystore 别名
import 将已签名的数字证书导入密钥库,例如:keytool -import -alias 别名 -keystore 证书名 -file 文件名(可以加.crt 后缀)


命令:

生成证书:
          keytool -genkey -keystore 文件名(可包含路径) -keyalg rsa -alias 别名 -validaty 有效期

查看证书:
          keytool -list -v -keystore 路径

把证书导入到文件
          keytool -export -alias 别名 -keystore 证书名 -rfc -file 文件名(可包含路径)

修改密码
          keytool -keypasswd -alias 别名 -keypass 旧密码 -new 新密码

导出证书到新的TrustStore
          keytool -import -alias 别名 -file 文件名 -keystore truststore