网站建设使用https是有好处的
HTTPS访问过程中增加的不只是SSL握手,还要其他一些因素,比如证书验证。
总体的来说,HTTPS主要优化点包括:消除网络延迟,减少CPU运算,节省流量,提前渲染。
HTTPS对内容保护提供了一些安全的保证,但是HTTPS本身是否安全呢?张老师说,这主要从四个角度考虑;第一、私钥的保护,很多域名共同用一个证书,第二、服务部署在多个点,甚至是第三方服务平台,部署环境比较复杂。第三、当一个私钥泄露以后,攻击者可以伪造服务端来劫持流量。解决方案可以从三个部署去做;首先要保证私钥加密保护。其次最好是有一个“私有”的加密方案,通过开源算法组合,以及在密钥选择的时候,通过一些噪声的干扰等等措施达到更好的保护效果。最后是通过特殊硬件,私钥所有的运算都放在硬件中,硬件也有自我保护避免被恶意破坏。
第二个安全方面,大家可以关注一下服务的安全等级。SSLLABS提供了影响安全等级的几个因素,包括证书、协议版本,加密套件,以及协议和实现中的漏洞。当然安全性和可用性是一对相矛盾的命题,如果对于普通的服务B这个等级就可以满足当前的基本安全要求。这里需要考虑两点。第一、需要建立一套发现、验证和修复的响应机制,及时修复服务漏洞。第二、建议使用不同的TLS协议栈。另外,针对不同类型的服务提供不同的安全等级,比如说金融类提供A等级及以上。
第三点,证书验证。大部分App在开发的时候会忽略证书的检查,当被劫持和出现伪造证书的时候也很难发现。谷歌play发布了两个安全警告,声明如果不解决证书验证中存在的问题是不能上线的。建议在做证书验证的时候考虑以下四个纬度。
第一个是证书提供的域名和访问的域名是否一致;第二个是访问的时间和证书有效期对比;第三个是证书链的签名检查;还有一个是证书有效性的验证。最后,还可以监控一下当前的服务站证书是否存在伪造(伪造证书有一个前提,必须配合DNS劫持、链路劫持或客户端劫持),如果一旦出现被劫持,就可以篡改用户的请求,窥探用户的隐私。
最后看一下HTTPS的应用实践问题,张老师说,团队在开发的时候就要有自动纠错,自动降级的自我保护意识。其次是上线的验证,分级发布,回滚预案等;第三,常态的监控和报表;第四、容量保证以及异常流量的检查。是否考虑HTTPS协议降级呢?从互联网发展趋势来看,张老师建议是提供好服务,不降级。