SSL/TLS协议的基本过程是这样的:

  1. 客户端向服务器端索要并验证公钥。
  2. 双方协商生成"对话密钥"。
  3. 双方采用"对话密钥"进行加密通信。

  上面过程的前两步,又称为"握手阶段"(handshake)。

工作流程

1.客户端发出请求(ClientHello)

  首先,客户端(通常是浏览器)先向服务器发出加密通信的请求。提供支持的协议版本、一个客户端生成的随机数(稍后用于生成"对话密钥")、支持的加密方法和支持的压缩方法。

2 服务器回应(SeverHello)

  服务器收到客户端请求后,向客户端发出回应。回应包含确认使用的加密通信协议版本、一个服务器生成的随机数(稍后用于生成"对话密钥")、 确认使用的加密方法、和服务器证书(带有服务端公钥)。

3 客户端回应

  客户端收到服务器回应以后,首先验证服务器证书。如果证书没有问题,客户端就会从证书中取出服务器的公钥。然后,向服务器发送一个随机数(该随机数用服务器公钥加密。pre-master key,前后三个随机数通过一个密钥导出器最终导出一个对称密钥。)、编码改变通知、客户端握手结束通知。

4 服务器的最后回应

  服务器收到客户端的第三个随机数pre-master key之后,计算生成本次会话所用的"会话密钥"。然后,向客户端最后发送编码改变通知、服务器握手结束通知。
至此,整个握手阶段全部结束。

5.客户端与服务器进入加密通信

  完全是使用普通的HTTP协议,只不过用"会话密钥"加密内容。

  TLS/SSL为web提供安全保障主要是体现在https协议上。HTTPS(全称:Hyper Text Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道。即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。 通过SSL或者TLS隧道传输敏感信息,这样就产生了https通信流量。例如网络银行之类的应用,在服务器和客户端之间传输密码,信用卡号码等重要信息时,都是通过https协议进行加密传送的。

TLS协议工作过程;如何应用TLS/SSL协议为WEB流量提供安全的更多相关文章

  1. DNS协议工作过程;DNS的安全隐患

    DNS协议工作过程   下面以域名为m.xyz.com的主机欲通过另一个主机的域名y.abc.com的IP地址为例,简述DNS协议过程. 主机m.xyz.com先向其本地服务器dns.xyz.com进 ...

  2. 第一天开通博客,就粗略写一下刚了解TCP/IP协议工作过程

    Tcp/Ip协议分为四层:底层到高层顺序 链路层(硬件,网卡这些) 网络层(选择一条传输路径,如何从一台计算机请求另一条计算机) 传输层(遵循TCP(传输控制协议),UDP(用户数距协议)这些协议) ...

  3. 通过wireshark,以及python代码收发邮件,了解smtp协议,pop协议工作过程

    40返回连接server成功 41.43发送ehlo命令查询server支持命令 返回250 44.46请求认证  server响应235认证成功 47.49发送mail命令发送者邮箱  返回250 ...

  4. H3C OSPF协议工作过程概述

  5. SSL协议(HTTPS) 握手、工作流程详解(双向HTTPS流程)

    原文地址:http://www.cnblogs.com/jifeng/archive/2010/11/30/1891779.html SSL协议的工作流程: 服务器认证阶段:1)客户端向服务器发送一个 ...

  6. HTTPS协议工作原理(SSL数字证书)

    目录 HTTPS SSL协议的工作过程 SSL数字证书的查看 HTTPS 我们都知道HTTP协议是明文传输的,并且不能验证对方的身份,而且不能保证数据的完整性.而当我们在网络上进行购物电子交易时,电子 ...

  7. wireshark分析ssl协议

    1.什么是ssl SSL(Secure Sockets Layer 安全套接层),及其继任者传输层安全(Transport Layer Security,TLS)是为网络通信提供安全及数据完整性的一种 ...

  8. ssl协议

    在互联网安全通信方式上,目前用的最多的就是https配合ssl和数字证书来保证传输和认证安全了.本文追本溯源围绕这个模式谈一谈. 1.首先解释一下上面的几个名词: https:在http(超文本传输协 ...

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

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

随机推荐

  1. CRM 2016 IFrame 函数修改 父页面字段

    IFrame js 代码: parent.Xrm.Page.getAttribute("new_xxxx").setValue(123); 当然,可以设置 new_xxxx 字段的 ...

  2. object视频播放

    param name标签是在这个播放插件中嵌入的一些功能和播放参数: <param name="playcount" value="1"><! ...

  3. U3D学习005——输入操作

    1.input管理器 edit-project settings-input 2.getaxis——虚拟轴获取 获取水平和垂直的输入和其他输入(input管理器中定义的) 3.对象的transform ...

  4. DB通用类:Access通用类

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.D ...

  5. bootstrap4学习—Bootstrap v4.0.0-alpha.6的快速参考

    下面为Bootstrap v4.0.0-alpha.6中的代码快速检索地址: 网址:https://hackerthemes.com/bootstrap-cheatsheet/ 在使用bootstra ...

  6. ASCII、Unicode和UTF-8

    转自廖雪峰的官方网站:https://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000/00138 ...

  7. 'pip' 不是内部或外部命令

    安装好Python,在环境变量Path中加入相应路径信息后,Python命令没问题,但是运行pip失败: 'pip' 不是内部或外部命令,Pip工具已经自带安装好了,只是跟Python命令一样,需要我 ...

  8. python学习之----BuildSoup和正则表达式

    在抓取网页的时候,BeautifulSoup 和正则表达式总是配合使用的.其实,大多数支 持字符串参数的函数(比如,find(id="aTagIdHere"))都可以用正则表达式实 ...

  9. 【Selenium-WebDriver自学】Selenium-IDE用户扩展(七)

    ==================================================================================================== ...

  10. 《机器学习实战》ID3算法实现

    注释:之前从未接触过决策树,直接上手对着书看源码,有点难,确实有点难-- 本代码是基于ID3编写,之后的ID4.5和CART等还没学习到 一.决策树的原理 没有看网上原理,直接看源码懂得原理,下面是我 ...