我想使用自签名证书连接到TLS服务器,因此我需要一个自定义信任存储。 keytool
似乎绝对需要密码才能导入证书,但我真的不需要密码保护信任存储。使用标准密码" changeit"会工作,但我更喜欢没有密码。
请注意,这是一个"信任商店"不是"密钥库",所以信任存储中根本没有秘密材料:只是服务器的证书,因此客户端可以验证服务器是否可信。
keytool
这可能吗?是否有其他工具可以从信任存储中删除密码?了解对信任存储进行身份验证可能实际上有其用途,是否有任何特定原因导致我不使用没有密码的信任存储?
答案 0 :(得分:-1)
我很确定如果你创建一个新的信任存储,keytool会让你输入一个空密码,但是没有密码的问题是攻击者可以插入他们想要的任何证书并使其受信任。这会产生恶意机会,例如man-in-the-middle attack。您的应用程序假定它可以信任攻击者设置的URL,因此没有什么可以阻止他们重新路由您的Web服务调用。
在默认情况下,最好在生产环境中更改密钥库和信任库密码。