做的事情是:
- 创建一个keystore my.keystore,其中包含一个别名为my1stcert的证明书;
- 然后导出该证明书到my1stcert.cer文件;
- 查看证明书文件的内容;
- 再将文件my1stcert.cer导入到my.keystore中,其别名为my2ndcert;
- 查看keystore的内容。
最终,my.keystore中存放了两个证明书,他们是一样的,但是别名不一样。
D:\j2sdk1.4.2_11\bin>keytool.exe -genkey -alias my1stcert -keystore my.keystore -storepass "yechao" -keypass "yechao" -keyalg "RSA"
What is your first and last name?
[Unknown]: Ye Chao
What is the name of your organizational unit?
[Unknown]: 3k
What is the name of your organization?
[Unknown]: rits
What is the name of your City or Locality?
[Unknown]: shanghai
What is the name of your State or Province?
[Unknown]: shanghai
What is the two-letter country code for this unit?
[Unknown]: zh
Is CN=Ye Chao, OU=3k, O=rits, L=shanghai, ST=shanghai, C=zh correct?
[no]: yes
D:\j2sdk1.4.2_11\bin>keytool.exe -export -alias my1stcert -keystore my.keystore -file my1cert.cer
Enter keystore password: yechao
Certificate stored in file <my1cert.cer>
D:\j2sdk1.4.2_11\bin>keytool.exe -printcert -file my1cert.cer
Owner: CN=Ye Chao, OU=3k, O=rits, L=shanghai, ST=shanghai, C=zh
Issuer: CN=Ye Chao, OU=3k, O=rits, L=shanghai, ST=shanghai, C=zh
Serial number: 4695a81f
Valid from: Thu Jul 12 12:03:43 GMT+08:00 2007 until: Wed Oct 10 12:03:43 GMT+08:00 2007
Certificate fingerprints:
MD5: F8:8E:3E:41:59:8A:34:F5:DF:0F:4B:DE:37:EB:87:1F
SHA1: 8C:D1:B0:50:9B:2C:1D:E9:D5:1C:CF:51:F0:8B:CA:DF:1D:8D:AD:DF
D:\j2sdk1.4.2_11\bin>keytool.exe -import -alias my2ndcert
Enter keystore password: keytool error: java.lang.NullPointerException
D:\j2sdk1.4.2_11\bin>keytool.exe -import -alias my2ndcert -file my1stcert.cer -keystore my.keystore
Enter keystore password: yechao
Owner: CN=Ye Chao, OU=3k, O=rits, L=shanghai, ST=china, C= ZH
Issuer: CN=Ye Chao, OU=3k, O=rits, L=shanghai, ST=china, C= ZH
Serial number: 4695a009
Valid from: Thu Jul 12 11:29:13 GMT+08:00 2007 until: Wed Oct 10 11:29:13 GMT+08:00 2007
Certificate fingerprints:
MD5: 88:AF:00:DA:4E:45:5E:60:F8:DB:5E:62:4E:E3:65:57
SHA1: 0F:FD:D8:0D:AD:E2:5B:DA:4E:A2:89:F0:4C:1B:B1:63:9D:1F:7F:89
Trust this certificate? [no]: yes
Certificate was added to keystore
D:\j2sdk1.4.2_11\bin>keytool.exe -list -keystore my.keystore
Enter keystore password: yechao
Keystore type: jks
Keystore provider: SUN
Your keystore contains 2 entries
my2ndcert, Jul 12, 2007, trustedCertEntry,
Certificate fingerprint (MD5): 88:AF:00:DA:4E:45:5E:60:F8:DB:5E:62:4E:E3:65:57
my1stcert, Jul 12, 2007, keyEntry,
Certificate fingerprint (MD5): F8:8E:3E:41:59:8A:34:F5:DF:0F:4B:DE:37:EB:87:1F
分享到:
相关推荐
`keytool` 是 Java 提供的一个强大的命令行工具,用于管理和维护 Java 应用程序的安全性,特别是密钥和证书方面。它允许用户创建、导入、导出、查看和删除密钥库中的证书。这些操作对于开发安全的应用程序至关重要。...
Java代码验证keytool工具生成的密钥对是一个关键的安全操作,尤其在开发和部署SSL/TLS加密、Android应用签名或服务器身份验证等场景中。Keytool是Java Development Kit(JDK)自带的一个命令行工具,用于管理公钥/...
Java的`keytool`工具是Java Development Kit (JDK) 中的一个重要组件,主要用于管理和操作密钥对(公钥和私钥)以及数字证书。它提供了在本地系统中创建、导入、导出、查看和管理这些安全凭证的功能,这对于开发和...
2. 密钥库管理:Keytool-IUI需要能够创建、打开、修改和删除JKS(Java Keystore)或PKCS12格式的密钥库。 3. 证书操作:源码会涉及证书的导入、导出,以及处理自签名证书和从证书颁发机构(CA)获取的证书。 4. 证书链...
1. **创建Keystore**:使用`keytool`命令行工具,Java自带的工具,可以创建一个新的Keystore。例如: ``` keytool -genkeypair -alias mykey -keyalg RSA -keystore mykeystore.jks ``` 这将创建一个名为`...
KeyTool是Java Development Kit (JDK)的一部分,它提供了一系列命令来创建、查看、导出、导入和管理密钥对和证书。下面是一些主要的KeyTool命令: 1. **生成密钥对**:`keytool -genkeypair` 使用此命令,你可以...
`keytool` 是 Java 开发工具包 (JDK) 中自带的一个强大的命令行工具,用于管理和维护 Java 应用程序的安全性。它主要用于创建、导入、管理和删除密钥对与数字证书。本文将详细介绍 `keytool` 支持的不同类型的密钥库...
使用Java_keytool工具可以生成密钥存储文件和密钥对。密钥对是指公钥、私钥和证书的组合,用于实现加密、身份验证和数字签名等功能。生成密钥存储文件和密钥对的命令为: keytool -genkey -alias server -keyalg ...
Keytool则是Java平台上的一个命令行工具,用于管理Java密钥库(KeyStore),包括生成、导入和导出公钥和私钥对。 OpenSSL的知识点: 1. **加密算法**:OpenSSL支持多种加密算法,如RSA、DSA、AES、DES等,这些算法...
标题中的“keytool建立双向认证”指的是在Java环境中使用keytool工具进行SSL/TLS协议的双向身份认证(Mutual TLS)配置。双向认证是一种安全通信协议,它要求客户端和服务器都提供身份验证,以确保双方的身份是可信...
标题 "keytool+tomcat 单向/双向认证的配置" 涉及的是在Java安全领域中的证书管理和服务器身份验证。keytool是Java提供的一个命令行工具,用于管理Java密钥库(keystore),而Tomcat是广泛使用的Java应用服务器。当...
4. **导入证书**:如果需要将其他源的证书导入密钥库,可以使用`keytool -importcert -alias alias_name -file imported_certificate.crt -keystore keystore_name.jks`命令。 5. **查看密钥库信息**:`keytool -...
1. **Java Keystore管理**:如何创建、导入、导出和管理Keystore,包括使用`keytool`命令行工具进行操作。 2. **证书的生命周期**:从申请证书、颁发、安装、更新到撤销的过程。 3. **信任锚点(Truststore)**:...
6. **密钥库操作**:`keytool`命令行工具或Java API(如`KeyStore`类)用于管理密钥库,包括导入、导出、查看和删除证书及密钥。 7. **信任管理**:`java.security.cert.TrustManager`用于判断收到的证书是否可信,...
Java Keystore工具,如"Keystore Tool v0.1",是Java开发中用于管理和操作密钥库(Keystore)的重要软件。密钥库在网络安全,尤其是与SSL/TLS协议相关的应用中扮演着核心角色。它存储了数字证书、私钥、公钥和其他...
`keytool`是Java Development Kit (JDK)自带的一个工具,用于管理密钥对(公钥和私钥)和证书,它可以帮助我们创建、存储和管理数字证书,确保数据传输的安全性。本篇文章将深入探讨`keytool`的使用,特别是如何通过...
KeyTool是Java SDK提供的一款命令行工具,用于管理和操作密钥库(keystore),它包含了密钥对(公钥和私钥)以及数字证书等安全相关的元素。以下是KeyTool的一些主要功能和使用方法。 1. **生成密钥对** 使用`...
标题中的“通过秘密键/证明书/CA证明书生成keystore文件”指的是在Java或相关安全领域中,创建一个keystore文件的过程。keystore是存储密钥、证书和私钥对的安全容器,常用于HTTPS通信、SSL/TLS配置以及数字签名等...
1. 运行`keytool -genkeypair`命令,指定输出的keystore文件名、密码以及开发者信息(如别名、组织名等)。 2. `keytool`会生成一对密钥:公钥和私钥。私钥存储在keystore中,公钥则可以发布给他人用于验证签名。 ...
KeyTool Utility项目 该项目试图简化KeyTools的常见操作,例如: 生成带有自签名证书的新密钥对 添加现有的私钥和证书 生成新的证书签名请求( CSR ) 签署企业社会责任并产生认证链(p7b) 免责声明: 为了减少...