HTTPS原理及流程
HTTPS为什么更安全:数据对称加密传出,对称密钥使用非对称加密协商。
HTTPS就一定安全吗:不一定,如果用户在浏览器端执意访问证书可疑或过期的站点,就存在安全隐患。
---
HTTPS实现原理:https连接可以分为三个阶段:
1、证书校验:当浏览器向服务器发送请求时,服务器会将包含服务器公钥的证书返回给浏览器,浏览器得到证书后会对证书中的信息进行一系列的验证,包括验证域名、是否过期、签发机构等信息。
2、对称密钥协商:证书验证通过后,浏览器在本地生成并缓存一个随机串,用服务器的公钥将这个随机串加密并传递给服务器,服务器以自己本地的私钥解密这个随机串,然后以解密出来的随机串作为对称密钥,至此就完成了对称密钥的协商。
3、业务数据传输:完成对称密钥协商后,后续业务数据的传输两端都使用这个对称密钥加解密。
为什么使用非对称方式来协商密钥:因为整个过程中非对称密钥的的公钥是可以公开的,对称密钥则不能公开。非对称密钥也就可以通过网络自由分发了,所以利用非对称密钥来传递对称密钥能保证对称密钥的安全性。同时整个过程中只是用了一套非对称密钥,实现成本得到了控制。
为什么不是用非对称密钥来加密数:这是应为非对称加密的效率远低于对称加密,所以对于大量业务数据的传输,对称密钥更适合。
中间人攻击:是指攻击者利用DNS劫持等手段将用户请求引导到恶意的中间代理上,使用户与一个假冒的站点通信,用户将数据发送到假的站点后,攻击者就可解密获得用户真实数据,然后拿着这些用户数据到合法网站冒充用户操作。
为什么证书需要CA机构签发:首先CA机构是被业界认可的权威机构,这些机构会为他们签发的证书负责,从而避免中间人攻击,CA证书就是用来给浏览器判定网站合法性的。CA机构根证书在计算机本地都有缓存,浏览器收到业务服务器的证书后,可以利用本地缓存的根证书对服务器证书进行校验。
HTTPS原理及流程的更多相关文章
- HTTPS原理以及流程
一.HTTP和HTTPS的区别 HTTP协议传输的数据都是未加密的,也就是明文的,因此使用HTTP协议传输隐私信息非常不安全. HTTPS协议是由SSL+HTTP协议构建的可进行加密传输.身份认证的网 ...
- HTTPS 原理解析
一 前言 在说HTTPS之前先说说什么是HTTP,HTTP就是我们平时浏览网页时候使用的一种协议.HTTP协议传输的数据都是未加密的,也就是明文的,因此使用HTTP协议传输隐私信息非常不安全.为了保证 ...
- HTTPS 原理解析(转)
一 前言 在说HTTPS之前先说说什么是HTTP,HTTP就是我们平时浏览网页时候使用的一种协议.HTTP协议传输的数据都是未加密的,也就是明文的,因此使用HTTP协议传输隐私信息非常不安全.为了保证 ...
- HTTPS 原理浅析及其在 Android 中的使用
作者:曹丰斌 本文首先分析HTTP协议在安全性上的不足,进而阐述HTTPS实现安全通信的关键技术点和原理.然后通过抓包分析HTTPS协议的握手以及通信过程.最后总结一下自己在开发过程中遇到的HTT ...
- Tengine HTTPS原理解析、实践与调试【转】
本文邀请阿里云CDN HTTPS技术专家金九,分享Tengine的一些HTTPS实践经验.内容主要有四个方面:HTTPS趋势.HTTPS基础.HTTPS实践.HTTPS调试. 一.HTTPS趋势 这一 ...
- [转帖]HTTPS系列干货(一):HTTPS 原理详解
HTTPS系列干货(一):HTTPS 原理详解 https://tech.upyun.com/article/192/HTTPS%E7%B3%BB%E5%88%97%E5%B9%B2%E8%B4%A7 ...
- HTTPS原理解析-转
这篇文章关于Https的讲解真的是太透彻了,转过来备忘. 来源:腾讯bugly 另附两个SSL/TLS的交互详解:一.二 基于此文章的学习总结:下一篇文章 1.HTTPS 基础 HTTPS(Secur ...
- 转: https 加密通信流程
https 加密通信流程当用户在浏览器中输入一个以https开头的网址时,便开启了浏览器与被访问站点之间的加密通信.下面我们以一个用户访问https://qbox.me为例,给读者展现一下SSL/TL ...
- 【转】HTTPS系列干货(一):HTTPS 原理详解
HTTPS系列干货(一):HTTPS 原理详解 前言 HTTPS(全称:HyperText Transfer Protocol over Secure Socket Layer),其实 HTTPS 并 ...
随机推荐
- 高通量计算框架HTCondor(三)——使用命令
目录 1. 目录 2. 进程 3. 命令 3.1. condor_q 3.2. condor_status 3.3. conodr_submit 3.4. conodr_rm 4. 相关 1. 目录 ...
- [bzoj4567] [loj#2012] [SCOI2016] 背单词
Description \(Lweb\) 面对如山的英语单词,陷入了深深的沉思,「我怎么样才能快点学完,然后去玩三国杀呢?」.这时候睿智的凤老师从远处飘来,他送给了 \(Lweb\) 一本计划册和一大 ...
- [bzoj5507] [洛谷P5305] [gzoi2019]旧词
Descriptioin 浮生有梦三千场 穷尽千里诗酒荒 徒把理想倾倒 不如早还乡 温一壶风尘的酒 独饮往事迢迢 举杯轻思量 泪如潮青丝留他方 --乌糟兽/愚青<旧词> 你已经解决了五个问 ...
- PHP——数组
数组的定义 数组能够在单个变量中存储多个值. 创建空数组: $arr = array();//表示创建一个空数组,并把创建的空数组赋值给变量$arr 数值数组 自动分配 ID 键(ID 键总是从 0 ...
- [JLOI2014]松鼠的新家(树链剖分)
[JLOI2014]松鼠的新家(luogu) Description 题目描述 松鼠的新家是一棵树,前几天刚刚装修了新家,新家有n个房间,并且有n-1根树枝连接,每个房间都可以相互到达,且俩个房间之间 ...
- flutter 与 android 混合开发
现有的混合开发方式,都是存flutter项目在android系统或者iOS上面跑. 但是,实际情况是,我们需要在一个成熟的native项目上面,跑几个flutter页面,逐步的进行flutter的融合 ...
- iOS开发tip-图片方向
概述 相信稍微接触过iOS图片相关操作的同学都遇到过图片旋转的问题,另外使用AVFoundation进行拍照的话就会遇到前后摄像头切换mirror问题就让人更摸不着头脑了.今天就简单和大家聊一下iOS ...
- 浅谈openresty
浅谈openresty 为什么会有OpenResty? 我们都知道Nginx有很多的特性和好处,但是在Nginx上开发成了一个难题,Nginx模块需要用C开发,而且必须符合一系列复杂的规则,最重要的用 ...
- openresty http
openresty http openresty默认没有提供http客户端,需要第三方提供插件. 下载方式: wget https://raw.githubusercontent.com/pintsi ...
- lua 中 . 和 : 的区别
lua 中 . 和 : 的区别 首先在lua中使用":"定义的函数会自动传入一个名为self的变量,这个变量是隐含的,self同c++中的this一样,表示当前对象的指针:而&qu ...