天天看点

keytool工具使用说明

keytool常用命令

  • -genkey 在用户主目录中创建一个默认文件".keystore",还会产生一个mykey的别名,mykey中包含用户的公钥、私钥和证书
  • -alias 产生别名
  • -keystore 指定密钥库的名称(产生的各类信息将不在.keystore文件中
  • -keyalg 指定密钥的算法
  • -validity 指定创建的证书有效期多少天
  • -keysize 指定密钥长度
  • -storepass 指定密钥库的密码
  • -keypass 指定别名条目的密码
  • -dname 指定证书拥有者信息 例如: "CN=TF, OU=flight, O=travelfusion, L=Wharf Road, ST=LONDON, C=UK"
  • -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生成证书

产生密钥文件 mykeystore

keytool -genkey -alias doristest -keysize 1024 -keypass doristest -keystore mykeystore -storepass doristest -dname "CN=TF, OU=flight, O=travelfusion, L=Wharf Road, ST=LONDON, C=UK"
           

导出密钥 用证书的形式保存

keytool -export -alias doristest -file testcert.cer -keystore mykeystore -storepass doristest
           

把证书库mykeystore中的别名为doristest的证书导出到testcert.cer证书文件中,它包含证书主体的信息及证书的公钥,不包括私钥,可以公开

导入证书 将keystore导入到证书中

keytool -import -alias doristest  -file testcert.cer -keystore cacerts。
           

这里是向java默认的证书cacerts导入证书文件testcert.cer

显示证书

keytool -list -v -alias doristest -keystore mykeystore -storepass doristest
           

导入已签名数字证书用keytool -list -v 以后可以明显发现多了认证链长度,并且把整个CA链全部打印出来

删除证书

keytool -delete -alias doristest -keystore mykeystore
           

证书条目口令的修改

Keytool -keypasswd -alias doristest -keypass doristest -new test -storepass 888888 -keystore mykeystore
           

这一行命令以非交互式的方式修改库中别名为 doristest 的证书的密码为新密码 test,行中的 doristest 是指该条证书的原密码, 888888 是指证书库的密码。

版权声明:本文为CSDN博主「weixin_33722405」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/weixin_33722405/article/details/92501097