《深入浅出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协议允许动态地引入新的算法

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

相关推荐
老前端的功夫几秒前
【Java从入门到入土】28:Stream API:告别for循环的新时代
java·开发语言·python
qq_435287921 分钟前
第9章 夸父逐日与后羿射日:死循环与进程终止?十个太阳同时值班的并行冲突
java·开发语言·git·死循环·进程终止·并行冲突·夸父逐日
止语Lab13 分钟前
从手动到框架:Go DI 演进的三个拐点
开发语言·后端·golang
yaoxin52112328 分钟前
397. Java 文件操作基础 - 创建常规文件与临时文件
java·开发语言·python
小短腿的代码世界31 分钟前
Qt日志系统深度解析:从qDebug到企业级日志框架
开发语言·qt
KnowSafe1 小时前
自动化+智能化:证书生命周期管理的双重革命
ssl·itrustssl·trustasia·证书自动化
REDcker1 小时前
浏览器端Web程序性能分析与优化实战 DevTools指标与工程清单
开发语言·前端·javascript·vue·ecmascript·php·js
Yzzz-F2 小时前
Problem - 2205D - Codeforces
算法
我命由我123453 小时前
Kotlin 开发 - lateinit 关键字
android·java·开发语言·kotlin·android studio·android-studio·android runtime
智者知已应修善业3 小时前
【51单片机2个按键控制流水灯运行与暂停】2023-9-6
c++·经验分享·笔记·算法·51单片机