三、SSL握手协议

SSL握手协议被封装在记录协议中,该协议允许服务器与客户机在应用程序传输和接收数据之前互相认证、协商加密算法和密钥。在初次建立SSL连接时服务器与客户机交换一系列消息。1)客户机认证服务器;2)允许客户机与服务器选择双方都支持的密码算法;3)可选择的服务器认证客户;4)使用公钥加密技术生成共享密钥;5)建立加密SSL连接。 握手协议报文头包括三个字段:1字节):该字段指明使用的SSL握手协议报文类型。SSL握手协议报文包括10种类型。报文类型见图13.5。3字节):以字节为单位的报文长度。

报文类型

参数

hello_request

client_hello

server_hello

certificate

server_key_exchange

certificate_request

server_done

certificate_verify

client_key_exchange

finished

版本、随机数、会话ID、密文族、压缩方法

版本、随机数、会话ID、密文族、压缩方法

X.509v3证书链

参数、签名

类型、授权

签名

参数、签名

Hash值

图13.5 SSL握手协议报文

SSL

注:带*的传输是可选的,或者与站点相关的,并不总是发送的报文。

图13.6 握手协议的过程

当客户从服务器端传送的证书中获得相关信息时,需要检查以下内容来完成对服务器的认证:时间是否在证书的合法期限内;签发证书的机关是否客户端信任的;签发证书的公钥是否符合签发者的数字签名;证书中的服务器域名是否符合服务器自己真正的域名。服务器被验证成功后,客户继续进行握手过程。

同样的,服务器从客户传送的证书中获得相关信息认证客户的身份,需要检查:用户的公钥是否符合用户的数字签名;时间是否在证书的合法期限内;签发证书的机关是否服务器信任的;用户的证书是否被列在服务器的

1)建立安全能力。客户机向服务器发送client_hello报文,服务器向客户机回应server_hello报文,建立如下的安全属性:协议版本,会话ID,密文族,压缩方法,同时生成并交换用于防止重放攻击的随机数。密文族参数包括密钥交换方法(Deffie-Hellman密钥交换算法、基于RSA的密钥交换和另一种实现在Fortezza chip上的密钥交换)、加密算法(DES、RC4、RC2、3DES等)、MAC算法(MD5或SHA-1)、加密类型(流或分组)等内容。2)认证服务器和密钥交换。在hello报文之后,如果服务器需要被认证,服务器将发送其证书。如果需要,服务器还要发送server_key_exchange。然后,服务器可以向客户发送certificate_request请求证书。服务器总是发送server_hello_done报文,指示服务器的hello阶段结束。3)认证客户和密钥交换。客户一旦收到服务器的server_hello_done报文,客户将检查服务器证书的合法性(如果服务器要求),如果服务器向客户请求了证书,客户必须发送客户证书,然后发送client_key_exchange报文,报文的内容依赖于client_hello与server_hello定义的密钥交换的类型。最后,客户可能发送client__verify 报文来校验客户发送的证书,这个报文只能在具有签名作用的客户证书之后发送。4)结束。客户发送change_cipher_spec报文并将挂起的CipherSpec复制到当前的CipherSpec。这个报文使用的是改变密码格式协议。然后,客户在新的算法、对称密钥和MAC秘密之下立即发送finished报文。finished报文验证密钥交换和鉴别过程是成功的。服务器对这两个报文响应,发送自己的change_cipher_spec报文、finished报文。握手结束,客户与服务器可以发送应用层数据了。LDAP里用户的信息中;得到验证的用户是否仍然又权限访问请求的服务器资源。  握手协议的过程如下:

这些消息交换能够实现如下操作:

SSL

类型(

长度(

内容(≥1字节):使用的报文的有关参数。

SSL协议的概述(三)相关推荐

  1. https SSL协议详解

    最近在看<密码学与网络安全>相关的书籍,这篇文章主要详细介绍一下著名的网络安全协议SSL. 在开始SSl介绍之前,先给大家介绍几个密码学的概念和相关的知识. 1.密码学的相关概念 密码学( ...

  2. 利用SSL协议配置web服务器,基于windows2008平台配置实现利用SSL协议的安全IISWeb服务器汇总.doc...

    PAGE \* MERGEFORMAT - 24 - PAGE \* MERGEFORMAT - 1 - 石河子大学信息科学与技术学院 课程设计报告2014-2015学年第一学期 题目名称:基于win ...

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

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

  4. SSL协议原理(Secure Socket Layer)【转载】

    摘要 伴随企业信息化程度的加深,远程安全访问.协同工作需求的日益明显,SSL VPN技术逐渐成为企业用户远程安全接入的重要方式.本文着重阐述SSL(安全套接层)协议的基本原理,比较SSL VPN与IP ...

  5. 物联网设备和应用程序涉及协议的概述

    物联网设备和应用程序涉及协议的概述. 帮助澄清IoT层技术栈和头对头比较. 物联网涵盖了广泛的行业和用例,从单一受限制的设备扩展到大量跨平台部署嵌入式技术和实时连接的云系统. 将它们捆绑在一起是许多传 ...

  6. SSL协议的分析和实现

    1引言  SSL是一种在客户端和服务器端之间建立安全通道的协议.SSL一经提出,就在Internet上得到广泛的应用.SSL最常用来保护Web的安全.为了保护存有敏感信息Web的服务器的安全,消除用户 ...

  7. SSL协议的分析及实现

    1引言  SSL是一种在客户端和服务器端之间建立安全通道的协议.SSL一经提出,就在Internet上得到广泛的应用.SSL最常用来保护Web的安全.为了保护存有敏感信息Web的服务器的安全,消除用户 ...

  8. HTTP与SSL协议

    一.HTTP协议简要分析 ** 1.概念解析 ** 1.)什么是超文本?(HyperText) 超文本是包含有超链接(Link)和各种多媒体元素标记(Markup)的文本.这些超文本文件彼此链接,形成 ...

  9. SSL协议安全系列:PKI体系中的证书吊销

    GoSSIP_SJTU · 2016/03/03 10:06 0x00 前言 在前面的章节我们讨论了部分SSL/TLS握手协议.记录协议中存在的安全问题,针对它们的攻击以及相应的加固方案.在SSL/T ...

最新文章

  1. Cell二连发 | 广东CDC/耶鲁大学利用纳米孔测序揭示中/美新冠病毒基因组流行病学传播规律...
  2. Robust principal component analysis?(RPCA简单理解)
  3. ec6110刷linux系统,华为EC6110-T优盘强刷固件升级包及刷机教程
  4. 获取上传图片的大小 php,thinkphp5 获取上传图片的大小和信息
  5. 客座编辑:杜小勇(1963-),男,中国人民大学信息学院教授,博士生导师,教育部数据工程与知识工程重点实验室主任。...
  6. android 控件总结,Android制霸控件View总结
  7. solr通过连接数据库删除document 总结
  8. 软件测试--接口测试入门
  9. [Linux] 编译 与 链接
  10. 酷似美军作战模式的中台战略,究竟是怎么回事? | 大咖说中台
  11. linux环境文件或者文件夹打包
  12. PMP课程笔记:第9章 项目资源管理
  13. matlab:xlsread
  14. 紫猫数据库使用 (二)
  15. 一文搞懂this指向
  16. 论文笔记 EMNLP 2020|Graph Transformer Networks with Syntactic and Semantic Structures for Event Argument
  17. 2021衡阳田家炳高考成绩查询,2021年衡阳高考最高分多少分,历年衡阳高考状元
  18. 平均年薪60.8万,程序员拿下这个证书有多吃香?!
  19. 关键字与保留词,ES2020版
  20. 来听听资深设计师的想法(下)

热门文章

  1. 用php制作网页留言板的分页
  2. GeoTools:WKT、GeoJson、Feature、FeatureCollection相互转换
  3. Oracle学习I —— Oracle介绍
  4. python-使用pyautogui无法点击米卓同屏助手显示的手机画面
  5. Magento2开发人员认证考试
  6. 雷鸟下载器(百度网盘第三方下载工具)
  7. 基于深度学习的中文车牌识别与管理系统(含UI界面,Python代码)
  8. C语言不同数据类型间的混合运算转换规则+常见数据类型
  9. 人工蜂群算法python_用人工蜂群算法求解k-分区聚类问题
  10. 四轴飞控软件开发计划