BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

Netflix安全通信的新型方案——消息安全层

| 作者 张天雷 关注 4 他的粉丝 发布于 2014年11月15日. 估计阅读时间: 4 分钟 | QCon上海2018 关注大数据平台技术选型、搭建、系统迁移和优化的经验。

近期,为了改善之前流媒体传输、通信过程中的诸多安全问题,Netflix公司提出了消息安全层(Message Security Layer,简称MSL)的概念。作为1997年在美国成立的视频租赁公司,Netflix主要为美国和加拿大的用户提供流媒体播放服务和电视、电影的在线出租业务。经过数十年的发展,Netflix已经发展成为全球领先的在线流媒体服务公司。目前,Netflix在美国的订阅人数就已经超过3300万,季度营业额达到十几亿美元。

为了能够为千万订阅者提供服务,Netflix利用庞大的快递体系和互联网系统形成了自己的解决方案。尤其在目前十分火热的流媒体部分,大量的设备来为在线观看视频提供提供支撑。然而,这些基于不同硬件和软件的设备在传输用户信息、视频信息等的时候,如何保证信息的安全性是Netflix公司一直在关注的问题。

最初,Netflix通过结合HTTPS和NTBA安全机制这两种方式来保证消息传递过程中的安全。这种方法在前期起到了很好的作用,但是随着互联网相关技术的发展,该方法越来越不能满足当前服务对安全的要求。据Netflix的安全工程师Wesley Miaw 和 Mitch Zollinger分析,HTTPS在安全方面的问题可以分为四个方面。

首先,HTTPS最大的问题在于其所采用的PKI架构。作为HTTP协议的安全版本,HTTPS通过安全套接字层(SSL)进行信息交换。在HTTPS的使用过程中,需要牵涉到RC4流加密算法以及数字认证。这其中就需要大量的证书来对服务器等进行证明。而服务器的证书在废除、重新启用等方面就容易引起大量的问题。之前,Netflix已经尝试利用CRL和OCSP等来解决这些问题。然而,仍然频繁有安全漏洞出现,消息传递的效率也受到影响。其次,影响HTTPS安全性的是其对时间精度的严格要求。对于使用X.509数字认证的HTTPS,如果时间不能明确保证,就不能对链接的安全性进行有效验证。然而,大量的设备现在都没有精确的时间,无法完成该任务。再次,HTTPS本身在设计过程中就存在一定的安全隐患。其中包括填充攻击以及先MAC后加密的工作方式等,都使得HTTPS本身的设计不完美。最后,HTTPS不能很好的支持新的特性和行为。为了能够对某些设备的特性和行为进行支持,需要修改SSL/TLS的协议栈,从而会引起大量的问题。

为了能够彻底解决这些问题,Netflix提出了消息安全层的概念。这一概念的提出主要遵循了跨语言、自动错误恢复、高性能、灵活、可扩展以及标准可兼容等设计思路。消息安全层具备完全性保护、加密、认证、同一消息不可重复传输、可信的服务网络、点到点等基本安全特征。相比于HTTPS,MSL有着明显的优点。首先,MSL采用了plug-in结构,使得不同的认证机制、密钥协议等等都可以被集成到MSL中。此外,时间无关性和服务环都能够很好增强其安全性。

在MSL协议中,一个典型的MSL消息包含消息头和负载数据包两个部分。消息头用来建立和维护安全链接,负载数据包承载着需要传输的内容。一旦建立起安全链接,数据就可以进行稳定传输。(而且,在初始链路建立过程中,一旦认证过程完成,以后的消息都可以直接使用已经获得的会话密钥来进行。)在错误处理方面,接收端感知到错误后会返回错误信息,发送端通过对相关信息进行认证完成会话恢复工作。

目前,读者可以在GitHub的Message Security Layer repository中看到相关的资料。其中,包括了对MSL的介绍、使用指南以及利用Java和JavaScript语言实现的MSL协议栈。


感谢崔康对本文的审校。

给InfoQ中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ)或者腾讯微博(@InfoQ)关注我们,并与我们的编辑和其他读者朋友交流。

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT