BR9714318B1 - método de processamento de dados de vìdeo criptografados para geração de dados de programa decriptografados. - Google Patents

método de processamento de dados de vìdeo criptografados para geração de dados de programa decriptografados. Download PDF

Info

Publication number
BR9714318B1
BR9714318B1 BRPI9714318-9A BR9714318A BR9714318B1 BR 9714318 B1 BR9714318 B1 BR 9714318B1 BR 9714318 A BR9714318 A BR 9714318A BR 9714318 B1 BR9714318 B1 BR 9714318B1
Authority
BR
Brazil
Prior art keywords
data
encrypted
program
diffused
storage
Prior art date
Application number
BRPI9714318-9A
Other languages
English (en)
Other versions
BR9714318A (pt
Inventor
Harold Blatter
Thomas Edward Horlander
Kevin Elliott Bridgewater
Michael Scott Deiss
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed filed Critical
Publication of BR9714318A publication Critical patent/BR9714318A/pt
Publication of BR9714318B1 publication Critical patent/BR9714318B1/pt

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/418External card to be used in combination with the client device, e.g. for conditional access
    • H04N21/4181External card to be used in combination with the client device, e.g. for conditional access for conditional access
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/414Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance
    • H04N21/4147PVR [Personal Video Recorder]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • H04N21/4405Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving video stream decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/462Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
    • H04N21/4623Processing of entitlement messages, e.g. ECM [Entitlement Control Message] or EMM [Entitlement Management Message]

Description

"MÉTODO DE PROCESSAMENTO DE DADOS DE VÍDEOCRIPTOGRAFADOS PARA GERAÇÃO DE DADOS DE PROGRAMADECRIPTOGRAFADOS"
Essa invenção é relacionada ao campo de processa- mento de sinal digital, e mais particularmente ao processa-mento de acesso condicional, decodificação, e formatação dedados criptografados em pacote para armazenagem por um re-ceptor de consumidor de material de vídeo por cabo, difundi-do, ou satélite, por exemplo.
Nas aplicações de processamento de vídeo e armaze-nagem, os dados de vídeo digital são tipicamente codificadospara conformarem-se aos requerimentos de um padrão conheci-do. Um tal padrão amplamente adotado ê o padrão de codifica-ção de imagem MPEG2 (Grupo Especializado de Quadros em Movi- mento), daqui em diante referido a como o "padrão MOPEG". Opadrão MPEG é compreendido de uma seção de codificação desistema (ISO/IEC 13818-1, de 10 Junho de 1994) , e uma seçãode codificação de vídeo (ISO/IEC 13818-2, de 20 Janeiro de1995), daqui em diante referido a como o "padrão dos siste- mas MPEG" e "padrão de vídeo MPEG", respectivamente. Os da-dos de vídeo codificados para o padrão MPEG estão na formade um fluxo de dados em pacotes que tipicamente inclui oconteúdo dos dados de muitos canais de programa (análogosaos canis 1-125 na TV a cabo, por exemplo) . 0 conteúdo dos dados de canais de programa de prêmio tais como HB0™, Cine-max™ e Showtime™, por exemplo, é usualmente protegido doacesso desautorizado por métodos tais como criptografia emistura. Esses métodos podem ser usados sozinhos, repetiti-vãmente, ou em combinação para produzir uma pluralidade deníveis de proteção.
Em um decodificador, o acesso aos canais de prêmioé tipicamente governado por um sistema de acesso condicionalque gerencia o faturamento do usuário e controla o desfazerda mistura e decriptografia com base na habilitação do usuá-rio. 0 sistema de acesso condicional pode determinar se oacesso é autorizado em uma variedade de maneiras. Por exem-plo, a autorização pode ser determinada no decodificador apartir da informação de habilitação do usuário pré programa-da em um assim chamado "cartão inteligente". Alternativamen-te, a autorização pode ser determinada em uma localizaçãoremota e implementada dentro do decodificador usando a in-formação de habilitação do usuário que é transmitida da Io-calização remota, como em um serviço pay-per-view (pague porver) de televisão a cabo. A informação de habilitação tipi-camente inclui códigos usados para gerar as chaves para des-fazer a mistura e decriptografia que são usadas para desfa-zer a mistura e decriptografia do programa. Entretanto, ainformação de habilitação pode, ao invés disso, incluir aspróprias chaves.
O processamento de dados de programa criptografa-dos e não criptografados e o gerenciamento de códigos asso-ciados de criptografia e mistura para armazenagem, fatura-mento e outras aplicações apresenta uma série de problemas.Um problema é apresentado pela necessidade de manter a segu-rança do código de criptografia quando um programa é armaze-nado por um consumidor na forma criptografada ou não cripto-grafada para visualização em um momento posterior. Problemasadicionais são envolvidos no fornecimento de um sistema quepermite faturamento na armazenagem ou reprodução de um pro-grama e que permite processamento protegido de cópia de da- dos de programa criptografados e não criptografados.
Esses problemas são tratados por um sistema, deacordo com a presente invenção. Daqui em diante, o termo"criptografia" abrange funções de mistura até o ponto que asfunções são usadas para evitar uso desautorizado.
Em um sistema de decodificador que processa dadosde programa criptografados para fornecer dados de programadecriptografados para saída, ocorre um comprometimento nasegurança da chave de criptografia se as chaves de cripto-grafia são exportadas do decodificador. Em particular, a se- gurança é comprometida se as chaves de criptografia, ou có-digos de criptografia dos quais as chaves são derivadas,tornam-se acessíveis por terceiros. Isso pode ocorrer, porexemplo, se as chaves de criptografia são produzidas a par-tir de um decodificador e são armazenadas em meios físicos de armazenagem removíveis ou de outra forma tornam-se exter-namente acessíveis. Uma vez que as chaves são externamenteacessíveis, e.g., em meios físicos de armazenagem, sua segu-rança é dependente da sofisticação de técnicas disponíveisde engenharia reversa e ruptura de código. Os inventores re- conheceram que é desejável fornecer um decodificador capazde inibir a produção de um código ou chave de criptografia.
De acordo com os princípios da presente invenção,um decodificador exclui um código ou chave de criptografiados dados de saída do programa decriptografados ou não de-criptografados. Um método para gerar os dados representati-vos do programa decriptografado a partir de um fluxo de da-dos de entrada contendo dados criptografados do programa eum código de criptografia associado envolve decriptografaros dados do programa criptografados. Os dados do programacriptografados são decriptografados usando o código de crip-tografia para proporcionar dados de programa decriptografa-dos. Um fluxo de dados de saída é formado contendo os dadosde programa decriptografados, mas excluindo o código decriptografia.
Em um aspecto da invenção, o código de criptogra-fia é excluído dos dados auxiliares formados para suportar adecodificação dos dados do programa decriptografados e con-tidos no fluxo de dados de saída.
Em um outro aspecto da invenção, dados do códigosem criptografia são substituídos pelo código de criptogra-fia no fluxo de dados de saída.
Breve Descrição dos Desenhos
No desenho:
A Figura 1 mostra um sistema de receptor de ví-deo, de acordo com a invenção, para adaptativamente gerarum fluxo de dados representativo de programa em forma crip-tografada ou não criptografada selecionável pelo usuário.
As Figuras 2 e 3 mostram um fluxograma de processopara produzir um fluxo de dados representativo do programaadequado para armazenagem em um meio físico de armazenagemselecionável e para executar o faturamento do usuário asso-ciado .
A Figura 4 mostra um fluxograma para um processopara recuperar programas selecionados criptografados ou nãocriptografados de um dispositivo de armazenagem selecionadoe para cobrar um usuário com a recuperação do programa.
A Figura 1 mostra um sistema de receptor de ví-deo, , de acordo com a invenção, para adaptativamente gerarum fluxo de dados representativo de programa, em forma crip- tografada ou não criptografada selecionável pelo usuário.Embora o sistema descrito seja descrito no contexto de umsistema compatível com MPEG para receber fluxos de transpor-te codificado MPEG representando programas difundidos, ele éexemplar somente. Os princípios da invenção podem também ser aplicados a outros tipos de sistema incluindo sistemas nãocompatíveis com MPEG, envolvendo outros tipos de fluxos dedados codificados. Adicionalmente, embora o sistema descritoseja descrito como programas difundidos de processamento,isso é somente exemplar. 0 termo 'programa' é usado para re- presentar qualquer forma de dados em pacotes tais como men-sagens de telefone, programas de computador, dados da Inter-net ou outras comunicações, por exemplo.
Em avaliação, no sistema de receptor de vídeo daFigura 1, uma portadora modulada com dados de vídeo é rece-bida pela antena 10 e processada pela unidade 15. 0 sinal desaída digital resultante é demodulado pelo demodulador 20 edecodificado pelo decodificador 30. A saída do decodificadoré processada pelo sistema de transporte 25 que é suscetí-vel a comandos da unidade de controle remoto 125. O sistema25 produz saídas de dados comprimidos para armazenagem, de-codificação adicional, ou comunicação com outros dispositi-vos. O sistema 25 incorpora um sistema de acesso condicionalpara gerenciar o faturamento do usuário e para controlar odesfazer da mistura do programa e decriptografia com base nahabilitação do usuário. Um usuário do receptor do vídeo se-leciona o programa que ele deseja ver, os programas que elequer armazenar, o tipo dos meios físicos de armazenagem usa-dos e se os programas são para serem armazenados na formacriptografada ou não criptografada por uma seleção de menuna tela usando a unidade de controle remoto 125. O sistema25 também proporciona um mecanismo para permitir remoção emtempo real ou sem tempo real dos códigos de criptografia deum fluxo de dados de programa não criptografado.
Os decodificadores de vídeo e áudio 85 e 80, res-pectivamente, decodificam os dados comprimidos do sistema 25para produzir saídas para exibição. A porta de dados 75 pro-duz uma interface para comunicação dos dados comprimidos dosistema 25 para outros dispositivos, tais como um computadorou receptor de Televisão de Alta Definição (HDTV), por exem-plo. 0 dispositivo de armazenagem 90 armazena os dados com-primidos do sistema 25 no meio físico de armazenagem 105. 0dispositivo 90, em um modo de reprodução, também suporta arecuperação dos dados comprimidos do meio físico de armaze-nagem 105 para processamento pelo sistema 25 para decodifi-cação, comunicação com outros dispositivos ou armazenagem emum meio físico diferente de armazenagem (não mostrado parasimplificar o desenho). O sistema de acesso condicional den-tro do sistema 25 suporta a decriptografia e faturamentopara armazenagem do programa, reprodução, ou processamentoadicional incluindo comunicação para outros dispositivos. 0sistema de acesso condicional do sistema 25 emprega um meca-nismo diferente de decriptografia e faturamento para proces-samento dos dados de programa recebidos de uma fonte difun-dida do que dos dados reproduzidos de uma fonte de armazena-gem local.
Considerando a Figura 1 em detalhe, uma portadoramodulada com dados de vídeo recebidos pela antena 10, é con-vertida para forma digital e processada pelo processador deentrada 15. O processador 15 inclui sintonizador de freqüên-cia de rádio (RF) e misturador de freqüência intermediária(IF) e estágios de amplificação para converter para baixo osinal de entrada de vídeo para uma faixa de freqüência infe-rior adequada para processamento adicional. 0 sinal de saídadigital resultante é demodulado pelo demodulador 2 0 e deco-dificado pelo decodificador 30. A saída do decodificador 30é adicionalmente processada pelo sistema de transporte 25.
O multiplexador (mux) 3 7 do detector de serviço 33é fornecido, através do seletor 35, com a saída do decodifi-cador 30, ou a saída do decodificador 30 adicionalmente pro-cessada pela unidade para desfazer a mistura 40 do NRSS (Co-mitê de Padrões Renováveis Nacional). O seletor 35 detecta apresença de um cartão para desfazer a mistura, compatívelcom NRSS, inserível e produz a saída da unidade 40 para omux 3 7 somente se o cartão é atualmente inserido na unidadedo receptor de vídeo (o sistema de acesso condicional remo-vível NRSS é definido no Documento de Projeto EIA IS-679,Projeto PN-3639). De outra forma, o seletor 35 fornece a sa-ída do decodificador 30 para o mux 37. A presença do cartão inserível permite que a unidade 40 desfaça a mistura dos ca-nais de programa de prêmio adicional, por exemplo, e forneçaserviços de programa adicionais para um espectador. Deve serobservado que a unidade NRSS 40 e a unidade do cartão inte-ligente 130 (unidade de cartão inteligente 130 é discutida mais tarde) compartilham a mesma interface do sistema 25 talque somente um cartão NRSS ou um cartão inteligente pode serinserido em qualquer momento. Alternativamente, as interfa-ces podem ser separadas para permitir operação em série ouem paralelo.
Os dados fornecidos para o mux 37 provenientes doseletor 3 5 estão na forma de um fluxo de dados com transpor-te em pacotes complacentes com MPEG como definido na seçãopadrão 2.4 dos sistemas MPEG e incluem o conteúdo de dadosde um ou mais canais de programas. Os pacotes individuais que compreendem canais de programa particular são identifi-cados pelos Identificadores de Pacote (PIDs). 0 fluxo detransporte contém dados auxiliares suportando a transmissãoe decodificação de dados codificados de transporte. Os dadosauxiliares incluem Informação Específica do Programa (PSI) para uso na identificação dos PIDs e montagem dos pacotes dedados individuais para recuperar o conteúdo de todos os ca-nais de programa que compreendem o fluxo de dados em paco-tes. Um usuário do receptor de vídeo seleciona o programaque ele deseja ver, os programas que ele quer armazenar, osmeios físicos a serem usados para armazenagem e se os pro-gramas são para serem armazenados na forma criptografada ounão criptografada por uma seleção de menu na tela usando aunidade de controle remoto 125. 0 controlador do sistema 115usa a informação de seleção, fornecida pela interface 12 0,para configurar o sistema 2 5 para selecionar os programaspara armazenagem e exibição e para gerar os PSI adequadospara o dispositivo de armazenagem e meios físicos seleciona-dos. 0 controlador 115 configura os elementos 45, 47, 50,55, 65 e 95 do sistema 25 estabelecendo os valores de regis-tro de controle dentro desses elementos através de um barra-mento de dados e selecionando trajetórias de sinal atravésdos muxes 37 e 100 com o sinal de controle C. O controlador115 é também programável para permitir remoção em tempo reale sem tempo real dos códigos de criptografia de um fluxo dedados de programa não criptografado que é para ser armazena-do ou de outra forma processado. Esse aspecto realça a segu-rança de criptografia evitando a exportação das chaves decriptografia além do sistema 25, dessa forma limitando adisponibilidade para terceiros.
Em resposta ao sinal de controle C, o mux 37 sele-ciona o fluxo de transporte da unidade 35, ou em um modo dereprodução, um fluxo de dados recuperado do dispositivo dearmazenagem 90 através da interface de armazenagem. Em ope-ração normal, sem reprodução, os pacotes de dados compreen-dendo o programa que o usuário selecionou para ver são iden-tificados pelos seus PIDs pela unidade de seleção 45. Se umindicador de criptografia nos dados de cabeçalho dos pacotesde programa selecionado indica que os pacotes estão cripto-grafados, a unidade 45 fornece os pacotes para a unidade dedecriptografia 50. De outra forma, a unidade 45 fornece os pacotes não criptografados para o decodificador de transpor-te 55. Similarmente, os pacotes de dados compreendendo osprogramas que o usuário selecionou para armazenagem sãoidentificados por seus PIDs pela unidade de seleção 47. Aunidade 47 fornece os pacotes criptografados para a unidade de decriptografia 50 ou os pacotes não criptografados para omux 110 com base na informação do indicador de criptografiado cabeçalho do pacote.
As unidades 45 e 4 7 empregam filtros de detecçãode PID que comparam os PIDs dos pacotes de entrada forneci- dos pelo mux 3 7 com os valores de PID pré carregados nos re-gistros de controle dentro das unidades 45 e 47 pelo contro-lador 115. Os PIDs pré carregados são usados nas unidades 47e 45 para identificar os pacotes de dados que são para seremarmazenados e os pacotes de dados que são para serem decodi-ficados para uso no fornecimento de uma imagem de vídeo. OsPIDs pré carregados são armazenados em tabelas de consultanas unidades 45 e 47. As tabelas de consulta de PID são ma-peadas na memória para as tabelas de chave de criptografianas unidades 45 e 47 que associam chaves de criptografia comcada PID pré carregado. 0 PID mapeado na memória e as tabe-las de consulta de chave de criptografia permitem que asunidades 45 e 45 comparem pacotes criptografados contendo umPID pré carregado com as chaves de criptografia associadasque permitem sua decriptografia. Os pacotes não criptografa-dos não tem chaves associadas de criptografia. As unidades45 e 47 fornecem ambos os pacotes identificados e suas cha-ves associadas de criptografia para o decriptor 50. A tabelade consulta do PID na unidade 45 é também mapeada na memóriapara uma tabela de destino que compara pacotes contendo PIDspré carregados com localizações de memória intermediária dedestino correspondente na memória intermediária do pacote60. As chaves de criptografia e os endereços de localizaçãoda memória intermediária de destino associados com os pro-gramas selecionados por um usuário para ver ou armazenar sãopré carregados nas unidades 45 e 47 junto com os PIDs desi-gnados pelo controlador 115.
As chaves de criptografia são geradas pelo sistemacomplacente de cartão inteligente 130 da ISO 7816-3 a partirdos códigos de criptografia extraídos do fluxo de dados deentrada. A geração das chaves de criptografia é submetida ahabilitação do consumidor determinada a partir da informaçãocodificada pré armazenada no próprio cartão inteligente in-serível (o documento da Organização dos Padrões Internacio-nais ISO 7816-3 de 1989 define a interface e estruturas desinal para um sistema de cartão inteligente). A informaçãode habilitação do consumidor pode ser periodicamente altera-da atualizando-se a informação codificada no cartão inteli-gente inserível através de comandos no fluxo de dados de en-trada.
0 cartão inteligente complacente da ISO 7816-3 in-serível vantajosamente contém três funções de algoritmo. Du-as das funções de algoritmo, chamadas os algoritmos de crip-tografia difundidos, são designadas para gerar chaves decriptografia a partir dos códigos de criptografia difundidosextraídos do fluxo de dados de entrada nos modos sem repro-dução do sistema 25. Um algoritmo de criptografia difundidogera chaves de criptografia pela decriptografia dos códigosde criptografia difundidos dentro do próprio cartão inteli-gente 130. A terceira função do algoritmo é aplicada no sis-tema 25 para criptografar e decriptografar as chaves decriptografia difundidas derivadas nos modos de armazenagem ereprodução do sistema 25. 0 algoritmo de reprodução cripto-grafa e decriptografa as chaves de criptografia difundidasdentro do próprio cartão inteligente inserível. Entretanto,em outros sistemas, a função do algoritmo de reprodução poderesidir em qualquer lugar, tal como em um decodificador, porexemplo.
Os três algoritmos de criptografia usados no car-tão inteligente 13 0 podem ser qualquer um de uma variedadede tipos e o algoritmo de reprodução não precisa ser o mesmotipo que o algoritmo difundido. Para propósitos exemplares,os algoritmos difundidos e de reprodução são supostos comosendo funções de algoritmo do Padrão de Criptografia de Da-dos (DES) como definido nas Publicações dos Padrões de In-formação Federal (FIPS) 46, 74 e 81 fornecidas pelo Serviçode Informação Técnica Nacional, Departamento de Comércio.Entretanto, essas funções de algoritmo podem ser alternati-vamente um outro tipo tal como as funções do tipo Rivest-Shamir-Adlemann (RSA).Cada um dos dois algoritmos de criptografia difun-didos que são residentes no cartão inteligente pode ser ati-vado pela informação de controle no fluxo de dados de entra-da. Dois algoritmos de criptografia difundidos estão conti-dos dentro do cartão inteligente de modo a permitir que umprovedor do serviço faça uma mudança simultânea no algoritmode criptografia difundido para todos os consumidores. Umprovedor de serviço faz uma mudança no algoritmo de cripto-grafia difundido emitindo um novo cartão inteligente com um novo algoritmo para todos os consumidores com segurança an-tecipadamente da data em que o novo algoritmo é para serexibido. Na data da mudança, o provedor do serviço simulta-neamente: comanda o cartão inteligente para mudar para onovo algoritmo atualizando a informação de controle no fluxode dados difundido; criptografa programas com o novo algo-ritmo; e insere códigos de criptografia atualizados no fluxode dados difundido. Uma mudança no algoritmo pode ser imple-mentada por um provedor de serviço em uma base regular outão freqüentemente quanto desejado de modo a salvaguardar asegurança do sistema de criptografia e evitar ruptura do có-digo e acesso desautorizado ao programa.
Os inventores reconheceram que o uso de um talsistema de criptografia envolvendo mudar as chaves de crip-tografia coloca um problema para a armazenagem de programas na forma criptografada. Especificamente, um programa armaze-nado na forma criptografada junto com um código de cripto-grafia difundido associado pode não ser capaz de ser decrip-tografado depois que o cartão inteligente foi mudado e osalgoritmos do cartão inteligente foram atualizados. Isso éporque o novo algoritmo no cartão inteligente não é compatí-vel com um código de criptografia associado com uma versãoanterior do cartão inteligente. Consequentemente, o novo al-goritmo do cartão inteligente é incapaz de derivar a chavede criptografia difundida requerida do código de criptogra-fia armazenado. Isso significa que o programa criptografadoarmazenado não pode ser decriptografado e é inutilizável de-pois que um cartão inteligente do sistema foi alterado.
De modo a superar esse problema, um terceiro e di-ferente algoritmo, o algoritmo de reprodução, é vantajosa-mente incorporado no cartão inteligente. A terceira funçãodo algoritmo, chamado o algoritmo de reprodução, é usada emoperações e modos do sistema 25 específicos para criptogra-far chaves de criptografia difundidas para formar códigos decriptografia de reprodução nos modos de armazenagem e repro-dução do sistema 25.
Depois de criptografado pelo algoritmo de reprodu-ção, os códigos de criptografia de reprodução podem ser ar-mazenados com segurança, junto com o conteúdo do programacriptografado, em um meio físico de armazenagem. Com a re-produção do programa criptografado, a função do algoritmo dereprodução decriptografa os códigos de criptografia armaze-nados para derivar as chaves originais de criptografia di-fundidas para possibilitar a decriptografia do conteúdo doprograma criptografado. As chaves de criptografia difundidasderivadas são usadas pela unidade 50 para decriptografar ospacotes do conteúdo do programa criptografado como descritomais tarde. O algoritmo de reprodução não é alterado tãofreqüentemente como os dois algoritmos difundidos e pode serdeixado inalterado em versões sucessivas do cartão inteli-gente. Isso possibilita que o programa criptografado armaze-nado seja decriptografado e usado a despeito das mudançasnos cartões inteligentes e algoritmos de criptografia difun-didos.
Os pacotes fornecidos pelas unidades 45 e 47 paraa unidade 50 são criptografados de acordo com o Padrão deCriptografia de Dados (DES). A unidade de decriptografia 50do sistema 25 da Figura 1 emprega a função do algoritmo DESna decriptografia desses pacotes criptografados. Em outrasimplementações do sistema 25, a unidade 50 pode alternativa-mente usar outras funções de algoritmo tal como a função RSApreviamente mencionada. A unidade 50 aplica técnicas conhe-cidas para decriptografar os pacotes criptografados usandochaves de criptografia correspondentes fornecidas pelo car-tão inteligente 130 através das unidades 45 e 47. Os pacotesdecriptografados da unidade 50 e os pacotes não criptografa-dos da unidade 45 que compreendem o programa para exibiçãosão fornecidos para o decodificador 55. Os pacotes decripto-grafados da unidade 50 e os pacotes não criptografados daunidade 47 que compreendem o programa para armazenagem sãofornecidos para o mux 110.
A unidade 60 contém memórias intermediárias de pa-cote acessíveis pelo controlador 115. Uma das memórias in-termediárias é designada para manter dados destinados parauso pelo controlador 115 e três outras memórias intermediá-rias são designadas para manter pacotes que são destinadospara uso pelos dispositivos de aplicação 75, 80 e 85. Umamemória intermediária adicional, a memória intermediária desubstituição discutida mais tarde, é usada para manter dados para substituir os dados do código de criptografia. 0 acessopara os pacotes armazenados nas memórias intermediárias den-tro da unidade 60 por ambos o controlador 115 e pela inter-face de aplicação 70 é controlado pela unidade de controleda memória intermediária 65. A unidade 45 fornece um indica- dor de destino para a unidade 65 para cada pacote identifi-cado pela unidade 45 para decodificação. Os indicadores in-dicam as localizações de destino da unidade individual 60para os pacotes identificados e são armazenados pela unidadede controle 65 em uma tabela de memória interna. A unidade de controle 65 determina uma série de ponteiros de leitura eescrita associados com pacotes armazenados na memória inter-mediária 60 com base no princípio Primeiro a Entrar, Primei-ro a Sair (FIFO). Os ponteiros de escrita em conjunto com osindicadores de destino permitem armazenagem seqüencial de umpacote identificado das unidades 45 ou 50 na próxima locali-zação vazia dentro da memória intermediária apropriada dedestino na unidade 60. Os ponteiros de leitura permitem lei-tura seqüencial de pacotes das memórias intermediárias dedestino da unidade apropriada 60 pelo controlador 115 e in- terface de aplicação 70.
Os pacotes não criptografados e decriptografadosfornecidos pelas unidades 45 e 50 para o decodificador 55contêm um cabeçalho de transporte como definido pela seção2.4.3.2 do padrão dos sistemas MPEG. 0 decodificador 55 de-termina a partir do cabeçalho de transporte se os pacotesnão criptografados e decriptografados contêm um campo deadaptação (pelo padrão dos sistemas MPEG). 0 campo de adap-tação contém informação de regulação incluindo, por exemplo,Referência do Relógio do Programa (PCRs) que permite sincro-nização e decodificação dos pacotes de conteúdo. Com a de-tecção de um pacote de informação de regulação, isto é, umpacote contendo um campo de adaptação, o decodificador 55sinaliza ao controlador 115 que o pacote foi recebido, peloajuste de uma interrupção do sistema dentro de um mecanismode interrupção. Além disso, o decodif icador 55 muda o indi-cador de destino do pacote de regulação na unidade 65 e for-nece o pacote para a unidade 60. Pela alteração do indicadorde destino da unidade 65, a unidade 65 desvia o pacote deinformação de regulação fornecido pelo decodificador 55 paraa localização da memória intermediária da unidade 60 desi-gnada para manter os dados para uso pelo controlador 115, aoinvés de para uma localização de memória intermediária deaplicação.
Com o recebimento do ajuste de interrupção do sis-tema pelo decodificador 55, o controlador 115 lê a informa-ção de regulação e o valor PCR e armazena-a na memória in-terna. Os valores de PCR dos pacotes sucessivos de informa-ção de regulação são usados pelo controlador 115 para ajus-tar o relógio mestre (27 MHz) do sistema. A diferença entreestimativas com base em PCR e com base no relógio mestre dointervalo de tempo entre a recepção dos pacotes sucessivosde regulação, gerados pelo controlador 115, ê usada paraajustar o relógio mestre (não mostrado para simplificar odesenho) do sistema 25. 0 controlador 115 alcança isso pelaaplicação da diferença da estimativa do tempo derivado para ajustar a tensão de controle de entrada de um oscilador con-trolado na tensão usado para gerar o relógio mestre. 0 con-trolador 115 reajusta a interrupção do sistema depois de ar-mazenar a informação de regulação na memória interna.
Os pacotes recebidos pelo decodificador 55 prove- nientes das unidades 45 e 50 que contêm conteúdo de programaincluindo áudio, vídeo, título, e outra informação, são di-recionados pela unidade 65 do decodificador 55 para as memó-rias intermediárias designadas do dispositivo de aplicaçãona memória intermediária do pacote 60. A unidade de controle de aplicação 70 seqüencialmente recupera o áudio, vídeo, tí-tulo e outros dados das memórias intermediárias designadasna memória intermediária 60 e fornece os dados para os dis-positivos de aplicação correspondentes 75, 80 e 85. Os dis-positivos de aplicação compreendem os decodificadores de áu-dio e vídeo 80 e 85 e a porta de dados em alta velocidade75. A porta de dados 75 pode ser usada para produzir dadosem alta velocidade tal como programas de computador, porexemplo para um computador. Alternativamente, a porta 75pode ser usada para produzir dados para um decodificador HDTV, por exemplo.
Os pacotes que contêm informação PSI são reconhe-cidos pela unidade 45 como destinados para a memória inter-mediária do controlador 115 na unidade 60. Os pacotes PSIsão direcionados para essa memória intermediária pela unida-de 65 através das unidades 45, 50 e 55 em uma maneira simi-lar a essa descrita para pacotes contendo conteúdo de pro-grama. 0 controlador 115 lê o PSI da unidade 60 e armazena-ona memória interna.
O controlador 115 emprega o processo das Figuras 2e 3 para gerar um fluxo de dados de programa adequado paraarmazenagem no meio físico 105 e para cobrar um usuário pelaarmazenagem. 0 controlador 115 também emprega o processo dasFiguras 2 e 3 ambos para gerar um código de criptografia dereprodução para armazenagem no meio físico 105, e para remo-ver os códigos originais de criptografia difundidos do fluxode dados do programa a ser armazenado. A identificação dopacote e processo de direção das Figuras 2 e 3 é governadapelo controlador 115, unidade de controle 65, e o PID, tabe-las de consulta da chave de destino e criptografia das uni-dades 45 e 47 na maneira previamente descrita.
A CPSI (Informação Específica do Programa Conden-sado) contém informação relacionada com o programa particu-lar a ser armazenado, enquanto que a PSI contém informaçãorelacionada com todos os programas na entrada do fluxo dedados para o sistema 25. Consequentemente, a CPSI absorvemenos capacidade de armazenagem e impõe menos despesas ge-rais do que o PSI. Além disso, dada uma restrição fixa dedespesas gerais, a CPSI pode ser repetida em um fluxo de da-dos mais freqüentemente do que a PSI e então pode ser deri-vada e aplicada para reduzir a latência de recuperação doconteúdo do programa.A PSI como definida na seção 2.4.4 do padrão desistemas MPEG compreende quatro elementos não criptografadosou tabelas de informação. Essas são a Tabela de Associaçãodo Programa (PAT), a Tabela de Mapa do Programa (PMT), a Ta-bela de Informação de Rede (NIT) e a Tabela de Acesso Condi-cional (CAT) . Cada tabela é formada de pacotes de dados quesão reconhecidos por um PID particular. A PMT define as eti-quetas do PID que identificam os fluxos de dados em pacotesindividuais que constituem um programa. Esses fluxos indivi-duais são chamados fluxos elementares no padrão MPEG. Osfluxos elementares incluem fluxos de dados tais como vídeo,áudio para várias linguagens e fluxos de dados de título. APAT associa um número de programa com os PIDs que permitemidentificação e montagem dos pacotes compreendendo a PMT. ANIT é opcional e pode ser estruturada e usada para definiros parâmetros físicos de rede tal como freqüências do canalde transmissão por satélite e canais do transponder, porexemplo. A CAT contém a informação de acesso condicional talcomo códigos de criptografia que governam o acesso para pro-gramas que são dependentes da habilitação do usuário.
Na etapa 205 da Figura 2, o controlador 115 (Figu-ra 1) executa um procedimento de inicialização na energiza-ção do sistema seguinte ao início da etapa 200. Na etapa205, o controlador 115 carrega os filtros de detecção do PIDda unidade 45 (Figura 1) com os valores de PID definidospelo MPEG para as tabelas PAT e CAT (valor hex 0000 e valorhex 0001 dos PIDs, respectivamente) . Além disso, o controla-dor 115 pré designa os pacotes PAT e CAT para a memória in-termediária do controlador na unidade 60 atualizando a tabe-la de destino da unidade 45. Os pacotes PAT e CAT detectadospela unidade 45 são conduzidos através do decodificador 55para a memória intermediária do controlador na unidade 60sob o controle da unidade 65. Na etapa 205, a unidade decontrole 65 sinaliza ao controlador 115 através de uma in-terrupção da PSI que os pacotes de PSI estão presentes naunidade 60. 0 controlador 115, com a recepção da interrupçãoda PSI, repetitivamente acessa os pacotes armazenados na suamemória intermediária da unidade designada 60 e armazena osdados completos de CAT e PAT na memória interna. 0 controla-dor 115 repete esse processo para armazenar os dados comple-tos de PMT e NIT na memória interna depois de determinar osPIDs que identificam os pacotes de PMT e NIT da PAT. 0 con-trolador 115 continuamente acessa a memória intermediária 60e captura os pacotes da PSI na memória interna com a recep-ção das interrupções da PSI enquanto o receptor está energi-zado. Como um resultado, o controlador 115 captura na suamemória interna os dados de PAT, PMT, NIT e CAT que compre-ende a PSI completa da entrada do fluxo de dados de trans-porte para o sistema 25.
Na etapa 210 da Figura 2, os dados gerados pelousuário (SP, SM, SE) identificando os programas que um usuá-rio quer armazenar, bem como esses programas que são paraserem armazenados na forma criptografada, e os meios físicose dispositivos a serem usados para armazenagem, são inseri-dos no controlador 115 (Figura 1). Um usuário pode selecio-nar a armazenagem criptografada de preferência a armazenagemnão criptografada por uma variedade de razões. Por exemplo,um provedor de serviço pode tornar mais barato armazenar naforma criptografada como uma maneira de limitar o número decópias subsequentes que um usuário pode fazer. Um provedordo serviço pode realizar isso controlando o acesso ao pro-grama criptografado através da informação de habilitação docartão inteligente pré armazenado. A entrada dos dados deseleção para o controlador 115 é inserida por um usuárioatravés da seleção do menu na tela com a unidade de controleremoto 125 através da interface 120. Na etapa 215, em res-posta aos dados de seleção de entrada (SP), o controlador115 deriva os PIDs para os programas selecionados para arma-zenagem da PSI armazenada. Os filtros de detecção da unidade47 são carregados com os PIDs dos programas a serem armaze-nados pelo controlador 115. Isso possibilita que a unidade47 identifique os pacotes compreendendo os programas seleci-onados para armazenagem. Na etapa 215, o controlador 115também pré carrega a memória intermediária de substituiçãoda unidade 60 com dados nulos. Os dados nulos são para seremsubstituídos pelos códigos de criptografia difundidos ocor-rentes em programas difundidos na forma criptografada quesão selecionados para armazenagem.
Na etapa 215 da Figura 2, a unidade 47 (Figura 1)fornece pacotes não criptografados para o mux 110 e fornecepacotes criptografados (identificados por um indicador decriptografia nos dados do cabeçalho do pacote) junto comchaves associadas de criptografia difundidas para a unidadede decriptografia 50. As chaves de criptografia difundidassão fornecidas para a unidade 47 pelo controlador IlS naetapa 215 da Figura 2, seguinte a sua geração pelo cartãointeligente 130 (Figura 1) pela decriptografia dos códigosde criptografia obtidos da CAT para os programas seleciona-dos (SP) na maneira previamente descrita. Entretanto, se osdados de seleção SE solicitam armazenagem criptografada, aunidade 47 passa os pacotes criptografados a serem armazena-dos para o mux 110. Consequentemente, na etapa 215 da Figura2, os pacotes compreendendo os programas a serem armazenados(SP) são fornecidos para o mux 110 na forma criptografada oudecriptografada em resposta aos dados de seleção SE.
Nas etapas 217-227, o controlador 115 forma infor-mação específica do programa condensado (CPSI) para os pro-gramas selecionados para armazenagem (SP) a partir da infor-mação completa específica do programa (PSI) capturada da en-trada do fluxo de dados de transporte para o sistema 25. Seos dados SE solicitam armazenagem criptografada, o controla-dor 115 executa a etapa 227 seguinte a etapa de decisão 217.
Na etapa 227, o controlador 115 aplica a função do algoritmode reprodução no sistema do cartão inteligente 130 paracriptografar a chave de criptografia difundida previamentegerada (pela decriptografia de um código de criptografia di-fundido) na etapa 215 para formar um código de criptografiade reprodução para o programa a ser armazenado. A CPSI éformada para incluir o código de criptografia de reproduçãomas para excluir o código de criptografia difundido origi-nalmente presente na PSI da entrada do fluxo dos dados detransporte para o sistema 25. Consequentemente, o fluxo dedados formado para o programa destinado para armazenagem ex-clui seu código associado de criptografia difundido. Issoevita o compromisso na segurança da chave de criptografiaque ocorre quando as chaves de criptografia são armazenadasem meios físicos de armazenagem removíveis acessíveis porterceiros. Depois que as chaves estão acessíveis em meiosfísicos de armazenagem, sua segurança é dependente da sofis-ticação das técnicas disponíveis de engenharia reversa eruptura de código. Nesse sistema, múltiplos níveis de segu-rança são fornecidos por não armazenar os códigos de cripto-grafia difundidos dos quais as chaves de criptografia difun-didas são derivadas e por armazenar as chaves de criptogra-fia difundidas na forma criptografada. Adicionalmente, mesmose as chaves foram deduzidas para o programa armazenado, elanão forneceria aceso aos programas atuais difundidos para osquais o algoritmo de criptografia difundido é regularmentealterado.
Se os dados de entrada do SE não solicitam armaze-nagem criptografada, o controlador 115 executa a etapa 225seguinte a etapa de decisão 217. Na etapa 225, o controlador115 forma a CPSI do programa destinado para armazenagem apartir da PSI de entrada do fluxo de dados de transportepara o sistema 25 e exclui os códigos de criptografia daCPSI.
O sistema de criptografia descrito é exemplar so-mente. Mecanismos de criptografia alternativos podem trans-portar os códigos de criptografia difundidos e de reproduçãoem áreas de informação do fluxo de dados diferentes da PSI.Outros mecanismos de criptografia podem também requerer ageração e inserção dos códigos de criptografia em intervalosdiferentes do que é envolvido na geração da PSI. Se os códi-gos de criptografia difundidos não são transportados na PSI,dados de substituição ou outros para esses códigos podem sernecessários para excluí-los do fluxo de dados formado para oprograma a ser armazenado. A provisão para substituição dosdados nulos para os códigos de criptografia difundidos emintervalos diferentes desses nos quais a CPSI ocorre é dis- cutida mais tarde. Especificamente, a substituição dos códi-gos de criptografia difundidos em tempo real, isto é, emfreqüência de pacote quando os códigos são transportados emcabeçalhos de pacote, por exemplo, é discutida em conexãocom as etapas 237-249.
Na etapa 230, o controlador 115 forma os dados deCPSI dentro das seções, de acordo com a sintaxe do MPEG (pa-rágrafos 2.4.4.3 - 2.4.4.11 do padrão de sistemas do MPEG).0 controlador 115, na etapa 230, também adiciona os dados decabeçalho nas seções dos dados da CPSI para formatar e colo-car em pacotes os dados de CPSI para inserção dentro do flu-xo de dados a ser armazenado. O controlador 115 cria os ca-beçalhos de acordo com as seções 2.4.3.2 e 2.4.3.3 do padrãodos sistemas MPEG a partir dos dados de cabeçalho da PSI ar-mazenados na memória interna do controlador 115. Entretanto, os dados da seção da CPSI são diferentes em comprimento emrelação aos dados da seção da PSI correspondentes. Portanto,novos parâmetros de cabeçalho incluindo o indicador de 'con-tagem de continuidade' e 'indicador de início da unidade decarga útil' são criados pelo controlador 115 e Inseridos noscampos do indicador respectivo dentro dos dados de cabeça-Iho. O novo indicador de contagem de continuidade criadopelo controlador 115 reflete, por exemplo, o número de paco-tes por PID para os elementos da CPSI ao invés do número di-ferente de pacotes por PID dos elementos da PSI correspon-dentes. O novo indicador de início da unidade de carga útilcriado pelo controlador 115 identifica, por exemplo, o pri-meiro byte da seção de CPSI ao invés do primeiro byte da se-ção da PSI correspondente.
Seguinte a etapa 230, o fluxograma da Figura 2continua com a etapa 237 da Figura 3. 0 controlador 115 de-termina, na etapa 237, se os códigos de criptografia difun-didos são transportados nos campos do fluxo de dados dife-rentes da CPSI. Especificamente, o controlador 115 determinase os códigos de criptografia difundidos são transportadosem campos de adaptação compatíveis com MPEG dos cabeçalhosdo pacote (pela seção 2.4.3.4 da sintaxe padrão dos sistemasdo MPEG). Se sim, o controlador 115 executa a etapa 249 paracriar um fluxo de dados composto que compreende pacotes deCPSI e pacotes de conteúdo de programa com dados nulos subs-tituídos para os códigos de criptografia difundidos nos ca-beçalhos do pacote. A substituição do código de criptografiaé executada em uma base de pacote por pacote na freqüênciado pacote.
Na etapa 249, os dados do pacote de substituiçãopré carregados durante a etapa 215 (Figura 2) para dentro damemória intermediária de substituição na unidade 60 são for-necidos da unidade 60 para o mux 110 (Figura 1 sob o con-trole do controlador 115. Além disso, na etapa 249, a CPSIna forma de dados em pacotes de seção compatíveis com MPEGformados na etapa 23 0 é fornecida pelo controlador 115 para o mux 110 (Figura 1). Os fluxos de dados do pacote do conte-údo de programa da unidade 47 ou unidade 50 como previamentediscutido em conexão com a etapa 215, são também fornecidospara o mux 110. Na etapa 249, o controlador 115 multiplexaentre o fluxo de dados do conteúdo do programa, o fluxo de dados da CPSI, e a entrada dos dados de substituição para omux 110 usando o sinal C de seleção de trajetória para criarum fluxo de dados composto que é produzido pelo mux 110 paraa interface de armazenagem 95. 0 fluxo de dados compostocompreende pacotes de conteúdo de programa e pacotes de CPSI com dados nulos substituídos para os códigos de criptografiadifundidos nos cabeçalhos de pacote.
0 controlador 115 sincroniza a inserção dos paco-tes de CPSI e dados nulos no fluxo de dados do programa aser armazenado, em resposta a um sinal de interrupção de PSI e um sinal de regulação de substituição da unidade de con-trole 65 (Figura 1) . A interrupção de PSI indica a presençade pacotes de PSI na memória intermediária 60 como discutidoem conexão com a etapa 205. O sinal de regulação de substi-tuição sincroniza a inserção dos dados nulos com a ocorrên-cia dos códigos de criptografia difundidos nos cabeçalhos dopacote. Nessa maneira, as seções em pacote da CPSI são inse-ridas nas localizações da PSI para substituir as seções cor-respondentes da PSI e os códigos de criptografia difundidossão removidos. Os dados de CPSI não criptografados são inse-ríveis nos fluxos de dados de conteúdo de programa cripto-grafados ou não criptografados que são inseridos para o mux110 de modo a criar programas criptografados ou não cripto-grafados para armazenagem.
Deve ser observado que a substituição do código decriptografia difundido executada na etapa 24 9 pode tambémser aplicada a códigos transportados em campos do fluxo dedados diferentes dos campos de adaptação do cabeçalho do pa-cote MPEG. Adicionalmente, os códigos de criptografia podemser substituídos em intervalos diferentes desses nos quaisos campos de adaptação ocorrem. Por exemplo, os dados nulospodem ser substituídos para os códigos de criptografia ocor-rendo em uma variedade de localizações de fluxo de dadoscompatíveis com MPEG ou não MPEG incluindo: pacotes auxilia-res dentro do Sistema de Satélite Digital proprietário(DSS™); campos de Fluxo Elementar em Pacote (PES) (pelasseções 2.5.3.7 - 2.5.4.2 da sintaxe padrão dos sistemasMPEG); campos de Comandos de Controle de Meios físicos deArmazenagem Digital (DSMCC) (pelo Apêndice A da sintaxe pa-drão dos sistemas MPEG); e pacotes não MPEG formatados deacordo com outros protocolos de transmissão de dados talcomo o protocolo de controle CEBus padronizado (Padrão deAutomação Inicial (CEBus), EIA/IS-60, Dezembro de 1989).
Se os códigos de criptografia são transportados empacotes nos quais os próprios códigos são os únicos itens dedados de conseqüência, o código transportando os pacotespode ser omitido inteiramente do fluxo de dados de saída.Isso pode ser realizado descartando-se os pacotes atravésdas unidades 45 e 47 de seleção de PID (Figura 1) ou omitin-do-se os pacotes durante a operação de multiplexação execu-tada na etapa 249. Entretanto, os parâmetros sensíveis a taxa de dados e estrutura de dados dentro da sintaxe do flu-xo de dados de saída podem precisar ser atualizados para re-fletir a mudança da taxa de dados ocorrendo como um resulta-do de tal omissão dos dados do pacote.
Na etapa 24 9, a interface de armazenagem 95 (Figu- ra 1) recebe os programas a serem armazenados na forma defluxo de dados em pacote (a seguir chamado o fluxo de CPSI)incorporando os dados de CPSI e nulos do mux 110. Na etapa254 (Figura 3) , seguinte a etapa 249, o sistema de acessocondicional dentro do sistema 2 5 cobra o Usuário pela arma- zenagem do programa (ou comunicação com outros dispositi-vos) . 0 Usuário é cobrado pela armazenagem de informação defaturamento dentro do próprio cartão inteligente inserível.A armazenagem da informação de faturamento é iniciada pelaaplicação do algoritmo de reprodução, mas o faturamento não precisa ser contemporâneo com a aplicação do algoritmo. Ainformação de faturamento indica que o Usuário armazenou umprograma difundido criptografado. Essa informação de fatura-mento é mais tarde acessada através de um vínculo de telefo-ne pelo provedor do serviço e usada para cobrar o Usuário através de um processo de faturamento convencional. Outrosmecanismos de faturamento são igualmente possíveis. Porexemplo, créditos podem ser deduzidos de uma soma de créditopré armazenada dentro de um cartão inteligente. Adicional-mente, o cartão inteligente pode variar a quantidade de Fa-turamento com base no tipo de armazenagem solicitada e.g.,pode existir uma taxa por armazenagem permitindo somente umaúnica cópia ou reprodução do programa armazenado e uma outrataxa para armazenagem permitindo cópia ou reprodução ilimi-tada do programa. O tipo de armazenagem solicitada é codifi-cada dentro dos dados designados de proteção de cópia nopróprio fluxo de CPSI ou nos dados de pacote externos aofluxo de CPSI. 0 processo das Figuras 2-3 usado pelo contro- lador 115 para gerar um fluxo de dados de programa (o fluxode CPSI) adequado para armazenagem no meio físico 105 e paracobrar um usuário pela armazenagem termina na etapa 258.
Se o controlador 115 determina, na etapa 237, quenenhum código de criptografia difundido é transportado noscampos de adaptação compatíveis com MPEG dos cabeçalhos dopacote, o controlador 115 executa as etapas 240 - 245. Essasetapas refletem as etapas 249-258, exceto que porque nãoexistem códigos de criptografia difundidos presentes na en-trada de fluxos de dados para o mux 110 representando o pro- grama a ser armazenado, não existe necessidade por inserçãode dados nulos. De outra forma, o controlador 115 executa aetapa 240 para criar o fluxo de CPSI para armazenagem atra-vés da interface de armazenagem 95 e executa a tarefa 244para cobrar o usuário pela armazenagem em modo similar a esse descrito em conjunto com as etapas 249 e 254. Esse ramodo processo das Figuras 2-3 termina na etapa 245. Entretan-to, deve ser observado que o fluxo de CPSI pode alternativa-mente ser fornecido para outras aplicações nas etapas 240 e24 9, tal como exibição ou comunicação através da interface70 ao invés de armazenagem através da interface 95.
O fluxo de CPSI do mux 110 é armazenado na memóriaintermediária pela interface 95 para reduzir aberturas e va- riação da taxa de bit nos dados. Os dados resultantes arma-zenados na memória intermediária são processados pelo dispo-sitivo de armazenagem 90 para ficarem adequados para armaze-nagem no meio físico 105. 0 controlador 115 inicia e contro-la a operação do dispositivo de armazenagem 90 (Figura 1) pelo comando através da porta 1/0 100 usando um protocolo decontrole de CEBus padronizado (e.g., Padrão de AutomaçãoInicial (CEBus) , EIA/IS-60, Dezembro de 1989) . O dispositivode armazenagem 90 é um dispositivo do tipo DVHS™ de meiofísico de armazenagem linear e o meio físico 105 é um meio físico do tipo de acesso seqüencial linear tal como fita devídeo, por exemplo. O dispositivo de armazenagem 90 codificao fluxo de dados armazenado na memória intermediária da in-terface 95 usando técnicas conhecidas de codificação de errotal como codificação de canal, intercalação e codificação Reed Solomon para produzir um fluxo de dados codificado ade-quado para armazenagem. A unidade 90 armazena os fluxos dedados codificados resultantes incorporando a CPSI no meiofísico de fita 105.
Embora descrito como um dispositivo DVHS™ que ar- mazena dados em um meio físico de armazenagem do tipo linearna configuração exemplar da Figura 1, a unidade de armazena-gem 90 pode ser qualquer tipo de unidade de armazenagem. Porexemplo, a unidade 90 pode ser um dispositivo do tipo de es-tado sólido ou não linear para armazenar dados em RAM ou emum meio físico não linear. Um meio físico do tipo não linearé um meio físico que acomoda acesso não seqüencial, tal comoum meio físico de disco incluindo CDROM ou DVD, por exemplo.
Se a unidade 90 e o meio físico 105 são sistemas de armaze-nagem do tipo não linear ou de estado sólido, a unidade 90separa os dados de CPSI do fluxo de CPSI e armazena os dadosde CPSI em uma seção de diretório designada do meio físico.
Isso vantajosamente evita armazenagem repetida da CPSI e re-duz a capacidade requerida de armazenagem. Alternativamente,a unidade 90 pode armazenar o fluxo de CPSI como formado einserir para a unidade 90, incorporando uma ou mais repeti-ções dos dados de CPSI.
Adicionalmente, o sistema 25 da Figura 1 pode in-corporar uma pluralidade de trajetórias de armazena-gem/recuperação que suportam a operação de uma pluralidadede dispositivos de armazenagem de vários tipos incluindo ti-pos linear, não linear e de estado sólido. A única trajetó-ria de armazenagem/recuperação mostrada na Figura 1 compre-ende as unidades 47, 90, 95, 105 e 110, como descrito. Re-produzindo-se esses elementos para criar funções de armaze-nagem paralela, o sistema 25 é prontamente estendido paraincorporar uma pluralidade de trajetórias de armazenagem. Atrajetória de armazenagem e programas destinados para umdispositivo de armazenagem particular são selecionados pelosdados gerados pelo usuário (SP, SM) inseridos para o contro-lador 115 através da interface 120 seguinte a seleção domenu na tela com a unidade de controle remoto 125, como pre-viamente descrito.
0 sistema 25 da Figura 1 recupera programas dodispositivo de armazenagem 90 e meio físico 105 em um modo de reprodução usando o processo da Figura 4. Os fluxos dedados recuperados são processados pelo sistema 25 e forneci-dos para os dispositivos de aplicação 75, 80 e 85 para exi-bição ou saída, por exemplo. Alternativamente, os fluxos dedados do programa podem ser armazenados em outros dispositi- vos de armazenagem paralelos (não mostrados na Figura 1 parasimplificar o desenho).
Na etapa 505 da Figura 4, seguinte ao início naetapa 500, os dados gerados pelo usuário (SR, SM) são inse-ridos para o controlador 115 do sistema 2 5 (Figura 1) iden- tificando os programas (SR) a serem recuperados e o disposi-tivo de armazenagem (SM) do qual os programas são para seremrecuperados. Os dados de seleção do usuário são inseridospara o controlador 115 através da interface 120 seguinte aseleção do menu na tela com a unidade de controle remoto125. É assumido com propósitos exemplares que o usuário se-leciona programas a serem recuperados a partir do dispositi-vo de armazenagem 90 (Figura 1).
0 controlador 115, na etapa 510, inicia a recupe-ração dos fluxos de dados do programa selecionado pelo dis-positivo 90 do meio físico 105 pelo comando através da porta1/0 100 usando o protocolo de controle CEBus padronizadocomo previamente discutido. 0 dispositivo 90 decodifica osdados codificados de erro recuperados do meio físico 105para recuperar os dados correspondentes originalmente forne-cidos para o dispositivo 90 para armazenagem. 0 dispositivo90 pode ser uma unidade de armazenagem do tipo linear DVHS™ou um outro tipo de unidade de armazenagem tal como um dis-positivo do tipo RAM de estado sólido ou DVD do tipo não li-near ou CDROM. Os fluxos de dados decodificados recuperadossão transferidos, na etapa 510, pelo dispositivo 90 para ainterface 95. Essa transferência de dados é controlada esincronizada pelo controlador 115 através dos CEBus padrão.
A interface 95, armazena na memória intermediária os dadosrecebidos da unidade 90 para ajustar os intervalos de tempoentre os pacotes de dados para produzir uma saída de dadosarmazenados na memória intermediária que é compatível comMPEG e cumpre com as restrições da taxa de bit do MPEG.
Na etapa 515, o controlador 115 direciona a saídaarmazenada na memória intermediária da interface 95 (o fluxode dados de reprodução) através do mux 37 para as unidades45 e 47 de seleção do PID usando o sinal C de seleção detrajetória. Na etapa 515, o controlador 115 determina se aúnica cópia ou limitações da cópia ilimitada que foram codi-ficadas nos dados de proteção de cópia designada nas etapas244 e 254 (Figura 3), estão sendo excedidas pelo programarecuperado. Submetido a recuperação sendo permitida, o con-trolador 115, na etapa 515 (Figura 4), recupera o código decriptografia de reprodução que foi gerado na etapa 227 (Fi-gura 2) da CAT para os programas selecionados (SR) e forneceo código para a unidade do cartão inteligente 130 na maneirapreviamente descrita em conjunto com a etapa 215 (Figura 2).Sob o controle do controlador 115, o cartão inteligente 130,na etapa 515 (Figura 4) , aplica o algoritmo de reproduçãopara gerar as chaves originais de criptografia difundidas apartir do código de criptografia de reprodução. As chaves de criptografia difundidas são fornecidas para a PID, tabelasde consulta de chave de destino e criptografia nas unidades45 e 47 pelo controlador 115 na etapa 515.
Na etapa 52 0, as unidades 45 e 47 e as unidadesremanescentes do sistema 25 processam o fluxo de dados de reprodução para armazenagem através do mux 110 ou para usode aplicação através da interface 70. Ambos o fluxo de dadosde reprodução da unidade 95 e o fluxo de dados transmitidodo seletor 35, seguinte a seleção através do mux 37, sãoprocessados pelo sistema 2 5 em uma maneira similar. Ambosesses fluxos de dados são processados na maneira previamentedescrita para o fluxo de dados transmitido, exceto para asetapas de geração da chave de criptografia e para as etapasde processamento de CPSI. No modo de reprodução, o cartãointeligente 130 aplica um algoritmo de geração de chave decriptografia de reprodução ao invés de um algoritmo de gera-ção de chave difundida. A unidade de cartão inteligente 13 0aplica a função do algoritmo de reprodução para decriptogra-far os códigos de criptografia previamente codificados com oalgoritmo de codificação de reprodução na etapa 227 da Figu-ra 2. Dessa forma, a unidade 130 deriva as chaves de cripto-grafia difundidas originais para o programa selecionado parareprodução (SR) . As chaves de criptografia difundidas sãousadas pela unidade de decriptografia DES 50 para decripto-grafar os pacotes criptografados de conteúdo de programa naetapa subsequente 520 (Figura 4) na maneira previamente des-crita para o fluxo de dados transmitido. Entretanto, o fluxode dados de reprodução selecionado através do mux 3 7 já in-corpora a CPSI. Portanto, no modo de reprodução, o controla-dor 115 na etapa 520, não executa as etapas relacionadas coma formação da CPSI descrita em conjunto com as Figuras 2-3.
No modo de reprodução exemplar mostrado na Figura4, o sistema 25 na etapa 520, decodifica com transporte ofluxo de dados de reprodução para fornecer os dados decodi-ficados para os decodificadores de aplicação 80 e 85, paraexibição. Nesse modo, o sistema 25 aplica os últimos dadosde CPSI completos contidos no fluxo de dados de reprodução,de acordo com o padrão MPEG, para produzir um fluxo de dadosdecodificado de transporte representando o programa selecio-nado SR.
A CPSI é aplicada na decodificação com transportedo fluxo de dados de reprodução usando os filtros de PID 45e 47, decriptor 50, decodificador 55, memória intermediária60 e unidade de controle 65 em uma maneira similar a essapreviamente descrita em conjunto com a Figura 1. 0 fluxo dedados decodificados de transporte, excluindo a CPSI, é for-necido, através da interface 70, para os decodificadores deaplicação 80 e 85 para a decodif icação em MPEG e reproduçãode imagem. Em outros modos, o sistema 25 fornece o fluxo dedados de reprodução incorporando a CPSI para outros disposi-tivos de aplicação tal como para a porta 75 de dados em altavelocidade, por exemplo. A CPSI fica então disponível paraser aplicada na decodificação com transporte do fluxo de da-dos de reprodução, quando necessário, por esses dispositivosde aplicação ou dispositivos subsequentes. Se o fluxo de da-dos de reprodução é para ser armazenado em um segundo dispo- sitivo de armazenagem diferente do dispositivo 90, por exem-plo, o mux 110 fornece o fluxo de dados, incorporando aCPSI, para o segundo dispositivo de armazenagem através deuma segunda interface de armazenagem. Adicionalmente, o se-gundo dispositivo de armazenagem e interface (nenhum é mos-trado na Figura 1) imitam a operação e função das unidades90 e 95, respectivamente. Os dados da interface 70, decodi-ficados em MPEG pelos decodificadores de aplicação 80 e 85,são apresentados através dos dispositivos de reprodução deáudio e imagem nas unidades 80 e 85, respectivamente.
Na etapa 527 (Figura 4) , o sistema de acesso con-dicional no sistema 25 cobra o Usuário pela reprodução doprograma. 0 Usuário é cobrado no próprio cartão inteligenteinserível pela armazenagem da informação de faturamento coma aplicação do algoritmo de reprodução. A informação de fa- turamento indica que o Usuário recuperou um programa difun-dido criptografado. Essa informação de faturamento é maistarde acessada através de vínculo telefônico pelo provedordo serviço e usada para cobrar o Usuário através de um pro-cesso de faturamento convencional. Outros mecanismos de fa-turamento, como previamente descrito, podem igualmente serusados. 0 processo de reprodução da Figura 4 termina na eta-pa 53 0.A arquitetura da Figura 1 não é exclusiva. Outras,arquiteturas podem ser derivadas de acordo com os princípiosda invenção para conseguir os mesmos objetivos. Adicional-mente, as funções dos elementos da arquitetura da Figura 1 eas etapas do processo da Figura 2-4 podem ser implementadastotalmente ou em parte dentro das instruções programadas deum microprocessador. Além disso, os princípios da invençãoaplicam-se a qualquer sistema usando um guia de programaeletrônico compatível com MPEG ou sem MPEG para transportarqualquer informação descrita aqui como sendo transportadanas tabelas PSI em MPEG. Os princípios da invenção não sãorestritos aos guias de programa ou PSI transportadas nas ta-belas de PSI compatíveis com MPEG.

Claims (8)

1. Método para operar um decodif icador de vídeo(85) para receber e processar dados de vídeo digital parasaída e armazenagem subseqüente remota ou local, o dito mé-todo processando dados representativos de programa de umfluxo de dados de entrada contendo uma chave de criptografiacriptografada difundida e dados associados de programa crip-tografados difundidos, e CARACTERIZADO pelo fato de compre-ender as etapas de:decriptografar a dita chave de criptografia crip-tografada difundida recebida no dito fluxo de dados de en-trada usando um primeiro algoritmo para fornecer uma chavede criptografia difundida para uso na decriptografia dos di-tos dados de programa criptografados difundidos;criptografar novamente a dita chave de criptogra-fia difundida usando um segundo algoritmo para fornecer umachave de reprodução criptografada para uso na decriptografiados dados de programa criptografados recuperados de um meiofísico de armazenagem (105); eformatar a dita chave de reprodução criptografadajunto com os ditos dados associados de programa criptografa-dos difundidos para formar os dados de saída adequados paraarmazenagem em um meio físico de armazenagem (105) por:exclusão da dita chave de criptografiacriptografada difundida dos ditos dados de saída; eincorporação da dita chave de reproduçãocriptografada nos ditos dados de saída.
2. Método, de acordo com a reivindicação 1,CARACTERIZADO pelo fato de que a dita etapa de formatar in-clui a etapa de:substituir dados nulos pela dita chave de cripto- grafia criptografada difundida.
3. Método, de acordo com a reivindicação 1,CARACTERIZADO pelo fato de que a dita etapa de formatar in-clui a etapa de:incorporar parâmetros de estrutura de dados nos ditos dados de saida para ficarem compatíveis com a estrutu-ra de dados resultante de excluir a dita chave de criptogra-fia criptografada difundida e incorporar a dita chave de re-produção criptografada.
4. Método para operar um decodif icador de vídeo (85) para receber e processar dados de vídeo digital parasaída e armazenagem subseqüente remota ou local, o dito mé-todo processando dados representativos de programa de umfluxo de dados de entrada contendo uma chave de criptografiacriptografada difundida e dados associados de programa crip- tografado difundido, e CARACTERIZADO pelo fato de compreen-der as etapas de:receber dados gerados pelo usuário para selecionarum de (a) um modo de saída de programa decriptografado e (b)um modo de saída de programa criptografado;decriptografar a dita chave de criptografia crip-tografada difundida recebida no dito fluxo de dados de en-trada usando um primeiro algoritmo para fornecer uma chavede criptografia difundida para uso na decriptografia dos di-tos dados de programa criptografados difundidos;no modo de saída de programa decriptografado,decriptografar os ditos dados de progra-ma criptografados difundidos usando a dita chave de cripto-grafia difundida para fornecer dados de programa decripto-grafados para saída;no modo de saída de programa criptografado,criptografar novamente a dita chave decriptografia difundida usando um segundo algoritmo para for-necer uma chave de reprodução criptografada para uso na de-criptografia dos dados de programa criptografados recupera-dos de um meio físico de armazenagem (105); eformatar a dita chave de reproduçãocriptografada junto com os ditos dados de programa cripto-grafados difundidos associados para formar os dados do pro-grama criptografados para saída; eexcluir a dita chave de criptografia criptografadadifundida dos ditos dados de programa decriptografados e di-tos dados de programa criptografados para saída.
5. Método, de acordo com a reivindicação 4,CARACTERIZADO pelo fato de que a dita etapa de excluir in-clui a etapa de:substituir dados nulos pela dita chave de cripto-grafia criptografada difundida.
6. Método, de acordo com a reivindicação 4,CARACTERIZADO pelo fato de incluir a etapa de:incorporar os parâmetros de estrutura de dados nosdados de saída no dito modo de saída de programa decripto-grafado e parâmetros diferentes de estrutura de dados nosdados de saída no dito modo de saída de programa criptogra-fado, em resposta aos ditos dados gerados pelo usuário.
7. Método, de acordo com a reivindicação 5,CARACTERIZADO pelo fato de que:os ditos dados nulos são substituídos pela ditachave de criptografia criptografada difundida dentro de umcampo de dados selecionado de um dos seguintes campos de da-dos: um campo de Adaptação MPEG; um campo de Fluxo Elementarem Pacotes MPEG (PES); um campo de Comando de Controle deMeios de Armazenagem Digital MPEG (DSMCC); campo de dados empacote auxiliares do Sistema de Satélite Digital (DSS); e umcampo de dados não MPEG.
8. Método, de acordo com a reivindicação 4,CARACTERIZADO pelo fato de queos ditos dados gerados pelo usuário também identi-ficam a) o dispositivo de armazenagem (90), e b) um programaparticular a ser armazenado.
BRPI9714318-9A 1996-11-27 1997-10-28 método de processamento de dados de vìdeo criptografados para geração de dados de programa decriptografados. BR9714318B1 (pt)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US08/762.483 1996-11-27
US08/762,483 US5878135A (en) 1996-11-27 1996-11-27 Decoding system for processing encrypted broadcast, cable or satellite video data
PCT/US1997/019374 WO1998024236A1 (en) 1996-11-27 1997-10-28 Method of processing encrypted video data for generating decrypted program data

Publications (2)

Publication Number Publication Date
BR9714318A BR9714318A (pt) 2000-02-08
BR9714318B1 true BR9714318B1 (pt) 2011-06-28

Family

ID=25065195

Family Applications (1)

Application Number Title Priority Date Filing Date
BRPI9714318-9A BR9714318B1 (pt) 1996-11-27 1997-10-28 método de processamento de dados de vìdeo criptografados para geração de dados de programa decriptografados.

Country Status (13)

Country Link
US (1) US5878135A (pt)
EP (1) EP0941610B1 (pt)
JP (2) JP4592833B2 (pt)
KR (1) KR100474209B1 (pt)
CN (1) CN1168312C (pt)
AU (1) AU7402398A (pt)
BR (1) BR9714318B1 (pt)
CA (1) CA2272921C (pt)
DE (1) DE69718199T2 (pt)
ES (1) ES2189001T3 (pt)
MY (1) MY117019A (pt)
TW (1) TW376656B (pt)
WO (1) WO1998024236A1 (pt)

Families Citing this family (67)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6400996B1 (en) 1999-02-01 2002-06-04 Steven M. Hoffberg Adaptive pattern recognition based control system and method
US10361802B1 (en) 1999-02-01 2019-07-23 Blanding Hovenweep, Llc Adaptive pattern recognition based control system and method
US6850252B1 (en) 1999-10-05 2005-02-01 Steven M. Hoffberg Intelligent electronic appliance system and method
US6418424B1 (en) 1991-12-23 2002-07-09 Steven M. Hoffberg Ergonomic man-machine interface incorporating adaptive pattern recognition based control system
US8352400B2 (en) 1991-12-23 2013-01-08 Hoffberg Steven M Adaptive pattern recognition based controller apparatus and method and human-factored interface therefore
US5619501A (en) * 1994-04-22 1997-04-08 Thomson Consumer Electronics, Inc. Conditional access filter as for a packet video signal inverse transport system
US8574074B2 (en) 2005-09-30 2013-11-05 Sony Computer Entertainment America Llc Advertising impression determination
US5878135A (en) * 1996-11-27 1999-03-02 Thomson Consumer Electronics, Inc. Decoding system for processing encrypted broadcast, cable or satellite video data
DE19823532C2 (de) * 1998-05-26 2003-08-21 T Mobile Deutschland Gmbh Verfahren zur Steuerung eines Teilnehmeridentitätsmoduls (SIM) in Mobilfunksystemen
WO1999065230A2 (en) * 1998-06-12 1999-12-16 Koninklijke Philips Electronics N.V. Transmission system
US6530021B1 (en) 1998-07-20 2003-03-04 Koninklijke Philips Electronics N.V. Method and system for preventing unauthorized playback of broadcasted digital data streams
US6226618B1 (en) * 1998-08-13 2001-05-01 International Business Machines Corporation Electronic content delivery system
JP4069339B2 (ja) * 1998-10-16 2008-04-02 ソニー株式会社 信号変換装置および信号変換方法
US7904187B2 (en) 1999-02-01 2011-03-08 Hoffberg Steven M Internet appliance system and method
US6754784B1 (en) 2000-02-01 2004-06-22 Cirrus Logic, Inc. Methods and circuits for securing encached information
DE50006287D1 (de) * 2000-03-10 2004-06-03 Rudolf Ritter Verfahren, kommunikationssystem und empfangsvorrichtung für die verrechnung von zugriffskontrollierten programmen und/oder daten von broadcastsendern
US7310809B2 (en) * 2000-05-19 2007-12-18 General Instrument Corporation Scalable pay-by-time technique for secure multicast distribution of streaming content
CN1483263A (zh) * 2000-10-26 2004-03-17 ���ĺ� 多媒体多点传送内容的初始免费预览
US7912220B2 (en) * 2001-02-05 2011-03-22 Broadcom Corporation Packetization of non-MPEG stream data in systems using advanced multi-stream POD interface
DE10105737B4 (de) * 2001-02-08 2006-11-16 Grundig Multimedia B.V. Vorrichtung zur Übertragung von Bild- oder Tonsignaldaten zwischen einem digitalen Empfangs- und/oder Wiedergabegerät und einem digitalen Speicher
US8751310B2 (en) 2005-09-30 2014-06-10 Sony Computer Entertainment America Llc Monitoring advertisement impressions
EP1241873A1 (en) * 2001-03-15 2002-09-18 STMicroelectronics Ltd. Storage of digital data
US6785656B2 (en) * 2001-06-05 2004-08-31 Xm Satellite Radio, Inc. Method and apparatus for digital audio playback using local stored content
US7065213B2 (en) * 2001-06-29 2006-06-20 Scientific-Atlanta, Inc. In a subscriber network receiving digital packets and transmitting digital packets below a predetermined maximum bit rate
JP2003076432A (ja) * 2001-09-05 2003-03-14 Nec Corp プログラム実行装置及びそれに用いるプログラム実行方法並びにそのプログラム
US7570766B2 (en) * 2002-03-01 2009-08-04 Intel Corporation Transparently embedding non-compliant data in a data stream
KR20040103891A (ko) * 2002-04-05 2004-12-09 마쯔시다덴기산교 가부시키가이샤 컨텐츠 이용 시스템
US7933411B2 (en) 2002-06-28 2011-04-26 Trident Microsystems (Far East) Ltd. Method of constructing MPEG program streams from encrypted MPEG transport streams
JP4211306B2 (ja) * 2002-07-19 2009-01-21 パナソニック株式会社 送信装置、及び受信装置
US7251328B2 (en) * 2003-01-14 2007-07-31 General Instrument Corporation System for secure decryption of streaming media using selective decryption of header information and decryption of reassembled content
US7779482B1 (en) 2003-02-07 2010-08-17 iGware Inc Delivery of license information using a short messaging system protocol in a closed content distribution system
IL155416A0 (en) * 2003-04-13 2003-11-23 Nds Ltd System for securing access to data streams
WO2005057352A2 (en) * 2003-12-02 2005-06-23 Melodeo, Inc. Secure digital content trading systems and methods
US7519274B2 (en) 2003-12-08 2009-04-14 Divx, Inc. File format for multiple track digital data
US8472792B2 (en) 2003-12-08 2013-06-25 Divx, Llc Multimedia distribution system
US7529370B1 (en) * 2004-04-29 2009-05-05 Hewlett-Packard Development Company, L.P. Digital media-playing device and a method of playing digital media therein
US7949883B2 (en) * 2004-06-08 2011-05-24 Hrl Laboratories, Llc Cryptographic CPU architecture with random instruction masking to thwart differential power analysis
WO2006018827A2 (en) * 2004-08-16 2006-02-23 Nds Limited System for providing access to operation information
GB0418279D0 (en) * 2004-08-16 2004-09-15 Nds Ltd System for providing access to operation information
US8763157B2 (en) 2004-08-23 2014-06-24 Sony Computer Entertainment America Llc Statutory license restricted digital media playback on portable devices
JP5177939B2 (ja) * 2004-11-10 2013-04-10 株式会社東芝 情報処理装置
US11004089B2 (en) 2005-10-25 2021-05-11 Sony Interactive Entertainment LLC Associating media content files with advertisements
US10657538B2 (en) 2005-10-25 2020-05-19 Sony Interactive Entertainment LLC Resolution of advertising rules
US8676900B2 (en) 2005-10-25 2014-03-18 Sony Computer Entertainment America Llc Asynchronous advertising placement based on metadata
US20070118425A1 (en) 2005-10-25 2007-05-24 Podbridge, Inc. User device agent for asynchronous advertising in time and space shifted media network
WO2007073370A1 (en) * 2005-12-20 2007-06-28 Tte Technology, Inc. Decryption system and method for video data
US7515710B2 (en) 2006-03-14 2009-04-07 Divx, Inc. Federated digital rights management scheme including trusted systems
US20070223870A1 (en) * 2006-03-23 2007-09-27 Seagate Technology Llc Single board digital video system
CN103279874B (zh) 2006-05-05 2016-08-03 美国索尼电脑娱乐公司 广告旋转
US9679602B2 (en) 2006-06-14 2017-06-13 Seagate Technology Llc Disc drive circuitry swap
WO2008086313A1 (en) 2007-01-05 2008-07-17 Divx, Inc. Video distribution system including progressive playback
US9305590B2 (en) 2007-10-16 2016-04-05 Seagate Technology Llc Prevent data storage device circuitry swap
CN101861583B (zh) 2007-11-16 2014-06-04 索尼克Ip股份有限公司 用于多媒体文件的分级及简化索引结构
US8769558B2 (en) 2008-02-12 2014-07-01 Sony Computer Entertainment America Llc Discovery and analytics for episodic downloaded media
US8667272B2 (en) 2009-03-04 2014-03-04 Hong Kong Applied Science And Technology Research System and method for content distribution with broadcast encryption
US8468341B2 (en) * 2009-03-04 2013-06-18 Hong Kong Applied Science and Technology Research Institute Company Limited System and method for content distribution with broadcast encryption
US8763090B2 (en) 2009-08-11 2014-06-24 Sony Computer Entertainment America Llc Management of ancillary content delivery and presentation
EP2507995A4 (en) 2009-12-04 2014-07-09 Sonic Ip Inc SYSTEMS AND METHODS FOR TRANSPORTING ELEMENTARY BIT TRAIN CRYPTOGRAPHIC MATERIAL
GB2485142A (en) * 2010-10-27 2012-05-09 Nds Ltd Secure broadcast/multicast of media content
JP2011078111A (ja) * 2010-11-05 2011-04-14 Toshiba Corp 情報処理装置
JP5644467B2 (ja) * 2010-12-20 2014-12-24 ソニー株式会社 情報処理装置、および情報処理方法、並びにプログラム
US9247312B2 (en) 2011-01-05 2016-01-26 Sonic Ip, Inc. Systems and methods for encoding source media in matroska container files for adaptive bitrate streaming using hypertext transfer protocol
US9467708B2 (en) 2011-08-30 2016-10-11 Sonic Ip, Inc. Selection of resolutions for seamless resolution switching of multimedia content
US8787570B2 (en) 2011-08-31 2014-07-22 Sonic Ip, Inc. Systems and methods for automatically genenrating top level index files
US8909922B2 (en) 2011-09-01 2014-12-09 Sonic Ip, Inc. Systems and methods for playing back alternative streams of protected content protected using common cryptographic information
US9191457B2 (en) 2012-12-31 2015-11-17 Sonic Ip, Inc. Systems, methods, and media for controlling delivery of content
US10225298B2 (en) 2015-01-06 2019-03-05 Divx, Llc Systems and methods for encoding and sharing content between devices

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4281216A (en) * 1979-04-02 1981-07-28 Motorola Inc. Key management for encryption/decryption systems
US4336554A (en) * 1980-06-23 1982-06-22 Clarion Co., Ltd. Code signal blanking apparatus
EP0200310B1 (en) * 1985-05-01 1993-08-11 General Instrument Corporation Direct broadcast satellite signal transmission system
EP0267039A3 (en) * 1986-11-05 1990-04-04 Satellite Technology Services, Inc. Video system and method for controlled videotaping
US5029207A (en) * 1990-02-01 1991-07-02 Scientific-Atlanta, Inc. External security module for a television signal decoder
US5204900A (en) * 1991-03-04 1993-04-20 Pires H George Coding system for descrambling video
US5537473A (en) * 1991-07-08 1996-07-16 Amstrad Public Limited Company Video recorder system
US5581614A (en) * 1991-08-19 1996-12-03 Index Systems, Inc. Method for encrypting and embedding information in a video program
FI94008C (fi) * 1992-09-04 1995-06-26 Salon Televisiotehdas Oy Videosignaalin dekooderijärjestelmä
JP3729529B2 (ja) * 1994-10-28 2005-12-21 ソニー株式会社 デイジタル信号送受信システム
KR100332743B1 (ko) * 1994-11-26 2002-11-07 엘지전자주식회사 디지탈영상시스템의불법시청및복사방지방법및장치
US5878135A (en) * 1996-11-27 1999-03-02 Thomson Consumer Electronics, Inc. Decoding system for processing encrypted broadcast, cable or satellite video data

Also Published As

Publication number Publication date
US5878135A (en) 1999-03-02
CA2272921A1 (en) 1998-06-04
AU7402398A (en) 1998-06-22
KR20000057198A (ko) 2000-09-15
JP2010109996A (ja) 2010-05-13
KR100474209B1 (ko) 2005-03-08
WO1998024236A1 (en) 1998-06-04
JP4592833B2 (ja) 2010-12-08
CA2272921C (en) 2006-06-13
EP0941610A1 (en) 1999-09-15
TW376656B (en) 1999-12-11
ES2189001T3 (es) 2003-07-01
CN1168312C (zh) 2004-09-22
EP0941610B1 (en) 2003-01-02
BR9714318A (pt) 2000-02-08
DE69718199T2 (de) 2004-03-25
CN1238886A (zh) 1999-12-15
JP2001507177A (ja) 2001-05-29
DE69718199D1 (de) 2003-02-06
MY117019A (en) 2004-04-30

Similar Documents

Publication Publication Date Title
BR9714318B1 (pt) método de processamento de dados de vìdeo criptografados para geração de dados de programa decriptografados.
US6016348A (en) Decoding system and data format for processing and storing encrypted broadcast, cable or satellite video data
US5933500A (en) Adaptive decoding system for processing encrypted and non-encrypted broadcast, cable or satellite video data
EP2007137B1 (en) Packetized data formats for digital data storage media
EP0903036A1 (en) Processing of digital data and program guide information
WO1997046009A1 (en) Program specific information formation for digital data processing
KR20000016059A (ko) 암호화된 비디오 데이터 및 암호화되지 않은비디오 데이터를처리하는 적응 복호화 시스템

Legal Events

Date Code Title Description
B06A Patent application procedure suspended [chapter 6.1 patent gazette]
B09A Decision: intention to grant [chapter 9.1 patent gazette]
B16A Patent or certificate of addition of invention granted [chapter 16.1 patent gazette]

Free format text: PRAZO DE VALIDADE: 10 (DEZ) ANOS CONTADOS A PARTIR DE 28/06/2011, OBSERVADAS AS CONDICOES LEGAIS.

B21F Lapse acc. art. 78, item iv - on non-payment of the annual fees in time

Free format text: REFERENTE A 23A ANUIDADE.

B24J Lapse because of non-payment of annual fees (definitively: art 78 iv lpi, resolution 113/2013 art. 12)

Free format text: EM VIRTUDE DA EXTINCAO PUBLICADA NA RPI 2601 DE 10-11-2020 E CONSIDERANDO AUSENCIA DE MANIFESTACAO DENTRO DOS PRAZOS LEGAIS, INFORMO QUE CABE SER MANTIDA A EXTINCAO DA PATENTE E SEUS CERTIFICADOS, CONFORME O DISPOSTO NO ARTIGO 12, DA RESOLUCAO 113/2013.