首页 > 其他分享 >面试官:来说说 https 和 http 区别?

面试官:来说说 https 和 http 区别?

时间:2023-03-03 21:24:57浏览次数:45  
标签:面试官 公钥 加密 服务器端 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,客户端
From: https://www.cnblogs.com/ataoxz/p/17177006.html

相关文章

  • Http学习
    HTTP(超文本传输协议)是一个简单的请求-响应协议,它通常运行在TCP之上。端口:80Https:安全的端口:443两个时代http1.0HTTP/1.0:客户端与web服务器连接以后,只能......
  • 用 Nginx 禁止国外 IP 访问 网站 (基于 Nginx ngx_http_geoip2 模块 禁止国外 IP 访
    每天有好多国外的IP地址来访问我的网站,并且访问的内容基本上都是恶意的。因此我决定禁止国外IP来访问我的网站。想要实现这个功能有很多方法,下面我就来介绍基于Nginx......
  • 如何通过 HTTP 代理从 Git 存储库中提取数据?
    注意:虽然所描述的用例是关于在项目中使用子模块的,但这同样适用于gitclone通过HTTP的普通存储库。我有一个在Git控制下的项目。我想添加一个子模块:gitsubmodul......
  • 谷歌浏览器将本地主机重定向到 https
    当我使用Chrome调试VisualStudio项目时,浏览器会尝试重定向到与我的网址等效的https。我没有在Web项目中启用SSL,起始URL是httpURL。当我使用FireFox或I......
  • How to make an HTTP request in Javascript?
    YoucanmakeanHTTPrequestinJavaScriptusingthebuilt-infetch()functionortheXMLHttpRequest(XHR)object.Hereareexamplesofhowtouseeachofthes......
  • Web安全入门与靶场实战二(2)- 实例解释HTTP状态码
    在HTTP响应头中有一部分非常重要的信息就是响应行中的状态码。状态码都是由三位数字组成,比如状态码200表示请求成功。状态码主要分为5个大类: 1xx:100-101,指示信息。这种状......
  • Groovy-正则捕获,Http请求和写入文件
    示例:<!--FontAwesome--><linkhref="static/font-awesome/4.7.0/css/font-awesome.min.css"rel="stylesheet"><!--Ionicons--><linkhref="stat......
  • 面试官:从 MySQL 读取 100w 数据进行处理,应该怎么做?问倒一大遍!
    背景大数据量操作的场景大致如下:数据迁移数据导出批量处理数据在实际工作中当指定查询数据过大时,我们一般使用分页查询的方式一页一页的将数据放到内存处理。但有些......
  • 关于HTTP/3的小知识点
    客户端用TCP发送了三个包,但服务器所在的操作系统只收到了后两个包,第一个包丢了。那么内核里的TCP协议栈就只能把已经收到的包暂存起来,“停下”等着客户端重传那个丢失的......
  • 【http】url的格式
    ┌─────────────────────────────────────────────────────────────────────────────......