Articulo de referencia

Vector de selección de clave

Un vector de selección de clave ( KSV ) es un identificador numérico asociado a un conjunto de claves de dispositivo que un licenciante o su representante distribuye a los adopt...

Un vector de selección de clave ( KSV ) es un identificador numérico asociado a un conjunto de claves de dispositivo que un licenciante o su representante distribuye a los adoptantes y se utiliza para admitir la autenticación de productos licenciados y la revocación como parte del sistema de protección de copia HDCP . El KSV se utiliza para generar claves confidenciales , específicamente utilizadas en el proceso de autenticación restringida de HDCP. La autenticación restringida es un método AKE para dispositivos con recursos informáticos limitados. Este método lo utilizan dispositivos de copia de cualquier tipo (como grabadoras DV o D-VHS ) y dispositivos que se comunican con ellos para autenticar contenido protegido. El protocolo de autenticación restringida utiliza gestión de claves asimétricas y criptografía de clave común , y se basa en el uso de secretos compartidos y funciones hash para responder a un desafío aleatorio . [ 1 ]

Protocolo de autenticación restringida

El objetivo de la autenticación restringida es que un dispositivo demuestre que posee un secreto compartido con otros dispositivos. Un dispositivo autentica a otro emitiendo un desafío aleatorio, cuya respuesta se genera combinando los secretos compartidos y múltiples hashes. Formalmente, un vector de selección de clave es un vector de 40 bits que contiene 20 unos y 20 ceros, y se utiliza para especificar el desafío aleatorio. El conjunto de claves del dispositivo es una colección de 40 valores de 56 bits, y es el conjunto de secretos compartidos para este protocolo.

Durante el proceso de autenticación , ambas partes (un transmisor y un receptor) intercambian sus KSV . Luego, cada dispositivo suma (suma sin signo módulo256{\displaystyle 2^{56}}) sus propias claves secretas de acuerdo con un KSV recibido de otro dispositivo. Si un bit particular en el KSV está establecido en 1, entonces la clave secreta correspondiente se usa en la suma y de lo contrario se ignora. Para cada conjunto de claves se crea una clave especial llamada KSV (Vector de Selección de Clave). Cada KSV tiene exactamente 20 bits establecidos en 0 y 20 bits establecidos en 1. Las claves y los KSV se generan de tal manera que durante este proceso ambos dispositivos obtienen el mismo número de 56 bits como resultado. Ese número se usa posteriormente en el proceso de cifrado .

Unicidad y revocación de las KSV

Dado que las claves válidas pueden verse comprometidas (por ejemplo, mediante ingeniería inversa de hardware), el esquema HDCP incluye un mecanismo para revocarlas. Los valores KSV son únicos para cada conjunto de claves y, por lo tanto, para cada dispositivo. El sistema HDCP compara estos valores con una lista de revocación, y la autenticación falla si el transmisor o el receptor aparecen en dicha lista. Las actualizaciones de la lista de revocación se incluyen con los nuevos soportes y se integran automáticamente en la lista de revocación del dispositivo. Esto significa que se puede limitar el daño en caso de que un conjunto de claves se vea expuesto o se copie.

Este proceso de revocación no afecta a otros dispositivos, incluso si son de la misma marca y modelo. En este sentido, los valores KSV son similares a los números de serie . Como ejemplo de cómo funciona este sistema, si dos clientes compraran el mismo modelo de televisor el mismo día en la misma tienda, y el primer cliente pirateara su televisor, la clave del primer cliente podría revocarse sin afectar la capacidad del televisor del otro cliente para reproducir contenido.

Ataques a la autenticación restringida

Si un atacante puede encontrar 40 vectores linealmente independientes (A1{\displaystyle A_{1}}) llaves ... (A40{\displaystyle A_{40}}Si obtienen las claves (es decir, los vectores generados al sumar el conjunto de claves de un dispositivo basado en un KSV), pueden vulnerar completamente el sistema HDCP para todos los dispositivos que utilicen un conjunto de claves determinado. En este punto, pueden extraer la matriz de claves secretas para cualquier número de KSV, lo que les permite acceder a los secretos compartidos utilizados en el protocolo de autenticación HDCP. Dado que las claves generadas a partir de los KSV se producen linealmente en el sistema dado (es decir, obtener una clave a partir de un KSV puede considerarse como una multiplicación de matrices), alguien podría determinar la matriz del conjunto de claves del dispositivo a partir de entre 40 y 50 sistemas diferentes.A1{\displaystyle A_{1}}....Anorte{\displaystyle A_{n}}y el KSV asociado (esta es información pública del protocolo).

En otros casos en los que las claves extraídas no son linealmente independientes, todavía es posible crear una nueva XKey para un nuevo Xksv que esté dentro del rango de (Ai{\displaystyle A_{i}})KSV (tomando combinaciones lineales) para los cuales se han encontrado las claves privadas. Sin embargo, no habrá garantía de que satisfagan la propiedad requerida que debe tener un KSV: 20 unos y 20 ceros. [ 2 ]

Estableciendo las ecuaciones

Suponiendo que hay 40 (Ai{\displaystyle A_{i}}) KSV que son linealmente independientes (y nombrando Xkeys la matriz de las claves en el conjunto de claves del dispositivo), esto da un conjunto de n ecuaciones lineales con 40 incógnitas.

[Xkeys] * (A1)ksv = = [(A1)keys] * Xksv[Xkeys] * (A2)ksv = = [(A2)keys] * Xksv...[Xkeys] * (A40)ksv = = [(A40)keys] * Xksv

Al tener reconocimiento en todos los KSV y asumiendo los vectores de clave secreta (Ai{\displaystyle A_{i}})las claves son conocidas, el algoritmo anterior se puede utilizar para encontrar las claves secretas para producir una nueva clave derivada a partir de un nuevo KSV arbitrario . Si el espacio abarcado por el (Ai{\displaystyle A_{i}})KSVs no abarca el espacio completo de 40 dimensiones, lo cual puede ser aceptable porque los KSVs no fueron diseñados para no abarcar el espacio , o bien solo se necesita un pequeño número de claves adicionales para encontrar un conjunto de vectores que abarque todo el espacio. Cada dispositivo adicional tiene una baja probabilidad de ser linealmente dependiente del conjunto existente (aproximadamente 1/2^[40-dimensionalidad-del-espacio-abarcado]. Este análisis de probabilidades de dependencia lineal es similar al análisis del algoritmo de Simon ). [ 2 ]

Véase también

Referencias

  1. Digital Content Protection, LLC. (8 de julio de 2009). "Sistema de protección de contenido digital de alto ancho de banda" (PDF) .
  2. 1 2 Irwin, Keith (2 de agosto de 2001). "Cuatro ataques sencillos contra HDCP" .
  • Debilidades aparentes del HDCP