淘宝全站HTTPS加密百万页面改造技术细节大起底-转载
电商启用全站HTTPS加密是一件门槛极高的事情,它需要投入巨大的资源,不仅是人力、财力等方面,而且对技术能力也提出了极为苛刻的要求。
一般来说,普通电商只会在登录和交易这些”关键”环节启用HTTPS。而目前,阿里巴巴是全球唯一大规模启用电商平台全站HTTPS的公司。
启用HTTPS必须解决的难题
然而,HTTPS并非”想上就上”,正式启用之前,必须解决至少三个方面的大问题。
首先是性能,这也主要分三点。
1. HTTPS需要多次握手,因此网络耗时变长,用户从HTTP跳转到HTTPS需要一些时间;
2. HTTPS要做RSA校验,这会影响到设备性能;
3. 所有CDN节点要支持HTTPS,而且需要有极其复杂的解决方案来面对DDoS的挑战。
其次,兼容性及周边。
1.页面里所有嵌入的资源都要改成HTTPS的,这些资源可能会来自不同的部门甚至不同的公司,包括图片、视频、表单等等,否则浏览器就会报警;
2.移动客户端(APP)也需要适配HTTPS,所以必须做调整修改;
3.解决第三方网站看不到Referer的问题;
4.所有的开发、测试环境都要做HTTPS的升级;
最后,为保证上线时的顺利切换,需要提前准备大量的预案,以应对各种可能出现的情况。
阿里巴巴是怎么做电商全站HTTPS的?
2015年10月14日,杭州云栖大会上,阿里巴巴宣布旗下电商平台已实现全站HTTPS。事实上,该工程于2015年9月底就已基本完成,这其中不仅有PC页面的改造,还包括了淘宝、天猫等移动客户端。
如此庞杂的系统工程,阿里巴巴是怎么做的?
首先,阿里巴巴采用了统一接入层的架构,并配备管控平台。这样的设计解决了很多问题,比如证书分散且落地不安全、软件版本难以维护、配置过多、难以标准和自动化、VIP过多等。
其次,性能调优。”双十一”系统交易创建峰值达到每秒钟14万笔,支付峰值达到每秒钟8.59万笔。即便如此,已经启用了全站HTTPS的淘宝、天猫依然保证了网站和移动端的访问、浏览、交易等操作的顺畅、平滑。
而据阿里巴巴技术保障部技术专家李振宇介绍,阿里电商在启用全站HTTPS后,性能不降反升,用户访问网站和移动端更为流畅。
阿里巴巴通过各种技术来保证优异的性能。比如以域名收敛的方式减少建连;采用HSTS技术去掉80到443的302跳转,通过Session复用来提高建连速度和降低服务器压力;对证书链进行优化以减少证书的传输量等等。
第三,将安全和兼容做到极致。阿里巴巴采用了双证书模式,即SHA-1和SHA-256,此举的目的在于最大限度地保证安全和兼容性。同时,阿里巴巴使用的是兼容性最宽泛的OV SSL证书,全面支持单域名、多域名和泛域名,尽管费用较为昂贵,但能够满足多种浏览器访问,保证最好的用户体验。据了解,阿里巴巴挑选了两家业内顶级的证书供应商,之所以如此,主要是从冗余的角度考虑,如果一家证书出现问题,可以迅速地切换至另一证书,以保证用户不受影响。另外,阿里巴巴还引入了泛域名SAN证书。
值得一提的是,”双十一”全天的交易额高达912.17亿元,其中在移动端交易额占比68%。也就是说,阿里电商启用全站HTTPS后并未对移动端的体验产生负面影响,反而有着更为积极的作用,而这都是通过技术手段进行调优的结果。
据悉,阿里巴巴无线技术团队克服了大量技术难题,实现无线加密网络传输的1秒钟法则。
2.无线基于TLS1.3协议进行了改造,在保障链路安全的情况下优化SSL握手过程实现零耗时提升了用户体验,摒弃传统的RSA算法,转而使用了最新的ECDH密钥交换算法,极大地提升了服务端的性能。
3.无线网络层实现了调度中心,通过该控制中心,我们可以从版本、域名、流量比例等多维度控制HTTPS流量切换,保证整个切换过程是可控、对用户无感知的,有问题可以极速回滚。
据统计,经过改造后,阿里电商坐拥”世界上最大的HTTPS流量”,这其中涉及数百个应用、超百万个页面。没有足够坚定的决心和巨量的资源投入,显然是不行的。
本文转载于阿里云,更多关于HTTPS加密相关资料请浏览https://www.wosign.com