既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上C C++开发知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
1 概述
SSL(Secure Sockets Layer)及其继任者 TLS(Transport Layer Security)是为网络通信提供安全及数据完整性的一种安全协议。
SSL 由 Netscape 研发,用以保障在 Internet 上安全地进行数据传输,利用数据加密“Encryption”技术,可确保数据在网络传输过程中不会被截取或窃听。SSL 的当前版本为 3.0,它已被广泛地用于 Web 浏览器与服务器之间的身份认证和加密数据传输场景中。
TLS 用于在两个通信应用程序之间提供保密性和数据完整性。
TLS 与 SSL 都是在传输层对网络连接进行加密的。
2 作用
SSL/TLS 的主要作用如下:
- 认证用户和服务器,确保数据被发送到正确的客户端和服务器上;
- 加密数据以防止数据中途被窃取;
- 维护数据的完整性,确保数据在传输过程中不被篡改。
3 SSL的工作过程
3.1 发送方的工作过程
消息发送方的工作过程如下:
- 从上层接收要发送的数据(包括各种消息和数据);
- 对接收到的数据进行分段,分成若干纪录;
- 使用指定的压缩算法进行数据压缩(可选);
- 使用指定的 MAC(消息验证码,Message Authentication Code) 算法生成 MAC ;
- 使用指定的加密算法进行数据加密;
- 添加 SSL 记录协议的头,发送数据。
3.2 接收方的工作过程
消息接收方的工作过程如下:
- 接收数据,从 SSL 记录协议的头中获取相关信息;
- 使用指定的解密算法解密数据;
- 使用指定的 MAC 算法校验 MAC ;
- 使用压缩算法对数据解压缩(在需要进行);
- 将若干记录进行数据重组;
- 将重组后的数据发送给上层。
说明: SSL 记录协议处理的最后一个步骤是附加一个 SSL 记录协议的头,以便构成一个 SSL 记录。SSL 记录协议头中包含了 SSL 记录协议的若干控制信息。
4 SSL的会话状态
**会话(Session)和连接(Connection)**是 SSL 中两个重要的概念,两者定义如下:
- SSL会话:是指客户端和服务器之间的一个关联关系。SSL 会话通过握手协议来创建。它定义了一组安全参数;
- SSL连接:用于提供某种类型的服务数据的传输,SSL 连接是一种点对点的关系。一般来说,连接的维持时间比较短,并且每个连接一定与某一个会话相关联。
一次会话过程通常会发起多个 SSL 连接来完成任务,例如一次网站访问可能需要多个 HTTP/SSL/TCP 连接来下载其中的多个页面,这些连接共享会话定义的安全参数,这种共享方式可以避免为每个 SSL 连接单独进行安全参数的协商,而只需在会话建立时进行一次协商,从而提高了网络通信的效率。
每一个会话(或连接)都存在一组与之相对应的状态,会话(或连接)的状态表现为一组与其相关的参数集合,最主要的内容是与会话(或连接)相关的安全参数的集合,这些参数用于会话(或连接)中的加密解密、认证等安全功能的实现。
5 HTTPS介绍
HTTPS(HTTP over SSL,HTTP Secure),是以安全为目标的 HTTP 通道,在 HTTP 的基础上通过传输加密和身份验证保证了传输过程的安全性。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上C C++开发知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新**