如何在java6中支持TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA

时间:2014-10-30 05:12:29

标签: java ssl encryption proxy

我通过webscarab(webscarab-selfcontained-20070504-1631.jar)作为java6中的代理进入第三方网站,该网站适用于超过20K的网站。

但目前我只是在击中第三方网址时遇到错误,



java.lang.RuntimeException: Could not generate DH keypair
	at com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Alerts.java:190)
	at com.sun.net.ssl.internal.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1649)
	at com.sun.net.ssl.internal.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1612)
	at com.sun.net.ssl.internal.ssl.SSLSocketImpl.handleException(SSLSocketImpl.java:1595)
	at com.sun.net.ssl.internal.ssl.SSLSocketImpl.handleException(SSLSocketImpl.java:1521)
	at com.sun.net.ssl.internal.ssl.AppOutputStream.write(AppOutputStream.java:64)
	at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:65)
	at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:123)
	at org.owasp.webscarab.model.Request.writeDirect(Request.java:234)
	at org.owasp.webscarab.model.Request.writeDirect(Request.java:215)
	at org.owasp.webscarab.httpclient.URLFetcher.fetchResponse(URLFetcher.java:247)
	at org.owasp.webscarab.plugin.proxy.CookieTracker$Plugin.fetchResponse(CookieTracker.java:130)
	at org.owasp.webscarab.plugin.proxy.BrowserCache$Plugin.fetchResponse(BrowserCache.java:101)
	at org.owasp.webscarab.plugin.proxy.RevealHidden$Plugin.fetchResponse(RevealHidden.java:100)
	at org.owasp.webscarab.plugin.proxy.BeanShell$Plugin.fetchResponse(BeanShell.java:229)
	at org.owasp.webscarab.plugin.proxy.ManualEdit$Plugin.fetchResponse(ManualEdit.java:243)
	at org.owasp.webscarab.plugin.proxy.ConnectionHandler.run(ConnectionHandler.java:233)
	at java.lang.Thread.run(Thread.java:662)
Prime size must be multiple of 64, and can only range from 512 to 1024




我已经搜索过,并尝试通过更新无限强度JCE远端文件仍然得到相同的错误。

此外,我发现我正在点击的网址使用TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256密码进行加密。

当我试图在java7中点击相同的URL时,我得到了正确的响应,并发现它使用来自默认启用的java7密码的TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA密码来获取此URL。

现在我需要的是如何在java6中使用TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA密码,我在java6中引用了javadoc,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA java6中不支持密码加密。有没有其他方法可以在java6中支持它,因为我不想冒风险将java版本升级到7来解决这个问题......

1 个答案:

答案 0 :(得分:0)

通过添加第三方API来解决此问题的唯一选项-Bouncy castle。请参考下面的链接和愉快的编码。

https://docs.oracle.com/cd/E19830-01/819-4712/ablsc/index.html