Home Articoli tecnici BEST practice per la distribuzione di DRM in uno stack OTT su larga scala
Applications

BEST practice per la distribuzione di DRM in uno stack OTT su larga scala

About The Author

Outline

La gestione dei diritti digitali (DRM) è uno standard del settore che offre ai proprietari dei contenuti opzioni per proteggere i contenuti premium. Una soluzione DRM efficace deve funzionare con la maggior parte dei dispositivi di riproduzione, integrarsi facilmente nel flusso di lavoro e apparire trasparente per gli utenti. Se è in grado di supportare funzioni avanzate come la riproduzione offline, è molto meglio. Anche se il DRM potrebbe non essere una priorità assoluta per molti operatori di servizi di streaming, il suo impatto sull’esperienza di riproduzione dello spettatore non può essere un ripensamento.

L’obiettivo di qualsiasi sistema DRM è garantire che i contenuti video vengano archiviati e trasmessi in forma crittografata, in modo che solo gli utenti e i dispositivi autorizzati possano riprodurre i contenuti. DRM viene spesso frainteso come poco più della crittografia AES (Advanced Encryption Standard) a 128 bit su una piattaforma di streaming. In realtà, DRM è un sistema completo per la gestione dell’accesso ai contenuti. DRM fornisce la distribuzione sicura delle chiavi di crittografia e decrittografia insieme ai server di licenza back-end che aggiungono funzioni come il controllo dei criteri per impedire la riproduzione su hardware non autorizzato e il controllo della riproduzione offline.

DRM può essere implementato in uno dei tre modi seguenti. Il primo è quello di affrontare tutto lo sviluppo e l’integrazione da soli. Anche se questo richiede molto tempo, consente il massimo controllo e flessibilità. Il secondo è un approccio ibrido in cui si integra la soluzione DRM preconfezionata di un provider nel flusso di lavoro. La terza opzione utilizza una soluzione DRM come parte di un servizio di streaming gestito. Verizon Media Platform offre questo tipo di soluzione DRM. È integrato nel nostro flusso di lavoro video e attivato da un semplice ordine di assistenza. Ci assumiamo l’onere dello sviluppo e dell’integrazione. Ricordate che con le prime due opzioni, il DRM è più di un progetto una tantum: Richiede un programma continuo per stare al passo con gli standard e le tecnologie in evoluzione.

‍Proprietary DRM

I principali formati di streaming video di ‍Today hanno una propria integrazione di sistema DRM. Poiché le tecnologie DRM sono proprietarie, sono generalmente supportate solo su prodotti OEM specifici, anche se con un numero crescente di eccezioni. Ad esempio, Apple FairPlay è principalmente compatibile con il browser Web Apple Safari e con altri prodotti hardware e software Apple. Dal punto di vista di un servizio di streaming, la mancanza di compatibilità multipiattaforma implica la necessità di adottare una strategia multi-DRM e fornire contenuti confezionati e crittografati in più formati se si desidera coprire una gamma completa di dispositivi.

Sebbene sul mercato siano presenti molti sistemi DRM, da un punto di vista pratico, i servizi di streaming devono solo preoccuparsi dei tre principali sistemi per ottenere il supporto di praticamente tutti i browser Web, i dispositivi e i TV:

  • Streaming Apple FairPlay (FPS): I contenuti FairPlay possono essere riprodotti principalmente su dispositivi Apple, tra cui le piattaforme Safari, iOS e Apple TV.
  • Google Widevine – questa soluzione DRM copre tutti i browser Web Chrome e Firefox e i dispositivi Android e Chromecast.
  • Microsoft PlayReady – i contenuti protetti da questa soluzione DRM possono essere riprodotti su Roku, Xbox,
  • Browser Microsoft Edge e un’ampia gamma di altre piattaforme e smart TV tramite SDK.

La situazione migliora se si considera la crittografia sottostante, in cui sono in corso iniziative di standardizzazione per semplificare la frammentazione del mercato DRM. Sia Widevine che PlayReady supportano la crittografia comune (CENC) e MPEG-DASH, il che significa che è possibile crittografare e confezionare i contenuti una volta e decrittografare tali risorse utilizzando entrambi i sistemi DRM. Fairplay utilizza la crittografia CBC 128-AES (o modalità di campionamento a concatenamento dei blocchi di cifratura) e il packaging HLS. I CBC sono supportati anche in alcuni dispositivi di riproduzione DASH più recenti. Il mercato sembra convergere sui CBC per la crittografia comune, ma altre cifrature dovranno essere supportate a lungo.

Sfide ‍Multi-DRM

Nel caso della nostra piattaforma, cifriamo immediatamente i contenuti al momento dell’acquisizione in più formati ‍In. Il nostro packaging DASH predefinito e la crittografia utilizzano la crittografia completa AES-CTR perché è la più compatibile tra i dispositivi (anche se i dispositivi più recenti possono supportare I CBC). Inoltre, utilizziamo per impostazione predefinita packaging per flussi di trasporto e crittografia CBC per Fairplay, poiché è il più compatibile con l’intera gamma di dispositivi. Sebbene coprano la maggior parte dei dispositivi e dei giocatori di tutto il mondo, aggiungono complessità e aumentano i costi di storage. Tenere presente che con il bitrate adattivo (ABR), abbiamo a disposizione ben più di due o tre file diversi: Possono essere 15 o più segmenti diversi per ogni blocco di 4 o 2 secondi di tempo di riproduzione quando si tiene conto di tutti i bit rate.

La situazione sta lentamente migliorando. Il settore sta procedendo verso l’adozione di una specifica chiamata Common Media Application Format (CMAF) che potrebbe consentire di raggiungere gli schermi della maggior parte dei consumatori con un unico set di file abilitato per DRM. Attualmente, CMAF funziona già su molti dispositivi e lettori DASH e HLS. Laddove è opportuno, possiamo utilizzare la logica di generazione dinamica dei manifesti per creare manifesti HLS con crittografia conforme a CMAF e CBC per supportare dispositivi aggiuntivi.

La codifica di tutti questi set di file diventa un problema molto più grande in scala. Abbiamo risolto questo problema sfruttando la scalabilità del cloud. Quando la nostra affettatrice carica un file alla velocità di trasmissione più alta, invia ogni strato a un broker che esegue il lavoro su un enorme cluster di codifica. Eseguendo le operazioni di codifica in parallelo, è possibile creare rapidamente tutti i file necessari per ciascuna velocità di trasmissione, formato contenitore e combinazione di algoritmo di crittografia con latenza minima.

Comprendere le sfumature della codifica di crittografia, del packaging e del superamento dei requisiti di storage ed elaborazione è solo la punta dell’iceberg per quanto riguarda le complessità associate a un’implementazione multi-DRM. Altre sfide includono:

  • Garantire la coerenza delle user experience su tutti i dispositivi con l’acquisizione senza ritardi delle chiavi dai server DRM
  • Restare sempre aggiornati sui dispositivi client in continua evoluzione e sugli SDK associati, insieme alle variazioni del sistema operativo
  • Conformità ai parametri ECP (Enhanced Content Protection) definiti da MovieLabs e altri, per i contenuti premium e UHD
  • Monitoraggio e adesione a contratti di licenza e protezione complessi, come il time shift, la visualizzazione catch-up, l’utilizzo di DVR basati su cloud e la riproduzione offline

Per soddisfare questa serie completa di requisiti e garantire che i contenuti siano protetti in tutto il flusso di lavoro, è necessario sviluppare una soluzione di gestione delle chiavi, impostare server di licenza e definire e gestire policy di sicurezza che determinano le condizioni in cui i contenuti possono essere riprodotti. La nostra piattaforma, ad esempio, dispone di un insieme predefinito di policy che sono appropriate per la maggior parte delle circostanze. Lo strumento di configurazione dei criteri DRM di Studio consente di configurare facilmente questi criteri per ciascun utente. I criteri sono implementati sui server delle licenze e possono coprire varie variabili, come l’applicazione del livello di sicurezza o le restrizioni di output, la durata della chiave, la durata della riproduzione e se è consentito il noleggio offline. Anche le opzioni relative ai criteri possono variare considerevolmente a seconda delle DRM.

La gestione di ‍Key è fondamentale

Come per la gestione delle policy, la piattaforma deve gestire tutti gli aspetti della gestione delle chiavi e delle licenze per garantire che le chiavi siano protette nell’intero flusso di lavoro. La sicurezza è facilmente realizzabile con la piattaforma completamente integrata di Verizon Media, ma se si intende utilizzare servizi separati, è necessario un modo per trasmettere le chiavi in modo sicuro dagli encoder alla soluzione DRM di terze parti. Ciò comporta un notevole lavoro per implementare uno standard come Secure Packager e encoder Key Exchange (SPEKE), in modo che le chiavi possano codificare il contenuto esternamente e quindi essere consegnate ai server di licenza. Mantenere tutto sulla stessa rete evita questo passaggio e semplifica l’implementazione.

Una volta incorporata l’infrastruttura DRM nel flusso di lavoro, la sfida successiva è l’integrazione dei giocatori. È qui che abbiamo trascorso molto tempo attraverso l’SDK di ciascun giocatore per assicurarsi che non ci fossero problemi. Una sfida si è rivelata essere l’inserimento di annunci sul lato server (SSAI). Poiché disponiamo di un’ampia libreria di annunci codificati separatamente da unire in eventi live e canali live, questi annunci non possono condividere tutti le stesse chiavi di crittografia di ogni evento live e canale sulla piattaforma. Per risolvere questo problema, gli annunci devono essere crittografati con singole chiavi diverse dal flusso in cui sono inseriti, reimballati al volo per ogni flusso univoco o inseriti nel flusso senza crittografia.

Queste variazioni complicano la riproduzione in live streaming. Ad esempio, alcuni giocatori non supportano la commutazione delle chiavi DRM a metà flusso. Anche con questo supporto, la commutazione può causare un effetto notevole sull’esperienza di riproduzione. Potrebbe essere necessario svuotare completamente il buffer dei frame e avviare una nuova chiave prima che i frame con la nuova chiave possano essere messi in coda. In questo modo, alcune piattaforme potrebbero presentare problemi visibili.

Queste sfide ci hanno portato a lasciare gli annunci non crittografati per garantire migliori prestazioni dei giocatori ed evitare la necessità di eseguire un cambiamento chiave ogni volta che viene visualizzato un nuovo annuncio. Gli annunci non crittografati offrono inoltre prestazioni del server migliori rispetto alla ri-crittografia degli annunci al volo, poiché non è necessario riimballare ogni annuncio con ogni combinazione di chiavi di flusso di cui potremmo aver bisogno. L’uso di annunci non crittografati complica leggermente le cose per i giocatori, non solo utilizzando la stessa chiave. Tuttavia, molti progetti di giocatori hanno assicurato che questo è uno scenario di riproduzione supportato negli ultimi anni.

Abbiamo inoltre lavorato per semplificare il funzionamento degli URL delle licenze, rendendoli più convenienti per giocatori specifici. Abbiamo ottenuto questo risultato inserendo prima gli URL del server di licenza nel manifesto, quindi se un giocatore ha il supporto per la lettura dell’URL, non è necessario fornirli separatamente. Quindi codifichiamo tutti i dati specifici della sessione nella casella intestazione specifica dello schema di protezione (PSSH) del manifesto. Ciò consente ai giocatori di utilizzare un URL del server di licenza molto semplice per le richieste di licenza senza ulteriori dati di intestazione o parametri URL. L’utilizzo dello stesso URL di licenza per lettori e flussi significa che l’integrazione della riproduzione DASH diventa estremamente semplice sulla nostra piattaforma.

‍Toward integrazione DRM più semplice

Uno degli obiettivi generali della nostra piattaforma è semplificare e semplificare lo streaming per i provider di servizi. Stiamo continuando a espandere il nostro uso di lettori open source come Shaka Player, una libreria JavaScript open source per la riproduzione ABR. Abbiamo anche collaborato con THEOplayer, una popolare soluzione di lettore video universale. La nostra piattaforma è in continua evoluzione per stare al passo con i mutevoli standard di crittografia e le tecnologie DRM. Sappiamo che a molte aziende non piace lavorare con DRM, quindi più possiamo rendere questo compito di sicurezza critico come qualsiasi altro elemento di una lista di controllo, meglio è.