-
什么是HTTPS?
https是在http的基础上,经过加入SSL(Secure Sockets Layer 安全套接层)技术对http链接进行安全加密传输的一种技术。目前在互联网上应用得很是普遍。浏览器
-
HTTPS请求全过程
- 客户端对服务器发起请求,服务器收到请求,返回给客户端一个通过CA组织验证的证书。(里面包含了加密数据的公钥和服务器一系列描述信息)
- 客户端收到证书,利用本地浏览器通过认证的解析程序解析证书,若证书安全则造成一个随机值,利用证书的公钥加密该随机值(造成对称加密的私钥),该随机值是用于后面服务器的对称解密措施。
- 客户端把该私钥发送给服务器,服务器利用证书中的私钥进行解密。到这一步,服务器和客户端都一安全的得到了一个对称加密的密钥。
- 客户端利用对称密钥进行加密,并发送给服务器。
- 服务器利用对称密钥进行解密,至此HTTPS的传输过程完成。
须要注意的是:证书的做用是利用非对称加密,让客户端与服务端安全的获取一个对称加密的密钥。因此,要注意只有开始认证证书的时候有非对称加密。后面的都是对称加密。安全
这样作的好处是:保证安全的同时,能提升访问速度。由于非对称加密所耗费的时间比对称加密要长。这也叫作混合加密法。服务器
-
HTTPS的一些特色
- 证书的申请通常须要购买,在此须要花费一些金钱。
- HTTPS比较耗费系统资源,在设计时须要分开处理,在须要安全加密的业务中使用。
- HTTPS只是用于加密数据,并不能抵挡针对服务器的攻击。
- HTTPS的端口为443。