# DRM Kit 简介 开发者通过调用DRM Kit(Digital Rights Management Kit)提供的接口可以实现DRM加密音视频的解密,支持设备DRM证书管理、许可证管理、内容解密等。 ## 能力范围 - 解密播放:提供音视频统一的解密能力,音视频类应用接入DRM后,可以播放带有数字版权的节目。 - DRM解决方案支持:支持不同的DRM解决方案。 - 在线证书下载:支持设备证书认证申请、设置。 - 许可证在线/离线授权:支持在线许可证请求和设置,支持离线许可证的申请、加载、更新、删除及状态查询。 ## 亮点/特征 - **支持许可证及解密会话管理** 支持多会话,并支持在会话中申请和设置许可证,将解密会话与许可证绑定。 - **支持安全/非安全视频通路** 支持安全视频通路,安全内存解密调用,安全解码;支持非安全通路,非安全内存解密调用,非安全解密。 ## 基础概念 在开发前,需要先了解以下基础概念: - DRM解决方案(DRM Plugin) DRM框架层以下实现DRM HDI层接口的驱动,内容解密在驱动中完成。 - DRM会话(MediaKeySession) DRM会话用于媒体密钥管理及媒体解密,会话的生命周期由DRM实例(MediaKeySystem)管理。 ## 开发模型 数字版权保护技术的具体实现方式和技术细节会根据不同的内容类型、保护需求和应用场景有所不同。 数字版权保护的工作流程,可概括为设备证书管理、许可证管理和解密管理三部分。 - 客户端创建DRM实例完成,创建DRM解密会话,检测到设备没有设备DRM证书或证书异常,启动在线证书下载流程。 - 客户端在处理完证书下载后,创建DRM解密会话,生成许可证请求,客户端获取服务端返回的许可证请求响应并设置到设备上。许可证包含在线和离线两种,支持状态检查、移除、获取许可证ID等功能。 - 客户端设置解密配置,进行内容解密等。 了解数字版权保护工作流程后,建议开发者了解数字版权保护的开发模型,便于更好地开发带有数字版权保护功能的应用。 **图1** 数字版权保护开发模型   ![Drm Development Model](figures/drm-development-model.png) 播放器应用通过调用DRM(数字版权保护)接口,实现设备证书管理、许可证管理、解密管理等基本操作。在实现基本操作过程中,先进行DRM实例创建和设备证书申请与设置,其次进行会话实例创建和许可证申请与设置,等加密码流到达,通过底层的设备硬件接口(HDI,Hardware Device Interfaces)送到具体的DRM解决方案中进行解密。 ## 相关实例 针对数字版权保护开发,有以下相关实例可供参考: - [媒体管理合集(ArkTS)(Full SDK)(API11)](https://gitee.com/openharmony/applications_app_samples/tree/master/code/SystemFeature/FileManagement/MediaCollections)