VRM 5.0视频加密技术是保利威视独家研发的编码机制,是综合多项专利技术的视频版权保护体系之一,能最大程度上对视频起到防下载的作用。

当用户上传视频到POLYV云平台之后,POLYV云平台会根据用户POLYV账号的加密设置,对视频进行加密或非加密的编码处理。用户在移动端播放的是编码处理后的视频,由POLYV云平台对用户的源视频进行编码输出。如果设置了加密,则编码输出m3u8文件。如果没有设置加密,则编码输出mp4文件。

其中m3u8的加密采用的即是VRM 5.0视频加密技术,有三等级别:从开放授权到WEB授权到APP授权。安全级别逐渐提升。以下将详细解密密钥的APP授权。

当解密密钥key的权限设置为“APP授权”时,解密密钥的权限仅有“APP授权”这一个权限,移动端WEB网页将无法播放视频。只要按照文档说明,在用户的Android或iOS原生开发的APP上,集成POLYV Android 或 iOS sdk,通过调用sdk里面的方法向POLYV云平台发送请求,校验通过则获取加密过后的key,再通过sdk本地的解密算法,解密获取到真实的key,从而通过真实的key解密播放视频。

一、APP授权设置如下:

(1)进入POLYV后台点击【云点播】——【设置】——【加密设置】,按如下设置好【提交】:

20170113_0011

(2)设置好后还需要集成保利威视的iOS或Android的sdk。当解密密钥的权限设置为“APP授权”时,移动端WEB网页将无法播放视频。当sdk请求m3u8时,会在m3u8地址后面附带与POLYV云平台约定好的ts和sign参数。

注:这里的ts和sign跟解密密钥的权限设置为“WEB授权”时所要添加的ts和sign生成规则不一样,sdk是用另一个封装起来的生成规则,对用户不可见。

ts和sign校验通过后,POLYV云平台在解密密钥key的传输之前先对key进行加密,然后再通过http传输加密过后的key给sdk客户端,可以阻止key被破解。sdk获取到加密过后的key之后,使用内部封装好的解密算法对key解密,从而获取到真实的key去解密并播放视频。用户只需要调用sdk的播放器以及简单函数就可以播放视频,不需要理会key的签名校验和视频解密的过程。

以下代码演示如何使用iOS sdk的代码播放加密视频:

20170113_002 

二、解密密钥的“APP授权”过程原理,如下图所示:

20170113_003 

由图可以看出,当解密密钥key的权限设置为“APP授权”时,比“WEB授权”多了一层POLYV云平台对key的加密,安全级别更高。