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相关推荐

  1. SSLError: dh key to small(Python requests)

    在使用爬虫库requests爬取页面时发生了"dh key to small"的错误,如下几种情况: requests.exceptions.SSLError: [SSL: SSL ...

  2. python连接mysql失败_Python连接到MySQL失败,错误为“dh key too small”

    在撰写本文时,使用mysql连接器python 2.1.4来自Oracle的纯python模块(您使用的是2.1.3版本的fork)支持连接字符串中未记录的连接配置kwargssl_cipher(因为 ...

  3. java ssl连接(no cipher suites in common)

    Java SSL/TLS 安全通讯协议介绍 Java 的安全通讯 本文主要介绍了网络安全通讯协议 SSL/TLS 和 Java 中关于安全通讯的实现部分.并通过一个简单的样例程序实现,来展示如何在 J ...

  4. mysql cert_Mysql使用SSL连接

    最近项目中用到了SSL连接,记录一下,环境为windows10,Mysql版本为5.6 查看是否支持 SSL 首先在 MySQL 上执行如下命令, 查询是否 MySQL 支持 SSL: mysql&g ...

  5. 使用 JSSE 定制 SSL 连接的属性--转载

    当数据在网络上传播的时候,通过使用 SSL 对其进行加密和保护,JSSE 为 Java 应用程序提供了安全的通信.在本篇有关该技术的高级研究中,Java 中间件开发人员 Ian Parkinson 深 ...

  6. MySQL启用SSL连接

    1.手动创建自认证证书 1.1 创建CA证书 openssl genrsa 2048 > ca-key.pem openssl req -new -x509 -nodes -days 3600 ...

  7. 《MySQL DBA:SSL连接》

    一.SSL连接 5.7版本安装脚本中有一句 bin/mysql_ssl_rsa_setup 支持SSL Generating a 2048 bit RSA private key .......... ...

  8. 配置openldap使用SSL连接

    假设openldap服务器已经配置好,可以正常工作.下面的步骤只是让openldap使用ssl连接.  这篇文档参考了http://www.openldap.org/pub/ksoper/OpenLD ...

  9. 用JSSE定制SSL连接

    用JSSE定制SSL连接2005-12-01 17:38 冯睿 第八军团 我要评论(0) 字号:T | T JSSE(Java SecuritySocket Extension,Java安全套接字扩展 ...

最新文章

  1. MySql 连接报 SSL 警告问题
  2. TabError的解决方法
  3. BZOJ 3401: [Usaco2009 Mar]Look Up 仰望( 单调栈 )
  4. Coolite一个简单例子-GridPanel列表增删改预览
  5. 浅谈数学在c语言编程中的,试论C语言程序设计中算法设计的作用
  6. 上位机软件定制开发,如何选择服务商
  7. 细节复盘2 (图片放足够大高斯模糊< style > scopedvue打开新的页面轮播图抖动的问题 translateZ、translateY、垂直水平居中)2020-8-1
  8. 深度学习笔记(15) 人的表现
  9. M001: MongoDB Basics Chapter 3: Deeper Dive on the MongoDB Query Language学习记录
  10. vite+ts+vue3 知识点(定义全局函数和变量)
  11. Pandas-数据结构-DataFrame(七):添加元素、修改元素、删除元素
  12. 航天环宇提交招股书上会稿:计划募资6亿元,控股股东为李完小
  13. 玩客云设置linux权限,玩客云退出链克怎么禁止硬盘缓存?.onething_data文件禁止缓存玩客云关闭上传退出链克...
  14. Oracle 11g RAC 修改服务器各类ip地址【转载】
  15. 深度神经网络概念整理,最简单的神经网络是什么样子?
  16. 键盘Ctrl键坏了,用注册表来修
  17. java经典题之冒泡排序
  18. 计算机技能比赛范文,计算机基本技能大赛活动策划书范文
  19. 如何复制360图书馆文章
  20. Python: 蛇形填空(每日一题)

热门文章

  1. 常用长度单位PX/EM/PT/百分比转换公式
  2. outlook服务器与本地文件,Outlook设置本地存储的方法
  3. github 私有化部署_项目私有化部署
  4. android root权限下Apk下载、静默安装并自启
  5. IBM数据保护和存储管理
  6. 小型水库雨水情测报及大坝安全监测建设介绍
  7. Bluetooth设备之间如何建立连接
  8. 学画画要花多少钱_高二学美术的费用大概是多少 要花多少钱
  9. docker 制作镜像并push至私有仓库
  10. 手机显示无法接通服务器是怎么回事,手机无法接通是什么原因及如何解决【图文】...