解决IE8下FlashSocket无法连接java websocket的问题

栏目: Java · 发布时间: 7年前

内容简介:参考文章:Flash socket在IE8下会使用TLSv1进行通信,且Cipher suites只有有限几项jre默认不支持的。 我服务端用的是Springboot+Tomcat Embed,开启debug之后会看到cipher suite不支持的异常:not found cipher suites in common。而一般现在装的jdk/jre都是不包含这些的。

参考文章: iOS 与 Java 服务器之间 SSL 握手失败的解决:Cipher Suites

Flash socket在IE8下会使用TLSv1进行通信,且Cipher suites只有有限几项jre默认不支持的。 我服务端用的是Springboot+Tomcat Embed,开启debug之后会看到cipher suite不支持的异常:not found cipher suites in common。

IE8的Cipher Suites: 
Cipher Suite: TLS_RSA_WITH_AES_256_CBC_SHA (0x0035)     
Cipher Suite: TLS_RSA_WITH_3DES_EDE_CBC_SHA (0x000a)     
Cipher Suite: TLS_RSA_WITH_AES_128_CBC_SHA (0x002f)    
Cipher Suite: TLS_RSA_WITH_RC4_128_SHA (0x0005)     
Cipher Suite: TLS_RSA_WITH_RC4_128_MD5 (0x0004)     
Cipher Suite: TLS_RSA_WITH_DES_CBC_SHA (0x0009)

而一般现在装的jdk/jre都是不包含这些的。

可以通过下载下面这个jar替换掉jre的lib/security目录下的两个jar包进行添加。

Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files 8 Download http://www.oracle.com/technetwork/java/javase/downloads/jce8-download-2133166.html

添加完成之后需要在配置文件中 server.ssl.ciphers 加入,我下面列了一个比较全的,可以用这个替换。    

ciphers: TLS_ECDH_anon_WITH_RC4_128_SHA, TLS_ECDH_ECDSA_WITH_RC4_128_SHA, 
          TLS_ECDH_RSA_WITH_RC4_128_SHA, TLS_ECDHE_ECDSA_WITH_RC4_128_SHA
          TLS_KRB5_EXPORT_WITH_RC4_40_MD5, TLS_KRB5_EXPORT_WITH_RC4_40_SHA
          TLS_KRB5_WITH_RC4_128_MD5, TLS_KRB5_WITH_RC4_128_SHA
          TLS_DH_anon_WITH_AES_128_GCM_SHA256, TLS_DH_anon_WITH_AES_256_GCM_SHA384
          TLS_DHE_DSS_WITH_AES_128_GCM_SHA256, TLS_DHE_DSS_WITH_AES_256_GCM_SHA384
          TLS_ECDH_ECDSA_WITH_AES_128_GCM_SHA256, TLS_ECDH_ECDSA_WITH_AES_256_GCM_SHA384
          TLS_ECDH_RSA_WITH_AES_128_GCM_SHA256, TLS_ECDH_RSA_WITH_AES_256_GCM_SHA384
          TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256, TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
          TLS_RSA_WITH_RC4_128_MD5, TLS_RSA_WITH_RC4_128_SHA
          TLS_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_RSA_WITH_AES_128_CBC_SHA
          TLS_ECDHE_RSA_WITH_RC4_128_SHA, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
          TLS_RSA_WITH_AES_128_CBC_SHA256, TLS_DHE_RSA_WITH_AES_128_CBC_SHA256
          TLS_RSA_WITH_AES_128_GCM_SHA256, TLS_DHE_RSA_WITH_AES_128_GCM_SHA256
          TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256, TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
          TLS_DHE_RSA_WITH_3DES_EDE_CBC_SHA, TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA
          TLS_RSA_WITH_AES_256_CBC_SHA, TLS_DHE_RSA_WITH_AES_256_CBC_SHA
          TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA, TLS_RSA_WITH_AES_256_CBC_SHA256
          TLS_DHE_RSA_WITH_AES_256_CBC_SHA256, TLS_RSA_WITH_AES_256_GCM_SHA384
          TLS_DHE_RSA_WITH_AES_256_GCM_SHA384, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384
          TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384

Read: 0


以上所述就是小编给大家介绍的《解决IE8下FlashSocket无法连接java websocket的问题》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

启示录

启示录

[美] Marty Cagan / 七印部落 / 华中科技大学出版社 / 2011-5 / 36.00元

为什么市场上那么多软件产品无人问津,成功的产品凤毛麟角?怎样发掘有价值的产品?拿什么说服开发团队接受你的产品设计?如何将敏捷方法融入产品开发?过去二十多年,Marty Cagan作为高级产品经理人为多家一流企业工作过,包括惠普、网景、美国在线、eBay。他亲历了个人电脑 、互联网、 电子商务的起落沉浮。《启示录:打造用户喜爱的产品》从人员、流程、产品三个角度介绍了现代软件(互联网)产品管理的实践经......一起来看看 《启示录》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具