Lección
La teoría — Rotación de claves de una emisión en directo
Una clave de contenido es la clave AES que cifra el contenido multimedia. Un reproductor la obtiene dentro de una licencia de un servidor de licencias, expedida para ese único dispositivo. La rotación de claves sustituye la clave de contenido cada criptoperíodo mientras dura una emisión en directo, de modo que el reproductor necesita una clave nueva cada vez. En una jerarquía de claves, la licencia lleva en su lugar una clave raíz, y las claves de contenido, allí llamadas claves hoja, viajan dentro de la propia emisión y solo se pueden usar con la raíz.
Qué significa cada símbolo
T- el criptoperíodo, el tiempo que una clave de contenido está en uso, en segundos
N- los espectadores que la ven al mismo tiempo
w- la distancia a la que sus posiciones de reproducción se sitúan por detrás del directo, que es la ventana en la que todos cruzan un límite de clave
R- cuánto dura una clave raíz en una jerarquía, en horas
- Supone
- Asume una petición de licencia por espectador en cada límite, que contiene todas las claves del período, y que todos los espectadores miran durante toda la emisión. Si se piden al cambiar, las peticiones se distribuyen de forma uniforme a lo largo de los w segundos posteriores a un límite; si se piden por adelantado, de forma uniforme durante todo el período. Las llegadas reales se agrupan y dispersan en torno a esas medias y un servidor se dimensiona con margen para ello, por lo que los picos aquí mostrados son el mínimo que debe soportar un servidor. Se omiten los espectadores que se unen y se van, los reintentos tras una petición fallida y la licencia que cada reproductor pide al empezar.
- Falla cuando
- Falla cuando la clave que se filtra es la del propio dispositivo. La rotación limita lo que abre una clave de contenido y una jerarquía limita lo que abre una clave raíz, pero un reproductor al que se le ha extraído su clave de dispositivo puede seguir pidiendo, o desenvolviendo, cada clave que el servicio emite. En ese caso no hay criptoperíodo que sirva de ayuda. Al dispositivo hay que denegarle sus licencias, o, donde no hay un servidor de licencias que las deniegue, revocarlo, que es lo que cuenta la página de revocación de dispositivos.
Problema resuelto al detalle
-
¿Puede un servidor de licencias soportar una final? 4 pasos
¿Cómo de corto puede ser el criptoperíodo? Pulsa Una final de copa: 3.000.000 de espectadores, las claves rotan cada dos minutos y se piden por adelantado, 25.000 peticiones por segundo. El servidor de licencias está preparado para 20.000. Encuentra el criptoperíodo más corto que puede soportar con las claves pedidas por adelantado, lo que le exigiría pedirlas al cambiar, y lo que costaría en su lugar una clave raíz diaria pedida por adelantado.
Abre este problema en la herramienta
-
Pedidas por adelantado, cada espectador pide una vez por período y las peticiones se reparten de manera uniforme a lo largo del mismo, por lo que la carga es N/T. Tiene que mantenerse igual o por debajo de las 20.000 del servidor.
-
A dos minutos la carga es 1,25 veces la capacidad nominal. Despeja T en su lugar: no menos de 150 segundos.
-
Pedidas al cambiar, toda la audiencia pide dentro de los 10 segundos sobre los que se dispersan sus posiciones de reproducción: 300.000 por segundo, quince veces la capacidad, en cada límite. T no aparece en N/w, así que ningún criptoperíodo lo arregla; solo lo harían posiciones de reproducción separadas por 150 segundos.
-
En una jerarquía con una raíz diaria cuyas licencias se piden en momentos aleatorios durante el día anterior, las únicas peticiones son las raíces, N durante los 86.400 segundos de un día.
Respuesta
Al menos 150 s pedidas por adelantado, 300.000 por segundo al cambiar, 34,72 por segundo con una raíz diaria pedida por adelantado. La rotación a dos minutos no encaja en este servidor por ninguna de las vías en las que las claves de contenido se entregan una a una, y a dos minutos y medio encaja sin ningún margen. La jerarquía cabe 576 veces y paga por ello de la forma que indica la tercera conclusión: una clave raíz filtrada abre un día entero de la final.
-
Referencias (2)
- The three delivery modes the page compares, and its three quotations: key rotation signalled in-band so every player asks at once (§9.3), the key hierarchy with a root licence once a day (§9.4), and rotation's purpose stated as re-authorisation rather than security (§9.2): DASH Industry Forum, DASH-IF Interoperability Points, Part 6: Content Protection. DASH-IF IOP-6 V5.0.0, January 2022, clause 9 Key rotation.
- How a packager is handed one content key per crypto period, why a stream carries several keys at once, and the two-level root and leaf hierarchy: DASH Industry Forum, DASH-IF Implementation Guidelines: Content Protection Information Exchange Format (CPIX), version 2.2, §6.2 Key Rotation Support and §6.3 Hierarchical Keys.