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

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

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

当解密密钥key的权限设置为“WEB授权”时,key的权限则包括“WEB授权”和“APP授权”共2个权限。只要按照文档说明编写代码,即可在移动端WEB网页和集成了POLYV Android 或 iOS sdk的APP上,将校验参数发送到POLYV云平台,校验通过则获取合法的key,从而解密播放视频。

一、WEB授权设置如下:

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

20170112_0011

(2)设置好后还需要在页面的播放代码中添加ts和sign参数。当移动端WEB浏览器请求m3u8时,会在m3u8地址后面附带ts和sign参数,POLYV云平台接收到参数后会对ts和sign参数进行校验。若校验通过,返回正确的解密密钥key文件链接给客户端。反之,非法访问key,则会响应400错误状态。

以下以PHP为示例代码,其中ts参数为13位的毫秒级时间戳(或者用10位的秒级时间戳,后面加多3个0),sign为secretkey、vid、ts的值按顺序拼凑起来的字符串进行MD5计算得到的结果。

20170112_002 

由于移动端WEB是通过HTML5的video标签调用手机系统的原生播放器去播放视频,需要将解密密钥key通过http传输给手机系统的原生播放器。当key的权限为“开放授权”时,key永久生效,无需带上时间戳ts和签名sign去访问。当key的权限为“WEB授权”时,则需要带上时间戳ts和签名sign,才能正确访问到key,访问key带上的时间戳ts的有效期为5分钟。

与移动端WEB网页不同的是,PC端WEB网页播放加密视频时,无需通过http去传输key,在播放的过程中,POLYV的Flash播放器会调用播放器内部的解密算法,去解密播放加密视频,无需担心key传输和暴露的问题。

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

20170112_003