HTTPS协议简要

1、HTTPS协议 = HTTP协议 + SSL/TLS协议,在HTTPS数据传输的过程中,SSL/TLS对数据进行加密和解密,HTTP数据封装在SSL/TLS加密协议中,然后再被封装进TCP数据段,整个过程HTTP协议数据是被加密的,因此HTTPS是安全的。

加密的基本概念

1、明文:是指没有加密的文字(或者字符串)原始数据

2、HASH加密(不可逆)
有MD5,SHA160,SHA256,SHA512等多种。多用于生成签名
特点:

  1. 不可逆性:几乎无法通过Hash结果推导出原文。
  2. 无碰撞性:几乎不可能有数据的Hash值相同。
  3. 雪崩效应:数据轻微变化,Hash输出值产生巨大变化。

3、对称加密算法(共享密钥)
包括AES、DES、3DES、TDEA、Blowfish、RC4、RC5、IDEA等

  1. DES(数据加密标准):一种分组密码,在加密前,现对整个明文进行分组,每组为64位,之后进行16轮迭代,产生一组64位密文数据,使用密钥是56位
  2. 3DES:使用两个密钥,执行三次DES算法,密钥长度是112位。
  3. **IDEA(国际数据加密算法):**使用128位密钥,把明文分成64位的块,进行8轮迭代。得到64位密文,IDEA可以使用硬件或软件实现,比DES快。
  4. AES(高级加密标准):AES支持128,192,256位三成密钥长度,可通过硬件实现
  5. RC4(流加密算法):加密速度快,可以达到DES的10倍

4、非对称加密(公钥加密、私钥解密)
证书包含有:密钥公钥,网站地址,证书颁发机构,失效日期
密钥公钥:用于给客户端与服务器通信时加密使用

  1. 每个算法有两个密钥,公钥公开私钥自己保存;
  2. 公钥加密,私钥解密,可实现保密通信;
  3. 私钥加密,公钥解密,可实现数字签名;
  4. 数字签名:用于确认发送者身份和消息完整性的一个加密消息摘要
  5. 特点:接受者能核实发送者,发送者时候不能抵赖对报文的签名,接受者不能韦昭对报文的签名。

HTTPS握手简要过程

  1. 客户端提交HTTPS请求并告诉服务器自己支持哪些HASH算法

  2. 服务器响应客户,并把数字证书和证书公钥发给客户端,客户端在本地找到CA中心的公钥(根证书),验证证书公钥。

  3. 客户端验证证书公钥的有效性(能否用证书公钥解开数字证书,解开后得到服务端的公钥)

  4. 有效后,生成一个随机会话密钥

  5. 用服务端的公钥加密这个会话密钥后,发送给服务器

  6. 服务器收到公钥加密的会话密钥后,用自己的私钥解密,得到会话密钥

  7. 客户端与服务器双方利用这个会话密钥加密要传输的数据进行通信

学习笔记,如有不当之处欢迎评论区指正。
参考:https://www.cnblogs.com/fengfengyang/p/9852481.html

HTTPS协议握手过程见解相关推荐

  1. https协议原理过程

    https协议原理过程 https概念 https是基于安全目的的Http通道,其安全基础由SSL层来保证.最初由netscape公司研发,主要提供了通讯双方的身份认证和加密通信方法.现在广泛应用于互 ...

  2. Https的握手过程

    Https握手过程: 第一步:客户端会发起一个hello client请求,请求中会携带TLS版本信息.加密套件候选列表.压缩算法候选列表以及一个随机数. 第二步:服务端收到请求以后也会给客户端发一个 ...

  3. Tomcat启用HTTPS协议配置过程

    Article1较为简洁,Article2较为详细,测试可行. Article1 概念简介 Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问 ...

  4. Nginx 配置 SSL 及 HTTPS 协议通信过程

    一.前言 基础知识 1.1 公钥密码体制(public-key cryptography) 公钥密码体制分为三个部分,公钥.私钥.加密解密算法,它的加密解密过程如下: 加密:通过加密算法和公钥对内容( ...

  5. http、https 协议运行过程 公钥私钥,证书存放位置,传递证书,(非)对称加密。

    http 采用的TCP / IP通信协议,http默认的是 80 端口.主要特点: 1.无连接 2.无状态 3.媒体独立 参考:https://blog.csdn.net/qq_41291945/ar ...

  6. TCP协议握手过程,以及为什么握手,不握手又会怎么样?

    1. 为什么要用三次握手 在<计算机网络>一书中其中有提到,三次握手的目的是"为了防止已经失效的连接请求报文段突然又传到服务端,因而产生错误",这种情况是:一端(cli ...

  7. HTTP和HTTPS协议,看一篇就够了

    大纲 [外链图片转存失败(img-TMjrYica-1563030701423)(http://on-img.com/chart_image/5b5039cbe4b067df59e110dd.png) ...

  8. HTTP与HTTPS协议介绍

    一.HTTP与HTTPS介绍 HTTP是超文本传输协议,全称"Hyper Text Transfer Protocol",是一个基于请求与响应,无状态的,应用层的协议,常基于TCP ...

  9. http协议和后来居上的https协议

    在了解这两个之前,我们先来看两张图: 从这两张图片来看,http协议和https协议有一个最显而易见的区别:https比http要安全. 1.基本概念 1.1.http HTTP:是互联网上应用最为广 ...

最新文章

  1. XML的二十个热点问题
  2. Thinkphp5 用ab压力测试工具测试高并发请求
  3. wpf silverlight开发框架(prism)系列教程
  4. 亚马逊正式发布关系型数据库Amazon Aurora
  5. 信息安全工程师笔记-RSA密码
  6. 通过ANT实现jmeter批量执行脚本、生成报告、发送邮件全套build.xml文件
  7. 教你用Python画简单的表情包(Turtle库的应用)
  8. 分享一个Halcon学习网站
  9. 【大厂笔试心得,你还不知道笔试的思路吗?】-- ACM模式篇、笔试题型介绍以及相关准备
  10. 计算机视觉项目实战-驾驶员疲劳检测
  11. 【BX学习之软件著作权】 软件著作权的申请
  12. 什么是DNS over HTTPS?
  13. cogs 2. 旅行计划
  14. HRZ学英语(类似尺取)
  15. 计算英文句子中有多少单词?
  16. pthread_cond_init 初始化条件变量使用
  17. php的persion是,php创建Persion类,反射过程,反射后使用流程详解
  18. QCC51XX---如何修改MDE的主题
  19. arcgis.js加载geojson
  20. Zeppelin的使用

热门文章

  1. 基于html汽车商城网站页面设计与实现.rar共计页面30+(毕业设计+毕业源码+答辩PPT)
  2. Latex Mathematical Symbols | LATEX数学符号 | markdown
  3. AcWing 202 最幸运的数字
  4. VB.Net2010 下的sock5代理实现
  5. Linux修改文件---vim的使用
  6. 全新iMac开发中!外观、屏幕、性能全面升级
  7. 创建线程的第三种方式---JDK8新特性
  8. ARM关于标志位影响详解
  9. STUN和TURN技术
  10. 深度理解Jquery 中 scrollTop() 方法