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

使用keytool来创建管理密钥及证书

    博客分类:
  • java
 
阅读更多

使用SSL来实现安全加密通讯需要有密码对及公钥证书等..

JDK中自带的一个工具keytool就可以用来生成密钥对..管理密码仓库以及证书的导入导出..

keytool的默认路径在~\java\jdk1.7.0\bin\下..以下介绍keytool的几种基本应用..

1)创建服务端密钥库

>keytool -genkey -keystore d:\serverkey.jks -keyalg rsa -alias ssl1 -validity 700

上述命令中:

-genkey 生成密钥对

-keystore 指定密码仓库的文件地址

-keyalg 密钥所使用的算法

-alias 密钥别名..使用密钥时是使用此别名来区分的

-validity 密钥有效期(天)..从当前系统时间开始计算

该命令成功后会要求输入密码仓库的密码..例如111111

然后是输入你的个人信息..

最后会要求输入别名的密码..例如222222

创建成功后..在建立服务端的SSL连接时用下述方法导入密钥..

String keyFile = serverkey.jks

String keyFilePass = "111111"

KeyStore ks = KeyStore.getInstance("JKS");

ks.load(new FileInputStream(keyFile), keyFilePass.toCharArray());

再利用该密码仓库来进行相应操作..

2)将服务端的公钥导出成证书

>keytool -export -alias ssl1 -file d:\ssl1.cer -keystore d:\serverkey.jks

-export 导出

导出成功后就得到了ssl1.cer这一份证书了..然后就是要将这一份证书分发给客户端..客户端有了该证书后就能与服务端建立安全连接了..

3)生成客户端的密钥仓库

方法与1)类似..

4)将*.cer导入到客户端的密钥仓库里

>keytool -import -file d:\ssl1.cer -keystore d:\clientkey.jks

-import 导入

上述命令成功后会要求输入客户端密钥仓库的密码..

成功后在每次要访问服务端之前还要将该证书添加到受信域中..系统会自动从受信域中检查可用的证书来完成SSL连接通讯..

String keyFile = clientkey.jks

String keyFilePass = "111111"

System.setProperty("javax.net.ssl.trustStore",keyFile);

System.setProperty("javax.net.ssl.trustStorePassword",keyFilePass);

以上..实现了密钥对的创建及管理之后..我们就可以开始实现SSL通讯了..

 

分享到:
评论

相关推荐

    密钥管理工具 Keytool-IUI

    2. **Keytool命令行工具**:Keytool是Java的标准工具,用于生成、存储、导出、导入和管理密钥对及证书。它可以创建Keystore,这是存储密钥对和证书的安全库,支持多种格式如JKS(Java Key Store)和PKCS12。 3. **...

    keytool - 密钥和证书管理工具

    - **创建密钥库**:Keytool可以创建一个包含密钥对的文件,称为密钥库(Keystore)。默认的密钥库类型是JKS(Java Key Store)。 - **生成密钥对**:在密钥库中,Keytool能生成新的密钥对,并将其与自签名的证书...

    基于Java的密钥管理工具 Keytool-IUI.zip

    通过使用Keytool,开发者可以创建本地密钥库,生成公钥和私钥对,导入和导出证书,以及进行各种安全相关的验证。 Keytool-IUI则是在Keytool基础上的一个增强版本,它引入了图形用户界面,使得非技术用户也能更轻松...

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

    KeyTool是Java Development Kit (JDK)自带的一个命令行工具,它主要用于创建、管理及导出数字证书和密钥对。这些证书用于验证服务器的身份,确保数据传输的安全性,比如在HTTPS协议中。 2. **证书与密钥** - **...

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

    Java的Keytool是一个重要的工具,它用于管理Java的密钥对和数字证书,这些是进行安全网络通信的基础。Keytool的全名是“Java Key Tool”,它被集成在Java Development Kit (JDK) 中,提供了生成、存储和管理密钥对、...

    密钥管理工具 Keytool-IUI.7z

    1. **创建密钥库**:Keytool可以创建一个新的密钥库,这是一个存储密钥对和证书的安全文件。默认的密钥库类型是JKS(Java Key Store),但也可以支持其他格式如PKCS12。 2. **生成密钥对**:在密钥库中,用户可以...

    Linux命令keytool命令 – 密钥和证书管理工具.docx

    `keytool`是Java开发工具包(JDK)的一部分,主要功能是管理和操作密钥对和数字证书。这个工具在Linux和其他操作系统上广泛用于安全配置,特别是在构建HTTPS服务器、SSL/TLS连接以及进行数字签名等方面。以下是关于`...

    KeyTool 工具生成X.509证书

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

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

    Java代码验证keytool工具生成的密钥...总的来说,理解并熟练使用keytool生成和验证密钥对是Java开发者必备的技能之一,它关乎到应用程序的安全性和合规性。通过学习和实践,你可以更好地掌控这些核心的加密和认证技术。

    Keytool与数字证书

    本文主要介绍了如何使用Keytool工具来生成密钥、创建自签名证书、导入第三方证书、导出数字证书以及配置HTTPS服务的过程。这些步骤对于搭建安全的网络通信至关重要。在实际操作过程中需要注意细节,如密钥库密码的...

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

    在Java程序中,你可以使用 `KeyStore` 类来加载这个 keystore 文件,并使用 `KeyManagerFactory` 和 `TrustManagerFactory` 来管理和验证证书。例如,以下代码片段展示了如何加载 keystore: ```java import java....

    证书工具KeyTool1.6

    KeyTool 1.6是一个关键的组件,因为它允许用户创建、存储、导出和管理这些数字证书。以下是一些主要功能: 1. **生成密钥对**:KeyTool可以生成RSA、DSA或EC等算法的密钥对。密钥对包括一个私钥和一个对应的公钥,...

    基于Java的实例源码-密钥管理工具 Keytool-IUI.zip

    - 创建密钥库:`keytool -genkeypair` - 导入证书:`keytool -importcert` - 查看密钥库内容:`keytool -list` - 删除密钥或证书:`keytool -delete` 7. **注意事项**: - 密钥库的保护:应妥善保管密钥库的...

    keytool生成证书

    Keytool是Java提供的一款工具,主要用于管理密钥对(公钥和私钥)以及数字证书,它允许用户创建、存储和管理这些安全组件。在本主题中,我们将深入探讨如何使用keytool生成证书及其相关概念。 首先,让我们了解什么...

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

    总结来说,通过`keytool`命令行工具,我们可以生成并管理数字证书,包括创建具有特定DN的证书,并结合`ConventPFX.java`这样的工具类,将证书导出为PFX格式,方便在不同环境下的使用。在进行这些操作时,务必确保...

    Java&keytool生成RSA密钥

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

    java keytool使用例子

    总之,Java Keytool是Java环境下的强大工具,通过它我们可以方便地创建、管理和维护数字证书和密钥对,为网络安全提供基础保障。了解并熟练使用Keytool,对于进行安全的Java应用开发和系统运维至关重要。

    Java KeyTool使用

    下面是使用 KeyTool 的详细指南,包括创建密钥对、导出证书、将证书导入 Java 信任证书库等内容。 生成密钥对 KeyTool 提供了生成密钥对的功能,用于创建数字证书。可以使用以下命令生成密钥对: `keytool -...

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

    创建密钥仓库时会要求输入访问口令,以后需要使用此口令来访问。 使用 P12 格式证书导入时,keytool 无法直接导入 PKCS12 文件。可以通过将 pfx 文件导入到 IE 浏览器中,再导出为 cert 格式文件,然后使用上面介绍...

    keytool证书制作工具

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

Global site tag (gtag.js) - Google Analytics