JAVA Keytool命令详解

JAVA Keytool 常用命令使用帮助

Keytool 是用于管理密钥和证书的工具,使用户和管理员能管理自己的公 / 私钥对以及相关的证书。

genkey ,用于生成公 / 私密钥对

keytool –genkey –alias mykey –keyalg RSA –keypass 123456 –keystore keystore.jks –storepass 123456

ˉkeyalg: 指定密钥使用的加密算法(如 RSA )。还可以使用选项 keysize 指定密钥的长度,如果没有指定长度,那么 keytool 将使用默认值 ———1024 位。
       ˉkeypass:
指定生成密钥的密码。
       ˉkeystore:
指定存储密钥的密钥库的名称(二进制文件),如果没有指定,那么将创建一个新的密钥库,并将其存储为 .keystore 文件。
       ˉstorepass:
指定访问密钥库的密码。密钥库创建后,要对其做任何修改都必须提供该密码,以便访问密钥库。
      
在执行 -genkey 时还会要求用户输入以下几项数据

CN      commen name

OU      organization unit

O        organization

L         location

ST       state

C:           country

其中 CN 服务器根证书的 ip 或者域名,即查看证书时的颁发给项

list

用于列出密钥库中全部的项,以及查看与别名相关的项。

keytool –list –keystore keystore.jks

为了显示别名所指定的密钥库项的内容,命令 list 可以输出证书的 MD5 指纹。如果指定了选项 ˉv ,则证书将以人类可读的格式显示 ; 如果指定了选项 ˉrfc ,则将以 Base64 编码格式显示证书。

import

导入可信证书。 Keytool 选项 ˉimport 用于将可信证书导入密钥库,并将其同唯一的一个别名联系起来。如果客户端信任通信等对体的证书,并希望与其进行可信的客户端交互,则可以在客户端环境中导入可信证书。
将新证书导入密钥库时, keytool 工具将验证该证书的完整性和真实性。为此, keytool 工具将构建一条以该证书开始到颁发者的自签名证书结束的信任链。可信证书的列表将存储在 cacerts 文件中。
要将证书导入密钥库,则需要提供标识证书项的唯一 别名和密钥密码。

例如,下面的命令从文件 cert.cer 中将一个证书项导入到密钥库 keystore.jks ,并将该证书项标识为 newcert ,最后,该命令将显示证书的持有者和颁发者的信息,并询问用户是否信任该证书 。

keytool –import –alias newcert –file cert.cer –keystore keystore.jks

printcert

显示证书的信息。 Keytool 选项 ˉprintcert 用于显示已从密钥库中导出并存储为文件的证书的信息。由于证书的信息是以证书文件( .cer )的形式存储的,且不会导入密钥库,因此在执行该命令时,不需要指定相关的密钥库和密码。
       keytool –printcert –file cert.cer

certReq

创建证书签发请求( CSR )。可以使用 Keytool 选项 ˉcertreq 来生成向 CA 申请证书的证书签发请求。

keytool –certReq –keystore keystore.jks –file mycsr.csr

delete

删除密钥库。要删除密钥库,可以使用操作系统的删除命令来删除该密钥库文件。
修改密钥库的密码。

storepasswd

要修改密钥库的密码,可以使用 keytool 选项 -storepasswd -new 来设置新密码。

keytool –storepasswd –new newpassword –keystore keystore.jks

  • 1
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值