TLS1.3的简单学习
TLS1.3的简单学习
TLS的历史
From GTP3.5
TLS(传输层安全)是一种加密协议,旨在确保 Internet 通信的安全性和隐私保护。下面是 TLS 的历史概述:
SSL(安全套接层):TLS 的前身是 Netscape 公司在 1994 年推出的 SSL 协议。SSL 1.0、2.0 和 3.0 逐渐发展,但 3.0 存在一些安全漏洞。
TLS 1.0:为了解决 SSL 3.0 的安全漏洞,1999 年发布了 TLS 1.0。TLS 1.0 安全性更高,主要基于 SSL 3.0。这是第一个被冠以 “TLS” 名称的版本,但其实质上仍然是 SSL。
TLS 1.1:在 TLS 1.0 发布后的几年,一些安全漏洞被发现。为了修复这些漏洞,于2006年发布了 TLS 1.1。TLS 1.1 取消了对一些旧有密码套件的支持,增加了对新的安全特性的支持。
TLS 1.2:2008 年发布了 TLS 1.2,这是一个重要的更新。TLS 1.2 引入了对新的密码套件的支持,提供更高的安全性和效率。它还解决了一些与 TLS/SSL 相关的安全问题。
TLS 1.3:TLS 1.3 是 TLS 的最新版本,于2018 年发布。TLS 1.3 进一步提高了安全性和性能,并简化了握手协议。它废除了一些不安全和不常用的特性,提供更快的连接速度和更好的安全性。
总的来说,TLS 的历史是从 SSL 逐渐演化而来的。每个版本都添加了新的特性和安全性改进,以适应互联网发展中的需求,并修复已知的安全漏洞。TLS 1.3 是目前使用最广泛的版本,也是最安全和高效的版本。
一些说明
TLS 1.2其实存在的问题也很多, 比如不支持前向加密.
所以微软其实对TLS1.2非常不热心.
2009年发布的win7和 Win2008r2 就不支持 TLS1.2
但是TLS1.3的发布比较优秀. 基本上解决了大部分的安全问题.
各大开源软件 基本上再2018年都大部分支持了 TLS1.3
但是微软应该不使用 开源的代码, 自己进行代码开发.
所以实际上他这边使用的是自己开发的代码.
也导致Winserver2019发布时依旧不支持 TLS1.3
直到2021年发布的 Win Server 2022才正式支持 TLS1.3
关于TLS与TCP和HTTPS
TLS是传输层协议,HTTPS是表示层的协议.
HTTPS是建立在TLS协议之上的.
TLS其实是在TCP协议之上的安全协议.
TLS1.3时增加了很多特性, 比如0rtt等, 性能以及安全性都有了很大的提升.
HTTPS 其实需要借助于证书 才可以实现加密访问.
证书其实是证明网站身份的证明.
证书内有网站的信息.公钥信息,以及上级CA给的办法的签名信息.
客户端拿到证书后, 会有浏览器内嵌的CA证书的公钥进行验签, 验证证书的真伪
验证证书之后再拿到网站的公钥, 进行非对称加密发送客户端的一些密文等信息
需要注意 https 除了握手阶段, 数据流量其实都是对称加密的.
关于软件对TLS1.3的支持
JDK
JDK11 正式支持 TLS1.3
JDK8 需要在261的版本才兼容支持TLS1.3
Windows
Windows2022 才支持TLS1.3.
Win2012 开始支持TLS1.2
nginx 在2018年的版本基本上就支持了TLS1.3
TLS1.3的简单学习的更多相关文章
- Log4j简单学习笔记
log4j结构图: 结构图展现出了log4j的主结构.logger:表示记录器,即数据来源:appender:输出源,即输出方式(如:控制台.文件...)layout:输出布局 Logger机滤器:常 ...
- shiro简单学习的简单总结
权限和我有很大渊源. 培训时候的最后一个项目是OA,权限那块却不知如何入手,最后以不是我写的那个模块应付面试. 最开始的是使用session装载用户登录信息,使用简单权限拦截器做到权限控制,利用资源文 ...
- CentOS 简单学习 firewalld的使用
1. centos7 开始 使用firewalld 代替了 iptables 命令工具为 firewall-cmd 帮助信息非常长,简单放到文末 2. 简单使用 首先开启 httpd 一般都自带安装了 ...
- Windows 下 Docker 的简单学习使用过程之一 dockertoolbox
1. Windows 下面运行 Docker 的两个主要工具1): Docker for Windows2): DockerToolbox区别:Docker For Windows 可以理解为是新一代 ...
- 在MVC中实现和网站不同服务器的批量文件下载以及NPOI下载数据到Excel的简单学习
嘿嘿,我来啦,最近忙啦几天,使用MVC把应该实现的一些功能实现了,说起来做项目,实属感觉蛮好的,即可以学习新的东西,又可以增加自己之前知道的知识的巩固,不得不说是双丰收啊,其实这周来就开始面对下载在挣 ...
- Linux——帮助命令简单学习笔记
Linux帮助命令简单学习笔记: 一: 命令名称:man 命令英文原意:manual 命令所在路径:/usr/bin/man 执行权限:所有用户 语法:man [命令或配置文件] 功能描述:获得帮助信 ...
- OI数学 简单学习笔记
基本上只是整理了一下框架,具体的学习给出了个人认为比较好的博客的链接. PART1 数论部分 最大公约数 对于正整数x,y,最大的能同时整除它们的数称为最大公约数 常用的:\(lcm(x,y)=xy\ ...
- mongodb,redis简单学习
2.mongodb安装配置简单学习 配置好数据库路径就可以mongo命令执行交互操作了:先将服务器开起来:在开个cmd执行交互操作 ...
- html css的简单学习(三)
html css的简单学习(三) 前端开发工具:Dreamweaver.Hbuilder.WebStorm.Sublime.PhpStorm...=========================== ...
- html css的简单学习(二)
html css的简单学习(二) <!Doctype html>告诉浏览器,这是一个html文档.lang="en" 默认是en,表示英语:zh-Hans 中文简体:z ...
随机推荐
- 防火墙配置SNMP
深信服AC配置SNMP 深信服AF配置SNMP 深信服AD配置SNMP 在接口上启用是snmp管理,平台有网神的mib,可以都读到数据
- kubernetes不同pod之间调用(四)
kubernetes不同pod之间调用(四) k8s系列 源自我工作上的实际场景,记录于此. kubernetes不同服务间的调用.kubernetes不同容器间的调用.kubernetes不同- 今 ...
- 斯坦福 UE4 C++ ActionRoguelike游戏实例教程 06.敲定AI——游戏框架拓展和细节优化
斯坦福课程 UE4 C++ ActionRoguelike游戏实例教程 0.绪论 概述 这篇文章对应课程13课, 50~54节.虽然标题是敲定AI,实际内容和AI关联并不大,主要工作是对游戏内各种细节 ...
- <Python全景系列-1> Hello World,1分钟配置好你的python环境
<从此开始:1分钟配置好你的python环境> 欢迎来到我们的系列博客<Python360全景>!在这个系列中,我们将带领你从Python的基础知识开始,一步步深入到高级话题, ...
- 物联网为什么需要5G?
摘要:5G,这个词,我想每个接触ICT行业的朋友都有听过,可5G的到来,对物联网行业的帮助究竟是什么? 我相信,95%的ICT从业者对5G这一概念没有一个清晰的认知. 这一期文章的主题主要是普及一些5 ...
- 技术实践丨PostgreSQL开启Huge Page场景分析
PostgreSQL用户经常发现,服务端在连接数较大的情况下,会出现系统内存消耗过多的情况,严重者可能会造成OOM.但是服务端配置的共享内存(shared_buffers,wal_buffers等)是 ...
- 华为亮相KubeCon EU 2023 新云原生开源项目Kuasar推动“云上演进”
摘要:协力同行.拥抱开源,解放数字生产力,为社会和行业带来更多价值. 在数字时代,如果说企业是一艘巨大的货船,那么云原生则为企业的每一个业务.每一个应用提供了标准化的集装箱,摆脱笨重的底层桎梏,打造新 ...
- 大数据场景下Volcano高效调度能力实践
摘要:本篇文章将会从Spark on Kubernetes 发展历程以及工作原理,以及介绍一下Spark with Volcano,Volcano如何能够帮助 Spark运行地更高效. Spark o ...
- M-SQL:超强的多任务表示学习方法
摘要:本篇文章将硬核讲解M-SQL:一种将自然语言转换为SQL语句的多任务表示学习方法的相关论文. 本文分享自华为云社区<[云驻共创]M-SQL,一种超强的多任务表示学习方法,你值得拥有> ...
- Scrum Master需要具备哪些能力和经验
摘要:ScrumMaster对于产品负责人和开发团队来说,履行的是教练的职责,帮助团队和组织其他成员发展具有组织特色的.高效的Scrum方法,贯彻执行敏捷思想,激励团队持续提升,并不懈追求卓越的表现. ...