Java 是否应将服务器证书添加到信任存储中,以便客户端安全地接收来自服务器的响应?

Java 是否应将服务器证书添加到信任存储中,以便客户端安全地接收来自服务器的响应?,java,web-services,soap,encryption,ssl-certificate,Java,Web Services,Soap,Encryption,Ssl Certificate,要求: 需要编写一个web服务客户端来使用SSL加密与服务器交互 提供: 随密钥存储文件和服务器证书一起提供 编码: 编写了一个java代码,形成了soap请求。对于添加(签名soap)加密数据,使用密钥存储使用证书获取公钥,并使用数字签名算法进行加密 分步假设: 使用密钥存储对soap消息进行签名并发送到服务器 认证机构的信任存储(带有证书)验证请求并处理请求 在服务器端使用相同的密钥存储(客户端使用)对响应进行签名,以发送到客户端 客户端接收响应,并通过/JAVA\u HOME/jre/li

要求: 需要编写一个web服务客户端来使用SSL加密与服务器交互

提供: 随密钥存储文件和服务器证书一起提供

编码: 编写了一个java代码,形成了soap请求。对于添加(签名soap)加密数据,使用密钥存储使用证书获取公钥,并使用数字签名算法进行加密

分步假设:

  • 使用密钥存储对soap消息进行签名并发送到服务器
  • 认证机构的信任存储(带有证书)验证请求并处理请求
  • 在服务器端使用相同的密钥存储(客户端使用)对响应进行签名,以发送到客户端
  • 客户端接收响应,并通过
    /JAVA\u HOME/jre/lib/security/cacerts
    中的认证机构使用信任存储(带证书)进行验证
  • 在这种情况下,我们需要将server.cert文件从需求导入/JAVA_HOME/jre/lib/security/cacerts吗

    从中验证响应


    如果我在任何步骤中出错,请更正。

    如果您的服务器和客户端已经信任对您的证书进行签名的证书颁发机构(CA),则您不必将服务器/客户端证书导入彼此信任的存储区。它应该正常工作,因为客户端和服务器已经信任您的签名CA

    如果客户端/服务器不信任CA,则有两种方法解决此问题: 1) 将CA证书导入客户机/服务器信任存储区,以便客户机/服务器都信任由此CA签名的任何证书


    2) 或者将server.cert导入客户端信任存储(在您的示例中为/JAVA_HOME/jre/lib/security/cacerts),并将client.cert导入服务器信任存储以进行双向验证。

    如果您的服务器和客户端已经信任对您的证书进行签名的证书颁发机构(CA),这样,您就不必将服务器/客户端证书导入彼此信任的存储区。它应该正常工作,因为客户端和服务器已经信任您的签名CA

    如果客户端/服务器不信任CA,则有两种方法解决此问题: 1) 将CA证书导入客户机/服务器信任存储区,以便客户机/服务器都信任由此CA签名的任何证书


    2) 或者将server.cert导入客户端信任存储(在您的示例中为/JAVA_HOME/jre/lib/security/cacerts),并将client.cert导入服务器信任存储以进行双向验证。

    如果您的服务器和客户端已经信任对您的证书进行签名的证书颁发机构(CA),这样,您就不必将服务器/客户端证书导入彼此信任的存储区。它应该正常工作,因为客户端和服务器已经信任您的签名CA

    如果客户端/服务器不信任CA,则有两种方法解决此问题: 1) 将CA证书导入客户机/服务器信任存储区,以便客户机/服务器都信任由此CA签名的任何证书


    2) 或者将server.cert导入客户端信任存储(在您的示例中为/JAVA_HOME/jre/lib/security/cacerts),并将client.cert导入服务器信任存储以进行双向验证。

    如果您的服务器和客户端已经信任对您的证书进行签名的证书颁发机构(CA),这样,您就不必将服务器/客户端证书导入彼此信任的存储区。它应该正常工作,因为客户端和服务器已经信任您的签名CA

    如果客户端/服务器不信任CA,则有两种方法解决此问题: 1) 将CA证书导入客户机/服务器信任存储区,以便客户机/服务器都信任由此CA签名的任何证书


    2) 或者将server.cert导入客户端信任存储(在您的示例中为/JAVA_HOME/jre/lib/security/cacerts)和client.cert将断开信任存储进行双向验证。

    谢谢Razz..我使用了第二种方法来解决此问题。它工作正常谢谢Razz..我使用了第二种方法来解决此问题。它工作正常谢谢Razz..我使用了第二种方法来解决此问题。它工作正常谢谢Razz..我使用了第二种方法来解决此问题这个问题很好解决