功能:
keytool用来管理私钥仓库(keystore)和与之相关的X.509证书链(用以验证与私钥对应的公钥),也可以用来管理其他信任实体。
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链全部打印出来。
实例:
- 产生密钥
D:/>keytool -genkey -alias wenger -keysize 1024 -keypass abcdef -keystore myKeys
tore -storepass abcdef -dname "CN=chen sr, OU=tanglab, O=lab, L=gz, ST=gd, C=cn" - 证书的显示
-list
[-v | -rfc] [-alias <alias>]
[-keystore <keystore>] [-storepass <storepass>]
[-storetype <storetype>] [-provider <provider_class_name>]
例如:keytool -list -v -alias RapaServer -keystore cacerts -storepass 12345678
keytool -list -v -keystore d2aapplet.keystore -storepass 12345678 -storetype IAIKKeystore - 将证书导出到证书文件
例如:keytool -export -keystore monitor.keystore -alias monitor -file monitor.cer
将把证书库 monitor.keystore 中的别名为 monitor 的证书导出到 monitor.cer 证书文件中,它包含证书主体的信息及证书的公钥,不包括私钥,可以公开。
keytool -export -keystore d2aApplet.keystore -alias RapaServer -file Rapa.cert -storetype IAIKKeystore - 将keystore导入证书中
这里向Java默认的证书 cacerts导入Rapa.cert
keytool -import -alias RapaServer -keystore cacerts -file Rapa.cert -keystore cacerts - 证书条目的删除
keytool的命令行参数 -delete 可以删除密钥库中的条目,如: keytool -delete -alias RapaServer -keystore d2aApplet.keystore ,这条命令将 d2aApplet.keystore 中的 RapaServer 这一条证书删除了。 - 证书条目口令的修改
使用 -keypasswd 参数,如:keytool -keypasswd -alias RapaServer -keystore d2aApplet.keystore,可以以交互的方式修改 d2aApplet.keystore证书库中的条目为 RapaServer 的证书。
Keytool -keypasswd -alias RapaServer -keypass 654321 -new 123456 -storepass 888888 -keystore d2aApplet.keystore这一行命令以非交互式的方式修改库中别名为 RapaServer 的证书的密码为新密码 654321,行中的 123456 是指该条证书的原密码, 888888 是指证书库的密码。
相关推荐
在IT行业中,Java Development Kit(JDK)是Java编程的...通过阅读《JDK常用命令详解.doc》和《jdk-bin下的命令详解---转载,学习下.txt》,你可以更深入地学习每个命令的用法和具体示例,从而提升你的Java开发技能。
以下是`keytool`的一些常用命令和详细解释: 1. **genkey**: 这个命令用于创建一个新的密钥对(公钥和私钥)以及对应的证书请求。默认情况下,它会在用户的主目录中创建一个名为`.keystore`的文件,并为这个密钥对...
【JDK常用命令】 1. `javac`:Java编译器,用于将源代码(.java)编译成字节码(.class)。其常见选项包括: - `-g`:控制生成调试信息。 - `-classpath`:指定类路径,用于寻找依赖的类文件。 - `-d`:指定输出编译...
`keytool`是Java开发工具包(JDK)的一部分,主要功能是管理和操作密钥对和数字证书。这个工具在Linux和其他操作系统上广泛用于安全配置,特别是在构建HTTPS服务器、SSL/TLS连接以及进行数字签名等方面。以下是关于`...
Java Keytool是Java开发工具包(JDK)中自带的一个命令行工具,主要用于管理数字证书、密钥对以及信任库。这个工具对于开发者和系统管理员来说非常重要,因为它们在进行安全通信,尤其是HTTPS、SSL/TLS连接时起着...
总结来说,"keytool-importkeypair.zip"提供了Android系统签名的相关工具和证书样本,主要涉及`keytool`命令的使用、密钥对的导入以及APK签名流程。这对于Android开发者理解并执行应用签名操作至关重要,同时也有助...
4. JDK常用命令: - javac命令用于编译Java源文件,生成字节码文件。其中,-g 参数用于生成调试信息,-O 参数用于优化字节码,-classpath 用于指定类路径,-d 用于指定输出目录等。 - native2ascii 用于处理...
JDK中还包含了一系列常用的命令,比如javac用于编译Java程序,javap用于反编译class文件查看字节码,native2ascii用于字符编码转换,jdb用于调试,jps用于查看JVM进程信息,keytool用于生成keystore文件,jar用于...
JDK常用命令 - **javac**: Java编译器,用于将.java源代码文件编译成.class字节码文件。 - `-g`: 生成调试信息。 - `-g:none`: 不生成调试信息。 - `-g:{lines,vars,source}`: 仅生成部分调试信息。 - `-O`: ...
5. JDK常用命令 - javac:编译Java源代码。支持各种参数,如生成调试信息、优化类文件、指定编码等。 - native2ascii:用于编码转换,将Unicode编码的中文转换为ASCII编码,或反之。 - javap:反编译class文件,...
Keytool是Java Development Kit (JDK)中内置的一个密钥和证书管理工具,它能够管理密钥库(key store)中的密钥对和相关的证书。密钥库是一个存储私钥和公钥证书的容器,通常由口令保护。使用keytool可以方便地生成...
#### JDK常用命令 JDK提供了丰富的命令行工具,用于编译、运行、调试Java程序,以及管理类库和资源文件。其中,`javac`是Java编译器,用于将Java源代码编译成字节码文件。`javac`支持多种选项,如: - `-g`:生成...