一、keytool 简介

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

其功能包括:

  • 创建并管理密钥
  • 创建并管理证书
  • 作为CA 为证书授权
  • 导入导出证书

keytool官方文档

二、keytool的用法

三、生成证书

生成证书主要是使用" -genkey",该命令的可用参数如下:

示例:生成一个名称为tomcat的证书(cas服务https环境证书生成示例)

keytool -genkey -alias tomcat -keyalg RSA -keystore D:/cas.keystore  

功能说明:

生成一个别名为tomcat的证书,该证书存放在名为cas.keystore的密钥库中,若cas.keystore密钥库不存在则创建。

参数说明:

-genkey:生成一对非对称密钥;

-alias:指定密钥对的别名,该别名是公开的;
-keyalg:指定加密算法,本例中的采用通用的RAS加密算法;

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

注意:

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

  2."名字与姓氏"应该是输入域名,而不是我们的个人姓名,其他的可以不填

执行完上述命令后,在D盘下生成了一个"cas.keystore"的文件,如下图所示:

四、导出证书

导出证书主要是使用" -export",该命令的可用参数如下:

示例:将名为cas.keystore的证书库中别名为tomcat的证书条目导出到证书文件cas.crt中

keytool -export -trustcacerts -alias tomcat -file D:/cas.crt -keystore D:/cas.keystore

执行完上述命令后,在D盘下生成了一个"cas.crt"的文件,如下图所示:

五、导入证书

导入证书主要是使用" -import",该命令的可用参数如下:

示例1:将证书文件cas.crt导入到名为test_cacerts的证书库中

keytool -import -file D:/cas.crt -keystore D:/test_cacerts

示例2:将证书文件test.crt导入到名为cacerts的证书库中(这里将会演示将证书导入到jdk的证书库中)

keytool -import -trustcacerts -alias tomcat -file D:/cas.crt -keystore %JAVA_HOME%/jre/lib/security/cacerts

注:次例中jdk证书库的默认密码为:changeit

六、查看密钥库里面的证书

keytool -list -keystore D:/cas.keystore

七、查看证书信息

keytool -printcert -file D:/cas.crt

八、删除密钥库中的条目

示例:删除密钥库cas.keystore中别名为tomcat的证书条目

keytool -delete -keystore D:/cas.keystore -alias tomcat

九、修改证书条目的口令

示例:将密钥库cas.keystore中别名为test的证书条目的密码修改为666666(别名为test的证书条目必须存在)

keytool -keypasswd -alias test -keystore D:/cas.keystore

使用JDK自带的keytool工具生成证书的更多相关文章

  1. tomcat配置https–采用JDK自带的keytool工具生成证书

    转自:http://blog.csdn.net/huangxinyu_it/article/details/41693633 有关http与https的区别请看<浅谈http与https的区别( ...

  2. 使用Keytool工具生成证书Keystore和证书签名请求文件

    内容概览: keytool的几个常用的命令. 1.创建证书 2.查看证书库 3.导出证书文件 4.导入证书的信息 5.查看证书信息 6.删除密钥库中的条目 7.修改证书条目的口令 ---------- ...

  3. C# 利用VS自带的WSDL工具生成WebService服务类

    C# 利用VS自带的WSDL工具生成WebService服务类   WebService有两种使用方式,一种是直接通过添加服务引用,另一种则是通过WSDL生成. 添加服务引用大家基本都用过,这里就不讲 ...

  4. JDK自带的keytool证书工具详解

    一.生成证书 keytool -genkey -alias tomcat -keyalg RSA -keystore D:/tomcat.keystore -keypass 123456 -store ...

  5. 利用JDK自带的keytool生成SSL证书然后导入到SpringBoot

    一:生成命令如下(这一步生成的暂不知道干嘛用的) E:\Desktop\Documents\证书>keytool -genkey -alias tomcat -keypass - -validi ...

  6. jdk 自带命令行工具

    jps工具 虚拟机进程状况工具 工具主要选项 jstat: 虚拟机统计信息监视工具 jinfo: Java配置信息工具 jinfo( Configuration Info for Java) 的作用是 ...

  7. JDK自带VM分析工具jps,jstat,jmap,jconsole

    一.概述 SUN 的JDK中的几个工具,非常好用.秉承着有免费,不用商用的原则.以下简单介绍一下这几种工具.(注:本文章下的所有工具都存在JDK5.0以上版本的工具集里,同javac一样,不须特意安装 ...

  8. 【转载】JDK自带的log工具

    版权声明:本文为Jaiky_杰哥原创,转载请注明出处.This blog is written by Jaiky, reproduced please indicate. https://blog.c ...

  9. 使用openssl工具生成证书

    第一步. 生成rsa私钥文件 :\> openssl genrsa -out bexio.pem 1024 : 若要加密生成的rsa私钥文件(des3加密) :\> openssl gen ...

随机推荐

  1. idea连接sqlite

    首先下载驱动 官网链接:http://mvnrepository.com/artifact/org.xerial/sqlite-jdbc 打开idea 第一步:右边 数据源 (如果没有显示单击这里,有 ...

  2. webpack的基本配置和一些理解

    最近花了两周的休息时间学习了webpack,能够可以编写自己项目所需要的配置文件,总体来说webpack是一种非常优秀的前端模块化的打包工具,非常值得花时间来研究学习. 什么是webpack,它的出现 ...

  3. 简易Dubbo的搭建过程

    dubbo是一个高性能的,基于java的,开源RPC框架,主要功能是让构建分布式计算更加容易. (分布式:多台计算机实现不同功能,形成一个整体对外服务) (集群式:多台计算机实现相同功能,分担计算压力 ...

  4. excel导入到java/导出到excel

    package com.test.order.config; import com.test.order.domain.HavalDO; import org.apache.poi.ss.usermo ...

  5. c# 获取网络流量

    public class ip_helper{enum Constants {MAX_INTERFACE_NAME_LEN=256, MAXLEN_PHYSADDR=8,MAXLEN_IFDESCR= ...

  6. #leetcode刷题之路9- 回文数

    判断一个整数是否是回文数.回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数. 示例 1:输入: 121输出: true 示例 2:输入: -121输出: false解释: 从左向右读, 为 ...

  7. 【学时总结】◆学时·IX◆ 整体二分

    ◆学时·IX◆ 整体二分 至于我怎么了解到这个算法的……只是因为发现一道题,明显的二分查找,但是时间会爆炸,被逼无奈搜题解……然后就发现了一些东西QwQ ◇ 算法概述 整体二分大概是把BFS与二分查找 ...

  8. nignx 配置服务集群

    前言:这里只是简单介绍Nginx简单APP Server集群的搭建和设置发向代理. 后续有时间我会陆续加上Nginx的基础知识.三种负载均衡的策略设置.实现算法的介绍.(最后如果有测试环境,再模拟Ng ...

  9. Spring Boot2.0拦截器简单实现判断是否登录

    在进行项目开发的时候使用springboot框架用到拦截器时发现2.0以后原来的抽象类WebMvcConfigurerAdapter已经过时了,去官网查文档2.x版本要实现拦截器功能改为需要继承Web ...

  10. 关于api接口

    前阵子一直疯狂的找关于php的api接口方面的资料来学习,总结了一下,无非就是请求数据,然后返回数据,当然也要设置相关安全措施,比如认证口令 等.返回数据格式是json 还是xml 看自己需求咯