API SPEKE v2 - 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.

API SPEKE v2

Il s'agit de l'API REST pour le Secure Packager and Encoder Key Exchange (SPEKE) v2. Utilisez cette spécification pour fournir une protection des droits d'auteur DRM aux clients qui utilisent le chiffrement. Pour être compatible avec Speke, votre fournisseur de clés DRM doit exposer l'API REST décrite dans cette spécification. Le chiffreur effectue des appels d'API vers votre fournisseur de clés.

Note

Les exemples de code présentés dans cette spécification sont fournis à des fins d'illustration uniquement. Vous ne pouvez pas exécuter les exemples, car ils ne font pas partie d'une implémentation SPEKE complète.

SPEKE utilise la définition de structure de données du format DASH Industry Forum Content Protection Information Exchange Format (DASH-IF-CPIX) pour l'échange de clés, avec certaines restrictions. DASH-IF-CPIXdéfinit un schéma pour fournir un échange multiDRM extensible entre la plate-forme DRM et le crypteur. Ainsi, le chiffrement de contenu est possible pour tous les formats d'emballage en vitesse de transmission adaptative au moment de la compression et de l'emballage du contenu. Les formats d'emballage en vitesse de transmission adaptative sont les suivants : HLS, DASH et MSS.

À partir de sa version 2.0, SPEKE est aligné sur une version CPIX spécifique :

Du côté SPEKE, cela est appliqué par l'utilisation de l'en-tête X-Speke-Version HTTP, et du côté CPIX par l'utilisation de l'attribut. CPIX@version L'absence de ces éléments dans les demandes est typique des anciens flux de travail SPEKE v1. Dans les flux de travail SPEKE v2, le fournisseur principal est censé traiter les documents CPIX uniquement s'il prend en charge les deux paramètres de version.

Pour des informations détaillées sur le format d'échange, consultez la spécification CPIX 2.3 du DASH Industry Forum.

Dans l'ensemble, SPEKE v2.0 apporte les évolutions suivantes par rapport à SPEKE v1.0 :

  • Toutes les balises de l'espace de noms XML SPEKE sont déconseillées au profit de balises équivalentes dans l'espace de noms XML CPIX

  • SPEKE:ProtectionHeaderest obsolète et remplacé par CPIX:DRMSystem.SmoothStreamingProtectionHeaderData

  • CPIX:URIExtXKey, SPEKE:KeyFormat et SPEKE:KeyFormatVersions sont obsolètes et remplacés par CPIX:DRMSystem.HLSSignalingData

  • CPIX@idest remplacé par CPIX@contentId

  • Nouveaux attributs CPIX obligatoires :, CPIX@version ContentKey@commonEncryptionScheme

  • Nouvel élément CPIX optionnel : DRMSystem.ContentProtectionData

  • Support pour plusieurs clés de contenu

  • Mécanisme de versionnement croisé entre SPEKE et CPIX

  • Évolution des en-têtes HTTP : nouvel X-Speke-Version en-tête, Speke-User-Agent en-tête renommé en X-Speke-User-Agent

  • Obsolète de l'API Heartbeat

Comme la spécification SPEKE v1.0 reste inchangée, il n'est pas nécessaire de modifier les implémentations existantes pour continuer à prendre en charge les flux de travail SPEKE v1.0.