HTTP和HTTPS
-
HTTP和HTTPS的基本概念:
HTTP:超文本传输协议,是一个基于请求与响应,无状态,应用的协议。
HTTPS:是以安全为目标的HTTP通道,在HTTP的基础上通过传输、加密和身份认证保证了传输过程的安全性。 -
HTTPS工作原理:
-
客户端使用https访问服务端
-
服务端接受请求后,会将网站的证书(包含公钥)发送给客户端
-
客户端判断证书是否合法,若不合法会弹出警告
-
客户端验证证书合法,生成随机数后,用公钥加密发送给客户端
-
服务端收到后,用私钥解密出会话秘钥
-
客户端与服务端通过会话秘钥进行通信
这里的工作原理涉及到对称加密与非对称加密,简单的介绍一下
对称加密使用同一个秘钥进行加密和解密,常见的有MD5,des,aes等 非对称加密通过公钥加密,私钥加密,最常见的如rsa
HTTPS工作过程中共同使用了对称加密和非对称加密,先用对称加密生成了一个双方都可解密的预主秘钥,再根据这个预主秘钥生成会话秘钥,之后的通信都是用的对称加密的方式
- HTTP和HTTPS的区别及优缺点:
- HTTP是超文本传输协议,信息是明文传输。HTTPS比HTTP要安全,HTTPS是具有安全性的ssl加密传输协议,可防止数据在传输过程中被监听、篡改,确保数据的完整性。
- 相同网络状况下,HTTPS比HTTP加载页面速度延长50%,增加10%-20%的耗电。
- HTTPS需要CA证书,费用较高