# Multi-DRM 的工作原理

了解 Multi-DRM 如何保护视频、您的后端如何控制观看权限，以及播放器如何获取 DRM 许可证。

加密视频和 DRM 许可证通过不同路径传输

CDN 负责传输加密视频。您的后端检查观看权限，DRM 许可证服务则授权兼容设备解密播放。

- 01**存储 / CDN**

向播放器传输加密媒体。

- 02**您的后端**

确认用户有权观看后，向 DRM-X 请求播放授权。

- 03**DRM-X**

验证播放授权并处理 DRM 许可证请求。

- 04**播放器 + 设备**

使用设备的 DRM 系统获取许可证，并播放加密媒体。

您的后端决定访问; DRM-X 执行已签名的政策。 加密的媒体和DRM 许可证会遵循不同的传送路径 。

## 什么是 Multi-DRM[#](#what-multi-drm-means)

不同浏览器和设备使用的 DRM 系统并不相同。通过 DRM-X，您可以统一接入内容加密、播放授权和许可证服务。您的后端先确认用户是否有权观看，DRM-X 再返回适用于兼容播放器的播放配置和授权信息。播放器随后请求所需的 DRM 许可证，用于播放加密视频。

| DRM | 典型客户端 | 受保护的分发格式 | 
| --- | --- | --- |

| Widevine | Chrome、Android、Android TV、Fire TV | DASH/CENC | 

| PlayReady | Microsoft Edge、Windows 和兼容的电视 | DASH/CENC | 

| FairPlay Streaming | Safari、iPhone、iPad、Apple TV | HLS/CBCS | 

| WisePlay | 兼容的 Huawei 设备和浏览器 | 已注册并通过验证的输出 | 



## 稳定的 Content ID 与已注册的 Manifest[#](#stable-content-id-registered-manifests)

业务系统使用稳定的 Content ID 引用内容。Published 受保护文件具有自身有效的 Manifest 版本和密钥模式。创建会话时，DRM-X 根据所请求的 DRM 和平台能力选择已注册的输出，客户端不能替换为其他 Manifest。



## 在打包加密前选择密钥模式[#](#choose-the-key-model-before-packaging)

兼容性

### Single Key Protection

使用一个媒体密钥和一条 `ALL` 策略规则。当四个平台的广泛兼容性比各画质层级的密钥隔离更重要时，可采用此模式。

高级画质层级

### Multi-key Quality Tiered

分别设置 AUDIO、SD、HD、UHD1 和 UHD2 的保护范围。未包含的画质层级不会获得密钥；更高层级可以要求更强的安全性或输出保护。

DRM-X 播放器会检测已发布内容的密钥模式，并自动推荐匹配的策略编辑器。



## Control plane 与 data plane[#](#control-plane-and-data-plane)

control plane 管理环境、内容、密钥集、不可变的加密输出版本、已注册存储、API 客户端、策略和审计记录。data plane 创建短期播放会话，并处理原生证书、许可证、续期和会话释放请求。

**业务授权仍由您的后端决定**DRM-X 不会替代您的客户、订单、课程或订阅数据库。它执行由已认证服务器作出的、范围明确的授权决定。



系统架构 

## 适用于浏览器、应用和电视的统一流程[#](#one-flow-for-browsers-applications-and-tvs)



```
Viewer signs in to your service
  → Your backend checks purchase / subscription / course access
  → Your backend selects a named template or complete custom policy
  → POST api6.drm-x.com/api/v1/playback/environments/{siteId}/sessions
  → DRM-X resolves the active published package and registered manifest
  → DRM-X returns Contract v1 + short-lived DRM License Token
  → Player sends the opaque DRM challenge to the returned license URL
  → DRM-X Gateway validates the token and provider enforces its signed policy
  → Player releases the concurrent-stream reservation on stop or replacement
```





Control plane

### 打包加密与配置

管理内容、密钥集、不可变的加密输出版本、已注册的 Manifest、API 客户端、默认设置、凭据和审计记录。



Data plane

### 播放与许可证

处理短期会话授权、DRM License Tokens、许可证请求、FairPlay 证书、续期和会话释放。



DRM-X 不承担您的业务权益数据库职责。它接收已认证后端作出的授权决定，并对本次请求的决定进行签名。切勿在浏览器 JavaScript、Android 代码或 iOS 应用中生成授权。





基础概念 

## 核心概念与支持的分发格式[#](#concepts-and-supported-delivery-formats)




| DRM | 典型客户端 | 已发布的媒体格式 | Key system | 
| --- | --- | --- | --- |

| Widevine | Chrome、Firefox、Android、Android TV、Fire TV | DASH + CENC | `com.widevine.alpha` | 

| PlayReady | 经过验证的 Windows 设备上的 Microsoft Edge | DASH + CENC | `com.microsoft.playready.recommendation` | 

| FairPlay Streaming | Safari、iPhone、iPad、Apple TV | HLS + CBCS | `com.apple.fps` | 

| WisePlay | 兼容的 Huawei 浏览器和设备 | DASH + CENC | `com.huawei.wiseplay` | 


### Single Key Protection



使用一个密钥保护整份媒体内容，可尽量提高四个平台的兼容性，但无法通过不同密钥隔离各个分辨率层级。请使用统一的 `ALL` 安全规则和 `maximumQualityTier: "auto"`。



### Multi-key Quality Tiered



分别为 `AUDIO`、`SD`、`HD`、`UHD1` 和可选的 `UHD2` 使用独立密钥，可以设置不同的安全要求。未配置规则的画质层级将被拒绝。当 UHD 必须使用硬件 DRM 或更强的输出保护时，可采用此模式。

<!-- Canonical: https://docs.drm-x.com/zh-Hans/concepts/how-drm-works -->
<!-- Language: zh-Hans -->
