我有一个支持CENC的MPD剪辑,如何在不使用任何特定DRM引擎的情况下解密和播放?是否有任何解密算法可用于解密AES CTR 128位?如果有,它将用于解密MPEG-DASH内容?网络中有一些第三方库,如NACL,Openssl,crypto ++,可以进行AES ctr 128解密。我可以使用其中一个来解密DASH内容(支持CENC)吗?
答案 0 :(得分:8)
MPEG-CENC只是ISO BMFF(mp4)文件上的AES-128 CTR加密。有关如何将其应用于CENC的规范如下:https://www.w3.org/TR/2014/WD-encrypted-media-20140828/cenc-format.html 和 https://www.iso.org/obp/ui/#iso:std:iso-iec:23001:-7:ed-1:v1
对AES-128点击率的一个很好的解释 https://en.wikipedia.org/wiki/Block_cipher_mode_of_operation#Counter_.28CTR.29
要解密,您需要密钥以及用于加密内容的初始化向量(IV)。这可以从mp4文件中的senc和tenc框中获得。一旦你有了那些,你只需要浏览文件的样本或片段,解密并重新组装mp4(假设你想播放它)。
如Bento工具所述,mp4decrypt给出了如何执行此操作的示例:https://github.com/axiomatic-systems/Bento4/blob/master/Source/C%2B%2B/Apps/Mp4Decrypt/Mp4Decrypt.cpp
答案 1 :(得分:5)
使用CENC保护的DASH视频可以使用许多不同的DRM技术进行播放。您需要关注的主要因素是:
请注意,为了覆盖广泛的播放器,您需要同时支持多种DRM技术。
您可以在DASH-IF content protection references page找到一些DRM技术的参考资料。
请注意,某些浏览器也可能支持" clearKey" DRM技术,这是一种虚假的实现,只需要解密密钥并直接使用它。如果您有解密密钥和视频,则可以使用clearKey机制播放视频。
编辑:如果您有加密密钥,则可以使用Bento4套件中的mp4decrypt tool来解密碎片文件。
答案 2 :(得分:-2)
某些浏览器支持通过MPEG-CENC和HTML5加密媒体扩展的ClearKey,例如谷歌浏览器。其他浏览器可能必须使用回退来进行解密,例如使用Flash。
在HTML5和Flash中使用Clearkey的MPEG-CENC显示在此演示网站上http://www.dash-player.com/demo/drm-and-protection/