1
ZZ74 108 天前
Java 开发的客户端想要与远端服务器建立 SSL 连接,就会提供一个 keystore
这一句 9 错了啊,客户端又不是一定要 keystore 利用这个公钥去做加密,将加密的内容写在这个应用的配置文件里,再在程序启动的时候利用 keystore 去解密。这样就不用引入额外的密钥 你这是想干啥?本地加解密? 那你 keystore 的密码呢,启动时要解密 存本地还是启动时从服务器获取? 要是公私都在本地 用对称加密不就好了。 要是 keystore 放客户端...我不知道该怎么描述。 |
2
henix 107 天前
感觉你对 https 证书有一些误解。
“利用这个公钥去做加密,将加密的内容写在这个应用的配置文件里,再在程序启动的时候利用 keystore 去解密” 这个说法没错,但能这么做的前提是,这个程序正好是一个 https 网站的服务端 服务器的 keystore 保存了只有服务器才有的私钥和公钥,进行 https 连接握手时,客户端连接到服务端,服务端会先把自己的公钥发给客户端,然后客户端用这个公钥进行加密操作。所以客户端的 keystore 不需要保存任何私钥 |
3
BraveXaiver OP |
4
Shoukaku 106 天前 via iPhone
当然是可以的,但是现实中为了提高安全性,加密和认证的密钥不应该混用。而且你这是典型的本地对称密钥该干的事情,没必要为了省一个密钥,搞这么复杂,KeyStore 可以存 SecretKey 。
|