zoukankan      html  css  js  c++  java
  • java keystore

    JAVA有一个keystore用来存放私钥和证书,该文件是伴随JDK默认存在的,路径默认是/lib/security/cacerts,默认密码是changeit,实际上空密码也可以直接访问

    其中cacerts就是上面说的keystore

    我们使用命令keytool -list -rfc -keystore cacerts来列出其中的内容

    -list -rfc 这些参数的意思可以参考下图

    在乐山的时候,我们的代码曾经在测试环境报过一个错误

    我们代码报这个错,是在KeyProvider这个bean实例化的时候,要给密钥容器密码赋值,我们配的是明文12345678,导致解密失败。实际上配置密文就可以了。

    但是为什么配了明文之后,解密失败,最后keystorePassword为空,竟然也能正常工作呢。

    经过查资料和不断实验,我发现无论keystore设置什么密码,都能以空密码进入。也就是说,keystore就是可以在不输入密码的时候访问的。那这个密码的用途是什么呢。

    在不输入密码的时候访问keystore,有一段提示

    *****************  WARNING WARNING WARNING  *****************
    * 存储在您的密钥库中的信息的完整性  *
    * 尚未经过验证!  为了验证其完整性, *
    * 必须提供密钥库口令。                  *
    *****************  WARNING WARNING WARNING  *****************

    可以看出,该密码的作用是为了维护信息的完整性

    具体的工作机制,在stackoverflow中有人做了解答:https://stackoverflow.com/questions/2343691/do-you-not-need-a-password-to-access-a-truststore-made-with-the-java-keytool

  • 相关阅读:
    ArchLinux新版本(pacstrap安装)及国内较优源推荐
    [转载]打造自己喜欢的Linux桌面----archlinux
    ArchLinux下LXDE的安装与设置心得
    [转载]linux 文件改名,移动
    SaaS(软件即服务)架构设计
    临时表空间
    DTCMS自定义标签,获取所有栏目以及获得二级子栏目导航
    Druid简介
    jeecg 模糊查询
    JEECG中的模糊查询
  • 原文地址:https://www.cnblogs.com/heben/p/7651479.html
Copyright © 2011-2022 走看看