【问题标题】:SSL and Tomcat using Java使用 Java 的 SSL 和 Tomcat
【发布时间】:2010-05-17 20:22:38
【问题描述】:

我是 SSL 连接的新手,所以这是我的问题。

我有一个 JAR 文件中的桌面 Java 程序。此 JAR 通过 Internet 将敏感信息发送到远程 Tomcat 服务器。当然我需要加密数据。

如果我从 Verisign 购买 SSL 证书,通过 SSL 发送的数据会自动加密吗?

我的意思是在我的 JAR 中,是否还需要做额外的工作,例如使用 Java 加密扩展 API 通过 SSL 连接手动加密我的数据?

谢谢。

【问题讨论】:

    标签: java encryption ssl


    【解决方案1】:

    我的意思是在我的 JAR 中,是否还需要做额外的工作,例如使用 Java 加密扩展 API 通过 SSL 连接手动加密我的数据?

    将为您完成加密(使用 Java 安全套接字扩展)。只需使用https:// 建立连接即可。也许看看HTTP Client 以获得更高级别的 API。

    顺便说一句,证书在服务器端(除非您也想进行客户端身份验证,在这种情况下,您也需要客户端证书)。

    是的,您可以使用自签名证书,但使用由 Verisign、Thawte 等知名证书颁发机构 (CA) 签名的证书的好处之一是您不必将其添加到客户端 VM 的信任库(除非您禁用验证机制)。

    【讨论】:

      【解决方案2】:

      关注SSL Configuration HOW-TO 了解如何设置 https。

      【讨论】:

        【解决方案3】:

        如果您的目标只是获得加密器,则无需购买证书。你可以自己做。购买证书只会将验证链创建回威瑞信(或其他任何人),从而让用户感到您确实是您所说的那个人。

        【讨论】:

        • 好的,谢谢大家的帮助。我将尝试在没有证书的情况下创建自己的 SSL 连接。
        • Jay,这在技术上是正确的,但对于像 Marquino 这样的初学者来说可能是个坏建议。如果您不使用由受信任机构签署的证书,则会产生额外的配置负担。
        • 嗯,我不确定您所指的额外负担是什么。完成此操作后,我只是简单地编写了验证回调以从不抛出异常,即始终接受它提供的任何证书。如果目标只是对传输进行加密,那么您不在乎是谁颁发了证书。如果目标是验证这是一个合法的证书,那么我会恳求不知道人们实际上是如何做到这一点的。我从未尝试过。
        • @Marquinio:从技术上讲,您仍然需要“证书”来执行 SSL。问题只是您使用的是“自签名证书”还是由公认机构签署的证书。
        • 感谢您对 cme​​ts 的澄清
        【解决方案4】:

        SSLSocket 应该会为您处理大部分工作。

        【讨论】:

          【解决方案5】:

          根据定义,通过 SSL 发送的所有数据都经过加密,您根本无需担心加密。此外,您不需要通过证书来实现这一点:您可以自己颁发一个。

          【讨论】:

            【解决方案6】:

            如果您要在 Tomcat 上设置 SSL 并通过 HTTPS 发送数据,那么将为您完成加密。但是如果您只需要对数据通道进行加密,您实际上不需要购买证书,您可以生成自签名证书。请查看此页面http://tomcat.apache.org/tomcat-6.0-doc/ssl-howto.html,了解如何为 Tomcat 配置 SSL。但请注意,HTTPS 可以配置为根本不使用加密(至少在 Apache httpd 上)。

            【讨论】:

              【解决方案7】:

              为了回答您的问题,SSL 实施会自动加密数据。您无需担心使用额外的加密例程。

              购买 SSL 证书可能是最简单的方法,因为 SSL 实施使用通用根证书提供了简单的认证身份验证,并提供了验证服务。但是,您可以通过使用自签名证书来节省一些钱。

              即使使用自签名证书,当您连接到服务器时,从桌面应用程序验证服务器证书上的签名也很重要。这将防止中间人攻击。

              您不必将自签名证书添加到商店,因为您应该能够禁用自动验证机制并使用自己的。

              【讨论】:

                猜你喜欢
                • 1970-01-01
                • 2018-11-19
                • 1970-01-01
                • 1970-01-01
                • 2011-01-22
                • 2013-11-21
                • 1970-01-01
                • 1970-01-01
                • 2012-12-23
                相关资源
                最近更新 更多