`
永远的菜鸟
  • 浏览: 55598 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

使用jdk中keytool生成证书

 
阅读更多

 

-genkey      在用户主目录中创建一个默认文件".keystore",还会产生一个mykey的别名,mykey中包含用户的公钥、私钥和证书 
-alias       产生别名
-keystore    指定密钥库的名称(产生的各类信息将不在.keystore文件中
-keyalg      指定密钥的算法    
-validity    指定创建的证书有效期多少天
-keysize     指定密钥长度
-storepass   指定密钥库的密码
-keypass     指定别名条目的密码
-dname       指定证书拥有者信息 例如:  "CN=sagely,OU=atr,O=szu,L=sz,ST=gd,C=cn"
-list        显示密钥库中的证书信息      keytool -list -v -keystore sage -storepass ....
-v           显示密钥库中的证书详细信息
-export      将别名指定的证书导出到文件  keytool -export -alias caroot -file caroot.crt
-file        参数指定导出到文件的文件名
-delete      删除密钥库中某条目          keytool -delete -alias sage -keystore sage
-keypasswd   修改密钥库中指定条目口令    keytool -keypasswd -alias sage -keypass .... -new .... -storepass ... -keystore sage
-import      将已签名数字证书导入密钥库  keytool -import -alias sage -keystore sagely -file sagely.crt 
             导入已签名数字证书用keytool -list -v 以后可以明显发现多了认证链长度,并且把整个CA链全部打印出来。

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

keytool JAVA是个密钥和证书管理工具。它使用户能够管理自己的公钥/私钥对及相关证书,用于(通过数字签名)自我认证(用户向别的用户/服务认证自己)或数据完整性以及认证服务。它还允许用户储存他们的通信对等者的公钥(以证书形式)。通过keytool –help查看其用法,详细信息可以参考http: //java.sun.com/j2se/1.5.0/docs/tooldocs/solaris/keytool.html 

创建证书Java 中的 keytool.exe (位于 JDK/Bin 目录下)可以用来创建数字证书,所有的数字证书是以一条一条(采用别名区别)的形式存入证书库的中,证书库中的一条证书包含该条证书的私钥,公钥和对应的数字证书的信息。证书库中的一条证书可以导出数字证书文件,数字证书文件只包括主体信息和对应的公钥。 
每一个证书库是一个文件组成,它有访问密码,在首次创建时,它会自动生成证书库,并要求指定访问证书库的密码。 
在创建证书的的时候,需要填写证书的一些信息和证书对应的私钥密码。这些信息包括 CN=xx,OU=xx,O=xx,L=xx,ST=xx,C=xx,它们的意思是: 
? CN(Common Name - 名字与姓氏):其实这个“名字与姓氏”应该是域名,比如说localhost或是blog.devep.net之类的。输成了姓名,和真正运行的时候域名不符,会出问题。浏览器访问时,弹出一个对话框,提示“安全证书上的名称无效,或者与站点名称不匹配”,用户选择继续还是可以浏览网页。但是用http client写程序访问的时候,会抛出类似于“javax.servlet.ServletException: HTTPS hostname wrong: should be ”的异常。 
? OU(Organization Unit - 组织单位名称) 
? O(Organization - 组织名称) 
? L(Locality - 城市或区域名称) 
? ST(State - 州或省份名称) 
? C(Country - 国家名称) 
可以采用交互式让工具提示输入以上信息,也可以采用参数,如:-dname “CN=xx,OU=xx,O=xx,L=xx,ST=xx,C=xx”来自动创建。 

创建一个证书 
指定证书库为 D:/keystore/test,创建别名为 Tomcat 的一条证书,它指定用 RSA 算法生成,且指定密钥长度为 1024,证书有效期为 1 年: 
keytool -genkey -alias Tomcat -keyalg RSA -keysize 1024 -keystore C:/keystore/test -validity 365 
显示证书库中的证书使用如下命令: keytool -list -keystore C:/keystore/test 将显示 C:/keystore/test 证书库的的所有证书列表 

导出到证书文件 
使用命令:keytool -export -alias Tomcat -file C:/keystore/TC.cer -keystore C:/keystore/test 将把证书库C:/keystore/test 中的别名为 Tomcat 的证书导出到 TC.cer 证书文件中,它包含证书主体的信息及证书的公钥,不包括私钥,可以公开。 
导出的证书文件是以二进制编码文件,无法用文本编辑器正确显示,可以加上 -rfc参数以一种可打印的编者编码输出。 如: 
keytool -export -alias Tomcat -file C:/keystore/TC.cer -keystore C:/keystore/test –rfc 

查看证书的信息 
通过命令: keytool -printcert -file D:/keystore/TC.cer 可以查看证书文件的信息。 也可以在 Windows 资源管理器中双击产生的证书文件直接查看。 

删除密钥库中的条目 
keytool -delete -alias Tomcat -keystore C:/keystore/test 
这条命令将 C:/keystore/test 库中的 Tomcat 这一条证书删除了。 

修改证书条目口令 
keytool -keypasswd -alias Tomcat -keystore C:/keystore/test,可以以交互的方式修改 C:/keystore/test 证书库中的条目为 Tomcat 的证书。 
Keytool -keypasswd -alias Tomcat -keypass oldpasswd -new newpasswd -storepass storepasswd -keystore C:/keystore/test 这一行命令以非交互式的方式修改库中别名为 Tomcat 的证书的密码为新密码 newpasswd,行中的 oldpasswd 是指该条证书的原密码, storepasswd 是指证书库的密码。

分享到:
评论

相关推荐

    KeyTool 工具生成X.509证书

    在本文中,我们将深入探讨KeyTool的基本用法、X.509证书的概念,以及如何使用KeyTool生成这种类型的证书。 X.509是一种国际标准,用于定义证书的格式,它包含了公钥和相关标识信息,如组织名称、地理位置等,常用于...

    JDK中利用keytool创建自签名证书

    在Java Development Kit (JDK) 中,`keytool` 是一个强大的命令行工具,用于管理密钥对(公钥和私钥)以及数字证书。它主要用于创建、存储、备份、恢复、导入和导出这些安全相关的实体。在这个场景中,我们将深入...

    JDK生成ssl证书

    1. **生成客户端证书**:使用以下命令为客户端生成证书: ``` keytool -genkey -alias client -keypass 123456 -keyalg RSA -keysize 1024 -validity 365 -storetype PKCS12 -keystore D:/keys/client.p12 -...

    命令行keytool使用 证书DN生成数字证书容器 空格

    本篇文章将深入探讨`keytool`的使用,特别是如何通过命令行生成证书的Distinguished Name (DN)以及如何创建数字证书容器。 首先,让我们理解什么是Distinguished Name (DN)。DN是X.509证书中一个独特的标识符,它...

    tomcat配置https

    tomcat7+jdk的keytool生成证书 配置https

    Keytool与数字证书

    **Keytool** 是 Java 开发工具包(JDK)中的一个实用程序,用于管理密钥库(key stores),其中包括私钥(private keys)及其对应的公钥证书(public key certificates)。密钥库是一个存储密钥和证书的地方,可以用来管理和...

    KeyTool.GUI.1.6 证书密钥查看生成工具

    - **证书链完整性**:在导入或生成证书时,确保包含了完整的证书链,以便验证。 总的来说,KeyTool.GUI.1.6为Java开发者和系统管理员提供了一个强大且易用的工具,使得证书和密钥管理变得不再复杂,增强了网络通信...

    keytool证书制作工具

    `keytool`是Java开发工具包(JDK)中附带的一个命令行工具,用于管理密钥对(公钥和私钥)以及信任存储库。它在网络安全、HTTPS通信、服务器身份验证等领域扮演着重要角色。以下是关于`keytool`证书制作工具的详细...

    JAVA keytool数字证书生成及应用

    Java的`keytool`工具是Java Development Kit (JDK) 中的一个重要组件,主要用于管理和操作密钥对(公钥和私钥)以及数字证书。它提供了在本地系统中创建、导入、导出、查看和管理这些安全凭证的功能,这对于开发和...

    一个生成数字证书工具

    从一个高人那里得到的. 根目录难得的数字证书生成软件下,其中zxpca100.exe文件是用来生成数字证书的,zxpfp100.exe文件是用来给文件加密解密的. 功能强大,唯一的不足的地方时作者版权思想太强了,经常弹出版权信息

    java jdk生成安卓app证书(csdn)————程序.pdf

    接下来,我们使用`keytool`生成证书。在命令行窗口(cmd)中,执行以下命令: ```shell keytool -genkey -alias 证书别名 -keyalg RSA -keysize 2048 -validity 证书有效期 -keystore 证书文件名字 ``` 这里的参数...

    Java&keytool生成RSA密钥

    Java和Keytool生成RSA密钥对是网络安全领域中常见的操作,尤其在进行数据加密、数字签名和SSL/TLS证书管理时。RSA是一种非对称加密算法,它基于两个密钥:公钥和私钥,公钥用于加密,私钥用于解密。Keytool是Java...

    KeyTool证书生成

    在交互过程中,需要提供组织和地理信息,这些信息会包含在生成的证书中。 2. **导出证书** 使用`keytool -export`命令将Keystore中的证书导出为独立文件,通常为`.cer`格式。这一步是为了方便将证书分发给客户端...

    java keytool使用例子

    使用Keytool生成自签名证书和密钥对的命令如下: ``` keytool -genkeypair -alias <别名> -keyalg RSA -keystore <密钥库文件名> -keysize <密钥长度> ``` 其中,`<别名>`是证书的唯一标识,`<密钥库文件名>`是...

    [重要]Java代码验证keytool工具生成的密钥对

    Keytool是Java Development Kit(JDK)自带的一个命令行工具,用于管理公钥/私钥对和数字证书,这些在网络安全中扮演着至关重要的角色。 在Java环境中,keytool工具允许开发者生成、存储和管理密钥对。生成密钥对的...

    安卓证书生成jdk的软件

    总结,"安卓证书生成jdk的软件"实际上是在JDK环境下使用Keytool生成Android应用的签名证书,这个过程对于发布和管理Android应用至关重要。了解并掌握这些知识,有助于确保应用的安全性和发布流程的顺利进行。

    密钥管理工具 Keytool-IUI

    6. **证书请求(CSR)**:Keytool-IUI可以生成证书请求,包含公钥和组织信息,然后提交给证书颁发机构以获取签名证书。 7. **信任锚点(Truststore)**:除了管理自己的Keystore,Keytool-IUI也帮助维护Truststore...

    keytool图形化工具

    `keytool`是Java Development Kit (JDK)自带的一个命令行工具,用于创建、管理和查看存储在Keystore中的密钥和证书。Keystore是存储私钥、公钥以及信任证书的地方,可以理解为一个安全的数据库。通过`keytool`,...

    tomcat实现SSL双向认证

    使用 JDK 的 keytool 工具可以生成证书,包括服务器证书和客户端证书。服务器证书用于验证服务器的身份,而客户端证书用于验证客户端的身份。 三、配置 Tomcat 服务器 在 Tomcat 中配置 SSL 双向认证需要在 server...

    JKS2PFX证书转换工具 支持jdk生成证书转换

    2. 导出JKS中的私钥和证书:使用keytool工具,我们可以将JKS中的私钥和相关证书导出为一个临时的PKCS#12文件,通常带有.p12扩展名。 3. 转换JKS到PFX:JKS2PFX工具正是在这个阶段发挥作用,它将前面导出的PKCS#12...

Global site tag (gtag.js) - Google Analytics