java keytool下载_Java中Keytool工具的使用总结(一)
keytool是一个Java数据证书的管理工具,keytool将密钥(key)和证书(certificates)存在一个称为keystore的文件中在keystore里,包含两种数据:
(1)密钥实体(Key entity)
a、密钥(secret key)
b、私钥和配对公钥(采用非对称加密)。公钥(Public Key)与私钥(Private Key)是通过一种算法得到的一个密钥对(即一个公钥和一个私钥),公钥是密钥对中公开的部分,私钥则是非公开的部分。
(2)可信任的证书实体(trusted certificate entries)
a、只包含公钥
注意:ailas(别名)每个keystore都关联这一个独一无二的alias(别名),这个alias通常不区分大小写
JDK中keytool常用命令
-genkey
在用户主目录中创建一个默认文件".keystore",还会产生一个mykey的别名,mykey中包含用户的公钥、私钥和证书。在没有指定生成位置的情况下,keystore会存在用户系统默认目录。
实例:不指定keystore文件的存储位置,如下:D:\>keytool -genkey
-alias aliasTest
-keyalg RSA
-keysize 1024
-keypass aaaaaa
-storepass aaaaaa
-dname "cn=zhangsan,ou=,o=,l=Hangzhou,st=,c="
在windows7中将会在“C:\用户\当前用户”目录下面存在一个.keystore文件
-alias
产生别名。默认为:mykey。实例:在当目录下面创建一个keystore文件,如下:D:\>keytool -genkey
-alias testAlias
-keypass aaaaaa
-keyalg RSA
-keysize 1024
-validity 365
-keystore test.keystore
-storepass aaaaaa
-dname "CN=Zhangsan,OU=,O=,L=Hangzhou,ST=,C="
在windows的dos窗口执行该语句后,当前目录下面应该存在test.keystore文件。
-keystore
指定密钥库的名称(产生的各类信息将放在.keystore文件中)。默认放在用户主目录中名为.keystore的文件。
-keyalg
指定密钥的算法。如:RSA、DSA等。默认采用DSA算法。
-validity
指定创建的证书有效期多少天。默认为90天
-keysize
指定密钥长度。默认为1024位
-storepass
指定密钥库的密码(获取keystore信息所需的密码)
-keypass
指定别名条目的密码(私钥的密码)
-dname
指定证书拥有者信息 例如:"CN=名字与姓氏,OU=组织单位名称,O=组织名称,L=城市或区域名称,ST=州或省份名称,C=单位的两字母国家代码"
-list
显示密钥库中的证书信息。实例:显示E目录下面的my.keystore文件中的证书信息,如:D:\>keytool -list -keystore test.keystore -storepass aaaaaa
密钥库类型: JKS
密钥库提供方: SUN
您的密钥库包含 1 个条目
testalias, 2015-12-7, PrivateKeyEntry,
证书指纹 (SHA1): C3:E9:34:D2:A2:9C:92:88:12:92:5A:A9:AC:D8:B9:B1:BA:52:53:E1
-v
显示密钥库中的证书详细信息。实例:使用-list -v显示证书的详细信息。如下:D:\>keytool -list -v -keystore test.keystore -storepass aaaaaa
密钥库类型: JKS
密钥库提供方: SUN
您的密钥库包含 1 个条目
别名: testalias
创建日期: 2015-12-7
条目类型: PrivateKeyEntry
证书链长度: 1
证书[1]:
所有者: CN=Zhangsan, OU=, O=, L=Hangzhou, ST=, C=
发布者: CN=Zhangsan, OU=, O=, L=Hangzhou, ST=, C=
序列号: 6fcee440
有效期开始日期: Mon Dec 07 20:33:08 CST 2015, 截止日期: Tue Dec 06 20:33:08 CST 2016
证书指纹:
MD5: FD:65:55:14:E5:0B:E5:9F:9A:70:5F:F4:7E:84:38:B3
SHA1: C3:E9:34:D2:A2:9C:92:88:12:92:5A:A9:AC:D8:B9:B1:BA:52:53:E1
SHA256: 33:D1:D8:EE:B2:67:59:BB:E8:2B:8F:5C:07:78:89:CA:7C:E5:FE:AB:4F:17:46:3E:84:38:88:30:C4:0B:1A:B2
签名算法名称: SHA256withRSA
版本: 3
扩展:
#1: ObjectId: 2.5.29.14 Criticality=false
SubjectKeyIdentifier [
KeyIdentifier [
0000: 2D FE E9 75 8E B9 1F 81 4B 3F 8E D0 ED 28 F1 13 -..u....K?...(..
0010: FB 7D B9 87 ....
]
]
*******************************************
*******************************************
注意:
-v参数要配合-list一起使用,如下将会出现错误:D:\>keytool -v -keystore test.keystore -storepass aaaaaa
用法错误: 没有提供命令
密钥和证书管理工具
...
-export
将别名指定的证书导出到文件。格式如下:
keytool -export -alias 需要导出的别名
-keystore 指定keystore
-file 指定导出的证书位置及证书名称
-storepass 密码
实例:将test.keystore中别名为testAlias的导出一个test.crt证书。如下:D:\>keytool -export -alias testAlias
-keystore test.keystore
-file test.crt
-storepass aaaaaa
存储在文件 中的证书
-file
参数指定导出到文件的文件名。默认读时为标准输入,写时为标准输出
-delete
删除密钥库中某条目。格式如下:
keytool -delete
-alias 指定需删除的别
-keystore 指定keystore
实例:从test.keystore中删除别名testAlias的密钥条目,如下:D:\>keytool -delete
-alias testAlias
-keystore test.keystore
-storepass aaaaaa
如果没有任何提示,则表示你删除成功了。如果再次执行该语句,则会抛出如下错误信息:keytool 错误: java.lang.Exception: 别名 不存在
这是因为别名为testAlias的已经被删除了。
-storepass
密码
-printcert
查看导出的证书信息。如:keytool -printcert -file yushan.crt
-keypasswd
修改密钥库中指定条目口令。如:
keytool -keypasswd
-alias 需修改的别名
-keypass 旧密码
-new 新密码
-storepass keystore密码
-keystore sage
-storepasswd
修改keystore口令。如:
keytool -storepasswd
-keystore e:\yushan.keystore(需修改口令的keystore)
-storepass 123456(原始密码)
-new yushan(新密码)
-import
将已签名数字证书导入密钥库。如:
keytool -import
-alias 指定导入条目的别名
-keystore 指定keystore
-file 需导入的证书
到这里就基本上将keytool工具的每个参数的含义大概讲解了一下,下面你可以参考“Java中Keytool工具的使用总结(二)”来学习怎样使用keytool来生成我们需要的keystore文件和证书。祝你:学习成功!!!^_^
java keytool下载_Java中Keytool工具的使用总结(一)相关推荐
- java keytool 代码_java中Keytool的使用总结
java中Keytool的使用总结 以前用过几次这个东东,但每次都重新查询一次.本文原始出处是这里 . ------------------------------------------------ ...
- java utils类_Java中StringUtils工具类的一些用法实例
StringUtils 方法的操作对象是 java.lang.String 类型的对象,是 JDK 提供的 String 类型操作方法的补充,并且是 null 安全的(即如果输入参数 String 为 ...
- java设计画图工具下载_java 版画图工具
java 版画图工具 java 2020-8-14 下载地址 https://www.codedown123.com/35571.html java 版画图工具可选 形状 颜色 画笔等等 资源下载此资 ...
- java jceks 密钥_Java中不同类型的密钥库(Keystore) – 概述
阅读: 877 密钥库是用于存储加密密钥和证书的存储工具 ,最常用于SSL通信,以证明服务器和客户端的身份.密钥库可以是文件或硬件设备.有三种类型的条目可以存储在密钥库中,取决于密钥库的类型,这三种类 ...
- java多线程下载_Java实现多线程下载,支持断点续传
多线程下载及断点续传的实现是使用 HTTP/1.1 引入的 Range 请求参数,可以访问Web资源的指定区间的内容.虽然实现了多线程及断点续传,但还有很多不完善的地方. 包含四个类: Downloa ...
- java 微型数据库_Java 9代码工具:使用Java微型基准测试工具的实践会话
java 微型数据库 用肉眼看,基准测试似乎只是确定执行某些代码需要花费多长时间的简单问题. 但是,通常情况下,这是幼稚的方法. 提供具有准确和可重复结果的有意义的基准并非易事. 在本文中,我们将向您 ...
- java 序列化实例_Java中的序列化与反序列化实例
创建的字节流与平台无关.因此,在一个平台上序列化的对象可以在另一个平台上反序列化. 为了使Java对象可序列化,我们实现java.io.Serializable可序列化接口. ObjectOutput ...
- java 字符串总结_Java中字符串(String)总结
先说说JDK API: JDK中包含大量的API类库,所谓API(Application Programming Interface,应用程序编程接口,这些功能以类的形式封装). JDK API包含的 ...
- java幻灯片效果_java中怎么实现幻灯片切换特效?详细实例展示
在java的使用过程中,我们会发现它的功能真的很强大,完成内容也极其丰富.今天就给大家介绍一下如何在java中实现幻灯片切换特效,以及通过实际的代码来为大家展示. 在最开始,需要说明的是,这个代码是实 ...
- java qq2012下载_Java在2012年的未来
java qq2012下载 2012年一直被吹捧为所有灾难性结束的一年. 如果您相信几年前那场可怕的灾难大片,那就可以了. 正如我们所知,明年确实可能预示着世界末日,我们至少应该对一件事充满热情--2 ...
最新文章
- 2017/12/14 懒冬 时间序列基础
- 学python可以干嘛-学 Python 都用来干嘛的?
- ORA-12638: 身份证明检索失败 的解决办法
- 二叉树 二度节点和叶子节点之间的数量关系
- ssm上传文件进度条_ssm学习笔记-三种文件上传方式
- java冒泡测试代码,冒泡排序(java可直接跑,算法思想等小儿科不多说直接上代码)...
- [BZOJ 3052] [wc2013] 糖果公园 【树上莫队】
- NPAPI确实不安全,因为功能太强大
- Sk32k144:生成hex文件和烧写(jflash)
- 为心爱的人做一个超具创意的表白网页吧❤(告白气球)HTML+CSS+JavaScript
- F12解决网页不能复制
- 一个月薪 12000 的北京程序员的真实生活
- 万字详解加拿大央行CBDC分析报告
- openresty模板html页面,springboot+nginx+lua开发+html模板渲染
- python数据分析与挖掘建模:交叉分析
- sas中数据输入输出格式
- 【软考软件评测师】2019综合知识历年真题
- STM8控制LCD12864液晶屏实验
- 申请专利流程及费用。
- 方程:方程(equation)是指含有未知数的等式
热门文章
- php 开源周报系统,Pulsar 社区周报|2021-03-01~2021-03-07
- 登录 Jed_SH ELK 默认端口
- 最精确的噪音测试软件,关于噪音测试App的选择与使用
- SPC 之 I-MR 控制图
- 梦幻星球社区APP源码 HYBBS的iApp社区源码
- 开涛传–记京东“首席”架构师张开涛
- 2012年度IT博客大赛50强报道:张开涛
- r语言worldclim数据_arcgis中如何提取气候数据
- astar插件下载 就行_2020年视频编辑PR插件齐全了!包含了抠图调色磨皮降噪~
- 去掉CAD打印时出现由AUTODESK教育版产品制作戳记的方法