生成本地证书

密钥库中生成本地数字证书:需要提供身份、加密算法、有效期等信息;

keytool指令如下,产生的本地证书后缀名为:*.keystore

keytool -genkeypair -keyalg RSA  -keysize 1024 -sigalg SHA256withRSA  -validity 365 -alias hillstone -storepass hillstone -keystore /tmp/hillstone.keystore

参数说明:

  • -genkeypair: 产生密钥对;
  • -keyalg: 加密算法,这里的RSA为非对称加密算法;
  • -keysize: 密钥大小;
  • -sigalg: 签名算法(私钥加密摘要),如:SHA256withRSA 、MD5withRSA等;
  • -validity: 证书有效期,这里指定365天;
  • -alias :别名
  • keystore: 指定密钥库的位置;
  • -storepass: 密码,如果设置了该参数,需要在tomcat的setting设置相应的密码;

证书导出

导出的证书后缀为:*.cer

keytool -exportcert -alias hillstone -keystore /tmp/hillstone.keystore -file /tmp/hillstone.keystore -rfc

参数说明:

  • -exportcert: 表示执行的是证书导出操作;
  • -file:指定证书生成的路径;.
  • -keystore: 指定密钥库文件,此处为上一条命令所生成的密钥库: /tmp/hillstone.keystore
  • -rfc: 表示采用可打印Base64格式输出

查看证书内容

keytool -printcert -file /tmp/hillstone.keystore

参数说明:

  • -printcert: 表示打印证书操作;
  • -file:指定证书文件路径

导出CSR

如果想得到证书认证机构的认证,需要导出数字证书并签发申请(CSR),经认证机构认证并颁发后,再将认证后的证书导入本地密钥库和信任库;

keytool -certreq -alias hillstone -keystore /tmp/hillstone.keystore  -file /tmp/hillstone.csr -v

参数说明:

  • -certreq :表示执行证书签发申请导出操作;
  • -keystore: 指定需要导出的密钥库文件;
  • -file:指定导出CSR的文件路径;.
  • -v:显示操作的详细情况;

导出CSR后,就可以到VeriSign、GeoTrust、Cacert(免费)等权威机构进行证书认证;

导入数字证书

获得认证机构颁发的数字证书后,需要将其导入信任库;

keytool -importcert -trustcacerts -alias hillstone -file /tmp/hillstone.cer  -keystore /tmp/hillstone.keystore

参数说明:

  • -importcert: 执行证书导入操作;
  • -trustcacerts: 将证书导入信任库
  • -file:指定导入证书的文件路径;.
  • -keystore: 指定证书的密钥库文件;

导入证书后,列出keystore中的证书

keytool -list -alias hillstone -keystore  /tmp/hillstone.keystore

链接

【数字签名】数字签名 与 数字证书

使用keytool 生成数字keystore的更多相关文章

  1. JAVA JDK keytool 生成数字证书

    简介: 数字证书作为网络安全数据传输的凭证,web在传输时客户端(浏览器)和 服务端(服务器)先进行会话握手,在握手过程中服务端会验证客户端的是否已经在服务端做了认证,这是单向认证.如果是双向认证的话 ...

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

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

  3. JAVA调用 keytool 生成keystore 和 cer 证书

    keytool是一个Java数据证书的管理工具, keytool将密钥(key)和证书(certificates)存在一个称为keystore的文件中在keystore里, 包含两种数据: 密钥实体( ...

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

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

  5. java 调用 keytool 生成keystore 和 cer 证书

    keytool是一个Java数据证书的管理工具, keytool将密钥(key)和证书(certificates)存在一个称为keystore的文件中在keystore里, 包含两种数据:密钥实体(K ...

  6. JDK自带工具keytool生成ssl证书

    前言: 因为公司项目客户要求使用HTTPS的方式来保证数据的安全,所以木有办法研究了下怎么生成ssl证书来使用https以保证数据安全. 百度了不少资料,看到JAVA的JDK自带生成SSL证书的工具: ...

  7. 使用keytool生成公钥、私钥、证书并且读取出来,使用私钥签名jar并验证(转)

    参考链接:http://happyqing.iteye.com/blog/2139504 :https://blog.csdn.net/arjelarxfc/article/details/52461 ...

  8. JDK 生成数字证书

    JDK(keytool.exe)生成数字证书 2010-11-21 15:52 QUOTE: keytool JAVA是个密钥和证书管理工具.它使用户能够管理自己的公钥/私钥对及相关证书,用于(通过数 ...

  9. 使用keytool 生成证书

    keytool 工具介绍 keytool 是java 用于管理密钥和证书的工具,其功能包括: 1 创建并管理密钥 2 创建并管理证书 3 作为CA 为证书授权 4 导入导出证书 keytool 采用k ...

随机推荐

  1. python 闭包和迭代器

    一  函数名的运用:(函数名是一个变量,但它是一个特殊变量,与括号配合可以执行变量. (1) 函数名可以赋值给其他变量 def chi(): print("吃月饼") fn=chi ...

  2. Linux定时任务计划

    Linux定时任务计划 在使用Linux系统时,我们有时会需要让系统在某个时间去执行特定的任务,这时就需要去了解Linux提供的定时任务功能 种类 Linux的定时任务分为两种:单一型和循环型 单一型 ...

  3. Django模型层之多表操作

    ----------------https://www.cnblogs.com/liuqingzheng/articles/9499252.html 实例:我们来假定下面这些概念,字段和关系 一 创建 ...

  4. 使用fastjson解析数据后导致顺序改变问题

    在开发过程中遇到一个问题,服务器经过排序返回后的字符串数据使用fastjson解析后,数据顺序发生变化,引起业务异常. 解决办法: 1.解析时增加参数不调整顺序 JSONObject responde ...

  5. 【HAOI2015】 T1

    为什么感觉越来越迷了X. X 原题: 有一棵点数为 N 的树,树边有边权.给你一个在 0~N 之内的正整数 K,你要在这棵树中选择 K 个点,将其染成黑色,并将其他的N-K 个点染成白色.将所有点染色 ...

  6. linux常见系统调用函数列表

    以下是Linux系统调用的一个列表,包含了大部分常用系统调用和由系统调用派生出的的函数.这可能是你在互联网上所能看到的唯一一篇中文注释的Linux系统调用列表,即使是简单的字母序英文列表,能做到这么完 ...

  7. solr 5.0.0 bin/start脚本详细解析

    参考文档:https://cwiki.apache.org/confluence/display/solr/Solr+Start+Script+Reference#SolrStartScriptRef ...

  8. 【转载】Win10桌面图标有小箭头怎么去掉?Win10去掉桌面图标小箭头的方法

    以下文章转载至系统之家 网址:http://www.xitongzhijia.net/xtjc/20190104/146560.html Win10桌面图标有小箭头怎么去掉?Win10去掉桌面图标小箭 ...

  9. Sql server日期函数用法

    SQL日期函数 SQL日期函数中的类型码可以为0,1,2,3,4,5,6,7,8,9,10,11,12,13,14 ,20,21,22,23,24,25,100,101,102,103,104,105 ...

  10. oracle-null和默认值

    Oracle的默认值处理要当心,如果应用中使用的是ORM工具,则必须要考虑对于字段为Null的处理,必要时在ORM工具中将Null转换为default或插入时去掉值为Null的字段. 可以将下面的系统 ...