内容概览:

keytool的几个常用的命令。

1.创建证书

2.查看证书库

3.导出证书文件

4.导入证书的信息

5.查看证书信息

6.删除密钥库中的条目

7.修改证书条目的口令

--------------------------------------------------------------------------------------

预备知识:

keytool的概念

SUN公司提供了制作证书的工具keytool。

在JDK 1.4以后的版本中都包含了这一工具,它的位置为\bin\keytool.exe。

--------------------------------------------------------------------------------------

主要内容:

1.创建证书

Cmd代码  
  1. keytool -genkeypair -alias "test1" -keyalg "RSA" -keystore "test.keystore"

说明:

密钥库密码为testtest

证书条目密码为testtest1,若别名为test2则密码为testtest2

这样为个不乱

功能:

创建一个别名为test1的证书条目,该条目存放在名为test.keystore的密钥库中,若test.keystore密钥库不存在则创建。

参数说明:

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

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

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

注意:

1.“名字与姓氏”应该是域名,若输成了姓名,和真正运行的时候域名不符,会出问题;

2.再次输入密码,第一次输入的是密钥库(keystore)的密码,第二次输入的是证书条目的密码

3.这里所说的证书库和密钥库是等同的(个人观点)

为了测试需要,这里再创建两个别名为test2和test3的证书条目在test.keystore密钥库中,代码如下:

Cmd代码  
  1. keytool -genkeypair -alias "test2" -keyalg "RSA" -keystore "test.keystore"
  2. keytool -genkeypair -alias "test3" -keyalg "RSA" -keystore "test.keystore"

2.查看证书库

Cmd代码  
  1. keytool -list -keystore test.keystore

功能:

查看名为test.keystore的证书库中的证书条目

3.导出到证书文件

Cmd代码  
  1. keytool -export -alias test1 -file test.crt -keystore test.keystore

功能:

将名为test.keystore的证书库中别名为test1的证书条目导出到证书文件test.crt中

4.导入证书的信息

Cmd代码  
  1. keytool -import -keystore test_cacerts -file test.crt

功能:

将证书文件test.crt导入到名为test_cacerts的证书库中,

5.查看证书信息

Cmd代码  
  1. keytool -printcert -file "test.crt"

功能:

查看证书文件test.crt的信息

6.删除密钥库中的条目

删除前查看密钥库test.keysote中的证书条目

Cmd代码  
  1. keytool -list -keystore test.keystore

删除密钥库test.keystore中别名为test2的证书条目

Cmd代码  
  1. keytool -delete -keystore test.keystore -alias test2

删除后查看密钥库test.keystore中的证书条目

Cmd代码  
  1. keytool -list -keystore test.keystore

7.修改证书条目的口令

交互的方式

Cmd代码  
  1. keytool -keypasswd -alias test1 -keystore test.keystore

功能:

将密钥库test.keystore中别名为test1的证书条目的密码修改为testtesttest1

非交互方式

Cmd代码  
  1. keytool -keypasswd -alias test1 -keypass testtesttest1 -new testtest1 -storepass testtest -keystore test.keystore

功能:

将密钥库test.keystore中别名为test1的证书条目的密码修改为testtest1

使用Keytool工具生成证书Keystore和证书签名请求文件的更多相关文章

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

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

  2. keytool工具生成自签名证书并且通过浏览器导入证书

    1.生成服务器证书库 keytool -genkey -alias tomcat -keypass changeit -keyalg RSA -keysize 1024 -validity 365 - ...

  3. 利用keytool工具生成数字证书

    一.制作数字证书  因测试微信小程序, 腾讯要求使用 https协议,所以需要使用证书.使用jdk工具制作数字证书流程如下: 1.查看JDK是否安装,使用命令java -version 2.切换目录至 ...

  4. 使用JDK自带的keytool工具生成证书

    一.keytool 简介 keytool 是java用于管理密钥和证书的工具,它使用户能够管理自己的公钥/私钥对及相关证书,用于(通过数字签名)自我认证(用户向别的用户/服务认证自己)或数据完整性以及 ...

  5. 用keytool工具生成签名文件与获取摘要信息

    在Command命命令行模式下: 转到工作目录 执行下面命令: keytool -genkey -v -keystore debug.keystore 最后是生成的文件名,执行该命令后有很多内容要填写 ...

  6. 用Keytool和OpenSSL生成和签发数字证书

    一)keytool生成私钥文件(.key)和签名请求文件(.csr),openssl签发数字证书      J2SDK在目录%JAVA_HOME%/bin提供了密钥库管理工具Keytool,用于管理密 ...

  7. OPENSSL生成SSL自签证书

    OPENSSL生成SSL自签证书 目前,有许多重要的公网可以访问的网站系统(如网银系统)都在使用自签SSL证书,即自建PKI系统颁发的SSL证书,而不是部署支持浏览器的SSL证书. 支持浏览器的SSL ...

  8. 4.第三篇 PKI基础概念、cfssl工具介绍及kubernetes中证书

    文章转载自:https://mp.weixin.qq.com/s?__biz=MzI1MDgwNzQ1MQ==&mid=2247483787&idx=1&sn=08dd3404 ...

  9. [转帖]密钥库文件格式(Keystore)和证书文件格式(Certificate)

    密钥库文件格式[keystore]代码 https://blog.csdn.net/zzhongcy/article/details/22755317 格式 : JKS 扩展名 : .jks/.ks ...

随机推荐

  1. iOS开发中自定义字体的方法

    http://www.cnblogs.com/iyou/archive/2014/05/25/3751669.html 1. 首先下载你想要设置的字体库,例如设置方正启体简体 2. 添加到工程,一定要 ...

  2. 从头开始编写一个Orchard网上商店模块(4) - 创建ProductPart

    原文地址:http://skywalkersoftwaredevelopment.net/blog/writing-an-orchard-webshop-module-from-scratch-par ...

  3. struct ifconf和struct ifreq,获取网线插入状态

    这两天看用C获取当前网口的插入网线状态的程序,遇见了这两个不熟悉的结构体,看了头文件中的说明和详细. struct ifreq 这个结构定义在include/net/if.h,用来配置ip地址,激活接 ...

  4. HDU5647 DZY Loves Connecting 树形DP

    (先奉上jcvb大神的官方题解)BC 76 div 1 1002 对于每个结点i,统计出f[i]表示包含i的连通集有多少个,那么容易看出答案就是所有f[i]的和. 要计算f[i]是经典的树形DP问题. ...

  5. [Raobin] Ext.net在页面中以窗体的形式打开另外的页面

    public ActionResult NewPartWindow(string id, string copy, string code) { var vm = new VM(this); var ...

  6. java命名规范和编程技巧

    一个好的java程序首先命名要规范. 命名规范 定义这个规范的目的是让项目中所有的文档都看起来像一个人写的,增加可读性,方便维护等作用 Package 的命名 Package 的名字应该都是由一个小写 ...

  7. shell 加法

    shell 加法 i=$i+1 是在i的变量值后加上字符串'+1' 总结:其他语言中的$i++操作在shell中表示如下:#!/bin/bash n=1;echo -n "$n " ...

  8. node系列4

    进程管理 NodeJS可以感知和控制自身进程的运行环境和状态,也可以创建子进程并与其协同工作,这使得NodeJS可以把多个程序组合在一起共同完成某项工作,并在其中充当胶水和调度器的作用.本章除了介绍与 ...

  9. 《Android View 的事件分发和滑动冲突》 —预习资料

    1. 阅读书籍<Android开发艺术探索>第三章 2. 提前阅读如下技术文章: http://blog.csdn.net/singwhatiwanna/article/details/3 ...

  10. Introduction to SignalR -摘自网络

    What is SignalR? ASP.NET SignalR is a library for ASP.NET developers that simplifies the process of ...