由于项目中必须得用JDK6来作为Java环境,于是连接SQLServer时出现了com.microsoft.sqlserver.jdbc.SQLServerException: 驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接。错误:“Java.lang.RuntimeException: Could not generate DH keypair”。这样的错误。


这个在JDK7中是修复了的,所以如果项目允许的话就换成JDK7吧,但有些只能用JDK6的项目遇到这种情况该怎么办呢?

实际使用JDK7的时候也出现过这个问题。


第一步:

下载两个jar包--------------------->bcprov-ext-jdk15on-1.54.jar和bcprov-jdk15on-1.54.jar

点击下载jar包


第二步:将下载的两个JAR文件复制到:JDK安装目录\jre\lib\ext下,例如我的就是F:\JDK\jdk6\jre\lib\ext



打开java.security文件:在JDK安装目录\jre\lib\security下的java.security文件。

找到security.provider.1=sun.security.provider.Sun换成

security.provider.1=org.bouncycastle.jce.provider.BouncyCastleProvider

重新执行连接数据库程序就可以


驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接_异常

驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接_ide_02 驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接_java_03