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

  • 相关阅读:
    UVA 11019 Matrix Matcher ( 二维字符串匹配, AC自动机 || 二维Hash )
    蓝桥杯 修改数组 (巧用并查集)
    luoguP3242 [HNOI2015]接水果
    CF757F Team Rocket Rises Again
    luoguP2597 [ZJOI2012]灾难
    luoguP4103 [HEOI2014]大工程
    luoguP3233 [HNOI2014]世界树
    luoguP2495 [SDOI2011]消耗战
    CF613D Kingdom and its Cities
    51nod 1584 加权约数和
  • 原文地址:https://www.cnblogs.com/heben/p/7651479.html
Copyright © 2011-2022 走看看