如果我是一个Android应用程序开发人员,我有支持android drm框架的第三代drm插件。如何将drm插件添加到Android系统并进行注册?
我知道通常的方法是将新插件添加到/system/vendor/lib/mediadrm中,但如果不是设备提供商,我们不可能有根权限将插件放到这个系统文件夹中并注册它?
如果我们在app播放器中添加drm,我搜索了一些开源播放器,我还没有找到解密样帧的注入点。例如android中的EXOplayer,它只通过mediadrm支持android中的DRMFramework,Mediacodec可以通过注入mediacrypto对象(mediacrypto和mediadrm相结合)来解密样本帧,但如果目标系统不能支持该方案,我们就不能使用它。
发布于 2017-03-07 22:22:54
在普通的Android手机上,作为一个应用程序开发者,你不能像你说的那样添加一个新的DRM插件。
DRM系统最终只是将密钥从服务器端安全地获取到客户端的一种方式。服务器端的复杂性通常是决定谁有权获得密钥,并确保请求者确实是他们所说的那个人,以及设备上的DRM客户端确实是它所说的那个人。
在客户端,设备通常具有安全媒体播放器功能,该功能将加密的视频和从DRM系统获得的密钥作为输入。然后,它解密并将视频直接呈现到屏幕上。
客户端甚至操作系统通常不允许访问未加密的视频或内容的密钥-这会阻止(或至少使其更难) rouge应用程序复制内容。
如果你只是需要适度的保护,不想使用现有的DRM系统,你可以只使用clearkey -这并不能真正提供太多的保护,但它可能足以满足你的需要。您可以在浏览器中使用Shaka player进行简单的测试,该播放器在此处提供了示例清除键配置:https://github.com/google/shaka-player/blob/master/docs/tutorials/drm-config.md
https://stackoverflow.com/questions/42570777
复制相似问题