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工具的使用总结(一)相关推荐

  1. java keytool 代码_java中Keytool的使用总结

    java中Keytool的使用总结 以前用过几次这个东东,但每次都重新查询一次.本文原始出处是这里 . ------------------------------------------------ ...

  2. java utils类_Java中StringUtils工具类的一些用法实例

    StringUtils 方法的操作对象是 java.lang.String 类型的对象,是 JDK 提供的 String 类型操作方法的补充,并且是 null 安全的(即如果输入参数 String 为 ...

  3. java设计画图工具下载_java 版画图工具

    java 版画图工具 java 2020-8-14 下载地址 https://www.codedown123.com/35571.html java 版画图工具可选 形状 颜色 画笔等等 资源下载此资 ...

  4. java jceks 密钥_Java中不同类型的密钥库(Keystore) – 概述

    阅读: 877 密钥库是用于存储加密密钥和证书的存储工具 ,最常用于SSL通信,以证明服务器和客户端的身份.密钥库可以是文件或硬件设备.有三种类型的条目可以存储在密钥库中,取决于密钥库的类型,这三种类 ...

  5. java多线程下载_Java实现多线程下载,支持断点续传

    多线程下载及断点续传的实现是使用 HTTP/1.1 引入的 Range 请求参数,可以访问Web资源的指定区间的内容.虽然实现了多线程及断点续传,但还有很多不完善的地方. 包含四个类: Downloa ...

  6. java 微型数据库_Java 9代码工具:使用Java微型基准测试工具的实践会话

    java 微型数据库 用肉眼看,基准测试似乎只是确定执行某些代码需要花费多长时间的简单问题. 但是,通常情况下,这是幼稚的方法. 提供具有准确和可重复结果的有意义的基准并非易事. 在本文中,我们将向您 ...

  7. java 序列化实例_Java中的序列化与反序列化实例

    创建的字节流与平台无关.因此,在一个平台上序列化的对象可以在另一个平台上反序列化. 为了使Java对象可序列化,我们实现java.io.Serializable可序列化接口. ObjectOutput ...

  8. java 字符串总结_Java中字符串(String)总结

    先说说JDK API: JDK中包含大量的API类库,所谓API(Application Programming Interface,应用程序编程接口,这些功能以类的形式封装). JDK API包含的 ...

  9. java幻灯片效果_java中怎么实现幻灯片切换特效?详细实例展示

    在java的使用过程中,我们会发现它的功能真的很强大,完成内容也极其丰富.今天就给大家介绍一下如何在java中实现幻灯片切换特效,以及通过实际的代码来为大家展示. 在最开始,需要说明的是,这个代码是实 ...

  10. java qq2012下载_Java在2012年的未来

    java qq2012下载 2012年一直被吹捧为所有灾难性结束的一年. 如果您相信几年前那场可怕的灾难大片,那就可以了. 正如我们所知,明年确实可能预示着世界末日,我们至少应该对一件事充满热情--2 ...

最新文章

  1. 2017/12/14 懒冬 时间序列基础
  2. 学python可以干嘛-学 Python 都用来干嘛的?
  3. ORA-12638: 身份证明检索失败 的解决办法
  4. 二叉树 二度节点和叶子节点之间的数量关系
  5. ssm上传文件进度条_ssm学习笔记-三种文件上传方式
  6. java冒泡测试代码,冒泡排序(java可直接跑,算法思想等小儿科不多说直接上代码)...
  7. [BZOJ 3052] [wc2013] 糖果公园 【树上莫队】
  8. NPAPI确实不安全,因为功能太强大
  9. Sk32k144:生成hex文件和烧写(jflash)
  10. 为心爱的人做一个超具创意的表白网页吧❤(告白气球)HTML+CSS+JavaScript
  11. F12解决网页不能复制
  12. 一个月薪 12000 的北京程序员的真实生活
  13. 万字详解加拿大央行CBDC分析报告
  14. openresty模板html页面,springboot+nginx+lua开发+html模板渲染
  15. python数据分析与挖掘建模:交叉分析
  16. sas中数据输入输出格式
  17. 【软考软件评测师】2019综合知识历年真题
  18. STM8控制LCD12864液晶屏实验
  19. 申请专利流程及费用。
  20. 方程:方程(equation)是指含有未知数的等式

热门文章

  1. php 开源周报系统,Pulsar 社区周报|2021-03-01~2021-03-07
  2. 登录 Jed_SH ELK 默认端口
  3. 最精确的噪音测试软件,关于噪音测试App的选择与使用
  4. SPC 之 I-MR 控制图
  5. 梦幻星球社区APP源码 HYBBS的iApp社区源码
  6. 开涛传–记京东“首席”架构师张开涛
  7. 2012年度IT博客大赛50强报道:张开涛
  8. r语言worldclim数据_arcgis中如何提取气候数据
  9. astar插件下载 就行_2020年视频编辑PR插件齐全了!包含了抠图调色磨皮降噪~
  10. 去掉CAD打印时出现由AUTODESK教育版产品制作戳记的方法