【问题标题】:Last attempt at SSL/TLS最后一次尝试 SSL/TLS
【发布时间】:2012-03-12 09:15:05
【问题描述】:

我已经尝试让 openSSL/JSSE 从 Cpp 到 Java 工作了数周。如果我找不到解决方案,我将无视整个想法。无论我似乎做什么,我都会收到“sslv3 alert certificate unknown”错误。我有一个自签名密钥,可以在服务器上正常工作,但是在连接到 OpenSSL 的 s_server 实用程序时出现错误。几个星期以来,我一直在寻找解决方案。帮助将不胜感激!我有一个自签名的 crt 文件和一个 server.key 文件。我将证书放在 java 密钥库中,但仍然出现错误

【问题讨论】:

    标签: java c++ ssl openssl


    【解决方案1】:

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

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

    您需要通过以下方式进行播放:

    1. 创建您的 CA
    2. 为服务器创建证书
    3. 创建两个密钥库,
      • 包含服务器私钥、服务器公共证书(由 CA 签名)和 CA 证书的服务器密钥库。
      • 仅包含 CA 证书的客户端密钥库。

    site 为您提供了配置 Java 引擎以使用密钥库以及密钥库和信任库所需的系统属性。两端都需要信任库,以便正确验证相关证书。

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

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

    【讨论】:

    • 感谢您的帮助!我现在有一个新错误“tlsv1 alert internal error”你能帮我解释一下吗?
    • 有趣...您能帮我一个忙并编辑您的问题(原始帖子),并提供有关您所在位置以及您看到的错误的更多详细信息吗?我已经能够在我自己的环境中成功运行它,但我需要看看你在哪里。
    猜你喜欢
    • 1970-01-01
    • 2021-02-04
    • 1970-01-01
    • 2020-03-20
    • 1970-01-01
    • 2020-07-05
    • 1970-01-01
    • 2015-01-18
    • 2017-10-08
    相关资源
    最近更新 更多