TLS加密套件

article/2025/9/30 13:31:40

    出于兴趣爱好,决定开发TLS1.2-1.3的一个库。为此阅读了TLS相关的若干RFC文档,以及查阅了多篇相关博客文章。最终有以下发现:

    1. TLS定义了几百个加密套件(参考https://www.iana.org/assignments/tls-parameters/tls-parameters.xhtml),可是在HTTP2面前基本都被否定了(꒦_꒦),列入了加密套件黑名单。剩余的加密套件中,有20来个是被推荐的,还有二十来个没有被推荐;

    2. TLS-IANA中不推荐的加密套件,基本都被HTTP2列入了黑名单;

    3. Chrome-70-X64里建立HTTPS连接握手时(TLS1.2),client-hello中指定的加密套件中,除了最后面7个是出现在HTTP2加密套件黑名单中的(应该是为了兼容古老的服务器而指定),其余的全部是TLS推荐的加密套件。加密套件排列顺序合理:

          

4. 再来看看IE11-X86(Windows 7)对加密套件的支持情况(除了圈出来的这四个之外,其余的全是HTTP2黑名单里出现的o(╥﹏╥)o),加密套件排列顺序不合理,看样子微软IE浏览器很久没有人去动代码了:

        

    5. Firefox浏览器的加密套件是酱紫的(除了圈出来之外,其余的全部位于加密套件黑名单中):

        

    6. QQ浏览器其实是我不喜欢的浏览器,因为他为了钱居然每次我在地址栏输入tao,准备买买买的时候,总是给我推荐其他的网址,在极速内核下对加密套件的支持是这样的(除了圈出来之外,其余的全部位于加密套件黑名单中):

        

    7. 遨游5浏览器是我曾经最喜欢的浏览器,一键切换内核功能很好用,速度也很快,地址栏收藏很好用。它在极速内核下对于加密套件的支持,跟QQ浏览器完全一样,这里不再赘述;在IE内核下对于加密套件的支持不用多说,肯定跟本地IE浏览器的支持一致(这里鄙人是验证了的哈);

    8. Opera浏览器对加密套件的支持,跟QQ浏览器完全一样,不再赘述;

    9. 360极速浏览器极速内核下,对加密套件的支持如下(除了圈出来之外,其余的全部位于加密套件黑名单中),跟QQ极速内核的区别,也就是Reserved加密套件不一样,而IE兼容模式毫无疑问加密套件跟本地IE浏览器是一样的(验证过);

        

    10. 百度浏览器的极速模式下,对加密套件支持是这样的(除了圈出来之外,其余的全部位于加密套件黑名单中):

        

    11. 最终得到如下表格(主流浏览器对加密套件的支持情况):

        

    12. 实现TLS1.2的话,加密套件(TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,TLS_DHE_RSA_WITH_AES_128_GCM_SHA256)中的一个是必要的。另外,还要为了兼容性实现一下HTTP2黑名单中的部分套件(TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_RSA_WITH_3DES_EDE_CBC_SHA)。
    13. 规划暂时如此,如果遇到问题,再重新调整策略。

 


http://chatgpt.dhexx.cn/article/lhSqEvo4.shtml

相关文章

sshd服务及防暴力破解 附赠防暴力破解脚本

利用yum源安装sshd服务客户端安装:openssh-clients.x86_64 服务端安装:openssh-server.x86_64Openssh和sshd有区别吗? 两个是不同的概念,软件包名称叫openshh 开机的服务叫sshd[rootserver1 ~]# rpm -ql openssh ###查看安装的…

The server selected protocol version TLS10 is not accepted by client preferences [TLS12]

最近在部署项目的时候遇到一个问题,卡了整整一天时间,所以感觉有必要po个解决方法出来给有需要的朋友参考一下。 问题描述:Caused by: javax.net.ssl.SSLHandshakeException: The server selected protocol version TLS10 is not accepted b…

TLS 1.3 协议详解

TLS 1.3 握手流程详解 我的TLS实现(支持TLS1.3和国密SSL),大家可以学习参考:https://github.com/mrpre/atls/ 如果觉得有用,请打赏N元:http://39.98.242.44 需要的背景知识: (1&am…

服务攻防-协议漏洞-FTPRDPSSHRsyncProFTPDlibsshOpenssh-Hydra工具使用口令猜解未授权访问

目录 一、导图 二、口令猜解-Hydra-FTP&RDP&SSH 1、协议介绍 2、Hydra工具介绍 3、实例演示 三、配置不当-未授权访问-Rsync 文件备份 1、Rsync介绍 2、漏洞成因——配置不当 3、实例演示 四、协议漏洞-应用软件-FTP&ProFTPD搭建 1、引入 2、ProFTPD介…

提示:The server selected protocol version TLS10 is not accepted by client preferences [TLS13, TLS12]

JMeter连接SQLservice数据库。 1、测试计划添加sqljdbc41.jar 2、添加数据库配置 3、添加请求 3、按着上面的配置,执行,然后报错误了。 提示“Cannot create PoolableConnectionFactory (The driver could not establish a secure connection to SQL S…

SSH暴力破解

ssh暴力破解解决方案 https://www.cnblogs.com/walkingzq/p/8191900.html 最近在使用腾讯云服务器的过程中,被比特币黑客黑了一次服务器(如下图所示)。 图1 比特币勒索信息 继而认识到网络安全的重要性。在重新安装系统之后,发现…

SSL/TLS Cipher Suites

Cipher Suite 一个加密算法套件(CipherSuite)是一个四件套,由各类基础的加密算法组成,主要包含了四类: 1)Key Exchange 密钥交换算法; 2)Authentication 身份认证算法&#xff1b…

The server selected protocol version TLS10 is not accepted by client preferences [TLS13, TLS12]

springboot启动时报错 com.microsoft.sqlserver.jdbc.SQLServerException: 驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接。错误:“The server selected protocol version TLS10 is not accepted by client prefer ences [TLS13, TLS12]”。 原因&…

centos7 SSH防暴力破解五种方法

什么是暴力破解,简单来说就是对一个服务器进行无数次尝试登陆,并用不同的密码进行登陆直到可以登陆成功。暴力破解的基本步骤可以分为以下几步: 找到对应的linux服务器 Ip地址扫描端口号:22 nmap扫描端口开始暴力破解 : 一般root…

Linux云服务器防止暴力破解(三道SSH安全策略)

前言 新购入的服务器,往往用户名默认为root,ssh默认开放22端口,且配置SSH服务时往往同时允许密码和公钥二重登录。然而,许多非法服务器运行着暴力破解程序,通过访问用户名root的22默认端口,暴力获取获取您的…

kali Linux 工具 BurpSuite-暴力破解

关于渗透的实验,我们大多数能在kali的工具集找到,其中关于抓包工具BurpSuite的使用,我做一个比较简单的实验————————暴力破解—————————— 暴力破解,顾名思义,就是我们把密码一个个尝试,只…

拒绝ssh远程暴力破解-以centos7及centos8为例

一、centos8 参考: 如何在CentOS 8上安装和配置Fail2ban - A5互联 - 博客园 (cnblogs.com)https://www.cnblogs.com/a5idc/p/13650056.html上面这一个讲的比较详细:要点摘录如下 默认的Fail2ban安装中带有两个配置文件,/etc/fail2ban/jail…

SSHD 服务防止暴力破解

SSHD 服务防止暴力破解 目录 1、 配置安全的 SSHD 服务(方法一) 2、通过开源的防护软件来防护安全(方法二) 1、配置安全的 SSHD 服务 1.1、 服务器安全策略 密码足够复杂: 密码的长度要大于 8 位不大于 20 位。密…

TLS1.0协议漏洞修复

漏洞描述: 远程服务接受使用TLS 1.0加密的连接。TLS 1.0有许多密码设计缺陷。TLS 1.0的现代实现减轻了这些问题,但是像1.2和1.3这样的TLS的新版本是针对这些缺陷而设计的,应该尽可能使用。截至2020年3月31日,为TLS 1.2及更高版本启…

linux red hat 8.0 root密码破解

简介: root用户是linux用户最大权限的用户,如果不慎将其密码忘记是不可直接更改的,只能通过破解的方式来重置root密码。 linux系统的启动过程: 1 开机自检(POST),初始化部分硬件 2 搜素可用…

STL库实践

STL库实践 1 写在最前面的话1.1 容器(container)1.2 算法(algorithm)1.3 迭代器(iterator)1.4 仿函数1.5 适配器1.6 空间配置器1.7 stl初试牛刀 2 容器之 string2.1 string 构造函数2.2 string基本赋值操作2.3 string存取字符操作2.4 string拼接操作2.5 string查找和替换2.6 st…

【C++进阶——STL库】

STL库 介绍 STL是一个具有工业强度的,高效的C程序库,包含了很多计算机科学领域里所常用的基本数据结构和基本算法;六大组件:容器(Container)、迭代器(Iterator)、算法(Algorithm)、仿函数、适配器、分配器; 容器 定…

STL库:map和set

STL库:map和set 文章目录 STL库:map和set1.STL库中set的官方介绍2.set的常用接口3.set的总结4.STL库中multiset的官方介绍5.STL库中map的官方介绍6.map中的键值对pair7.map的常用接口7.1 map的访问操作7.2 map的修改操作7.3 map的查找操作 8.map的总结9.…

STL库(1)

STL库(1) vectorvector介绍vector使用初始化元素访问内存扩容插入删除 listlist介绍初始化,元素访问插入删除元素 vector和list区别 vector vector介绍 vector是可以改变大小的数组的容器。其内存结构和数组一样,使用连续的存储…

【C++学习五】STL库的应用

文章目录 初识C之 STL标准库1. CSTL的三大核心组件2. 自定义函数与算法对容器实现操作3. 基于自定义函数以及操作模板实现简易数字图像处理3.1 图像灰度变换3.2 图像二值化 4. 初识STL容器之:set集合5.初识STL容器之:map(关联容器)结语 初识C之 STL标准库…