HTTPS

HTTPS = HTTP + SSL/TLS
即加密过的HTTP

加密过程

  • 第一层(安全传输数据)
    数据对称加密
    原因:
    1.对称加密速度快,加密时CPU资源消耗少;
    2.非对称加密对待加密的数据的长度有比较严格的要求,不能太长,但是实际中消息可能会很长(比如你给你女朋友发情书),因此非对称加密就满足不了;

  • 第二层(安全传输密钥)
    密钥非对称加密(公钥密钥)

  • 第三层(安全传输公钥)
    CA(Certificate Authority) 第三方认证机构
    服务商与浏览器/操作系统合作,CA公钥内置于主流浏览器,操作系统

  • 第四层(安全传输证书)
    证书信息内容加密(通过加密内容即可辨别是否为真正证书)

全站HTTPS必须解决的问题

然而,HTTPS并非“想上就上”,正式启用之前,必须解决至少三个方面的大问题。

首先是性能,这也主要分三点。
  • HTTPS需要多次握手,因此网络耗时变长,用户从HTTP跳转到HTTPS需要一些时间;

  • HTTPS要做RSA校验,这会影响到设备性能;

  • 所有CDN节点要支持HTTPS,而且需要有极其复杂的解决方案来面对DDoS的挑战。

其次,兼容性及周边。
  • 页面里所有嵌入的资源(图片/附件/js/css/视频等)都要改成HTTPS的,否则浏览器就会报警(静态资源的URL,采用 // 引用资源,表示遵从当前页面的协议,浏览器会进行自动补全).

  • 移动客户端(APP)也需要适配HTTPS,所以必须做调整修改;

  • 解决第三方网站看不到Referer的问题;

  • 所有的开发、测试环境都要做HTTPS的升级;

  • 最后,为保证上线时的顺利切换,需要提前准备大量的预案,以应对各种可能出现的情况。

参考文章:
看完还不懂HTTPS我直播吃翔
全站HTTPS之路

你可能感兴趣的:(HTTPS)