上次尝试SSL / TLS

时间:2012-03-12 09:15:05

标签: java c++ ssl openssl

我一直在努力让Cpp到Java的openSSL / JSSE工作数周。如果我找不到解决方案,我只会忽视整个想法。无论我做什么,我都会不断收到“sslv3警报证书未知”错误。我有一个自签名密钥,可以在服务器上工作正常,但在连接到OpenSSL的s_server实用程序时出现错误。几周来我一直在寻找解决方案。帮助将不胜感激!我有一个自签名的crt文件和一个server.key文件。我把证书放在java密钥库中,但我仍然得到错误

1 个答案:

答案 0 :(得分:1)

您的自签名证书可能是导致您出现问题的原因。

这个site有关于创建CA的基本脏指令,而site有类似的说明,但有点冗长。

以下是您玩这个游戏的方式:

  1. 创建您的CA
  2. 为服务器创建证书
  3. 创建两个密钥库,
    • 包含服务器私钥,服务器公共证书(由CA签名)和CA证书的服务器密钥库。
    • 仅包含CA证书的客户端密钥库。
  4. site为您提供配置Java引擎以使用密钥库以及密钥库和信任库所需的系统属性。两端都需要信任存储,以便正确验证相关证书。

    就s_client实用程序而言,您必须使用-CApath选项指向包含您信任的CA证书的目录,或使用-CAfile指向您自签名的CA作为受信任的CA.

    如果您需要更多帮助,请回复。这令人沮丧,但是一旦你掌握了基础知识,你就会很快成为一名职业选手。