视频加密技术随着互联网技术的不断发展,也成为当今行业内备受瞩目的风景,而各种加密手段也是层出不穷,特别是移动时代的到来,更多手机端加密的需求也越来越明显,但无论是电脑还是手机端,加密的可靠性和防破解性也着实令人担忧,那当下最受欢迎的视频加密技术有哪些?究竟怎样选择一款真实、安全又放心的加密软件?点量为您揭晓。
一、防盗链:严格来说,这不属于视频加密,只是防止下载。意义不大,顶多是一些header、refer的限制,或者加一些token,或者弄上多段加载;但总归是有办法下载的,这个不属于加密的范畴,就不展开来讨论。
二、基于微软DRM SDK等,或者网上公开的drm方案,比如rtmpe/ hls的加密方案等。
大致分开来讲:
A)微软DRM SDK,这个在windows时代是比较常见的方案,但现在缺点明显,一个是微软的sdk现在申请需要较高费用和周期;另一个是,移动时代,这个模式的弊端太多,比如各种手机用户的支持,支持的视频格式等。
B)rtmpe:首先流媒体服务器软件价格不低;当然,我觉得这种最大的问题在于:数据不能缓存,用户每次播放都要占用服务器带宽,不容易结合CDN加速等。服务器带宽压力大!
C)HLS的加密,也就是m3u8里面的ts数据都进行了加密处理,然后浏览器或者播放器播放时,通过m3u8里面内置的解密秘钥地址,去动态解密。这种相对来说实现简单些,但也有弊端,那就是这一类使用公开加密标准的通病。
以上这类公开标准方案,通病就是:标准统一、公开。如果作为技术人员想去破解,还是有机会的。比如微软的DRM树大招风,破解软件网上会有提供;hls这种,如果我伪装成自己是浏览器,你总要给我解密秘钥的,我就自然可以获取后将视频解密开来。总的来说,加密这些,如果太标准化了,太统一了,就容易破解。
三、国内部分厂商的平台化方案:比如保利威视等,这类是不公开的标准,相对方案二里面的安全了些,但作为一个平台化,还是有各种弊端和被人攻击的风险,破的人多了,没有破不掉的加密技术。
四、私有化解决方案:比如我们公司是为各个在线教育等客户提供个性化加密解决方案,每个不同客户采用不同的加密算法和加密思路,从而可以提升加密的安全性。
首先给一些干货,大概怎么加密:
A)视频可以通过帧级加密,比如每个数据关键帧,从二进制做加密运算,加密算法当然是不能公开;最好不同的客户用不同的加密算法,或者做变形,确保一个客户被破解了,另一个客户是安全的;并且加密最好有版本号机制,破解后可以升级,你破我防,保持定期更新。
B)加密的一个弱项其实是在播放,比如很多同行采用flash播放器去播放加密的视频。flash是很容易逆向的,你的解密播放代码被人逆向后看到,那你的解密代码就可以被人利用去解密视频。
当然,业内还可以考虑采用FlashCC技术,也就是将C++代码编译后内嵌如flash,这样逆向后看不到解密的代码,但这样就真的安全么?其实只是相对纯flash安全了,要想更安全,还是要做很多事情的,对于内嵌flashCC的,如何去破解,如何加强安全性,这里面为了业内很多同行方案的安全性,就不过多展开了。
C)考虑视频加密还需要考虑兼容性,比如PC端、手机APP等。往往突破口是在某个弱项的入口,所以一定要每个入口都是安全的。我们的加密PC下、手机APP都是用自主研发的播放器,内置多重加密。当然,有些客户不需要手机APP,希望只用H5,这种,我们就采用不同的加密方法,因为HLS的安全等级弱一些,所以就采用不同的加密,即使这类被人利用了,也不影响其他视频和客户的安全。
以上是常用的一些视频加密的可选方案。
其实除了考察视频加密技术,还要考虑播放器的功能性,比如是否支持水印、字幕、是否支持问答等。用户可能通过翻录来破解,如果有水印等功能,可以追溯泄密用户。另外字幕、换肤等功能,也会影响客户体验等。
点量视频加密为不同的客户可以提供不同的个性化定制方案,如果是要自己做一款安全的播放平台,私有化一定适合您。