zoukankan      html  css  js  c++  java
  • 转/keystore和truststore的区别

    keytool是java自带的工具用于产生密钥

    keystore可以看成一个放key的库,key就是公钥,私钥,数字签名等组成的一个信息。

    truststore是放信任的证书的一个store.

    那他们之间有啥关系和联系呢?在一个安全链接的模型中又各自起到什么作用呢?

    其实我也没搞太清楚-_-b

    我先把目前的理解记下来,以后再慢慢修正

    这篇主要针对的是web应用,web应用一般是通过https,ssl来做客户端和server端的链接 

    就以单向验证为例,服务器端的app server是tomcat

    目前比较常用(我感觉是简单)的安全方案是单向验证,也就是说,客户端IE会验证服务器端的身份。这需要在服务器端做一些配置。

    1. 在命令行中通过使用keytool在keystore中生成一个key.

       这里就有两个概念了,keystore和key

       key,存放了数字证书(包括公钥和发布者的数字签名),以及私钥

       keystore,可以认为是放key的一个仓库,以文件的形式存在系统中,默认是放在C:Documents and Settingsuser...下,也可以在命令行中指定路径和文件名

    2.将key以数字证书的形式从keystore中导出,数字证书(包括公钥和发布者的数字签名)

    3.将数字证书导入到truststore,一般是tomcat所用的JAVA_HOME下的jrelibsecuritycacerts文件

      其实,truststore和keystore的性质是一样的,都是存放key的一个仓库,区别在于,truststore里存放的是只包含公钥的数字证书,代表了可以信任的证书,而keystore是包含私钥的。但是具体应用还有待深入研究,这里我还不是非常清楚

    4.配置tomcat下的server.xml里相应的ssl端口,这样客户端就可以通过https来访问server了

  • 相关阅读:
    java枚举常见用法
    redis初使用
    Linux上搭建svn资源库
    redis集群创建
    大数据学习之Hadoop运行模式
    集群时间同步
    ssh免密登录
    mvc项目问题清单以及解决方法
    Memcached分布式缓存初体验
    Asp.Net 一个请求的处理流程
  • 原文地址:https://www.cnblogs.com/gaoxing/p/4805311.html
Copyright © 2011-2022 走看看