目录

HTTPS

SSL协议的工作过程

SSL数字证书的查看


HTTPS

我们都知道HTTP协议是明文传输的,并且不能验证对方的身份,而且不能保证数据的完整性。而当我们在网络上进行购物电子交易时,电子网银转账时,这种方式就显得很不安全了。如果黑客截取了我们和服务器端的通信数据,那么黑客就能获取我们的一些敏感信息了。所以,HTTPS应运而生!

HTTPS是在HTTP协议的基础上加入了SSL协议,SSL协议加在了传输层和应用层之间。在加入了SSL协议后,HTTPS相比HTTP更加的安全,其对数据的传输进行了加密处理,并且能验证通信双方的身份,还保证了数据传输过程的完整性。这样,即使黑客截取了我们和服务器之间的通信数据,它也获取不到任何有用的信息。

需要说明的是,SSL协议是独立于 HTTP 的协议,所以不光是 HTTP 协议,其他运行在应用层的 SMTP和 Telnet 等协议均可配合 SSL 协议使用。可以说 SSL 是当今世界上应用最为广泛的网络安全技术。

SSL协议的工作过程

那么SSL协议是如何工作的呢?

首先,这需要服务器拥有SSL证书,SSL证书是需要向第三方CA机构申请的,现在大部分的SSL证书都是要付费申请的。

我们拿 baidu.com为例:百度首先利用公钥密码体制生成一对公私钥,私钥自己保存着,然后将公钥和baidu.com的一些身份信息发送给第三方可信任CA机构,CA机构收到百度的申请之后,将执行一些必要的步骤,以确信请求确实由百度发送而来,并且这些信息是正确的。然后,认证中心对百度发来的公钥和百度的身份信息进行数字签名,生成数字证书,然后发送给百度。数字证书里面包含了百度的公钥、百度的身份信息 和 第三方CA机构的数字签名

那么百度拥有了SSL数字证书之后,我们和百度之间是如何工作的呢?

  1. 客户端访问 https://www.baidu.com ,要求与百度Web服务器建立SSL连接
  2. 百度Web服务器接收到客户端请求后,会将网站的证书信息发送给客户端
  3. 客户端收到百度的证书信息后,通过证书上第三方可信任机构CA的签名,验证证书的真假。
  4. 验证真实性之后,客户端的浏览器与百度Web服务器开始协商SSL连接的安全等级,也就是信息加密的等级。
  5. 客户端的浏览器根据双方同意的安全等级,建立会话密钥对,然后利用网站证书中的公钥将会话密钥对的公钥进行加密,并发送给百度Web服务器
  6. 百度Web服务器利用自己的私钥解密出会话密钥对的公钥。所以现在我们有了百度的公钥,百度也有了我们浏览器会话密钥对的公钥
  7. 浏览器和百度Web服务器分别利用对方的公钥对数据进行加密传输。

SSL数字证书的查看

浏览器工具->Internet选项->内容->证书,就可以看到我们浏览器上的数字证书了。所谓证书,其实是对公钥的封装,在公钥的基础上添加了诸如颁发者之类的信息。

相关文章:为什么站点使用https加密之后还能看到相关数据

HTTPS协议工作原理(SSL数字证书)的更多相关文章

  1. 一文读懂Https的安全性原理、数字证书、单项认证、双项认证等

    本文引用了作者Smily(博客:blog.csdn.net/qq_20521573)的文章内容,感谢无私分享. 1.前言 目前苹果公司已经强制iOS应用必须使用HTTPS协议开发(详见<苹果即将 ...

  2. HTTPS加密通信原理及数字证书系统

    https加密通信原理: 公钥私钥成对,公钥公之于众,私钥只有自己知道. 用公钥加密的信息只能由与之相对应的私钥解密. 甲给乙发送数据时,甲先用乙的公钥加密这段数据,再用自己的私钥对这段数据的特征数据 ...

  3. 通俗理解数字签名,ssl数字证书和https

    前言 最近在开发关于PDF合同文档电子签章的功能,大概意思就是在一份PDF合同上签名,盖章,使其具有法律效应.签章有法律效应必须满足两个条件: 能够证明签名,盖章者是谁,无法抵赖 PDF合同在签章后不 ...

  4. [转]浅谈https\ssl\数字证书

    浅谈https\ssl\数字证书 http://www.cnblogs.com/P_Chou/archive/2010/12/27/https-ssl-certification.html 全球可信的 ...

  5. 浅谈https\ssl\数字证书

    全球可信的SSL数字证书申请:http://www.shuzizhengshu.com 在互联网安全通信方式上,目前用的最多的就是https配合ssl和数字证书来保证传输和认证安全了.本文追本溯源围绕 ...

  6. https证书/即SSL数字证书申请途径和流程

    国际CA机构GlobalSign中国 数字证书颁发中心网站:http://cn.globalsign.com    https证书即SSL数字证书,是广泛用 于网站通讯加密传输的解决方案,是提供通信保 ...

  7. 【转】浅谈https\ssl\数字证书

    转载请注明出处:http://www.cnblogs.com/P_Chou/archive/2010/12/27/https-ssl-certification.html 全球可信的SSL数字证书申请 ...

  8. 转 关于Https协议中的ssl加密解密流程

    关于Https协议中的ssl加密解密流程 2016年09月28日 09:51:15 阅读数:14809 转载自:http://www.cnblogs.com/P_Chou/archive/2010/1 ...

  9. TCP/IP协议工作原理简述

    TCP/IP协议工作原理简述 // */ // ]]>   TCP/IP协议工作原理简述 Table of Contents 1 概要 2 应用层 3 传输层 4 网络层 5 链路层 1 概要 ...

随机推荐

  1. linux 设置系统时间

    第一种: 服务器date时间不准: root@mdy-zabbix2:~# date Fri Sep 28 09:58:56 UTC 2018 实际是下午6点 第一步:执行tzselect 第二步: ...

  2. Windows-Redis占用C盘系统空间

    发现redis在电脑死机蓝屏的情况下,就是非正常退出redis会导致redis的缓存文件不会回收,占用系统空间, 下次在启动的时候,会再次创建一个10G多的缓存文件,极度占用磁盘空间. 现说明解决办法 ...

  3. 提升Idea启动速度与Tomcat日志乱码问题

    提升Idea启动速度与Tomcat日志乱码问题 前言 由于重装了一次Idea,所以有些设置时间就忘了,在此做个记录,以便以后忘记后可以来翻阅 Idea启动速度 一.将Idea所在的 安装文件夹 在wi ...

  4. React实用技巧

    取消请求 React 中当前正在发出请求的组件从页面上卸载了,理想情况下这个请求也应该取消掉,那么如何把请求的取消和页面的卸载关联在一起呢? 这里要考虑利用 useEffect 传入函数的返回值: u ...

  5. ASP.NET Core扩展库之实体映射

    在分层设计模式中,各层之间的数据通常通过数据传输对象(DTO)来进行数据的传递,而大多数情况下,各层数据的定义结构大同小异,如何在这些定义结构中相互转换,之前我们通过使用AutoMapper库,但Au ...

  6. JavaWeb开发中的分层思想(一)

    JavaWeb开发分层思想(一) 一.认识DAO.Service.Controller层 DAO(Data Access Object) 1.直接看英文意思就是"数据访问对象",也 ...

  7. WERTYU_键盘错位(JAVA语言)

    package 第三章; import java.util.Scanner; /*  *  把手放在键盘上时,稍不注意就会往右错一位.这样,输入Q会变成输入W,输入J会变成输入K等.        输 ...

  8. InfluxDB、Grafana等开源软件的监控后门

    在使用手机APP的过程中,用户信息会不知不觉的被APP悄无声息的收集到云端,然后进行各种用户行为分析以及智能推荐,这是众所周知但秘而不宣的事. 在使用开源软件时,也存在悄悄收集用户使用信息,并且上报到 ...

  9. Azure App Service(一)利用Azure DevOps Pipeline 构建镜像,部署应用程序

    一,引言 起因是前两天项目上做测试,需要我把写好的基于.NET 5 的 Web 测试程序作成 Docker 镜像.当我在本地验证完功能后,准备利用 Docker 构建应用程序镜像的时候,发现系统不支持 ...

  10. Spring Cloud:面向应用层的云架构解决方案

    Spring Cloud:面向应用层的云架构解决方案 上期文章我们介绍了混合云,以及在实际操作中我们常见的几种混合云模式.今天我们来聊一聊Spring Cloud如何解决应用层的云架构问题. 对于Sp ...