
# 使用SSL方式建连报错或阻塞
#### 问题现象
JDBC使用SSL方式建立连接时，会在客户端获取强随机数，建立连接过程中可能出现以下的报错信息：
场景1：如下报错：
![](https://support.huaweicloud.com/distributed-devg-v8-gaussdb/figure/zh-cn_image_0000002527057010.png "点击放大")
场景2：建连阻塞。如果url连接串中配置了loginTimeout后，会报Connection attempt timed out，如果不配置该参数，会一直阻塞。
#### 原因分析
客户端环境随机数产生的速度太慢，无法满足产品要求，熵源不足，导致服务启动失败。当前已知在一些Linux环境中存在此问题。
#### 处理方法
方法1：启动客户端环境中的haveged服务，增加系统熵池熵值以提高读取随机数的速度。启动命令为：
```
systemctl start haveged
```
方法2：调整客户端jdk配置。
打开$JAVA_PATH/jre/lib/security/java.security文件，修改以下两个配置项：
```
securerandom.source=file:/dev/./urandom
securerandom.strongAlgorithms=NativePRNGNonBlocking:SUN
```
![](https://support.huaweicloud.com/distributed-devg-v8-gaussdb/public_sys-resources/notice_3.0-zh-cn.png)
方法2的本质是在获取强随机数时，使用伪随机数代替，减少需要消耗的熵值。会影响客户端所有使用该jdk的应用，在获取强随机数时会使用伪随机数代替。
