ES2337369T3 - Autentificacion de datos en un sistema de transmision digital. - Google Patents

Autentificacion de datos en un sistema de transmision digital. Download PDF

Info

Publication number
ES2337369T3
ES2337369T3 ES05110156T ES05110156T ES2337369T3 ES 2337369 T3 ES2337369 T3 ES 2337369T3 ES 05110156 T ES05110156 T ES 05110156T ES 05110156 T ES05110156 T ES 05110156T ES 2337369 T3 ES2337369 T3 ES 2337369T3
Authority
ES
Spain
Prior art keywords
value
data
unit
authentication
key
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
Application number
ES05110156T
Other languages
English (en)
Inventor
Jean-Bernard Beuque
Original Assignee
Thomson Licensing SAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Thomson Licensing SAS filed Critical Thomson Licensing SAS
Application granted granted Critical
Publication of ES2337369T3 publication Critical patent/ES2337369T3/es
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2347Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving video stream encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • H04N21/2351Processing of additional data, e.g. scrambling of additional data or processing content descriptors involving encryption of additional data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/23614Multiplexing of additional data and video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/26606Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel for generating or managing entitlement messages, e.g. Entitlement Control Message [ECM] or Entitlement Management Message [EMM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/26613Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel for generating or managing keys in general
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/418External card to be used in combination with the client device, e.g. for conditional access
    • H04N21/4181External card to be used in combination with the client device, e.g. for conditional access for conditional access
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/435Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/435Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
    • H04N21/4353Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream involving decryption of additional data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4405Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video stream decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/458Scheduling content for creating a personalised stream, e.g. by combining a locally stored advertisement with an incoming stream; Updating operations, e.g. for OS modules ; time-related management operations
    • H04N21/4586Content update operation triggered locally, e.g. by comparing the version of software modules in a DVB carousel to the version stored locally
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/462Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
    • H04N21/4627Rights management associated to the content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/8166Monomedia components thereof involving executable data, e.g. software
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/8166Monomedia components thereof involving executable data, e.g. software
    • H04N21/818OS software
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/835Generation of protective data, e.g. certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/162Authorising the user terminal, e.g. by paying; Registering the use of a subscription channel, e.g. billing
    • H04N7/163Authorising the user terminal, e.g. by paying; Registering the use of a subscription channel, e.g. billing by receiver means only
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/167Systems rendering the television signal unintelligible and subsequently intelligible
    • H04N7/1675Providing digital key or authorisation information for generation or regeneration of the scrambling sequence
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/60Digital content management, e.g. content distribution
    • H04L2209/601Broadcast encryption

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Security & Cryptography (AREA)
  • Databases & Information Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Storage Device Security (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)
  • Reduction Or Emphasis Of Bandwidth Of Signals (AREA)
  • Dc Digital Transmission (AREA)
  • Television Systems (AREA)
  • Near-Field Transmission Systems (AREA)
  • Burglar Alarm Systems (AREA)

Abstract

Método para autenticar datos a enviar a través de un sistema de transmisión digital (2), estando organizados los datos en una serie de unidades de datos (75, 76, 77, 78), caracterizado por las siguientes etapas: generar un primer valor de autenticación (83) para, al menos, a una primera unidad (78), comprendiendo dicha primera unidad (78) un identificador (85) de una primera clave y un primer valor de firma (86) generado con dicha primera clave; almacenar dicho primer valor de autenticación (83) en una segunda unidad (76) que haga referencia a dicha primera unidad (78); generar un segundo valor de autenticación (79) para dicha segunda unidad (76), siendo dicho segundo valor de autenticación (79) un valor de troceo; generar un segundo valor de firma (81) para, al menos, dicho segundo valor de autenticación (79) con una segunda clave; y transmitir dicha primera y dicha segunda unidad (78, 76), de un identificador (80) para la segunda clave y dicho segundo valor de firma (81).

Description

Autenticación de datos en un sistema de transmisión digital.
La presente invención se refiere a un método para autenticar los datos enviados en un sistema de transmisión digital.
La transmisión de datos digitales a través de radiodifusión es bien conocida en el ámbito de los sistemas de TV de pago, cuando se envía información audiovisual codificada, por lo general mediante un enlace vía satélite o satélite/cable, a una serie de abonados, cada uno de los cuales posee un decodificador capaz de descodificar el programa transmitido para su posterior visionado. También se conocen sistemas de radiodifusión digital terrestre. Los sistemas más recientes también han utilizado el enlace de radiodifusión para transmitir otros datos, además de, o junto a los datos audiovisuales, tales como programas informáticos o aplicaciones interactivas al decodificador o a un PC que esté conectado al mismo.
Un problema específico en relación con la transmisión de datos de aplicaciones radica en la necesidad de verificar la integridad y el origen de cualquiera de dichos datos. Dado que este tipo de datos puede utilizarse para reconfigurar el decodificador, así como para implementar buen número de aplicaciones interactivas, es esencial que los datos recibidos estén completos y se hayan identificado como procedentes de una fuente conocida. De lo contrario, pueden surgir problemas operativos relacionados con la descarga de datos incompletos, así como el riesgo de que el descodificador quede desprotegido frente a ataques de terceros o similares.
Los anteriores intentos de autentificar dichos datos se han concentrado en la verificación a nivel de encapsulación o formateo de datos en un tren de paquetes. Por ejemplo, la solicitud de patente europea EP0752786 describe un sistema en el que los datos están encapsulados en una serie de módulos o, utilizando la terminología asociada a la norma MPEG, una serie de tablas o secciones, encapsulándose entonces dichas tablas o secciones en paquetes en un tren de transporte MPEG.
Las operaciones de autenticación se llevan a cabo en relación con los datos tabulados, y una tabla de directorio contiene, por ejemplo, una lista de todas las tablas que contienen datos correspondientes a dicha aplicación, junto con una lista de los valores flash asociados a cada tabla, para permitir la posterior verificación de los datos de la tabla. La propia tabla del directorio puede incorporar una firma con anterioridad a su transmitir forma que la información contenida en la tabla del directorio y las tablas asociadas no pueda modificarse sin alterar los valores de troceo y de firma.
El documento EP 0781003 describe un sistema para la firma de datos, ventajosamente configurados en archivos y en grupos. Los archivos incluidos en un grupo se cifran mediante troceo de forma encadenada, utilizándose el resultado de una operación de cifrado mediante troceo como datos de entrada de la siguiente. El cifrado final de cada grupo se cifra mediante troceo de forma encadenada junto con los cifrados finales de otros grupos, a fin de generar un único valor de troceo definitivo. De este modo, un decodificador podrá recibir el valor final único de troceo, los valores de troceo finales de cada grupo y los archivos de un grupo, a fin de poder autentificar los archivos.
El problema existente con dichos sistemas conocidos radica en su falta de adecuación para gestionar estructuras de organización de datos más complejas. Concretamente, la utilización de una única tabla de directorio que contenga una lista completa de valores de troceo para cada tabla asociada significa que dichos sistemas no pueden adaptarse con facilidad para gestionar un número de tablas grande o variable.
El sistema también está deficientemente adaptado para permitir la autenticación del software proporcionado por diversos operadores de radiodifusión, dado que una única tabla de directorios MPEG enlaza todas las tablas, y dado que las operaciones de autenticación se llevan a cabo en la etapa de formateo de los datos en tablas para el encapsulado y la transmisión de paquetes. Por lo general, esta operación se lleva a cabo bajo el control de un solo operador.
De acuerdo con un primer aspecto de la presente invención, se proporciona un método para autenticar los datos enviados en un sistema de transmisión digital caracterizado por la organización de los datos con anterioridad a la transmisión en una jerarquía de, al menos, una unidad de directorio raíz, una unidad de subdirectorio y una unidad de archivo, actuándose sobre los datos de un archivo mediante un algoritmo de autenticación y un valor asociado de autenticación de archivo almacenado en el subdirectorio de referencia, actuándose a su vez sobre dicho valor de autenticación de archivo mediante un algoritmo de autenticación y un valor asociado de autenticación del directorio almacenado en el directorio raíz de referencia.
A diferencia de los sistemas conocidos, en los que un solo directorio de tablas hace referencia a todas las tablas asociadas, la utilización de una estructura jerárquica múltiple junto con la aplicación de un algoritmo de autenticación en cada etapa de la jerarquía proporciona una estructura de datos segura y modular. Dado que un valor de autenticación de archivo de un subdirectorio es autentificado a su vez a un nivel superior mediante el valor correspondiente del directorio raíz, no es posible modificar un elemento en un nivel inferior sin cambiar los valores de autenticación a un nivel superior (y viceversa).
Preferiblemente, la autenticación de los datos del archivo se lleva a cabo aplicando un algoritmo de troceo a una parte o a todos los datos del archivo, almacenándose el valor de troceo resultante como valor de autenticación del archivo en el subdirectorio de referencia. Igualmente, la autenticación de un subdirectorio puede llevarse a cabo aplicando un algoritmo de troceo al valor de autenticación del archivo (y a otros datos si así se desea), almacenándose el valor de troceo resultante como valor de autenticación del subdirectorio en el directorio raíz de referencia.
Pueden preverse otras realizaciones, por ejemplo, en las que los datos del archivo se codifican de acuerdo con un algoritmo de codificación, y la clave de codificación (o su número de identificación de clave) utilizada como valor de autenticación se almacena en el subdirectorio. Esta clave de archivo, a su vez, puede codificarse, y la clave de codificación almacenarse en el directorio raíz como valor de autenticación, etc. Aunque resulta posible, esta realización es bastante más complicada de implementar, a causa de la mayor complejidad de las operaciones necesarias para generar valores clave de codificación.
Por el contrario, la utilización de un algoritmo de troceo para llevar a cabo la autenticación de cada módulo permite llevar a cabo una comprobación especialmente sencilla y rápida de la integridad de cada módulo. En una realización, puede utilizarse un sencillo algoritmo de troceo, como un cálculo de la suma de control. No obstante, esto no permitiría detectar una falsificación debido a que resulta relativamente sencillo determinar la forma en que cualquier cambio en un mensaje afecta al valor de troceo.
Preferiblemente, el algoritmo de troceo se corresponde con un algoritmo criptográficamente seguro que genera un valor flash 15 sustancialmente único a partir de un conjunto dado de datos. Entre los algoritmos de troceo adecuados que pueden utilizarse con este fin se encuentran por ejemplo el algoritmo resumen de mensaje (Message Digest) versión 5 (MD5) o el Algoritmo de troceo seguro (SHA).
Ventajosamente, la autenticación de los datos del archivo para una pluralidad de archivos se lleva a cabo mediante la aplicación de un algoritmo de troceo a una acumulación de datos procedentes de una pluralidad de archivos para generar un único valor de troceo. Igualmente, la autenticación de varios subdirectorios puede llevarse a cabo aplicando un algoritmo de troceo a una serie de valores de autenticación de archivo procedentes de diversos subdirectorios (y otros datos, si se desea) para generar un valor de troceo único.
La utilización de un proceso de troceo acumulativo que cubra diversos módulos de datos (archivos, subdirectorios, etc.) en una capa de nivel inferior simplifica aún más el sistema si se compara, por ejemplo, con sistemas que almacenan listas de valores de troceo individuales para cada módulo. Esto permite nuevamente que el sistema reduzca las etapas de cálculo necesarias en cada nivel y reduce el tamaño de los datos de autenticación almacenados en un nivel superior.
En el caso de las realizaciones que utilizan un algoritmo de troceo para autentificar cada capa, el sistema estará "abierto", es decir todos los valores de troceo podrán leerse hasta el directorio raíz. Dado que los algoritmos de troceo están disponibles públicamente, en teoría un tercero podría cambiar los datos almacenados, por ejemplo a nivel de archivo, sin que se detecte si los valores de troceo correspondientes a nivel de subdirectorio y de directorio raíz se han cambiado también al mismo tiempo.
A fin de evitar esto, se actúa al menos sobre una parte de los datos almacenados en el directorio raíz mediante una clave secreta de un algoritmo de cifrado y el valor cifrado resultante se almacena en el directorio raíz. Preferiblemente, el valor cifrado corresponde a una firma digital. Entre los algoritmos de clave privada/pública adecuados para este propósito puede citarse, por ejemplo, el algoritmo RSA.
Ventajosamente, los datos cifrados mediante la clave secreta para generar una firma almacenada en el directorio raíz comprenden al menos uno o más valores de autenticación del subdirectorio. No obstante, es posible prever en el directorio raíz unos datos diferentes de los valores de autenticación del subdirectorio que se firman a fin de "cerrar" el sistema.
Como alternativa a generar una firma, puede simplemente cifrarse o codificarse la totalidad o una parte del directorio raíz si el receptor posee una clave equivalente para descifrar los datos cifrados del directorio raíz. En este caso, puede utilizarse un algoritmo de clave simétrica como DES.
Como se comprenderá, aunque el proceso de autenticación se ha descrito anteriormente haciendo referencia a dos niveles jerárquicos, pueden efectuarse etapas similares de autenticación hasta el infinito para archivos, subdirectorios, directorios raíz, etc., adicionales de referencia.
Igualmente, aunque la estructura se ha definido como de directorio raíz/subdirectorio/archivo por motivos de claridad, no se asume ninguna característica específica de cada una de las unidades de una capa, salvo que hace referencia a una unidad de nivel inferior mediante dos unidades de nivel superior. Como se comprenderá, la estructura de datos puede ser igualmente directorio raíz/subdirectorio/segundo directorio raíz o cualquier otra combinación.
Las realizaciones que se describen a continuación se centran en una unidad situada en una capa inferior, es decir a la que se hace referencia mediante un directorio o subdirectorio. Como es evidente, aunque se hace referencia a ella desde una capa superior, esta unidad puede ser, no obstante, una unidad de directorio, una unidad de subdirectorio, etc.
En una realización, una unidad a la que se ha hecho referencia comprende un valor cifrado generado mediante una clave secreta, calculándose un valor de autenticación para esta unidad en función de los resultados de la aplicación de un algoritmo de autenticación al valor cifrado que se encuentra almacenado en la unidad a la que se hace referencia. Particularmente, como en la realización equivalente de directorio raíz que se ha descrito anteriormente, una unidad a la que se haga referencia puede ir firmada, calculándose el valor de autenticación correspondiente a dicha unidad como resultado de una función de troceo sobre dicha firma.
La unidad a la que se hace referencia puede corresponder, por ejemplo, a un archivo o subdirectorio. No obstante, esta realización resulta especialmente adecuada a la situación en la cual la unidad a la que se hace referencia es un directorio raíz para un conjunto adicional de datos, por ejemplo datos con un origen diferente y en el que la unidad raíz a la que se hace referencia también comprende una firma. En este caso, un primer operador puede recopilar y firmar datos hasta el nivel del directorio raíz.
Posteriormente, un segundo operador puede hacer referencia a estos datos sin conocer la clave de cifrado, limitándose a autentificar cualquier enlace en la unidad de referencia mediante el valor de troceo de la firma que se encuentra en el directorio raíz al que se hace referencia. La autenticación de ambos conjuntos de datos tan sólo le será posible, por supuesto, a un receptor que posea las claves necesarias para verificar las firmas en ambos directorios raíz.
Como se ha mencionado anteriormente, la presente invención puede aplicarse a cualquier conjunto de unidades de datos de jerarquía múltiple. Puede incluso aplicarse a la organización de tablas o paquetes en un tren de transporte, en el caso de que puedan facilitarse múltiples niveles de directorio raíz, subdirectorio, archivo, etc. en un tren de paquetes. No obstante, esta invención resulta especialmente aplicable al caso en el que las unidades corresponden a un conjunto de archivos de datos encapsulados en tablas o secciones de datos, encapsulándose estas tablas con posterioridad en paquetes de datos para constituir un tren de transporte.
A diferencia de la autenticación a nivel de paquete o tabla, esta realización permite una completa independencia entre el conjunto de datos autentificados y su encapsulado en un tren de transporte y, una vez más, facilita el suministro de software procedente de diferentes fuentes en el tren de transporte controlado por un solo operador de radiodifusión. Los datos autentificados de acuerdo con esta realización pueden incluso transmitirse a través de diferentes rutas de transmisión (por ejemplo, un enlace bidireccional de telecomunicaciones o un enlace vía satélite), utilizando formatos alternativos de encapsulado para transmitir los datos.
Como se ha mencionado anteriormente, la utilización de un proceso de autenticación aplicado con anterioridad a la preparación de los datos para la transmisión tiene como efecto que los datos pueden enviarse posteriormente a un receptor mediante cualquier número de canales, tal como un canal de radiodifusión o un canal de telecomunicaciones, sin cambiar el proceso de autenticación. Igualmente, una vez que un receptor o decodificador ha reconstituido los archivos de datos a partir del formato asociado a la ruta de transmisión, puede llevarse a cabo una verificación de estos datos, independientemente del modo de transmisión seleccionado.
Cualquiera o todas las características del primer aspecto de la invención y sus realizaciones preferidas pueden, por supuesto, combinarse con el segundo y tercer aspecto de la invención.
La presente invención se ha descrito anteriormente en relación con las etapas de generar datos de autenticación con anterioridad a la transmisión. La invención, en sus realizaciones más amplias y preferidas, también se aplica a las etapas inversas llevadas a cabo en un receptor para verificar estos datos.
En sus aspectos más amplios, la presente invención puede aplicarse a cualquier sistema de transmisión digital. No obstante, la invención se aplica preferiblemente a un sistema de televisión digital y, concretamente, a módulos de datos que transporten software de aplicaciones para su utilización en un receptor/decodificador del sistema de televisión digital.
Tal y como se usa en el presente documento, el término "sistema de transmisión digital" comprende cualquier sistema de transmisión para la transmisión o radiodifusión, por ejemplo básicamente de datos digitales audiovisuales o multimedia. Aunque la presente invención resulta especialmente aplicable a un sistema de televisión digital por radiodifusión, la invención también puede aplicarse a una red fija de telecomunicaciones para aplicaciones de Internet multimedia, a un circuito cerrado de televisión, etc. Como se comprenderá, el término "sistema digital de televisión" comprende, por ejemplo, cualquier sistema vía satélite, terrestre, por cable y otros sistemas.
El término "receptor/decodificador" o "decodificador" utilizado en la presente solicitud puede referirse a un receptor para la recepción de señales codificadas o no codificadas, por ejemplo señales de televisión y/o radio que pueden ser emitidas o transmitidas por cualquier otro medio. El término también puede referirse a un decodificador para decodificar las señales recibidas. Entre las realizaciones de dichos receptores/decodificadores pueden incluirse un decodificador integrado en el receptor para decodificar las señales recibidas, por ejemplo en un "decodificador de sobremesa", como un decodificador que funcione en combinación con un receptor físicamente independiente o un decodificador que comprende funciones adicionales, tales como un navegador web y/o que se encuentre integrado con otros aparatos como una grabadora de vídeo o una televisión.
El término MPEG se refiere a las normas de transmitir datos desarrolladas por el grupo de trabajo "Motion Pictures Expert Group [grupo de expertos en imágenes en movimiento" de la Organización Internacional de Normalización y en particular, pero no exclusivamente, a la norma MPEG-2 desarrollada para aplicaciones de televisión digital y recogida en los documentos ISO 13818-1, ISO 13818-2, ISO 13818-3 e ISO 13818-4. En el contexto de la presente solicitud de patente, el término MPEG comprende todas las variantes y modificaciones de los formatos MPEG aplicables al ámbito de la transmisión de datos digitales.
El término DSMCC hace referencia a las normas de formato de archivo de datos descritas en los documentos MPEG y en el actual documento ISO 13818-6.
A continuación se describirá, únicamente a modo de ejemplo, una realización preferida de la invención, haciendo referencia a las figuras adjuntas en las cuales:
La figura 1 muestra un diagrama esquemático de un sistema de televisión digital para ser utilizado con la presente invención.
La figura 2 muestra la estructura de un decodificador del sistema de la figura 1.
La figura 3 muestra la estructura de diversos componentes incluidos en el tren de transporte de radiodifusión MPEG.
La figura 4 muestra la división de una aplicación de software en diversas tablas MPEG.
La figura 5 muestra la relación entre los archivos de datos DSMCC y las tablas MPEG finalmente generadas.
La figura 6 muestra la relación entre el cliente, el servidor y el gestor de la red, según se define en el contexto de DSMCC.
La figura 7 muestra el directorio autentificado, el subdirectorio y los objetos de archivo en esta realización de la invención.
En la figura 1 se muestra un resumen de un sistema de televisión digital 1. La realización comprende un sistema de televisión digital 2 básicamente convencional que utiliza el conocido sistema de compresión MPEG-2 para transmitir señales digitales comprimidas. En más detalle, el compresor MPEG-2 3 situado en un centro de radiodifusión recibe un tren de señales digitales (normalmente un tren de señales de vídeo). El compresor 3 está conectado a un multiplexor y codificador 4 mediante una conexión 5.
El multiplexor 4 recibe una pluralidad de señales de entrada adicionales, ensambla el tren de transporte y transmite las señales digitales comprimidas a un transmisor 6 del centro de radiodifusión a través de una conexión 7 que por supuesto puede adoptar diversas formas, comprendiendo enlaces de telecomunicaciones. El transmisor 6 transmite señales electromagnéticas a través de un enlace ascendente 8 hacia un transpondedor de satélite 9 donde se procesan electrónicamente y se emiten a través de un enlace descendente nacional 10 al receptor terrestre 12, que normalmente consiste en una antena parabólica propiedad del usuario final o alquilada por éste. Las señales recibidas por el receptor 12 se transmiten a un receptor/decodificador integrado 13 comprado o alquilado por el usuario final y que se encuentra conectado al televisor 14 del usuario final. El receptor/decodificador 13 decodifica la señal comprimida MPEG-2 en una señal de televisión para el televisor 14.
Por supuesto son posibles otros canales de transporte para transmitir los datos, tales como la radiodifusión terrestre, la transmisión por cable, enlaces combinados satélite/cable, redes telefónicas, etc.
En un sistema canales múltiples, el multiplexor 4 gestiona la información de audio y vídeo recibida desde diversas fuentes paralelas e interactúa con el transmisor 6 para transmitir la información a lo largo de un número similar de canales. Además de la información audiovisual, pueden introducirse mensajes o aplicaciones o cualquier otro tipo de datos digitales en algunos o en todos estos canales, entrelazados con la información de audio y vídeo digital transmitida. En este caso, un tren de datos digitales, por ejemplo en forma de archivos de software y mensajes de acuerdo con el formato DSM-CC se comprimirá y empaquetará en el formato MPEG a través del compresor 3. La descarga de los módulos de software se describirá más adelante en mayor detalle.
Un sistema de acceso condicional 15 se encuentra conectado al multiplexor 4 y al receptor/decodificador 13, y se encuentra parcialmente situado en el centro de emisor y en el decodificador. Permite al usuario final acceder a emisiones de televisión digital procedentes de uno o más proveedores de emisiones. Una tarjeta inteligente capaz de descifrar mensajes relativos a ofertas comerciales (es decir, uno o varios programas de televisión vendidos por el proveedor de emisiones) se inserta en el receptor/decodificador 13. Usando el decodificador 13 y la tarjeta inteligente, el usuario final puede adquirir ofertas comerciales mediante suscripción o pay-per-view (pago por visión). En la práctica, el decodificador puede configurarse para gestionar sistemas de control de acceso múltiple, por ejemplo del tipo Simulcrypt o Multicrypt.
Como se ha mencionado anteriormente, los programas transmitidos por el sistema se codifican en el multiplexor 4, estando determinadas las condiciones y claves de cifrado aplicadas a una transmisión dada por el sistema de control de acceso 15. La transmisión de datos codificados de esta forma es bien conocida en el ámbito de los sistemas de TV de pago. Normalmente, los datos codificados se transmiten junto con una palabra de control para el descifrado de los datos, estando la propia palabra de control cifrada mediante la denominada clave de explotación, transmitiéndose en formato cifrado.
Los datos codificados y la palabra de control cifrada son recibidos entonces por el decodificador 13 que puede acceder a un equivalente de la clave de explotación almacenada en una tarjeta inteligente insertada en el decodificador para descifrar la palabra de control cifrada y descodificar posteriormente los datos transmitidos. Un abonado que se encuentre al corriente de sus pagos recibirá, por ejemplo, en un EMM (Mensaje de Gestión de Derechos) transmitido mensualmente la clave de explotación necesaria para descifrar la palabra de control cifrada y para permitir ver la transmisión. Además de su utilización para descifrar programas audiovisuales de televisión, pueden generarse y transmitirse claves de explotación similares para ser utilizadas en la verificación de otros datos, tales como módulos de software según se describirá más adelante.
Un sistema interactivo 16, que también se encuentra conectado al multiplexor 4 y al receptor/decodificador 13, y que se encuentra una vez más situado parcialmente en el centro de emisor y parcialmente en el decodificador permite que el usuario final interactúe con diversas aplicaciones a través de un canal de retorno de módem 17. El canal de retorno de módem también puede utilizarse para las comunicaciones usadas en el sistema de acceso condicional 15. Un sistema interactivo puede utilizarse, por ejemplo, para permitir que el espectador se comunique inmediatamente con el centro emisor para solicitar la autorización para ver un evento concreto, descargar una aplicación
etc.
Haciendo referencia a la figura 2, se describirán brevemente a continuación los elementos físicos del receptor/decodificador 13 o el decodificador de sobremesa adaptados para ser utilizados en la presente invención. Los elementos mostrados en esta figura se describirán en términos de bloques funcionales.
El decodificador 13 comprende un procesador central 20 que comprende elementos de memoria asociados y que está adaptado para recibir datos de entrada procedentes de un interfaz serie 21, un interfaz paralelo 22 y un módem 23 (conectado al canal de retorno de módem 17 de la figura 1).
El decodificador está adaptado adicionalmente para recibir entradas de un mando a distancia por infrarrojos 25 a través de una unidad de control 26 y de unos interruptores de contacto 24 situados en el panel frontal del decodificador. El decodificador también posee dos lectoras de tarjeta inteligente 27, 28 adaptadas para leer tarjetas inteligentes bancarias o de abono 29, 30 respectivamente. Las entradas también pueden recibirse a través de un teclado por infrarrojos (no mostrado). El lector de tarjetas inteligentes de abono 28 se acopla con una tarjeta de abono insertada y con una unidad de acceso condicional 29 para suministrar la palabra de control necesaria a un demultiplexor/descodificador 30 para permitir la descodificación de la señal de transmisión cifrada. El decodificador también comprende un sintonizador convencional 31 y un demodulador 32 para recibir y demodular la transmisión vía satélite antes de ser filtrada y demultiplexada por la unidad 30.
El procesamiento de los datos en el decodificador suele estar gestionado por el procesador central 20. La arquitectura de software 15 del procesador central corresponde a una máquina virtual que interactúa con un sistema operativo de nivel inferior implementado en los componentes de hardware del decodificador.
A continuación se describirá, haciendo referencia a las figuras 3 y 4, la estructura de paquetes de los datos incluidos en el tren de transporte MPEG transmitido que se ha enviado desde el transmisor al decodificador. Como puede apreciarse, aunque la descripción se centrará en el formato de tabulación utilizado en la norma MPEG, los mismos principios se aplican igualmente a otros formatos de empaquetado de tren de datos.
Haciendo referencia concretamente a la figura 3, un tren binario MPEG comprende una tabla de acceso a programa ("PAT") 40 con un identificador de paquete ("PID") de 0. La PAT contiene referencias a los PIDs de las tablas de correspondencia de programas ("PMTs") 41 de diversos programas. Cada PMT comprende una referencia a los PIDs de los trenes de tablas MPEG de audio 42 y de tablas MPEG de vídeo 43 correspondientes a dicho programa. Un paquete que tenga un PID de cero, es decir la tabla de acceso a programa 40, proporciona el punto de entrada para todo el acceso MPEG.
Para que se puedan descargar aplicaciones y datos para ellas, se definen dos nuevos tipos de flujo y la PMT correspondiente también contiene referencias a los PIDs de los trenes de tablas MPEG de aplicación 44 (o secciones de ellas) y de tablas MPEG de datos 45 (o secciones de ellas). De hecho, aunque en algunos casos puede ser conveniente definir tipos de flujo independientes para el software de aplicación ejecutable y datos para su procesamiento por dicho software, ello no es esencial. En otras realizaciones, los datos y el código ejecutable pueden ensamblarse en un solo tren al que se accede a través de la PMT como ya se ha descrito.
Haciendo referencia a la figura 4, para poder descargar, por ejemplo, una aplicación incluida en un tren 44, la aplicación 46 se divide en módulos 47, cada uno de ellos formado por una tabla MPEG. Algunas de estas tablas tienen una sola sección, mientras que otras pueden estar compuestas por una pluralidad de secciones 48. Una sección típica 48 tiene un encabezamiento que comprende un identificador de tabla de un octeto ("TID") 50, el número de sección 51 de dicha sección en la tabla, el número total 52 de secciones de dicha tabla y una referencia de extensión 53 de dos bytes 110. Cada sección comprende también un componente de datos 54 y un CRC 55. Para una tabla específica 47, todas las secciones 48 que constituyen dicha tabla 47 tienen el mismo TID 50 y la misma extensión TID 53. Para una aplicación específica 46, todas las tablas 47 que constituyen dicha aplicación 46 tienen el mismo TID 50, pero sus extensiones TID respectivas son diferentes.
Para cada aplicación 46, se utiliza una sola tabla MPEG como tabla de directorio 56. La tabla de directorio 56 tiene en su encabezamiento el mismo TID que el resto de las tablas 47 que constituyen la aplicación. No obstante, la tabla de directorio tiene una extensión TID predeterminada de cero con fines de identificación y debido al hecho de que tan sólo se necesita una sola tabla para la información en el directorio. El resto de las tablas 47 tendrán normalmente extensiones TID distintas de cero y estarán compuestas por varias secciones asociadas 48. El encabezamiento de la tabla de directorio también comprende un número de versión de la aplicación a descargar.
Haciendo de nuevo referencia a la figura 3, las PMTs 40, las PMTs 41 y los componentes del tren de aplicación y datos 44, 45 se transmiten cíclicamente. Cada una de las aplicaciones que se transmiten tiene un TID respectivo predeterminado. Para descargar una aplicación, la tabla MPEG con el TID adecuado y una extensión TID de cero se descarga al receptor/decodificador. Esta es la tabla de directorio correspondiente a la aplicación requerida. A continuación el decodificador procesa los datos del directorio para determinar la extensión TID de las tablas que constituyen la aplicación requerida. Posteriormente podrá descargarse cualquier tabla requerida que tenga el mismo TID que la tabla del directorio y una extensión TID determinada a partir del directorio.
El decodificador está dispuesto para comprobar cualquier actualización de la tabla de directorio. Esto puede llevarse a cabo descargando de nuevo periódicamente la tabla de directorio, por ejemplo cada 30 segundos, o cada minuto o cada cinco minutos, y comparando el número de versión de la tabla de directorio anteriormente descargada. Si el número de versión de la que se acaba de descargar corresponde a una versión posterior se borrarán las tablas asociadas a la tabla de directorio anterior y se descargarán y ensamblarán las tablas asociadas a la nueva versión.
En una configuración alternativa, el tren binario entrante se filtra utilizando una máscara correspondiente al TID, a la extensión TID y al número de versión, con unos valores fijados para el TID de la aplicación, una extensión TID de cero y un número de versión superior en una unidad al número de versión del directorio actualmente descargado. De este modo puede detectarse un aumento del número de versión y una vez detectado se descarga el directorio y se actualiza la aplicación como se ha descrito anteriormente. Cuando una aplicación deba finalizarse, se transmite un directorio vacío con el siguiente número de versión pero sin que ninguno de los módulos esté listado en el directorio. En respuesta a la recepción de dicho directorio vacío, el decodificador 2020 es programado para borrar la aplicación.
En la práctica, el software y los programas para implementar aplicaciones en el decodificador pueden introducirse mediante cualquiera de los componentes del decodificador, concretamente en el tren de datos recibido a través de la conexión vía satélite como se ha descrito anteriormente, pero también a través del puerto serie, la conexión de la tarjeta inteligente, etc. Dicho software puede incluir aplicaciones de alto nivel utilizadas para implementar en el decodificador aplicaciones interactivas, tales como navegadores, aplicaciones de concursos, guías de programas, etc. También puede descargarse software para modificar la configuración de funcionamiento del software del decodificador, por ejemplo mediante parches o similares.
También pueden descargarse aplicaciones a través del decodificador y enviarse a un PC o similar conectado al decodificador. En dicho caso, el decodificador actúa como un encaminador de comunicaciones para el software, que se ejecuta en el aparato conectado. Además de esta función de encaminado, el decodificador también puede funcionar convirtiendo los datos por paquetes MPEG antes de su envío al PC en software de archivos informáticos organizado, por ejemplo, de acuerdo con el protocolo DSMCC (véase más adelante).
Anteriormente, las medidas implementadas para verificar el origen y el grado de finalización de los datos de la aplicación se han centrado en la verificación de las tablas del tren de paquetes MPEG. Concretamente, en sistemas convencionales se aplica una función troceo a cada una de las secciones individuales 48 con anterioridad a la transmisión y el valor de comprobación resultante o firma correspondiente a cada sección se almacena en una lista en la tabla de directorio 56 enviada al decodificador. Mediante la comparación del valor de troceo posteriormente calculado por el decodificador con el valor de comprobación almacenado en el directorio para una sección recibida se puede verificar la integridad de la sección recibida. Los datos de directorio 40 pueden también estar sometidos a un proceso de troceo para generar un valor de comprobación adicional o firma para la tabla de directorio 40. Además, este valor de comprobación puede codificarse mediante una clave privada y almacenarse en la tabla de directorio. Tan sólo los decodificadores que posean la clave pública correspondiente podrán autentificar la firma.
En contraposición a dichos sistemas convencionales, la presente realización se refiere a medios para garantizar y verificar los datos de aplicación organizados en torno a una jerarquía múltiple de archivos de datos u de objetos a nivel de la aplicación. Esto se comprenderá más claramente a partir de la figura 5, que muestra la relación entre los datos organizados en un conjunto de archivos de datos DSMCC U-U 60, en una aplicación ensamblada 46 y encapsulados en una serie de tablas MPEG 47.
Con anterioridad a la transmisión, los archivos de datos se ensamblan en la aplicación 46 y posteriormente son formateados por un compresor MPEG en tablas MPEG o módulos 47 como se ha descrito anteriormente, comprendiendo un encabezamiento 49 específico para el tren de paquetes MPEG e incluyendo el ID de tabla, el número de versión, etc. Posteriormente estas tablas son encapsuladas por el compresor MPEG en paquetes MPEG. Como se apreciará, puede no existir una relación fija entre los datos organizados en los archivos de datos 61 y las eventuales tablas MPEG 47. Tras la recepción y filtrado por medio del decodificador, los encabezamientos de paquetes se descartan y se reconstituyen las series de tablas a partir de los datos útiles de los paquetes emitidos. Más adelante, se descartan los encabezamientos de tabla 49 y se reconstituye la aplicación 46 a partir de los datos útiles de las tablas 47.
El formato DSMCC para archivos de datos es una norma adaptada en particular para utilización en redes multimedia y que define una serie de formatos de mensaje y de comandos de sesión para comunicación entre un usuario cliente 70, un usuario servidor 71 y un gestor de recursos de red 72. Véase la figura 6. El gestor de recursos de red 72 puede considerarse como una entidad lógica que actúa gestionando la atribución de recursos en el seno de una red. A pesar de haberse concebido inicialmente para su utilización en el contexto de comunicaciones de red bidireccionales, las recientes implementaciones de la norma DSM-CC se han centrado en su utilización con fines de radiodifusión unidireccional.
La comunicación entre un cliente y un servidor se configura mediante una serie de sesiones, intercambiándose una primera serie de mensajes entre un usuario (cliente 70 o servidor 71) y el gestor de la red 72 para configurar el cliente y/o el servidor para las comunicaciones. Dichos mensajes están formateados de acuerdo con el denominado protocolo DSMCC U-N (usuario a red). Se ha definido concretamente un subconjunto de este protocolo para la descarga de datos mediante radiodifusión.
Una vez establecido un enlace de comunicaciones, los mensajes son intercambiados posteriormente entre el cliente 70 y el servidor 71 de acuerdo con DSMCC U-U (protocolo usuario a usuario). Una secuencia de mensajes de este tipo corresponde a los archivos de datos 60 de la figura 5. En el caso de mensajes DSMCC U-U, los datos se organizan en una serie de mensajes 61 agrupados de acuerdo con el Protocolo BIOP o Protocolo InterOrb de radiodifusión (Broadcast InterOrb Protocol).
Cada mensaje u objeto 61 comprende un encabezamiento 62, un sub-encabezamiento 63 y unos datos útiles 64 que contienen los propios datos. De acuerdo con el protocolo BIOP, el encabezamiento 62 contiene, entre otras cosas, una indicación del tipo de mensaje y de la versión BIOP, mientras que el sub-encabezamiento indica el tipo de objeto y otras informaciones que han de ser definidas por el arquitecto del sistema.
Los objetos de datos 64 incluidos en los datos útiles de los archivos DSMCC U-U pueden generalmente definirse como pertenecientes a uno de los tres tipos siguientes: objetos de directorio, objetos de archivo y objetos de flujo. Los objetos de directorio definen directorios raíz o subdirectorios utilizados para referirse a una serie de objetos de archivo asociados que contienen los datos reales de la aplicación.
Los objetos de flujo pueden utilizarse para permitir el establecimiento de una relación temporal entre los datos contenidos en los archivos de datos y el propio tren de paquetes MPEG. Esto se puede utilizar, por ejemplo, en el caso de aplicaciones interactivas incluidas en los archivos de datos y diseñadas para su sincronización con los trenes elementales de vídeo o audio recibidos y procesados por el decodificador. Como se ha mencionado anteriormente, en otros casos puede no existir una correlación directa entre los datos por paquetes MPEG y los archivos de datos.
A diferencia de las tablas MPEG, cuando un único directorio hace referencia a un conjunto de tablas con tan sólo un único nivel jerárquico, los archivos de datos 60 pueden organizarse de una forma jerárquica bastante más compleja. Como en el caso de los archivos almacenados en un PC o servidor, un directorio principal o raíz puede hacer referencia a uno o más subdirectorios que, a su vez, hacen referencia a un segundo nivel de archivos de datos. Incluso puede hacerse referencia a un segundo directorio raíz asociado a otro conjunto de datos de aplicación.
Haciendo referencia a la figura 7, se muestra un ejemplo de la estructura de archivo para un conjunto de archivos de datos o unidades. Un directorio raíz DIR A0 indicado como 75 hace referencia a un grupo de subdirectorios A1 a A4 indicados como 76. Cada subdirectorio 76 hace referencia a uno o más conjuntos de archivos de objeto asociados 77. Con fines de aclaración, tan sólo se muestra un único grupo de archivos de objeto F1, F2, etc., asociado al subdirectorio A4. En la práctica, cada uno de los subdirectorios A1 a A4 puede hacer referencia a varios grupos de archivos de
objeto.
Dentro de cada directorio y subdirectorio se introduce un conjunto de etapas de autenticación para los archivos vinculados 20 a dicho directorio. Haciendo referencia al directorio raíz 75, el sub-encabezamiento 63 comprende un valor de troceo obtenido mediante la aplicación de un algoritmo de troceo a una parte o a la totalidad de los datos almacenados en los archivos de subdirectorio A1 a A4 indicados como 76. El algoritmo de troceo utilizado puede ser de cualquier tipo conocido, como por ejemplo el algoritmo de resumen de mensage (Message Digest) MD5.
En una realización, el algoritmo puede aplicarse individualmente a cada archivo o subdirectorio asociado, almacenándose en el directorio raíz 75 una lista de los valores de troceo para cada subdirectorio 76 con anterioridad a la transmisión. Sin embargo, aunque dicha solución permite un mayor nivel de resolución de comprobación en lo tocante a la verificación de cada subdirectorio, esta solución puede resultar bastante ineficaz en términos de tiempo de procesamiento necesario para que el decodificador calcule las correspondientes firmas.
Por ello, el sub-encabezamiento 63 del directorio 79 comprende preferiblemente un valor flash acumulativo 79, calculado mediante la aplicación del algoritmo de troceo MD5 a las secciones combinadas de sub-encabezamiento y datos útiles 63, 64 de los subdirectorios 76, es decir sin el encabezamiento 62. Concretamente, los valores flash 82 contenidos en los subdirectorios 76 y que hacen referencia a la capa de objetos de archivo 77 están incluidos en este cálculo de troceo.
En el caso del subdirectorio A4 mostrado en la figura 7, este subdirectorio hace referencia a una serie de archivos de objeto F1-Fn indicados como 77. En este caso, se genera un valor flash acumulativo 82 para los contenidos combinados de los archivos de objeto 77. Este valor se incluye en el proceso de troceo que da lugar al valor flash 79. Por lo tanto, no es posible cambiar ninguno de los archivos de objeto 77 sin cambiar el valor flash 82 del subdirectorio 76 que, a su vez, cambiará el valor flash 79 del directorio 75.
En el caso actual, se calcula un valor de troceo combinado para todos los subdirectorios A1 a A4 a los que se hace referencia en el directorio. Este valor de troceo se almacena junto con un identificador del grupo de subdirectorios a partir del cual se han tomado los datos. En otras realizaciones, puede almacenarse una serie de valores de troceo combinados o individuales así como sus correspondientes identificadores en el sub-encabezamiento del directorio.
Por ejemplo, un segundo conjunto de subdirectorios asociado también al directorio raíz pero relativo a un conjunto de datos o código ejecutable diferente puede ser también agrupado conjuntamente, calculándose un valor de troceo acumulativo calculado para este subdirectorio y almacenándose en el directorio raíz del sub-encabezamiento. Un único valor de troceo asociado a un único directorio puede también almacenarse en el sub-encabezamiento del directorio raíz.
La autorización de grupos o archivos de datos individuales no impide, por supuesto, que el directorio raíz (o 25, por supuesto, cualquier otro archivo) haga también referencia a archivos de datos no validados o sin troceo, pero deberá tenerse en cuenta la ausencia de validación de dicho archivo a la hora de efectuar cualquier operación con este archivo. A este respecto, podría no ser necesario, por ejemplo, autentificar los objetos de flujo.
La utilización en este caso de una función de troceo permite, en primer lugar, que el decodificador verifique la integridad o el grado de finalización de la descarga de los archivos de datos. En el caso, por ejemplo, de fallo o corte de la transmisión, la utilización de un algoritmo de troceo acumulativo con los archivos dependientes recibidos no dará el mismo resultado que el valor de troceo correspondiente a estos archivos almacenado en el directorio raíz. El decodificador será alertado entonces de la presencia de posibles errores en los datos descargados y volverá a cargar los archivos de datos defectuosos.
Como puede apreciarse, en el caso de un algoritmo de troceo, el cálculo del valor de troceo se lleva a cabo de acuerdo con una serie públicamente conocida de etapas de cálculo y, como tal, cualquiera puede generar el valor de troceo correspondiente a un conjunto de archivos de datos determinado. Por lo tanto, normalmente, no es posible verificar el origen de dichos archivos de datos mediante una simple comprobación de los valores de troceo.
Para superar este problema, se calcula un valor de firma correspondiente al directorio raíz 75 utilizando un valor de clave secreta conocido únicamente por el operador. Esta clave puede corresponderse con una clave obtenida mediante un algoritmo de clave simétrica, tal como el algoritmo norma de criptado de datos (Data Encryption Standard) o DES. No obstante, preferiblemente se utiliza un algoritmo de clave privada/pública como el algoritmo de Rivest, Shamir y Adelman o RSA, siendo el operador responsable de generar los archivos de datos en posesión del valor de la clave privada y de los valores de clave pública de los decodificadores.
Como se muestra en la figura 7, el directorio raíz 75 comprende un identificador de clave o número mágico 80 que identificará para el decodificador la clave pública a utilizar en la etapa de verificación junto con el valor de firma calculado 81 generado mediante la utilización de la clave privada del operador. En este caso, el valor de firma 81 se genera aplicando la clave privada del operador a una parte o a todos los datos del directorio 75, comprendiendo preferiblemente los datos útiles 64 y/o el valor o valores de troceo acumulativos 79. El decodificador puede entonces verificar este valor de firma 81 utilizando la clave pública correspondiente identificada por el número de clave 80.
En este ejemplo, los datos del directorio 75 están descifrados y la clave privada se utiliza simplemente para proporcionar un valor de firma que pueda ser verificado por la clave pública. En realizaciones alternativas pueden cifrarse mediante la clave privada una parte o la totalidad de los contenidos del directorio, descifrándose posteriormente mediante una clave correspondiente.
En cualquiera de los casos, generar un valor de firma o bloque de código cifrado mediante utilización de una clave secreta permite que un decodificador verifique la integridad del origen del directorio 75 y, por ende, la integridad y el origen de los archivos a los que hace referencia este directorio raíz. Dado que los valores de troceo acumulativos para los archivos de referencia están incluidos en el cálculo de la firma 81, no es posible alterar estos valores sin detectarlo en la etapa de verificación. Debido a que por lo general cada valor de troceo es único para un conjunto dado de datos, no sería por tanto posible modificar el contenido de cualquier archivo dependiente al que se le haya aplicado el troceo sin cambiar su valor de troceo característico y, por tanto, el valor de firma resultante de un directorio.
El directorio raíz 75, los subdirectorios 76 y los archivos de objetos 77 son generados por un operador de radiodifusión del sistema, indicado aquí como operador A. En este caso, estos archivos tendrán un origen común conocido y verificable.
\newpage
No obstante, dependiendo de la aplicación a implementar, también puede hacerse referencia a una serie de archivos de datos asociados a un segundo operador B. En este caso, el subdirectorio 76 comprende una referencia al directorio raíz DIR B0 de un segundo conjunto de archivos de datos, indicado como 78. También es posible prever conexiones entre archivos de datos procedentes de distintas fuentes a otros niveles, por ejemplo una jerarquía de archivos en la que un primer subdirectorio en un conjunto de archivos hace referencia a un subdirectorio de un segundo conjunto de archivos de datos, etc.
Al igual que con el directorio raíz DIR A0 para el operador A, el directorio raíz DIR B0 indicado como 78 comprende uno o más valores de código flash acumulativo 84 asociados a sus subdirectorios asociados (no mostrados), identificando un número de clave 85 la clave pública del operador B a utilizar durante la etapa de verificación, generando la clave privada correspondiente del operador un valor de firma 86.
Se calcula un valor de troceo para este directorio utilizando el valor flash 84 y la firma 86 del sub-encabezamiento del directorio, así como los datos útiles 64 del directorio 78. Este valor de troceo se almacena entonces en el subdirectorio A4, lo que permite verificar la integridad de los datos en la tabla de directorio a construir.
Debido al hecho de que la firma 86 y los valores de troceo 84 están incluidos en el cálculo del valor de troceo 83, también puede asumirse la integridad del resto de los archivos de datos a los que ha hecho referencia el directorio raíz 78, ya que ninguno de estos archivos dependientes puede modificarse sin modificar el valor de troceo 84 y, lo que es más importante, el valor de firma 86. Dado que el valor de firma 86 sólo puede ser calculado por una persona que posea la clave privada del operador, puede asumirse la integridad de todos los archivos a los que hace referencia el directorio 78, suponiendo que se calculen los valores de troceo correspondientes de los subdirectorios y archivos de objetos dependientes adicionales.
De este modo, los datos de aplicación relativos a programas ejecutables o similares generados por un segundo operador pueden estar vinculados a aplicaciones asociadas a un primer operador de una forma segura y fiable.
Como se observará, pueden darse diversas variaciones, especialmente para reducir la cantidad de datos sometidos a troceo o a firma en cada etapa. Concretamente, en el caso de una firma o valor de troceo en un subdirectorio o subdirectorios utilizados para verificar un archivo de datos de nivel inferior, la firma o el valor de troceo del directorio pueden generarse utilizando solamente el valor de troceo de nivel inferior y no otros datos.
Por ejemplo, el valor de troceo combinado 79 del directorio A0 75 puede ser generado utilizando los valores de troceo combinados 82, 83 de cada uno de los subdirectorios A1-A4 indicados como 76. Dado que estos valores son únicos, al igual que los datos útiles del subdirectorio, el valor de troceo combinado 79 seguirá siendo único para los subdirectores en cuestión. Además, puede seguir asumiéndose la integridad del nivel inferior de archivos de objeto y directorio 77, 78 dado que los valores de troceo 82 se utilizan todavía para el cálculo.
Igualmente, el valor de troceo 83 calculado para verificar el directorio B0 indicado como 78 puede calcularse simplemente utilizando el valor de firma 86. Dado que esto depende de, y está asociado únicamente a los valores de troceo 84, y siendo a su vez dichos valores de troceo dependientes del siguiente nivel de archivos, puede seguir asumiéndose la integridad de todos los conjuntos de archivos de datos a los que hace referencia el directorio 78.
\vskip1.000000\baselineskip
Referencias citadas en la descripción
La lista de referencias citada por el solicitante lo es solamente para utilidad del lector, no formando parte de los documentos de patente europeos. Aún cuando las referencias han sido cuidadosamente recopiladas, no pueden excluirse errores u omisiones y la OEP rechaza toda responsabilidad a este respecto.
Documentos de patente citados en la descripción
\bullet EP 0752786 A [0004]
\bullet EP 0781003 A [0006]

Claims (25)

1. Método para autenticar datos a enviar a través de un sistema de transmisión digital (2), estando organizados los datos en una serie de unidades de datos (75, 76, 77, 78), caracterizado por las siguientes etapas:
generar un primer valor de autenticación (83) para, al menos, a una primera unidad (78), comprendiendo dicha primera unidad (78) un identificador (85) de una primera clave y un primer valor de firma (86) generado con dicha primera clave;
almacenar dicho primer valor de autenticación (83) en una segunda unidad (76) que haga referencia a dicha primera unidad (78); generar un segundo valor de autenticación (79) para dicha segunda unidad (76), siendo dicho segundo valor de autenticación (79) un valor de troceo;
generar un segundo valor de firma (81) para, al menos, dicho segundo valor de autenticación (79) con una segunda clave; y
transmitir dicha primera y dicha segunda unidad (78, 76), de un identificador (80) para la segunda clave y dicho segundo valor de firma (81).
2. Método de la reivindicación 1, que comprende adicionalmente las siguientes etapas:
encapsular las primera y segunda unidades en una serie de tablas, y
encapsular las tablas en paquetes de datos en un tren de paquetes de transporte.
3. Método de la reivindicación 2, en el que el tren de paquetes de transporte se ajusta a la norma MPEG.
4. Método de acuerdo con cualquiera de las reivindicaciones 1 a 3, en el que las unidades de datos están formateadas de acuerdo con la norma DSMCC.
5. Método de la reivindicación 1, en el que el segundo valor de autenticación se genera para la primera unidad de datos mediante su aplicación al menos al primer valor de autenticación almacenado en la segunda unidad de datos.
6. Método de la reivindicación 1, en el que la fase de transmisión comprende adicionalmente transmitir el segundo valor de autenticación (79).
7. Método de la reivindicación 1, en el que la primera unidad comprende adicionalmente un tercer valor de autenticación (84), donde dicho primer valor de autenticación (83) se genera utilizando únicamente dicho tercer valor de autenticación (84).
8. Aparato para autenticación de los datos a enviar a través de un sistema de transmisión digital, estando organizados los datos en una serie de unidades de datos, caracterizado porque dicho aparato comprende:
medios para generar un primer valor de autenticación (83) para, al menos, una primera unidad (78), comprendiendo dicha primera unidad (78) un identificador (85) de una primera clave y un primer valor de firma (86) generado con dicha primera clave;
medios para el almacenar dicho primer valor de autenticación (83) en una segunda unidad (76) que haga referencia a dicha primera unidad (78);
medios para generar un segundo valor de autenticación (79) para dicha segunda unidad (76), siendo dicho segundo valor de autenticación (79) un valor de troceo;
medios para generar un segundo valor de firma (81) para, al menos, dicho segundo valor de autenticación (79) con una segunda clave; y
medios para transmitir dichas primera y segunda unidades (78, 76), de un identificador (80) correspondiente a la segunda clave y de dicho segundo valor de firma (81).
9. Aparato de la reivindicación 8, que comprende adicionalmente:
medios para encapsular las primera y segunda unidades en una serie de tablas, y
medios para encapsular las tablas en paquetes de datos de un tren de paquetes de transporte.
10. Aparato de la reivindicación 9, en el que el tren de paquetes de transporte se ajusta a la norma MPEG.
11. Aparato de acuerdo con cualquiera de las reivindicaciones 8 a 9, en el que el sistema de transmisión digital corresponde a un sistema de televisión digital.
12. Aparato de acuerdo con cualquiera de las reivindicaciones 8 a 11, en el que las unidades de datos están formateadas de acuerdo con la norma DSMCC.
13. Aparato de acuerdo cualquiera de las reivindicaciones 8 a 12, en el que el segundo valor de autenticación se genera para la primera unidad de datos mediante aplicación al menos el primer valor de autenticación almacenado en la segunda unidad de datos.
14. Aparato de acuerdo cualquiera de las reivindicaciones 8 a 13, en el que los medios de transmisión transmiten adicionalmente el segundo valor de autenticación (79).
15. Aparato de acuerdo cualquiera de las reivindicaciones 8 a 14, en el que la primera unidad comprende adicionalmente un tercer valor de autenticación (84), donde los medios de generación de dicho primer valor de autenticación (83) utilizan únicamente dicho tercer valor de autenticación (84).
16. Método para verificación de datos recibidos a través de un sistema de transmisión digital (2), estando organizados los datos en una serie de unidades de datos (75, 76, 77, 78), y que comprende:
una primera unidad (78) que comprende un identificador (85) de una primera clave y un primer valor de firma (86) generado con dicha primera clave;
una segunda unidad (76) que comprende un primer valor de autenticación (83) generado para al menos la primera unidad (78), haciendo referencia la segunda unidad (76) a dicha primera unidad (78);
un segundo valor de firma (81) generado con una segunda clave para al menos un segundo valor de autenticación (79), siendo dicho segundo valor de autenticación (79) un valor de troceo generado para dicha segunda unidad (76); y
un identificador (80) para la segunda clave:
estando caracterizado el método por las siguientes etapas:
verificar el segundo valor de firma (81) utilizando el identificador (80) correspondiente a la segunda clave; y
verificar el primer valor de firma (86) utilizando el identificador (85) de la primera clave y la primera unidad (78).
17. Método de acuerdo con la reivindicación 16, que comprende adicionalmente la etapa de verificación de dicho primer valor de autenticación (83) utilizando dicha primera unidad (78).
18. Método de acuerdo con cualquiera de las reivindicaciones 16 o 17, en el que las unidades de datos están formateadas de acuerdo con la norma DSMCC.
19. Método de acuerdo con cualquiera de las reivindicaciones 16 a 17, en el que los datos encapsulados y formateados se ajustan a la norma MPEG.
20. Aparato para verificación de datos recibidos a través de un sistema de transmisión digital (2), estando organizados los datos en una serie de unidades de datos (75, 76, 77, 78), y que comprende:
una primera unidad (78) que comprende un identificador (85) de una primera clave y un primer valor de firma (86) generado con dicha primera clave;
una segunda unidad (76) que comprende un primer valor de autenticación (83) generado para al menos la primera unidad (78), haciendo referencia la segunda unidad (76) a dicha primera unidad (78);
un segundo valor de firma (81) generado con una segunda clave para al menos un segundo valor de autenticación (79), siendo dicho segundo valor de autenticación (79) un valor de troceo generado para dicha segunda unidad (76); y
un identificador (80) correspondiente a la segunda clave:
estando caracterizado el aparato porque comprende:
medios para verificar el segundo valor de firma (81) utilizando el identificador (80) correspondiente a la segunda clave; y
medios para verificar el primer valor de firma (86) utilizando el identificador (85) de la primera clave y la primera unidad (78).
21. Aparato de acuerdo con la reivindicación 20, que comprende adicionalmente medios para verificar dicho primer valor de autenticación (83) utilizando dicha primera unidad (78).
22. Aparato de acuerdo con las reivindicaciones 20 o 21, en el que los medios de verificación están incorporados en un procesador (20).
23. Aparato de acuerdo con las reivindicaciones 20 a 22, en el que el sistema de de transmisión digital corresponde a un sistema de televisión digital.
24. Aparato de acuerdo con cualquiera de las reivindicaciones 20 a 22, en el que las unidades de datos están formateadas de acuerdo con la norma DSMCC.
25. Aparato de acuerdo con cualquiera de las reivindicaciones 20 a 24, en el que los datos formateados y encapsulados recibidos se ajustan a la norma MPEG.
ES05110156T 1998-03-25 1999-03-25 Autentificacion de datos en un sistema de transmision digital. Expired - Lifetime ES2337369T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP98400686A EP0946019A1 (en) 1998-03-25 1998-03-25 Authentification of data in a digital transmission system
EP98400686 1998-03-25

Publications (1)

Publication Number Publication Date
ES2337369T3 true ES2337369T3 (es) 2010-04-23

Family

ID=8235307

Family Applications (4)

Application Number Title Priority Date Filing Date
ES05110156T Expired - Lifetime ES2337369T3 (es) 1998-03-25 1999-03-25 Autentificacion de datos en un sistema de transmision digital.
ES05110160T Expired - Lifetime ES2287871T3 (es) 1998-03-25 1999-03-25 Autenticacion de datos en un sistema de transmision digital.
ES05110162T Expired - Lifetime ES2287872T3 (es) 1998-03-25 1999-03-25 Autenticacion de datos en un sistema de transmision digital.
ES99909166T Expired - Lifetime ES2252934T3 (es) 1998-03-25 1999-03-25 Autentificacion de datos en un sistema de transmision digital.

Family Applications After (3)

Application Number Title Priority Date Filing Date
ES05110160T Expired - Lifetime ES2287871T3 (es) 1998-03-25 1999-03-25 Autenticacion de datos en un sistema de transmision digital.
ES05110162T Expired - Lifetime ES2287872T3 (es) 1998-03-25 1999-03-25 Autenticacion de datos en un sistema de transmision digital.
ES99909166T Expired - Lifetime ES2252934T3 (es) 1998-03-25 1999-03-25 Autentificacion de datos en un sistema de transmision digital.

Country Status (25)

Country Link
US (3) US7231525B1 (es)
EP (7) EP0946019A1 (es)
JP (1) JP4199925B2 (es)
KR (1) KR100610277B1 (es)
CN (6) CN1901451B (es)
AT (4) ATE455410T1 (es)
AU (1) AU753937B2 (es)
BR (1) BR9909073A (es)
CA (1) CA2324156C (es)
CY (2) CY1105677T1 (es)
DE (4) DE69928089T2 (es)
DK (3) DK1619826T3 (es)
ES (4) ES2337369T3 (es)
HK (2) HK1101742A1 (es)
HR (1) HRP20000598A2 (es)
HU (1) HU226343B1 (es)
ID (1) ID27501A (es)
IL (1) IL138438A (es)
NO (2) NO332071B1 (es)
PL (1) PL343076A1 (es)
PT (2) PT1619826E (es)
RU (1) RU2227376C2 (es)
TR (2) TR200002732T2 (es)
WO (1) WO1999049614A1 (es)
ZA (1) ZA200006016B (es)

Families Citing this family (90)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0989743A1 (en) * 1998-09-25 2000-03-29 CANAL+ Société Anonyme Application data table for a multiservice digital transmission system
US7409546B2 (en) * 1999-10-20 2008-08-05 Tivo Inc. Cryptographically signed filesystem
JP3630037B2 (ja) 1999-10-06 2005-03-16 日本電気株式会社 Dsm−ccカルーセル受信装置及びそれに用いる受信方法並びにその制御プログラムを記録した記録媒体
CA2386984A1 (en) * 1999-10-08 2001-04-19 General Instrument Corporation Object and resource security system
US6754908B1 (en) 1999-11-12 2004-06-22 General Instrument Corporation Intrusion detection for object security
ATE240625T1 (de) * 1999-11-12 2003-05-15 Gen Instrument Corp Durchführung der objektsicherung
US7412462B2 (en) * 2000-02-18 2008-08-12 Burnside Acquisition, Llc Data repository and method for promoting network storage of data
EP1143658A1 (en) * 2000-04-03 2001-10-10 Canal+ Technologies Société Anonyme Authentication of data transmitted in a digital transmission system
US20020002706A1 (en) 2000-05-26 2002-01-03 Sprunk Eric J. Authentication and authorization epochs
US6862684B1 (en) * 2000-07-28 2005-03-01 Sun Microsystems, Inc. Method and apparatus for securely providing billable multicast data
US7627762B2 (en) 2001-05-23 2009-12-01 Thomson Licensing Signing and authentication devices and processes and corresponding products, notably for DVB/MPEG MHP digital streams
JP4251796B2 (ja) * 2001-08-27 2009-04-08 ソニー株式会社 情報提供システム、情報提供装置および方法、情報処理装置および方法、記録媒体、並びにプログラム
JP4533741B2 (ja) * 2002-05-22 2010-09-01 トムソン ライセンシング 特にdvb/mpegデジタルストリームのための署名装置、認証装置、プロセス及び対応するプロダクト
PL376310A1 (en) * 2002-10-18 2005-12-27 Koninklijke Philips Electronics N.V. Method and system for metadata protection in tv-anytime
US7680833B1 (en) * 2002-11-22 2010-03-16 Bmc Software, Inc. System and method for database structure comparison
WO2005003936A1 (de) 2003-07-04 2005-01-13 Bayerische Motoren Werke Aktiengesellschaft Verfahren zur authentifikation von insbesondere in ein steuergerät eines kraftfahrzeugs ladbaren softwarekomponenten
US20050060754A1 (en) * 2003-09-17 2005-03-17 Wegener Communications, Inc. Apparatus and method for distributed control of media dissemination
US7933950B1 (en) 2003-10-02 2011-04-26 Tivo Inc. Secure control of features of a digital device
WO2005043882A2 (en) * 2003-10-21 2005-05-12 Prismvideo, Inc Video source coding with side information
KR20120002625A (ko) 2004-07-14 2012-01-06 파나소닉 주식회사 애플리케이션 프로그램 인증 및 실행 방법
US8010685B2 (en) * 2004-11-09 2011-08-30 Cisco Technology, Inc. Method and apparatus for content classification
US7936682B2 (en) * 2004-11-09 2011-05-03 Cisco Technology, Inc. Detecting malicious attacks using network behavior and header analysis
US7535909B2 (en) 2004-11-09 2009-05-19 Cisco Technology, Inc. Method and apparatus to process packets in a network
US9275052B2 (en) 2005-01-19 2016-03-01 Amazon Technologies, Inc. Providing annotations of a digital work
KR100617867B1 (ko) * 2005-03-07 2006-08-28 엘지전자 주식회사 데이터 방송 응용 프로그램의 서명 인증 방법
CN101278517B (zh) * 2005-10-06 2012-03-21 Nds有限公司 安全设备和建立分组功能
WO2007064359A1 (en) * 2005-11-29 2007-06-07 Thomson Licensing Method and apparatus for securing digital content
US8117459B2 (en) 2006-02-24 2012-02-14 Microsoft Corporation Personal identification information schemas
US8352449B1 (en) 2006-03-29 2013-01-08 Amazon Technologies, Inc. Reader device content indexing
US9672533B1 (en) 2006-09-29 2017-06-06 Amazon Technologies, Inc. Acquisition of an item based on a catalog presentation of items
US8725565B1 (en) 2006-09-29 2014-05-13 Amazon Technologies, Inc. Expedited acquisition of a digital item following a sample presentation of the item
US8607335B1 (en) * 2006-12-09 2013-12-10 Gary Gang Liu Internet file safety information center
US7865817B2 (en) 2006-12-29 2011-01-04 Amazon Technologies, Inc. Invariant referencing in digital works
KR101356736B1 (ko) * 2007-01-19 2014-02-06 삼성전자주식회사 콘텐츠의 무결성을 확인하기 위한 콘텐츠 제공 장치 및방법 및 콘텐츠 사용 장치 및 방법, 및 콘텐츠 사용 장치를폐지하는 콘텐츠 제공 장치 및 방법
US8689296B2 (en) 2007-01-26 2014-04-01 Microsoft Corporation Remote access of digital identities
US9665529B1 (en) 2007-03-29 2017-05-30 Amazon Technologies, Inc. Relative progress and event indicators
US7716224B2 (en) 2007-03-29 2010-05-11 Amazon Technologies, Inc. Search and indexing on a user device
US8341513B1 (en) 2007-05-21 2012-12-25 Amazon.Com Inc. Incremental updates of items
GB2460275B (en) 2008-05-23 2012-12-19 Exacttrak Ltd A Communications and Security Device
US9087032B1 (en) 2009-01-26 2015-07-21 Amazon Technologies, Inc. Aggregation of highlights
US8378979B2 (en) 2009-01-27 2013-02-19 Amazon Technologies, Inc. Electronic device with haptic feedback
US8832584B1 (en) 2009-03-31 2014-09-09 Amazon Technologies, Inc. Questions on highlighted passages
WO2011013303A1 (ja) * 2009-07-30 2011-02-03 パナソニック株式会社 受信データ認証方法及びデジタル放送受信機
US8692763B1 (en) 2009-09-28 2014-04-08 John T. Kim Last screen rendering for electronic book reader
US9219936B2 (en) * 2010-02-05 2015-12-22 Maxlinear, Inc. Conditional access integration in a SOC for mobile TV applications
CN101924930B (zh) * 2010-02-09 2012-06-20 清华大学 一种利用dsm-cc协议传输数据的方法
US9495322B1 (en) 2010-09-21 2016-11-15 Amazon Technologies, Inc. Cover display
US9852143B2 (en) 2010-12-17 2017-12-26 Microsoft Technology Licensing, Llc Enabling random access within objects in zip archives
US8726398B1 (en) 2011-12-13 2014-05-13 Ciphercloud, Inc. System and method to anonymize data transmitted to a destination computing device
US9413526B1 (en) 2011-03-08 2016-08-09 Ciphercloud, Inc. System and method to anonymize data transmitted to a destination computing device
US9338220B1 (en) 2011-03-08 2016-05-10 Ciphercloud, Inc. System and method to anonymize data transmitted to a destination computing device
US11228566B1 (en) 2011-03-08 2022-01-18 Ciphercloud, Inc. System and method to anonymize data transmitted to a destination computing device
US9356993B1 (en) 2011-03-08 2016-05-31 Ciphercloud, Inc. System and method to anonymize data transmitted to a destination computing device
US9292696B1 (en) 2011-03-08 2016-03-22 Ciphercloud, Inc. System and method to anonymize data transmitted to a destination computing device
US9852311B1 (en) 2011-03-08 2017-12-26 Ciphercloud, Inc. System and method to anonymize data transmitted to a destination computing device
US9432342B1 (en) 2011-03-08 2016-08-30 Ciphercloud, Inc. System and method to anonymize data transmitted to a destination computing device
US9300637B1 (en) * 2011-03-08 2016-03-29 Ciphercloud, Inc. System and method to anonymize data transmitted to a destination computing device
US9667741B1 (en) 2011-03-08 2017-05-30 Ciphercloud, Inc. System and method to anonymize data transmitted to a destination computing device
US8584167B2 (en) 2011-05-31 2013-11-12 Echostar Technologies L.L.C. Electronic programming guides combining stored content information and content provider schedule information
FR2978835B1 (fr) * 2011-08-05 2013-08-09 Thales Sa Charge utile de satellite pour systemes d'augmentation
US8627349B2 (en) 2011-08-23 2014-01-07 Echostar Technologies L.L.C. User interface
US9185331B2 (en) 2011-08-23 2015-11-10 Echostar Technologies L.L.C. Storing multiple instances of content
US8437622B2 (en) 2011-08-23 2013-05-07 Echostar Technologies L.L.C. Altering presentation of received content based on use of closed captioning elements as reference locations
US8763027B2 (en) 2011-08-23 2014-06-24 Echostar Technologies L.L.C. Recording additional channels of a shared multi-channel transmitter
US8660412B2 (en) 2011-08-23 2014-02-25 Echostar Technologies L.L.C. System and method for dynamically adjusting recording parameters
US8959566B2 (en) 2011-08-23 2015-02-17 Echostar Technologies L.L.C. Storing and reading multiplexed content
US9357159B2 (en) 2011-08-23 2016-05-31 Echostar Technologies L.L.C. Grouping and presenting content
US9621946B2 (en) 2011-08-23 2017-04-11 Echostar Technologies L.L.C. Frequency content sort
US8447170B2 (en) 2011-08-23 2013-05-21 Echostar Technologies L.L.C. Automatically recording supplemental content
US8839446B2 (en) * 2011-09-12 2014-09-16 Microsoft Corporation Protecting archive structure with directory verifiers
US8972967B2 (en) 2011-09-12 2015-03-03 Microsoft Corporation Application packages using block maps
US8819361B2 (en) 2011-09-12 2014-08-26 Microsoft Corporation Retaining verifiability of extracted data from signed archives
US9158741B1 (en) 2011-10-28 2015-10-13 Amazon Technologies, Inc. Indicators for navigating digital works
US8959544B2 (en) 2012-03-15 2015-02-17 Echostar Technologies L.L.C. Descrambling of multiple television channels
US8819722B2 (en) * 2012-03-15 2014-08-26 Echostar Technologies L.L.C. Smartcard encryption cycling
US9489981B2 (en) 2012-03-15 2016-11-08 Echostar Technologies L.L.C. Successive initialization of television channel recording
US8989562B2 (en) 2012-03-15 2015-03-24 Echostar Technologies L.L.C. Facilitating concurrent recording of multiple television channels
US8793724B2 (en) 2012-11-08 2014-07-29 Eldon Technology Limited Image domain compliance
US9880983B2 (en) * 2013-06-04 2018-01-30 X1 Discovery, Inc. Methods and systems for uniquely identifying digital content for eDiscovery
US10263783B2 (en) * 2013-08-23 2019-04-16 Nec Corporation Method and system for authenticating a data stream
US9628838B2 (en) 2013-10-01 2017-04-18 Echostar Technologies L.L.C. Satellite-based content targeting
US9756378B2 (en) 2015-01-07 2017-09-05 Echostar Technologies L.L.C. Single file PVR per service ID
GB2534133A (en) * 2015-01-08 2016-07-20 Strategy & Tech Ltd Digital television broadcast data stream authentication
US10481900B2 (en) 2016-04-11 2019-11-19 Endress+Hauser Conducta Gmbh+Co. Kg Method for updating a firmware component and device of measurement and control technology
DE102016106819A1 (de) * 2016-04-11 2017-10-26 Endress+Hauser Conducta Gmbh+Co. Kg Verfahren zur Aktualisierung einer Firmware-Komponente und Gerät der Mess- und Regeltechnik
GB2562796A (en) * 2017-05-26 2018-11-28 Sony Corp Audio and/or video receiving and transmitting apparatuses and methods
US10742612B2 (en) * 2017-10-16 2020-08-11 Cisco Technology, Inc. Determine payload integrity for traffic flowing across proxies
US11190827B2 (en) 2018-04-30 2021-11-30 Qualcomm Incorporated Method for broadcast service signaling
CN111726570B (zh) * 2020-01-01 2021-11-02 上海大参林医疗健康科技有限公司 基于数据解析的连续图像辨识系统
EP3917103A1 (de) * 2020-05-29 2021-12-01 Siemens Aktiengesellschaft Verfahren, system, sender und empfänger zum authentifizieren eines senders

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ES2158081T3 (es) 1994-01-13 2001-09-01 Certco Inc Sistema criptografico y metodo con caracteristica de deposito de claves.
US5768539A (en) * 1994-05-27 1998-06-16 Bell Atlantic Network Services, Inc. Downloading applications software through a broadcast channel
KR980700752A (ko) * 1994-10-28 1998-03-30 더블유 스코트 스토네타 쥬니어 문서를 인증하고 확인하는 증명서를 제공하기 위한 디지털문서 인중시스템
JP2570635B2 (ja) * 1994-11-07 1997-01-08 日本電気株式会社 デジタル署名方式
US5625693A (en) * 1995-07-07 1997-04-29 Thomson Consumer Electronics, Inc. Apparatus and method for authenticating transmitting applications in an interactive TV system
US5754659A (en) * 1995-12-22 1998-05-19 General Instrument Corporation Of Delaware Generation of cryptographic signatures using hash keys
US5850565A (en) * 1996-08-26 1998-12-15 Novell, Inc. Data compression method and apparatus
US6141002A (en) * 1996-11-12 2000-10-31 Opentv, Inc. System and method for downloading and rendering glyphs in a set top box
EP0849734B1 (en) * 1996-12-20 2003-04-16 Texas Instruments Incorporated Improvements in or relating to security systems
US6526144B2 (en) * 1997-06-02 2003-02-25 Texas Instruments Incorporated Data protection system
EP0914001A1 (en) * 1997-10-28 1999-05-06 CANAL+ Société Anonyme Downloading of applications in a digital decoder

Also Published As

Publication number Publication date
CY1109887T1 (el) 2014-09-10
HUP0101641A2 (hu) 2001-09-28
DE69936156T2 (de) 2008-01-24
CN1612520A (zh) 2005-05-04
DE69928089T2 (de) 2006-06-01
EP1064754A1 (en) 2001-01-03
US7856557B2 (en) 2010-12-21
DE69941935D1 (de) 2010-03-04
DE69936157T2 (de) 2008-01-24
TR200002732T2 (tr) 2000-12-21
DE69936156D1 (de) 2007-07-05
JP4199925B2 (ja) 2008-12-24
EP1646178B1 (en) 2007-05-23
EP1619825A2 (en) 2006-01-25
DK1064754T3 (da) 2005-12-05
KR20010034652A (ko) 2001-04-25
NO20004765L (no) 2000-11-24
PT1619825E (pt) 2010-02-17
DE69928089D1 (de) 2005-12-08
WO1999049614A1 (en) 1999-09-30
EP1646178A1 (en) 2006-04-12
KR100610277B1 (ko) 2006-08-09
AU753937B2 (en) 2002-10-31
EP1619824A2 (en) 2006-01-25
CN1750641A (zh) 2006-03-22
EP0946019A1 (en) 1999-09-29
CA2324156A1 (en) 1999-09-30
NO20110539L (no) 2000-11-24
HK1101236A1 (en) 2007-10-12
EP1619824A3 (en) 2006-06-28
CN1227860C (zh) 2005-11-16
AU2851099A (en) 1999-10-18
ES2252934T3 (es) 2006-05-16
NO20004765D0 (no) 2000-09-22
ATE363167T1 (de) 2007-06-15
JP2002508624A (ja) 2002-03-19
NO332071B1 (no) 2012-06-18
EP1619825A3 (en) 2006-02-22
CN100438619C (zh) 2008-11-26
CY1105677T1 (el) 2010-12-22
ATE455410T1 (de) 2010-01-15
US7231525B1 (en) 2007-06-12
EP1619825B1 (en) 2010-01-13
CN1901451A (zh) 2007-01-24
PT1619826E (pt) 2007-07-11
HU226343B1 (en) 2008-09-29
EP1619826B1 (en) 2007-05-23
CN1881880A (zh) 2006-12-20
EP1758295A3 (en) 2010-07-21
CN1301442A (zh) 2001-06-27
EP1619826A2 (en) 2006-01-25
CN100452702C (zh) 2009-01-14
EP1619826A3 (en) 2006-06-14
US20070124594A1 (en) 2007-05-31
IL138438A (en) 2005-08-31
PL343076A1 (en) 2001-07-30
EP1619824B1 (en) 2013-07-10
ES2287872T3 (es) 2007-12-16
CN1783779A (zh) 2006-06-07
CA2324156C (en) 2010-02-16
US20050041955A1 (en) 2005-02-24
IL138438A0 (en) 2001-10-31
ATE363168T1 (de) 2007-06-15
ZA200006016B (en) 2001-06-06
CN1901451B (zh) 2011-07-13
HUP0101641A3 (en) 2003-05-28
CN1881880B (zh) 2010-12-29
EP1758295A2 (en) 2007-02-28
DK1619825T3 (da) 2010-05-03
DK1619826T3 (da) 2007-09-24
NO334994B1 (no) 2014-08-18
ES2287871T3 (es) 2007-12-16
TR200101213T2 (tr) 2002-04-22
ID27501A (id) 2001-04-12
EP1064754B1 (en) 2005-11-02
US7760986B2 (en) 2010-07-20
RU2227376C2 (ru) 2004-04-20
BR9909073A (pt) 2000-12-05
HK1101742A1 (en) 2007-10-26
CN1783779B (zh) 2010-10-13
HRP20000598A2 (en) 2001-06-30
DE69936157D1 (de) 2007-07-05
ATE308839T1 (de) 2005-11-15

Similar Documents

Publication Publication Date Title
ES2337369T3 (es) Autentificacion de datos en un sistema de transmision digital.
ES2250346T3 (es) Autentificacion de datos transmitidos en un sistema de transmision digital.
MXPA00009302A (es) Autentificacion de datos en un sistema de transmision digital
CZ20003537A3 (cs) Způsob ověřování dat