You need to enable JavaScript to run this app.
导航
标准 HLS 加密改写
最近更新时间:2025.04.10 11:20:49首次发布时间:2025.04.10 11:20:49
我的收藏
有用
有用
无用
无用

本文档介绍了CDN加速服务提供的 "标准 HLS 加密改写" 功能。

说明

要使用此功能,请 提交工单

功能介绍

客户端在播放使用 HLS 协议传输的 .ts 加密视频流时,客户端需要事先获取用于解密视频流的密钥。密钥存放在密钥服务器上,客户端通过访问密钥 URL 来获取密钥。密钥 URL 包含在 .m3u8 播放列表文件中的 #EXT-X-KEY 标签内。为了更好保护密钥的安全,您可以使密钥 URL 包含客户端的签名,并在密钥服务器上实现签名校验机制来验证客户端的签名。

在启用 "标准 HLS 加密改写" 功能后,CDN加速服务将 .m3u8 请求中包含的签名参数添加到密钥 URL。

说明

如果客户端在请求 .m3u8 文件时没有在请求 URL 中包含签名参数,CDN加速服务不会改写密钥 URL。

密钥获取流程

下表分别展示了在启用该功能的场景和未启用该功能的场景中,客户端获取密钥的流程。粗体文字表示在启用该功能后,流程中的增加的步骤和信息。

在该场景中:

  • .m3u8 文件的 URL 是 https://www.example.com/index.m3u8

  • 签名参数是 DrmAuthToken,签名值是 xxx

  • 密钥 URL 是 https://www.test.com/video.key

未启用该功能时,密钥的获取流程启用该功能后,密钥的获取流程
  1. 客户端向CDN加速服务请求该 .m3u8 文件。请求 URL 是 https://www.example.com/index.m3u8

  2. CDN加速服务将该 .m3u8 文件发送给客户端。

  3. 客户端分析该 .m3u8 文件,获取 #EXT-X-KEY 标签中的密钥 URL。

  4. 客户端向该密钥 URL 发送请求。

  5. 密钥服务器将密钥发送给客户端。

  1. 客户端向CDN加速服务请求该 .m3u8 文件,请求 URL 是 https://www.example.com/index.m3u8?DrmAuthToken=xxx

  2. CDN加速服务修改该 .m3u8 文件中 #EXT-X-KEY 标签的值,将签名参数添加到密钥 URL 的末尾。改写后的密钥 URL 为 https://www.test.com/video.key?DrmAuthToken=xxx

  3. CDN加速服务将该 .m3u8 文件发送给客户端。

  4. 客户端分析该 .m3u8 文件,获取 #EXT-X-KEY 标签中的密钥 URL。

  5. 客户端向该改写后的密钥 URL 发送请求。

  6. 密钥服务器验证该请求 URL 中的签名。

  7. 判断签名是否合法。

    • 如果签名合法, 密钥服务器将密钥发送给客户端。

    • 如果签名不合法,密钥服务器拒绝该请求。

操作步骤

  1. 登录多云CDN控制台

  2. 在左侧导航栏,单击 CDN加速

  3. 在CDN加速域名列表找到需要配置的域名,单击 管理

  4. 在域名页面上,单击 内容优化 标签页。

  5. 在页面右上方,单击 编辑配置

  6. 标准 HLS 加密改写 区域,设置 状态 为启用。

  7. 指定签名参数的名称,长度不能超过 100 个字符。参数名称区分大小写,可以包含字母、数字、下划线(_)、中划线(-)、逗号(,)、句号(.)、感叹号(!)。默认的参数名称是 DrmAuthToken

  8. 在页面右上方,单击 提交编辑

alt