由两部分组成:SSL记录协议和SSL握手协议

1、握手协议

SSL中最复杂的协议,负责建立当前会话状态的参数,使得服务器和客户能协商一个协议版本、选择密码算法和哈希算法、压缩算法、会话ID等,并使用公钥加密技术通过一系列交换信息在客户和服务器之间生成共享的密钥。在使用会话传输任何一数据之前,必须先用握手建立连接,实现相互验证,协商加密算法和生成密钥等内容。

握手协议由一系列在客户和服务器之间的报文交换组成。每个报文由3个字段组成,报文类型、报文长度、报文内容

基本过程:

(1)客户机使用IE浏览器向服务器发送客户端的SSl版本号、密码设置、随机数和需要SSL服务器使用的SSL协议与客户机进行通信的的其他信息,IE浏览器使用https协议向服务器申请建立SSL会话

(2)服务器向客户端发送服务器端的SSL 版本号、密码设置、随机数和客户端使用SSL协议与服务器通信需要的其它信息。同时服务器端发送它自己的数字证书供客户认证,如果认为客户端需要身份认证则要求客户发送证书,该操作是可选的.

(3)客户端利用服务器发送信息认证服务器的真实身份 并取得公开密钥等,如果服务器不被认证,用户被告警发生了问题,通知不能建立带有加密和认证的 连接。若服务器能被成功地认证,客户机将继续下 一步。客户机为将要进行的会话创建预主密钥pre_ master_secret,并用服务器的公钥加密它,然后 向服务器发送加密的预主密钥。

(4)当客户能被成功认证后,服务器会使用它的 私人密钥解密从客户端得到的预主密钥pre_ master_secret, 并由此生成主master_ secret。同时客户端也从同样的pre_master_ secret开始得到相同的master_ secret。双方再由master_ secret产生会话密钥,利用会话密钥实现加密和解密在SSL会话期间交换的信息,并验证信息的完整性。

(5)会话密钥生成后,客户端向服务器 发送消息,通知服务器以后从客户端来的消息将用会话密钥加密,这表明握手的客户端部分已经完成。

(6)服务器向客户端发送相同的消 息,通知从服务器来的消息将用会话密钥加密,这表明握手的服务器部分已经完成。

2、记录协议

记录协议的功能:

(1)为高层的协议提供基本的安全服务

(2)记录层封装各种高层协议

(3)具体实施压缩解压缩、加密协议、计算和校验MAC等与安全有关的操作

记录协议的操作过程:

分段、压缩(可选)、增加MAC、加密、添加SSL记录首部

SSL记录首部组成:

主要类型、主要版本、次要版本、压缩长度

(1)主要类型:用来说明封装的数据段的更高层的协议类型。已定义的类型有:修改密文规程协议告警协议握手协议应用数据

(2)主要版本:使用SSL的主要版本号

(3)次要版本:使用SSL的次要版本号

(4)压缩长度:以字节为单位的封装数据长度

3、密钥生成过程及其评价

SSL的组成,其中握手协议和记录协议实现、密钥生成过程及其评价相关推荐

  1. 物联网基础之了解CCP协议,COAP协议,MTQQ协议等

    首先介绍下背景.最近开始研究物联网的套件.公司选中了阿里物联网套件,所以博主就开始投入到漫长的开发文档中.由于博主并非嵌入式开发者,所以一些名字没有听过,这对文档的阅读造成了不少的困扰,所以在此记录一 ...

  2. ssl双向认证_SSL握手协议不清楚?vTrus为你讲解其详细流程

    SSL(Secure Socket Layer)安全套接字协议是运行在应用层和TCP层之间的安全机制.保证上层应用数据传输的保密性.完整性以及传输双发身份的合法性. 传输加密性:握手协议定义会话密钥后 ...

  3. 理解SSL/TLS系列 (五)握手协议

    一.概述 由于当前TLS1.2使用最为广泛,本文描述的内容都基于TLS1.2 握手是 TLS 协议中最精密复杂的部分.在这个过程中,通信双方协商连接参数,并且完成身份验证.根据使用的功能的不同,整个过 ...

  4. 带你一文看懂--应用层、传输层的协议,HTTP协议及实现,UDP和TCP的报文格式以及为什么3次握手和4次挥手

    网络基础:TCP/IP四层模型中的典型协议--理解网络通信的流程原理 应用层协议:负责应用程序之间的数据沟通 网络版计算器:客户端向服务端传递两个数字以及一个运算符,服务端收到数据进行解析得到数字与运 ...

  5. 【转】SSL协议、SET协议、HTTPS简介

    一.SSL协议简介 SSL是Secure Socket Layer的缩写,中文名为安全套接层协议层.使用该协议后,您提交的所有数据会首先加密后,再提交到网易邮箱,从而可以有效防止黑客盗取您的用户名.密 ...

  6. HTTP协议,HTTPS协议,SSL/TLS协议概述

    HTTP协议,HTTPS协议,SSL/TLS协议概述 1. 什么是HTTP协议   HTTP(Hyper Text Transfer Protocol,HTTP)协议超文本传输协议,是一个基于请求与响 ...

  7. 计算机网络基础必备(三次握手,四次握手,以及HTTP协议相关)

    目录 一.计算机网络 通信协议 网络模型 二.TCP/IP TCP/IP 与 HTTP TCP 与 UDP TCP连接的建立与终止 TCP报文首部 TCP 三次握手 TCP 四次挥手 四个计时器 保持 ...

  8. TLS/SSL 工作原理及握手过程详解

    目录 前言 TLS/SSL 基础概念 密钥协商过程中存在的问题及解决办法 TLS/SSL 握手过程 前言 本文是对 HTTPS 安全基础.TLS/SSL 工作原理及握手过程的总结.第一部分介绍为 HT ...

  9. 抖音直播弹幕协议解析记录

    抖音直播弹幕协议解析记录: 记录一下抖音直播弹幕的获取过程 抖音弹幕现在采用 websocket 进行实时传输,一次建立握手连接,可持续实时通信,特别适合直播场景的数据传输 打开浏览器开发者模式,发现 ...

最新文章

  1. [SAP ABAP开发技术总结]选择屏幕——SELECT-OPTIONS
  2. python内存管理可以使用del_Python深入学习之内存管理
  3. 401 binary watch
  4. 作者:​郑树泉(1965-),男,上海计算机软件技术开发中心高级工程师,上海产业技术研究院工程大数据服务创新中心主任。...
  5. jQuery-点击按钮页面滚动到顶部,底部,指定位置
  6. 剑指 Offer II 023. 两个链表的第一个重合节点
  7. 设计模式04_抽象工厂
  8. 基于tensorflow+RNN的MNIST数据集手写数字分类
  9. 2019 ,我的新年Flag
  10. Git学习笔记 - 钢钢更新
  11. html5注册页面样式,HTML5一款小清新风格的登录/注册表单界面模板
  12. 五年产品经理的转正述职报告(附PPT下载)
  13. 计算机图形学笔记(六)
  14. 网络适配器出现黄色感叹号!,错误代码56
  15. 旧时王谢堂前燕,飞入寻常百姓家
  16. [Erlang危机](3.1)常见过载情景
  17. poll, ppoll
  18. 第48篇 接收蓝牙数据及PHP研究 Saturday
  19. 【Java高级】多线程基础
  20. Android未接电话(未接电话个数,以及未接电话信息的读取)

热门文章

  1. 「蓝桥杯」直线(Java)
  2. python怎么计算圆_python计算圆心
  3. dell服务器查看内存详细信息,DELL R710服务器内存故障排错
  4. 【时间序列分析】04.Hilbert空间
  5. 【阿冈感动】月最圆时写给乔月光的歌《爱是温暖的月光》
  6. Python_代码风格_合理分解代码,提高代码可读性
  7. 自我介绍500字中专计算机,中专生一分钟的自我介绍范文
  8. JSON,JSON介绍、语法
  9. 2月10日,北京下雪了,今年冬天第一场雪
  10. 我未来的道路,希望还有你们陪伴