面试官:来说说 https 和 http 区别?
http 和 https的区别?
一、传输信息安全性不同
- 1、http协议:是超文本传输协议,信息是明文传输。如果攻击者截取了Web浏览器和网站服务器之间的传输报文,就可以直接读懂其中的信息。
- 2、https协议:是具有安全性的ssl加密传输协议,为浏览器和服务器之间的通信加密,确保数据传输的安全。
二、连接方式不同
- 1、http协议:http的连接很简单,是无状态的。
- 2、https协议:是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议。
三、端口不同
- 1、http协议:使用的端口是80。
- 2、https协议:使用的端口是443.
四、证书申请方式不同
1、http协议:免费申请。2、https协议:需要到ca申请证书,一般免费证书很少,需要交费。传输信息安全性不同、连接方式不同、端口不同、证书申请方式不同
https做了什么保证它是安全的?
使用,SSL/TLS协议来保证https的安全。
SSL/TLS协议的基本思路是采用公钥加密法,也就是说,客户端先向服务器端索要公钥,然后用公钥加密信息,服务器收到密文后,用自己的私钥解密。
- 客户端向服务器端发起SSL连接请求;
- 服务器把公钥发送给客户端,并且服务器端保存着唯一的私钥
- 客户端用公钥对双方通信的对称秘钥进行加密,并发送给服务器端
- 服务器利用自己唯一的私钥对客户端发来的对称秘钥进行解密,
- 进行数据传输,服务器和客户端双方用公有的相同的对称秘钥对数据进行加密解密,可以保证在数据收发过程中的安全,即是第三方获得数据包,也无法对其进行加密,解密和篡改。
如何保证公钥不被篡改?
将公钥放在数字证书中。只要证书是可信的,公钥就是可信的。
公钥加密计算量太大,如何减少耗用的时间?
每一次对话(session),客户端和服务器端都生成一个”对话密钥”(session key),用它来加密信息。
由于”对话密钥”是对称加密,所以运算速度非常快,而服务器公钥只用于加密”对话密钥”本身,这样就减少了加密运算的消耗时间。
- (1) 客户端向服务器端索要并验证公钥。
- (2) 双方协商生成”对话密钥”。
- (3) 双方采用”对话密钥”进行加密通信。上面过程的前两步,又称为”握手阶段”(handshake)。
面试官:来说说 https 和 http 区别?的更多相关文章
- 当面试官问你GET和POST区别的时候,请这么回答.......
文章内容转载于微信公众号WebTechGarden 一.GET和POST的'普通'区别 GET和POST是HTTP请求的两种基本方法,要说它们的区别,接触过WEB开发的人都能说出一二. 最直观的区别就 ...
- 【对线面试官】CountDownLatch和CyclicBarrier的区别
<对线面试官>系列目前已经连载31篇啦,这是一个讲人话面试系列 [对线面试官]Java注解 [对线面试官]Java泛型 [对线面试官] Java NIO [对线面试官]Java反射 &am ...
- 在面试官问你BS和CS区别的时候如何回答??
这是我下来整理好的,如果哪里不全,望大家多多指教 C/S是Client/Server的缩写.服务器通常采用高性能的PC.工作站或小型机,并采用大型数据库系统,如Oracle.Sybase.Inform ...
- 如何用json 与jsonp 的区别去回答你的面试官?
常常 有面试官这样问我们,虽然用过无数次,但是回答不上岂不是尴尬,那我们浅析一下它们的区别? 1. json JSON是一种基于文本的数据交换格式,用于描述复杂的数据,举个例子: var nax=[ ...
- 接口测试彻底弄懂Session、Cookie、Token的区别及联系hold住面试官--hold住了开3万,hold不住开3K!
一.前言:接口测试之伤:cookie,session,token本是一家! cookie,session,token的区别早就已经成为测试同行的心病,各大论坛,各大博客,各大视频网站无不充斥着各种疑问 ...
- 面试官:你说你懂i++跟++i的区别,那你会做下面这道题吗?
面试官:你说你懂i++跟++i的区别,那你知道下面这段代码的运行结果吗? 面试官:"说一说i++跟++i的区别" 我:"i++是先把i的值拿出来使用,然后再对i+1,++ ...
- Get与Post的区别?(面试官最想听到的答案)
GET和POST是HTTP请求的两种基本方法,要说它们的区别,接触过WEB开发的人都能说出一二. 最直观的区别就是GET把参数包含在URL中,POST通过request body传递参数. 你可能自己 ...
- 面试官:小伙子,你给我说一下Java Exception 和 Error 的区别吧?
前言 昨天在整理粉丝给我私信的时候,发现了一个挺有意思的事情.是这样的,有一个粉丝朋友私信问我Java 的 Exception 和 Error 有什么区别呢?说他在面试的时候被问到这个问题卡壳了,最后 ...
- [每日一题]面试官问:for in和for of 的区别和原理?
关注「松宝写代码」,精选好文,每日一题 时间永远是自己的 每分每秒也都是为自己的将来铺垫和增值 作者:saucxs | songEagle 一.前言 2020.12.23 日刚立的 flag,每日一 ...
- 面试官:BIO、NIO、AIO是什么,他们有什么区别?
哈喽!大家好,我是小奇,一位热爱分享的程序员 小奇打算以轻松幽默的对话方式来分享一些技术,如果你觉得通过小奇的文章学到了东西,那就给小奇一个赞吧 文章持续更新 一.前言 书接上回,感觉上次的公司氛围不 ...
随机推荐
- 在Qt4中添加QSerialPort模块
在Qt5及以上的版本中提供了QSerialPort串口模块,如果想在Qt4版本中使用该模块,可以自行安装,但仅限于5.5以下的QSerialPort版本.下面就以qtserialport-openso ...
- 在orangepi 3 lts上使用SmartCardReader(读卡器)
前期工作 orangepi 3 lts使用全志的H6芯片,通过查询该芯片的datasheet和user manual,可以发现H6有两个scr接口,分别为scr0和scr1,理论上是支持读卡器接口的, ...
- VScode中文乱码问题
参考链接 https://blog.csdn.net/weixin_40040107/article/details/103721554?utm_medium=distribute.pc_releva ...
- HTML元素关系与CSS初步了解
元素之间的关系 1.父子关系 父子关系就是在一个双标签内嵌套其他元素,那么嵌套在其中的元素就相当于"子",其外层元素相当于"父". <body> ...
- 安装完IDEA后无法打开
安装完IDEA后无法打开 一.现象 安装完IDEA2021.3版本后,无论用什么办法都无法打开 二.原因 原先有安装过idea,里面有加载过一些插件,或者是破解过,会生成一些文件,导致IDEA无法运行 ...
- ElementUI导航连续点击报错
原因 vue项目中连续多次点击路由, 原因是在路由跳转时不允许同一个路由添加多次 错误解决: 吧vue-router换成3.0版本 import Vue from 'vue' import Route ...
- idea 中 maven 项目构建 webapp 无 src 目录以及提示无程序包的解决办法
提示无程序包的解决方法 问题有可能出现在 IDE 版本上,问题版本是 2020.1,升级为 2020.3 后,tomcat 运行就不再提示无程序包的错误 之前尝试的解决办法 maven clean/i ...
- Centos7.6centOS7.8多网卡多IP配置
1.进入网卡配置文件 cd /etc/sysconfig/network-scripts/2.创建新网卡的配置文件 ifcfg-eth1 cp ifcfg-eth0 ifcfg-eth1这样副网卡配置 ...
- js开发环境如何解决跨域问题
问题 npm start之后,自己会启动一个端口,比如3000,调用后端服务(比如localhsot:3006/service/list)就会出现跨域,那怎么弄呢? 方式一: webpack设置pro ...
- Mac 用Parallels Desktop安装Windows 10
下面就一步一步来学习如何用Parallels Desktop安装Windows 10系统: 1.首先下载并安装 Parallels Desktop 14版,下载 Windows 10 系统镜像 2. ...