ES2373131T3 - Distribución segura de contenido utilizando claves de descifrado. - Google Patents

Distribución segura de contenido utilizando claves de descifrado. Download PDF

Info

Publication number
ES2373131T3
ES2373131T3 ES08150990T ES08150990T ES2373131T3 ES 2373131 T3 ES2373131 T3 ES 2373131T3 ES 08150990 T ES08150990 T ES 08150990T ES 08150990 T ES08150990 T ES 08150990T ES 2373131 T3 ES2373131 T3 ES 2373131T3
Authority
ES
Spain
Prior art keywords
key
content
encrypted content
encrypted
initial
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
ES08150990T
Other languages
English (en)
Inventor
Augustin J. Farrugia
Gianpaolo Fasoli
Jean-Francois Riendeau
Rod Schultz
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Apple Inc
Original Assignee
Apple Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Apple Inc filed Critical Apple Inc
Application granted granted Critical
Publication of ES2373131T3 publication Critical patent/ES2373131T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0457Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply dynamic encryption, e.g. stream encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/60Digital content management, e.g. content distribution
    • H04L2209/603Digital right managament [DRM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/101Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying security measures for digital rights management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/068Network architectures or network communication protocols for network security for supporting key management in a packet data network using time-dependent keys, e.g. periodically changing keys

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Storage Device Security (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Reverberation, Karaoke And Other Acoustics (AREA)

Abstract

Un procedimiento para descifrar contenido cifrado, que comprende las etapas de: proporcionar el contenido cifrado; comprendiendo el contenido cifrado una pluralidad de fragmentos que proporcionan un valor inicial de clave (CK0); dividir cada fragmento del contenido cifrado en una pluralidad de partes; generar una primera clave usando el valor inicial de clave; descifrar una primera de dichas partes, usando la primera clave; generar una segunda clave usando el valor inicial de clave, difiriendo la segunda clave de la primera; y descifrar una segunda de dichas partes, usando la segunda clave, en donde, en la partición, la pluralidad de partes difieren en longitud, según lo determinado por un algoritmo de fragmentación, y en donde el algoritmo de fragmentación varía entre fragmentos del contenido cifrado, de modo tal que distintos fragmentos del contenido se fragmenten de maneras distintas.

Description

Distribución segura de contenido utilizando claves de descifrado
CAMPO DE LA INVENCIÓN
Esta invención se refiere a la distribución de contenido usando un sistema criptográfico y, más específicamente, a la 5 gestión de claves.
ANTECEDENTES
La protección del contenido digital transferido entre ordenadores por una red es importante para muchas empresas. Las empresas intentan asegurar esta protección implementando alguna forma de proceso de gestión de derechos digitales (DRM). El proceso de DRM a menudo implica cifrar el fragmento de contenido (p. ej., cifrando la forma binaria
10 del contenido) a fin de restringir la utilización a aquellos a los que se ha concedido un derecho sobre el contenido. El contenido en esta situación implica material alfanumérico, material de audio, tal como música, y material de vídeo. También implica, por supuesto, las combinaciones de los mismos.
La criptografía es el procedimiento tradicional de proteger datos en tránsito por una red de ordenadores. En su aplicación habitual, la criptografía protege las comunicaciones (mensajes), entre dos partes mutuamente confiables, del 15 robo o de los piratas, por un ataque sobre los datos en tránsito. Sin embargo, para muchas aplicaciones de transferencia de ficheros digitales (p. ej., para la transferencia de contenido de audio o vídeo), en cambio, el participante que recibe el contenido (es decir, el participante receptor) podría tratar de violar el cifrado de DRM que el participante que proporcionó el contenido (es decir, el participante distribuidor) aplicó al contenido. Por tanto, en este caso, el receptor no es un participante de fiar per se, pero la cuestión es proteger al distribuidor que posee el contenido
20 de su mal uso por parte del participante receptor. Además, con la proliferación de ataques de penetración de redes, un tercero bien puede obtener acceso al ordenador del participante receptor y, por tanto, al contenido protegido.
El documento EP 1361692 describe un sistema de cifrado / descifrado que cifra / descifra los datos digitales, incluso pares de información de cabecera y un cuerpo de datos. El sistema incluye una unidad de generación de claves de trabajo de cifrado, una unidad de cifrado, una unidad de generación de claves de trabajo de descifrado y una unidad de
25 descifrado.
El documento WO 2007022033 describe la protección del contenido de medios de flujos elementales. Se identifican segmentos de datos dentro del contenido de medios de flujos elementales. Cada segmento de datos incluye una única trama de vídeo o audio.
El documento DE10223217 describe un procedimiento para cifrar / codificar paquetes de datos en el cual los paquetes
30 de datos comprenden bloques de datos, y en el cual los paquetes de datos son contados por un primer contador, y los bloques de datos son contados por un segundo contador, y se comprueba una secuencia criptográfica de bits.
En muchos sistemas de DRM en uso actualmente, el eslabón más débil en la seguridad no son los datos cifrados (mensaje) sino la gestión y manipulación de claves criptográficas. Como es bien conocido, los modernos sistemas criptográficos usan claves que son cadenas de valores digitales para fines tanto de cifrado como de descifrado. Por
35 ejemplo, uno de los sistemas de DRM más exitosos, que distribuye música en línea, requiere que el ordenador del participante receptor mantenga la clave no cifrada para cada pieza de música cifrada en una “bolsa de claves“ (repositorio) que está cifrado en sí mismo.
Este enfoque tiene desventajas. Al cifrar la bolsa de claves en lugar de las claves contenidas en la bolsa de claves, esto expone a las claves a un ataque potencial. De manera similar, para reproducir un fragmento de contenido, el
40 ordenador del participante receptor debe descifrar la bolsa de claves entera, recuperar la clave para un fragmento específico de contenido y descifrar el contenido con la clave recuperada.
Este enfoque también permite, desventajosamente, que distintos dispositivos usen distintos formatos para sus bolsas de claves. El uso de distintos formatos de bolsas de claves para distintos dispositivos expone adicionalmente las claves a la penetración cuando el contenido se transfiere entre dispositivos.
45 La mayoría de los sistemas actuales de DRM cifran el contenido con una “clave de contenido” que se aplica a un algoritmo de cifrado a granel, tal como AES, DES triple o RC4. Estos son sistemas de cifrado bien conocidos. Habitualmente, estos son sistemas de claves simétricas, es decir, se usa la misma clave para el cifrado y para el descifrado. Con este procedimiento, el contenido entero se cifra con una única clave de contenido. Normalmente, por supuesto, es relativamente fácil para los usuarios compartir los ficheros cifrados de forma no autorizada. Sin embargo,
50 sin la clave de contenido, tales ficheros compartidos son inservibles. En los casos en que se descubre la clave del contenido, por ejemplo, por parte de piratas u otros usuarios no autorizados, la clave del contenido a menudo se publica y se deja disponible para el público. Esto reduce significativamente la seguridad del sistema y permite la descarga no autorizada y el descifrado exitoso del contenido sin permiso, lo que es extremadamente indeseable para el dueño del contenido. Usualmente, los atacantes o piratas comparten el proceso de descubrimiento, además de las mismas claves y, como resultado, incluso se descubren y se publican más claves en una base de datos pública. Los usuarios menos experimentados, que pueden no ser capaces de usar el proceso de descubrimiento, pueden luego
5 acceder a la base de datos, que a menudo se proporciona en una sede de la red, para ver si la clave de contenido para su fragmento específico de contenido, por ejemplo, una pieza específica de música o de vídeo, está publicada y, a su vez, violar la protección de copia del material que han obtenido sin pagar por ello. Se ha hallado que este tipo de ataque, también conocido como un ataque de diccionario, es exitoso.
Es bien conocido que un ataque puede descubrir la clave de contenido asociada a cada fragmento de contenido.
10 Específicamente, la clave de contenido habitualmente queda disponible durante la reproducción en la memoria del dispositivo de reproducción (que es un ordenador o, por ejemplo, un reproductor de música o vídeo digital), o incluso durante más tiempo, cuando el usuario final hace una pausa durante la reproducción. Ya han sido implementadas implementaciones específicas de DRM que protegen contra este “ataque pausado”.
Este problema del ataque de diccionario está tornándose más dañino para los propietarios del contenido digital
15 distribuido, especialmente porque hay sólo unos pocos sistemas exitosos, actualmente disponibles comercialmente, para la distribución de vídeos y de audio. Dado que hay solamente unos pocos sistemas tales, los piratas, centrándose en el contenido disponible mediante esos sistemas y publicando las claves de contenido, han hecho el uso no autorizado del contenido aún más fácil.
En un típico sistema de DRM, los fragmentos de contenido digital cifrado son mantenidos en un servidor central por el
20 propietario del contenido o el operador del servicio. Los usuarios descargan luego a su ordenador, mediante Internet, fragmentos específicos de contenido, tal como una canción o un programa de vídeo. El material descargado se descarga habitualmente en forma cifrada y la clave de contenido también se transmite, a menudo en una transmisión por separado. Esto se hace a cambio de alguna forma de pago. El usuario puede luego reproducir el contenido descifrándolo en su ordenador o reproductor. Este proceso es transparente al usuario si ha adquirido un fragmento no
25 autorizado de contenido digital, ya que la clave acompaña al fichero descargado y el software instalado en el ordenador del usuario descifra el fichero. También es posible para el usuario descargar el fichero digital a un reproductor de medios. Habitualmente, esta segunda descarga también se realiza en estado cifrado y luego el descifrado tiene lugar al reproducirse en el reproductor. Nuevamente, esto es transparente para el contenido debidamente adquirido. En general, se ha hallado que lo mejor es que el descifrado tenga lugar solamente con la reproducción, por motivos de
30 seguridad. Por supuesto, si la clave de contenido está comprometida según lo descrito anteriormente, es decir, está publicada, cualquiera puede acceder a la canción, y las transferencias de los ficheros cifrados a usuarios no autorizados pueden llevarse a cabo fácilmente, y luego ellos pueden aplicar la clave de descifrado, incluso aunque no estén autorizados para hacerlo.
Por lo tanto, los actuales inventores han determinado que este tipo del llamado ataque de diccionario, por el cual las 35 claves se publican y se distribuyen públicamente a usuarios no autorizados, es un problema significativo.
SUMARIO
De acuerdo a esta divulgación, se divulga un aparato según la Reivindicación 20. En una técnica de cifrado en bloque bien conocida, un mensaje específico, en lugar de ser cifrado usando una única clave, se fragmenta, en cambio, en un cierto número de partes, y cada parte se cifra individualmente. Sin embargo, en los típicos cifrados anteriores en
40 bloque, se usa la misma clave para cada bloque del mensaje. Si bien esto es satisfactorio para los enfoques tradicionales de cifrado, donde habitualmente cada mensaje se envía solamente una vez, no es adecuado para la situación actual, donde un fragmento específico de contenido puede distribuirse a decenas o cientos de miles de usuarios con la misma clave.
Por lo tanto, según esta divulgación, cada fragmento de contenido cifrado, cuando se distribuye, está acompañado por
45 un valor inicial de clave. Con fines de descifrar el contenido, se genera una primera clave a partir del valor inicial de clave, usando una función (predeterminada) conocida. El contenido, para los fines del cifrado (y del descifrado posterior), se fragmenta en una pluralidad de partes o bloques. Estas no necesariamente deben ser de igual longitud. La primera clave generada a partir del valor inicial de clave se usa para descifrar la primera parte o bloque del mensaje. Sin embargo, esa clave no es útil para los bloques restantes. En lugar de que se use solamente una clave para
50 descifrar el fragmento entero de contenido (mensaje), un típico fragmento de contenido (canción o vídeo, por ejemplo) tiene múltiples claves.
Esto hace que el ataque de diccionario anteriormente descrito sea muy insatisfactorio, ya que los piratas, en lugar de publicar solamente una única clave o valor de clave para cada fragmento de contenido, deben publicar un gran número de ellas y, además, dado que la longitud de los bloques puede variar entre canción y canción, o incluso dentro de una
55 canción (fragmento de contenido), incluso la disponibilidad de la lista entera de claves no proporciona un descifrado adecuado, ya que también hay que conocer, con fines de descifrado, una longitud de cada bloque.
El valor inicial de clave se usa para calcular una primera clave, y luego la primera clave se usa para generar una segunda clave, usando una función predeterminada, y se genera una tercera clave usando la segunda clave y la función predeterminada, etc. Esto es útil cuando el contenido está concebido para ser descifrado bloque a bloque, en orden. Así, cada clave es una función de la clave precedente.
5 Las longitudes de los bloques o partes de cada fragmento de contenido (mensaje) no necesariamente deben ser uniformes de mensaje a mensaje, o incluso dentro de un mensaje (fragmento de contenido). En cambio, puede usarse un específico algoritmo de fragmentación, de modo tal que las longitudes de bloques difieran, haciendo adicionalmente difícil el descifrado no autorizado. Por supuesto, debe haber una manera de comunicar el procedimiento y los parámetros asociados, por los cuales el mensaje se fragmenta en bloques, al usuario, de modo que su dispositivo de
10 reproducción puede descifrar el mismo. En una realización, esto se logra añadiendo información al bloque de vídeo relacionado con el proceso de descifrado.
Según esta divulgación, se contempla un procedimiento de descifrado del contenido, según se describe en la reivindicación 1, y también el procedimiento complementario de descifrado, en la reivindicación 8. También se proporciona un producto de ordenador, según lo estipulado en la reivindicación 18, que incluye un medio de
15 almacenamiento que almacena código de ordenador para llevar a cabo el procedimiento del cifrado y, por separado, un producto de ordenador para llevar a cabo el procedimiento del descifrado. También se contempla un aparato para descifrar contenido previamente cifrado, según se estipula en la reivindicación 19. El aparato para el cifrado de la reivindicación 20 residiría habitualmente en un servidor central, incluyendo el aparato al servidor, e incluyendo al software para llevar a cabo el cifrado.
20 BREVE DESCRIPCIÓN DE LOS DIBUJOS
La Fig. 1 muestra un sistema de distribución de contenido en el cual funcionarían el presente procedimiento y aparato.
La Fig. 2 muestra un procedimiento y aparato asociado, según esta invención, para el cifrado.
La Fig. 3 muestra un procedimiento y aparato asociado, según esta invención, para el descifrado.
DESCRIPCIÓN DETALLADA
25 La Fig. 1 ilustra una distribución 100 de contenido que es el entorno convencional en el cual se emplearían habitualmente el procedimiento y el aparato según esta invención. Este es un sistema bien conocido, según lo anteriormente descrito, por ejemplo, para la distribución de música, vídeos, etc., del cual están ahora comercialmente disponibles varios tipos. Este sistema de distribución de contenido distribuye contenido de una manera tal que protege los derechos digitales, es decir, garantiza el uso legal del contenido. El sistema 100 de distribución de contenido incluye
30 un servidor (o conjunto de servidores) de DRM y un dispositivo 115 de usuario receptor de contenido. El dispositivo 115 es habitualmente un ordenador o su equivalente. Si bien solamente un dispositivo 115 de usuario se muestra en la Fig. 1, el sistema 100 de distribución de contenido puede servir a muchos dispositivos similares en las típicas realizaciones comerciales. Si bien la Fig. 1 ilustra un dispositivo 115 de usuario como un ordenador portátil, podría ser, por ejemplo, un ordenador de sobremesa, una agenda electrónica (PDA), un teléfono celular, un reproductor de audio, un
35 reproductor de vídeo o cualquier otro dispositivo de usuario capaz de recibir contenido en línea. El dispositivo 115 de usuario se conecta con el conjunto 110 de servidores de DRM a través de una red 120 de ordenadores, tal como una red de área local, una red de área amplia o una red de redes, tal como Internet.
A través de la conexión de red, el dispositivo 115 de usuario se comunica con el conjunto de servidores 110 de DRM para adquirir, licenciar, actualizar u obtener contenido de otra manera. Si bien en algunas realizaciones, el conjunto 110
40 de servidores de DRM vende o licencia contenido a dispositivos de usuario, en otras realizaciones no es este el caso, y el conjunto 110 de servidores de DRM puede sencillamente ejecutar la distribución del contenido a dispositivos de usuario autorizados, sin implicación de intercambio financiero.
En algunas realizaciones, el conjunto 110 de servidores de DRM incluye un servidor de almacenamiento de contenido en memoria caché que proporciona contenido cifrado a un dispositivo 115 de usuario a través de la red 120, después
45 de que otro servidor en el conjunto 110 de servidores de DRM determina que el dispositivo 115 de usuario puede obtener el contenido, por ejemplo, si ha sido pagado. En ciertas realizaciones, el sistema 100 puede incluir múltiples servidores de memoria caché para almacenar en memoria caché el contenido en diversas ubicaciones en la red, a fin de mejorar la velocidad y eficacia de la descarga por la red.
En algunas realizaciones, el contenido descargado se copia desde el dispositivo 115 del usuario a uno o más
50 dispositivos distintos de usuario. Por ejemplo, la Fig. 1 ilustra al otro dispositivo 125 de usuario como un reproductor portátil de medios. El dispositivo 125 puede ser cualquier dispositivo capaz de utilizar el contenido descargado. Puede ser un reproductor de música, un reproductor de vídeo, una consola de juegos, una cámara, etc. El reproductor portátil de medios está habitualmente conectado con el dispositivo 115 de usuario mediante una conexión convencional de datos locales, tal como una conexión de bus universal en serie (USB), IEEE 1394, infrarroja, inalámbrica o cualquier otro tipo de conexión conocida. En la mayoría de las situaciones, el dispositivo informático 115 puede reproducir por sí mismo el contenido, o bien puede usarse como un intermediario para descargar al reproductor 125. El uso del dispositivo intermedio 115 se debe habitualmente a que la mayoría de los reproductores 125 no tienen actualmente la interfaz de usuario requerida, o la conectabilidad con Internet, para descargar contenido. Sin embargo, se contempla
5 que podrán en el futuro y, en ese caso, se puede prescindir del ordenador intermediario 115; tales productos incluso han sido anunciados. De esta manera, el descifrado y la reproducción del contenido puede tener lugar bien en el dispositivo informático 115 o bien en el dispositivo 125 de usuario.
Se reconoce que el procedimiento actual no es conforme a los estándares usuales para el cifrado seguro. Esto es porque, una vez que se conoce el algoritmo o proceso para calcular las claves a partir del valor inicial de clave, es 10 relativamente fácil que lo haga un pirata. Sin embargo, según se ha observado anteriormente, el cifrado actual no es para el tipo estándar de cifrado seguro, por ejemplo, para transacciones financieras, sino que, en cambio, está concebido para ser usado en el contexto de la distribución masiva de ficheros de música y de audio. Estos se distribuyen habitualmente a un coste muy bajo, entre 1 y 5 dólares estadounidenses cada uno, y los altos niveles de cifrado no son necesariamente deseables, porque pueden retardar la distribución y el descifrado, es decir, el acceso al 15 contenido. En cambio, el objetivo aquí es derrotar al ataque de diccionario anteriormente descrito, que permite que piratas sofisticados traspasen su conocimiento a una persona menos sofisticada. Los inventores actuales han determinado que eso se logra según esta divulgación, por el uso de una proliferación de claves para cada fragmento de contenido (mensaje), incluso aunque, según se ha indicado anteriormente, los piratas sofisticados puedan ser capaces de obtener las claves, unos de otros. En una realización, el cifrado usado es simétrico (tal como AES, DES triple o
20 RC4), donde se usan las mismas claves para el cifrado y el descifrado.
El proceso, aparato y procedimientos asociados actuales proporcionan una solución para el ataque de diccionario, por la cual el contenido ya no se cifra con una única clave de contenido y, en cambio, se obtiene una pluralidad de claves durante el proceso de descifrado, siendo válida cada una para una parte del contenido. Esto comienza con un valor inicial de clave de contenido. Las subsiguientes claves de contenido, indicadas como CKn, se obtienen usando un
25 algoritmo predeterminado durante el proceso de reproducción, según la sección del contenido a descifrar.
En el proceso actual, la clave de contenido ya no es estática. En cambio, se crea durante el proceso de descifrado, en base al valor inicial de clave de contenido y a una parte del contenido a descifrar. El valor inicial de la clave de contenido también puede considerarse como un valor de inicio. El estado inicial del proceso usa el valor inicial CK0 de la clave de contenido. Este es, en una realización, la clave de contenido ya usada en ciertos sistemas de DRM (tales 30 como FairPlay de la empresa Apple, Inc.) y extraída de la parte privada (segura) de la SInf de FairPlay. Una SInf es una estructura de datos en FairPlay que contiene la clave necesaria para descifrar un fragmento de contenido. La SInf misma está cifrada. El sistema de DRM fija el estado inicial con el valor inicial de la clave de contenido y descifra la parte del contenido relacionada con el valor inicial de la clave de contenido. Durante el descifrado del contenido, la DRM obtiene luego una posterior clave CKi de contenido a partir de CK0, con CK1 = f(CK0), donde “f” es una función
35 predeterminada. A continuación, el valor inicial de la clave de contenido se denomina CK0. La lógica de la DRM descarta luego el valor de CK0, que es reemplazado por CK1, para el próximo proceso de descifrado para la parte siguiente del contenido. Así, cada parte del contenido puede ser visto como un “bloque” que tiene, por ejemplo, una longitud fija, pero no es este necesariamente el caso. La DRM itera sobre las obtenciones de clave, con CKn = f(CKn-1) para cada bloque n. La DRM usa una nueva clave CKn obtenida y descarta CKn-1 para descifrar cada bloque.
40 Este proceso segmenta el uso de la clave de contenido y reduce el periodo de tiempo durante el cual cualquier clave CKn específica está expuesta a un ataque. De esta manera, los ataques por piratas se hacen más difíciles, porque los piratas necesitan determinar la secuencia completa de valores CKn de clave, o la función de obtención y la clave CK0 inicial.
El proceso anterior de obtención de claves es menos útil allí donde el descifrado necesita acceso aleatorio al contenido.
45 En otras palabras, en lugar de descifrarse bloque a bloque en secuencia, sólo un bloque, en una ubicación aleatoria en el contenido, puede necesitar el descifrado. Por tanto, en una realización alternativa para la situación de acceso aleatorio, la clave CK0 inicial de contenido es una semilla, usada conjuntamente con una parte del contenido cifrado, para obtener el valor de CKi. En otras palabras, la clave inicial de contenido es una clave maestra, o valor de inicio, y la información de contenido es un parámetro de obtención tal que CKi = g(CK0, InfoSemillap), donde g es una función
50 predeterminada. Este enfoque proporciona un proceso que permite el acceso aleatorio al contenido, con descifrado en forma aleatoria, sin dependencia del descifrado previo de las partes anteriores del contenido. En el caso de contenido tal como vídeos musicales y libros electrónicos, este acceso aleatorio es importante, ya que el usuario final puede, por tanto, reproducir, hacer avanzar rápidamente, rebobinar, saltear o seleccionar aleatoriamente cualquier parte del Contenido, como se hace habitualmente.
55 La Fig. 2 muestra un procedimiento y el aparato asociado, según esta divulgación, para el cifrado. Esto se lleva a cabo habitualmente en el contexto de un ordenador o dispositivo informático que está debidamente programado y asociado a los servidores 110. La codificación del programa adecuado sería rutinaria, a la luz de esta divulgación. El algoritmo efectivo de cifrado es habitualmente convencional, tal como una de las técnicas de cifrado simétrico anteriormente descritas, pero no tan limitado. La codificación de los programas de ordenador adecuados para la función de cifrado, la gestión de claves, la función de descifrado y la gestión asociada de claves son rutinarias a la luz de esta divulgación, y de los aspectos bien conocidos de los sistemas de DRM.
En la Fig. 2 hay un elemento 150 de almacenamiento de datos, habitualmente una memoria de ordenador, que
5 contiene el fichero no cifrado F, que es habitualmente un fragmento de música o un fichero de vídeo en forma digital estándar. Este fichero se pasa luego al elemento particionador 152, que fragmenta el fichero F en partes P1, P2, etc. La fragmentación es llevada a cabo por la función de fragmentación descrita más adelante, que puede adoptar una entre muchas formas. Esto está habitualmente bajo el control de parámetros específicos de fragmentación, según se describe más adelante. El fin de esta fragmentación es llegar a partes o bloques que sean de longitud desigual.
10 Además de variar los parámetros de fragmentación, la función de fragmentación específica puede variar. En cualquier caso, tanto los parámetros de fragmentación como la función deben transportarse junto con el fichero cifrado. La salida del elemento particionador es una parte indicada como Pi, que se comunica al generador 154 de claves, que calcula las claves según se muestra. Habitualmente, la primera clave es una función del valor de inicio CK0 (clave inicial de contenido), que se almacena en un almacén 158. Este valor de inicio se suministra habitualmente, por ejemplo, como
15 un número aleatorio. La salida del generador de claves es una clave CKi de contenido, que es proporcionada al cifrador 162, el cual cifra luego la parte Pi usando CKi, para dar como resultado la parte o bloque cifrado Pi’. Pi’ se proporciona luego a un almacén 166, que acumula los diversos Pi’ resultantes en el fichero cifrado F. Este fichero F, habitualmente, se transmite luego al ordenador 115 del usuario mediante la red 120. El valor de inicio asociado también se transmite junto con los parámetros de fragmentación necesarios, usando técnicas convencionales de DRM. En una realización, el
20 valor de inicio se envía cifrado en un fichero, por separado del contenido.
La técnica y aparato de descifrado asociados, que son complementarios a los de la Fig. 2, se muestran en la Fig. 3. Si bien la actividad de la Fig. 2 tiene lugar habitualmente en el extremo de cabecera, o servidor, 110, mostrado en la Fig. 1, la actividad de la Fig. 3 tiene lugar en el ordenador 115 y / o el reproductor 125. Sin embargo, en otros aspectos, es esencialmente complementaria. Según se muestra, el almacén 180 de datos es habitualmente memoria en el 25 ordenador 115 o en el reproductor 125, que almacena el fichero cifrado F’ recibido por la red 120 desde los servidores 110 mostrados en la Fig. 1. El próximo elemento mostrado en la Fig. 3 es el elemento particionador 182, que es similar al elemento particionador 152 de la Fig. 2. Sin embargo, este elemento particionador 182 opera sobre el fichero cifrado F’, fragmentándolo en partes Pi’, etc., según los parámetros de fragmentación que se proporcionan en el contenido del bloque, para habilitar el descifrado de ese bloque. (Estos son los mismos parámetros de fragmentación en términos de 30 los valores efectivos mostrados en la Fig. 2). Estos se transportan de modo seguro. El elemento particionador 182 suministra luego sus diversas partes o bloques cifrados Pi, primero al generador 186 de claves, que calcula las claves, según se muestra, usando el valor de inicio CK0 almacenado en el almacén 188 asociado al ordenador 115 o al reproductor 125. Este es el mismo valor de inicio usado en la Fig. 2, para cualquier fichero específico. Nuevamente, esto debe transportarse de alguna manera segura, junto con el fichero cifrado F’. Las claves CKi resultantes se
35 proporcionan luego al descifrador 192, que aquí es simétrico con respecto al cifrador 162 en la Fig. 2, en una realización. También se proporciona al descifrador 192 la parte cifrada Pi’, que se descifra luego usando la semilla CKi de clave, para dar como resultado la parte descifrada Pi. Esta forma descifrada del bloque Pi se proporciona luego a un almacén 196 que almacena cada Pi según se procesa, dando como resultado el fichero descifrado F, que es apto para reproducción en el ordenador 115 o el reproductor 125, o para otras operaciones sobre el mismo.
40 Obsérvese que los bloques o partes del contenido por descifrar no necesariamente deben ser de longitud estándar o fija, según esta divulgación. Los bloques de longitud fija son bien conocidos en el cifrado. Según esta divulgación, las longitudes de los bloques pueden diferir, según lo determinado por un algoritmo o proceso de fragmentación o partición, por lo que los bloques pueden variar en su longitud. Esto hace aún más difícil para un pirata penetrar en el sistema. Además, el algoritmo de fragmentación puede cambiar entre diversos fragmentos de contenido, de modo tal
45 que distintos fragmentos de contenido se fragmenten de maneras distintas. Un ejemplo de una función de fragmentación es un proceso de obtención de claves, p. ej., la clave obtenida = AES (clave maestra, información de bloque). Así, el contenido se divide en tramas. Cada trama tiene información de control que no está cifrada. Los datos se cifran o descifran según la información de control, por ejemplo, el número de fragmento. Obsérvese que la longitud de cada fragmento o parte no sería evidente a partir de la forma cifrada del contenido, haciendo por ello aún más difícil
50 la violación de este sistema de protección.
Esta divulgación es ilustrativa pero no limitativa; realizaciones adicionales serán evidentes para un experto en la técnica, a la luz de esta descripción, y están destinadas a caer dentro del alcance de las reivindicaciones adjuntas.

Claims (16)

  1. REIVINDICACIONES
    1. Un procedimiento para descifrar contenido cifrado, que comprende las etapas de:
    proporcionar el contenido cifrado; comprendiendo el contenido cifrado una pluralidad de fragmentos que proporcionan un valor inicial de clave (CK0);
    5 dividir cada fragmento del contenido cifrado en una pluralidad de partes; generar una primera clave usando el valor inicial de clave; descifrar una primera de dichas partes, usando la primera clave; generar una segunda clave usando el valor inicial de clave, difiriendo la segunda clave de la primera; y descifrar una segunda de dichas partes, usando la segunda clave, en donde, en la partición, la pluralidad de
    10 partes difieren en longitud, según lo determinado por un algoritmo de fragmentación, y en donde el algoritmo de fragmentación varía entre fragmentos del contenido cifrado, de modo tal que distintos fragmentos del contenido se fragmenten de maneras distintas.
  2. 2. El procedimiento de la Reivindicación 1, que comprende adicionalmente la etapa de recibir el contenido cifrado y el valor inicial de clave en un dispositivo (125) de reproducción.
    15 3. El procedimiento de la Reivindicación 2, en el cual el contenido cifrado y el valor inicial de clave (CKO) se reciben en mensajes por separado.
  3. 4. El procedimiento de la Reivindicación 2, en el cual la etapa de recibir comprende:
    recibir el contenido cifrado y el valor inicial de clave (CK0) en un dispositivo informático (115); almacenar el contenido cifrado y el valor inicial de clave (CKO) en el dispositivo informático (115); y 20 transmitir el contenido cifrado almacenado y el valor inicial de clave (CKO) al dispositivo (125) de reproducción.
  4. 5.
    El procedimiento de cualquiera de las reivindicaciones precedentes, en el cual el descifrado incluye aplicar una función de descifrado simétrica (192) con respecto a una función usada para cifrar el contenido cifrado.
  5. 6.
    El procedimiento de cualquiera de las reivindicaciones precedentes, en el cual el valor inicial de clave (CK0) se
    proporciona en forma cifrada; y que comprende adicionalmente la etapa de descifrar el valor inicial cifrado de 25 clave (CK0).
  6. 7.
    El procedimiento de cualquiera de las reivindicaciones precedentes, que comprende adicionalmente la etapa de reproducir el contenido descifrado.
  7. 8.
    Un procedimiento para proporcionar contenido cifrado, que comprende las etapas de:
    proporcionar el contenido; comprendiendo el contenido una pluralidad de fragmentos;
    30 proporcionar un valor inicial de clave (CKO); dividir cada fragmento del contenido en una pluralidad de partes; generar una primera clave a partir del valor inicial de clave; cifrar una primera de dichas partes, usando la primera clave; generar una segunda clave a partir del valor inicial de clave, difiriendo la segunda clave de la primera clave; y
    35 cifrar una segunda de dichas partes, usando la segunda clave, en donde, en la partición, la pluralidad de partes difieren en longitud, según lo determinado por un algoritmo de fragmentación, y en donde el algoritmo de fragmentación varía entre los fragmentos del contenido, de modo tal que distintos fragmentos del contenido se fragmenten de distintas maneras.
  8. 9. El procedimiento de la Reivindicación 8, que comprende adicionalmente la etapa de transmitir el contenido 40 cifrado y el valor inicial de clave (CKO) a un dispositivo (115) de reproducción.
  9. 10.
    El procedimiento de cualquiera de las reivindicaciones precedentes, en el cual el contenido incluye información de audio.
  10. 11.
    El procedimiento de cualquiera de las reivindicaciones precedentes, en el cual el contenido incluye información de vídeo.
    45 12. El procedimiento de la Reivindicación 9, en el cual el contenido cifrado y el valor inicial de clave (CK0) se transmiten en mensajes distintos.
  11. 13. El procedimiento de la Reivindicación 9, en el cual la etapa de transmitir comprende:
    transmitir el contenido cifrado y el valor inicial de clave (CK0) a un dispositivo informático (125); almacenar el contenido cifrado y el valor inicial de clave (CK0) en el dispositivo informático (125); y transmitir el contenido cifrado almacenado y el valor inicial de clave (CKO) al dispositivo (115) de reproducción.
  12. 14.
    El procedimiento de la Reivindicación 8, en el cual el cifrado incluye aplicar una función de cifrado simétrica con respecto a una función usada para descifrar el contenido cifrado.
  13. 15.
    El procedimiento de la Reivindicación 10, en el cual el contenido es música.
    5 16. El procedimiento de cualquiera de las reivindicaciones precedentes, en el cual proporcionar los valores iniciales de clave (CKO) comprende:
    recibir el valor inicial de clave (CKO) desde un origen distinto a un origen del contenido cifrado.
  14. 17. El procedimiento de la Reivindicación 8, en el cual el valor inicial de clave (CKO) se proporciona en forma cifrada; y que comprende adicionalmente la etapa de cifrar el valor inicial de clave (CKO).
    10 18. Un medio legible por ordenador que almacena código de ordenador que lleva a cabo el procedimiento de cualquiera de las reivindicaciones precedentes.
  15. 19. Aparato para descifrar contenido previamente cifrado, comprendiendo el aparato:
    un almacén (150) de datos que almacena el contenido cifrado; comprendiendo el contenido cifrado una pluralidad de fragmentos
    15 un almacén de valores de clave que almacena un valor inicial de clave (CKO); un elemento particionador (152) acoplado al almacén (150) de datos y adaptado para dividir cada fragmento del contenido cifrado en una pluralidad de partes secuenciales de distinta longitud, usando un algoritmo de fragmentación; un generador de claves acoplado con el almacén de valores de clave, y adaptado para generar una primera
    20 clave a partir del valor inicial de clave, y generar una segunda clave a partir del valor inicial de clave, difiriendo la segunda clave de la primera; y un descifrador acoplado con el generador de claves y el elemento particionador, y adaptado para descifrar una primera de dichas partes, usando la primera clave y una segunda de dichas partes, usando la segunda clave, en donde el algoritmo de fragmentación varía entre fragmentos del contenido cifrado, de modo tal que distintos
    25 fragmentos del contenido cifrado se fragmenten de distintas maneras.
  16. 20. Un aparato para cifrar contenido, comprendiendo el aparato:
    un almacén (150) de datos que almacena el contenido; comprendiendo el contenido una pluralidad de fragmentos, un almacén de valores de clave que almacena un valor inicial de clave (CK0);
    30 un elemento particionador (152) acoplado con el almacén (150) de datos, y adaptado para dividir cada fragmento del contenido en una pluralidad de partes de distintas longitudes, usando un algoritmo de fragmentación; un generador (154) de claves acoplado con el almacén de valores de clave, y adaptado para generar una clave asociada para cada una de las otras partes, como una función predeterminada de la clave para la parte
    35 precedente, difiriendo cada clave de la clave precedente; y un cifrador (162) acoplado con el generador (154) de claves y el elemento particionador (152), y adaptado para cifrar cada una de las partes, usando la clave asociada, en donde el algoritmo varía entre fragmentos del contenido, de modo tal que distintos fragmentos del contenido se fragmenten de distintas maneras.
    Red (por ejemplo, Internet)
    Parámetros de fragmentación
    Almacén de clave de inicio CK0
    [Almacén de datos]
    Fichero no cifrado F
    [Elemento particionador] Fragmentar F en partes P1, P2, ...., Pi, ...., Pn
    [Generator de claves] Calcular CK1,= f(CK0) Calcular CK¡ = f(CKi-1) π =f(CK0,P¡)
    [Cifrador] Cifrar P¡ usando CK¡ = P’¡
    Almacenar P’i
    Parámetros de fragmentación
    Almacén de clave de inicio CK0
    [Almacén de datos] Fichero cifrado F’
    [Elemento particionador] Fragmentar F’ en partes P’1, P’2,...,P’i,...,P’n
    Generator de claves] Calcular CK1,= f(CK0) Calcular CK¡ = f(CK0) π CKi = f(CK0,P’¡)
    [Descifrador] Descifrar P’i usando CKi = Pi
    Almacenar P’i
ES08150990T 2007-05-07 2008-02-01 Distribución segura de contenido utilizando claves de descifrado. Active ES2373131T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US800902 2007-05-07
US11/800,902 US7936873B2 (en) 2007-05-07 2007-05-07 Secure distribution of content using decryption keys

Publications (1)

Publication Number Publication Date
ES2373131T3 true ES2373131T3 (es) 2012-01-31

Family

ID=39494567

Family Applications (1)

Application Number Title Priority Date Filing Date
ES08150990T Active ES2373131T3 (es) 2007-05-07 2008-02-01 Distribución segura de contenido utilizando claves de descifrado.

Country Status (5)

Country Link
US (1) US7936873B2 (es)
EP (1) EP1990976B1 (es)
AT (1) ATE524003T1 (es)
ES (1) ES2373131T3 (es)
WO (1) WO2008136876A2 (es)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090154703A1 (en) * 2007-12-18 2009-06-18 Vizio Content Protection Using Encryption Keys Where only part of the private key is associated with end user data
US8473757B2 (en) * 2009-02-18 2013-06-25 Cisco Technology, Inc. Protecting digital data such as images on a device with image acquisition capabilities
GB2493496B (en) * 2011-07-12 2014-05-14 Nds Ltd Software DRM offline purchase
TWI473488B (zh) * 2011-08-25 2015-02-11 Mxtran Inc 保護數位內容的方法與儲存裝置
CN102955916B (zh) * 2011-08-25 2016-03-02 全宏科技股份有限公司 保护数字内容的方法与储存装置
US9674649B2 (en) 2013-01-14 2017-06-06 Qualcomm Incorporated Methods and apparatus for providing location information with private expressions
US9305172B2 (en) * 2013-03-15 2016-04-05 Mcafee, Inc. Multi-ring encryption approach to securing a payload using hardware modules
US9143317B2 (en) 2013-05-24 2015-09-22 Apple Inc. Protecting against white box attacks using column rotation
US9654286B2 (en) * 2013-10-04 2017-05-16 Microsoft Technology Licensing, Llc Content gathering using shared key
TWI618026B (zh) * 2017-03-01 2018-03-11 Chunghwa Telecom Co Ltd Mail decryption system and method based on document serial number
US11128452B2 (en) 2017-03-25 2021-09-21 AVAST Software s.r.o. Encrypted data sharing with a hierarchical key structure

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6587563B1 (en) 1997-02-15 2003-07-01 Apple Computer, Inc. Cryptographic system using chaotic dynamics
US6249866B1 (en) * 1997-09-16 2001-06-19 Microsoft Corporation Encrypting file system and method
US7194092B1 (en) * 1998-10-26 2007-03-20 Microsoft Corporation Key-based secure storage
EP1075108A1 (en) * 1999-07-23 2001-02-07 BRITISH TELECOMMUNICATIONS public limited company Cryptographic data distribution
AU7593601A (en) * 2000-07-14 2002-01-30 Atabok Inc Controlling and managing digital assets
US6915425B2 (en) * 2000-12-13 2005-07-05 Aladdin Knowledge Systems, Ltd. System for permitting off-line playback of digital content, and for managing content rights
EP1356622B1 (en) * 2000-11-10 2012-04-04 AOL MusicNow LLC Digital content distribution and subscription system
US6931128B2 (en) * 2001-01-16 2005-08-16 Microsoft Corporation Methods and systems for generating encryption keys using random bit generators
US20030051159A1 (en) * 2001-09-11 2003-03-13 Mccown Steven H Secure media transmission with incremental decryption
JP2003333024A (ja) 2002-05-09 2003-11-21 Nec Corp 暗号化/復号化システム及びその暗号解読防止/改竄防止方法
DE10223217A1 (de) 2002-05-24 2003-12-11 Siemens Ag Verfahren und Anordnung zur Verschlüsselung bzw. Entschlüsselung von Datenpaketen in drahtlosen Netzwerken
US20040006541A1 (en) * 2002-07-08 2004-01-08 International Business Corporation Method and system for purchasing broadcast content
US20060265595A1 (en) 2003-04-02 2006-11-23 Scottodiluzio Salvatore E Cascading key encryption
DE602004023496D1 (de) 2003-04-25 2009-11-19 Apple Inc Ein gesichertes netzwerkbasiertes inhaltverteilungsverfahren und -system
US20050203959A1 (en) 2003-04-25 2005-09-15 Apple Computer, Inc. Network-based purchase and distribution of digital media items
JP4789802B2 (ja) 2003-04-25 2011-10-12 アップル インコーポレイテッド メディアアイテムをブラウズ、サーチおよび提示するグラフィカルユーザインタフェース
KR100688414B1 (ko) 2003-04-25 2007-03-02 애플 컴퓨터, 인코포레이티드 미디어의 네트워크를 통한 구매 및 분배용 방법 및 시스템
US20060036551A1 (en) 2004-03-26 2006-02-16 Microsoft Corporation Protecting elementary stream content

Also Published As

Publication number Publication date
WO2008136876A3 (en) 2009-12-30
WO2008136876A2 (en) 2008-11-13
ATE524003T1 (de) 2011-09-15
EP1990976B1 (en) 2011-09-07
US20080279372A1 (en) 2008-11-13
EP1990976A1 (en) 2008-11-12
US7936873B2 (en) 2011-05-03

Similar Documents

Publication Publication Date Title
ES2373131T3 (es) Distribución segura de contenido utilizando claves de descifrado.
JP6949972B2 (ja) ブロックチェーンに基づくデジタル権利管理
CN100592683C (zh) 来自数字权利管理加密解密器的受保护的返回路径
US7260215B2 (en) Method for encryption in an un-trusted environment
US8681975B2 (en) Encryption method and apparatus using composition of ciphers
JP2006514490A (ja) 権利管理機能を備えた、複数当事者間のコンテンツ配信システム及び方法
US9172683B2 (en) Method and apparatus for key distribution with implicit offline authorization
US20070260548A1 (en) Device-independent management of cryptographic information
US8417937B2 (en) System and method for securely transfering content from set-top box to personal media player
CN104221023A (zh) 数字权利管理
CN101471942B (zh) 加密装置、解密装置、数据提供装置、数据接收装置
US8085932B2 (en) Secure distribution of data or content using keyless transformation
EP3317798B1 (en) Decrypting and decoding media assets through a secure data path
KR20080007678A (ko) Drm 권리 객체의 효율적인 암호화 및 복호화를 위한장치 및 방법
US10411900B2 (en) Control word protection method for conditional access system
US10025911B2 (en) Replay attack prevention for content streaming system
JP2001285278A (ja) 暗号通信方法及び暗号通信システム
EP2299379A1 (en) Digital rights management system with diversified content protection process
KR100736050B1 (ko) 컨텐츠 보호 장치 및 방법
JP2001285279A (ja) 暗号通信方法及び暗号通信システム
Iyare et al. Improved High Definition Multimedia Interface Authentication Mechanism
CN116488855A (zh) 基于链式存储结构加密技术的轻量级确权系统及方法
JPS6229333A (ja) 暗号キ−設定方式
KR20230079708A (ko) 블록체인 음원 이용 내역 정보의 암/복호화 시스템 및 방법
US9137493B2 (en) Method and device for excerpt licensing