SSL握手仅在IOS上失败

SSL握手仅在IOS上失败,ios,iphone,cordova,ssl,websocket,Ios,Iphone,Cordova,Ssl,Websocket,我正在使用cordova(5.2.0)开发一个应用程序。 在mac上,我使用Xcode 6.4生成.ipa 在某个时刻,我初始化了一个安全的websocket连接(证书不是自签名的,长度是2048),如js中所示: socket\u ip=新的WebSocket(wss://perform.domain.com:8080,“图像处理协议”) connexion正在Android上工作,也在桌面浏览器(safari)上工作 然而,从我的Iphone(8.4)中,我得到了一个: CFNetwork

我正在使用cordova(5.2.0)开发一个应用程序。 在mac上,我使用Xcode 6.4生成.ipa

在某个时刻,我初始化了一个安全的websocket连接(证书不是自签名的,长度是2048),如js中所示:

socket\u ip=新的WebSocket(wss://perform.domain.com:8080,“图像处理协议”)

connexion正在Android上工作,也在桌面浏览器(safari)上工作

然而,从我的Iphone(8.4)中,我得到了一个:

CFNetwork SSLHandshake失败(-9807),表示“证书链无效”

在服务器端,我得到的信息是:

错误:00000005:lib(0):func(0):DH

我的服务器配置是:

  • info.ssl\u证书\u文件路径= “sslCertificates/myCert.cer”
  • info.ssl\u private\u key\u filepath=“sslCertificates/myCert”
  • info.ssl\u ca\u filepath=“sslCertificates/GlobalSignRootCA.cer”
  • info.ssl\u cipher\u list=“RC4-SHA:AES128-SHA:HIGH:!aNULL:!MD5”
看来我的问题和你的相似。然后,我尝试设置一个没有DH的密码列表,但仍然出现了错误。 我可能缺少在libsocket服务器上配置的内容

只要我使用的是商业证书,并且它与其他设备一起工作,我就不理解connexion with IOS的失败


任何帮助都将不胜感激,谢谢

是否还必须添加GlobalSignRootCA的中间证书?

是否还必须添加GlobalSignRootCA的中间证书?

我按照Steffen的建议进行了检查。 解决方案是在libwebsocket中建立椭圆曲线Diffie-Hellman协议


谢谢你的帮助。

我按照斯特芬的建议做了检查。 解决方案是在libwebsocket中建立椭圆曲线Diffie-Hellman协议

感谢您的帮助。

检查您的网站,查找“不完整链”。如果发现它,请修复服务器配置。有些桌面浏览器可以解决服务器设置中的此类问题,而大多数其他ssl客户端则不能。请检查您的网站,查找“不完整链”。如果发现它,请修复服务器配置。一些桌面浏览器可以解决服务器设置中的此类问题,而大多数其他ssl客户端则不能。