ES2334109T3 - Metodo para la codificacion de transmisiones. - Google Patents
Metodo para la codificacion de transmisiones. Download PDFInfo
- Publication number
- ES2334109T3 ES2334109T3 ES02710108T ES02710108T ES2334109T3 ES 2334109 T3 ES2334109 T3 ES 2334109T3 ES 02710108 T ES02710108 T ES 02710108T ES 02710108 T ES02710108 T ES 02710108T ES 2334109 T3 ES2334109 T3 ES 2334109T3
- Authority
- ES
- Spain
- Prior art keywords
- subset
- tree
- keys
- node
- subsets
- 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.)
- Expired - Lifetime
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/083—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
- H04L9/0833—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP] involving conference or group key
- H04L9/0836—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP] involving conference or group key using tree structure or hierarchical structure
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0891—Revocation or update of secret information, e.g. encryption key update or rekeying
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/00086—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
- G11B20/0021—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/60—Digital content management, e.g. content distribution
- H04L2209/605—Copy protection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/60—Digital content management, e.g. content distribution
- H04L2209/606—Traitor tracing
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Storage Device Security (AREA)
- Reverberation, Karaoke And Other Acoustics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Un método para cifrado o codificado de transmisión, que comprende: asignar a cada usuario en un grupo de usuarios información privada respectiva Iu; seleccionar al menos una clave de cifrado de sesión K; dividir a los usuarios que no están en un conjunto revocado R en subconjuntos disjuntos Si1,...Sim que tienen claves de subconjuntos asociadas Li1,...Lim; y cifrar la clave de sesión K con las claves de subconjuntos Li1,...Lim para hacer m versiones cifradas de la clave de sesión K.
Description
Método para la codificación de
transmisiones.
El invento se refiere en general al cifrado o
codificación de datos de transmisión que usa claves de cifrado.
La patente norteamericana nº 6.118.873 describe
un sistema para cifrar música, vídeos y otros contenidos
transmitidos. Como se ha descrito en ella, solamente
reproductores-grabadores autorizados pueden
reproducir y/o copiar el contenido y solamente de acuerdo con
reglas establecidas por el vendedor del contenido. De este modo,
pueden ser impedidas las copias de contenido pirateadas, que
comúnmente cuestan a los proveedores de contenidos billones de
dólares cada año.
En el método de cifrado descrito en la patente a
que antes se ha hecho referencia, los
reproductores-grabadores autorizados son provistos
de claves para el dispositivo con software implantado desde una
matriz de claves del dispositivo. Las claves pueden ser emitidas
simultáneamente una con otra o en el trascurso del tiempo, pero en
cualquier caso, ningún reproductor-grabador se
supone que tiene más de una clave de dispositivo por columna de la
matriz. Aunque dos dispositivos podrían compartir la misma clave
desde la misma columna, las posibilidades de que cualesquiera dos
dispositivos compartan exactamente las mismas claves de conjunto de
todas las columnas de la matriz son muy pequeñas cuando las claves
son asignadas aleatoriamente. Las claves son usadas para descifrar
el contenido.
En el caso de que un dispositivo (y sus claves)
resulte comprometido, deliberadamente o por error, es necesario
revocar las claves de ese dispositivo. Revocar un conjunto de claves
efectivamente convierte al dispositivo comprometido (y cualesquiera
clones del mismo) en inoperante para reproducir el contenido que es
producido después de la revocación. En la patente antes descrita,
para cada revocación se requieren aproximadamente 320 bytes de
mensaje. Aunque esto es efectivo, es deseable reducir la longitud
del mensaje de revocación incluso más, por eficiencia.
Aunque el sistema descrito en la patente a que
antes se ha hecho referencia es efectivo, debido a limitaciones de
tamaño del área de encabezamiento del mensaje (denominado como
"bloque de clave de medios" en la patente), solamente un
número relativamente limitado (10.000 para un encabezamiento de 3M
tal como DVD-Audio) de revocaciones puede ser hecho
durante la vida del sistema. Este número puede ser incrementado
aumentando el tamaño del encabezamiento, pero las revocaciones
añadidas serían aplicables sólo a dispositivos hechos de nuevo, y no
a dispositivos que hubieran sido hechos antes del aumento de tamaño
del encabezamiento. Es deseable ser capaz de ejecutar un gran
número de revocaciones tanto de dispositivos "viejos" como
"nuevos", es decir para tener en cuenta receptores sin estado.
También, como más de un dispositivo puede compartir cualquier clave
particular con el dispositivo comprometido en el invento patentado
a que antes se ha hecho referencia, revocar un conjunto de claves
de dispositivo podría dar como resultado revocar algunas claves
contenidas por dispositivos inocentes. Es deseable reducir
adicionalmente las posibilidades de revocar accidentalmente un
dispositivo "bueno", preferiblemente a cero.
Además, el presente invento está dirigido al
difícil escenario de los receptores "sin estado", es decir,
receptores que no actualizan necesariamente su estado de cifrado
entre transmisiones para aceptar contramedidas contra dispositivos
comprometidos. Por ejemplo, una televisión que se suscribe a un
canal de pago podría tener su codificador desactivado durante un
período de tiempo durante el cual los datos cifrados actualizados
podrían ser transmitidos sobre el sistema. Tal dispositivo se
convertiría en "sin estado" si sucede que es incapaz de
actualizarse por sí mismo después de haber sido vuelto a activar y
así no poseería actualizaciones que serían necesarias para un
futuro descifrado del contenido.
Además, hay una necesidad creciente de proteger
el contenido de medios, tales como los CD y DVD, que son vendidos
al público y para los que es deseable impedir una copia no
autorizada. Los grabadores en tal sistema corrientemente no
interactúan con lo reproductores, y ningún reproductor conseguirá
cada posible pieza de actualizaciones de datos de cifrado, ya que
ningún reproductor recibe cada disco vendido. Por consiguiente, como
se ha comprendido aquí, la protección de contenidos de medios
vendidos es un ejemplo del problema de cifrado de transmisión a
receptores sin estado.
Además, la presencia de más de unos pocos
fabricantes "malvados" (es decir fabricantes que legal o
ilegalmente obtienen claves pero que en cualquier caso hacen que
muchos dispositivos sin autorización tengan las claves) puede ser
problemática. Es deseable tener en cuenta muchos fabricantes
potencialmente "malvados".
Otros métodos para el cifrado de transmisión
incluyen los descritos en Fiat y col., Cifrado de
Transmisión, Crypto '93 LNCS vol. 839, págs.
257-270 (1994). Este método considera la retirada de
cualquier número de receptores mientras como máximo "t" de
ellos operen ilegalmente entre sí. Sin embargo, el método de Fiat y
col., requiere longitudes de mensaje relativamente grandes, que un
número de claves relativamente grandes sea almacenado en el
receptor, y que cada receptor debe realizar más de una única
operación de descifrado. Además, el método de Fiat y col., no
considera el escenario de receptor sin estado. Hay una necesidad de
evitar la suposición a priori de cuantos receptores podrían operar
ilegalmente. También, que el tamaño del mensaje y el número de
claves almacenadas sean minimizados, y que el número de operaciones
de descifrado que deben ser realizadas por un receptor sea
minimizado, para optimizar el rendimiento.
Otros sistemas de cifrado o codificado, como el
sistema de Fiat y col., no proporcionan medios para el escenario de
receptores sin estado, y así no pueden ser aplicados efectivamente
en cuanto a la protección de contenido de medios grabados. Ejemplos
de tales sistemas incluyen los sistemas de jerarquía de clave lógica
a base de árboles descritos en Wallner y col., Gestión de claves
para Multidifusión: Cuestiones y Arquitecturas, proyecto IETF
de clave de Wallner 1997; Wong y col., Comunicación Segura de
Grupo Utilizando Gráficos de Clave, SIGCOMM 1998; Canetti y
col., Seguridad Multidifusión: Una Taxonomía y Algunas
Construcciones Eficientes, Proc. de INFOCOM '99 vol. 2 págs.
708-716 (1999); Canetti y col., Intercambios de
Comunicación-Almacenamiento para Cifrado
Multidifusión, Eurocrypt 1999, págs. 459-474; y
McGraw y col., Establecimiento de Claves en Grandes Grupos
Dinámicos Usando Árboles de Función de Un Sentido, sometido a
Transacciones de IEEE en Ingeniería de Software (1998).
Con más especificidad en relación a los métodos
de Wallner y col., y Wong y col., las claves son asignadas por
asignación de una etiqueta independiente a cada nodo en un árbol
binario. Desgraciadamente, en los métodos referidos alguna de las
etiquetas cambia en cada revocación. Claramente, como es, el método
sería inapropiado para el escenario del receptor sin estado.
Incluso si un lote de revocaciones que ha de ser asociado con una
única etiqueta cambia para cada nodo, los métodos referenciados de
Wallner y col., y Wong y col., requerirían al menos log N
descifrados en el receptor y la transmisión de rlog N cifrados
(donde r es el número de dispositivos que ha de ser revocado y N es
el número total de receptores en el sistema), desgraciadamente un
número relativamente elevado.
\vskip1.000000\baselineskip
El presente invento proporciona por consiguiente
un método para el cifrado de transmisión, que comprende: asignar a
cada usuario en un grupo de usuarios información privada respectiva
I_{u}; seleccionar al menos una clave K de cifrado de sesión;
dividir usuarios que no están en un conjunto revocado R en
subconjuntos disjuntos S_{i1},...S_{im} que tienen claves de
subconjuntos asociadas L_{i1},...L_{im}; y cifrar la clave K de
sesión con las claves de subconjuntos L_{i1},...L_{im} para
hacer m versiones cifradas de la clave K de sesión.
El método comprende preferiblemente además
dividir a los usuarios en grupos S_{1},...S_{w} en los que
"w" es un entero, y los grupos establecen subárboles en un
árbol.
Preferiblemente, el árbol es un árbol binario
completo.
El método comprende preferiblemente además usar
la información privada I_{u} para descifrar la clave de
sesión.
De modo adecuado, el acto de descifrado incluye
utilizar información i_{j} de tal modo que un usuario pertenece a
un subconjunto S_{ij}, y recuperar una clave L_{ij} de
subconjunto usando la información privada del usuario.
Preferiblemente, cada subconjunto
S_{i1},...S_{im} incluye todas las hojas de un subárbol con raíz
en algún nodo v_{i}, estando asociado al menos cada nodo del
subárbol con una clave de subconjunto respectiva.
Preferiblemente, el contenido es proporcionado a
los usuarios en al menos un mensaje que define un encabezamiento, y
el encabezamiento incluye como máximo r*log(N/r) claves de
subconjuntos y cifrados, en los que r es el número de usuarios en
el conjunto R revocado y N es el número total de usuarios.
De modo preferible, cada usuario debe almacenar
log N claves, en las que N es el número total de usuarios.
Preferiblemente, el contenido es proporcionado a
los usuarios en al menos un mensaje, y en el que cada usuario
procesa el mensaje usando como máximo log log N operaciones más una
única operación de descifrado, en el que N es el número total de
usuarios.
Preferiblemente, el conjunto R revocado define
un árbol de expansión, y subárboles que tienen raíces unidas a
nodos del árbol de expansión definen los subconjuntos.
Preferiblemente, al árbol incluye una raíz y
varios nodos, teniendo cada nodo al menos una etiqueta asociada, y
en el que cada subconjunto incluye todas las hojas de un subárbol
con raíces en algún nodo v_{i} que no está en el subárbol con
raíz en algún otro nodo v_{i} que desciende de v_{i}.
Preferiblemente, el contenido es proporcionado a
los usuarios en al menos un mensaje que define un encabezamiento, y
el encabezamiento incluye como máximo 2r-1 claves
del subconjunto y cifrados, donde r es el número de usuarios en el
conjunto revocado R.
Preferiblemente, cada usuario debe almacenar
0,5log^{2}N + 0,5log N + 1 claves, en las que N es el número
total de usuarios.
Preferiblemente, el contenido es proporcionado a
los usuarios en al menos un mensaje, y en el que cada usuario
procesa el mensaje usando como máximo log N operaciones más una
única operación de descifrado, en la que N es el número total de
usuarios.
Preferiblemente, el conjunto R revocado define
un árbol de expansión, y el método incluye: inicializar un árbol T
de cubierta como el árbol de expansión; eliminar iterativamente
nodos del árbol de cubierta T y añadir nodos a una cubierta hasta
que el árbol de cubierta T tenga como máximo un nodo.
Preferiblemente, cada nodo tiene al menos una
etiqueta posiblemente inducida por al menos uno de sus antepasados,
y en el que cada usuario tiene etiquetas asignadas de todos los
nodos que cuelgan de un trayecto directo entre el usuario y la raíz
pero no desde los nodos en el trayecto directo.
Preferiblemente, son asignadas etiquetas a
subconjuntos usando un generador de secuencia seudoaleatorio, y el
acto de descifrar incluye evaluar el generador de secuencia
seudoaleatorio.
Preferiblemente, el contenido es proporcionado a
los usuarios en al menos un mensaje que tiene un encabezamiento que
incluye una función criptográfica E_{L}, y el método incluye
prefijar-truncar la función criptográfica
E_{L}.
Preferiblemente, el árbol incluye una raíz y
varios nodos, teniendo cada nodo una clave asociada, y en el que
cada usuario tiene asignadas claves desde todos los nodos en un
trayecto directo entre una hoja que representa al usuario y la
raíz.
Preferiblemente, el contenido es proporcionado a
los usuarios en al menos un mensaje que define varias partes, y
cada parte está cifrada con una clave de sesión respectiva.
El presente invento proporciona de modo adecuado
un dispositivo de programa de ordenador, que comprende: un
dispositivo de almacenamiento del programa de ordenador que incluye
un programa de instrucciones utilizable por un ordenador, que
comprende: medios lógicos para acceder a un árbol para identificar
varias claves de subconjuntos; medios lógicos para cifrar un
mensaje con una clave de sesión; medios lógicos para cifrar la
clave de sesión al menos una vez con cada una de las claves de
subconjuntos para hacer versiones cifradas de la clave de sesión; y
medios lógicos
para enviar las versiones cifradas de la clave de sesión en un encabezamiento del mensaje a varios receptores sin estado.
para enviar las versiones cifradas de la clave de sesión en un encabezamiento del mensaje a varios receptores sin estado.
El dispositivo del programa de ordenador
comprende preferiblemente además medios lógicos para dividir
receptores que no están en un conjunto revocado R en subconjuntos
disjuntos S_{i1},...S_{im} que tienen claves de subconjuntos
asociadas L_{i1},...L_{im}.
El dispositivo de programa de ordenador
comprende preferiblemente además medios lógicos para dividir a los
usuarios en grupos S_{1},...S_{w} en los que "w" es un
entero, y los grupos establecen subárboles en un árbol.
El dispositivo de programa de ordenador
comprende preferiblemente además medios lógicos para usar
información privada I_{u} para descifrar la clave de sesión.
Preferiblemente, los medios para descifrar
incluyen medios lógicos para usar información i_{j} tal que un
receptor pertenece a un subconjunto S_{ij}, y recuperar una clave
L_{ij} de la información privada del receptor.
Preferiblemente, cada subconjunto
S_{i1},...S_{im} incluye todas las hojas de un subárbol con raíz
en algún nodo v_{i}, estando asociado al menos cada nodo de un
subárbol con una clave de subconjunto respectiva.
Preferiblemente, los medios lógicos proporcionan
contenido a los receptores en al menos un mensaje que define un
encabezamiento, y el encabezamiento incluye como máximo
r*log(N/r) claves de subconjuntos y cifrados, en los que r
es el número de receptores en el conjunto R revocado y N es el
número total de receptores.
Preferiblemente, cada receptor debe almacenar
log N claves en las que N es el número total de receptores.
Preferiblemente, los medios lógicos proporcionan
el contenido a los receptores en al menos un mensaje, y en el que
cada receptor procesa el mensaje usando como máximo log log N
operaciones más una única operación de cifrado, en la que N es el
número total de receptores.
Preferiblemente, el conjunto R revocado define
un árbol de expansión, y subárboles que tienen raíces unidas a
nodos del árbol de expansión definen los subconjuntos.
Preferiblemente, el árbol incluye una raíz y
varios nodos, teniendo cada nodo al menos una etiqueta asociada, y
en el que cada subconjunto incluye todas las hojas de un subárbol
con raíces en algún nodo v_{i} que no están en el subárbol con
raíces en algún otro nodo v_{j}, que desciende de v_{i}.
Preferiblemente, los medios proporcionan el
contenido a los receptores en al menos un mensaje que define un
encabezamiento, y el encabezamiento incluye como máximo
2r-1 claves de subconjuntos y cifrados, en los que
r es el número de receptores en el conjunto R revocado.
Preferiblemente cada receptor debe almacenar
0,5log^{2}N + 0,5logN + 1 claves en las que N es el número total
de receptores.
Preferiblemente, los medios lógicos proporcionan
el contenido a los receptores en al menos un mensaje, y en el que
cada receptor procesa el mensaje usando como máximo log N
operaciones más una única operación de descifrado, en la que N es
el número total de receptores.
Preferiblemente, el conjunto R revocado define
un árbol de expansión, y el dispositivo de programa de ordenador
incluye: medios lógicos para inicializar un árbol de cubierta T como
el árbol de expansión, y medios lógicos para eliminar
iterativamente nodos del árbol de cubierta T y añadir nodos a una
cubierta hasta que el árbol de cubierta T tiene como máximo un
nodo.
Preferiblemente, unos medios lógicos asignan
etiquetas a receptores usando un generador de secuencias
seudoaleatorio, y las etiquetas inducen claves de subconjuntos.
Preferiblemente, los medios para descifrar
incluyen evaluar el generador de secuencia seudoaleatorio.
Preferiblemente, los medios lógicos proporcionan
contenido a los receptores en al menos un mensaje que tiene un
encabezamiento que incluye una función criptográfica E_{L} y el
dispositivo de programa de ordenador incluye medios lógicos para
prefijar-truncar la función criptográfica
E_{L}.
Preferiblemente, el árbol incluye una raíz y
varios nodos, teniendo cada nodo una clave asociada, y en el que
medios lógicos asignan a cada receptor claves desde todos los nodos
en trayecto directo entre una hoja que representa al receptor y la
raíz.
Preferiblemente, los medios lógicos proporcionan
contenido a receptores en al menos un mensaje que define varias
partes, y cada parte está cifrada con una clave de sesión
respectiva.
El presente invento proporciona adecuadamente un
ordenador programado con instrucciones para hacer que el ordenador
ejecute actos del método que incluyen: cifrar el contenido de
transmisión; y enviar el contenido de transmisión a varios
receptores buenos sin estado y al menos a un receptor revocado de
tal modo que cada receptor bueno sin estado puede descifrar el
contenido y el receptor revocado no puede descifrar el
contenido.
Preferiblemente, los actos del método comprenden
además: asignar a cada receptor en un grupo de información privada
I_{u} respectiva de receptores; seleccionar al menos una clave K
de cifrado de sesión; dividir todos los receptores que no están en
un conjunto revocado R en subconjuntos disjuntos
S_{i1},...S_{im} que tienen claves de subconjuntos asociadas
L_{i1},...L_{im}; y cifrar la clave de sesión K con las claves
de subconjuntos L_{i1},...L_{im} para hacer m versiones cifradas
de la clave de sesión K.
Preferiblemente, los actos del método realizados
por el ordenador comprenden además dividir a los usuarios en grupos
S_{1},...S_{w}, en los que "w" es un entero, y los grupos
establecen subárboles en un árbol.
Preferiblemente, el árbol es un árbol binario
completo.
Preferiblemente, los actos del método incluyen
usar información I_{u} privada para descifrar la clave de
sesión.
Preferiblemente, el acto de descifrado realizado
por el ordenador incluye usar información i_{j} de tal modo que
un receptor pertenece a un subconjunto S_{ij}, y recuperar una
clave L_{ij} usando la información privada del receptor.
Preferiblemente, cada subconjunto
S_{i1},...S_{im} incluye todas las hojas de un subárbol con
raíces en algún nodo v_{i}, estando asociado al menos cada nuevo
subárbol con una clave de subconjunto respectiva.
Preferiblemente, el contenido es proporcionado a
los receptores en al menos un mensaje que define un encabezamiento,
y el encabezamiento incluye como máximo r*log(N/r) claves de
subconjuntos y cifrados, en los que r es el número de receptores en
el conjunto revocado R y en el que N es el número total de
receptores.
Preferiblemente, cada receptor almacena log N
claves, en las que N es el número total de receptores.
Preferiblemente, el contenido es proporcionado a
los receptores en al menos un mensaje, y en el que cada receptor
procesa el mensaje usando como máximo log log N operaciones más una
única operación de descifrado, en la que N es el número total de
receptores.
Preferiblemente, el conjunto revocado R define
un árbol de expansión, y subárboles que tienen raíces unidas a
nodos del árbol de expansión definen los subconjuntos.
Preferiblemente, al árbol incluye una raíz y
varios nodos, teniendo cada nodo al menos una etiqueta asociada, y
en el que cada subconjunto incluye todas las hojas de un subárbol
con raíces en algún nodo v_{i} que no están en el subárbol con
raíz en algún otro nodo v_{j} que desciende de v_{i}.
Preferiblemente, el contenido es proporcionado a
los receptores en al menos un mensaje que define un encabezamiento,
y el encabezamiento incluye como máximo 2r-1 claves
de subconjuntos y cifrados, donde r es el número de receptores en
el conjunto revocado R.
Preferiblemente, cada receptor debe almacenar
0,5log^{2}N + 0,5log N + 1 claves, en las que N es el número total
de receptores.
Preferiblemente, el contenido es proporcionado a
los receptores en al menos un mensaje, y en el que cada receptor
procesa el mensaje usando como máximo log N operaciones más una
única operación de descifrado, en la que N es el número total de
receptores.
Preferiblemente, el conjunto revocado R define
un árbol de expansión, y en el que los actos del método realizados
por el ordenador incluyen además: inicializar un árbol de cubierta T
como el árbol de expansión; eliminar iterativamente nodos del árbol
de cubierta T y añadir nodos a una cubierta hasta que el árbol de
cubierta T tenga como máximo un nodo.
Preferiblemente, el ordenador asigna etiquetas a
receptores desde el árbol usando un generador de secuencia
seudoaleatorio.
Preferiblemente, el acto de descifrar realizado
por el ordenador incluye evaluar el generador de secuencia
seudoaleatorio.
Preferiblemente, el contenido es proporcionado a
los receptores en al menos un mensaje que tiene un encabezamiento
que incluye una función criptográfica E_{L}, y los actos del
método realizados por el ordenador incluyen
prefijar-truncar la función criptográfica
E_{L}.
Preferiblemente, el contenido es proporcionado a
los receptores en al menos un mensaje que define varias partes, y
cada parte es cifrada por el ordenador con una clave de sesión
respectiva.
Preferiblemente, cada nodo tiene varias
etiquetas con cada antepasado del nodo induciendo una etiqueta
respectiva, y en el que cada usuario tiene asignadas etiquetas
desde todos los nodos que cuelgan desde un trayecto directo entre
el usuario y la raíz pero no desde los nodos en el trayecto
directo.
El presente invento comprende adecuadamente un
método para el cifrado de transmisión, que comprende: asignar a
cada usuario en un grupo de usuarios información privada respectiva
I_{u}; seleccionar al menos una clave K de cifrado de sesión;
dividir a todos los usuarios en grupos S_{1},...S_{w}, en los
que "w" es un entero, y los grupos establecen subárboles en un
árbol; dividir usuarios que no están en un conjunto revocado R en
subconjuntos disjuntos S_{i1},...S_{im} que tienen claves de
subconjuntos asociadas L_{i1},...L_{im}; y cifrar la clave K de
sesión con las claves de subconjuntos L_{i1},...L_{im} para
hacer m versiones cifradas de la clave de sesión K, en que el árbol
incluye una raíz y varios nodos, teniendo cada nodo al menos una
etiqueta asociada, y en el que cada subconjunto incluye todas las
hojas de un subárbol con raíces en algún nodo v_{i} que no están
en el subárbol con raíces en algún otro nodo v_{j} que desciende
de v_{i}.
El presente invento comprende adecuadamente un
receptor potencialmente sin estado en un sistema multidifusión, que
comprende: al menos un dispositivo de almacenamiento de datos que
almacena varias etiquetas de nodos que no están en un trayecto
directo entre el receptor y una raíz de un árbol que tiene una hoja
que representa al receptor, pero que cuelga del trayecto directo y
que son inducidos por algún nodo v_{i}, representando un
antepasado de la hoja el receptor, estableciendo las etiquetas de
información privada I_{u} del receptor utilizable por el receptor
para descifrar claves de subconjuntos derivadas de las
etiquetas.
Preferiblemente, el receptor calcula las claves
de subconjuntos de todos los conjuntos excepto un conjunto de
trayecto directo que tienen raíces en el nodo v_{i} evaluando una
función seudoaleatoria, pero no pueden calcular ninguna otra clave
de subconjunto.
Preferiblemente, el receptor descifra una clave
de sesión usando al menos una clave de subconjunto, siendo útil la
clave de sesión para descifrar el contenido.
El presente invento comprende adecuadamente un
receptor de contenido, que comprende: medios para almacenar
información derivada respectiva I_{u}; medios para recibir al
menos una clave K de cifrado de sesión cifrada con varias claves de
subconjuntos, cifrando la clave de sesión el contenido; y medios
para obtener al menos una clave de subconjunto usando la
información privada de tal modo que la clave de sesión K puede ser
descifrada para reproducir el contenido.
Preferiblemente, el receptor está dividido en
uno de un conjunto de grupos S_{i},...S_{w}, en los que
"w" es un entero, y los grupos establecen subárboles en un
árbol definiendo nodos y hojas.
Preferiblemente, subconjuntos
S_{i1},...S_{im} derivados del conjunto de grupos
S_{i},...S_{w} definen una cubierta.
\newpage
Preferiblemente, el receptor recibe el contenido
en al menos un mensaje que define un encabezamiento, y el
encabezamiento incluye como máximo r*log(N/r) claves de
subconjuntos y cifrados, en los que r es el número de receptores en
un conjunto revocado R y N es el número total de receptores.
Preferiblemente, el receptor debe almacenar log
N claves, en las que N es el número total de receptores.
Preferiblemente, el receptor recibe el contenido
en al menos un mensaje que define un encabezamiento, y en el que el
receptor procesa el mensaje usando como máximo log log N operaciones
más una única operación de descifrado, en la que N es el número
total de receptores.
Preferiblemente, un conjunto revocado R define
un árbol de expansión, y subárboles que tienen raíces unidas a
nodos del árbol de expansión definen los subconjuntos.
Preferiblemente, al árbol incluye una raíz y
varios nodos, teniendo cada nodo al menos una etiqueta asociada, y
en el que cada subconjunto incluye todas las hojas de un subárbol
con raíces en algún nodo v_{i} que no están en el subárbol con
raíces en algún otro nodo v_{j} que desciende de v_{i}.
Preferiblemente, el receptor recibe el contenido
en un mensaje que tiene un encabezamiento que incluye como máximo
2r-1 claves de subconjuntos y cifrados, donde r es
el número de receptores en el conjunto revocado R.
Preferiblemente, el receptor debe almacenar
0,5log^{2}N + 0,5log N + 1 claves, en las que N es el número total
de receptores.
Preferiblemente, el contenido es proporcionado
al receptor en al menos un mensaje, y en el que el receptor procesa
el mensaje usando como máximo log N operaciones más una única
operación de descifrado, en la que N es el número total de
receptores.
Preferiblemente, el receptor descifra la clave
de subconjunto evaluando un generador de secuencia
seudoaleatorio.
De modo adecuado, el presente invento comprende
un receptor de contenido, que comprende: un almacenamiento de datos
que almacena información derivada respectiva I_{u}; un dispositivo
de tratamiento que recibe al menos una clave K de cifrado de sesión
cifrada con varias claves de subconjuntos, cifrando la clave de
sesión el contenido; obteniendo el dispositivo de tratamiento al
menos una clave de subconjunto usando la información privada de tal
modo que la clave de sesión K puede ser descifrada para reproducir
el contenido.
Preferiblemente, el receptor está dividido en
uno de un conjunto de grupos S_{1},...S_{w}, en los que
"w" es un entero, y los grupos establecen subárboles en un
árbol.
Preferiblemente, subconjuntos
S_{i1},...S_{im} derivados del conjunto de grupos
S_{1},...S_{w} definen una cubierta.
Preferiblemente, el receptor recibe el
contenido en al menos un mensaje que define un encabezamiento, y el
encabezamiento incluye como máximo r*log(N/r) claves de
subconjuntos y cifrados, en el que r es el número de receptores en
un conjunto revocado R y N es el número total de receptores.
Preferiblemente, el receptor debe almacenar log
N claves, en las que N es el número total de receptores.
Preferiblemente, el receptor recibe el contenido
en al menos un mensaje que define un encabezamiento, y en el que el
receptor procesa el mensaje usando como máximo log log N operaciones
más una única operación de descifrado, en la que N es el número
total de receptores.
Preferiblemente, un conjunto revocado R define
un árbol de expansión, y subárboles que tienen raíces unidas a
nodos del árbol de expansión definen los subconjuntos.
Preferiblemente, el árbol incluye una raíz y
varios nodos, teniendo cada nodo al menos una etiqueta asociada, y
en el que cada subconjunto incluye todas las hojas de un subárbol
con raíces en algún nodo v_{i} que no están en el subárbol con
raíces en algún otro nodo v_{j} que desciende de v_{i}.
Preferiblemente, el receptor recibe el contenido
en un mensaje que tiene un encabezamiento que incluye como máximo
2r-1 claves de subconjuntos y cifrados, donde r es
el número de receptores en el conjunto revocado R.
Preferiblemente, el receptor debe almacenar
0,5log^{2}N + 0,5log N + 1 claves, en las que N es el número
total de receptores.
Preferiblemente, el contenido es proporcionado
al receptor en al menos un mensaje, y en el que el receptor procesa
el mensaje usando como máximo log N operaciones más una única
operación de descifrado, en la que N es el número total de
receptores.
Preferiblemente, el receptor descifra la clave
de subconjunto evaluando un generador de secuencia
seudoaleatorio.
El presente invento comprende de modo adecuado
un medio que contiene un mensaje de contenido de la forma
general
<[i_{1},
i_{2},...,i_{m}, E_{Li1}(K),
E_{Li2}(K),...,E_{Lim}(K)],
F_{E}(M)>,
en la que K es una clave de
sesión, F_{K} es un primitivo cifrado, E_{K} es un primitivo
cifrado, L_{i} son claves de subconjuntos asociadas con
subconjuntos de receptores en un sistema de transmisión de cifrado,
M es un cuerpo de mensaje, e i_{1}, i_{2},...,i_{m} son
subconjuntos de nodo de árbol que definen una
cubierta.
Preferiblemente, el primitivo cifrado F_{K} es
puesto en práctica mediante la aplicación de XOR al cuerpo de
mensaje con una cifra de corriente generada por la clave de sesión
K.
Preferiblemente, E_{L} es una especificación
de prefijado-truncado de una cifra de bloques, 1
representa una cadena aleatoria cuya longitud es igual a la
longitud del bloque de E_{L}, y K es una clave corta para
F_{K}, y el mensaje es de la forma
<[i_{1},
i_{2},...,i_{m}, U, [Prefix_{-K-}E_{Li1}(U)]/K,...,
[Prefix_{-K-}E_{Lim}(U)]/K],
F_{E}(M)>
\vskip1.000000\baselineskip
Preferiblemente, 1/i_{1} está cifrado y el
mensaje es de la forma
<[i_{1},
i_{2},...,i_{m}, U,
[Prefix_{-L-}E_{Li1}(U/i_{1})]/K,...,
[Prefix_{-L-}E_{Lim}(U/i_{m})]/K],
F_{E}(M)>
\vskip1.000000\baselineskip
Preferiblemente, las claves de subconjuntos son
derivadas de un árbol que incluye una raíz y varios nodos, teniendo
cada nodo al menos una etiqueta asociada, y en el que cada
subconjunto incluye todas las hojas de un subárbol con raíces en
algún nodo v_{i} que no están en un subárbol con raíces en algún
otro nodo v_{j} que desciende de v_{i}.
Preferiblemente, las claves de subconjuntos son
derivadas de un árbol que incluye una raíz y varios nodos, teniendo
cada nodo al menos una etiqueta asociada, y en el que cada
subconjunto incluye todas las hojas de un subárbol con raíces en
algún nodo v_{i}, estando asociado al menos cada nodo del subárbol
con una clave de subconjunto respectiva.
Preferiblemente, el acto de dividir es realizado
por un ordenador del sistema en un sistema de receptores separado
del ordenador del sistema.
Preferiblemente, el acto de dividir es realizado
por un ordenador del receptor.
Preferiblemente, el receptor deriva los
subconjuntos en la cubierta.
El invento incluye de modo adecuado un sistema
de ordenador para realizar la lógica del invento aquí descrita. El
invento puede también ser puesto en práctica en un producto de
programa de ordenador que almacena la lógica actual y que puede ser
accedido por un procesador para ejecutar la lógica. También el
invento puede incluir de modo adecuado un método implantado en un
ordenador que sigue la lógica descrita a continuación.
El invento incluye de modo adecuado un método
para agrupar usuarios en subconjuntos de usuarios (posiblemente
solapándolos), teniendo cada subconjunto una única clave de
subconjunto preferiblemente de vida larga, y asignando a cada
usuario una información privada respectiva I_{u}. El método
incluye también de modo adecuado seleccionar al menos una clave K
cifrado de sesión preferiblemente de vida corta, y dividir a los
usuarios que no están en un conjunto revocado R en subconjuntos
disjuntos S_{i1},...S_{im} que tienen claves de subconjuntos
asociadas L_{i1},...L_{im}. La clave de sesión K es cifrada
adecuadamente con las claves de subconjuntos L_{i1},...L_{im}
para hacer m versiones cifradas de la clave de sesión K. En un
aspecto, los usuarios pueden establecer hojas en un árbol tal como
un árbol binario completo, y los subconjuntos S_{i1},...S_{im}
son inducidos por el árbol.
En una realización preferida, los usuarios son
inicialmente divididos en grupos S_{1},...S_{w} en los que
"w" es un entero. Una transmisión dada selecciona adecuadamente
m de tales grupos como una "cubierta" para usuarios no
revocados, estando definida la cubierta por el conjunto de usuarios
revocados. Los grupos de "cubierta" establecen adecuadamente
subárboles (o bien subárboles completos o bien una diferencia entre
dos subárboles) en un árbol. Una información privada de usuario
I_{u} es encontrada preferiblemente como información i_{j} en
un mensaje transmitido que indica que un usuario pertenece a un
subconjunto S_{ij} de uno de los grupos S_{1},...S_{w}. Una
clave de subconjunto L_{ij} puede entonces ser obtenida a partir
de la información privada del usuario o derivada usando la
misma.
En una primera realización, denominada aquí como
el método de "subárbol completo", grupos respectivos
corresponden a todos los subárboles posibles en el árbol completo.
Cada usuario tiene asignadas claves desde todos los nulos que están
en un trayecto directo entre una hoja que representar al usuario y
la raíz del árbol. En otras palabras, cada subconjunto S_{i}
incluye todas las hojas de un subárbol con raíces en algún nodo
v_{i}, estando asociado al menos cada nodo del subárbol con una
clave de subconjunto respectiva. En esta realización, el contenido
es proporcionado a los usuarios en un mensaje que define un
encabezamiento, y el encabezamiento incluye como máximo
r*log(N/r) claves de subconjuntos y cifrados, en el que r es
el número de usuarios en el conjunto revocado R y N es el número
total de usuarios. Además, cada usuario debe almacenar log N claves,
y cada usuario procesa el mensaje usando como máximo log log N
operaciones más una única operación de descifrado.
En una segunda realización, denominada aquí como
el método "diferencia de subconjuntos", grupos de usuarios
respectivos corresponden a un universo de conjuntos
S_{1},...S_{w} que puede ser descrito como "un primer
subárbol A menos un segundo subárbol B que está totalmente contenido
en A". Cada nodo de este árbol tiene un conjunto de etiquetas,
una única al nudo y otras que son inducidas por nodos antepasados.
Cada usuario tiene etiquetas asignadas desde todos los nodos que
cuelgan desde nodos en un trayecto directo entre el receptor y la
raíz (como máximo log N etiquetas para cada uno de tales nodos) pero
no desde los nodos en el propio trayecto directo. En otras
palabras, cada subconjunto incluye todas las hojas de un subárbol
con raíces en algún nodo v_{i}, que no están en un subárbol con
raíces en algún otro nodo v_{j} que desciende desde v_{i}. Una
de las etiquetas de los nodos de diferencia de subconjuntos para un
usuario particular es proporcionada al usuario en una transmisión
como esa información privada del usuario. Usando las etiquetas, el
usuario puede generar las claves de subconjuntos necesaria para el
descifrado.
En esta realización, el encabezamiento del
mensaje incluye como máximo 2r-1 (1,25r de
promedio) claves de subconjuntos y cifrados, cada usuario debe
almacenar 0,5log^{2}N + 0,5log N + 1 claves, y cada usuario
procesa el mensaje usando como máximo log N operaciones
(preferiblemente aplicaciones de un generador seudoaleatorio) más
una única operación de descifrado.
Como se ha descrito adicionalmente a
continuación con respecto al método de diferencia de subconjuntos,
el conjunto revocado R define un árbol de expansión. Un árbol de
cubierta T es inicializado como el árbol de expansión, y a
continuación el método elimina iterativamente nodos del árbol de
cubierta T y añade subárboles al árbol de cubierta T hasta que el
árbol de cubierta tiene como máximo un nodo. El árbol de cubierta T
es usado para identificar claves de subconjuntos que han de ser
usadas en una transmisión particular, con usuarios evaluando el
generador de secuencia seudoaleatorio para derivar claves de
subconjuntos a partir de las etiquetas. Preferiblemente, para
procesar revocaciones con eficiencia son tratados de izquierda a
derecha de tal modo que solamente deben ser conservadas en memoria
dos revocaciones al mismo tiempo.
En algunas puestas en práctica específicas, el
encabezamiento del mensaje incluye una función criptográfica
E_{L}, y el método incluye el prefijado-truncado
de la función de prefijo criptográfica E_{L}. Si se desea, partes
del mensaje pueden ser cifradas con claves de sesión
respectivas.
En otro aspecto, un dispositivo de programa de
ordenador incluye de modo adecuado un dispositivo de almacenamiento
de programa de ordenador que a su vez incluye un programa de
instrucciones que puede ser usado por un ordenador. El programa
incluye medios lógicos para acceder a un árbol para obtener varias
claves de subconjuntos, y medios lógicos para cifrar un mensaje con
una clave de sesión. Hay también previstos medios lógicos para
cifrar la clave de sesión al menos una vez con cada una de las
claves de subconjuntos para hacer versiones cifradas de la clave de
sesión. A continuación, medios lógicos envían las versiones cifradas
de las claves de sesión en un encabezamiento del mensaje a varios
receptores sin estado.
Aún en otro aspecto, un ordenador está
adecuadamente programado con instrucciones para hacer que el
ordenador cifre el contenido de transmisión, y envíe el contenido
de transmisión a varios receptores buenos sin estado y al menos a
un receptor revocado de tal modo que cada receptor bueno sin estado
pueda descifrar el contenido y el receptor revocado no pueda
descifrar el contenido.
En otro aspecto, un receptor potencialmente sin
estado u en un sistema de cifrado de transmisión incluye de modo
adecuado un almacenamiento de datos que almacena información privada
respectiva I_{u}, y un dispositivo de tratamiento que recibe una
clave de cifrado de sesión K que está cifrada con varias claves de
subconjuntos. La clave en la sesión cifra el contenido, obteniendo
el dispositivo de tratamiento al menos una clave de subconjunto
usando la información privada de tal modo que la clave de sesión K
puede ser descifrada para reproducir el contenido. En una
realización preferida, el receptor está dividido en uno de un
conjunto de grupos S_{1},...S_{w} en los que "w" es un
entero, y los grupos establecen subárboles en un árbol. Subconjuntos
S_{i1},...S_{im} derivados del conjunto de grupos
S_{1},...S_{w} definen una cubierta que es calculada por el
receptor o por un ordenador del sistema. Preferiblemente, el árbol
incluye una raíz y varios nodos, teniendo cada nodo al menos una
etiqueta asociada. Cada subconjunto incluye todas las hojas de un
subárbol con raíces en algún nodo v_{i} que no están en él
subárbol con raíces en algún otro nodo v_{j} que desciende de
v_{i}.
En otro aspecto, un medio contiene adecuadamente
un mensaje de contenido de la forma general <[i_{1},
i_{2},...,i_{m}, E_{Li1}(K),
E_{Li2}(K),...,E_{Lim}(K)], F_{E}(M)>,
en el que K es una clave de sesión, F_{K} es un primitivo
cifrado, E_{K} es un primitivo cifrado, L_{i} son claves de
subconjuntos asociadas con subconjuntos de receptores en un sistema
de transmisión de cifrado, M es un cuerpo de mensaje, e i_{1},
i_{2},...,i_{m} son subconjuntos de nodo de árbol que definen
una cubierta.
A continuación se describirán realizaciones
preferidas del presente invento, a modo de ejemplo solamente, con
referencia a los dibujos adjuntos, en los que:
La fig. 1 es un diagrama de bloques del sistema
actual;
La fig. 2 es un diagrama de flujo de la lógica
de cifrado completa;
La fig. 3 es un diagrama de flujo de la lógica
de descifrado completa;
La fig. 4 es un diagrama de flujo de la parte de
asignación de claves del letrado de subárbol completo;
La fig. 5 es un diagrama de flujo de la parte de
cifrado del método de subárbol completo;
La fig. 6 es un diagrama de flujo de la parte de
descifrado del método de subárbol completo;
La fig. 7 es un diagrama esquemático de un
subconjunto de un subárbol completo;
La fig. 8 es un diagrama esquemático de un
subconjunto en el método de diferencia de subconjuntos; y
La fig. 9 es otra forma de un diagrama
esquemático del subconjunto en el método de diferencia de
subconjuntos;
La fig. 10 es un diagrama de flujo de la lógica
para definir una cubierta en el método de diferencia de
subconjuntos;
La fig. 11 es un diagrama esquemático de un
subconjunto de un árbol en el método de diferencia de subconjuntos,
que ilustra asignación de claves;
La fig. 12 es un diagrama de flujo de las partes
de descifrado del método de diferencia de subconjuntos;
La fig. 13 es un diagrama de flujo de la lógica
para asignar claves en el método de diferencia de subconjuntos;
y
La fig. 14 es un diagrama esquemático de un
subconjunto de un árbol en el método de diferencia de
subconjuntos.
Con referencia inicialmente a la fig. 1, se ha
mostrado un sistema, generalmente designado con 10, para generar
conjuntos de claves en un sistema de protección de contenido de
transmisión, tal como el sistema descrito en la patente antes
referenciada pero no limitado al mismo. Con el término
"transmisión" quiere significarse la amplia diseminación de un
programa desde un proveedor de contenidos a muchos usuarios
simultáneamente sobre cables (desde una fuente de satélite), o
hilo, o radiofrecuencia (incluyendo desde una fuente de satélite),
o desde discos de contenido ampliamente comercializados.
Como se ha mostrado, el sistema 10 incluye un
ordenador 12 de definición del conjunto de claves que accede a un
módulo 14 de definición de conjunto de claves que funciona de
acuerdo con la descripción siguiente. Los conjuntos de claves
definidos por el ordenador 12 son usados por dispositivos 16
reproductores-grabadores potencialmente sin estado,
también denominados aquí como "receptores" y "usuarios",
que tienen procesadores dentro de ellos para descifrar el
contenido. El contenido junto con ciertas claves descritas a
continuación es proporcionado a los dispositivos respectivos
mediante, por ejemplo fabricantes de dispositivos 16 sobre medios
17. Un dispositivo reproductor-grabador puede
acceder a su conjunto de claves para descifrar el contenido en
medios o transmisión o hacerlo a través de comunicación inalámbrica.
Como se ha usado aquí el término "medios" puede incluir pero
no está limitado a los DVD, CD, unidades de disco duro y
dispositivos de memoria "flash". En una realización
alternativa, cada receptor 16 podría ejecutar el módulo 14 para
realizar la operación de calcular la "cubierta" más abajo
descrita al dárseles el conjunto de receptores revocados y realizar
la lógica descrita a continuación.
Ha de comprenderse que el procesador asociado
con el módulo 14 accede a los módulos para emprender la lógica
mostrada y descrita a continuación, que puede ser ejecutada por un
procesador como una serie de instrucciones ejecutables por
ordenador. Dos métodos - el método de subárbol completo, y el método
de diferencia de subconjuntos - están descritos aquí para usar el
sistema 10 para revocar selectivamente la capacidad de los
receptores comprometidos 16 para descifrar el contenido de
transmisión sin revocar la capacidad de cualquier receptor 16 no
comprometido para descifrar el contenido de transmisión.
Las instrucciones pueden estar contenidas en un
dispositivo de almacenamiento de datos con un medio legible por
ordenador, tal como un disquete de ordenador que tiene un medio
utilizable por ordenador con elementos de código legibles por
ordenador almacenados en él. O, las instrucciones pueden estar
almacenadas en una agrupación DASD, cinta magnética, unida de disco
duro tradicional, memoria electrónica solo de lectura, dispositivo
de almacenamiento óptico, u otro dispositivo de almacenamiento de
datos apropiado. En una realización ilustrativa del invento, las
instrucciones ejecutables por ordenador pueden ser líneas de código
compatible C++ compilado.
Además, los diagramas de flujo ilustran aquí la
estructura de la lógica de una realización preferida del presente
invento como realizada en software de programa de ordenador. Los
expertos en la técnica apreciarán que los diagrama de flujo
ilustran las estructuras de elementos de código de programa de
ordenador que incluyen circuitos lógicos en un circuito integrado,
que funciona de acuerdo con este invento. De modo manifiesto, el
invento es puesto en práctica en su realización esencial por un
componente de máquina que convierte los elementos de código de
programa en una forma que instruye a un aparato de tratamiento
digital (es decir un ordenador) a realizar una secuencia de actos
de función correspondientes a los mostrados.
La lógica completa de una realización preferida
del presente invento como es llevada a cabo tanto por el método de
diferencia de subconjuntos como por el método de subárbol completo
puede ser vista en referencia a la fig. 2. Con propósitos de la
presente exposición, se supone que existen N receptores 16 en el
sistema 10, y que es deseable ser capaz de revocar la capacidad de
r receptores en un subconjunto receptor revocado R para descifrar
el contenido incluso si los receptores revocados actúan en una
coalición (compartiendo conocimiento de cifrado), de tal modo que
cualquier receptor pueda aún descifrar contenido. Comenzando en el
bloque 19, el sistema es iniciado asignando claves de subconjuntos
de vida larga L_{1},...L_{w} a subconjuntos correspondientes en
un universo de subconjuntos S_{1},...S_{w} en los que los
receptores son agrupados de acuerdo con la exposición siguiente,
teniendo así cada subconjunto S_{j} una clave de subconjunto de
larga vida L_{j} asociada con él. En el primer método
("subárbol completo"), los subconjuntos que cubren receptores
que no están en un conjunto revocado son simplemente los
subconjuntos que son generados por la exposición siguiente. En el
segundo método ("diferencia de subconjuntos"), los subconjuntos
que cubren los receptores que no están en un conjunto revocado son
definidos por la diferencia entre un primer subárbol y un subárbol
menor que está totalmente dentro del primer subárbol como se ha
descrito adicionalmente a
continuación.
continuación.
En el bloque 20, el sistema es además iniciado
suministrando a cada receptor u con información privada L_{u} que
es útil para descifrar el contenido. Detalles de la información
privada I_{u} son descritos adicionalmente a continuación. Si
I_{u} es la información secreta proporcionada al receptor u,
entonces cada receptor u en S_{j} puede deducir L_{j} de su
I_{u}. Como se ha descrito más completamente a continuación, dado
el conjunto revocado R, los receptores no revocados son divididos en
m subconjuntos disjuntos S_{i1},...S_{im} y una clave de sesión
K de vida corta es cifrada m veces con las claves de subconjuntos de
vida larga L_{i1},...L_{im} asociadas con subconjunto
respectivos S_{i1},...S_{im}. Las claves de subconjuntos son
claves de subconjuntos explícitas en el método de subárbol completo
y son inducidas por etiquetas de subconjunto en el método de
diferencia de subconjuntos.
Específicamente, en el bloque 22 al menos una
clave de sesión K es seleccionada con la que cifrar el contenido
que es transmitido en un mensaje M, bien mediante trayectos de
comunicación inalámbricos o por cable o bien mediante medios de
almacenamiento tales como CD y DVD. La clave de sesión K es una
cadena aleatoria de bits que es seleccionada de nuevo para cada
mensaje. Si se desea, pueden usarse varias claves de sesión para
cifrar partes respectivas del mensaje M.
En ambos métodos descritos a continuación, los
receptores no revocados son divididos en subconjuntos disjuntos
S_{i1},...S_{im} en el bloque 24 usando un árbol. Los
subconjuntos son a veces denominados aquí como "subárboles",
considerando el primer método explícitamente subárboles y siendo en
lo que se refiere al segundo método subárboles de la forma "un
primer subárbol menos un segundo subárbol totalmente contenido en el
primero". Cada subconjunto S_{i1},...S_{im} está asociado
con una clave de subconjunto respectiva L_{i1},...L_{im}.
Aunque se ha considerado aquí cualquier estructura a modo de árbol
de datos, con propósito de exposición se ha supuesto que el árbol
es un árbol binario completo.
Continuando al bloque 26, en general la clave de
sesión K es cifrada m veces, una vez con cada clave de subconjunto
L_{i1},...L_{im.} El texto cifrado resultante que es transmitido
puede ser representado como sigue, representando las partes entre
paréntesis el encabezamiento del mensaje M y representando i_{1},
i_{2},..., i_{m} índices de los subconjuntos disjuntos:
<[i_{1},
i_{2},...,i_{m}, E_{Li1}(K),
E_{Li2}(K),...,E_{Lim}(K)],
F_{E}(M)>
En una realización, el primitivo cifrado F_{K}
es puesto en práctica por aplicación de XOR al mensaje M con una
cifra de corriente generada por la clave de sesión K. El primitivo
cifrado E_{L} es un método para entregar la clave de sesión a los
receptores 16, usando las claves de subconjuntos de larga vida. Ha
de comprenderse que todos los algoritmos de cifrado para F_{K},
E_{L} están dentro del marco de una realización preferida del
presente invento. Una puesta en práctica preferida de E_{L} puede
ser una especificación de Prefijado-Truncado de una
cifra de bloque. Se supone que 1 representa una cadena aleatoria
cuya longitud es igual a la longitud del bloque de E_{L}, y se
supone que K es una clave corta para la cifra F_{K} cuya longitud
es por ejemplo de 56 bits. A continuación,
[Prefix_{-K-}E_{L}(1)/K] proporciona un cifrado fuerte.
Por consiguiente, el encabezamiento de
Prefijo-Truncado resulta:
<[i_{1},
i_{2},...,i_{m}, U, [Prefix_{-K-}E_{Li1}(U)]/K,...,
[Prefix_{-K-}E_{Lim}(U)]/K],
F_{E}(M)>
Esto reduce ventajosamente la longitud del
encabezamiento a aproximadamente m-K- bits en vez de
m-L-. En el caso en que la longitud de clave de
E_{L} es mínima, puede usarse lo siguiente para eliminar el factor
de ventaja m que un adversario tiene en un ataque con fuerza bruta
lo que procede como resultado de cifrar la misma cadena 1 con m
claves diferentes. La cadena 1/i_{j} está cifrada. Es decir:
<[i_{1},
i_{2},...,i_{m}, U,
[Prefix_{-L-}E_{Li1}(U/i_{1})]/K,...,[Prefix_{-L-}E_{Lim}(U/i_{m})]/K],
F_{E}(M)>
Habiendo descrito modos preferidos, no
limitativos para poner en práctica los primitivos E y F de cifrado,
la atención se dirige ahora a la fig. 3, que muestra la lógica de
descifrado realizada por los receptores 16. Comenzando en el bloque
28, cada receptor u no revocado encuentra un identificador de
subconjunto i_{j} en el texto cifrado de tal modo que pertenece
al subconjunto S_{ij}. Como se ha descrito adicionalmente a
continuación, si el receptor está en el conjunto revocado R, el
resultado del bloque 28 será nulo. A continuación, en el bloque 30
el receptor extrae la clave de subconjunto L_{ij} correspondiente
al subconjunto S_{ij} usando su información privada I_{u}.
Usando la clave de subconjunto, la clave de sesión K es determinada
en el bloque 32, y a continuación el mensaje es descifrado en el
bloque 34 usando la clave de sección K.
A continuación se han descrito dos métodos
preferidos para realizar la lógica completa antes descrita. En cada
uno, la colección de subconjuntos es especificada, como lo es el
modo en que las claves son asignadas a los subconjuntos y un método
para cubrir receptores no revocados usando subconjuntos disjuntos de
la colección. En cada uno, el conjunto de receptores en el sistema
establece las hojas de un árbol, tal como un árbol binario completó
pero no estando limitado al mismo.
El primer método que se va a describir es el
método de subárbol completo mostrado en las figs.
4-7. Comenzando en el bloque 36 en la fig. 4, una
clave de subconjunto independiente y aleatoria L_{i} es asignada a
cada nodo v_{i} en el árbol. Esta clave de subconjunto L_{i}
corresponde a un subconjunto que contiene todas las hojas con
raíces en el nodo v_{i}. A continuación, en el bloque 38, cada
receptor u es provisto con todas las claves de subconjuntos en el
trayecto directo desde el receptor a la raíz. Como se ha ilustrado
a modo de referencia en la fig. 7, los receptores u en el
subconjunto S_{i} son proporcionados con la clave de subconjunto
L_{i} asociada con el nodo v_{i}, así como con las claves
asociadas con el nodo P, que se encuentra entre los receptores en
S_{i} y la raíz del árbol.
Cuando se desea enviar un mensaje y revocar la
capacidad de algunos receptores para descifrar el mensaje, la
lógica de la fig. 5 es invocada para la división de receptores no
revocados en subconjuntos disjuntos. Comenzando en el bloque 40, un
árbol de expansión es descubierto que está definido por las hojas en
R, el conjunto de receptores revocados. El árbol de expansión es el
subárbol mínimo del árbol binario completo que conecta las hojas
"revocadas", y puede ser un árbol de Steiner. Continuando al
bloque 42, los subárboles que tienen raíces adyacentes a nodos de
grado uno en el árbol (es decir nodos que son directamente
adyacentes al árbol mínimo) están identificados. Estos subárboles
definen una "cubierta" y establecen los subconjuntos
S_{i1},...S_{im}. La cubierta abarca a todos los receptores no
revocados. Por consiguiente, en el bloque 44 la clave de sesión K
es cifrada usando las claves de subconjuntos definidas por la
cubierta.
Para descifrar el mensaje, cada receptor invoca
a la lógica de la fig 6. Comenzando en el bloque 46, se ha
determinado si cualquier nodo antepasado del receptor está asociado
con una clave de subconjunto de la cubierta determinando si
cualquier nodo antepasado está entre el conjunto i_{1},
i_{2},..., i_{m} en el encabezamiento del mensaje. La
información privada del receptor I_{u}, que en el método del
subárbol completo consiste de su posición en el árbol y claves de
subconjuntos asociadas a nodos antepasados, es usada para determinar
este. Si se ha encontrado un antepasado en el encabezamiento de
mensaje (indicando que el receptor es un receptor no revocado), la
clave de sesión K es descifrada en el bloque 48 usan-
do la clave de subconjunto, y a continuación el mensaje es descifrado usando la clave de sesión K en el bloque 50.
do la clave de subconjunto, y a continuación el mensaje es descifrado usando la clave de sesión K en el bloque 50.
En el método del subárbol completo, el
encabezamiento incluye como máximo r*log(N/r) claves de
subconjuntos y cifrados. Este es también el número de claves y
cifrados promedio. Además, cada receptor debe almacenar log N
claves, y cada receptor procesa el mensaje usando como máximo log
log N operaciones más una única operación de descifrado.
Con referencia ahora a las figs.
8-13, puede ser visto el método de diferencia de
subconjuntos para revocar receptores. En el método de diferencia de
subconjuntos, cada receptor debe almacenar relativamente más claves
(0,5log^{2} N + 0,5log N +1 claves)que en el método de
subárbol completo, pero el encabezamiento del mensaje incluye sólo
como máximo 2r-1 claves de subconjuntos y cifrados
(1,25r de promedio), y éste es sustancialmente más corto que en el
método de subárbol completo. También, en el método de diferencia de
subconjuntos, el mensaje es procesado usando como máximo log N
aplicaciones de un generador de números seudoaleatorio más una sola
operación de descifrado.
Con referencia a las figs. 8 y 9, el método de
diferencia de subconjuntos considera los subconjuntos como la
diferencia entre un subconjunto A mayor y un subconjunto B menor que
está totalmente contenido en A. Por consiguiente, como se ha
mostrado un subárbol mayor tiene raíces en el nodo v_{i} y un
subárbol menor tiene raíces en el nodo v_{j} que desciende desde
v_{i}. El subconjunto resultante S_{ij} consiste de todas las
hojas "sí" bajo v_{i} excepto para aquellas hojas etiquetadas
"no" (y coloreadas más oscuras que las hojas etiquetadas
"sí") bajo v_{j}. La fig. 9 ilustra esto, estando
representado el subconjunto v_{i,j} por el área situada dentro
del triángulo mayor y fuera del triángulo menor.
Cuando se ha deseado enviar un mensaje y revocar
la capacidad de algunos receptores para descifrar el mensaje en el
método de diferencia de subconjuntos, la estructura antes descrita
es usada como se ha mostrado en la fig. 10. Comenzando en el bloque
52, se ha descubierto que un árbol de expansión está definido por
las hojas en R, el conjunto de receptores revocados. El árbol de
expansión es el subárbol mínimo del árbol binario completo que
conecta las hojas "revocadas", y puede ser un árbol de Steiner.
Continuando al bloque 54, un árbol de cubierta T es inicializado
como el árbol de expansión. Un bucle iterativo comienza entonces en
el que son retirados nodos del árbol de cubierta y son añadidos
subárboles a la cubierta hasta que el árbol de cubierta T tiene
como máximo un nodo. La salida define la cubierta para los
receptores no revocados.
Más específicamente, moviéndose desde el bloque
54 al bloque 56, las hojas v_{i} y v_{j} son encontradas en el
árbol de cubierta de tal modo que su antepasado menos común v no
contiene otras hojas en T. En el diamante de decisión 57 se ha
determinado si sólo existe una hoja en el árbol de cubierta T. Si
existe más de una sola hoja, la lógica se mueve al bloque 58 para
encontrar nodos v_{i}, v_{k} en v, de tal modo que v_{i}
desciende desde v_{1} y v_{j} desciende desde v_{k} y de tal
modo que v_{1}, v_{k} son hijos de v (es decir descendientes
directos de v sin ningún nodo de intervención entre v y v_{1},
v_{k}). En contraste, cuando sólo existe una única hoja en T, la
lógica se mueve desde el diamante de decisión 57 al bloque 60 para
ajustar v_{i} = v_{j} = única hoja restante, colocar v en la
raíz de T, y ajustar v_{1} = v_{k} = raíz.
Desde el bloque 58 o 60 la lógica se mueve al
diamante de decisión 62. En el diamante de decisión 62, se ha
determinado si v_{1} es igual a v_{i}. Si v_{1} no es igual a
v_{i} la lógica se mueve al bloque 64 para añadir el subconjunto
S_{1,i} a T, retirar de T todos los descendientes de v y hacer v
una hoja. De modo similar, si v_{k} no es igual a v_{j} la
lógica se mueve al bloque 64 para añadir el subconjunto S_{k,j} a
T, retirar todos los descendientes de v, y hacer v una hoja. Desde
el bloque 64 o desde el diamante de decisión 62 cuando no se ha
determinado una desigualdad, la lógica forma un bucle de nuevo al
bloque 56.
Con la anterior vista completa del método de
asignación de claves por diferencia de subconjuntos en mente, se
describe a continuación una puesta en práctica particularmente
preferida. Mientras el número de subconjuntos total a los que
pertenece un receptor es tan grande como N, estos subconjuntos
pueden ser agrupados en log N grupos definidos por el primer
subconjunto i (desde el que es sustraído otro subconjunto). Para
cada 1<i<N correspondiente a un nodo interior en el árbol
completo, es seleccionada una etiqueta independiente y aleatoria
LABEL_{1}, que induce a las etiquetas para todos los subconjuntos
legitimados de la forma S_{i,j}. A partir de las etiquetas, son
derivadas las claves de subconjuntos. La fig. 11 ilustra el método
de etiquetado preferido descrito a continuación. El nodo etiquetado
L_{i} es la raíz del subárbol T, y sus descendientes son
etiquetados de acuerdo con los principios actuales.
Si G es un generador de secuencia criptográfico
seudoaleatorio que triplica la longitud de entrada, G_L(S)
indica el tercero por la izquierda de la salida de G en la semilla
S, G_R(S) indica el tercero por la derecha, y G_M(S)
indica el tercero en el centro. Considerando el subárbol T_{i} del
árbol de cubierta T con raíces en el nodo v_{i} con etiqueta
LABEL_{i}. Si éste nodo está etiquetado S, sus dos hijos son
etiquetados G_L(S) y G_R(S) respectivamente. La clave
de subconjunto L_{i,j} asignada al conjunto S_{i,j} es la G_M
de la etiqueta LABEL_{i,j}, de nodo v_{j} derivada del subárbol
T_{i}. Obsérvese que cada etiqueta S induce tres partes, en
particular, las etiquetas para los hijos izquierdo y derecho, y la
clave del nodo. Por consiguiente, dada la etiqueta de un nodo es
posible calcular las etiquetas y claves de todos sus descendientes.
En una realización preferida, la función G es una función de cálculo
de clave ("hash") criptográfica tal como el
Algoritmo-1 de Cálculo de Clave Seguro
(SHA-1), aunque pueden usarse otras funciones.
La fig. 12 muestra cómo los receptores descifran
mensajes en el método de diferencia de subconjuntos. Comenzando en
el bloque 66, el receptor encuentra el subconjunto S_{i,j} al que
pertenece, junto con la etiqueta asociada (que es parte de la
información privada del receptor que le permite derivar la
LABEL_{i,j} y la clave de subconjuntos L_{i,j}). Usando la
etiqueta, al receptor calcula la clave de subconjunto L_{i,j}
evaluando la función G como máximo N veces en el bloque 68. A
continuación, el receptor usa la clave de subconjuntos para
descifrar la clave de sesión K en el bloque 70 para un subsiguiente
descifrado de mensaje.
La fig. 13 muestra cómo las etiquetas y, por
tanto las claves de subconjuntos, son asignadas a receptores en el
método de diferencia de subconjuntos. El método de etiquetado
descrito aquí es usado para minimizar el número de claves que cada
receptor debe almacenar.
Comenzando en el bloque 72, cada receptor está
provisto con etiquetas de nodos que no están en el trayecto directo
entre el receptor y la raíz pero que "cuelgan" del trayecto
directo y que son inducidas por alguno nodo v_{i}, un antepasado
de u. Estas etiquetas establecen la información privada I_{u} del
receptor en el bloque 74, siendo cifradas subsiguientes claves de
sesión de mensajes con claves de subconjuntos derivadas de las
etiquetas en el bloque 76.
Con referencia brevemente a la fig. 14, se ha
ilustrado el principio anterior. Para cada v_{i} antepasado con
etiqueta S de un receptor u, el receptor u recibe etiquetas en todos
los nodos 71 que están colgando del trayecto directo desde el nodo
v_{i} al receptor u. Como se ha descrito adicionalmente a
continuación, estas etiquetas están derivadas todas preferiblemente
desde S. En marcado contraste con el método de subárbol completo,
en el método de diferencia de subconjuntos ilustrado en las figs.
8-14 el receptor u no recibe etiquetas desde ningún
nodo 73 que está en el trayecto directo desde el receptor u al nodo
v_{i}. Usando las etiquetas, el receptor u puede calcular las
claves de subconjuntos de todos los conjuntos (excepto el conjunto
de trayecto directo) que tienen raíces en el nodo v_{i} evaluando
la función G antes descrita, pero no puede calcular ninguna otra
clave de subconjunto.
Los sistemas multidifusión tradicionales carecen
de secreto hacia atrás, es decir un receptor que escucha
constantemente que ha sido revocado sin embargo puede grabar todos
los contenidos cifrados, y luego alguna vez en el futuro ganar una
clave nueva válida (por ejemplo, mediante un nuevo registro) que
permite el descifrado del contenido pasado. Una realización
preferida del presente invento puede ser usada en tales escenarios
para curar la falta de secreto hacia atrás incluyendo, en el
conjunto de receptores revocados todas las identidades de
receptores que no han sido aún asignadas. Esto puede hacerse si todo
los receptores están asignados a hojas en orden consecutivo. En
este caso, la revocación de todas las identidades sin asignar da
como resultado un aumento moderado en el tamaño del encabezamiento
del mensaje, pero no proporcionalmente al número de tales
identidades.
Una realización preferida del presente invento
también reconoce que es deseable tener codificaciones concisas de
los subconjuntos i_{j} en el encabezamiento de mensaje y
proporcionar un modo rápido para que un receptor determine si
pertenece a un subconjunto i_{j}. Se supone que un nodo está
indicado por su trayecto a la raíz, con 0 indicando una rama
izquierda y 1 indicando una rama derecha. El final del trayecto está
indicado por un 1 seguido por cero o más bits 0. Así, la raíz es
1000...000b, el hijo más a la derecha de la raíz es 01000...000b,
el hijo más a la izquierda es 11000...000b, y una hoja es
xxxx...xxxx1b.
Como se ha reconocido aquí, el trayecto de una
raíz de subárbol mayor es un subconjunto del trayecto de una raíz
de subárbol menor, de modo que la diferencia de subconjuntos puede
ser indicada por la raíz del menor subárbol más la longitud del
trayecto a la raíz del mayor subárbol. Con esto en mente, un
receptor puede determinar rápidamente si está en un subconjunto
dado ejecutando el siguiente bucle del procesador Intel
Pentium®.
Fuera del bucle, se ajustan los siguientes
registros: ECX contiene el nodo de hoja del receptor, ESI apunta a
la memoria tampón del mensaje (el primer byte es la longitud del
trayecto a la raíz del mayor subárbol y los siguientes cuatro bytes
son la raíz del árbol menor), y una tabla estática emite 32 bits
cuando es indexada por la longitud del trayecto, siendo los
primeros bits de longitud 1 y siendo los bits restantes 0.
bucle: MOV BYTE EBX, [ESI++]
- MOV DWORD EAX, [ESI++]
- XOR EAX, ECX
- AND EAX, TABLE[EBX]
- JNZ bucle
Si un receptor cae fuera del bucle, eso no
significa necesariamente que pertenezca al subconjunto particular.
Podría estar en el subárbol menor excluido, y si es así, debe volver
al bucle. Sin embargo, como en la vasta mayoría de casos el
receptor no está incluso ni en el subárbol mayor, casi no se gasta
tiempo de tratamiento en el bucle.
En otra optimización del método de diferencia de
subconjuntos, el servidor del sistema no tiene que recordar cada
etiqueta y todas ellas, lo que podría convertirse en millones. En
vez de ello la etiqueta del 1^{er} nodo puede ser una función
secreta del nodo. La función secreta podría ser un cifrado triple
DES que usa una clave secreta para hacer la etiqueta del 1 nodo
cuando es aplicada al número i.
Claims (11)
1. Un método para cifrado o codificado de
transmisión, que comprende: asignar a cada usuario en un grupo de
usuarios información privada respectiva I_{u}; seleccionar al
menos una clave de cifrado de sesión K; dividir a los usuarios que
no están en un conjunto revocado R en subconjuntos disjuntos
S_{i1},...S_{im} que tienen claves de subconjuntos asociadas
L_{i1},...L_{im}; y cifrar la clave de sesión K con las claves
de subconjuntos L_{i1},...L_{im} para hacer m versiones cifradas
de la clave de sesión K.
2. El método según la reivindicación 1, que
comprende además dividir a los usuarios en grupos
S_{1},...S_{w}, en los que "w" es un entero, y los grupos
establecen subárboles en un árbol.
3. El método según la reivindicación 2, en el
que cada subconjunto S_{i1},...S_{im} incluye todas las hojas
de un subárbol con raíces en algún nodo v_{i}, estando asociado al
menos cada nodo en el subárbol con una clave de subconjunto
respectiva.
4. El método según la reivindicación 3, en el
que el contenido es proporcionado a los usuarios en al menos un
mensaje que define un encabezamiento, y el encabezamiento incluye
como máximo r*log(N/r) claves de subconjuntos y cifrados, en
los que r es el número de usuarios en el conjunto revocado R y N es
el número total de usuarios.
5. El método según la reivindicación 3, en el
que el conjunto revocado R define un árbol de expansión, y los
subconjuntos que tienen raíces unidas a nodos del árbol de expansión
definen los subconjuntos.
6. El método según cualquiera de las
reivindicaciones 2 a 5, en el que el árbol incluye una raíz y varios
nodos, teniendo cada nodo al menos una etiqueta asociada, y en el
que cada subconjunto incluye todas las hojas de un subárbol con
raíz en algún nodo v_{i} que no está en él subárbol con raíces en
algún otro nodo v_{j} que desciende desde v_{i}.
7. El método según la reivindicación 6, en el
que el contenido es proporcionado a los usuarios en al menos un
mensaje que define un encabezamiento, y el encabezamiento incluye
como máximo 2r-1 claves de subconjuntos y cifrados,
en la que r es el número de usuarios en el conjunto revocado R.
8. El método según cualquiera de las
reivindicaciones 6 a 7, en el que el conjunto revocado R define un
árbol de expansión, y en el que el método incluye: inicializar un
árbol de cubierta T como el árbol de expansión; retirar
iterativamente nodos desde el árbol de cubierta T y añadir nodos a
una cubierta hasta que el árbol de cubierta T tiene como máximo un
nodo.
9. El método según cualquiera de las
reivindicaciones 6 a 8, en el que cada nodo tiene al menos una
etiqueta inducida posiblemente por al menos uno de sus antepasados,
y en el que cada usuario tiene asignadas etiquetas desde todos los
nodos que cuelgan de un trayecto directo entre el usuario y la raíz
pero no desde nodos en el trayecto directo.
10. Un programa de ordenador que comprende un
código de programa de ordenador para, cuando es cargado en un
sistema de ordenador y ejecutado, hace que dicho sistema de
ordenador realice las operaciones de un método según se ha
reivindicado en cualquiera de las reivindicaciones 1 a 9.
11. Un aparato para cifrado de transmisión,
que comprende: medios para asignar a cada usuario en un grupo de
usuarios de información privada I_{u} respectiva de usuarios;
medios para seleccionar al menos una clave de cifrado de sesión K;
medios para dividir a los usuarios que no están en un conjunto
revocado R en subconjuntos disjuntos S_{i1},...S_{im} que
tienen claves de subconjuntos asociadas L_{i1},...L_{im}; y
medios para cifrar las claves de sesión K con las claves de
subconjuntos L_{i1},...L_{im} para hacer m versiones cifradas
de la clave de sesión K.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US770877 | 1985-08-29 | ||
US09/770,877 US7039803B2 (en) | 2001-01-26 | 2001-01-26 | Method for broadcast encryption and key revocation of stateless receivers |
PCT/GB2002/000305 WO2002060116A2 (en) | 2001-01-26 | 2002-01-23 | Method for broadcast encryption |
Publications (2)
Publication Number | Publication Date |
---|---|
ES2334109T3 true ES2334109T3 (es) | 2010-03-05 |
ES2334109T5 ES2334109T5 (es) | 2013-05-03 |
Family
ID=25089976
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES02710108T Expired - Lifetime ES2334109T5 (es) | 2001-01-26 | 2002-01-23 | Método para la codificación de transmisiones |
Country Status (11)
Country | Link |
---|---|
US (4) | US7039803B2 (es) |
EP (1) | EP1354443B2 (es) |
JP (1) | JP2004520743A (es) |
KR (1) | KR100543630B1 (es) |
CN (2) | CN1976277B (es) |
AT (1) | ATE445269T1 (es) |
AU (1) | AU2002228163A1 (es) |
DE (1) | DE60233929D1 (es) |
ES (1) | ES2334109T5 (es) |
TW (1) | TWI264208B (es) |
WO (1) | WO2002060116A2 (es) |
Families Citing this family (154)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
HU229298B1 (hu) * | 2000-06-21 | 2013-10-28 | Sony Corp | Eljárás és berendezés információk rögzítésére és/vagy lejátszására |
WO2002047388A2 (en) | 2000-11-14 | 2002-06-13 | Scientific-Atlanta, Inc. | Networked subscriber television distribution |
US8127326B2 (en) | 2000-11-14 | 2012-02-28 | Claussen Paul J | Proximity detection using wireless connectivity in a communications system |
JP4581246B2 (ja) * | 2000-12-26 | 2010-11-17 | ソニー株式会社 | 情報処理システム、および情報処理方法、並びにプログラム記録媒体 |
US7421082B2 (en) * | 2000-12-28 | 2008-09-02 | Sony Corporation | Data delivery method and data delivery system using sets of passkeys generated by dividing an encryption key |
JP4281252B2 (ja) * | 2001-01-16 | 2009-06-17 | ソニー株式会社 | 情報記録装置、情報再生装置、情報記録方法、情報再生方法、および情報記録媒体、並びにプログラム記憶媒体 |
US9520993B2 (en) | 2001-01-26 | 2016-12-13 | International Business Machines Corporation | Renewable traitor tracing |
US7039803B2 (en) * | 2001-01-26 | 2006-05-02 | International Business Machines Corporation | Method for broadcast encryption and key revocation of stateless receivers |
US7590247B1 (en) | 2001-04-18 | 2009-09-15 | Mcafee, Inc. | System and method for reusable efficient key distribution |
US7043024B1 (en) * | 2001-04-18 | 2006-05-09 | Mcafee, Inc. | System and method for key distribution in a hierarchical tree |
FR2824212A1 (fr) * | 2001-04-25 | 2002-10-31 | Thomson Licensing Sa | Procede de gestion d'une cle symetrique dans un reseau de communication et dispositifs pour la mise en oeuvre |
US7181620B1 (en) * | 2001-11-09 | 2007-02-20 | Cisco Technology, Inc. | Method and apparatus providing secure initialization of network devices using a cryptographic key distribution approach |
JP3917507B2 (ja) * | 2002-01-28 | 2007-05-23 | 株式会社東芝 | コンテンツ提供側システム、ユーザ側システム、追跡システム、コンテンツ提供方法、暗号化コンテンツ復号方法、不正ユーザ特定方法、暗号化装置、復号装置及びプログラム |
US7340603B2 (en) * | 2002-01-30 | 2008-03-04 | Sony Corporation | Efficient revocation of receivers |
JP3818503B2 (ja) * | 2002-04-15 | 2006-09-06 | ソニー株式会社 | 情報処理装置および方法、並びにプログラム |
US7092527B2 (en) * | 2002-04-18 | 2006-08-15 | International Business Machines Corporation | Method, system and program product for managing a size of a key management block during content distribution |
US7400732B2 (en) * | 2002-07-25 | 2008-07-15 | Xerox Corporation | Systems and methods for non-interactive session key distribution with revocation |
US7516470B2 (en) | 2002-08-02 | 2009-04-07 | Cisco Technology, Inc. | Locally-updated interactive program guide |
US7908625B2 (en) | 2002-10-02 | 2011-03-15 | Robertson Neil C | Networked multimedia system |
US7360235B2 (en) | 2002-10-04 | 2008-04-15 | Scientific-Atlanta, Inc. | Systems and methods for operating a peripheral record/playback device in a networked multimedia system |
US7545935B2 (en) * | 2002-10-04 | 2009-06-09 | Scientific-Atlanta, Inc. | Networked multimedia overlay system |
US8046806B2 (en) | 2002-10-04 | 2011-10-25 | Wall William E | Multiroom point of deployment module |
GB2394803A (en) * | 2002-10-31 | 2004-05-05 | Hewlett Packard Co | Management of security key distribution using an ancestral hierarchy |
US7305711B2 (en) * | 2002-12-10 | 2007-12-04 | Intel Corporation | Public key media key block |
US7450722B2 (en) * | 2002-12-13 | 2008-11-11 | General Instrument Corporation | Subset difference method for multi-cast rekeying |
US20040128259A1 (en) * | 2002-12-31 | 2004-07-01 | Blakeley Douglas Burnette | Method for ensuring privacy in electronic transactions with session key blocks |
US7801820B2 (en) * | 2003-01-13 | 2010-09-21 | Sony Corporation | Real-time delivery of license for previously stored encrypted content |
US8094640B2 (en) | 2003-01-15 | 2012-01-10 | Robertson Neil C | Full duplex wideband communications system for a local coaxial network |
CN1739260B (zh) * | 2003-01-15 | 2011-12-28 | 松下电器产业株式会社 | 内容保护系统、密钥数据产生装置和终端装置 |
BRPI0406777B1 (pt) * | 2003-01-15 | 2017-12-26 | Matsushita Electric Ind Co Ltd | sistema de proteção de conteúdo, aparelho de geração de dados de chave e aparelho terminal |
US7487532B2 (en) | 2003-01-15 | 2009-02-03 | Cisco Technology, Inc. | Optimization of a full duplex wideband communications system |
JP2004220317A (ja) * | 2003-01-15 | 2004-08-05 | Sony Corp | 相互認証方法、プログラム、記録媒体、信号処理システム、再生装置および情報処理装置 |
US8261063B2 (en) * | 2003-02-03 | 2012-09-04 | Hewlett-Packard Development Company, L.P. | Method and apparatus for managing a hierarchy of nodes |
JP3788438B2 (ja) | 2003-03-24 | 2006-06-21 | ソニー株式会社 | 情報記録媒体、情報処理装置、および情報処理方法、並びにコンピュータ・プログラム |
KR100974448B1 (ko) * | 2003-04-24 | 2010-08-10 | 엘지전자 주식회사 | 광디스크의 복사 방지 정보 관리방법 |
KR100974449B1 (ko) * | 2003-04-24 | 2010-08-10 | 엘지전자 주식회사 | 광디스크의 복사 방지 정보 관리방법 |
KR20040092649A (ko) * | 2003-04-24 | 2004-11-04 | 엘지전자 주식회사 | 광디스크의 복사 방지 정보 관리방법 |
KR100972831B1 (ko) * | 2003-04-24 | 2010-07-28 | 엘지전자 주식회사 | 엔크립트된 데이터의 보호방법 및 그 재생장치 |
WO2004107635A2 (en) * | 2003-05-21 | 2004-12-09 | Docomo Communications Laboratories Usa, Inc. | Broadcast encryption using rsa |
JP4759513B2 (ja) * | 2003-06-02 | 2011-08-31 | リキッド・マシンズ・インコーポレーテッド | 動的、分散的および協働的な環境におけるデータオブジェクトの管理 |
JP4615444B2 (ja) * | 2003-08-05 | 2011-01-19 | パナソニック株式会社 | 著作権保護システム |
US7610485B1 (en) * | 2003-08-06 | 2009-10-27 | Cisco Technology, Inc. | System for providing secure multi-cast broadcasts over a network |
JP2007505347A (ja) * | 2003-09-10 | 2007-03-08 | コニンクリユケ フィリップス エレクトロニクス エヌ.ブイ. | コンテンツプロテクト方法及びシステム |
JP4771946B2 (ja) * | 2003-10-16 | 2011-09-14 | パナソニック株式会社 | 暗号通信システム、通信装置 |
KR20050078773A (ko) * | 2004-02-02 | 2005-08-08 | 삼성전자주식회사 | 브로드캐스트 암호화 방법을 위한 사용자 키 할당 방법 |
US7499550B2 (en) * | 2004-02-09 | 2009-03-03 | International Business Machines Corporation | System and method for protecting a title key in a secure distribution system for recordable media content |
JP4635459B2 (ja) * | 2004-03-15 | 2011-02-23 | ソニー株式会社 | 情報処理方法、復号処理方法、および情報処理装置、並びにコンピュータ・プログラム |
JP2005286959A (ja) * | 2004-03-31 | 2005-10-13 | Sony Corp | 情報処理方法、復号処理方法、および情報処理装置、並びにコンピュータ・プログラム |
US8300824B1 (en) * | 2004-04-08 | 2012-10-30 | Cisco Technology, Inc. | System and method for encrypting data using a cipher text in a communications environment |
JP4664358B2 (ja) * | 2004-05-12 | 2011-04-06 | テレフオンアクチーボラゲット エル エム エリクソン(パブル) | 安全なブロードキャストのための鍵管理メッセージ |
US8249258B2 (en) * | 2004-06-07 | 2012-08-21 | National Institute Of Information And Communications Technology | Communication method and communication system using decentralized key management scheme |
JP4162237B2 (ja) * | 2004-06-24 | 2008-10-08 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 複数の復号化装置に対し選択的にメッセージを配信する暗号化通信システム、暗号化装置、復号化装置、暗号化方法、復号化方法、暗号化プログラム、及び復号化プログラム |
KR100968181B1 (ko) * | 2004-06-24 | 2010-07-07 | 인터내셔널 비지네스 머신즈 코포레이션 | 멀티캐스트를 통한 액세스 제어 |
US7266548B2 (en) * | 2004-06-30 | 2007-09-04 | Microsoft Corporation | Automated taxonomy generation |
KR100579515B1 (ko) * | 2004-10-08 | 2006-05-15 | 삼성전자주식회사 | 브로드캐스트 암호화를 위한 키 생성 장치 및 방법 |
US7516326B2 (en) * | 2004-10-15 | 2009-04-07 | Hewlett-Packard Development Company, L.P. | Authentication system and method |
US7454021B2 (en) * | 2004-10-29 | 2008-11-18 | Hewlett-Packard Development Company, L.P. | Off-loading data re-encryption in encrypted data management systems |
JP4690420B2 (ja) * | 2004-11-16 | 2011-06-01 | テレフオンアクチーボラゲット エル エム エリクソン(パブル) | 情報への選択的アクセスのためのシステムにおける改善された鍵配信 |
TWI277870B (en) * | 2004-11-22 | 2007-04-01 | Toshiba Corp | Copyright management method, information recording/reproducing method and device, and information recording medium and method of manufacturing the medium |
US8090105B2 (en) * | 2004-11-24 | 2012-01-03 | International Business Machines Corporation | Broadcast encryption with dual tree sizes |
US20060126831A1 (en) * | 2004-12-14 | 2006-06-15 | Cerruti Julian A | Systems, methods, and media for adding an additional level of indirection to title key encryption |
KR100811046B1 (ko) * | 2005-01-14 | 2008-03-06 | 엘지전자 주식회사 | 브로드캐스트/멀티캐스트 서비스에서 디지털 저작권관리방법 |
JP4599194B2 (ja) * | 2005-03-08 | 2010-12-15 | 株式会社東芝 | 復号装置、復号方法、及びプログラム |
KR100717005B1 (ko) * | 2005-04-06 | 2007-05-10 | 삼성전자주식회사 | 폐기 키를 결정하는 방법 및 장치와 이것을 이용하여복호화하는 방법 및 장치 |
KR100970391B1 (ko) | 2005-04-19 | 2010-07-15 | 삼성전자주식회사 | 브로드 캐스트 암호화 시스템에서의 태그 형성방법 |
EP1875660B1 (en) | 2005-04-19 | 2018-10-24 | Samsung Electronics Co., Ltd. | Tag generation method in broadcast encryption system |
KR100765750B1 (ko) | 2005-05-09 | 2007-10-15 | 삼성전자주식회사 | 브로드캐스트 암호화 방식에 따라 효율적으로암호화/복호화하는 방법 및 장치 |
US20060265338A1 (en) * | 2005-05-17 | 2006-11-23 | Rutkowski Matt F | System and method for usage based key management rebinding using logical partitions |
KR100708133B1 (ko) * | 2005-05-25 | 2007-04-17 | 삼성전자주식회사 | 브로드캐스트 암호화 방식에 따라 효율적으로암호화/복호화하는 방법 및 장치 |
KR100708134B1 (ko) * | 2005-05-25 | 2007-04-17 | 삼성전자주식회사 | 브로드캐스트 암호화 방식에 따라 효율적으로암호화/복호화하는 방법 및 장치 |
KR101152311B1 (ko) * | 2005-06-09 | 2012-06-11 | 삼성전자주식회사 | 트리 토폴로지 네트워크 구조에서의 브로드 캐스트암호화를 위한 키 관리방법 |
US20090210701A1 (en) * | 2005-06-23 | 2009-08-20 | Junbiao Zhang | Multi-Media Access Device Registration System and Method |
US20070011735A1 (en) * | 2005-07-06 | 2007-01-11 | Cable Television Laboratories, Inc. | Open standard conditional access system |
US7876998B2 (en) | 2005-10-05 | 2011-01-25 | Wall William E | DVD playback over multi-room by copying to HDD |
US7523304B2 (en) * | 2005-11-22 | 2009-04-21 | Ntt Docomo, Inc. | Generation of set coverings with free riders, and generation of ordered sets of meeting points, in systems which include, but are not limited to, systems for broadcast encryption and systems for certificate revocation |
KR100803596B1 (ko) * | 2005-11-25 | 2008-02-19 | 삼성전자주식회사 | 폐기 메커니즘 상에서 외부 디바이스 또는 서비스를이용하는 복호화 방법 및 장치, 이를 위한 복호화 지원방법 및 장치 |
US8306026B2 (en) * | 2005-12-15 | 2012-11-06 | Toshiba America Research, Inc. | Last hop topology sensitive multicasting key management |
US8176568B2 (en) | 2005-12-30 | 2012-05-08 | International Business Machines Corporation | Tracing traitor coalitions and preventing piracy of digital content in a broadcast encryption system |
US7860990B2 (en) | 2006-01-31 | 2010-12-28 | Genband Us Llc | Session data records and related alarming within a session over internet protocol (SOIP) network |
US7861003B2 (en) | 2006-01-31 | 2010-12-28 | Genband Us Llc | Adaptive feedback for session over internet protocol |
US7865612B2 (en) * | 2006-01-31 | 2011-01-04 | Genband Us Llc | Method and apparatus for partitioning resources within a session-over-internet-protocol (SoIP) session controller |
KR100729139B1 (ko) * | 2006-02-13 | 2007-06-18 | 고려대학교 산학협력단 | 브로드캐스트 암호화를 위한 모듈화 방법 |
FR2897736B1 (fr) * | 2006-02-22 | 2008-04-11 | Viaccess Sa | Procede d'etablissement d'une cle cryptographique, tete de reseau et recepteur pour ce procede, et procede de transmission de signaux |
FR2899748B1 (fr) * | 2006-04-07 | 2008-11-28 | Thales Sa | Schema de diffusion hybride efficace, adapte a une faible bande passante |
CN101060398A (zh) * | 2006-04-20 | 2007-10-24 | 松下电器产业株式会社 | 新安全群组的安全凭证产生方法通信方法,及网络系统 |
US8676713B2 (en) * | 2006-05-30 | 2014-03-18 | Dell Products L.P. | Dynamic constraints for content rights |
EP2022207B1 (fr) * | 2006-05-31 | 2018-10-10 | Orange | Procédé cryptographique à chiffrement et révocation intégrés, système, dispositif et programmes pour la mise en oeuvre du procédé |
JP2007336059A (ja) * | 2006-06-13 | 2007-12-27 | Toshiba Corp | 情報アクセス管理方法および装置 |
KR20070119335A (ko) * | 2006-06-15 | 2007-12-20 | 삼성전자주식회사 | 브로드캐스트 암호화를 위한 사용자 키 할당 방법 |
JP5005277B2 (ja) * | 2006-07-13 | 2012-08-22 | 日東電工株式会社 | 貼付剤および貼付製剤 |
WO2008013562A1 (en) * | 2006-07-24 | 2008-01-31 | Thomson Licensing | Method, apparatus and system for secure distribution of content |
JP4179563B2 (ja) * | 2006-09-21 | 2008-11-12 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 暗号通信の暗号鍵を管理する技術 |
KR101377455B1 (ko) * | 2006-10-09 | 2014-04-02 | 삼성전자주식회사 | 브로드캐스트 암호화를 위한 암호화 키 생성 방법 및 장치 |
JP4984827B2 (ja) | 2006-10-30 | 2012-07-25 | ソニー株式会社 | 鍵生成装置、暗号化装置、受信装置、鍵生成方法、暗号化方法、鍵処理方法、およびプログラム |
JP2008113203A (ja) * | 2006-10-30 | 2008-05-15 | Sony Corp | 鍵生成装置、暗号化装置、受信装置、鍵生成方法、暗号化方法、鍵処理方法、およびプログラム |
US7986787B2 (en) * | 2006-12-08 | 2011-07-26 | International Business Machines Corporation | System, method, and service for tracing traitors from content protection circumvention devices |
US7978848B2 (en) * | 2007-01-09 | 2011-07-12 | Microsoft Corporation | Content encryption schema for integrating digital rights management with encrypted multicast |
KR20090000624A (ko) * | 2007-03-09 | 2009-01-08 | 삼성전자주식회사 | 호스트 디바이스와의 상호 인증 방법 및 그 시스템 |
US7876895B2 (en) * | 2007-05-09 | 2011-01-25 | International Business Machines Corporation | System, method, and service for performing unified broadcast encryption and traitor tracing for digital content |
US7904717B2 (en) * | 2007-06-19 | 2011-03-08 | Oracle America, Inc. | Method, apparatus, and manufacture for decryption of network traffic in a secure session |
US8767965B2 (en) * | 2007-07-19 | 2014-07-01 | Telcordia Technologies, Inc. | Method for a public-key infrastructure providing communication integrity and anonymity while detecting malicious communication |
JP5150175B2 (ja) * | 2007-09-05 | 2013-02-20 | Kddi株式会社 | Sd法におけるクライアント端末被覆方法およびプログラム |
US7912062B2 (en) | 2007-09-28 | 2011-03-22 | Genband Us Llc | Methods and apparatus for managing addresses related to virtual partitions of a session exchange device |
US8824685B2 (en) * | 2007-10-15 | 2014-09-02 | Sony Corporation | Method for detection of a hacked decoder |
JP2009105853A (ja) * | 2007-10-25 | 2009-05-14 | Kddi Corp | 任意の木構造に対応したsd法およびプログラム |
EP2068490A1 (en) | 2007-12-05 | 2009-06-10 | Nagravision S.A. | Method to generate a private key in a Boneh-Franklin scheme |
EP2073431A1 (en) | 2007-12-21 | 2009-06-24 | Nagravision S.A. | Method to trace traceable parts of original private keys in a public-key cryptosystem |
US7936882B2 (en) * | 2008-01-17 | 2011-05-03 | Nagravision S.A. | Method to trace traceable parts of original private keys in a public-key cryptosystem |
US8306220B2 (en) * | 2008-01-17 | 2012-11-06 | Nagravision S.A. | Method to generate a private key in a boneh-franklin scheme |
KR20100120662A (ko) * | 2008-01-18 | 2010-11-16 | 코닌클리즈케 필립스 일렉트로닉스 엔.브이. | 자동 노드 및 키 취소를 위한 무선 통신 시스템 및 방법 |
US8499149B2 (en) * | 2008-02-20 | 2013-07-30 | Hewlett-Packard Development Company, L.P. | Revocation for direct anonymous attestation |
US9729316B2 (en) * | 2008-02-27 | 2017-08-08 | International Business Machines Corporation | Unified broadcast encryption system |
US8391493B2 (en) * | 2008-02-29 | 2013-03-05 | The Boeing Company | Probabilistic mitigation of control channel jamming via random key distribution in wireless communications networks |
EP2279630A4 (en) * | 2008-04-24 | 2015-03-11 | Nokia Corp | METHOD, DEVICE AND COMPUTER PROGRAM PRODUCT FOR PROVIDING INTERNET PROTOCOL MULTICAST TRANSPORT |
KR20090115565A (ko) * | 2008-05-02 | 2009-11-05 | 삼성전자주식회사 | 컨텐트 키 전송 방법 및 그 장치 |
US8108928B2 (en) * | 2008-06-20 | 2012-01-31 | International Business Machines Corporation | Adaptive traitor tracing |
US8122501B2 (en) * | 2008-06-20 | 2012-02-21 | International Business Machines Corporation | Traitor detection for multilevel assignment |
US8422684B2 (en) * | 2008-08-15 | 2013-04-16 | International Business Machines Corporation | Security classes in a media key block |
US20100054479A1 (en) * | 2008-09-02 | 2010-03-04 | Industrial Technology Research Institute | Drm key management system using multi-dimensional grouping techniques |
US8189789B2 (en) * | 2008-11-03 | 2012-05-29 | Telcordia Technologies, Inc. | Intrusion-tolerant group management for mobile ad-hoc networks |
US8347081B2 (en) * | 2008-12-10 | 2013-01-01 | Silicon Image, Inc. | Method, apparatus and system for employing a content protection system |
EP2371082A1 (en) * | 2008-12-23 | 2011-10-05 | Telefonaktiebolaget LM Ericsson (publ) | A key management method |
US8571209B2 (en) | 2009-01-19 | 2013-10-29 | International Business Machines | Recording keys in a broadcast-encryption-based system |
KR101603133B1 (ko) * | 2009-09-21 | 2016-03-14 | 삼성전자주식회사 | 휴대용 단말기에서 채널 재생 지연을 줄이기 위한 장치 및 방법 |
US8254580B2 (en) * | 2009-09-30 | 2012-08-28 | Telefonaktiebolaget L M Ericsson (Publ) | Key distribution in a hierarchy of nodes |
EP2507708B1 (en) * | 2009-12-04 | 2019-03-27 | Cryptography Research, Inc. | Verifiable, leak-resistant encryption and decryption |
EP2355503A1 (en) * | 2010-02-04 | 2011-08-10 | Nagravision S.A. | Method to manage members of at least one group of decoders having access to audio/video data |
WO2011107451A1 (en) * | 2010-03-03 | 2011-09-09 | Nagravision S.A. | Method to manage revocations in a group of terminals |
CN102195775B (zh) * | 2010-03-15 | 2016-03-02 | 中兴通讯股份有限公司 | 一种云计算密钥的加密和解密方法及装置 |
US8396896B2 (en) | 2010-11-10 | 2013-03-12 | International Business Machines Corporation | Assigning resources to a binary tree structure |
JP5676331B2 (ja) * | 2011-03-24 | 2015-02-25 | 株式会社東芝 | ルートノード及びプログラム |
CN104025502B (zh) * | 2011-12-22 | 2017-07-11 | 英特尔公司 | 用于处理blake安全散列算法的指令处理器、方法以及系统 |
WO2013179316A1 (en) * | 2012-05-29 | 2013-12-05 | Power-One Italy S.P.A. | A method and system for transferring firmware or software to a plurality of devices |
US8782440B2 (en) | 2012-08-15 | 2014-07-15 | International Business Machines Corporation | Extending the number of applications for accessing protected content in a media using media key blocks |
US20150237400A1 (en) * | 2013-01-05 | 2015-08-20 | Benedict Ow | Secured file distribution system and method |
US9425967B2 (en) * | 2013-03-20 | 2016-08-23 | Industrial Technology Research Institute | Method for certificate generation and revocation with privacy preservation |
GB2528874A (en) * | 2014-08-01 | 2016-02-10 | Bae Systems Plc | Improvements in and relating to secret communications |
US9639687B2 (en) * | 2014-11-18 | 2017-05-02 | Cloudfare, Inc. | Multiply-encrypting data requiring multiple keys for decryption |
JP5845333B2 (ja) * | 2014-12-24 | 2016-01-20 | 株式会社東芝 | 管理装置、システム、及び方法 |
US10333696B2 (en) | 2015-01-12 | 2019-06-25 | X-Prime, Inc. | Systems and methods for implementing an efficient, scalable homomorphic transformation of encrypted data with minimal data expansion and improved processing efficiency |
JP6271808B2 (ja) | 2015-03-16 | 2018-01-31 | 株式会社東芝 | 管理装置、プログラム、システムおよび方法 |
US10333909B2 (en) | 2016-02-09 | 2019-06-25 | Conduent Business Services, Llc | Methods and systems for broadcasting targeted advertisements to mobile device |
CN106878002B (zh) * | 2016-07-05 | 2020-04-24 | 阿里巴巴集团控股有限公司 | 一种权限撤销方法及装置 |
CN110870252B (zh) * | 2017-07-18 | 2022-10-11 | 励智识别技术有限公司 | 验证电子设备授权的方法和设备 |
EP3462571A1 (en) | 2017-09-28 | 2019-04-03 | Koninklijke Philips N.V. | Authentication in a wireless power transfer system |
JP2018038077A (ja) * | 2017-11-02 | 2018-03-08 | 株式会社東芝 | 管理装置、プログラム、システムおよび方法 |
US10841078B2 (en) * | 2018-07-26 | 2020-11-17 | International Business Machines Corporation | Encryption key block generation with barrier descriptors |
CN109067520B (zh) * | 2018-07-26 | 2020-06-05 | 北京航空航天大学 | 可撤销的基于层级身份的广播加密方法及系统 |
CN110858835B (zh) * | 2018-08-24 | 2022-02-18 | 中国电信股份有限公司 | 通信方法、系统和相关设备以及计算机可读存储介质 |
US11876903B2 (en) | 2020-12-09 | 2024-01-16 | International Business Machines Corporation | Decentralized broadcast encryption and key generation facility |
US11997218B2 (en) | 2021-03-02 | 2024-05-28 | International Business Machines Corporation | Decentralized, dynamic media key block for broadcast encryption |
US11804949B2 (en) * | 2021-03-19 | 2023-10-31 | Raytheon Bbn Technologies Corp. | Subscriber revocation in a publish-subscribe network using attribute-based encryption |
US11558185B2 (en) | 2021-03-19 | 2023-01-17 | Raytheon Bbn Technologies Corp. | Stream-based key management |
US20230421357A1 (en) * | 2022-06-09 | 2023-12-28 | NEC Laboratories Europe GmbH | Method and system for anonymous symmetric authenticated key establishment |
Family Cites Families (38)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5241597A (en) | 1991-02-01 | 1993-08-31 | Motorola, Inc. | Method for recovering from encryption key variable loss |
IL106796A (en) | 1993-08-25 | 1997-11-20 | Algorithmic Res Ltd | Broadcast encryption |
US6560340B1 (en) * | 1995-04-03 | 2003-05-06 | Scientific-Atlanta, Inc. | Method and apparatus for geographically limiting service in a conditional access system |
US5675649A (en) | 1995-11-30 | 1997-10-07 | Electronic Data Systems Corporation | Process for cryptographic key generation and safekeeping |
US5812670A (en) | 1995-12-28 | 1998-09-22 | Micali; Silvio | Traceable anonymous transactions |
US5748736A (en) * | 1996-06-14 | 1998-05-05 | Mittra; Suvo | System and method for secure group communications via multicast or broadcast |
FR2751817B1 (fr) | 1996-07-29 | 1998-09-11 | Thomson Multimedia Sa | Systeme a acces conditionnel utilisant des messages a cles de chiffrement multiples |
DE19649292A1 (de) * | 1996-11-28 | 1998-06-04 | Deutsche Telekom Ag | Verfahren zum Sichern eines durch eine Schlüsselhierarchie geschützten Systems |
US6285991B1 (en) * | 1996-12-13 | 2001-09-04 | Visa International Service Association | Secure interactive electronic account statement delivery system |
US5920861A (en) | 1997-02-25 | 1999-07-06 | Intertrust Technologies Corp. | Techniques for defining using and manipulating rights management data structures |
US6690795B1 (en) * | 1997-03-04 | 2004-02-10 | Lucent Technologies Inc. | Multiple keys for decrypting data in restricted-access television system |
JP3864401B2 (ja) * | 1997-04-23 | 2006-12-27 | ソニー株式会社 | 認証システム、電子機器、認証方法、および記録媒体 |
US6775382B1 (en) * | 1997-06-30 | 2004-08-10 | Sun Microsystems, Inc. | Method and apparatus for recovering encryption session keys |
US6397329B1 (en) * | 1997-11-21 | 2002-05-28 | Telcordia Technologies, Inc. | Method for efficiently revoking digital identities |
US6098056A (en) | 1997-11-24 | 2000-08-01 | International Business Machines Corporation | System and method for controlling access rights to and security of digital content in a distributed information system, e.g., Internet |
US6247127B1 (en) * | 1997-12-19 | 2001-06-12 | Entrust Technologies Ltd. | Method and apparatus for providing off-line secure communications |
JPH11187013A (ja) | 1997-12-24 | 1999-07-09 | Ibm Japan Ltd | 暗号鍵配信システム |
US6084969A (en) * | 1997-12-31 | 2000-07-04 | V-One Corporation | Key encryption system and method, pager unit, and pager proxy for a two-way alphanumeric pager network |
US6049878A (en) * | 1998-01-20 | 2000-04-11 | Sun Microsystems, Inc. | Efficient, secure multicasting with global knowledge |
US6118873A (en) * | 1998-04-24 | 2000-09-12 | International Business Machines Corporation | System for encrypting broadcast programs in the presence of compromised receiver devices |
JP4273535B2 (ja) * | 1998-05-12 | 2009-06-03 | ソニー株式会社 | データ伝送制御方法、データ伝送システム、データ受信装置及びデータ送信装置 |
IL126472A0 (en) * | 1998-10-07 | 1999-08-17 | Nds Ltd | Secure communications system |
US6782475B1 (en) * | 1999-01-15 | 2004-08-24 | Terence E. Sumner | Method and apparatus for conveying a private message to selected members |
JP4214651B2 (ja) * | 1999-03-31 | 2009-01-28 | ソニー株式会社 | データコミュニケーションシステム、データ管理方法 |
US6636968B1 (en) * | 1999-03-25 | 2003-10-21 | Koninklijke Philips Electronics N.V. | Multi-node encryption and key delivery |
US6263435B1 (en) | 1999-07-06 | 2001-07-17 | Matsushita Electric Industrial Co., Ltd. | Dual encryption protocol for scalable secure group communication |
US6684331B1 (en) * | 1999-12-22 | 2004-01-27 | Cisco Technology, Inc. | Method and apparatus for distributing and updating group controllers over a wide area network using a tree structure |
JP4023083B2 (ja) | 2000-04-06 | 2007-12-19 | ソニー株式会社 | 情報処理システム、情報処理方法、および情報記録媒体、並びにプログラム提供媒体 |
US7200230B2 (en) * | 2000-04-06 | 2007-04-03 | Macrovision Corporation | System and method for controlling and enforcing access rights to encrypted media |
JP2001352321A (ja) | 2000-04-06 | 2001-12-21 | Sony Corp | 情報処理システム、情報処理方法、および情報記録媒体、並びにプログラム提供媒体 |
US6961858B2 (en) * | 2000-06-16 | 2005-11-01 | Entriq, Inc. | Method and system to secure content for distribution via a network |
US6839436B1 (en) * | 2000-10-16 | 2005-01-04 | Lucent Technologies Inc. | Method for providing long-lived broadcast encrypton |
EP1334583A2 (en) * | 2000-10-26 | 2003-08-13 | General Instrument Corporation | Enforcement of content rights and conditions for multimedia content |
JP2002281013A (ja) | 2000-12-18 | 2002-09-27 | Matsushita Electric Ind Co Ltd | 著作権保護のための鍵管理装置、記録媒体、再生装置、記録装置、鍵管理方法、再生方法、鍵管理プログラム及び鍵管理プログラムを記録したコンピュータ読み取り可能な記録媒体 |
CN100499799C (zh) * | 2000-12-22 | 2009-06-10 | 爱迪德艾恩德霍芬公司 | 提供对被传送数据的有条件访问的传输系统 |
US7039803B2 (en) * | 2001-01-26 | 2006-05-02 | International Business Machines Corporation | Method for broadcast encryption and key revocation of stateless receivers |
JP2003050745A (ja) * | 2001-08-07 | 2003-02-21 | Sony Corp | 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム |
US20030200548A1 (en) * | 2001-12-27 | 2003-10-23 | Paul Baran | Method and apparatus for viewer control of digital TV program start time |
-
2001
- 2001-01-26 US US09/770,877 patent/US7039803B2/en not_active Expired - Lifetime
-
2002
- 2002-01-08 US US10/042,652 patent/US7523307B2/en not_active Expired - Fee Related
- 2002-01-22 TW TW091100941A patent/TWI264208B/zh not_active IP Right Cessation
- 2002-01-23 DE DE60233929T patent/DE60233929D1/de not_active Expired - Lifetime
- 2002-01-23 ES ES02710108T patent/ES2334109T5/es not_active Expired - Lifetime
- 2002-01-23 JP JP2002560330A patent/JP2004520743A/ja active Pending
- 2002-01-23 WO PCT/GB2002/000305 patent/WO2002060116A2/en active IP Right Grant
- 2002-01-23 EP EP02710108A patent/EP1354443B2/en not_active Expired - Lifetime
- 2002-01-23 AT AT02710108T patent/ATE445269T1/de not_active IP Right Cessation
- 2002-01-23 KR KR1020037009628A patent/KR100543630B1/ko active IP Right Grant
- 2002-01-23 AU AU2002228163A patent/AU2002228163A1/en not_active Abandoned
- 2002-01-23 CN CN2007100021205A patent/CN1976277B/zh not_active Expired - Lifetime
- 2002-01-23 CN CNB028041348A patent/CN1303777C/zh not_active Expired - Lifetime
-
2005
- 2005-04-28 US US11/117,677 patent/US7698551B2/en not_active Expired - Fee Related
-
2008
- 2008-04-02 US US12/061,084 patent/US7925025B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
WO2002060116A2 (en) | 2002-08-01 |
CN1489847A (zh) | 2004-04-14 |
US7698551B2 (en) | 2010-04-13 |
US7925025B2 (en) | 2011-04-12 |
KR20030085125A (ko) | 2003-11-03 |
US7039803B2 (en) | 2006-05-02 |
AU2002228163A1 (en) | 2002-08-06 |
CN1976277A (zh) | 2007-06-06 |
EP1354443B2 (en) | 2013-01-02 |
ATE445269T1 (de) | 2009-10-15 |
JP2004520743A (ja) | 2004-07-08 |
ES2334109T5 (es) | 2013-05-03 |
US20080192939A1 (en) | 2008-08-14 |
KR100543630B1 (ko) | 2006-01-20 |
US7523307B2 (en) | 2009-04-21 |
EP1354443B1 (en) | 2009-10-07 |
TWI264208B (en) | 2006-10-11 |
DE60233929D1 (de) | 2009-11-19 |
EP1354443A2 (en) | 2003-10-22 |
US20020104001A1 (en) | 2002-08-01 |
US20050195980A1 (en) | 2005-09-08 |
WO2002060116A3 (en) | 2002-09-26 |
US20020147906A1 (en) | 2002-10-10 |
CN1976277B (zh) | 2010-10-13 |
CN1303777C (zh) | 2007-03-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2334109T3 (es) | Metodo para la codificacion de transmisiones. | |
US7010125B2 (en) | Method for tracing traitor receivers in a broadcast encryption system | |
Naor et al. | Revocation and tracing schemes for stateless receivers | |
KR20060129934A (ko) | 정보 처리 방법, 복호 처리 방법 및 정보 처리 장치와컴퓨터 프로그램 | |
JP4162237B2 (ja) | 複数の復号化装置に対し選択的にメッセージを配信する暗号化通信システム、暗号化装置、復号化装置、暗号化方法、復号化方法、暗号化プログラム、及び復号化プログラム | |
KR101086431B1 (ko) | 폐기 메커니즘 상에서 외부 디바이스 또는 서비스를이용하는 복호화 방법 및 장치, 이를 위한 복호화 지원방법 및 장치 | |
JP2005123678A (ja) | 情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラム | |
JP2004229128A (ja) | 暗号データ配信システム、および情報処理装置、情報処理方法、並びにコンピュータ・プログラム | |
KR101094094B1 (ko) | 복수 개의 노드로 구성된 그룹 간의 정보 교환 방법 및 공유키 생성 방법 | |
JP2007020025A (ja) | 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム | |
JP2004320183A (ja) | 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム | |
JP2005191805A (ja) | 暗号文配信方法、情報処理装置、および情報処理方法、並びにコンピュータ・プログラム | |
WO2009157050A1 (ja) | 情報処理装置及びプログラム | |
JP2005252916A (ja) | 情報処理方法、復号処理方法、および情報処理装置、並びにコンピュータ・プログラム | |
KR20210117733A (ko) | 폐기 메커니즘 상에서 외부 디바이스 또는 서비스를이용하는 복호화 방법 및 장치, 이를 위한 복호화 지원방법 및 장치 | |
Obied | Broadcas t Encryption | |
Chen | A Survey on Traitor Tracing Schemes | |
JP2008294720A (ja) | 不正者追跡可能な放送型暗号システム、そのセンタ装置及び利用者装置、それらのプログラム及びその記録媒体 | |
Błaśkiewicz et al. | Ghost Train for Anonymous Communication | |
Jin | Traitor Tracing for Multimedia Forensics |