SSL连接dh key too small
SSL连接dh key too small
文章目录
- SSL连接dh key too small
- 问题
- 解决办法
- 方法1
- 方法2
- 方法3
- 方法4
- Qt交流群
- 结尾
问题
在进行SSL连接时,出现dh key too small,至于这种情况,是由 OpenSSL 的更改引起的,但问题实际上出在服务器端。服务器在密钥交换中使用弱 DH 密钥,并且由于Logjam 攻击,最新版本的 OpenSSL 强制执行非弱 DH 密钥。
解决办法
方法1
修改openssl配置文件,在linux下路径为/etc/ssl/openssl.cnf
[system_default_sect]
MinProtocol = TLSv1.2
CipherString = DEFAULT@SECLEVEL=2
修改为
[system_default_sect]
MinProtocol = TLSv1.2
CipherString = DEFAULT@SECLEVEL=1
当然修改这种配置文件,是不建议的。
方法2
通过openssl api进行修改
SSL_CTX_set_security_level(ctx, 1);
方法3
在Qt环境下,qt开放了一个后门接口如下
qt_ForceTlsSecurityLevel();
在进行ssl连接前,调用一下即可,通过看源码,原理同上:
if (q_SSL_CTX_get_security_level(sslContext->ctx) > 1 && *forceSecurityLevel())
q_SSL_CTX_set_security_level(sslContext->ctx, 1);
方法4
在Qt环境下
void QSslConfiguration::setBackendConfigurationOption(const QByteArray &name, const QVariant &value)
Sets the option name in the backend-specific configuration to value.
Options supported by the OpenSSL (>= 1.0.2) backend are available in the supported configuration file commands documentation. The expected type for the value parameter is a QByteArray for all options. The examples show how to use some of the options.
Note: The backend-specific configuration will be applied after the general configuration. Using the backend-specific configuration to set a general configuration option again will overwrite the general configuration option.
This function was introduced in Qt 5.11.
setBackendConfigurationOption(“CipherString”, “DEFAULT@SECLEVEL=1”);
Qt交流群
Qt交流大会 853086607
QQ:3246214072
结尾
不定期上传新作品,解答群中作品相关问题。相关外,能解答则解答。欢迎大家一起探索Qt世界!
SSL连接dh key too small相关推荐
- SSLError: dh key to small(Python requests)
在使用爬虫库requests爬取页面时发生了"dh key to small"的错误,如下几种情况: requests.exceptions.SSLError: [SSL: SSL ...
- python连接mysql失败_Python连接到MySQL失败,错误为“dh key too small”
在撰写本文时,使用mysql连接器python 2.1.4来自Oracle的纯python模块(您使用的是2.1.3版本的fork)支持连接字符串中未记录的连接配置kwargssl_cipher(因为 ...
- java ssl连接(no cipher suites in common)
Java SSL/TLS 安全通讯协议介绍 Java 的安全通讯 本文主要介绍了网络安全通讯协议 SSL/TLS 和 Java 中关于安全通讯的实现部分.并通过一个简单的样例程序实现,来展示如何在 J ...
- mysql cert_Mysql使用SSL连接
最近项目中用到了SSL连接,记录一下,环境为windows10,Mysql版本为5.6 查看是否支持 SSL 首先在 MySQL 上执行如下命令, 查询是否 MySQL 支持 SSL: mysql&g ...
- 使用 JSSE 定制 SSL 连接的属性--转载
当数据在网络上传播的时候,通过使用 SSL 对其进行加密和保护,JSSE 为 Java 应用程序提供了安全的通信.在本篇有关该技术的高级研究中,Java 中间件开发人员 Ian Parkinson 深 ...
- MySQL启用SSL连接
1.手动创建自认证证书 1.1 创建CA证书 openssl genrsa 2048 > ca-key.pem openssl req -new -x509 -nodes -days 3600 ...
- 《MySQL DBA:SSL连接》
一.SSL连接 5.7版本安装脚本中有一句 bin/mysql_ssl_rsa_setup 支持SSL Generating a 2048 bit RSA private key .......... ...
- 配置openldap使用SSL连接
假设openldap服务器已经配置好,可以正常工作.下面的步骤只是让openldap使用ssl连接. 这篇文档参考了http://www.openldap.org/pub/ksoper/OpenLD ...
- 用JSSE定制SSL连接
用JSSE定制SSL连接2005-12-01 17:38 冯睿 第八军团 我要评论(0) 字号:T | T JSSE(Java SecuritySocket Extension,Java安全套接字扩展 ...
最新文章
- MySql 连接报 SSL 警告问题
- TabError的解决方法
- BZOJ 3401: [Usaco2009 Mar]Look Up 仰望( 单调栈 )
- Coolite一个简单例子-GridPanel列表增删改预览
- 浅谈数学在c语言编程中的,试论C语言程序设计中算法设计的作用
- 上位机软件定制开发,如何选择服务商
- 细节复盘2 (图片放足够大高斯模糊< style > scopedvue打开新的页面轮播图抖动的问题 translateZ、translateY、垂直水平居中)2020-8-1
- 深度学习笔记(15) 人的表现
- M001: MongoDB Basics Chapter 3: Deeper Dive on the MongoDB Query Language学习记录
- vite+ts+vue3 知识点(定义全局函数和变量)
- Pandas-数据结构-DataFrame(七):添加元素、修改元素、删除元素
- 航天环宇提交招股书上会稿:计划募资6亿元,控股股东为李完小
- 玩客云设置linux权限,玩客云退出链克怎么禁止硬盘缓存?.onething_data文件禁止缓存玩客云关闭上传退出链克...
- Oracle 11g RAC 修改服务器各类ip地址【转载】
- 深度神经网络概念整理,最简单的神经网络是什么样子?
- 键盘Ctrl键坏了,用注册表来修
- java经典题之冒泡排序
- 计算机技能比赛范文,计算机基本技能大赛活动策划书范文
- 如何复制360图书馆文章
- Python: 蛇形填空(每日一题)
热门文章
- 常用长度单位PX/EM/PT/百分比转换公式
- outlook服务器与本地文件,Outlook设置本地存储的方法
- github 私有化部署_项目私有化部署
- android root权限下Apk下载、静默安装并自启
- IBM数据保护和存储管理
- 小型水库雨水情测报及大坝安全监测建设介绍
- Bluetooth设备之间如何建立连接
- 学画画要花多少钱_高二学美术的费用大概是多少 要花多少钱
- docker 制作镜像并push至私有仓库
- 手机显示无法接通服务器是怎么回事,手机无法接通是什么原因及如何解决【图文】...