美团面试:谈谈http和https?哪5大区别?

文摘   2024-11-12 12:59   四川  

关注mikechen十余年BAT架构经验倾囊相授!


大家好,我是mikechen。

http、和https是网络非常重要的组成部分,也是大厂经常会考察的点,特别是:你的理解和区别,下面给大家详解5大http和https区@mikechen


最新mikechen原创超30万字《阿里架构师进阶专题合集》和《大厂最全面试题及答案合集》,请关注本公众号【mikechen的架构笔记】,后台回复:合集,即可领取。


安全的区别

HTTP是一种不安全的协议,数据在传输过程中是明文的,容易受到窃听和篡改的威胁。

由此看来,HTTP协议的站点不适合输入和传输敏感数据,例如:我们的银行卡号、账号名称和密码等敏感信息。

而HTTPS是超文本传输安全协议,比HTTP加了一层安全通信,使用SSL/TLS来加密数据包。

HTTPS使数据在传输过程中被加密,从而提供了更高的安全性,这使得恶意用户或黑客难以窃听或篡改数据。

认证的区别

使用 HTTPS 协议需要到 CA,也就是Certificate Authority,数字证书认证机构去申请证书。

部署SSL证书的网站有明显的安全标志:以https开头,且显示加密锁。

如下图所示:

⾸先 CA 会把持有者的公钥、⽤途、颁发者、有效时间等信息打成⼀个包,然后对这些信息进⾏ Hash 计算, 得到⼀个 Hash 值。

然后 CA 会使⽤⾃⼰的私钥将该 Hash 值加密,⽣成 Certificate Signature,也就是 CA 对证书做了签名。

最后将 Certificate Signature 添加在⽂件证书上,形成数字证书。

HTTPS使用数字证书对服务器进行身份验证,确保客户端连接到预期的服务器,提供了额外的安全性

而HTTP不提供服务器的身份验证机制,因此无法确保您正在与预期的服务器通信,这使得HTTP容易受到中间人攻击的威胁。

加密的区别

HTTP不使用加密,数据以明文形式传输。

HTTPS使用TLS/SSL加密通信,数据在传输过程中被加密,只有服务器和客户端能够解密和理解数据。

端口的区别

HTTP:HTTP通常使用端口80进行通信。

HTTPS:HTTPS通常使用端口443进行通信。

性能的区别

HTTP由于不涉及加密和解密过程,HTTP的性能通常比HTTPS更高。

HTTPS由于加密和解密需要额外的计算资源,HTTPS的性能通常比HTTP稍低。

总之,HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,要比http协议安全。

以上


最后送大家一个福利:

送我原创超30万字阿里架构师进阶专题合集


以及给大家整理最全大厂Java面试题及答案详解,包含:Java、多线程、JVM、Spring、MySQL、Redis、中间件...等必考题答案详解。


需要以上架构专题&面试答案的同学,加我微信即可领取!


添加时备注:资料


mikechen的架构笔记
十余年BAT架构经验倾囊相授!
 最新文章