当前位置: 首页 > 知识库问答 >
问题:

VeriSign签名证书中的Java SSLHandshakeException

爱茂勋
2023-03-14

为了解决这个问题,我使用浏览器访问地址,在.cert文件中下载证书,并使用keytool命令导入java cacerts密钥库。在此之后,应用程序可以正常工作。

我的问题是:如果证书是用VeriSign签名的,为什么java不识别证书?默认情况下VeriSign证书没有安装在cacerts密钥库中?也许我不明白SSL是如何工作的。浏览器和java桌面行为有什么不同?我可以用我的浏览器连接到这个URL而不用安装任何东西。

谢谢

共有1个答案

凤财
2023-03-14

当我们访问一个使用SSL提供身份和加密的安全站点时,它提供了一个由可信的第三方站点(如verisign、godaddy或Thwate)验证的证书。

通过使用证书,浏览器或java客户端知道他们与正确的站点(它声称是谁)而不是在重定向的代理站点上进行对话。如果您使用浏览器访问网站,则此步骤非常透明,因为如果证书不在浏览器的受信任存储区中,它将要求您添加该证书,并随后添加该证书。

但是当您使用Java程序访问一个安全的站点时,证书握手这一步骤对用户来说是不透明的,证书是通过JRE的信任存储来验证的。

 类似资料:
  • 我最近升级了Inteliij IDEA 2019.2,如果我尝试从IDE中提取Git,我会发现以下错误:无法访问'https://github.xxx.com/app-Hello-USD/DGS.git/“:SSL证书问题:证书链中的自签名证书。 有人能帮我什么选项,我必须启用。 谢谢

  • 问题内容: 当尝试使用其PHP库通过Twilio发送消息时,我正在为这个错误而苦苦挣扎: 我在Windows 7上使用了wamp。 我当然找到了所有其他有关证书错误的信息。据我所知,通常更新或添加文件即可解决该问题。但是,即使这样做,我仍然遇到相同的错误。 就像这里所做的健全性检查一样,这正是我所做的: 从此处下载了最新的证书:http : //curl.haxx.se/ca/cacert.pem

  • 因为存在安全隐患,如果你能辅助签名过程,最好避免使用自动签名。 在一般情况下,如果你想自动加入大量的客户端,最好在 Puppetmaster 上预先生成证书,然后将其作为构建过程的一部分推送给客户端。 你可以使用 puppet cert --generate <hostname> 命令生成预签名证书(pre-signed certificate)。 操作步骤 使用如下命令为 client1.exa

  • 问题内容: 我遇到客户端https请求的问题。 片段可以如下所示: 我得到的是错误:证书链中的自签名证书。 使用邮递员时,我可以导入客户端证书和密钥,并且可以毫无问题地使用它。有没有可用的解决方案?我还希望对邮递员如何处理证书和工作方式有所了解。 问题答案: 根据您的问题,我想您正在使用SSL通讯的自签名证书进行开发。 如果是这种情况,请在您正在运行节点的任何地方或直接使用 这指示节点允许不信任的

  • 为了在OpenSSL中签名证书,我使用函数,向它提供一个请求(作为)、一个签名密钥和一个摘要。 现在我有我的签名密钥存储在HSM中,所以我无法提取它来签名证书。不幸的是,PKCS#11没有提供的等价物。它只有系列函数,这些函数对原始数据进行操作,而不是对证书进行操作。 有人能帮助我使用示例C/C++代码如何使用PKCS#11签署一个用OpenSSL创建的证书吗?

  • 我的手被https、ssl、PKI之类的东西弄得脏兮兮的。对于自签名证书,有一点我不太理解。假设我想创建一个自签名证书,并在我们想要建立安全连接时将其发送给我的朋友。 所以步骤是: 创建一个私钥。 创建一个公钥。 用我的公钥在证书上签名。 因此,当我的朋友得到我的证书时,他必须验证他得到的证书是我的,他需要解密数字签名。但为了解密和验证他必须拥有我的私钥。所以,我有点困惑。