1. HTTP协议可以和SSL(Secure Socket Layer,安全套接层)或者TLS(Transport Layer Security,安全层传输协议)组合使用来做到通信加密。

1.1 一种是将通信线路加密

HTTPS(超文本传输安全协议)或HTTP over SSL:与SSL组合使用的HTTP.
SSL处于应用层和TCP/IP之间。

当使用SSL 时,则演变成先和SSL通信,再由SSL和TCP通信了

1.2 一种是将参与通信的内容本身加密的方式

需要考虑报文的完整性,防篡改。

1.3 CA认证-> 不验证通信方的身份就可能遭遇伪装

SSL不仅提供加密处理, 还支持CA证书,CA证书由值得信任的第三方CA机构颁发,用来证明服务器的身份真实性。

CA认证流程:
step1. 由于服务端要下发公钥给客户端,公钥可能在下发过程中被篡改,因此需要验证服务端下发公钥的可靠性。

step2. 服务端会向CA机构申请公钥,CA会用自己的私钥对将要下发给服务端的公钥进行签名,并嵌入证书发给服务端,服务端将这个CA签发的公钥证书发给客户端即可。
客户端浏览器内置了CA机构的公钥,会对服务端下发的公钥证书的签名进行校验,校验通过说明公钥证书确实是CA机构颁发的,值得信任(中间篡改者没有CA的私钥因此无法篡改公钥的签名信息)。

step3. 客户端就可以用服务端发的这个公钥对自己生成的对称秘钥进行加密,发给服务端,之后的请求就用该对称秘钥加密内容即可。

有些机构自己颁发证书,这些证书不内置在浏览器里,因此称为自签名证书,服务端下发此类证书时,我们要么直接信任该证书,要么在客户端事先植入自签名公钥等。

(chap7 确保WEB安全的HTTPS) HTTPS和SSL相关推荐

  1. (chap7 确保WEB安全的HTTPS) HTTP通信问题

    图解HTTP (chap7 确保WEB安全的HTTPS) HTTP通信问题 1. HTTP的三个缺点 1.1 传输内容可能被窃听 1.2 无法验证双方的身份 1.3 传输内容可能被篡改. 无法确定请求 ...

  2. (chap7 确保WEB安全的HTTPS) HTTPS加密

    1. HTTPS是混合加密 支持"公私钥数据加密"."相互交换密钥的公开密钥加密技术". HTTPS通信步骤:客户端发起请求->服务端下发公钥->客 ...

  3. (chap7 确保WEB安全的HTTPS) HTTPS通信步骤

    step1. 客户端通过发送 Client Hello 报文开始 SSL通信. 报文中包含客户端支持的 SSL的指定版本. 加密组件(Cipher Suite) 列表(所使用的加密算法及密钥长度等) ...

  4. 《图解HTTP》读书笔记--第7章 确保Web安全的HTTPS

    写在前面:本文仅供个人学习使用,如有侵权,请联系删除.文章中所用图片绝大多数来源于<图解HTTP>,请读者支持原版. 文章目录 7.1 HTTP的缺点 7.1.1 通信明文可能被窃听 TC ...

  5. 确保 Web 安全的 HTTPS

    HTTPS HTTP(超文本传输协议)可能存在窃听等一些安全问题,于是HTTPS应运而生. HTTP 的缺点 通信使用明文(不加密),内容可能会被窃听 不验证通信方的身份,因此有可能遭遇伪装 无法证明 ...

  6. 【图解HTTP】确保WEB安全的HTTPS

    [HTTP的缺点] [通信使用明文,内容可能会被窃听] HTTP报文使用明文方式发送 [TCP/IP是可能被窃听的网络] 按TCP/IP协议族的工作机制,通信内容在所有的通信线路上都有可能遭到窥视. ...

  7. unable to access ‘https://sys-gitlab.n.com.cn/IPSC/web/Bumblebee/platform.w/platform.git/‘: SSL cert

    git clone https://sys-gitlab.vion.com.cn/IC/web/Bumblebee/platform.w/platform.git Cloning into 'plat ...

  8. 【计算机网络】HTTP 与 HTTPS ( HTTPS 简介 | HTTP 通信过程 )

    文章目录 一.HTTPS 简介 二.HTTP 通信过程 一.HTTPS 简介 HTTPS 协议就是在 HTTP 协议的基础上 , 增加了一个 SSL 外壳 , 对 HTTP 协议进行加密 ; HTTP ...

  9. python怎么爬虫https的内容_爬虫15 python 如何处理HTTPS请求访问 SSL证书验证

    1 https和SSL之间是什么关系 https和SSL之间是什么关系:https就是在http上面加了一层ssl协议,在http站点上部署SSL数字证书就变成了https. 现在随处可见 https ...

最新文章

  1. SAP Oracle EBS集成解决方案
  2. 6678EVM调试K1_STK_v1.1例程中GE_test的时候报错:DDR3 leveling has failed, STATUS = 0x40000064的解决办法
  3. 用计算机打出圣诞树,手机计算器圣诞树的祝福输入方式,手机计算器圣诞树获得方法...
  4. Netty 4.x – ByteBuf
  5. 【C语言进阶深度学习记录】三十五 程序中的堆、栈以及静态存储区(数据区)
  6. url地址中 /等符号的转义处理(转)
  7. 前格式 直接将转换为当_如何将word转化为PDF格式?1分钟学会文档转换
  8. 游戏设计规则探秘之提高动词的健壮性
  9. 手机还能做电路仿真啊!电子电路兴趣爱好者福音!
  10. ae去闪插件deflicker使用_Ae/Pr视频去闪烁插件REVisionFX DEFlicker v1.7.1 Win大众脸已注册...
  11. 淘宝帝国是如何创建的连载04
  12. html 播放微信amr音频文件,微信amr文件打开的方法
  13. 全新电影社交观影,满足影迷移动巨幕与移动3D体验
  14. android notify() notifyAll()的区别
  15. ubuntu11.04下Discuz论坛的安装
  16. 【算法无用系列】字符串匹配那些事——BM算法
  17. OpenCV计算两条平行线之间的距离
  18. 欢迎试用Android定时达人~
  19. 2019-6-17之联通笔试题
  20. 野生程序员的折腾—寻梦回归“一起帮”(三)

热门文章

  1. Debug Current Instruction Pointer怎么去掉(蓝色调试箭头)
  2. python 匹配字符串多个_在Python中匹配多个数据集的字符串
  3. 数据中心采用液体冷却的障碍
  4. python有什么好玩的库_你知道Python很火!那你知道它有哪些好玩的库吗?
  5. NLP:Transformer的简介(优缺点)、架构详解之详细攻略
  6. 成功解决RuntimeError: Java is not installed, or the Java executable is not on system path
  7. 成功解决Windows无法启动服务NVIDIA Dispaly Container LS服务(位于本地计算机上),错误2:系统找不到指定的文件
  8. sklearn之pipeline:pipeline的简介、使用技巧、案例应用之详细攻略
  9. DayDayUp:分析“普通人”如何逐步走上食物链顶端(看那些成名史案例,有感而发)
  10. AI之HCI:人机交互Human-Computer Interaction的简介、发展历史、案例应用之详细攻略