ES2265466T3 - Descarga de datos. - Google Patents
Descarga de datos. Download PDFInfo
- Publication number
- ES2265466T3 ES2265466T3 ES02013520T ES02013520T ES2265466T3 ES 2265466 T3 ES2265466 T3 ES 2265466T3 ES 02013520 T ES02013520 T ES 02013520T ES 02013520 T ES02013520 T ES 02013520T ES 2265466 T3 ES2265466 T3 ES 2265466T3
- Authority
- ES
- Spain
- Prior art keywords
- directory
- signature
- mpeg
- data
- decoder
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
- 230000015654 memory Effects 0.000 claims abstract description 57
- 238000000034 method Methods 0.000 claims abstract description 39
- 238000012545 processing Methods 0.000 claims description 20
- 230000005540 biological transmission Effects 0.000 claims description 6
- 238000006073 displacement reaction Methods 0.000 claims description 6
- 230000002401 inhibitory effect Effects 0.000 claims description 5
- 238000010200 validation analysis Methods 0.000 description 60
- 230000002452 interceptive effect Effects 0.000 description 20
- 230000008569 process Effects 0.000 description 9
- 238000001824 photoionisation detection Methods 0.000 description 5
- 206010036618 Premenstrual syndrome Diseases 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000000977 initiatory effect Effects 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 238000013475 authorization Methods 0.000 description 2
- 230000000295 complement effect Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000009792 diffusion process Methods 0.000 description 2
- 230000036316 preload Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 241000700605 Viruses Species 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 150000001875 compounds Chemical class 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
- 230000003936 working memory Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/20—Adaptations for transmission via a GHz frequency band, e.g. via satellite
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/04—Payment circuits
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/34—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
- G06Q20/341—Active cards, i.e. cards including their own processing means, e.g. including an IC or chip
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/34—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
- G06Q20/357—Cards having a plurality of specified features
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
- G06Q20/409—Device specific authentication in transaction processing
- G06Q20/4097—Device specific authentication in transaction processing using mutual authentication between devices and transaction partners
- G06Q20/40975—Device specific authentication in transaction processing using mutual authentication between devices and transaction partners using encryption therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/007—Transform coding, e.g. discrete cosine transform
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F17/00—Coin-freed apparatus for hiring articles; Coin-freed facilities or services
- G07F17/0014—Coin-freed apparatus for hiring articles; Coin-freed facilities or services for vending, access and use of specific services not covered anywhere else in G07F17/00
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F7/00—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
- G07F7/08—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
- G07F7/10—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means together with a coded signal, e.g. in the form of personal identification information, like personal identification number [PIN] or biometric data
- G07F7/1008—Active credit-cards provided with means to personalise their use, e.g. with PIN-introduction/comparison system
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
- G11C16/102—External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators
- G11C16/105—Circuits or methods for updating contents of nonvolatile memory, especially with 'security' features to ensure reliable replacement, i.e. preventing that old data is lost before new data is reliably written
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B7/00—Radio transmission systems, i.e. using radiation field
- H04B7/14—Relay systems
- H04B7/15—Active relay systems
- H04B7/185—Space-based or airborne stations; Stations for satellite systems
- H04B7/18523—Satellite systems for providing broadcast service to terrestrial stations, i.e. broadcast satellite service
- H04B7/18526—Arrangements for data linking, networking or transporting, or for controlling an end to end session
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N17/00—Diagnosis, testing or measuring for television systems or their details
- H04N17/004—Diagnosis, testing or measuring for television systems or their details for digital television systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/235—Processing of additional data, e.g. scrambling of additional data or processing content descriptors
- H04N21/2351—Processing of additional data, e.g. scrambling of additional data or processing content descriptors involving encryption of additional data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management 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/258—Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/435—Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
- H04N21/4351—Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream involving reassembling additional data, e.g. rebuilding an executable program from recovered modules
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/443—OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
- H04N21/4437—Implementing a Virtual Machine [VM]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/45—Management 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/458—Scheduling 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/4586—Content update operation triggered locally, e.g. by comparing the version of software modules in a DVB carousel to the version stored locally
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/45—Management 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/462—Content 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/4622—Retrieving content or additional data from different sources, e.g. from a broadcast channel and the Internet
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/45—Management 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/462—Content 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/4623—Processing of entitlement messages, e.g. ECM [Entitlement Control Message] or EMM [Entitlement Management Message]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/478—Supplemental services, e.g. displaying phone caller identification, shopping application
- H04N21/4782—Web browsing, e.g. WebTV
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/81—Monomedia components thereof
- H04N21/8166—Monomedia components thereof involving executable data, e.g. software
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/84—Generation or processing of descriptive data, e.g. content descriptors
- H04N21/8402—Generation or processing of descriptive data, e.g. content descriptors involving a version number, e.g. version number of EPG data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/44—Receiver circuitry for the reception of television signals according to analogue transmission standards
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/16—Analogue secrecy systems; Analogue subscription systems
- H04N7/162—Authorising the user terminal, e.g. by paying; Registering the use of a subscription channel, e.g. billing
- H04N7/163—Authorising the user terminal, e.g. by paying; Registering the use of a subscription channel, e.g. billing by receiver means only
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/16—Analogue secrecy systems; Analogue subscription systems
- H04N7/167—Systems rendering the television signal unintelligible and subsequently intelligible
- H04N7/1675—Providing digital key or authorisation information for generation or regeneration of the scrambling sequence
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/16—Analogue secrecy systems; Analogue subscription systems
- H04N7/173—Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
- H04N7/17309—Transmission or handling of upstream communications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/16—Analogue secrecy systems; Analogue subscription systems
- H04N7/173—Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
- H04N7/17309—Transmission or handling of upstream communications
- H04N7/17318—Direct or substantially direct transmission and handling of requests
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1435—Saving, restoring, recovering or retrying at system level using file system or storage system metadata
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/41—Structure of client; Structure of client peripherals
- H04N21/426—Internal components of the client ; Characteristics thereof
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- Databases & Information Systems (AREA)
- Accounting & Taxation (AREA)
- Software Systems (AREA)
- General Business, Economics & Management (AREA)
- Computer Security & Cryptography (AREA)
- Strategic Management (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Astronomy & Astrophysics (AREA)
- Discrete Mathematics (AREA)
- Computing Systems (AREA)
- Aviation & Aerospace Engineering (AREA)
- Quality & Reliability (AREA)
- Computer Graphics (AREA)
- Finance (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- General Health & Medical Sciences (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Communication Control (AREA)
- Reduction Or Emphasis Of Bandwidth Of Signals (AREA)
- Stored Programmes (AREA)
- Superconductors And Manufacturing Methods Therefor (AREA)
- Photoreceptors In Electrophotography (AREA)
- Stereo-Broadcasting Methods (AREA)
- Circuits Of Receivers In General (AREA)
Abstract
Método para descargar una pluralidad de módulos de datos a un receptor/ decodificador MPEG (2020), que comprende las etapas de: generar una firma de módulo (52) para cada módulo (24) de datos a descargar; formatear los módulos de datos como respectivas tablas MPEG de módulos (24); generar un directorio (40) incluyendo una identificación de cada tabla MPEG de módulos (24) y la firma correspondiente; generar una firma de directorio (46) para el directorio; cifrar la firma de directorio en un bloque de datos (66) que incluye otros datos, con un desplazamiento seleccionado de entre el comienzo del bloque de datos y el comienzo de la firma, utilizando una clave privada; formatear el directorio y la firma de directorio cifrada como una tabla MPEG de directorio; transmitir las tablas MPEG de módulos y de directorio; y en el receptor/ decodificador: recibir las tablas MPEG de módulos y de directorio; descifrar el bloque de datos cifrado con la firma de directorio de la tabla MPEG de directorio recibida utilizando una clave pública (82) que corresponde a la clave privada; buscar al menos un desplazamiento almacenado en un área protegida de la memoria (68) del receptor/ decodificador; extraer la firma de directorio del bloque de datos descifrado utilizando dicho desplazamiento buscado a partir del comienzo del bloque de datos descifrado; generar una firma de directorio para el directorio contenido en la tabla MPEG de directorio recibida; comparar la firma de directorio extraída y la firma de directorio generada en el receptor/ decodificador; generar una firma de módulo respectiva para cada módulo de las tablas MPEG de módulos recibidas; y comparar cada firma de módulo de la tabla MPEG de directorio recibida con la firma de módulo respectiva generada en el receptor/ decodificador.
Description
Descarga de datos.
Esta invención se refiere a:
- -
- un método para descargar datos a un receptor/decodificador MPEG;
- -
- un receptor/decodificador MPEG en sí; y
- -
- un sistema de transmisión MPEG.
La llegada de los sistemas de transmisión
digital destinados principalmente a la difusión de señales de
televisión, en particular pero no exclusivamente, sistemas de
televisión por satélite, ha abierto la posibilidad de utilizar
tales sistemas para otros propósitos. Uno de estos es proporcionar
interactividad con el usuario final.
Un modo de hacer esto es ejecutar una aplicación
en el receptor/decodificador mediante la cual se recibe la señal
de televisión. El código para la aplicación podría encontrarse
almacenado permanentemente en el receptor/decodificador. Sin
embargo, esto sería bastante limitante. Preferiblemente, el
receptor/decodificador debe ser capaz de descargar el código para
una aplicación requerida. De este modo, puede proporcionarse más
variedad, y las aplicaciones pueden actualizarse tanto como se
requiera sin ninguna acción por parte del usuario.
En un sistema MPEG, el código de aplicación
puede ser descargado en tablas MPEG. No obstante, existe un límite
en el tamaño de un fragmento de código que puede ser descargado
por medio de una sola tabla MPEG. Además, si se requiere que una
aplicación completa sea descargada antes de ejecutarla, esto puede
provocar un retraso que resulte inaceptable para el usuario. Por lo
tanto, hay un deseo de ser capaz de descargar una aplicación como
una pluralidad de módulos. Sin embargo, esto puede crear
posteriormente el problema de ser capaz de identificar y extraer del
tren de bits MPEG los módulos requeridos para una aplicación en
particular.
WO 95/33338 enseña la programación dinámica de
un terminal e entretenimiento digital, que puede ser programado,
según se necesite, para cada servicio diferente ofertado por uno o
más proveedores de servicios de información. El procesador de
control recibe entradas del usuario y operaciones de control del
terminal y él envío y la recepción de señales de control a través
de un canal de control de dos vías. La memoria del programa
almacena los datos recibidos a través de un canal de banda ancha
digital como software ejecutable por el procesador de control. El
procesador de control ejecuta el software recibido y lo almacena en
la memoria para controlar operaciones posteriores del terminal,
incluyendo al menos algunas de las operaciones del procesador de
audio/vídeo y, al menos, algunas de las respuestas para las
entradas del usuario.
EP-0690400 proporciona un método
para generar un tren de datos de componente interactivo,
representando un programa de aplicación, para una señal compuesta
interactiva audio vídeo (AVI). Se generan archivos de programa que
representan el programa de aplicación. Luego, se generan los datos
de flujo que definen la estructura de datos del componente
interactivo. Finalmente se genera el tren de datos insertando
selectivamente archivos de programa en el tren de datos en
respuesta a los datos de flujo. El aparato para generar tal tren de
datos de componente interactivo comprende una fuente de archivos de
programa que representan el programa de aplicación y una fuente de
datos de flujo que definen la estructura de datos del componente
interactivo. Un constructor de flujo (10) inserta selectivamente
(30) archivos procedentes de la fuente de archivos en el componente
interactivo en respuesta a los datos procedentes de la fuente de
datos de flujo.
Estos dos métodos no proporcionan ninguna
seguridad o autentificación en particular para la descarga de
aplicaciones, lo que hace al sistema vulnerable, particularmente en
un sistema con varios proveedores de servicios.
EP-0752786 describe un método
para autentificar aplicaciones transmitidas en un sistema de
información interactivo. Un programa interactivo ejecutable se
divide en módulos, de modo similar a los archivos de ordenador, y
se crea un módulo de directorio que enlaza los módulos de
programa. La seguridad para la aplicación ejecutable se proporciona
adjuntando al módulo de directorio un certificado firmado, y la
integridad de los módulos se supervisa mediante el troceo de los
módulos e incluyendo los valores de troceo en el módulo de
directorio. Se genera un valor de troceo del módulo de directorio,
se cifra y se adjunta al módulo de directorio. En el receptor, se
decodifica el certificado y se verifica su autenticidad. Si el
certificado es genuino, el programa puede ejecutarse, pero sólo si
los valores de troceo generados por el receptor son idénticos a los
del módulo de directorio.
Mientras este método proporciona una protección
bastante buena para el software descargado, es un hecho conocido
que los piratas informáticos a menudo intentan "piratear"
cualquier sistema disponible. Por todo lo que sabemos, la seguridad
de este método puede ser suficiente, pero aún serán apreciadas más
mejoras, al menos una de las proporcionadas por la presente
invención.
De acuerdo con un primer aspecto de la presente
invención, se proporciona un método para descargar, al menos, parte
de una aplicación a un receptor/decodificador MPEG, comprendiendo
las etapas de: dividir la aplicación en una pluralidad de módulos;
formatear cada uno de los módulos como una tabla MPEG
correspondiente, teniendo las tablas la misma identificación de
tabla ("TID") y siendo diferentes de una
extensión-TID predeterminada, las respectivas
extensiones de identificación de tabla ("extensiones TID");
generar una tabla MPEG de directorio para los módulos que poseen la
misma mencionada TID y una tabla para los módulos con la misma TID
mencionada y la extensión-TID predeterminada
mencionada, conteniendo el directorio, para cada uno de los
módulos, un nombre de ese módulo y la correspondiente
extensión-TID; y medios para transmitir
cíclicamente la tabla MPEG de directorio y las tablas MPEG de
módulos en una tren de bits MPEG.
Preferiblemente, el sistema comprende además
medios para generar una identificación de versión para la tabla
MPEG de directorio; y en donde los medios que generan la tabla MPEG
de directorio son operativos para incluir en la tabla MPEG de
directorio la identificación de versión generada para ésta.
Los medios de formateo de módulos puede ser
operativos para formatear, al menos, una de las tablas MPEG de
módulos como una pluralidad de secciones MPEG que contiene cada
una, en una porción predeterminada para ello, una identificación
de esa sección MPEG en esa tabla MPEG y una indicación del número
de secciones MPEG en esa tabla MPEG.
Deseablemente, el receptor/decodificador debe
estar protegido frente a la descarga de aplicaciones no autorizadas
que podrían contener, por ejemplo, un virus. De acuerdo con ello,
pueden contemplarse los conceptos de firma y cifrado de, al menos,
una parte del código de aplicación.
De acuerdo con un cuarto aspecto de la presente
invención, se proporciona un método para descargar datos a un
receptor/decodificador MPEG, comprendiendo las etapas de: - generar
una firma para los datos a descargar; cifrar la firma utilizando
una clave privada; formatear los datos a descargar, la firma
cifrada y una identificación para la clave privada como una tabla
MPEG; transmitir la tabla MPEG; y en el receptor/decodificador: -
recibir la tabla MPEG; seleccionar una entre una pluralidad de
claves públicas de acuerdo con la identificación de clave de la
tabla MPEG recibida; descifrar la firma cifrada en la tabla MPEG
recibida utilizando la clave pública seleccionada para proporcionar
una firma descifrada; generar una firma para los datos de la tabla
MPEG recibida; y comparar, para los datos recibidos, la firma
descifrada y la firma generada en el receptor/decodificador.
De acuerdo con ello, el receptor/decodificador
puede utilizarse para descargar aplicaciones que poseen firmas
cifradas procedentes de más de una fuente, sin que las fuentes
precisen conocer las claves privadas de las otras.
El método puede comprender además las etapas de
descargar al receptor/decodificador una aplicación que posea una
firma cifrada utilizando una clave privada con una identificación
de clave predeterminada; ejecutar la aplicación en el
receptor/decodificador para provocar que el receptor/decodificador
reciba una clave adicional; almacenar la clave adicional en un área
de la memoria volátil del receptor/decodificador. En este caso,
durante la etapa de ejecutar la aplicación, la clave adicional
puede suministrarse localmente al receptor/decodificador, por
ejemplo a través de un puerto paralelo, un puerto serie o un lector
de tarjetas inteligentes del receptor/decodificador. Si el
receptor/decodificador tiene una conexión de módem, el
receptor/decodificador, preferiblemente, está dispuesto para evitar
que dicha clave adicional sea suministrada a través del módem.
Estas características permiten a un fabricante
que desee probar un receptor/decodificador descargar una clave al
receptor/decodificador.
En el receptor/decodificador, el método puede
incluir además las etapas de buscar, en un área protegida de la
memoria del receptor/decodificador, una señal de validación para la
clave pública seleccionada, e inhibir o abortar la descarga de los
datos si no se establece la señal buscada.
De acuerdo con ello, si bien una pluralidad de
claves públicas pueden ser suministradas permanentemente en la
memoria del receptor/decodificador, cualquiera de ellas puede ser
invalidada selectivamente, lo que puede ser necesario, por ejemplo,
en el caso de que sea quebrantada la privacidad de una clave
privada asociada con una clave pública en particular, o cuando dos
operadores que han estado utilizando las mismas claves deciden
utilizar claves separadas.
En el caso en el que el receptor/decodificador
está dispuesto para descargar una aplicación que posee una firma
cifrada utilizando una clave privada con una identificación de
clave predeterminada, como se dijo anteriormente, en el área
protegida de la memoria del receptor/decodificador la clave
privada, con la identificación de clave predeterminada, puede tener
una señal de validación que ser puede modificada por dicha
aplicación y, dependiendo del estado de esa señal de validación, se
determina la capacidad para recibir dicha clave adicional.
Estas últimas características de señales de
validación para las claves públicas pueden ser proporcionadas
independientemente del cuarto aspecto de la invención. De acuerdo
con ello, un quinto aspecto de la presente invención proporciona un
método para descargar datos a un receptor/decodificador MPEG,
comprendiendo las etapas de: - generar una firma para los datos a
descargar; cifrar la firma utilizando una clave privada; formatear
los datos a descargar, la firma cifrada y una identificación para
la clave privada como una tabla MPEG; transmitir la tabla MPEG; y
en el receptor/decodificador: - recibir la tabla MPEG; buscar, en
un área protegida de la memoria del receptor/ decodificador, una
señal de validación para una clave pública que se corresponda con
la clave privada identificada en la tabla MPEG recibida; y si se
establece la señal buscada: - descifrar la firma cifrada en la
tabla MPEG recibida utilizando la clave pública que se corresponda
con la clave privada identificada en la tabla MPEG recibida para
proporcionar una firma descifrada; generar una firma para los datos
de la tabla MPEG recibida; y comparar, para los datos recibidos, la
firma descifrada y la firma generada en el
receptor/decodificador.
Preferiblemente, los métodos del cuarto y quinto
aspecto de la invención incluyen además las etapas de: - generar un
código de validación para los datos a descargar, siendo cifrado el
código de validación con la firma en la etapa de cifrado y siendo
descifrado con la firma en la etapa de descifrado; buscar un código
de validación almacenado en un área protegida de la memoria del
receptor/decodificador; y comparar el código de validación buscado
y el código de validación descifrado.
De acuerdo con ello, el receptor/decodificador
puede configurarse para recibir sólo ciertas aplicaciones o tipos
de aplicaciones.
Estas características pueden proporcionarse
independientemente de los aspectos cuarto y quinto de la invención.
De acuerdo con ello, un sexto aspecto de la presente invención
proporciona un método para descargar datos a un
receptor/decodificador MPEG, comprendiendo las etapas de: - generar
un código de validación para los datos a descargar; generar una
firma para los datos a descargar o para una parte de ellos; cifrar
el código de validación y la firma utilizando una clave privada;
formatear los datos a descargar, la firma y el código de validación
cifrados como, al menos, una tabla MPEG; transmitir la/cada tabla
MPEG; y en el receptor/decodificador: - recibir la/cada tabla MPEG;
descifrar el código de validación y la firma cifrados en
la(s) tabla(s) MPEG recibida(s) utilizando una
clave pública correspondiente a la clave privada; buscar un código
de validación almacenado en un área protegida de la memoria del
receptor/decodificador; comparar el código de validación buscado y
el código de validación descifrado; generar una firma para los
datos de la(s) tabla(s) MPEG recibida(s) o para
las mencionadas partes de ellos; y comparar, para los datos
recibidos, la firma descifrada y la firma generada en el
receptor/decodificador.
Preferiblemente, el método comprende además la
etapa de inhibir o abortar la descarga de los datos si, en la etapa
de comparar el código de validación, el código de validación
buscado y el código de validación descifrado no coinciden entre
sí.
En los aspectos cuarto al sexto de la invención,
puede proporcionarse que la firma de los datos a descargar se
encuentre cifrada en un bloque de datos que incluya otros datos,
con un desplazamiento seleccionado de entre el comienzo del bloque
de datos y el comienzo de la firma, y el bloque de datos cifrado se
descifre en la etapa de descifrado en el receptor/decodificador, y
que además incluya, en el receptor/decodificador, las etapas de
buscar, al menos, un desplazamiento almacenado en un área protegida
de la memoria del receptor/decodificador, y extraer la firma del
bloque de datos descifrado utilizando dicho desplazamiento buscado a
partir del comienzo del bloque de datos descifrado.
De acuerdo con ello, la firma puede distinguirse
entre otros datos ficticios, haciendo más difícil acertar la
localización de la firma. De forma alternativa, o adicionalmente,
esta característica permite que los datos estén disponibles sólo
para uno o más grupos en particular de
receptores/decodificadores.
Estas características pueden proporcionarse
independientemente de los aspectos, cuarto a sexto de la invención.
De acuerdo con ello, un séptimo aspecto de la presente invención
proporciona un método para descargar datos a un
receptor/decodificador MPEG, comprendiendo las etapas de: - generar
una firma para los datos a descargar; incluir la firma y otros
datos en un bloque de datos con un desplazamiento seleccionado de
entre el comienzo del bloque de datos y el comienzo de la firma;
cifrar el bloque de datos utilizando una clave privada; formatear
los datos a descargar y el bloque de datos cifrado como una tabla
MPEG; transmitir la tabla MPEG; y en el receptor/decodificador: -
recibir la tabla MPEG; descifrar el bloque de datos cifrado en la
tabla MPEG recibida utilizando una clave pública correspondiente a
la clave privada; buscar, al menos, un desplazamiento almacenado en
un área protegida de la memoria del receptor/decodificador; extraer
la firma del bloque de datos descifrado utilizando el mencionado
desplazamiento buscado a partir del comienzo del bloque de datos
descifrado; generar una firma para los datos de la tabla MPEG
recibida; y comparar, para los datos recibidos, la firma extraída
del bloque de datos descifrado con la firma generada en el
receptor/decodificador.
En el caso en el que dicho área protegida de la
memoria tenga, al menos, dos de tales desplazamientos almacenados,
si en la etapa de comparación la firma extraída y la firma generada
no coinciden, preferiblemente, el método incluye las etapas de
repetir las etapas de búsqueda, extracción y comparación utilizando
otro de los desplazamientos almacenados.
Al menos, algunos de dichos otros datos del
bloque de datos pueden ser datos arbitrarios o ficticios pero, si
lo son, preferiblemente, ninguna sección de los datos ficticios
repite la firma.
En los aspectos cuarto a séptimo de la
invención, los datos pueden descargarse como una pluralidad de
módulos de datos, y el método puede incluir las etapas de: -
generar una firma de módulo para cada módulo de datos a descargar;
formatear los módulos de datos como las correspondientes tablas
MPEG de módulos; generar un directorio incluyendo una
identificación de cada tabla MPEG de módulo y la correspondiente
firma, siendo el directorio el sujeto de la etapa de generación de
firma; y en el receptor/decodificador: - generar una firma de
módulo correspondiente para cada uno de los módulos de las tablas
MPEG de módulos recibidas; y comparar cada firma de módulo de la
tabla MPEG de directorio recibida con la correspondiente firma de
módulo generada en el receptor/decodificador.
De acuerdo con ello, si bien los datos a
descargar están compuestos por una pluralidad de módulos, sólo se
requiere un único proceso de cifrado para cifrar los módulos, y
sólo se requiere un único proceso de descifrado para permitir que
las firmas sean verificadas.
Estas características pueden proporcionarse
independientemente de los aspectos, cuarto a séptimo de la
invención. De acuerdo con ello, un octavo aspecto de la presente
invención proporciona un método para descargar una pluralidad de
módulos de datos a un receptor/decodificador MPEG, comprendiendo las
etapas de: - generar una firma de módulo para cada módulo de datos
a descargar; formatear los módulos de datos como las
correspondientes tablas MPEG de módulos; generar un directorio
incluyendo una identificación de cada tabla MPEG de módulo y la
correspondiente firma; generar una firma de directorio para el
directorio; cifrar la firma de directorio utilizando una clave
privada; formatear el directorio y la firma de directorio cifrada
como una tabla MPEG de directorio; transmitir las tablas MPEG de
módulos y de directorio; y en el receptor/decodificador: - recibir
las tablas MPEG de módulos y de directorio; descifrar la firma de
directorio cifrada en la tabla MPEG de directorio recibida
utilizando una clave pública correspondiente a la clave privada;
generar una firma de directorio para el directorio de la tabla MPEG
de directorio recibida; comparar la firma de directorio descifrada
y la firma de directorio generada en el receptor/decodificador;
generar una firma de módulo correspondiente para cada uno de los
módulos de las tablas MPEG de módulo recibidas; y comparar cada
firma de módulo en la tabla de directorio MPEG recibida con la
correspondiente firma de módulo generada en el
receptor/decodificador.
Preferiblemente, el método comprende además la
etapa de inhibir o abortar la descarga de un módulo de datos si, en
la etapa de comparar la firma de módulo, la firma de módulo en la
tabla MPEG de directorio recibida y la correspondiente firma de
módulo generada en el receptor/decodificador para ese módulo no
coinciden entre
sí.
sí.
Los métodos descritos anteriormente incluyen
además, preferiblemente, la etapa de inhibir o abortar la descarga
de los datos si, en la(s) etapa(s) de comparación,
la/cada firma descifrada y la firma generada no coinciden
entre
sí.
sí.
De acuerdo con un noveno aspecto de la presente
invención, se proporciona un receptor/decodificador MPEG para
utilizar en el desarrollo de parte del método del cuarto aspecto de
la invención, comprendiendo: medios para recibir tales tablas
MPEG; medios para almacenar una pluralidad de claves públicas y una
identificación para cada una de las claves públicas; y medios de
procesamiento que están programados para seleccionar una de las
claves públicas almacenadas de acuerdo con la identificación de
clave en la tabla MPEG recibida; descifrar la firma cifrada en la
tabla MPEG recibida utilizando la clave pública seleccionada para
proporcionar una firma descifrada; generar una firma para los datos
de la tabla MPEG recibida; y comparar, para los datos recibidos, la
firma descifrada y la firma generada en el
receptor/decodificador.
Los medios de almacenamiento de claves se
proporcionan preferiblemente mediante la ROM, y la autentificación
para cada una de las claves públicas puede proporcionarse mediante
la localización de almacenaje de esa clave pública en el medio de
almacenaje de claves.
El receptor/decodificador puede incluir además
un área de memoria volátil, y los medios de procesamiento pueden
ser funcionales para descargar una aplicación que posea una firma
cifrada utilizando una clave privada con una identificación de
clave predeterminada, ejecutar la aplicación para provocar que el
receptor/decodificador reciba una clave adicional, y hacer que la
clave adicional se almacene en el área de la memoria volátil.
El receptor/decodificador puede incluir además
medios para recibir dicha clave adicional, la cual es suministrada
localmente al receptor/decodificador, tales como un puerto
paralelo, un puerto serie y/o un lector de tarjetas inteligentes
del receptor/decodificador. La memoria volátil es provista
preferiblemente por la RAM. De nuevo, si el receptor/decodificador
tiene una conexión de módem, el receptor/decodificador está
dispuesto preferiblemente para evitar que tal clave adicional sea
suministrada a través del módem.
El receptor/decodificador además puede incluir
un área protegida de la memoria para almacenar una señal de
validación para cada una de, al menos, algunas de las claves
públicas, y los medios de procesamiento pueden estar programados
para buscar, en el área protegida de la memoria, la señal de
validación para dicha clave pública seleccionada, e inhibir o
abortar la descarga de datos si no se establece la señal
buscada.
El receptor/decodificador puede incluir también
un área protegida de la memoria para almacenar una señal de
validación para la clave privada que tenga la identificación de
clave predeterminada, y los medios de procesamiento pueden ser
funcionales cuando se ejecuta dicha aplicación para cambiar esa
señal de validación y son funcionales para permitir que la clave
adicional sea almacenada dependiendo del estado de esa señal.
Esta última característica puede ser
proporcionada independientemente del noveno aspecto de la
invención. De acuerdo con ello, un décimo aspecto de la presente
invención proporciona un receptor/decodificador MPEG,
comprendiendo: medios para recibir tales tablas MPEG; medios para
almacenar una clave pública y una identificación para la clave
pública; y un área protegida de la memoria para almacenar una señal
de validación para la clave pública; y medios de procesamiento que
están programados para buscar, en el área protegida de la memoria
del receptor/decodificador, una señal de validación para la clave
pública que se corresponda a la clave privada identificada en la
tabla MPEG recibida; y, si se establece la señal buscada, descifrar
la firma cifrada en la tabla MPEG recibida utilizando la clave
pública que se corresponda con la clave privada identificada en la
tabla MPEG recibida para proporcionar una firma descifrada; generar
una firma para los datos de la tabla MPEG recibida; y comparar,
para los datos recibidos, la firma descifrada y la firma generada
por el receptor/decodificador.
La memoria para almacenar la(s)
señal(es) de validación de clave es proporcionada
preferiblemente mediante memoria de escritura no volátil.
En el caso de que se encuentren almacenadas una
pluralidad de tales claves públicas, la memoria para almacenar
la(s) señal(es) de validación está dispuesta
preferiblemente como un mapa de bits.
El receptor/decodificador de los aspectos noveno
o décimo de la invención puede incluir además un área protegida de
la memoria para almacenar un código de validación, y los medios de
procesamiento pueden estar programados para descifrar el código de
validación en dicha tabla MPEG recibida, buscar el código de
validación almacenado, y comparar el código de validación buscado y
el código de validación descifrado.
Esta última característica puede ser
proporcionada independientemente de los aspectos noveno o décimo de
la invención. De acuerdo con ello, un undécimo aspecto de la
presente invención proporciona un receptor/decodificador MPEG,
comprendiendo: medios para recibir tales tablas MPEG; medios para
almacenar un clave pública y una identificación para la clave
pública; un área protegida de la memoria para almacenar un código
de validación; y medios de procesamiento que están programados para
descifrar la firma y el código de validación cifrados en tales
tablas MPEG recibidas utilizando la clave pública almacenada
correspondiente a la clave privada; buscar el código de validación
almacenado en el área protegida de la memoria; comparar el código
de validación buscado y el código de validación descifrado; generar
una firma para los datos de la tabla MPEG recibida o para dicha
parte de ellos; y comparar, para los datos recibidos, la firma
descifrada y la firma generada por el receptor/decodificador.
Los medios de procesamiento, preferiblemente,
están programados para inhibir o abortar la descarga de los datos
si el código de validación buscado y el código de validación
descifrado no coinciden entre sí.
La memoria para almacenar el código de
validación es proporcionada, preferiblemente, mediante memoria de
escritura no volátil, y puede estar dispuesta como un mapa de
bits.
El receptor/decodificador de los aspectos noveno
a undécimo de la invención puede incluir además un área protegida
de la memoria para almacenar, al menos, un desplazamiento, y los
medios de procesamiento pueden estar programados para descifrar el
bloque de datos cifrado en dicha tabla MPEG recibida, buscar dicho
desplazamiento almacenado en el área protegida de la memoria, y
extraer la firma del bloque de datos descifrado utilizando el
desplazamiento buscado a partir del comienzo del bloque de datos
descifrado.
Esta última característica puede ser
proporcionada independientemente de los aspectos, noveno a undécimo
de la invención. De acuerdo con ello, un duodécimo aspecto de la
presente invención proporciona un receptor/decodificador MPEG,
comprendiendo: medios para recibir tales tablas MPEG; medios para
almacenar una clave pública y una identificación para la clave
pública; un área protegida de la memoria para almacenar, al menos,
un desplazamiento; y medios de procesamiento que están programados
para descifrar el bloque de datos cifrado en dicha tabla MPEG
recibida utilizando la clave pública almacenada correspondiente a
la clave privada; buscar dicho desplazamiento almacenado en el área
protegida de la memoria; extraer la firma del bloque de datos
descifrado utilizando el desplazamiento buscado a partir del
comienzo del bloque de datos descifrado; generar una firma para los
datos de la tabla MPEG recibida; y comparar, para los datos
recibidos, la firma extraída del bloque de datos descifrado y la
firma generada en el receptor/decodificador.
La memoria para almacenar el desplazamiento es
proporcionada preferiblemente mediante memoria de escritura no
volátil.
En el receptor/decodificador de los aspectos
noveno a duodécimo de la invención, los medios de procesamiento
pueden estar programados para generar una firma de módulo
correspondiente para cada uno de los módulos de las tablas MPEG de
módulos recibidas, y comparar cada firma de módulo de la tabla MPEG
de directorio recibida con la correspondiente firma de módulo
generada por el receptor/decodificador.
Esta última característica puede ser
proporcionada independientemente de los aspectos, noveno a
duodécimo de la invención. De acuerdo con ello, un aspecto
decimotercero de la invención proporciona un receptor/decodificador
MPEG, comprendiendo: medios para recibir tales tablas MPEG de
módulos y de directorio; medios para almacenar una clave pública y
una identificación para la clave pública; y medios de procesamiento
que están programados para descifrar la firma de directorio cifrada
en la tabla MPEG de directorio recibida utilizando la clave pública
almacenada correspondiente a la clave privada; generar una firma de
directorio para el directorio de la tabla MPEG de directorio
recibida; comparar la firma de directorio descifrada y la firma de
directorio generada por el receptor/decodificador; generar una
firma de módulo correspondiente para cada uno de los módulos de la
tabla MPEG de módulos recibida; y comparar cada firma de módulo de
la tabla MPEG de directorio recibida con correspondiente la firma de
módulo generada por el receptor/decodificador.
Los medios de procesamiento, preferiblemente,
están programados para inhibir o abortar la descarga de tales
módulos de datos si la firma de módulo de la tabla MPEG de
directorio recibida y correspondiente la firma de módulo generada
en el receptor/decodificador para ese módulo no coinciden entre
sí.
En el receptor/decodificador de cualquiera de
los aspectos noveno a decimotercero de la invención, los medios de
procesamiento, preferiblemente, están programados para inhibir o
abortar la descarga de los datos si la/cada firma descifrada y la
firma generada no coinciden entre sí.
Ahora serán descritas características preferidas
de la invención, puramente a modo de ejemplo, con referencia a los
dibujos adjuntos, en los que:
La figura 1 muestra la arquitectura global de un
sistema de televisión digital;
La figura 2 muestra la arquitectura de un
sistema interactivo del sistema de televisión digital de la figura
1;
La figura 3 es un diagrama esquemático de las
interfaces de un receptor/decodificador que forma parte del sistema
de las figuras 1 y 2;
La figura 4 es un diagrama esquemático de un
control remoto utilizado en el sistema de televisión digital;
La figura 5 muestra la disposición de archivos
dentro de un módulo descargado en la memoria de un
receptor/decodificador interactivo;
La figura 6 ilustra una relación entre un número
de componentes de como tren MPEG;
La figura 7 ilustra como una aplicación puede
estar compuesta de módulos/tablas, que a su vez pueden estar
compuestos de secciones;
La figura 8 ilustra el contenido de un módulo de
directorio;
La figura 9 ilustra en más detalle parte del
contenido de un módulo de directorio; y
La figura 10 ilustra varias áreas de memoria en
un receptor/decodificador del sistema de televisión.
En la figura 1 se muestra una visión general de
un sistema de televisión digital 1000 de acuerdo con la presente
invención. La invención incluye un sistema de televisión digital
principalmente convencional 2000 que utiliza el sistema de
compresión MPEG-2 conocido para transmitir señales
digitales comprimidas. En más detalle, el compresor
MPEG-2 2002 en un centro emisor recibe un tren de
señales digitales (normalmente un tren de señales de vídeo). El
compresor 2002 está conectado a un multiplexor y cifrador 2004
mediante el enlace 2006. El multiplexor 2004 recibe una pluralidad
de señales de entrada adicionales, ensambla uno o más trenes de
transporte y transmite señales digitales comprimidas a un
transmisor 2008 del centro emisor a través del enlace 2010, el cual
puede, por supuesto, tomar una variedad de formas incluyendo
enlaces de telecomunicaciones. El transmisor 2008 transmite señales
electromagnéticas a través del enlace ascendente 2012 hacia un
repetidor por satélite 2014, donde son procesadas electrónicamente
y emitidas a través del hipotético enlace descendente 2016 al
receptor de tierra 2018, convencionalmente en la forma de una
antena parabólica que pertenece a o es alquilada por el usuario
final. Las señales recibidas por el receptor 2018 se transmiten a
un receptor/decodificador 2020 integrado que pertenece a o es
alquilado por el usuario final y conectado al aparato de televisión
2022 del usuario final. El receptor/decodificador 2020 decodifica
la señal MPEG-2 comprimida en una señal de
televisión para el aparato de televisión 2022.
Un sistema de acceso condicional 3000 se
encuentra conectado al multiplexor 2004 y al receptor/decodificador
2020, y está localizado parcialmente en el centro emisor y
parcialmente en el decodificador. Permite al usuario final acceder
a las emisiones de televisión digital procedentes de uno o más
proveedores de emisiones. Puede insertarse en el
receptor/decodificador 2020 una tarjeta inteligente, capaz de
descifrar mensajes relacionados con las ofertas comerciales (esto
es, uno o varios programas de televisión vendidos por el proveedor
de emisiones). Utilizando el decodificador 2020 y la tarjeta
inteligente, el usuario final puede comprar ofertas comerciales en
un modo de suscripción o en un modo de pago por visión.
Un sistema interactivo 4000 también conectado al
multiplexor 2004 y al receptor/decodificador 2020 y de nuevo
localizado parcialmente en el centro emisor y parcialmente en el
decodificador, permite el usuario final interactuar con varias
aplicaciones a través de un canal de retorno por módem 4002.
La figura 2 muestra la arquitectura general del
sistema de televisión interactiva 4000 del sistema de televisión
digital 1000 de la presente invención.
Por ejemplo, el sistema interactivo 4000 permite
a un usuario final comprar elementos de catálogos en pantalla,
consultar a demanda noticias locales y mapas del tiempo y jugar
juegos a través de su aparato de televisión.
En visión de conjunto, el sistema interactivo
4000 comprende cuatro elementos principales:
- -
- herramienta de autorización 4004 en el centro emisor o en cualquier otro lugar, para permitir a un proveedor de emisiones crear, desarrollar, depurar y probar aplicaciones;
- -
- servidor de datos y aplicaciones 4006, en el centro emisor, conectado a la herramienta de autorización 4004 para permitir al proveedor de emisiones preparar, autentificar y formatear aplicaciones y datos para enviarlos al multiplexor y cifrador 2004 para la inserción en el tren de transporte MPEG-2 (normalmente la sección privada de éste) para ser emitida al usuario final;
- -
- máquina virtual destinada a un motor de ejecución (RTE) 4008, que es un código ejecutable instalado en el receptor/decodificador 2020 propiedad o alquilado por el usuario final para permitir a un usuario final recibir, autentificar, descomprimir, y cargar aplicaciones en una memoria de trabajo del decodificador 2020 para su ejecución. El motor 4008 también ejecuta aplicaciones residentes, de propósito general. El motor 4008 es independiente del hardware y del sistema operativo; y
- -
- canal de retorno por módem 4002 entre el receptor/decodificador 2020 y el servidor de datos y aplicaciones 4006 para permitir señales que instruyan al servidor 4006 para insertar datos y aplicaciones en el tren de transporte MPEG-2 a petición del usuario final.
El sistema de televisión interactiva funciona
utilizando "aplicaciones" que controlan las funciones del
receptor/decodificador y de los diversos dispositivos contenidos en
él. Las aplicaciones se representan en el motor 4008 como
"archivos de recursos". Un "módulo" es un conjunto de
archivos de recursos y datos. Un "volumen de memoria" del
receptor/decodificador es un espacio de almacenamiento para
módulos. Los módulos pueden descargarse en el receptor/decodificador
2020 desde el tren de transporte MPEG-2.
Los interfaces físicos del
receptor/decodificador 2020 se utilizan para descargar datos. Con
referencia a la figura 3, el decodificador 2020 contiene, por
ejemplo, seis dispositivos de descarga: sintonizador de flujo MPEG
4028, interfaz serie 4030, interfaz paralelo 4032, módem 4034 y dos
lectores de tarjetas 4036.
Para los propósitos de esta especificación, una
aplicación es un fragmento de código de ordenador para controlar
funciones de alto nivel, preferiblemente, del receptor/decodificador
2020. Por ejemplo, cuando el usuario final posiciona el foco de un
controlador remoto 2026 (como se muestra en mayor detalle en la
figura 4) en un objeto de pulsador visto en la pantalla del aparato
de televisión 2022 y presiona la tecla de validación, se ejecuta la
secuencia de instrucciones asociada con el botón.
Una aplicación interactiva propone menús y
ejecuta comandos a petición del usuario final y proporciona datos
relacionados con el propósito de la aplicación. Las aplicaciones
pueden ser aplicaciones residentes, esto es, almacenadas en la ROM
(o FLASH u otra memoria no volátil) del receptor/decodificador
2020, o emitidas y descargadas en la RAM (o FLASH) del
decodificador 2020.
Ejemplos de aplicaciones son:
- -
- Aplicación de Iniciación. El receptor/decodificador 2020 está equipado con una aplicación de iniciación residente que es una colección adaptable de módulos (siendo definido en mayor detalle este término más adelante) que permite al receptor/decodificador 2020 encontrarse inmediatamente operativo en el ambiente MPEG-2. La aplicación proporciona características principales que pueden ser modificadas por el proveedor de emisiones si se requiere. También proporciona un interfaz entre las aplicaciones residentes y las aplicaciones descargadas.
- -
- Aplicación de Arranque. La aplicación de arranque permite a cualquier aplicación, descargada o residente, ejecutarse en el receptor/decodificador 2020. Esta aplicación actúa como un proceso de iniciación ejecutado a la llegada de un servicio con el fin de iniciar la aplicación. El arranque es descargado en la RAM y, por lo tanto, puede actualizarse fácilmente. Puede configurarse de modo que las aplicaciones interactivas disponibles en cada canal puedan seleccionarse y ejecutarse, bien inmediatamente después de la descarga o tras una precarga. En el caso de la precarga, la aplicación se carga en la memoria 2024 y se activa mediante el arranque cuando se requiere.
- -
- Guía de Programa. La Guía de Programa es una aplicación interactiva que da información completa acerca de la programación. Por ejemplo, puede dar información acerca de, digamos, los programas de televisión de una semana proporcionados en cada canal de una oferta de televisión digital. Presionando una tecla en el control remoto 2026, el usuario final accede a una pantalla complementaria, sobrepuesta en el evento mostrado en la pantalla del aparato de televisión 2022. Esta pantalla complementaria es un navegador que da información de los eventos actuales y próximos de cada canal de la oferta de TV digital. Presionando otra tecla del control remoto 2026, el usuario final accede a una aplicación que muestra una lista de información de los eventos durante una semana. El usuario final también puede buscar y clasificar los eventos con criterios sencillos y personalizados. El usuario final también puede acceder directamente a un canal seleccionado.
\newpage
- -
- Aplicación de Pago Por Visión. La Aplicación de Pago Por Visión es un servicio interactivo disponible en cada canal PPV de la oferta de TV digital junto con el sistema de acceso condicional 3000. El usuario final puede acceder a la aplicación utilizando una guía de TV o un navegador de canales. Adicionalmente, la aplicación se inicia automáticamente tan pronto como se detecta un evento de PPV en el canal PPV. El usuario final es entonces capaz de comprar el evento actual bien a través de su tarjeta inteligente hija 3020 o a través del servidor de comunicación 3022 (utilizando un módem, un teléfono y códigos DTMF, MINITEL o similares). La aplicación puede ser residente en la ROM del receptor/decodificador 2020 o se puede descargar en la RAM del receptor/decodificador 2020.
- -
- Aplicación de descarga de PC. A requerimiento, un usuario final puede descargar software de ordenador utilizando la aplicación de descarga de PC.
- -
- Aplicación de Navegador de Revistas. La aplicación de navegador de revistas comprende una emisión de vídeo cíclica de imágenes con navegación para el usuario final a través de pulsadores en pantalla.
- -
- Aplicación de Concurso. La aplicación de concurso está sincronizada, preferiblemente, con un programa de concurso emitido. Como ejemplo, se muestran en la pantalla de la televisión 2022 preguntas de respuesta múltiple, y el usuario final puede seleccionar una respuesta utilizando el control remoto 2026. La aplicación de concurso puede informar al usuario de si la respuesta es o no correcta, y puede mantener una cuenta de la puntuación del usuario.
- -
- Aplicación de Telecompra. En un ejemplo de aplicación de telecompra, se transmiten al receptor/decodifi-cador 2020 ofertas de productos para la venta y se muestran en la televisión 2022. Utilizando el control remoto, el usuario final puede seleccionar un elemento concreto para comprarlo. El pedido para el elemento se envía través del canal de retorno por módem 4002 al servidor de datos y aplicaciones 4006 o al número de teléfono de un sistema de ventas separado, el cual ha sido descargado al receptor/decodificador, posiblemente con una orden de débito a la cuenta para una tarjeta de crédito que se ha insertado en uno de los lectores de tarjetas 4036 del receptor/decodificador 2020.
- -
- Aplicación de Telebanco. En un ejemplo de la aplicación de telebanco, el usuario inserta una tarjeta bancaria en uno de los lectores de tarjetas 4036 del receptor/decodificador 2020. El receptor/decodificador 2020 llama al banco del usuario, utilizando un número de teléfono almacenado en la tarjeta bancaria o almacenado en el receptor/decodificador, y luego la aplicación proporciona un número de servicios que pueden seleccionarse utilizando el control remoto 2026, por ejemplo, para descargar a través de la línea telefónica un estado de cuenta, transferir fondos entre cuentas, solicitar un talonario, etc.
- -
- Aplicación de Navegador de Internet. Un ejemplo de la aplicación de navegador de Internet, instrucciones procedentes del usuario, tales como una solicitud para ver una página web con una URL en particular, se introducen utilizando el control remoto 2026, y éstas se envían a través del canal de retorno por módem 4002 hasta el servidor de datos y aplicaciones 4006. La página web apropiada se incluye entonces en las transmisiones procedentes de centro emisor, recibido por receptor/decodificador 2020 a través del enlace ascendente 2012, repetidor 2014 y enlace descendente 2016, y mostrado en la televisión 2022.
Las aplicaciones se almacenan en localizaciones
de la memoria en el receptor/decodificador 2020 y se representan
como archivos de recursos. Los archivos de recursos comprenden
archivos de unidades de descripción de objetos gráficos, archivos
de unidades de bloques variables, archivos de secuencias de
instrucciones, archivos de aplicaciones y archivos de datos.
Los archivos de unidades de descripción de
objetos gráficos describen las pantallas, el interfaz
hombre-máquina de la aplicación. Los archivos de
unidades de bloques variables describen las estructuras de datos
manejadas por la aplicación. Los archivos de secuencias de
instrucciones describen las operaciones de procesado de las
aplicaciones. Los archivos de aplicaciones proporcionan los puntos
de entrada para las aplicaciones.
Las aplicaciones constituidas de este modo
pueden utilizar archivos de datos, tales como archivos de librería
de iconos, archivos de imágenes, archivos de fuentes de caracteres,
archivos de tablas de color y archivos de texto ASCII. Una
aplicación interactiva también puede obtener datos en línea
llevando a cabo entradas y/o salidas.
El motor 4008 sólo carga en su memoria estos
recursos si en un momento dado los necesita. Éstos archivos de
recursos son leídos desde archivos de unidades de descripción de
objetos gráficos, archivos de secuencias de instrucciones y
archivos de aplicaciones; los archivos de unidades de bloques
variables se almacenan en la memoria tras una llamada a un
procedimiento para cargar módulos y permanecen bloqueados allí
hasta que se realiza una llamada específica a un procedimiento para
descargar módulos.
Con referencia a la figura 3, un módulo 4010,
tal como un módulo de telecompra, es un conjunto de archivos de
recursos y datos comprendiendo los siguientes:
- un solo archivo de aplicación 4012;
- un número indeterminado de archivos de unidades de descripción de objetos gráficos 4014;
- un número indeterminado de archivos de unidades de bloques variables 4016;
- un número indeterminado de archivos de secuencias de instrucciones 4018; y
- donde sea adecuado, archivos de datos 4020 tales como archivos de librería de iconos, archivos de imágenes, archivos de fuentes de caracteres, archivos de tablas de color y archivos de texto ASCII.
Con referencia a la figura 5, un módulo 4010,
tal como un módulo de telecompra, es un conjunto de archivos de
recursos y datos comprendiendo los siguientes:
- un solo archivo de aplicación 4012;
- un número indeterminado de archivos de unidades de descripción de objetos gráficos 4014;
- un número indeterminado de archivos de unidades de bloques variables 4016;
- un número indeterminado de archivos de secuencias de instrucciones 4018; y
- donde sea adecuado, archivos de datos 4020 tales como archivos de librería de iconos, archivos de imágenes, archivos de fuentes de caracteres, archivos de tablas de color y archivos de texto ASCII.
El concepto de módulos 4010 junto con el
concepto de descargar pequeños fragmentos de código permite la
evolución fácil de las aplicaciones. Pueden descargarse en la
memoria FLASH permanente del decodificador 2020 como software
residente o emitido con el fin de descargarlas en la RAM del
decodificador 2020 sólo cuando sean necesitadas por el usuario
final.
Para descargar un módulo 4010 desde una señal
portadora, se descarga primero un directorio accesible en la señal
portadora. Este directorio simplemente lista los nombres de los
módulos 4010 que pueden ser descargadas desde la señal portadora.
Una vez que este directorio se ha descargado, la aplicación puede
descargar uno o más módulos 4010. En el caso de flujo MPEG, el
directorio se transporta en una sola tabla MPEG. Además, un módulo
4010 es transportado en una sola tabla MPEG. En el caso de módulos
transmitidos al sintonizador MPEG 4028, se utiliza el formato
MPEG-2 largo, con una cabecera larga y un código
CRC. Éste también es el caso de los otros cinco interfaces
(interfaz serie 4030, interfaz paralelo 4032, módem 4034 y dos
lectores de tarjetas 4036), excepto que se utiliza el formato
MPEG-2 "corto" con una cabecera más corta y
sin CRC.
Con referencia en particular a la figura 6, como
es sabido, el tren de bits MPEG-2 incluye una tabla
de acceso de programa ("PAT") 10 que tiene un paquete de
identificación ("PID") de O. La PAT contiene referencias a los
PIDs de las tablas de mapas de programa ("PMTs") 12 de un
número de programas. Cada PMT contiene una referencia a los PIDs de
los trenes de las tablas MPEG de audio 14 y de las tablas MPEG de
vídeo 16 para ese programa. Un paquete que tiene un PID de cero,
esto es la tabla de acceso de programa 10, proporciona el punto de
entrada para todos los accesos MPEG.
Con el fin de descargar datos y aplicaciones
para ellos, se definen dos nuevos tipos de trenes, y la PMT
relevante contiene también referencias a los PIDs de los trenes de
tablas MPEG de aplicaciones 18 (o secciones de ellas) y tablas MPEG
de datos 20 (o secciones de ellas).
Con referencia a la figura 7, con el fin de
descargar una aplicación 22, la aplicación se divide en módulos 24,
cada uno formado por una tabla MPEG, algunas de las cuales están
compuestas por una sola sección 18, y otras que pueden estar
compuestas por una pluralidad de secciones 18. Una sección típica
18 tiene una cabecera 26, que incluye una identificación de tabla
de un bit ("TID") 28, el número de sección 30 de esa sección
en la tabla, el número total 32 de secciones en esa tabla y una
extensión TID de dos bits 34. Cada sección también incluye una
parte de datos 36 y un CRC 38. Para una tabla/módulo en particular
24, todas las secciones 18 que componen esa tabla 24 tienen la
misma TID 28 y la misma extensión TID 34. Para una aplicación en
particular 22, todas las tablas 24 que componen esa aplicación 22
tienen la misma TID 28, pero diferentes extensiones TID
respectivas.
Para cada aplicación 22, hay una sola tabla MPEG
24 que se utiliza como un directorio, y que se muestra en mayor
detalle en la figura 8. La tabla de directorio 40 incluye una
cabecera 26, una porción de directorio 42, una identificación de
clave 44, una firma cifrada 46 y un CRC 38. De lo anterior, se
apreciará que la tabla de directorio 40 tiene, en su cabecera 26,
la misma TID 28 que los otros módulos/tablas 24 que componen la
aplicación. No obstante, la tabla de directorio tiene una extensión
TID 34 predeterminada de cero, y todos los demás módulos 24 tienen
extensiones TID diferentes de cero. La cabecera también incluye un
número de versión 48 para la tabla de directorio 40. La porción de
directorio 42 incluye, para cada uno de los módulos/tablas 24 que
componen la aplicación 22, el nombre 50 de ese módulo, la extensión
TID 34 para ese módulo, y una firma 52 de ese módulo. La porción de
directorio 42 también puede incluir, para cada uno de los
módulos/tablas 24, la longitud de ese módulo y el número de versión
del
módulo.
módulo.
Con referencia de nuevo a la figura 6, en
operación, la PAT 10, los PMTs 12 y los componentes del tren de
datos y aplicaciones 18, 20 se transmiten cíclicamente, siendo
actualizados cuando es necesario. Cada aplicación que se transmite
tiene una TID respectiva predeterminada 28. Para descargar una
aplicación, la tabla MPEG que tiene la TID apropiada y una
extensión TID de cero se descarga al receptor/decodificador 2020.
Por lo tanto, esta es la tabla de directorio 40 para la aplicación
requerida. Los datos en el directorio son procesados entonces por
el receptor/decodificador 2020 para determinar las extensiones TID
34 de las tablas de módulos que componen la aplicación requerida, y
entonces puede descargarse desde el directorio cualquier tabla de
módulos requerida con la misma TID que la tabla de directorio y una
extensión TID determinada.
El receptor/decodificador 2020 está dispuesto
para verificar en la tabla de directorio cualquier actualización
de la misma. Esto puede hacerse descargando la tabla de directorio
periódicamente de nuevo, por ejemplo cada 30 segundos, o uno o
cinco minutos, y comparando el número de versión de la tabla de
directorio descargada recientemente con el número de versión de la
tabla de directorio descargada previamente. Si el número de la
versión descargada recientemente es posterior, entonces los módulos
asociados con la tabla de directorio previa, o cualquier de los
módulos para los que hay números de versión posteriores, son
desmontados, y los módulos posteriores son descargados y montados.
En una disposición alternativa, el tren de bits entrante se filtra
utilizando una máscara correspondiente a la TID, la extensión TID y
el número de versión, con valores establecidos para la TID de la
aplicación, una extensión TID de cero y un número de versión uno
mayor que el número de versión del directorio descargado
actualmente. De acuerdo con ello, puede detectarse un aumento del
número de versión, y una vez detectado el directorio se descarga y
la aplicación se actualiza, como se describió anteriormente. Una
descripción de tal filtrado está incluida en la aplicación también
pendiente (referencia de representante núm. PDC/ASB/19716). Si una
aplicación va a finalizarse, se transmite un directorio vacío con
el siguiente número de versión, pero sin los módulos listados en el
directorio. En respuesta a la recepción de tal directorio vacío, el
receptor/decodificador 2020 se programa para desmontar la
aplicación.
aplicación.
Ahora se describirá en detalle el uso de firmas
y cifrado para las tablas de aplicaciones.
Como se describió anteriormente, la entrada para
cada módulo en la tabla de directorio 40 incluye la firma de
módulo. La firma de módulo se genera utilizando un proceso
generador de firmas MD5 conocido en los datos de la respectiva
tabla de módulos.
Además, la tabla de directorio 40 incluye una
firma cifrada 46, que se genera del modo que ahora será descrito
con referencia a la figura 9. Se produce un bloque 54 de 64 bits de
datos. El primer bit 56 es cero. Los siguientes tres bits 58 pueden
incluir datos arbitrarios o ficticios. Los siguientes 8 bits 60
proporcionan un mapa de bits de validación de aplicación, que será
descrito adicionalmente. Los últimos 4 bits 62 se reservan. Los
restantes 32 bits contienen una firma de 16 bits 64 que comienza en
un desplazamiento de entre 0 y 31 bits después del primer bit que
sigue al mapa de bits de validación de aplicación 60. Los datos
ficticios 66 se insertan entre el mapa de bits de validación de
aplicación 60 y la firma 64 y/o entre la firma 64 y los bits
reservados 62. La firma 64 se produce utilizando el proceso
generador de firmas MD5 conocido en las entradas de directorio 42
de la tabla de directorio 40. Luego, el bloque 54 es cifrado
utilizando un proceso de cifrado conocido y una clave privada en
particular para producir la firma cifrada y el mapa de bits de
validación de aplicación 46. Este bloque de datos 46 se incluye en
la tabla de directorio 40 y, en la tabla de directorio 40, se
incluye una identificación de 1 bit de la clave privada, que fue
utilizada para cifrar el bloque, como la clave de identificación
44.
Para resumir la generación de una aplicación y
su transmisión, están implicadas las siguientes etapas:
- -
- generar la aplicación como una pluralidad de módulos;
- -
- mencionar la TID determinada 28 para la aplicación;
- -
- asignar nombres y extensiones TID distintas de cero 34 a los módulos;
- -
- formatear cada módulo como una tabla MPEG 24 o secciones 18 de una tabla MPEG;
- -
- generar una firma MD5 52 para cada módulo;
- -
- generar el directorio 42;
- -
- generar una firma MD5 64 para el directorio;
- -
- seleccionar un bit de validación de aplicación 60;
- -
- seleccionar un desplazamiento;
- -
- generar el bloque 54;
- -
- cifrar el bloque 54 utilizando la cifrado con una clave privada seleccionada;
- -
- generar la tabla MPEG de directorio 40 con la TID asignada 28, una extensión TID de cero, el directorio 42, una identificación 44 de la clave privada, y la firma cifrada 46;
- -
- transmitir la tabla de directorio 40 y las tablas de módulos 24 o secciones 18.
Ahora se describirá el funcionamiento del
receptor/decodificador 2020 al tratar con firmas y descifrado
durante la descarga de una aplicación. Con referencia a la figura
10, el receptor/decodificador 2020 incluye EEPROM 68, ROM 70 y RAM
72. La EEPROM 68 incluye una región protegida 74 que es utilizada
por la máquina virtual, y en la que sólo puede escribir la máquina
virtual (y no una aplicación normal). La región protegida 74
incluye una mapa de bits de validación de clave 76 de 16 o 256
bits, un mapa de bits de validación de aplicación 78 de 64 bits, y
un mapa de bits de desplazamiento 80 de 32 bits. La ROM 70 incluye,
en una realización, dieciséis claves públicas 82, en cuyo caso se
emplea un mapa de bits de validación de clave de 16 bits, y 256
claves públicas en otra realización, en cuyo caso se emplea un mapa
de bits de validación de clave de 256 bits. Las claves públicas Se
identifican por sus localizaciones físicas en la ROM 70, o pueden
incluirse alternativamente en una tabla de búsqueda, donde una
identificación de clave particular produce la correspondiente clave
pública. La RAM 72 puede utilizarse para almacenar una clave
temporal 84.
Como se mencionó anteriormente, cuando una
aplicación va a ser descargada, en primer lugar se descarga la
tabla de directorio que tiene la TID predeterminada para esa
aplicación y la extensión TID de cero. La identificación de clave
44 se extrae entonces de la tabla de directorio y se realiza una
verificación del mapa de bits de validación de clave 76 en la
memoria protegida 74 de que está establecido el bit correspondiente
a la identificación de clave 44 extraída. Si no lo está, entonces
se aborta la descarga adicional de la aplicación. No obstante, si
se establece la clave apropiada, entonces se selecciona de la ROM
70 una clave pública 82 que se corresponde a la identificación de
clave extraída 44. La clave pública seleccionada y un proceso de
descifrado conocido se utilizan entonces para descifrar el bloque
cifrado 46 en la tabla de directorio 40 para producir un bloque 54.
Luego se extrae el mapa de bits de validación de aplicación 60 del
bloque descifrado 54 y se somete a una operación Y con el mapa de
bits de validación de aplicación 78 almacenado en la memoria
protegida 74. Si el resultado de la operación Y es cero, entonces
se abortan descargas adicionales de la aplicación. No obstante, si
el resultado de la operación Y no es cero, se busca el
desplazamiento contenido en el mapa de bits de desplazamiento 80 en
la memoria protegida 74, o, si se establece más de un bit de
desplazamiento, cada bit de desplazamiento es a su vez buscado, y
se extraen dieciséis bits de datos del bloque descifrado 54
comenzando con el desplazamiento buscado a partir del primer bit
después del mapa de bits de validación de aplicación 60. Para
el/cada desplazamiento buscado, los 16 bits son tratados como la
firma transmitida con la tabla de directorio 40. La firma de las
entradas en el directorio 42 de la tabla de directorio 40 se
calcula utilizando el proceso MD5 conocido, y esta firma calculada
se compara con la firma extraída del bloque 54. Si las dos firmas
para el/cada desplazamiento buscado no coinciden, entonces se
aborta la descarga adicional de la aplicación. Sin embargo, si una
de las firmas coincide, entonces se puede realizar la descarga de
los módulos especificados en el directorio 42. Como se mencionó
anteriormente, con el fin de descargar un módulo en particular, la
extensión TID para ese módulo se obtiene del directorio 42, y se
descarga la tabla MPEG 24 o las secciones 18 con la misma extensión
TID que la tabla de directorio y con la extensión TID obtenida. Una
vez que la tabla MPEG de módulos ha sido descargada, el
receptor/decodificador 2020 calcula la firma de la tabla descargada
utilizando el proceso MD5 conocido y luego compara la firma
calculada con la firma contenida en la entrada de directorio. Si
las firmas coinciden, entonces se acepta el módulo, pero si no
coinciden, entonces el módulo se rechaza.
Así todos los módulos de la aplicación pueden
ser descargados del modo especificado anteriormente, y el
receptor/decodificador 2020 puede ejecutar la aplicación.
Habiendo descrito las características de la
operación de descarga que son utilizadas normalmente, ahora se hará
una descripción de algunas características utilizadas para
configurar el receptor/decodificador 2020 y para cambiar sus
valores.
El receptor/decodificador 2020 está programado
de modo que el área de memoria protegida 74 puede cambiarse, pero
sólo mediante una aplicación que ha sido descargada utilizando una
de las identificaciones de claves en particular, por ejemplo la
clave 15, y con un desplazamiento en particular, por ejemplo un
desplazamiento de cero bits a partir del primer bit después del
mapa de bits de validación de aplicación 60. Puede necesitarse
cambiar la memoria protegida 74, por ejemplo, si dos operadores que
han estado utilizando la misma clave pública deciden que desean
utilizar diferentes claves públicas, o si el contenido de una clave
privada fuera descubierto, en cuyo caso la correspondiente clave
publica puede ser marcada como inválida en el mapa de bits de
validación de claves 76.
El receptor/decodificador 2020 puede estar
dispuesto de modo que una de las claves, por ejemplo, la clave 15,
se encuentre siempre disponible, en cuyo caso esa clave no
requiere un bit en el mapa de bit de validación de claves 76. De
acuerdo con ello, ese bit puede ser utilizado con otro propósito.
En particular, una aplicación que ha sido autentificada utilizando
la clave 15 puede encontrarse dispuesta para establecer ese bit en
particular a 1, en cuyo caso el receptor/decodificador 2020 está
programado para permitir que una clave temporal 84 sea cargada en
la RAM 72, pero sólo si es a través del interfaz serie 4030,
interfaz paralelo 4032 o uno de los dos lectores de tarjetas 4036.
Esta habilidad puede ser utilizada, por ejemplo, por un fabricante
del receptor/decodificador 2020, que puede permitir que una clave
temporal sea cargada en el receptor/decodificador 2020 de modo que
pueda ser probada para una aplicación a utilizar.
La disposición de firma y cifrado descrita
anteriormente proporciona un número de características importantes.
En particular:
- -
- una aplicación sólo puede ser descargada si el receptor/decodificador 2020 posee la clave pública apropiada almacenada en su memoria, correspondiendo a la identificación de clave 44 de la tabla de directorio descargada;
- -
- para todas las claves excepto una, una aplicación sólo puede descargarse utilizando una clave en particular si el mapa de bits de validación de claves 76 en la memoria del receptor/decodificador 2020 esta configurado para permitir que la clave sea utilizada;
- -
- una aplicación sólo puede ser descargada si un conjunto de bits en el mapa de bits de desplazamiento 80 almacenado en la memoria del receptor/decodificador 2020 se corresponde con el desplazamiento utilizado para generar la tabla de directorio;
- -
- una aplicación sólo puede ser descargada si el mapa de bits de validación de aplicación 78 en la memoria del receptor/decodificador 2020 se encuentra adecuadamente configurado para permitir que la aplicación sea descargada;
- -
- una aplicación sólo puede ser descargada si la tabla de directorio no ha sido corrompida después de que su firma fuera generada originalmente;
- -
- cada módulo de una aplicación sólo puede ser descargado si la respectiva tabla de módulo no ha sido corrompida después de que su firma fuera generada originalmente;
- -
- sólo se requiere una operación de cifrado para preparar una aplicación para descargar a pesar de que la aplicación esté compuesta por varias tablas MPEG, y sólo se requiere una operación de descifrado en el receptor/decodificador 2020 para descargar la aplicación completa;
- -
- pueden utilizarse múltiples claves, de modo que diferentes proveedores de servicios puedan tener diferentes claves privadas;
- -
- puede utilizarse una clave temporal, por ejemplo por un fabricante, con propósitos de prueba.
Se entenderá que la presente invención se ha
descrito con anterioridad puramente a modo de ejemplo, y que pueden
realizarse modificaciones de detalle dentro del alcance de la
invención.
En las realizaciones preferidas mencionadas
anteriormente, se han implementado ciertas características de la
presente invención utilizando software de ordenador. No obstante,
por supuesto, resultará obvio para una persona versada que
cualquiera de estas características puede llevarse a cabo
utilizando hardware. Además, se entenderá fácilmente que las
funciones realizadas por el hardware, el software de ordenador, y
similares se realizan con o utilizan señales eléctricas y
similares.
Se realiza una referencia cruzada a nuestras
solicitudes también pendientes, pertenecientes todas a la misma
fecha de presentación, y tituladas Generación de Señal y
Radiodifusión (Referencia de representante núm. PC/ASB/19707),
Tarjeta inteligente para uso con un Receptor de Señales de Difusión
Cifradas, y Receptor (Referencia de representante núm.
PC/ASB/19708), Sistema de Recepción y Difusión y Sistema de Control
de Acceso para éste (Referencia de representante núm.
PC/ASB/19710), Descargar un Archivo de Ordenador a un Ordenador
desde un Transmisor a través de un Receptor/Decodificador
(Referencia de representante núm. PC/ASB/19711), Transmisión y
Recepción de Programas de Televisión y Otros Datos (Referencia de
representante núm. PC/ASB/19712), Descargar Datos (Referencia de
Representante núm. PC/ASB/19713), Organización de la Memoria del
Ordenador (Referencia de Representante núm. PC/ASB/19714),
Desarrollo de Sistemas de Control de Radio o Televisión (Referencia
de Representante núm. PC/ASB/19715), Extraer Secciones de Datos de
un Tren de Datos Transmitido (Referencia de Representante núm.
PC/ASB/19716), Sistema de Control de Acceso (Referencia de
Representante núm. PC/ASB/19717), Sistema de Procesado de Datos
(Referencia de Representante núm. PC/ASB/19718), y Sistema de
Emisión y Recepción, y Receptor/Decodificador y Controlador Remoto
para éste (Referencia de Representante núm. PC/ASB/19720). La lista
de solicitudes incluye la presente solicitud.
Claims (10)
1. Método para descargar una pluralidad de
módulos de datos a un receptor/decodificador MPEG (2020), que
comprende las etapas de:
generar una firma de módulo (52) para cada
módulo (24) de datos a descargar;
formatear los módulos de datos como respectivas
tablas MPEG de módulos (24);
generar un directorio (40) incluyendo una
identificación de cada tabla MPEG de módulos (24) y la firma
correspondiente;
generar una firma de directorio (46) para el
directorio;
cifrar la firma de directorio en un bloque de
datos (66) que incluye otros datos, con un desplazamiento
seleccionado de entre el comienzo del bloque de datos y el comienzo
de la firma, utilizando una clave privada;
formatear el directorio y la firma de directorio
cifrada como una tabla MPEG de directorio;
transmitir las tablas MPEG de módulos y de
directorio; y en el receptor/decodificador:
recibir las tablas MPEG de módulos y de
directorio;
descifrar el bloque de datos cifrado con la
firma de directorio de la tabla MPEG de directorio recibida
utilizando una clave pública (82) que corresponde a la clave
privada;
buscar al menos un desplazamiento almacenado en
un área protegida de la memoria (68) del
receptor/decodificador;
extraer la firma de directorio del bloque de
datos descifrado utilizando dicho desplazamiento buscado a partir
del comienzo del bloque de datos descifrado;
generar una firma de directorio para el
directorio contenido en la tabla MPEG de directorio recibida;
comparar la firma de directorio extraída y la
firma de directorio generada en el receptor/decodificador;
generar una firma de módulo respectiva para cada
módulo de las tablas MPEG de módulos recibidas; y
comparar cada firma de módulo de la tabla MPEG
de directorio recibida con la firma de módulo respectiva generada
en el receptor/decodificador.
2. Método según la reivindicación 1, donde dicha
área protegida de memoria posee al menos dos desplazamientos
almacenados, y, sí en la etapa de comparación la firma extraída no
coincide con la firma generada, incluye además las etapas de
repetir las etapas de buscar, extraer y comparar utilizando el otro
de los desplazamientos almacenados.
3. Método según cualquiera de las
reivindicaciones 1 a 2, donde al menos algunos de los otros datos
mencionados en el bloque de datos son datos arbitrarios o
ficticios.
4. Método según la reivindicación 1, incluyendo
además la etapa de inhibir o abortar la descarga de dicho módulo de
datos cuando, en la etapa de comparación de la firma de módulo, la
firma de módulo de la tabla MPEG de directorio recibida y la
correspondiente firma de módulo generada en el
receptor/decodificador para ese módulo no coinciden entre sí.
5. Método según cualquiera de las
reivindicaciones 1 a 4, incluyendo además la etapa de inhibir o
abortar la descarga cuando, en la etapa de comparación, la firma de
directorio descifrada y la firma de directorio generada no
coinciden entre sí.
6. Receptor/decodificador MPEG (2020) para
descargar una pluralidad de módulos (24) de datos, que
comprende:
medios para recibir las tablas MPEG de módulos y
de directorio;
medios para almacenar una clave pública (82) y
una identificación para la clave pública;
medios de procesamiento para:
descifrar un bloque de datos con una firma de
directorio (46), cifrado con una clave privada, en la tabla MPEG de
directorio recibida utilizando la clave pública correspondiente a
la clave privada;
extraer la firma (64) del bloque de datos
descifrado;
generar una firma de directorio para el
directorio de la tabla MPEG de directorio recibida;
comparar la firma de directorio descifrada y la
firma de directorio generada en el receptor/decodificador;
generar una firma de módulo correspondiente para
cada uno de los módulos de las tablas MPEG de módulos recibidas;
y
comparar cada firma de módulo de la tabla MPEG
de directorio recibida, con las respectivas firmas de módulo (52)
generadas en el receptor/decodificador;
estando caracterizado además el
receptor/decodificador por que comprende un área protegida de
memoria para almacenar, al menos, un desplazamiento (80); y por que
los medios de procesamiento sirven además para buscar, al menos,
un desplazamiento almacenado en el área protegida de la memoria y,
utilizando dicho desplazamiento buscado a partir del comienzo del
bloque de datos descifrado, extraer la firma del bloque de datos
descifrado.
7. Receptor/decodificador según la
reivindicación 6, donde los medios de procesamiento están
programados para inhibir o abortar la descarga de un módulo de
datos cuando la firma de módulo de la tabla MPEG de directorio
recibida y la correspondiente firma de módulo generada en el
receptor/decodificador para ese módulo no coinciden entre sí.
8. Receptor/decodificador como el reivindicado
cualquiera de las reivindicaciones 6 a 7, donde los medios de
procesamiento están programados para inhibir o abortar la descarga
de los datos cuando la firma de directorio descifrada y la firma de
directorio generada no coinciden entre sí.
9. Método para transmitir una pluralidad de
módulos de datos a un receptor/decodificador MPEG (2020),
comprendiendo las etapas de:
generar una firma de módulo (52) para cada
módulo (24) de datos a descargar;
formatear los módulos de datos como respectivas
tablas MPEG de módulos (24);
generar un directorio (40) incluyendo una
identificación de cada tabla MPEG de módulos (24) y la respectiva
firma;
generar una firma de directorio (46) para el
directorio;
cifrar la firma de directorio en un bloque de
datos (66) incluyendo otros datos, con un desplazamiento
seleccionado de entre el comienzo del bloque de datos y el comienzo
de la firma, utilizando una clave privada;
formatear el directorio y la firma de directorio
cifrada como una tabla MPEG de directorio; y
transmitir las tablas MPEG de módulos y de
directorio.
10. Centro emisor para la transmisión de una
pluralidad de módulos de datos a un receptor/decodificador MPEG
(2020), comprendiendo:
medios para generar una firma de módulo (52)
para cada módulo (24) de datos a descargar;
medios para formatear los módulos de datos como
respectivas tablas MPEG de módulos (24);
medios para generar un directorio (40)
incluyendo una identificación de cada tabla MPEG de módulos (24) y
la firma respectiva;
medios para generar una firma de directorio (46)
para el directorio;
medios para cifrar la firma de directorio en un
bloque de datos (66) incluyendo otros datos, con un desplazamiento
seleccionado de entre el comienzo del bloque de datos y el comienzo
de la firma, utilizando una clave privada;
medios para formatear el directorio y la firma
de directorio cifrada como una tabla MPEG de directorio; y
medios para transmitir las tablas MPEG de
módulos y de directorio.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP97400650 | 1997-03-21 | ||
EP97400650 | 1997-03-21 | ||
PCT/EP1997/002111 WO1998043431A1 (en) | 1997-03-21 | 1997-04-25 | Method of downloading of data to an mpeg receiver/decoder and mpeg transmission system for implementing the same |
Publications (1)
Publication Number | Publication Date |
---|---|
ES2265466T3 true ES2265466T3 (es) | 2007-02-16 |
Family
ID=26070206
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES02013520T Expired - Lifetime ES2265466T3 (es) | 1997-03-21 | 1997-04-25 | Descarga de datos. |
ES97921752T Expired - Lifetime ES2187773T3 (es) | 1997-03-21 | 1997-04-25 | Metodo para descargar datos a un receptor/decodificador mpeg. |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES97921752T Expired - Lifetime ES2187773T3 (es) | 1997-03-21 | 1997-04-25 | Metodo para descargar datos a un receptor/decodificador mpeg. |
Country Status (21)
Country | Link |
---|---|
US (1) | US6938166B1 (es) |
EP (2) | EP0974230B1 (es) |
JP (1) | JP4062367B2 (es) |
KR (1) | KR100486865B1 (es) |
CN (1) | CN1178504C (es) |
AT (2) | ATE228747T1 (es) |
AU (1) | AU746178B2 (es) |
BR (1) | BR9714592A (es) |
CA (1) | CA2284153C (es) |
DE (2) | DE69717505T2 (es) |
ES (2) | ES2265466T3 (es) |
HK (1) | HK1025450A1 (es) |
HU (1) | HU229536B1 (es) |
IL (1) | IL131939A (es) |
NO (1) | NO323021B1 (es) |
NZ (1) | NZ500201A (es) |
PL (1) | PL335754A1 (es) |
RU (1) | RU2195086C2 (es) |
TR (2) | TR200000842T2 (es) |
WO (1) | WO1998043431A1 (es) |
ZA (1) | ZA973608B (es) |
Families Citing this family (59)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6600908B1 (en) | 1999-02-04 | 2003-07-29 | Hark C. Chan | Method and system for broadcasting and receiving audio information and associated audio indexes |
US7245707B1 (en) * | 1999-03-26 | 2007-07-17 | Chan Hark C | Data network based telephone messaging system |
US6804786B1 (en) * | 1999-09-10 | 2004-10-12 | Canon Kabushiki Kaisha | User customizable secure access token and multiple level portable interface |
FR2797548A1 (fr) * | 2000-01-24 | 2001-02-16 | Thomson Multimedia Sa | Procede de transmission de donnees sur un canal de diffusion |
US7010125B2 (en) * | 2001-01-26 | 2006-03-07 | Interntional Business Machines Corporation | Method for tracing traitor receivers in a broadcast encryption system |
WO2003098895A1 (en) * | 2002-05-22 | 2003-11-27 | Thomson Licensing S.A. | Signing and authentication devices and processes and corresponding products, notably for dvb/mpeg mhp digital streams |
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 |
FR2825209A1 (fr) | 2001-05-23 | 2002-11-29 | Thomson Licensing Sa | Dispositifs et procede de securisation et d'identification de messages |
EP1267579A3 (en) | 2001-06-11 | 2003-03-19 | Canal+ Technologies Société Anonyme | MPEG table structure |
US20030126139A1 (en) * | 2001-12-28 | 2003-07-03 | Lee Timothy A. | System and method for loading commercial web sites |
US7242773B2 (en) * | 2002-09-09 | 2007-07-10 | Sony Corporation | Multiple partial encryption using retuning |
ATE459203T1 (de) * | 2002-06-28 | 2010-03-15 | Nagravision Sa | Sicherheitsschlüsselaktualisierungsmethode für fernsehdekoder |
CA2496664C (en) * | 2002-08-23 | 2015-02-17 | Exit-Cube, Inc. | Encrypting operating system |
FR2844939A1 (fr) * | 2002-09-23 | 2004-03-26 | France Telecom | Procede de transmission de donnees via un reseau maille offrant une vitesse de reception accrue |
PL376310A1 (en) * | 2002-10-18 | 2005-12-27 | Koninklijke Philips Electronics N.V. | Method and system for metadata protection in tv-anytime |
US7440571B2 (en) * | 2002-12-03 | 2008-10-21 | Nagravision S.A. | Method for securing software updates |
FR2851112B1 (fr) * | 2003-02-07 | 2005-06-03 | Medialive | Dispositif securise pour la diffusion, l'enregistrement et la visualisation a la demande des oeuvres audiovisuelles au format de type mpeg-2ts |
US8261062B2 (en) | 2003-03-27 | 2012-09-04 | Microsoft Corporation | Non-cryptographic addressing |
US7925013B1 (en) | 2003-06-30 | 2011-04-12 | Conexant Systems, Inc. | System for data encryption and decryption of digital data entering and leaving memory |
EP1665715B1 (en) | 2003-09-11 | 2019-05-22 | Bae Systems Plc | Real-time network monitoring and security |
US8165297B2 (en) * | 2003-11-21 | 2012-04-24 | Finisar Corporation | Transceiver with controller for authentication |
US20050177715A1 (en) * | 2004-02-09 | 2005-08-11 | Microsoft Corporation | Method and system for managing identities in a peer-to-peer networking environment |
US7603716B2 (en) * | 2004-02-13 | 2009-10-13 | Microsoft Corporation | Distributed network security service |
US7716726B2 (en) * | 2004-02-13 | 2010-05-11 | Microsoft Corporation | System and method for protecting a computing device from computer exploits delivered over a networked environment in a secured communication |
US7814543B2 (en) * | 2004-02-13 | 2010-10-12 | Microsoft Corporation | System and method for securing a computer system connected to a network from attacks |
EP1607821A1 (fr) | 2004-06-17 | 2005-12-21 | Nagracard S.A. | Méthode de mise à jour sécurisée de logiciel dans un mobile de sécurité |
US7929689B2 (en) | 2004-06-30 | 2011-04-19 | Microsoft Corporation | Call signs |
US7716727B2 (en) * | 2004-10-29 | 2010-05-11 | Microsoft Corporation | Network security device and method for protecting a computing device in a networked environment |
DE102005009852B3 (de) * | 2005-03-03 | 2006-06-29 | Siemens Ag | Einrichtung zur Aufnahme und Verwaltung medizinischer Bilddaten sowie zugehöriges Verfahren |
US8219823B2 (en) * | 2005-03-04 | 2012-07-10 | Carter Ernst B | System for and method of managing access to a system using combinations of user information |
EP1785902B1 (en) * | 2005-10-28 | 2010-05-05 | Emma Mixed Signal C.V. | Decryption key table access control on ASIC or ASSP |
US7926075B2 (en) | 2005-11-03 | 2011-04-12 | Nds Limited | Application blocking system |
US8086842B2 (en) | 2006-04-21 | 2011-12-27 | Microsoft Corporation | Peer-to-peer contact exchange |
CN1983924A (zh) * | 2006-05-30 | 2007-06-20 | 华为技术有限公司 | 一种解密密码切换方法、解密装置及终端设备 |
EP1916598A1 (fr) * | 2006-10-23 | 2008-04-30 | Nagravision S.A. | Méthode de chargement et de gestion d'une application dans un équipement mobile |
KR100864524B1 (ko) * | 2007-02-14 | 2008-10-21 | 주식회사 드리머 | 디지털 방송 데이터 어플리케이션 실행 방법 및 이를실현시키기 위한 프로그램을 기록한 컴퓨터로 판독 가능한기록 매체 |
CN101031062B (zh) * | 2007-03-21 | 2010-05-26 | 中兴通讯股份有限公司 | 一种移动多媒体广播电子业务指南的传输方法 |
US8762714B2 (en) * | 2007-04-24 | 2014-06-24 | Finisar Corporation | Protecting against counterfeit electronics devices |
GB0710211D0 (en) * | 2007-05-29 | 2007-07-11 | Intrasonics Ltd | AMR Spectrography |
US8590028B2 (en) | 2007-07-09 | 2013-11-19 | Infosys Limited | Content licensing and conditional access using a mobile device |
CN100591020C (zh) * | 2007-08-22 | 2010-02-17 | 华为技术有限公司 | 一种多媒体业务的实现系统、方法和相关设备 |
KR101418591B1 (ko) * | 2007-10-05 | 2014-07-10 | 삼성전자주식회사 | 휴대 방송 시스템에서의 서비스 가이드 제공 방법 및 장치 |
US9148286B2 (en) * | 2007-10-15 | 2015-09-29 | Finisar Corporation | Protecting against counterfeit electronic devices |
US20090106156A1 (en) * | 2007-10-23 | 2009-04-23 | Alcatel Lucent | Network-based DRM enforcement |
US20090158299A1 (en) * | 2007-10-31 | 2009-06-18 | Carter Ernst B | System for and method of uniform synchronization between multiple kernels running on single computer systems with multiple CPUs installed |
WO2009059331A2 (en) * | 2007-11-02 | 2009-05-07 | Finisar Corporation | Anticounterfeiting means for optical communication components |
KR100925327B1 (ko) * | 2007-11-26 | 2009-11-04 | 한국전자통신연구원 | 다운로더블 제한 수신 시스템에서 호스트의 망 이동 여부감지 방법 및 그 장치 |
US8819423B2 (en) * | 2007-11-27 | 2014-08-26 | Finisar Corporation | Optical transceiver with vendor authentication |
KR20090076765A (ko) * | 2008-01-09 | 2009-07-13 | 삼성전자주식회사 | 방송 모바일 통합 서비스 시스템에서의 전자 서비스 가이드발견 방법 및 장치 |
US8248910B2 (en) * | 2008-01-29 | 2012-08-21 | Nokia Corporation | Physical layer and data link layer signalling in digital video broadcast preamble symbols |
KR20090088771A (ko) * | 2008-02-15 | 2009-08-20 | 삼성전자주식회사 | 디지털 비디오 방송 시스템에서 통신채널로 통지메시지를전송하는 장치 및 방법 |
KR101481824B1 (ko) * | 2008-03-06 | 2015-01-16 | 삼성전자주식회사 | 디지털 방송 시스템에서 전자 서비스 가이드 선택 장치 및방법 |
US7519164B1 (en) | 2008-04-01 | 2009-04-14 | International Business Machines Corporation | System and method for sending information between users with a teleponic device while a call is in progress |
CN101783925B (zh) * | 2010-03-30 | 2012-07-04 | 南京邮电大学 | 一种用于对等计算机顶盒的视频数据安全保护方法 |
CN102075808A (zh) * | 2011-01-25 | 2011-05-25 | 四川长虹电器股份有限公司 | 一种机顶盒多ca共存的实现方法 |
TWI528749B (zh) * | 2011-09-06 | 2016-04-01 | Sony Corp | A signal receiving device, a signal receiving method, an information processing program and an information processing system |
FR2983597B1 (fr) * | 2011-12-01 | 2014-01-24 | Viaccess Sa | Procede de detection d'une erreur de lecture d'une donnee |
EP2605532A1 (en) * | 2011-12-16 | 2013-06-19 | Thomson Licensing | Apparatus and method for signature verification |
US10169251B1 (en) * | 2015-12-10 | 2019-01-01 | Massachusetts Institute Of Technology | Limted execution of software on a processor |
Family Cites Families (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5742677A (en) * | 1995-04-03 | 1998-04-21 | Scientific-Atlanta, Inc. | Information terminal having reconfigurable memory |
US5231665A (en) | 1991-11-20 | 1993-07-27 | Zenith Electronics Corporation | Cable television system having dynamic market code shuffling |
US5748763A (en) * | 1993-11-18 | 1998-05-05 | Digimarc Corporation | Image steganography system featuring perceptually adaptive and globally scalable signal embedding |
US5583562A (en) * | 1993-12-03 | 1996-12-10 | Scientific-Atlanta, Inc. | System and method for transmitting a plurality of digital services including imaging services |
US5420866A (en) * | 1994-03-29 | 1995-05-30 | Scientific-Atlanta, Inc. | Methods for providing conditional access information to decoders in a packet-based multiplexed communications system |
US5635979A (en) * | 1994-05-27 | 1997-06-03 | Bell Atlantic | Dynamically programmable digital entertainment terminal using downloaded software to control broadband data operations |
US5581706A (en) * | 1994-06-30 | 1996-12-03 | Rca Thomson Licensing Corporation | Method forming an audio/video interactive data signal |
US5717760A (en) * | 1994-11-09 | 1998-02-10 | Channel One Communications, Inc. | Message protection system and method |
US5646997A (en) * | 1994-12-14 | 1997-07-08 | Barton; James M. | Method and apparatus for embedding authentication information within digital data |
DE69619977T2 (de) * | 1995-05-24 | 2002-11-07 | Bellsouth Corp | Asymmetrisches datenkommunikationssystem |
US5625693A (en) * | 1995-07-07 | 1997-04-29 | Thomson Consumer Electronics, Inc. | Apparatus and method for authenticating transmitting applications in an interactive TV system |
EP0760565B1 (en) * | 1995-08-28 | 1998-07-08 | Ofra Feldbau | Apparatus and method for authenticating the dispatch and contents of documents |
US5737599A (en) * | 1995-09-25 | 1998-04-07 | Rowe; Edward R. | Method and apparatus for downloading multi-page electronic documents with hint information |
EP0766468B1 (en) * | 1995-09-28 | 2006-05-03 | Nec Corporation | Method and system for inserting a spread spectrum watermark into multimedia data |
US5835035A (en) * | 1995-12-28 | 1998-11-10 | Philips Electronics North America Corporation | High performance variable length decoder with two-word bit stream segmentation and related method |
JP3305183B2 (ja) * | 1996-01-12 | 2002-07-22 | 株式会社東芝 | ディジタル放送受信端末装置 |
KR100466722B1 (ko) * | 1996-01-24 | 2005-04-14 | 선 마이크로시스템즈 인코퍼레이티드 | 어레이경계검사방법및장치와,이를포함하는컴퓨터시스템 |
US5949885A (en) * | 1996-03-12 | 1999-09-07 | Leighton; F. Thomson | Method for protecting content using watermarking |
US5808570A (en) * | 1996-06-28 | 1998-09-15 | Philips Electronics North America Corp. | Device and method for pair-match Huffman transcoding and high-performance variable length decoder with two-word bit stream segmentation which utilizes the same |
US6166730A (en) * | 1997-12-03 | 2000-12-26 | Diva Systems Corporation | System for interactively distributing information services |
US5978912A (en) * | 1997-03-20 | 1999-11-02 | Phoenix Technologies Limited | Network enhanced BIOS enabling remote management of a computer without a functioning operating system |
US6148387A (en) * | 1997-10-09 | 2000-11-14 | Phoenix Technologies, Ltd. | System and method for securely utilizing basic input and output system (BIOS) services |
US6438140B1 (en) * | 1998-11-19 | 2002-08-20 | Diva Systems Corporation | Data structure, method and apparatus providing efficient retrieval of data from a segmented information stream |
-
1997
- 1997-04-25 KR KR10-1999-7008506A patent/KR100486865B1/ko not_active IP Right Cessation
- 1997-04-25 TR TR2000/00842T patent/TR200000842T2/xx unknown
- 1997-04-25 ZA ZA9703608A patent/ZA973608B/xx unknown
- 1997-04-25 EP EP97921752A patent/EP0974230B1/en not_active Expired - Lifetime
- 1997-04-25 DE DE69717505T patent/DE69717505T2/de not_active Expired - Lifetime
- 1997-04-25 EP EP02013520A patent/EP1251688B1/en not_active Expired - Lifetime
- 1997-04-25 PL PL97335754A patent/PL335754A1/xx unknown
- 1997-04-25 DE DE69736138T patent/DE69736138T2/de not_active Expired - Lifetime
- 1997-04-25 AT AT97921752T patent/ATE228747T1/de active
- 1997-04-25 ES ES02013520T patent/ES2265466T3/es not_active Expired - Lifetime
- 1997-04-25 CA CA002284153A patent/CA2284153C/en not_active Expired - Lifetime
- 1997-04-25 RU RU99121836/09A patent/RU2195086C2/ru active
- 1997-04-25 WO PCT/EP1997/002111 patent/WO1998043431A1/en active IP Right Grant
- 1997-04-25 HU HU0001411A patent/HU229536B1/hu unknown
- 1997-04-25 TR TR1999/02265T patent/TR199902265T2/xx unknown
- 1997-04-25 JP JP53991598A patent/JP4062367B2/ja not_active Expired - Fee Related
- 1997-04-25 IL IL13193997A patent/IL131939A/en not_active IP Right Cessation
- 1997-04-25 CN CNB97182181XA patent/CN1178504C/zh not_active Expired - Lifetime
- 1997-04-25 AU AU27705/97A patent/AU746178B2/en not_active Expired
- 1997-04-25 BR BR9714592-0A patent/BR9714592A/pt unknown
- 1997-04-25 AT AT02013520T patent/ATE330420T1/de not_active IP Right Cessation
- 1997-04-25 NZ NZ500201A patent/NZ500201A/xx unknown
- 1997-04-25 ES ES97921752T patent/ES2187773T3/es not_active Expired - Lifetime
-
1999
- 1999-09-17 NO NO19994535A patent/NO323021B1/no not_active IP Right Cessation
- 1999-09-21 US US09/400,442 patent/US6938166B1/en not_active Expired - Fee Related
-
2000
- 2000-07-20 HK HK00104483A patent/HK1025450A1/xx not_active IP Right Cessation
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2265466T3 (es) | Descarga de datos. | |
NO331878B1 (no) | Fremgangsmate ved overforing og nedlasting av en erstatningsversjon av resident programvare, og tilsvarende mottager/dekoder | |
ES2251102T3 (es) | Telecarga de aplicaciones con un descodificador digital. | |
KR100917487B1 (ko) | 암호화된 데이터를 처리하기 위한 장치 및 방법 | |
KR100686967B1 (ko) | 다중서비스 디지털 전송 시스템을 위한 애플리케이션데이터 테이블 | |
JP2009077451A (ja) | 伝送データ・ストリームからデータ・セクションを抽出する方法 | |
CN1879415B (zh) | 有条件访问的方法和设备 | |
CN101981927B (zh) | 用于音频/视频数据处理单元的安全模块 | |
CA2284011A1 (en) | Data processing system | |
ES2205212T3 (es) | Desarrollo de un sistema de control para television o radio para mpeg. | |
ES2213349T3 (es) | Metodo y dispositivo de configuracion. | |
MXPA99008549A (es) | Metodo para descargar datos a un receptor/descodificador mpeg y sistema de transmision mpeg para implementar el mismo | |
CZ331399A3 (cs) | Způsob zavádění dat do MPEG přijímače/dekodéru a MPEG vysílací systém pro jeho realizaci |