ISO 26430-9:数字影院运营 — 密钥投递包

将多个密钥投递消息高效打包到单个压缩归档中

密钥投递包格式概述

ISO 26430-9(源自SMPTE 430-9)规定了数字影院内容分发中的密钥投递消息包(KDMb)格式。KDMb是一种压缩归档(ustar格式),将多个密钥投递消息(KDM)与一个目录文件打包到单个可分发的容器中。该设计解决了为影院院线中每个屏幕单独投递KDM的后勤挑战——一部影片可能需要为数百台设备分别生成对应的KDM。

KDMb可以代表整个影院、院线或任何其他接收方分组。这种批量处理能力大幅降低了分发单独KDM文件的开销——不再需要数千个单独文件,一个归档包即可满足需求。

KDMb文件结构与目录格式

KDMb归档遵循IEEE Std 1003.1(POSIX)中定义的ustar交换格式。在顶层,归档必须包含一个名为CATALOG的文件(XML文档)和一个名为CONTENT的目录,该目录包含一个或多个KDM文件。符合规范的解析器会忽略任何其他顶层文件或目录。归档文件必须是常规文件(无符号链接或设备文件),权限模式为0444(只读),所有路径名必须是相对路径。

CATALOG文件使用XML Schema,命名空间为http://www.smpte-ra.org/schemas/42910/2008/KDMB。根元素Catalog包含Id(用于资产管理的urn:uuid)、可选的AnnotationText和Creator元素,以及KDMFileList元素。每个KDMFile条目指定CPLId(关联合成播放列表的UUID)、FilePath(CONTENT目录内的相对路径,1-99个字符)、接收方标识(X.509 IssuerSerial和SubjectName)以及密钥有效期窗口(ContentKeysNotValidBefore和ContentKeysNotValidAfter)。

元素 必需 描述
Id 唯一标识目录的urn:uuid
AnnotationText 自由格式的人类可读描述
Creator 标识创建包的应用程序
KDMFileList KDMFile条目列表,每个条目映射一个CPL到接收方和KDM文件

工程设计要点

FilePath元素使用PathTextType约束,仅允许a-z、A-Z、0-9、下划线、短横线和点号字符,使用正斜杠作为路径分隔符。文件和目录名必须以字母数字字符开头。所有名称区分大小写,但不区分大小写时也必须唯一——这是基于Linux的影院服务器和基于Windows的内容准备系统之间跨平台互操作性的重要约束。

所有归档文件的用户和组ID必须为0(root),文本名称设置为root。这一POSIX要求确保在不同操作系统和影院管理平台之间保持一致的解压行为。

Recipient元素将每个KDM映射到特定的X.509证书,由IssuerName和SerialNumber以及证书中的SubjectName标识以方便路由。这实现了快速查找:目录可以按CPL ID搜索以找到特定影片的正确KDM文件,或按接收方搜索以找到特定放映机的所有KDM,无需扫描单个KDM文件。

常见问题

问:KDMb解决了哪些单独KDM无法解决的问题?
答:没有KDMb,内容分发商需要单独传输成百上千个单独的KDM文件——每个屏幕每部影片一个。KDMb将这些文件打包到单个归档中,附带支持按CPL或接收方快速查找的目录,大幅简化了分发物流并降低了遗漏或不匹配KDM的风险。
问:KDMb能否包含多个影院院线的KDM?
答:可以。KDMb可以包含任何接收方分组的KDM,包括整个影院院线。目录文件将每个KDM映射到其特定的CPL和接收方,单个归档即可服务于从后期制作到发行再到放映的复杂分发层次。
问:KDMb如何处理跨平台的文件命名问题?
答:PathTextType约束只允许文件名使用字母数字字符、下划线、短横线和点号。所有名称区分大小写,但不区分大小写时必须唯一。路径分隔符始终是正斜杠。这些约束确保了Windows、Linux和macOS系统之间的兼容性。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注