栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

Java和SSL证书

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java和SSL证书

我发现要确保最高的安全性/有效性,我必须将网站使用的SSL证书导入到我的应用程序中

当您说那句话时,您部分正确。您不需要导入SSL证书。导入StartSSL CA证书就足够了。

此外,没有将证书导入Java应用程序的事情。Java中的SSL支持依赖于密钥库和信任库的概念,而不依赖于应用程序中打包的某些证书​​。如果您要发布要由最终用户下载并执行的应用程序,则无需发布证书或为此而在应用程序中使用私钥。私钥和关联的证书将存储在密钥库中,只有您可以访问。

应用程序的最终用户将依赖Java运行时中的SSL支持,这将使应用程序在验证服务器证书之后能够建立与站点的SSL连接。Java运行时在信任库中附带了一组默认的CA证书,要成功建立SSL连接,唯一的前提条件是服务器的SSL证书由信任库中的一个CA颁发。
版本6开始,至少 在Java运行时的信任库中不存在StartSSL的证书 ,因此:

  • 您可以指示最终用户执行将StartSSL CA证书导入Java信任库的活动。可能有帮助的链接包括此StartSSL论坛线程(将CA证书导入到信任库中只需要前四个步骤),一个GitHub项目和此博客文章;免责声明-我没有尝试使用其中的任何一种,您应自行承担使用风险。
  • 或者,您可以使用
    -Djavax.net.ssl.trustStore=<path_to_truststore> -Djavax.net.ssl.trustStorePassword=<truststore_password>
    JVM启动标志使用自己的信任库初始化应用程序,或者在初始化SSL连接之前执行以下代码:
    System.setProperty("javax.net.ssl.trustStore","<path_to_truststore>");

    System.setProperty("javax.net.ssl.trustStorePassword”,”“);

仅当您的应用程序是不是恰好是applet的Java SE应用程序(或对如何指定信任库具有类似限制的应用程序)时,这才是可行的方法。


阅读Java
keytool文档
也将有所帮助。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/486991.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号