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

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.

Secure Packager and Encoder Key Exchange 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-CPIX définit un schéma qui permet d'échanger de façon extensible des modèles de gestion des droits numériques entre la plateforme DRM et le chiffreur. 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.