保护媒体内容免受Android中的复制或再分发

时间:2015-02-06 11:35:57

标签: android security streaming media drm

我想要 i)将媒体内容流式传输到Android设备
ii)从Android设备的SD卡读取媒体内容。

但媒体内容应该是安全的。没有其他用户可以访问任何其他设备上的媒体文件。

我想到了一些解决方案: 1)数字版权管理中的DRM(我无法得出更好的结论) 2)加密解密(这在性能方面似乎非常昂贵)

任何人都可以提出一些关于如何处理问题陈述或一些开源样本的想法。

谢谢和问候

2 个答案:

答案 0 :(得分:0)

我可以给你一个暗示,因为我没有使用加密媒体:

也许这是一种有趣的探索方式。

Escenario#1。将媒体内容流式传输到Android设备:您只需要在流媒体端提供HTTP服务器,该服务器为加密媒体提供服务并将其提供给客户端。例如,Nginx和Apache都支持HTTP实时流式传输。

Escenario#2。从Android设备的SD卡读取媒体内容。您需要在应用程序中实现HTTP服务器。

在这两种情况下,媒体都是加密存储的。唯一的问题是用户捕获屏幕。

答案 1 :(得分:0)

我知道两种可在Android上使用的DRM技术 - Microsoft PlayReady和Google Widevine。

DRM技术包括客户端组件(DRM引擎),旨在保护内容不被设备用户自由访问 - DRM引擎仅允许在本地设备上播放,不提供任何其他内容访问媒体数据。

我没有关于Android DRM引擎是否可以防止屏幕捕获的信息。 PlayReady可能不能,因为它是一个app插件,但是Widevine可能能够实现这一点,因为它内置于操作系统中。

现在,您需要了解DRM无法控制可以播放媒体。但是,它确实提供了在您自己的服务器端逻辑中确定这一点的能力。这假设您可以通过某种方式区分用户 - 了解允许谁玩游戏以及谁不玩游戏。

这是如何工作的,为了播放受DRM保护的视频,DRM引擎必须从许可证服务器获取许可证。许可证服务器可以基于自定义业务逻辑来决定是否提供许可证,例如,登录的用户会话。

受DRM保护的文件是加密的,只有拥有许可证的DRM引擎才能读取。

显然,还有成本问题 - 这些能力不是免费的。使用DRM技术通常需要各种订阅费用,其粗略范围为每月数百或数千欧元/美元。如果这是您的预算,DRM可能是您的有效选择。