近来由于项目需要做Single Sign On,
研究了一下CAS
(具体配置等下篇再介绍),
而这个CAS
的配置最关键的不是CAS
本身,而是数字证书,如何配置多台服务器之间的信任链接。因此,有必要把keystore, keytool
的东西翻出来晒晒。
几个概念
keystore
是 一个密码保护的文件,用来存储密钥和证书(也就是说,keystore
中存储的有两类型entries
);这个文件(默认的)位于你的home
目录,也就 是你登录到操作系统的用户名的那个目录。或者通过-keystore
参数设为你指定的位置。需要说明的是:如果不通过-keystore
来指定位置,将使
用home
目录中的默认keystore
文件。smilingleo
原创
通过-alias
来检索keystore
中的具体内容(keystore
中可能存有多个entry
)
如果想查看keystore
中每个entry
的详细信息,比如谁签发的,用-v
参数(verbose
),里面你还可以看到默认的有效期。
系统签署的证书其有效期默认为一年,通过-validity
来设定其具体的天数。
重要
:JDK\jre \lib\security
目录下面有一个cacerts
的文件,就是一个keystore
,其默认密码是changeit
。如果一个App Server
想建立一个安全的链接到另外一个Server,
需要通过一个受信的数字证书,而这个证书就需要存储在cacerts
中。
keytool
用来import, export, list keystore
中内容的工具,还可以用来以测试为目的,生成自己签署的证书。
了解了上面的概念之后,你操作起来就比较容易,比如我们想从一个keystore
(文件存在home
目录的.keystore
文件)中删除某个entry
, 其alias
是tomcat5
,那么keytool
命令就是:
keytool -keystore .keystore -delete -alias tomcat5
是不是很自然?
理解:签署
服务器上产生一个证书之后,用这个证书签署Applet
等,以表明这个applet
确实是来源于这个服务器,而不是其他,以实现其真实性,如果你信任服务器,那么你就可以信任这个applet
。
比如你可以通过jarsigner
工具,用keystore
中的某个key entry
来签署一个jar
文件。
分享到:
相关推荐
KeyTool工具生成X.509证书是Java平台自带的一个命令行工具,它主要用于管理和操作密钥对(公钥和私钥)以及数字证书。在本文中,我们将深入探讨KeyTool的基本用法、X.509证书的概念,以及如何使用KeyTool生成这种...
在Java环境中,keytool是用于管理KeyStore的命令行工具,可以进行证书的创建、导入、导出等操作。本文将详细讲解如何使用Java程序导出JVM KeyStore中的私钥,以及这个过程在配置SSL(Secure Sockets Layer)时的作用...
2. **导入和导出证书**:KeyTool IUI支持导入现有的证书和密钥对到KeyStore,同时也允许将它们导出到文件,以便在其他系统中使用。 3. **查看证书信息**:工具提供了查看证书详细信息的功能,包括发行者、有效期、...
keytool是Java提供的一个命令行工具,用于管理Java密钥库(keystore),而Tomcat是广泛使用的Java应用服务器。当我们谈论单向和双向认证,这是SSL/TLS协议中的安全概念,用于确保网络通信的安全性。 **单向认证...
1. 安装图形化KeyTool工具:这通常是一个第三方软件,比如KeyStore Explorer或Portecle,它们提供了友好的界面来操作KeyTool的命令。 2. 创建密钥库:在图形化界面中,用户可以选择创建一个新的密钥库,设置类型...
Java的密钥管理工具Keytool-IUI是Java开发人员在处理加密、安全通信以及数字证书时不可或缺的一个实用程序。Keytool-IUI是对Java标准版(JDK)自带的keytool命令行工具的一种增强,提供了更加用户友好的图形界面,...
KeyTool是Java开发工具包(JDK)中的一部分,它是一个强大的命令行工具,用于管理公钥基础设施(PKI)中的密钥对和数字证书。...通过使用GUI KeyTool工具,用户可以更方便地执行这些任务,提高工作效率。
标题中的“keytool 加密证书制作”指的是使用Java自带的工具——keytool,来创建和管理数字证书。这个过程涉及到网络安全、加密技术和PKI(Public Key Infrastructure,公钥基础设施)等概念。 首先,理解keytool的...
总结来说,`keytool-importkeypair.zip`包含了一套系统签名工具,用于处理密钥对、证书和keystore文件,这对于Android系统的安全性和应用的发布至关重要。使用这些工具时,必须遵循正确的步骤和许可规定,以确保系统...
标题中的“keytool建立双向认证”指的是在Java环境中使用keytool工具进行SSL/TLS协议的双向身份认证(Mutual TLS)配置。双向认证是一种安全通信协议,它要求客户端和服务器都提供身份验证,以确保双方的身份是可信...
1. **创建Keystore**:使用`keytool`命令行工具,Java自带的工具,可以创建一个新的Keystore。例如: ``` keytool -genkeypair -alias mykey -keyalg RSA -keystore mykeystore.jks ``` 这将创建一个名为`...
在Keytool-IUI的源码中,我们可以期待看到以下核心概念和功能: 1. 密钥对生成:源码会包含生成RSA或DSA等加密算法的公钥和私钥对的逻辑。 2. 密钥库管理:Keytool-IUI需要能够创建、打开、修改和删除JKS(Java ...
#### 知识点一:KeyTool工具简介 KeyTool是Java自带的一个命令行工具,用于管理密钥库(Keystore),它能够帮助用户创建、管理数字证书以及私钥/公钥对。密钥库是用于存储各种密钥和证书链的文件。KeyTool提供的...
1. 创建`keystore`:开发者可以使用`keytool`工具创建一个新的`keystore`文件。例如,以下命令可以在控制台创建一个名为`myapp.keystore`的`keystore`: ``` keytool -genkey -v -keystore myapp.keystore -alias ...
使用Java的关键工具`keytool`来创建一个新的keystore文件。打开命令行工具,然后执行以下命令: ```bash keytool -genkey -v -keystore my-release-key.keystore -alias alias_name -keyalg RSA -keysize 2048 -...
在本主题中,我们将深入探讨如何使用keytool生成证书及其相关概念。 首先,让我们了解什么是证书。证书是一种电子文档,它包含了公钥以及证书持有者的身份信息,并由可信任的第三方机构(称为证书颁发机构,或CA)...
通过上述的详细介绍,我们不仅了解了 `keytool` 的基本概念,还掌握了如何使用它来执行各种常见的密钥和证书管理任务。这对于开发安全的 Java 应用程序非常重要。希望本文能帮助开发者更好地理解和应用 `keytool` 这...
接下来,我们将使用Java的Keytool工具来生成RSA密钥对。Keytool是一个命令行工具,位于JDK的bin目录下。生成密钥对的命令格式如下: ``` keytool -genkeypair -alias <别名> -keyalg RSA -keysize <密钥长度> -...
本文将详细介绍KeyTool的基本概念、使用方法以及如何生成和管理keystore。 一、KeyTool及相关概念 1. Keytool.exe Keytool.exe是Java SDK附带的一个命令行工具,位于%JAVA_HOME%\bin目录下。它的主要功能是处理...