如何在Android上添加第3个drm插件?

时间:2017-03-03 04:39:45

标签: cryptography drm

如果我是Android应用开发者,我有第3个drm插件支持android drm框架。如何将drm插件添加到Android系统并注册?

我知道在常规方法中将新插件添加到/system/vendor/lib/mediadrm,但如果不是设备提供者,不可能,我们不能拥有将插件放入此系统文件夹并注册它的根权利?

如果我们在app播放器中添加drm,我搜索了一些开源播放器,我没有找到注入点来解密样本帧。比如android中的EXOplayer,它只支持mediadrm在android中的DRMFramework, Mediacodec可以通过注射mediacrypto对象来解密样本框架(mediacrypto是由mediadrm结合),但如果目标系统不能支持drm方案,我们就无法使用它。

1 个答案:

答案 0 :(得分:0)

在常规Android手机中,作为应用开发者,您无法添加新的DRM插件,正如您所说。

DRM系统最终只是一种安全地从服务器端到客户端获取密钥的方法。服务器端的复杂性通常围绕决定谁有权获得密钥并确保请求者确实是他们所说的人,并且设备上的DRM客户端确实是它所说的那样。

在客户端,设备通常具有安全的媒体播放器功能,该功能将加密视频和密钥作为输入,从DRM系统获取。然后它将视频解密并直接呈现给屏幕。

通常不允许客户端甚至操作系统访问未加密的视频或内容的密钥 - 这可以防止(或者至少使链接应用程序复制内容更加困难)。

如果您只是需要适度的保护并且不想使用现有的DRM系统,您可以使用clearkey - 这实际上并没有提供太多保护,但它可能足以满足您的需求。你可以使用Shaka播放器在浏览器中测试这个,它提供了示例clearkey配置:https://github.com/google/shaka-player/blob/master/docs/tutorials/drm-config.md