API SPEKE v1: Personalizações e restrições para a especificação do DASH-IF - Especificação da API do Secure Packager and Encoder Key Exchange

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

API SPEKE v1: Personalizações e restrições para a especificação do DASH-IF

A especificação CPIX do DASH-IF https://dashif.org/docs/DASH-IF-CPIX-v2-0.pdf suporta vários casos de uso e topologias. A especificação da API SPEKE adere à especificação CPIX com as seguintes personalizações e restrições:

  • O SPEKE segue o fluxo de trabalho de criptografador e consumidor.

  • Para chaves de conteúdo criptografadas, o SPEKE aplica as seguintes restrições:

    • O SPEKE não oferece suporte à verificação de assinatura digital (XMLDSIG) para cargas de solicitação ou resposta.

    • O SPEKE exige 2048 certificados baseados em RSA.

  • Para fluxos de trabalho de chaves rotativas, o SPEKE requer o ContentKeyUsageRule filtro, KeyPeriodFilter. O SPEKE ignora todas as outras ContentKeyUsageRule configurações.

  • O SPEKE omite a funcionalidade UpdateHistoryItemList. Se a lista estiver presente na resposta, o SPEKE vai ignorá-la.

  • O SPEKE suporta alternância de chaves. O SPEKE usa somente o `ContentKeyPeriod@index para rastrear o período chave.

  • Para oferecer suporte ao MSS PlayReady, o SPEKE usa um parâmetro personalizado sob a DRMSystem tag,. SPEKE:ProtectionHeader

  • Para o empacotamento HLS, se URIExtXKey estiver presente na resposta, ele deve conter os dados completos para adicionar no parâmetro de URI da tag EXT-X-KEY de uma lista de reprodução HLS, com nenhum outro requisito de sinalização.

  • Para a lista de reprodução HLS na tag DRMSystem, o SPEKE fornece os parâmetros personalizados opcionais speke:KeyFormat e speke:KeyFormatVersions para os valores dos parâmetros KEYFORMAT e KEYFORMATVERSIONS da tag EXT-X-KEY.

    O vetor de inicialização (IV) HLS sempre segue número do segmento, a menos que especificado explicitamente pelo operador.

  • Ao solicitar chaves, o criptografador pode usar o atributo opcional @explicitIV no elemento ContentKey. O provedor de chaves pode responder com um IV usando @explicitIV, mesmo se o atributo não estiver incluído na solicitação.

  • O criptografador cria o identificador de chaves (KID), que permanece o mesmo para qualquer período de chave e ID de conteúdo. O provedor de chaves inclui o servidor KID na resposta ao documento da solicitação.

  • O provedor de chaves pode incluir um valor para o cabeçalho da resposta Speke-User-Agent, para se identificar para fins de depuração.

  • O SPEKE não oferece suporte a vários controles ou chaves por conteúdo.

    O criptografador em conformidade com o SPEKE atua como um cliente e envia operações POST ao endpoint do provedor de chaves. O criptografador pode enviar uma solicitação heartbeat periódica para garantir a integridade da conexão entre o criptografador e o endpoint do provedor de chaves.