请教:实现SSL双向认证中的一个困惑???
大家好。。我正在做一个小型PKI,目前想实现CA的一些基本功能。
我已经用JAVA生成了CA证书、服务器证书和客户端证书,过程是这样的:
(客户端证书):先在IE上注册用户信息,点击确定后系统生成客户端RSA密钥对和一个证书请求(包括用户信息+用户公钥);CA收到证书请求后,用CA证书签名生成一张客户端证书client.cer
(服务器端证书):过程和上面类似。。
现在我就好困惑了。。
如果我用client.cer安装,默认总装到IE的“其他”里面,不能到“个人”里面;强制性安装到“个人”时,则里面没有看到自己的证书。只有用P12文件,我才能安装客户端证书到IE里面。但是因为客户端的私钥自己保存,CA没有客户端的私钥,所以不能生成P12文件。
同样的,因为CA没有服务端的私钥,所以不能生成服务端的keystore(server.jks)。我只能生成server.cer证书。
但是我在Tomcat上配置ssl双向认证时,必须要服务端的keystore(server.jks),才能实现服务端认证。
我现在好矛盾啊。。这个问题困扰我好久了。。
用户的私钥是不能在网上传的,CA肯定不能有用户的私钥。但是没有它又不能生成P12或者JKS。我实在想不通,希望版主和大家能给我指点一下,真心的谢谢了!
--------------------编程问答-------------------- 没太看明白,不过服务器证书可以使用自签名证书。 --------------------编程问答-------------------- 等待牛人来答.
补充:云计算 , 云安全