浏览器安全之网络安全(HTTPS)

为什么要使用 HTTPS 协议

在将 HTTP 数据提交给 TCP 层之后,数据会经过用户电脑、WiFi 路由器、运营商和目标服务器,在这中间的每个环节中,数据都有可能被窃取或篡改。比如用户电脑被黑客安装了恶意软件,那么恶意软件就能抓取和篡改所发出的 HTTP 请求的内容。或者用户一不小心连接上了 WiFi 钓鱼路由器,那么数据也都能被黑客抓取或篡改。
中间人

什么是 HTTPS 协议

实际上就是在 HTTP 协议栈中引入安全层,所有经过安全层的数据都会被加密或者解密
HTTP VS HTTPS
安全层有两个主要的职责:

  1. 对发起 HTTP 请求的数据进行加密操作。
  2. 对接收到 HTTP 的内容进行解密操作。
    下面一步步实现一个从简单到复杂的 HTTPS 协议

第一版:使用对称加密

对称加密是指加密和解密都使用的是相同的密钥。
使用对称加密

  1. 浏览器端弄个随机数(client-random),并发送它所支持的加密套件列表(指浏览器能支持多少种加密方法列表)。
  2. 服务器从发过来的加密套件列表里选择一个,并也整个随机数(service_random),并返回给浏览器
  3. 浏览器跟服务器分别返回确认信息。
    按加密套件算法,将 client-randomservice-random 混合起来生成一个密钥 master secret,然后基于这个密钥进行数据的加密传输。

缺点:
由于 client-randomservice-random 都是明文传输,所以会被截获。
黑客拿到协商的加密套件和双方的随机数,生成密钥。

第二版:使用非对称加密

非对称加密算法有 A、B 两把密钥,如果你用 A 密钥来加密,那么只能使用 B 密钥来解密;反过来,如果你要 B 密钥来加密,那么只能用 A 密钥来解密。
非对称加密

  1. 浏览器发送它所支持的加密套件列表。
  2. 服务器会生成个公钥跟私钥,公钥是给浏览器加密使用的,所以将公钥跟选择的加密套件返回
  3. 浏览器跟服务器分别返回确认信息。

这样浏览器向服务端发送数据时,就可以采用公钥来加密数据,由于公钥的数据只有对应的私钥才能解密,即便黑客截取了数据和公钥,也是无法解密的。
缺点:

  1. 非对称加密的效率太低
  2. 无法保证服务器发送给浏览器的数据安全,因为服务端是采用私钥加密的,而黑客是可以拦截到公钥,这样服务端返回的数据就得不到保障。

第三版:对称加密和非对称加密搭配使用

在传输数据阶段依然使用对称加密,但是对称加密的密钥我们采用非对称加密来传输。
混合加密实现 HTTPS

  1. 浏览器端弄个随机数(client-random),并发送它所支持的加密套件列表和非对称加密套件列表。
  2. 服务器会生成个公钥和私钥,并弄个随机数(service-random),返回该随机数、公钥、选择的加密套件、非对称加密套件
  3. 浏览器再生成个随机数 pre-master ,并采用公钥加密,进行浏览器确认
  4. 最后服务器拿出自己的私钥,解密出 pre-master 数据,并返回确认消息。

这样浏览器跟服务器就有了一致 client-randomservice-randompre-master,根据这些生成对称密钥,由于两端采用的是一套对称加密套件,所以生成的密钥是一致的。
pre-master 是经过公钥加密之后传输的,所以黑客无法获取到 pre-master,这样黑客就无法生成密钥,也就保证了黑客无法破解传输过程中的数据了。
缺点:
黑客通过 DNS 劫持将你所在官网的 IP 地址替换成了黑客的 IP 地址。
即无法证明服务器是可靠的。

第四版:添加数字证书

需要服务器向浏览器提供证明“我就是我”:
使用权威机构颁发的证书,这个权威机构称为 CA(Certificate Authority),颁发的证书就称为数字证书(Digital Certificate)。
对于浏览器来说,数字证书作用:

  1. 一个是通过数字证书向浏览器证明服务器的身份
  2. 另一个是数字证书里面包含了服务器公钥。
    完整的 HTTPS 请求流程
    两点改造:
  3. 服务器没有直接返回公钥给浏览器,而是返回了数字证书,而公钥包含在数字证书中;
  4. 在浏览器端多了一个证书验证的操作,验证了证书之后,才继续后续流程。

HTTPS 的握手过程

  1. 首先是 tcp 的三次握手建立连接
  2. client 发送 random1 +支持的加密算法集合(clientHello
  3. server 收到信息,返回选择一个加密算法 + random2serverHello)+ 证书+ 确认
  4. clent 验证证书有效性,并生成随机数 pre-master ,并通过服务器公钥加密 发送给 server
  5. server 收到 premaster ,根据约定的加密算法对 random1 + random2 + premaster(解密)生成 master-secret ,然后发送预定成功
  6. client 收到生成同样的 master-secert,对称加密秘钥传输完毕

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/252437.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

【Web安全】PHP安全

一、文件包含漏洞 严格来说,文件包含就是代码注入的一种。代码注入,其原理就是注入一段用户能控制的脚本或代码并让服务器端执行。代码注入的典型代表就是文件包含。文件包含可能会出现在JSP、PHP、ASP等语言中,常见函数如下: PHP…

vim插件管理工具vundle安装与配置

目录 1 下载vundle2 配置3 安装插件4 关于代码补全 1 下载vundle 默认下载到~/.vim/bundle/vundle目录下 git clone https://github.com/gmarik/vundle.git ~/.vim/bundle/vundle2 配置 在.vimrc 中添加bundle的配置 注意,.vimrc是自己在home目录下创建&#xff…

VIM插件管理工具Vundle安装

Vundle安装 软件环境:WIN7 32bit GVIM 1.安装git 除PATH环境变量设置如图以外,其它选项默认: 2.添加curl.cmd,位置为C:\Program Files\Git\cmd,假设git安装在C:\Program Files\Git 3.修改vimrc 4.下载vundle。git clo…

使用Vundle管理Vim插件

几种管理插件 Vim 的插件管理工具有蛮多,比如: Vundle vim-addon-manager vpathogen.vim vvundle vvimana Vim-addon-manager 和 vimana 的对比,参见Vim的插件管理工具 我最会选择了 Vundle,通过子目录管理插件,支持…

Vundle使用帮助

关于 Vundle 是 Vim bundle 的简称,是一个 Vim 插件管理器. Vundle 允许你做… 同时在.vimrc中跟踪和管理插件安装特定格式的插件(a.k.a. scripts/bundle)更新特定格式插件通过插件名称搜索Vim scripts中的插件清理未使用的插件可以通过单一按键完成以上操作,详见interactiv…

vim 插件vundle中Plugin和Bundle的区别

参考博客:https://segmentfault.com/q/1010000010384766 目前vundle正在改变,版本不同,使用的命令就不同, 现在正在改变,借口正在改变,可以看到,名字已经改成Vundle.vim,不再是之前…

Vim+Vundle+YouCompleteMe

准备 (1) YouCompleteMe插件要求Vim 版本在7.3.584及以上,而Ubuntu12.04源中的Vim已经比较老了,所以需要编译源码手动更新VIM的版本。 (2)Vundle 是一个新生代vim插件管理器,使用git进行插件安装…

Vundle的安装与使用

作为小白用户,记录一下自己在window7下的安装过程问题,github和vim以前已经安装过了,可以参考其他文章。 1. 安装Vundel: 2. 设置Curl 在github下的bin文件夹,创建curl.cmd文件: 内容为: rem Do not use…

装机软件搜狗拼音输入法v11.5.0.5352去广告精简优化版

分享一个WIN10常用的搜狗拼音输入法软件,搜狗拼音输入法去广告精简优化版,绿色无广告,支持工具箱扩展。 https://url06.ctfile.com/f/18418706-528416668-049556 (访问密码:7860)

安卓微商助手高级版V2.4.6 群发多开检测僵尸粉等功能_海量微商工具

简介: 微商助手拥有海量的微商工具,微商助手是微商、群发、拓宽人脉的营销神器,微商助手有群发消息图片,让你群发消息推广快人一步,严格按照微信官方使用规则操作,基于安全稳定的情况下,为微商…

【数据恢复】【傲梅分区助手】

1. 问题起因 https://blog.csdn.net/m0_52010566/article/details/124058017 在第4步错误删除分区 结果丢失下面分区: 2. 解决方案 下载傲梅分区助手绿色版 https://www.disktool.cn/download.html 3. 恢复分区 4. 完成恢复

中国电信助手

免费使用,禁止买卖,仅限用于学习和研究目的;不得用于商业或者非法用途,否则,一切后果请用户自负。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。 中国电信助手,每日签到(随机金豆),每日喂食宠物.每日登录奖励领取…

(首发)SixTool多功能代挂助手

功能: SixTool一款多功能的云任务程序网易云(每日签到,每日云贝,打卡300首歌,音乐人任务)wx运动(指定步数范围)哔哩(视频直播签到,每日观看视频,投币, 漫画签到,分享视频…

微信社群管家推荐使用它,专业社群运营管理助手!

文章开篇,我们来做个小调查!你觉得微信社群管理最头疼的事情是什么? A 发广告的太多,群主只有 1 个,踢不过来? B 群里老问重复的问题,回答问题太耗时 C 群里进新人没有及时欢迎,新人宝宝难留存 D 聊天记录看不到&…

百旺助手

《百旺助手》是一款专门针对百旺税控发票开票软件(税控盘版)的辅助软件,支持增值税专用发票、增值税普通发票,货物运输发票,机动车票等所有发票信息的抽取采集,及客户信息,商品信息等的一键备份导入,支持一…

小蔡电脑助手3.0新版全新发布上线

小蔡电脑助手3.0新版全新发布上线啦 源码下载地址:仿360安全卫士-Windows电脑助手软件-小蔡电脑助手3.0源码-桌面系统文档类资源-CSDN下载 小蔡电脑助手是一款集多种功能为一体的,帮助您方便日常系统优化加速、清理,学习工作、生活网购的工具…

win10连接android手机助手下载,完美win10手机助手-Win10手机助手v1.0.1 官方免费版下载_飞翔下载...

飞翔小编非常喜欢研究一些手机系统,虽说用的Iphone,但是对win10的系统很感兴趣啊,所以特意买了个小米4刷win10系统玩。。APK转制APPX格式Win10手机直装包。尽情享用安卓百万级应用游戏。干净简洁的界面,一键式无脑操作&#xff0c…

电脑软件推荐【含软件链接】:压缩,插件,截屏,录制,办公,电脑防护与修复,磁盘清理,软件卸载......

文章目录 0.写在前面1.解压、压缩文件 - Bandizip1.1 :triangular_flag_on_post: Bandizip 介绍1.2 :speech_balloon: 有话说 2.社交应用 - QQ、WeChat2.1 :triangular_flag_on_post: QQ 介绍2.2 :triangular_flag_on_post: WeChat 介绍2.3 :speech_balloon: 有话说 3.浏览器 -…

微信群管理助手

微信群管理软件现在有很多产品,功能宣传也大差不差,可以根据自己的需求来进行选择 推荐webot社群助手,这是一个面向个微使用的社群管理工具 功能包括智能群管理、客户管理、朋友圈管理、营销管理、话术管理等几大模块。 一、WeBot社群助手…

东华助手 v1.6.5

东华助手是一款专为东华人设计的手机应用,通过它可快捷获取学校新闻、教务通知、图书馆藏、讲座安排等服务信息,绑定校内账号后还能轻松查询本人成绩、绩点、课表、考场、图书借阅、晨跑等信息,并能及时接收重要信息推送。未来将进一步完善应…