请选择 进入手机版 | 继续访问电脑版
查看: 886|回复: 0

【揭秘】视频点播加解密系统架构

[复制链接]

353

主题

373

帖子

9万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
99935
发表于 2017-11-23 16:50:15 | 显示全部楼层 |阅读模式
随着经济及互联网的快速发展,版权越来越受到大家的重视。而对于视频来说,可以通过注入水印的方式来进行版权保护,但是并不能完全遏制其传播,为了更好的保护视频拥有者的权益,我们采用对视频内容进行加密的方式,这样即使视频被人传播盗用,也无法进行播放。


视频加解密系统需满足的条件

网易云为了保护用户的点播视频资源,开发了一套完整的加解密系统。对于一套加解密系统来说,需要满足以下几个条件

1、高安全性,保证加密后的视频不被破解

2、低复杂性,加解密过程的复杂性要低,保证高效率
3、可操作性强,用户易操作
4、容错性强,算法鲁棒性要强
5、压缩比高,加密后不能增加视频文件的大小
6、算法可升级,通过升级加解密算法进一步提高鲁棒性


视频加密系统

针对上述要求,网易云自研了一套加密系统,用户上传视频文件到网易云的分布式存储平台,执行加密任务。首先,企业应用服务器会发送加密任务到网易云视频管理服务平台,对于不符合格式的视频,网易云在加密之前会对待加密的视频进行转码;其次,网易云视频管理服务平台收到加密任务后,会从密钥管理服务器获取加密密钥,然后对视频进行加密;最后,将加密完成的视频存储到网易云的分布式存储平台上,并返回任务执行结果给用户。



视频解密系统

要播放加密视频,需要先对视频进行解密,才能进行播放,网易云提供的播放器SDK能够支持加密视频的解密播放。为了保证解密过程的安全性,密钥并不是以明文的方式进行获取,而是由播放器SDK从网易云视频点播服务器获取,为了防止他人通过抓包等网络拦截手段窃取密钥,网易云对密钥也进行了加密,这样进一步保证了安全性。



(1) 用户要播放加密视频,首先需要从企业应用服务器获取加密视频的播放URL;
(2) 用户根据appkey和secretkey从网易云视频管理服务器获取token,用于获取密钥;
(3)  用户将播放URL和token传给播放器;
(4) 播放器SDK根据token从网易云视频管理服务器获取密钥,网易云视频管理服务器从密钥管理服务器获取密钥并返回给播放器SDK,然后播放器SDK对密钥进行解密,得到原始密钥;
(5) 为了保证解密过程正确无误,播放器SDK还设计了一套密钥校验机制,对密钥的正确性进行校验,校验正确的才能进行解密播放;
(6) 对于校验通过的密钥,SDK会从CDN进行拉流解码播放;
为了保证解密的过程不对播放造成延迟,网易云采用的是流式加密的方式,即可以边解密边播放,不需要下载整个文件再进行解密播放。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表