`
lukejin
  • 浏览: 366115 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

keyStore vs trustStore

    博客分类:
  • Java
阅读更多

今天有同事向我问起这两个概念,所以我就记录下。
首先我们得澄清一些概念。
一个web应用如果需要提供以https的方式访问的服务的话,我们需要一个数字证书,这个证书的配置是在apache的配置文件或者其他web容器的配置文件中进行配置的。当然这个可以保存在keystore中。

我们自己的应用中通常所说的keystore或者truststore主要是针对于应用本身的需求来的。
keystore和truststore从其文件格式来看其实是一个东西,只是为了方便管理将其分开
keystore中一般保存的是我们的私钥,用来加解密或者为别人做签名



 
truststore中保存的是一些可信任的证书,主要是java在代码中访问某个https的时候对被访问者进行认证的,以确保其实可信任的。

truststore是必须的,如果我们没有显式的指定,那么java会默认指定为$JAVA_HOME/lib/security/cacerts 这个文件。

如果要指定的话,可以在java的参数中进行指定

 

   -Djavax.net.ssl.keyStore=clientKeys 
   -Djavax.net.ssl.keyStorePassword=password 
   -Djavax.net.ssl.trustStore=clientTrust 
   -Djavax.net.ssl.trustStorePassword=password 

 

 

 

  • 大小: 12.3 KB
2
0
分享到:
评论
1 楼 di1984HIT 2013-10-19  
写的很好,学习了/

相关推荐

    对密钥,密钥对,公钥,证书,私钥,jks,keystore,truststore,cer,pfx

    密钥、密钥对、公钥、证书、、私钥、jks、keystore、truststore、cer、pfx 等概念是信息安全领域中密钥管理和加密技术的重要组成部分。下面对这些概念进行详细的解释和说明: 1. 密钥:指的是公钥和私钥的统称。...

    java keytool安全证书学习

    在Java Secure Socket Extension (JSSE) 中,它扮演着创建和管理KeyStore和TrustStore的角色,以实现SSL/TLS协议的安全通信。 KeyStore是Java用来存储密钥对和证书的容器,它可以包含公钥、私钥以及相应的证书链。...

    为高级 JSSE 开发人员定制 SSL

    开发者可以通过系统属性`javax.net.ssl.keyStore`和`javax.net.ssl.trustStore`来指定KeyStore和TrustStore的路径和密码。 2. **KeyManagers和TrustManagers**:JSSE中的KeyManager处理密钥和证书的选择,而...

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

    truststoreFile="/path/to/truststore_file.jks" truststorePass="truststore_password" keyAlias="alias_name"/> ``` **标签 "源码 工具"** 暗示这篇博文可能包含了使用keytool和Tomcat配置的源代码示例,以及...

    nifi配置超级用户_nifi_nifi配置超级用户_

    这通常涉及创建一个Keystore(用于存储服务器的私钥和证书)和Truststore(用于存储客户端证书)。使用`keytool`命令行工具可以创建这些文件,确保设置适当的密码以保护它们。 2. **配置NiFi属性**:在`nifi....

    用JSSE定制SSL连接.docx

    在使用JSSE进行开发之前,需要配置几个关键的文件:KeyStore和TrustStore。 ##### KeyStore KeyStore用于存储私钥和证书链,是客户端或服务器身份验证的基础。 - **客户端KeyStore**:包含客户端的私钥及其对应的...

    tomcat实现SSL双向认证

    keystore 和 truststore 都可以是同一个文件,但通常情况下,keystore 用于存储应用程序的私钥,而 truststore 用于存储可信任的证书。 六、总结 本文详细介绍了如何在 Tomcat 中实现 SSL 双向认证,包括使用 ...

    客户端与服务器SSL双向认证(客户端:java-服务端:java)

    - 配置SSLContext:使用KeyManagerFactory和TrustManagerFactory加载Keystore和Truststore,然后创建SSLContext实例。 - 配置ServerSocket:在ServerSocket上启用SSL,通过SSLContext的getServerSocketFactory()...

    truststore:用于本地安装开发证书的软件包

    2. **KeyStore和TrustStore**:KeyStore通常存储私钥和对应的证书,用于证明应用或服务器的身份;TrustStore则存储我们信任的其他实体(如服务器)的证书,用于验证它们的身份。 3. **SSL/TLS协议**:Secure ...

    JSP_SAB_3.0.1_mainly8et_北京ca_CA集成_

    7. **安全实践**:除了技术上的集成,还要注意安全实践,如定期更新证书,保持KeyStore和TrustStore的访问权限安全,避免泄露私钥。 在整个过程中,理解Java的SSL/TLS协议、KeyStore和TrustStore的概念以及如何使用...

    activemq ssl双向认证连接

    这可以通过设置系统属性`javax.net.ssl.keyStore`、`javax.net.ssl.keyStorePassword`、`javax.net.ssl.trustStore`和`javax.net.ssl.trustStorePassword`来完成。 4. **连接ActiveMQ**:使用ActiveMQ的Java API或...

    Tomcat下使用ssl实现双向认证[网络安全]

    其中,`clientAuth="true"`开启双向认证,`keystoreFile`和`truststoreFile`分别指定Keystore和Truststore路径,`keystorePass`和`truststorePass`是对应的密码。 5. **重新启动Tomcat**: 修改配置后,重启...

    java 发送https 请求 证书

    3. **在Java代码中配置TrustStore**:在Java代码中,你需要设置`javax.net.ssl.trustStore`和`javax.net.ssl.trustStorePassword`系统属性,指向你的TrustStore文件和密码: ```java System.setProperty("javax...

    4.CXF安全访问之单向SSL或者双向SSL(三)

    2. **设置CXF配置**:在CXF的配置文件(如cxf.xml或Spring配置文件)中,指定keystore和truststore的路径、密码等信息。 3. **启用SSL**:在服务器端,需要配置HTTPConduit或HTTPSConduit来启用SSL,设置相应的SSL...

    weblogic配置

    需要注意的是,为了提高安全性,在生产环境中应使用正式的CA证书,并确保正确配置KeyStore和TrustStore。此外,定期更新证书和密码也是必要的,以防止潜在的安全风险。希望本文能够帮助大家更好地理解和掌握WebLogic...

    Elasticsearch启动常见问题

    错误信息: 解决办法: 文件夹赋予用户权限 [root@chenxi elasticsearch]# chown -R eschenxi:esgroup /chenxi/software/elasticsearch #”/chenxi/software/elasticsearch” 为安装目录 错误信息:max virtual ...

    https请求加载证书

    在Java中,这通常涉及到KeyStore和TrustStore的概念。KeyStore存储私钥和证书,而TrustStore则存储我们信任的CA证书。在Spring Boot应用中,可以通过配置`server.ssl.key-store`和`server.ssl.trust-store`等属性来...

    weblogic的SSL配置 CA认证.rar

    2. **KeyStore和TrustStore**:KeyStore是WebLogic存储密钥对(公钥和私钥)的地方,通常包含服务器证书。TrustStore则存储被服务器信任的CA的证书,用于验证客户端身份。在配置时,我们需要提供这两个文件的路径和...

Global site tag (gtag.js) - Google Analytics