《深入浅出HTTPS》读书笔记(29):TLS/SSL协议

《深入浅出HTTPS​​​​​​​​​​》读书笔记(29):TLS/SSL协议

TLS/SSL协议是一系列算法的组合,相比密码学算法来说,TLS/SSL协议的复杂性就更大了,主要体现在以下方面。

◎协议设计的复杂性:一个完整的解决方案考虑的问题非常多,需要考虑扩展性、适用性、性能等方面,一旦方案设计不充分,攻击者不用攻击特定的密码学算法,而会基于协议进行攻击。

◎协议实现的严谨性:即使协议设计是完美的,在实现协议的时候,也可能犯错误;如果不充分理解密码学算法应用标准,最终实现的协议就会存在安全漏洞。

TLS/SSL协议是最常见的安全解决方案,需要注意的是,TLS/SSL协议并不是唯一的解决方案。

TLS/SSL协议在网络协议中的定位:

TLS/SSL协议位于应用层协议和TCP之间,构建在TCP之上,由TCP协议保证数据传输的可靠性,任何数据到达TCP之前,都经过TLS/SSL协议处理。

任何应用层协议(HTTP、SMTP、FTP、其他自定义应用层协议)都可以结合TLS/SSL协议。

TLS/SSL协议一般构建在TCP之上,也可以构建在UDP之上,称为DTLS(Datagram Transport Layer Security)协议。

TLS/SSL协议有四个目标:

◎数据是机密的:通信两端传输的数据应该是安全的,不可伪造和篡改的。

◎互操作性:TLS/SSL协议是标准的,任何开发者基于TLS/SSL RFC设计规范都可以实现该协议

◎可扩展性:SSL协议允许动态地引入新的算法

◎效率:解决方案必须是高效的

相关推荐
懂点Tech2 小时前
ctfshow misc28:GIF 高度修改解题与脚本实现
开发语言·windows·python
微尘hjx2 小时前
【ByteTrack 04】多轨迹算法ByteTrack改进点
算法·yolo·目标检测·目标跟踪·bytetrack·ultralytics·车跟踪
云和数据.ChenGuang2 小时前
Python 重写(Override)深度解析:从 MRO 到 super() 的完整机制
java·开发语言·人工智能·python·langchain·1024程序员节
川石课堂软件测试3 小时前
学习软件测试需掌握的一些知识
数据库·python·sql·功能测试·网络协议·mysql·http
美狐美颜SDK开放平台3 小时前
视频美颜SDK试用DEMO阶段应该测试什么?直播APP接入实操指南
开发语言·人工智能·深度学习·音视频·美颜sdk·直播美颜sdk·第三方美颜sdk
dtq04243 小时前
C++小案例 - 日志实战
开发语言·c++
星夜离尘564 小时前
MATLAB ADC 码流触顶诊断:命中数、缺口分段与削顶不可辨识性
开发语言·matlab
码匠许师傅4 小时前
【C++三方组件】Qt 概览:桌面 C++ 的事实标准与许可证三轨
开发语言·c++·qt
明天也要努力学习5 小时前
IP 协议的相关特性
网络·网络协议·tcp/ip
码匠许师傅5 小时前
【C++三方组件】POCO:跨平台系统编程全家桶
开发语言·c++