java keytool使用

来源:互联网 发布:js改变input的宽度 编辑:程序博客网 时间:2024/06/14 08:50
在使用CAS需要生成证书,就要使用java工具 keytool

首先在path路径中加上
%JAVA_HOME%/bin
以方便在任何路径下使用keytool

在cmd中输入keytool不带任何参数,将显示该命令的帮助信息。

keytool 用法:
Java代码  收藏代码
  1. -certreq     [-v] [-protected]  
  2.              [-alias <别名>] [-sigalg <sigalg>]  
  3.              [-file <csr_file>] [-keypass <密钥库口令>]  
  4.              [-keystore <密钥库>] [-storepass <存储库口令>]  
  5.              [-storetype <存储类型>] [-providername <名称>]  
  6.              [-providerclass <提供方类名称> [-providerarg <参数>]] ...  
  7.              [-providerpath <路径列表>]  
  8.   
  9. -changealias [-v] [-protected] -alias <别名> -destalias <目标别名>  
  10.              [-keypass <密钥库口令>]  
  11.              [-keystore <密钥库>] [-storepass <存储库口令>]  
  12.              [-storetype <存储类型>] [-providername <名称>]  
  13.              [-providerclass <提供方类名称> [-providerarg <参数>]] ...  
  14.              [-providerpath <路径列表>]  
  15.   
  16. -delete      [-v] [-protected] -alias <别名>  
  17.              [-keystore <密钥库>] [-storepass <存储库口令>]  
  18.              [-storetype <存储类型>] [-providername <名称>]  
  19.              [-providerclass <提供方类名称> [-providerarg <参数>]] ...  
  20.              [-providerpath <路径列表>]  
  21.   
  22. -exportcert  [-v] [-rfc] [-protected]  
  23.              [-alias <别名>] [-file <认证文件>]  
  24.              [-keystore <密钥库>] [-storepass <存储库口令>]  
  25.              [-storetype <存储类型>] [-providername <名称>]  
  26.              [-providerclass <提供方类名称> [-providerarg <参数>]] ...  
  27.              [-providerpath <路径列表>]  
  28.   
  29. -genkeypair  [-v] [-protected]  
  30.              [-alias <别名>]  
  31.              [-keyalg <keyalg>] [-keysize <密钥大小>]  
  32.              [-sigalg <sigalg>] [-dname <dname>]  
  33.              [-validity <valDays>] [-keypass <密钥库口令>]  
  34.              [-keystore <密钥库>] [-storepass <存储库口令>]  
  35.              [-storetype <存储类型>] [-providername <名称>]  
  36.              [-providerclass <提供方类名称> [-providerarg <参数>]] ...  
  37.              [-providerpath <路径列表>]  
  38.   
  39. -genseckey   [-v] [-protected]  
  40.              [-alias <别名>] [-keypass <密钥库口令>]  
  41.              [-keyalg <keyalg>] [-keysize <密钥大小>]  
  42.              [-keystore <密钥库>] [-storepass <存储库口令>]  
  43.              [-storetype <存储类型>] [-providername <名称>]  
  44.              [-providerclass <提供方类名称> [-providerarg <参数>]] ...  
  45.              [-providerpath <路径列表>]  
  46.   
  47. -help  
  48.   
  49. -importcert  [-v] [-noprompt] [-trustcacerts] [-protected]  
  50.              [-alias <别名>]  
  51.              [-file <认证文件>] [-keypass <密钥库口令>]  
  52.              [-keystore <密钥库>] [-storepass <存储库口令>]  
  53.              [-storetype <存储类型>] [-providername <名称>]  
  54.              [-providerclass <提供方类名称> [-providerarg <参数>]] ...  
  55.              [-providerpath <路径列表>]  
  56.   
  57. -importkeystore [-v]  
  58.              [-srckeystore <源密钥库>] [-destkeystore <目标密钥库>]  
  59.              [-srcstoretype <源存储类型>] [-deststoretype <目标存储类型>]  
  60.              [-srcstorepass <源存储库口令>] [-deststorepass <目标存储库口令>]  
  61.              [-srcprotected] [-destprotected]  
  62.              [-srcprovidername <源提供方名称>]  
  63.              [-destprovidername <目标提供方名称>]  
  64.              [-srcalias <源别名> [-destalias <目标别名>]  
  65.                [-srckeypass <源密钥库口令>] [-destkeypass <目标密钥库口令>]]  
  66.              [-noprompt]  
  67.              [-providerclass <提供方类名称> [-providerarg <参数>]] ...  
  68.              [-providerpath <路径列表>]  
  69. -keypasswd   [-v] [-alias <别名>]  
  70.              [-keypass <旧密钥库口令>] [-new <新密钥库口令>]  
  71.              [-keystore <密钥库>] [-storepass <存储库口令>]  
  72.              [-storetype <存储类型>] [-providername <名称>]  
  73.              [-providerclass <提供方类名称> [-providerarg <参数>]] ...  
  74.              [-providerpath <路径列表>]  
  75.   
  76. -list        [-v | -rfc] [-protected]  
  77.              [-alias <别名>]  
  78.              [-keystore <密钥库>] [-storepass <存储库口令>]  
  79.              [-storetype <存储类型>] [-providername <名称>]  
  80.              [-providerclass <提供方类名称> [-providerarg <参数>]] ...  
  81.              [-providerpath <路径列表>]  
  82.   
  83. -printcert   [-v] [-file <认证文件>]  
  84.   
  85. -storepasswd [-v] [-new <新存储库口令>]  
  86.              [-keystore <密钥库>] [-storepass <存储库口令>]  
  87.              [-storetype <存储类型>] [-providername <名称>]  
  88.              [-providerclass <提供方类名称> [-providerarg <参数>]] ...  
  89.              [-providerpath <路径列表>]  


帮助信息已经很详细了。

下面说明一下具体使用:
Java代码  收藏代码
  1. keytool -genkey -keyalg RSA -alias 名字  

如果不带-keystore参数,默认将存放在当前用户目录下的".keystore"中,切换,因此可以指定存放路径
Java代码  收藏代码
  1. keytool -genkey -keyalg RSA -alias 名字 -keystore d:/文件名  


导出证书:

Java代码  收藏代码
  1. keytool -export -alias 名字 -file 路径/证书文件.crt   


这里的名字和上面的名字都是一样的。

导入到证书仓库:
Java代码  收藏代码
  1. keytool -import -alias 名字 -file 路径/证书文件.crt -keystore %JAVA_HOME%/jre/lib/security/cacerts -storepass changeit   


特别注意这里的-storepass密码默认是changeit。

其他命令参数操作请看帮助或参考

http://linliangyi2007.iteye.com/blog/165307
http://npsajax.iteye.com/blog/178572
0 0
原创粉丝点击