SPEKE API v1 - Personnalisations et contraintes liées à la spécification DASH-IF - Spécification d'API Secure Packager and Encoder Key Exchange

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

SPEKE API v1 - Personnalisations et contraintes liées à la spécification DASH-IF

La spécification DASH-IF CPIX, https://dashif.org/docs/DASH-IF-CPIX-v2-0.pdf, prend en charge un certain nombre de cas d'utilisation et de topologies. La spécification de l'API SPEKE est conforme à la spécification CPIX avec les personnalisations et contraintes suivantes :

  • SPEKE suit le flux de travail d'Encryptor Consumer.

  • Pour les clés de contenu chiffrées, SPEKE applique les restrictions suivantes :

    • SPEKE ne prend pas en charge la vérification de signature numérique (XMLDSIG) pour les charges utiles de demande ou de réponse.

    • SPEKE nécessite 2048 certificats basés sur la norme RSA.

  • Pour la rotation des flux de travail clés, SPEKE a besoin du ContentKeyUsageRule filtre. KeyPeriodFilter SPEKE ignore tous les autres ContentKeyUsageRule paramètres.

  • SPEKE omet cette fonctionnalité. UpdateHistoryItemList Si la liste est présente dans la réponse, SPEKE l'ignore.

  • SPEKE prend en charge la rotation des touches. SPEKE utilise uniquement le `ContentKeyPeriod@index pour suivre la période clé.

  • Pour prendre en charge le MSS PlayReady, SPEKE utilise un paramètre personnalisé sous la DRMSystem balise,. SPEKE:ProtectionHeader

  • Pour l'emballage HLS, si URIExtXKey est présent dans la réponse, il doit contenir toutes les données à ajouter dans le paramètre URI de la balise EXT-X-KEY d'une liste de lecture HLS, sans aucune autre exigence de signalement.

  • Pour la playlist HLS, sous la DRMSystem balise, SPEKE fournit les paramètres personnalisés optionnels speke:KeyFormat etspeke:KeyFormatVersions, pour les valeurs de la balise, KEYFORMATVERSIONS les paramètres KEYFORMAT et. EXT-X-KEY

    Le vecteur d'initialisation (IV) HLS suit toujours le numéro de segment, sauf s'il est explicitement spécifié par l'opérateur.

  • Lors de la demande de clés, le chiffreur peut utiliser l'attribut facultatif @explicitIV sur l'élément ContentKey. Le fournisseur de clés peut répondre avec un vecteur d'initialisation à l'aide de @explicitIV, même si l'attribut n'est pas inclus dans la requête.

  • Le chiffreur crée l'identifiant de clé (KID), qui reste le même quels que soient l'ID de contenu et la durée d'utilisation des clés. Le fournisseur de clés inclut KID dans sa réponse au document de demande.

  • Le fournisseur de clés peut contenir une valeur pour l'en-tête de réponse Speke-User-Agent, qui lui permet de s'identifier à des fins de débogage.

  • SPEKE ne prend actuellement pas en charge plusieurs pistes ou touches par contenu.

    Le crypteur compatible Speke agit en tant que client et envoie les POST opérations au point de terminaison du fournisseur clé. Le chiffreur peut envoyer une requête heartbeat périodique afin de s'assurer que la connexion entre le chiffreur et le point de terminaison du fournisseur de clés est saine.