`
booby325
  • 浏览: 386472 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

利用java的keytool创建keystore和certificate的简单命令

阅读更多

做的事情是:

  1. 创建一个keystore my.keystore,其中包含一个别名为my1stcert的证明书;
  2. 然后导出该证明书到my1stcert.cer文件;
  3. 查看证明书文件的内容;
  4. 再将文件my1stcert.cer导入到my.keystore中,其别名为my2ndcert;
  5. 查看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

分享到:
评论

相关推荐

    java keytool

    `keytool` 是 Java 提供的一个强大的命令行工具,用于管理和维护 Java 应用程序的安全性,特别是密钥和证书方面。它允许用户创建、导入、导出、查看和删除密钥库中的证书。这些操作对于开发安全的应用程序至关重要。...

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

    Java代码验证keytool工具生成的密钥对是一个关键的安全操作,尤其在开发和部署SSL/TLS加密、Android应用签名或服务器身份验证等场景中。Keytool是Java Development Kit(JDK)自带的一个命令行工具,用于管理公钥/...

    JAVA keytool数字证书生成及应用

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

    基于java的开发源码-密钥管理工具 Keytool-IUI.zip

    2. 密钥库管理:Keytool-IUI需要能够创建、打开、修改和删除JKS(Java Keystore)或PKCS12格式的密钥库。 3. 证书操作:源码会涉及证书的导入、导出,以及处理自签名证书和从证书颁发机构(CA)获取的证书。 4. 证书链...

    java keystore导出.pfx .key .crt 私钥

    1. **创建Keystore**:使用`keytool`命令行工具,Java自带的工具,可以创建一个新的Keystore。例如: ``` keytool -genkeypair -alias mykey -keyalg RSA -keystore mykeystore.jks ``` 这将创建一个名为`...

    KeyTool 工具生成X.509证书

    KeyTool是Java Development Kit (JDK)的一部分,它提供了一系列命令来创建、查看、导出、导入和管理密钥对和证书。下面是一些主要的KeyTool命令: 1. **生成密钥对**:`keytool -genkeypair` 使用此命令,你可以...

    javakeytool支持的类型及如何将证书导入jks中.docx

    `keytool` 是 Java 开发工具包 (JDK) 中自带的一个强大的命令行工具,用于管理和维护 Java 应用程序的安全性。它主要用于创建、导入、管理和删除密钥对与数字证书。本文将详细介绍 `keytool` 支持的不同类型的密钥库...

    Java_keytool密钥存储文件

    使用Java_keytool工具可以生成密钥存储文件和密钥对。密钥对是指公钥、私钥和证书的组合,用于实现加密、身份验证和数字签名等功能。生成密钥存储文件和密钥对的命令为: keytool -genkey -alias server -keyalg ...

    OpenSSL and Keytool

    Keytool则是Java平台上的一个命令行工具,用于管理Java密钥库(KeyStore),包括生成、导入和导出公钥和私钥对。 OpenSSL的知识点: 1. **加密算法**:OpenSSL支持多种加密算法,如RSA、DSA、AES、DES等,这些算法...

    keytool建立双向认证

    标题中的“keytool建立双向认证”指的是在Java环境中使用keytool工具进行SSL/TLS协议的双向身份认证(Mutual TLS)配置。双向认证是一种安全通信协议,它要求客户端和服务器都提供身份验证,以确保双方的身份是可信...

    keytool+tomcat 单向/双向认证的配置

    标题 "keytool+tomcat 单向/双向认证的配置" 涉及的是在Java安全领域中的证书管理和服务器身份验证。keytool是Java提供的一个命令行工具,用于管理Java密钥库(keystore),而Tomcat是广泛使用的Java应用服务器。当...

    KeyTool

    4. **导入证书**:如果需要将其他源的证书导入密钥库,可以使用`keytool -importcert -alias alias_name -file imported_certificate.crt -keystore keystore_name.jks`命令。 5. **查看密钥库信息**:`keytool -...

    SUN Java certificate tutorial.rar

    1. **Java Keystore管理**:如何创建、导入、导出和管理Keystore,包括使用`keytool`命令行工具进行操作。 2. **证书的生命周期**:从申请证书、颁发、安装、更新到撤销的过程。 3. **信任锚点(Truststore)**:...

    Certificate_java_java数字签名_java签名证书_数字证书_

    6. **密钥库操作**:`keytool`命令行工具或Java API(如`KeyStore`类)用于管理密钥库,包括导入、导出、查看和删除证书及密钥。 7. **信任管理**:`java.security.cert.TrustManager`用于判断收到的证书是否可信,...

    Keystore Tool v0.1

    Java Keystore工具,如"Keystore Tool v0.1",是Java开发中用于管理和操作密钥库(Keystore)的重要软件。密钥库在网络安全,尤其是与SSL/TLS协议相关的应用中扮演着核心角色。它存储了数字证书、私钥、公钥和其他...

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

    `keytool`是Java Development Kit (JDK)自带的一个工具,用于管理密钥对(公钥和私钥)和证书,它可以帮助我们创建、存储和管理数字证书,确保数据传输的安全性。本篇文章将深入探讨`keytool`的使用,特别是如何通过...

    KeyTool.doc

    KeyTool是Java SDK提供的一款命令行工具,用于管理和操作密钥库(keystore),它包含了密钥对(公钥和私钥)以及数字证书等安全相关的元素。以下是KeyTool的一些主要功能和使用方法。 1. **生成密钥对** 使用`...

    通过秘密键/证明书/CA证明书生成keystore文件

    标题中的“通过秘密键/证明书/CA证明书生成keystore文件”指的是在Java或相关安全领域中,创建一个keystore文件的过程。keystore是存储密钥、证书和私钥对的安全容器,常用于HTTPS通信、SSL/TLS配置以及数字签名等...

    java生成及验证android签名文件源码及生成签名文件

    1. 运行`keytool -genkeypair`命令,指定输出的keystore文件名、密码以及开发者信息(如别名、组织名等)。 2. `keytool`会生成一对密钥:公钥和私钥。私钥存储在keystore中,公钥则可以发布给他人用于验证签名。 ...

    keytool-helper:简单的KeyTool实用程序

    KeyTool Utility项目 该项目试图简化KeyTools的常见操作,例如: 生成带有自签名证书的新密钥对 添加现有的私钥和证书 生成新的证书签名请求( CSR ) 签署企业社会责任并产生认证链(p7b) 免责声明: 为了减少...

Global site tag (gtag.js) - Google Analytics