● 说一下http和https
(1)http和https的基本概念
http:超文本传输协议,用于从WWW服务器传输超文本到本地浏览器的传输协议。作用:使浏览器更高效,使网络运输减少。
https:http的安全版,在http的基础上加入了SSL层。作用:建立一个信息安全通道,来确保数组的传输,确保网站的真实性。
SSL(Secure Sockets Layer 安全套接字协议), 在传输层对网络连接进行加密 。
(2)http和https的区别?
http传输的数据都是未加密的,https是由http和ssl协议构建的可进行加密传输和身份认证的网络协议,比http的安全性更高。
其他区别:
1、https协议需要ca证书,费用较高。
CA是负责签发证书、认证证书、管理已颁发证书的机关。(大概CA是用于加密和解密的吧)
2、端口不同,一般而言,http的端口是80,https的端口是443。
(3)https的工作原理
a.客户端使用https url访问web服务器,会请求web服务器建立SSL链接。
b.web服务器端收到请求后将网站的证书返回给客户端。
c.客户端和web服务器端协商SSL链接的安全等级。
d.协商一致的安全等级后,建立会话密钥,然后通过网站的公钥加密会话密钥,并传送给网站。
e.web服务器通过自己的私钥解密出会话密钥。
(4)https协议的优点
a.https协议可认证用户和服务器,确保数据发送到正确的客户机和服务器。
b.ssl层可防止数据在传输过程中不被窃取、改变,保证了数据的完整性。
(5)https协议的缺点
a.握手阶段比较费时,会使页面加载时间延长50%。
b.缓存不如http高效,会增加数据开销。
c.SSL证书也需要钱,且需要绑定IP,不能在同一个IP上绑定多个域名。
我自己简单总结的,转载于https://www.nowcoder.com/tutorial/96/4700c6f1f3334c9191a38406002efa65