[原创]Java密钥和证书管理工具keytool的用法_Tomcat, WebLogic及J2EE讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  Tomcat, WebLogic及J2EE讨论区 »
总帖数
1
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 2436 | 回复: 0   主题: [原创]Java密钥和证书管理工具keytool的用法        下一篇 
ming.chen
注册用户
等级:中尉
经验:444
发帖:8
精华:0
注册:1970-1-1
状态:离线
发送短消息息给ming.chen 加好友    发送短消息息给ming.chen 发消息
发表于: IP:您无权察看 2016-5-12 17:51:06 | [全部帖] [楼主帖] 楼主

一. 什么是keytool

    keytool是个密钥和证书管理工具。它使用户能够管理自己的公钥/私钥对及相关证书,用于(通过数字签名)自我认证或数据完整性以及认证服务。在JDK1.4以后的版本里都包含这个工具,它的位置在%JAVA_HOME%\bin\keytool.exe,如下图所示:

QQ图片20160512170651.jpg


二. keytool的用法

QQ图片20160512170901.jpg


三. 创建证书

    创建证书主要是使用“-genkeypair”,该命令的可用参数如下:

QQ图片20160512171116.jpg

例如:生成一个名称为key1的证书:

keytool -genkeypair -alias "key1" -keyalg "RSA" -keystore "key.keystore"

功能:

    创建一个别名为key1的证书,将证书存放 在名为key.keystore的密钥库中,若key.keystore不存在则创建。

参数说明:

    -genkeypair:生成一堆非对称密钥

    -alias:指定密钥对的别名,该别名是公开的;

    -keyalg:指定加密算法,本例中采用的是RAS加密算法

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

QQ图片20160512171510.jpg

注意:

    1.密钥库的密码至少 是6个字符,可以是纯数字或者字母或者数字与字母的组合等待

    2.“名字与姓氏”应该是输入域名,而不是我们的个人姓名,其他是非必填的

执行完上述命令后,在操作系统的用户目录下生成了一个“key.keystore”的文件

QQ图片20160512172557.jpg


四. 查看密钥库里面的证书

    例如:查看key.keystore这个密钥库里面的所有证书

cmd代码

keytool -list -keystore key.keystore

QQ图片20160512172835.png


五. 导出到证书文件

例如:将名为key.keystore的证书库中别名为key1的证书条目导出到证书文件key.crt中

cmd代码:

keytool -export -alias key1 -file key.crt -keystore key.keystore

QQ图片20160512173225.png

运行结果在操作系统的用户目录下,产生了一个“key.crt”的文件

QQ图片20160512173238.png


六.导入证书

例如:将名为key.crt的证书文件导入到key.cacerts的证书库中

Cmd代码:

keytool -import -keystore key_cacerts -file key.crt

QQ图片20160512173813.jpg


七.查看证书信息

例如:查看证书key.crt的信息

Cmd代码:

keytool -printcert -file "key.crt"

QQ图片20160512174028.png


八.删除密钥库中的条目

例如:删除密钥库key.keystore中别名为key1的证书条目

Cmd代码:

keytool -delete -keystore key.keystore -alias key1

QQ图片20160512174636.png


九.修改证书条目的口令

例如:将密钥库key.keystore中别名为key2的证书条目的密码修改为123456

Cmd代码:

keytool -keypasswd -alias key2 -keystore key.keystore

QQ图片20160512175055.png




赞(0)    操作        顶端 
总帖数
1
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论