Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
ISO 26430-1 (SMPTE 430-1) defines the Key Delivery Message (KDM) for Digital Cinema systems. The KDM is an XML-based security message that delivers content decryption keys from content processors (post-production or distributors) to exhibition facilities. It carries three fundamental information types: content keys for a specified Composition Playlist (CPL), key usage parameters (primarily a validity date/time window), and the Trusted Device List (TDL) identifying equipment permitted to use the content keys. The KDM is based on the D-Cinema Generic Extra-Theater Message (ETM) format and uses XML Encryption and XML Digital Signature primitives for security. The ETM base format provides a generic message envelope with AuthenticatedPublic and AuthenticatedPrivate sections, which the KDM extends with cinema-specific key delivery parameters. This layered architecture means that the same security infrastructure can support multiple message types beyond KDMs, such as facility management messages and security log messages, providing operational flexibility for cinema security deployments. The KDM is typically generated by a Key Management System (KMS) operated by the distributor or a third-party security provider, and delivered to the theater via email, web portal, or automated API. Each KDM is uniquely identified by its Id element, which is a UUID that enables tracking and auditing of key delivery operations across the distribution chain from content owner to exhibition.
The KDM extends the ETM format with a KDMRequiredExtensions element containing: Recipient (identifies the target certificate via IssuerName and SerialNumber), CompositionPlaylistId (UUID of the target CPL), ContentTitleText, ContentAuthenticator (optional certificate thumbprint for CPL validation), AuthorizedDeviceInfo (device list for key usage authorization), ContentKeysNotValidBefore/After (validity time window), and KeyIdList (listing all key UUIDs in the message). The actual encrypted key values are carried in the AuthenticatedPrivate portion, each wrapped in an EncryptedKey element using RSA-OAEP. Each EncryptedKey binds together: Structure ID (0xF1DC124460169A0E85BC300642F866AB), Certificate Thumbprint, CompositionPlaylistId, KeyType (e.g., “MDIK” for image, “MDAK” for sound), KeyId, validity dates, and the 128-bit AES content key. The binding between the key and the CPL is enforced cryptographically: the CompositionPlaylistId appears both in the signed (but unencrypted) AuthenticatedPublic section for routing purposes and inside the RSA-encrypted block as an authoritative value that cannot be modified without detection. This dual placement prevents man-in-the-middle attacks where an attacker might try to redirect a KDM intended for one composition to another. The Recipient element uses the certificate IssuerName and SerialNumber to identify the target decryption device, ensuring that only the intended media block can unwrap and use the content keys.
| KeyType | Hex Value | Description |
|---|---|---|
| MDIK | 4D.44.49.4B | Image essence decryption key |
| MDAK | 4D.44.41.4B | Sound essence decryption key |
| MDSK | 4D.44.53.4B | Subtitle essence decryption key |
| FMIK | 46.4D.49.4B | Image forensic marking key |
| FMAK | 46.4D.41.4B | Sound forensic marking key |
The KDM’s security model is layered. The AuthenticatedPublic portion is digitally signed (RSA-SHA256) and can be verified by any recipient without decryption. The AuthenticatedPrivate portion is both signed and encrypted only the intended recipient (identified by the Recipient element) can decrypt the content keys using their RSA private key. Three critical validity checks protect against attacks: (1) verify the signer’s certificate thumbprint matches the KDM signer to prevent cut-and-paste attacks; (2) verify the Structure ID to prevent substitution of RSA blocks from other message types; (3) verify the CompositionPlaylistId consistency across all locations in the KDM. The key type binding (e.g., “MDIK” only usable for image decryption) defends against cross-system attacks where a sound key might be substituted for an image key. Additionally, the AuthorizedDeviceInfo element enables device-level authorization, ensuring that only specific, trusted media blocks within a theater complex can use the delivered keys. The TDL may include multiple device thumbprints, allowing a single KDM to authorize playback across multiple screens in a multiplex environment while excluding unauthorized devices.