DRM-Playready总结

相关原创文章:
数字版权管理DRM
DRM在Android中
DRM在Android中(2)——HAL
DRM-widevine 总结
ExoPlayer+Shaka-packager播放自制DRM视频

1. 前言

Playready是微软开发的媒体文件保护技术,包括加密,输出的保护和数字版权管理(DRM)。Playready是目前应用较为广泛的DRM技术之一。

Playready所开发的产品有:

  • PlayReady Server SDK

    用于服务器开发,实现内容包装、许可证分发、域管理和计量服务等。

  • PlayReady PC SDK

    用于个人PC端的软件开发,实现PC端的许可证管理、在设备间传输保护内容、播放内容等。

  • PlayReady Client SDK for Android/iOS

    用于开发Android/iOS移动设备端的应用程序,实现播放受PlayReady 保护的数字内容。

  • PlayReady Porting Kit

    用于开发人员为不同设备创建Playready系统架构,从而支持Playready数字内容保护的相关功能(如许可证获取、内容解密)。

Playready的安全等级有三种:

  • SL150:

    开发目的没有提供保护;客户端可以使用任何形式实现;基于任何Playready porting kit版本开发。

  • SL2000:

    可通过硬件方式提供保护,也可以不适用硬件保护;客户端可以是一个软件应用也可以是一个硬件设备;是否采用TEE保护是可选的;基于任何Playready porting kit版本开发。

  • SL3000:

    通过硬件方式提供保护;客户端必须是一个设备并采用TEE;同时必须遵从Compliance Rules和Robustness Rules。此方案提供较高的安全性。

具体内容可查看playready官网

2. 架构

2.1 Android中架构

在Android中主要使用两种Level,SL2000和SL3000。下面基于AndroidQ给出架构图。由于各个厂商的差异,下图中playready service的实现方法会有所不同。

SL2000:
在这里插入图片描述
SL3000:
在这里插入图片描述
博文为ganqiuye原创,转载请附上原文出处链接和本声明。

2.2 在Linux中架构

暂无

2.3 在IOS中架构

暂无

2.4 在Windows中结构

暂无

3. 移植

microsoft提供的源码并没有适配到各个平台,需要根据各自的平台去移植适配

3.1 在Android中移植

基于SL2000相对SL3000简单,所以先移植SL2000。

SL2000:

  1. 获取源码(向microsoft获取)
  2. 参考DRM步骤进行配置
  3. 增加playready的plugin代码,这里给出一个范例:

playready-plugin-for-android-specification

​ github: https://github.com/MicrosoftDocs/PlayReady/tree/live

  1. 调试播放通路,mediacodec(mediaplayer一般不使用)

  2. 使用exoplayer等播放器进行测试

SL3000:

SL3000的原理,简单的归纳就是将解密部分的代码移植到secure os上进行,这就需要tee模块,通过各种ta实现,通过命令发送到secure os中运行。同时,要适配好secure os里的一些规则。

​ 移植完后,需要进行各种测试。

3.2 在Linux中移植

暂无

3.3 在IOS中移植

暂无

3.4 在windows中移植

暂无

4. 应用

  1. 这里提供一个网页test player
  2. google认证测试GMS
  3. netflix, exoplayer等播放器
  4. 盒子上一些vip片源
  5. 片源商,HBO等
  6. xbox
    在这里插入图片描述
  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值