BRPI9712007B1 - dispositivo eletrônico e processo para detectar violação de memória em um dispositivo eletrônico - Google Patents
dispositivo eletrônico e processo para detectar violação de memória em um dispositivo eletrônico Download PDFInfo
- Publication number
- BRPI9712007B1 BRPI9712007B1 BRPI9712007A BR9712007A BRPI9712007B1 BR PI9712007 B1 BRPI9712007 B1 BR PI9712007B1 BR PI9712007 A BRPI9712007 A BR PI9712007A BR 9712007 A BR9712007 A BR 9712007A BR PI9712007 B1 BRPI9712007 B1 BR PI9712007B1
- Authority
- BR
- Brazil
- Prior art keywords
- hash value
- electronic device
- memory
- hash
- audit
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/562—Static detection
- G06F21/565—Static detection by checking file integrity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
- H04L63/123—Applying verification of the received information received data contents, e.g. message integrity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3236—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
- H04L9/3239—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3271—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/10—Integrity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/12—Detection or prevention of fraud
- H04W12/126—Anti-theft arrangements, e.g. protection against subscriber identity module [SIM] cloning
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/80—Wireless
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0823—Network architectures or network communication protocols for network security for authentication of entities using certificates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/06—Authentication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/60—Context-dependent security
- H04W12/69—Identity-dependent
- H04W12/71—Hardware identity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W88/00—Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
- H04W88/02—Terminal devices
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Health & Medical Sciences (AREA)
- Virology (AREA)
- Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Power Engineering (AREA)
- Computing Systems (AREA)
- Mobile Radio Communication Systems (AREA)
- Storage Device Security (AREA)
- Telephone Function (AREA)
Abstract
"dispositivo eletrônico, processos para detectar violação da memória em um dispositivo eletrônico e para evitar o acesso não autorizado a um dispositivo eletrônico, e, sistemas para evitar o acesso não autorizado a um dispositivo eletrônico e para evitar acesso à memória" . processos e aparelhos para prevenir violação de memória em um aparelho eletrônico, tal como um telefone celular são apresentados. um dispositivo eletrônico tendo uma memória e um dispositivo processador contém lógica que é usada para efetuar um cálculo de comprovação unidirecional sobre o conteúdo da memória do dispositivo por intermédio do qual um valor de comprovação de auditoria, ou assinatura, do dito conteúdo é derivado. o valor de comprovação de auditoria é comparado com um valor de comprovação válido autenticado derivado do conteúdo de memória autêntico. uma diferença entre o valor de comprovação de auditoria e o valor de comprovação válido pode ser indicativo de violação da memória. de acordo com outro aspecto da invenção, o conteúdo de memória do dispositivo eletrônico pode ser atualizado por um dispositivo de transferência de dados que é autenticado antes de ser permitido acesso ao conteúdo da memória. a autenticação do dispositivo de transferência envolve o uso de um esquema de criptografação de chave pública/privada. quando o dispositivo de transferência de dados interconecta-se com um dispositivo eletrônico e solicita acesso à memória, um processo para autenticar o dispositivo de transferência de dados é iniciado.
Description
“DISPOSITIVO ELETRÔNICO E PROCESSO PARA DETECTAR VIOLAÇÃO DE MEMÓRIA EM UM DISPOSITIVO ELETRÔNICO”.
FUNDAMENTOS A invenção refere-se a um sistema para prevenir manipulação de memória eletrônica e mais especificamente, a processos e aparelhos para prevenir a manipulação desautorizada de conteúdo de memória convenientemente seguro em um aparelho eletrônico. A invenção aqui apresentada refere-se a qualquer aparelho eletrônico, o conteúdo da memória do qual deve ser mantido em uma condição segura ou de preferência inalterada. Uma exigência deste tipo pode ser requerida por razões de segurança, tal como prevenir a manipulação fraudulenta da memória de um telefone celular, ou para os fins de manter a integridade de operação do aparelho eletrônico em aplicações críticas tal como o controle de uma aeronave ou a operação de um instrumento médico. Conforme expostos e aqui descritos, aspectos típicos da invenção são definidos no contexto de um sistema e processo para preservar uma ou mais memórias eletrônicas dentro de um telefone celular. É também aqui descrito um sistema que permite o acesso a, e a manipulação de, uma ou mais memórias eletrônicas em um dispositivo eletrônico, pelo emprego de um dispositivo de transferência de dados que passa por um processo de autenticação antes de ser permitido a acessar uma memória eletrônica. O último sistema também é descrito no contexto de uma aplicação de telefone celular. Muito embora as concretizações típicas da invenção aqui apresentadas sejam descritas no contexto de uma memória de telefone celular segura e de um dispositivo para com segurança acessar e alterar o conteúdo da memória em um telefone celular, será facilmente apreciado por aqueles versados na técnica que sistemas de acordo com a invenção podem ser aplicados a qualquer sistema eletrônico dotado de uma ou mais memórias cujo conteúdo deva permanecer inalterado, ou cujas memórias somente devem ser acessadas por meios autorizados. Consequentemente, o âmbito da invenção não é proposto para ser limitado pelas concretizações típicas aqui expostas, porém mais exatamente pelas reivindicações aqui anexas e seus equivalentes.
Nos EUA, perdas devido à fraude de telefone celular foram projetadas em 600 milhões de dólares em 1995. Em resposta, fabricantes, provedores de serviço, a Comissão Federal de Comunicações (FCC) e grupos de associações industriais vem pesquisando um número de técnicas para combater a fraude em questão. Grande parte da fraude de telefonia celular realizada nos USA envolve alguma forma de manipulação de memória para alterar o número serial eletrônico (ESN) de um telefone celular que um telefone celular tem de fornecer para estabelecer comunicação. Consequentemente uma técnica de prevenção de fraude, sob consideração da FCC a ser adotada como norma, é exigir que os fabricantes de telefones celulares tomem inalterável todo código de microprocessadores e o ESN. Alguns fundamentos sobre as comunicações celulares básicas são fornecidos abaixo para auxiliar a ilustrar o ambiente operativo das telecomunicações celulares e problemas associados que são endereçados pelos sistemas incorporando a presente invenção.
Um layout simplificado de um sistema de comunicações celular é representado na figura 1. Telefones móveis M1-M10 comunicam-se com a parte fixa de uma rede comutada pública transmitindo sinais de raio para, e receber sinais de radio de, estações base celulares B1-B10. As estações base celulares B1-B10, por sua vez, são conectadas com a rede comutada pública via um Centro de Comutação Móvel (MSC). Cada estação base B1-B10 transmite sinais dentro de uma área correspondente, ou “célula” Cl-CIO. Como representado na figura 1, um conjunto idealizado de estações base é organizado de forma que as células substancialmente cubram uma área na qual usualmente ocorre a comunicação de telefonia móvel (p.ex. uma área metropolitana), com um grau mínimo de superposição.
Quando um usuário ativa um telefone móvel dentro de uma célula, o telefone móvel transmite um sinal indicando a presença do telefone móvel à estação base da célula. O telefone móvel transmite o sinal, que pode incluir o seu ESN, em um canal estabelecido designado que é continuamente monitorado por cada estação base. Quando a estação base recebe o sinal do telefone móvel, ela registra a presença do telefone móvel dentro da célula. Este processo pode ser repetido periodicamente para que o telefone móvel seja apropriadamente registrado no caso dele se deslocar para o interior de outra célula.
Quando um número de telefone celular é discado, a central de uma companhia telefônica identifica o número como um telefone móvel e encaminha a chamada para o MSC. O MSC emite uma mensagem de radio chamada para determinadas estações base baseada sobre o úmero de telefone móvel discado e informações de registro atuais. Uma ou mais das estações base transmite uma radio chamada no seu canal preestabelecido. O telefone móvel discado reconhece sua identificação no canal preestabelecido, e responde à radio chamada da estação base. O telefone móvel também segue uma instrução para sintonizar um canal de voz alocado e a seguir inicia o tom de chamada. Quando um telefone móvel termina uma comunicação, um tom de sinalização é transmitido para a estação base, e ambos os lados liberam o canal de voz.
Na operação supradescrita, os telefones móveis não são conectados permanentemente com uma rede fixa, porém em vez disso comunicam-se através de uma denominada interface de ar com uma estação base. Isto naturalmente proporciona a flexibilidade de sistemas de comunicação celular, uma vez que um usuário pode facilmente transportar um telefone móvel sem a restrição de estar fisicamente ligado com um sistema de comunicação. Esta mesma característica, todavia, também cria dificuldades com respeito à segurança das informações transmitidas através dos sistemas de telefone celular.
Por exemplo, nos sistemas de telefonia alâmbrica, uma central telefônica pode identificar um assinante específico a ser taxado pelo uso de um aparelho telefônico pela linha de comunicação com a qual está fisicamente ligado. Assim, o uso fraudulento da conta de um assinante tipicamente requer que uma conexão física seja estabelecida com a linha do assinante. Isto apresenta um risco de descoberta para um usuário fraudulento em potencial.
Os sistemas de telecomunicação celulares, por outro lado, não apresentam o dito problema de conexão para o usuário fraudulento em potencial uma vez que estes sistemas comunicam-se através de uma interface radioelétrica. Na ausência de esquemas de proteção, os usuários fraudulentos podem utilizar a conta de outro assinante acessando o número serial eletrônico do assinante (ESN) que é transmitido pelo telefone móvel para a rede em várias ocasiões para estabelecer e manter comunicações.
No estabelecimento de uma conexão celular padrão, dois códigos de identificação são transmitidos por um telefone móvel para o sistema. Estes são o Número de Identificação Móvel (MIN) e o ESN. O MIN identifica um assinante, ao passo que o ESN identifica o hardware efetivo sendo usado pelo assinante. Consequentemente, é previsto que o MIN correspondente a um ESN específico pode, devido a assinantes adquirirem novo equipamento, mudar com o passar do tempo. O MIN é um número binário de 34-bit derivado de um número de telefone de assinante de 10 dígitos, enquanto o ESN é um número binário de 32-bit que singularmente identifica um telefone móvel. O ESN é tipicamente definido pelo fabricante do telefone móvel.
Um processo de autenticação convencional utilizado no estabelecimento de comunicação, por exemplo, no AMPS (Sistema Avançado de Telefonia Móvel) é ilustrado pelo fluxograma representado na figura 2. De acordo com este processo, uma estação base recebe tanto um ESN como um MIN do telefone móvel no bloco 200. Estes códigos de identificação são designados ESNm e MINm para indicar que eles são recebidos do telefone móvel. A seguir, no bloco 202 a estação base recupera um ESNsys que corresponde MINm de uma memória de sistema. O ESNsys é então comparado com ESNm no bloco 204. Se os dois números seriais coincidirem, o fluxo procede para o bloco 206 e acesso ao sistema é permitido. Caso contrário, o acesso ao sistema é negado no bloco 208.
Uma deficiência para este sistema é ser relativamente simples para um usuário fraudulento montar as combinações MIN/ESN válidas pela escuta desautorizada na interface radioelétrica ou de outras fontes. Uma vez que os acessos de acordo com este sistema convencional são presumidamente válidos se os MIN e ESN recebidos do telefone móvel corresponderem com aqueles armazenados na memória do sistema, todas as informações necessárias para o acesso fraudulento podem ser obtidas pela escuta eletrônica ilegal.
Outras técnicas foram propostas para evitar uso fraudulento. Por exemplo, a Patente U.S. 5.386.486 que descreve um processo de registro de um número de identificação em um terminal de comunicação pessoal com um carregador de serviço. A EP 0 583 100 Al descreve um sistema de ajuste de módulo de assinatura numérico para um conjunto de telefone portátil no qual um ajuste ilegal de um módulo de assinatura numérico no telefone portátil é evitado.
Nos sistemas operando sob o padrão GSM Europeu (Sistema Global para Comunicação Móvel), sob o padrão TIA/EIA/IS-136 Americano e os sistemas de radio comunicação padrão Celular Digital Pessoal Japonês, a fraude resultante da escuta eletrônica desautorizada é prevenida utilizando um processo de resposta à interrogação. De acordo com o processo de resposta à interrogação, cada telefone móvel está associado com uma chave secreta única que é armazenada tanto no telefone móvel como em uma base de dados na rede. Um algoritmo, que é único para o sistema, é armazenado em cada telefone móvel e em nós de rede desejados. Quando uma chamada é estabelecida, autenticação é solicitada por intermédio da qual a rede emite uma interrogação (número aleatório) para o telefone móvel. Baseado sobre a interrogação recebida e a chave secreta armazenada, o telefone móvel calcula uma resposta utilizando um algoritmo e transmite a resposta para a rede. De modo simultâneo, a rede calcula uma resposta “prevista” baseada sobre a mesma interrogação e chave secreta armazenada na rede. A rede então recebe a resposta calculada do telefone móvel e compara a resposta calculada do telefone móvel com a resposta calculada da rede. Se ocorrer falta de coincidência, ações apropriadas terão lugar, p.ex. acesso é negado ou um sinalizador de advertência é posicionado. Um processo para realizar um teste de autenticação entre uma estação base e um telefone móvel em um sistema de radio móvel é definido na patente US n° 5.282.250 a P. Dent & outros.
Em um sistema analógico convencional, tal como AMPS, a maioria da fraude é perpetrada pelos usuários fraudulentos que “clonam” assinantes válidos adquirindo pares MIN/ESN válidos e utilizar os pares para reprogramar um telefone celular. Nos sistemas de clonagem mais sofisticados, o software de um telefone celular é reprogramado para que possa utilizar vários pares de MIN/ESN em uma prática denominada “saltar”. Um telefone celular programado com uma rotina de saltar efetua uma rolagem aleatória e seleciona um par MIN/ESN para iniciar uma chamada.
Quando a fraude é identificada pelo provedor de serviço ou assinante, os pares MIN/ESN são invalidados. Quando um par MIN/ESN inválido é encontrado ao tentar estabelecer uma chamada, a rotina de saltar simplesmente cancela aquele par MIN/ESN e continua a rolagem até um par MIN/ESN válido ser encontrado. Após todos os pares MIN/ESN programados no telefone celular serem invalidados, o usuário do telefone tipicamente retoma ao clonador para ter um novo conjunto de pares MIN/ESN programados no telefone celular. A maioria das fraudes celulares envolve algum grau de manipulação de memória. Isto é descrito com referência à figura 3 que representa um diagrama em blocos de um sistema de memória e processador de telefone celular convencional. Um controlador 300 comunica-se com uma ROM ou memória flash de programa 320, uma EEPROM 310, e uma memória de acesso aleatório (RAM) 330, utilizando um bus de memória 308. A memória de programa 320 é uma memória de leitura/gravação não volátil que é usada para armazenar a maioria de códigos usados para operação genérica do telefone celular. A EEPROM 310 é usada para armazenar o par MIN/ESN 314 e 316, e informações de perfil de usuário 312 (p.ex., números de discagem rápida) e a RAM é usada para a memória bloco de notas de leitura/gravação. Os clonadores reconhecidamente monitoram a troca de mensagens entre as memórias e o controlador 300 para recolher informações que são usadas para ultrapassar ou modificar informações armazenadas na memória flash 320 ou na EEPROM 310. O processo mais comum de fraude telefônica tem sido o uso ilegal de comandos de teste, cujos comandos são propostos para prestação de manutenção e reparos de telefones, para troca do ESN. Todavia, os telefones mais recentemente produzidos são resistentes à dita violação e efetivamente eliminaram esta via de ataque. Consequentemente, os clonadores tem recorrido a modos de ataque mais sofisticados.
Uma técnica deste tipo envolve remover a EEPROM 310 original contendo o ESN 314 e efetuar sua troca. Após sua remoção a EEPROM é estudada para decifrar o seu conteúdo. O conteúdo decifrado é então usado para programar uma EEPROM substitua com um par ESN/MIN produto de apropriação indébita da conta de um usuário válido. Esta técnica pode ser atraente para o clonador se ele ou ela somente quer trocar um ESN de cada vez. Porém a técnica é laboriosa e clonadores pouco habilitados podem danificar circuitos impressos caso não forem extremamente cuidadosos.
Um grande avanço na sofisticação de clonagem envolve analisar o código de programa do microprocessador de um telefone e regravar uma ou mais seções do código para transmitir uma identidade fraudulenta (par ESN/MIN) para uma estação base celular. Isto freqüentemente envolve a engenharia reversa de partes da construção do hardware do telefone e requer uma compreensão significativa da construção do software embutido. . A óbvia vantagem deste processo, todavia, é que uma vez completada a modificação o telefone pode ser reprogramado com uma nova identidade tantas vezes quanto o desejado.
Os ataques mais sofisticados combinam alterações do código do microprocessador do telefone celular como descrito acima, em combinação com modificação do hardware. Um exemplo desta técnica utilizada uma denominada “memória de sombra” para evitar a detecção por rotinas de validação de memória convencionais que somente executam durante o processo de inicialização quando o telefone celular é ativado pela primeira vez. O processo de inicialização é realizado consoante uma pequena parte de código de partida 304 contida no controlador 300 (ver a figura 3). O processo de inicialização configura o telefone celular em uma condição em- serviço e estabelece um contador de programa no microprocessador 301 em uma posição apropriada na memória flash 320. Quando o processo é completado, o controlador 300 pode iluminar um LED 318 (ou outro sinal equivalente) indicando a um usuário que o telefone está em serviço. Um clonador pode monitorar uma conexão 306 entre o controlador 300 e o LED 318 para subverter a execução de um código operativo normal na memória flash 320 como descrito em maior detalhe a seguir: A memória flash 320 contida em um telefone celular moderno típico tem uma capacidade endereçável de 512K. Um clonador pode remover a memória flash 320, e substituir a mesma por uma memória de sombra de 1024 K 322 após copiar o conteúdo da memória flash original 320 em os primeiros 512K da memória de sombra de 1024K 322. Durante a inicialização, quaisquer acessos à memória de programa são proveitosamente direcionados nos primeiros 512K da memória flash 320. O clonador pode então monitorar um sinal disponível no telefone que indica o processo de inicialização estar completado (tal como o sinal LED 306) de maneira a comutar todos os acessos à memória de programa futuros à memória de sombra 322. Subseqüentemente, o telefone celular opera de acordo com as instruções encontradas na memória de sombra 322 cuja memória pode ser programada para conter o código de rotina de saltar e correspondentes pares MIN/ESN. Várias tentativas têm sido feitas no sentido de evitar violação de memória. Por exemplo, a WO 91/09484 descreve uma técnica de segurança na qual o acesso a áreas de memória em um rádio telefone móvel é permitido somente por instruções de CPU trazidas da ROM. A FR 2 681 965 descreve um sistema para proteger uma memória de ser escrita na ocorrência de certos eventos. Outros sistemas para evitar uso fraudulento e/ou violação são descritos nas Patentes 5.046.082 que descreve um sistema de acesso remoto para telefones celulares que impede acesso não autorizado e violação com programação de telefone celular e 5.442.645 que descreve a checagem da integridade de um programa ou dados em que uma assinatura calculada pelos circuitos de processamento de um objeto portátil é comprada a uma assinatura de mensagem original.
Devido à maioria da fraude celular ser baseada em determinado grau de manipulação de memória, a Comissão Federal de Comunicações (FCCO está atualmente considerando uma solução dirigida a este aspecto de fraude de telefonia celular. A solução e incorporada em uma norma proposta pela FCC designada Regra § 22.219. Conforme atualmente redigida, § 22.919 proíbe que um software operativo de telefone móvel seja alterável; exige que um ESN seja definido pela fábrica e impossível de ser alterado, transferido, removido ou manipulado de qualquer maneira; e requer que o transmissor móvel se tome inoperante se qualquer envolvido, inclusive um fabricante, tentar remover, violar ou alterar o ESN, a lógica de sistema, ou suporte lógico inalterável do telefone celular.
De um ponto de vista de consumidor, a presente capacidade de um fabricante ou de seus representantes de serviços autorizados pela fábrica a programarem telefones celulares facilita a troca de telefones celulares que não estejam funcionando corretamente. Por exemplo, se o telefone celular de um assinante não está funcionando corretamente, o assinante pode obter uma nova unidade de um representante autorizado da fábrica e ter o mesmo programado para conter a mesma “personalidade eletrônica” da unidade antiga. A personalidade eletrônica de um telefone celular inclui não somente o ESN, porém também o perfil do usuário e uma quantidade substancial de informações programada na unidade pelo assinante tais como números de telefone pessoais e/ou comerciais. Programas de reparos/substituição e a tecnologia para efetuar rápidas e fáceis mudanças de ESN e outras alterações de memória em telefones celulares foram desenvolvidos sob a insistência de provedores de serviço celular que não desejam que seus assinantes sejam transtornados por terminais defeituosos.
Sob a regra § 22.919 da FCC um assinante na situação descrita acima ainda estará capacitado a obter uma nova unidade móvel caso sua unidade antiga tome-se defeituosa. Todavia, devido a um novo ESN fixo ser associado com a nova unidade, a nova informação de ESN terá de ser comunicada ao portador de celular que terá de programá-la em sua base de dados. Isto pode resultar em um prolongado período de tempo durante o qual o assinante não contará com serviços. O assinante também terá de reprogramar seu telefone celular com quaisquer números de telefone pessoais ou comerciais. Um problema muito mais significativo com a § 22.919 é o impacto contrário que terá sobre a faculdade dos prestadores de serviço celular munir seus assinantes de atualizações de sistema pela programação ou reprogramação de seus telefones celulares. O impacto prático que o § 22.919 pode ter sobre a faculdade da indústria celular atualizar sistemas é demonstrado como segue. O uso de um canal de controle digital como especificado, por exemplo, no padrão TIA/EIA/IS-136, habilita os portadores de celulares a oferecer novos serviços estendidos tais como serviço de mensagens curtas. Se os portadores, fabricantes ou agentes autorizados são autorizados a introduzir mudanças no software e/ou firmware de um telefone celular, tais serviços podem ser tomados disponíveis aos assinantes rapidamente e eficientemente através de atualizações de software dos terminais. Sob o § 22.919 (na sua forma atual), nem um fabricante, representante de serviço autorizado de um fabricante, nem um portador de celular estará capacitado a efetuar as ditas mudanças de software. A única maneira que um portador estará a capacitado a oferecer a um assinante uma otimização de sistema será solicitar ao assinante a aquisição de um novo telefone celular.
Para reduzir o impacto do § 22.919 sobre os assinantes assim como sobre a comunidade de fabricantes, a FCC declarou que a regra seria aplicável a telefones celulares para os quais pedidos por aceitação do tipo inicial que foram depositadas após 1 de janeiro de 1995. Na verdade, a FCC classificou os 20 milhões de telefones celulares atualmente em operação assim como milhões de telefones celulares colocados em serviço após 1 de janeiro de 1995 baseada sobre pedidos por aceitação de tipo depositados anteriormente a 1 de janeiro de 1995. O fato da existência de tantas unidades celulares já no mercado, as informações eletrônicas dos quais podem ser manipuladas para fins ilegítimos sugere que o § 22.919 terá muito pouco impacto sobre o problema da fraude. Aquelas entidades que cometem fraude alterando ilegalmente ESNs podem continuar a assim proceder pela utilização dos milhões de terminais que não estão sujeitos às restrições do § 22.919.
Conforme pode ser apreciado pelo precedentemente exposto, o fornecimento de um telefone celular dotado de uma memória segura (ou preservada contra fraude) é altamente desejável. Atualmente parece não haver soluções para recondicionar os telefones celulares para tomá-los resistentes à violação. Além disso, parece inexistirem processos ou aparelhos para proporcionar atualizações para memórias de aparelhos eletrônicos de tal maneira que somente o acesso autorizado seja assegurado.
SUMÁRIO
Estas e outras deficiências e limitações de processos convencionais e soluções propostas para prevenção de violação da memória de telefones celulares, e violação de memórias eletrônicas em geral, são superados pela presente invenção, concretizações típicas da qual protegem o conteúdo de memória eletrônica contra acesso e manipulação desautorizados.
De acordo com um aspecto da invenção, a segurança é obtida periodicamente auditando o conteúdo da memória eletrônica em um aparelho eletrônico para assegurar que o conteúdo não tenha sido objeto de violação. A auditoria envolve a execução de um cálculo de hash ou verificação sobre o conteúdo selecionado da memória eletrônica para derivar um valor de hash de auditoria, assinatura de auditoria, do dito conteúdo. O valor de hash de auditoria é comparado com um valor de hash válido derivado previamente de um conteúdo de memória autêntico. O valor de hash válido de preferência é armazenado em uma forma criptografada dentro de uma memória eletrônica e decifrado somente para fins de comparação. Uma disparidade entre o valor de hash de auditoria e o valor de hash válido pode indicar a violação da memória, em conseqüência um aparelho eletrônico contendo a memória eletrônica pode ser tomado inoperante, ou uma indicação de advertência (aviso) pode ser feita.
De acordo com outro aspecto da invenção, o conteúdo de memória eletrônica, tal como aquele contido em uma memória de telefone celular (inclusive o ESN do telefone celular), pode ser atualizado por um dispositivo transferidor de dados que é autenticado antes de ser permitido acesso ao conteúdo da memória. A autenticação do dispositivo de transferência de dados envolve o uso de um esquema de autenticação com chave pública/privada. Quando o dispositivo de transferência de dados interconecta-se com o aparelho eletrônico e solicita acesso, o aparelho eletrônico inicia um processo para autenticar o dispositivo de transferência de dados. Uma chave pública é mantida dentro do aparelho eletrônico que é usada para decifrar uma mensagem criptografada ou ‘assinada’ com uma chave privada secreta mantida dentro do dispositivo de transferência de dados. Mais especificamente quando o dispositivo de transferência de dados solicita programar o aparelho eletrônico, um processo de autenticação é iniciado. O aparelho eletrônico responde emitindo uma mensagem de interrogação de volta para o dispositivo de transferência de dados. A mensagem de interrogação é assinada com uma assinatura digital utilizando a chave privada mantida no dispositivo de transferência de dados. A mensagem de interrogação assinada é emitida de volta para o dispositivo eletrônico que a autentica utilizando a chave pública. Uma vez autenticado, o dispositivo de transferência de dados é permitido acesso a comandos e faculdades privilegiadas no aparelho eletrônico.
Seguindo-se a qualquer reprogramação de uma memória eletrônica, o aparelho eletrônico efetua um cálculo de verificação para derivar um novo valor de hash (válido) sobre o conteúdo de memória modificado. O novo valor de hash é retomado ao dispositivo de transferência de dados para uma assinatura digital pela chave privada. O novo valor de hash assinado é retomado ao aparelho eletrônico para armazenamento. Quando o aparelho eletrônico efetua uma subseqüente auditoria da memória, o valor de hash de auditoria resultante é comparado com o novo valor de hash válido.
DESCRIÇÃO SUCINTA DOS DESENHOS
Os precedentes e demais objetivos, aspectos característicos e vantagens da presente invenção serão mais facilmente compreendidos pela leitura da presente descrição em conjunção com os desenhos, nos quais:- A figura 1 representa um layout idealizado de um sistema de comunicações celular; A figura 2 representa um fluxograma ilustrando um processo de autenticação celular convencional para estabelecer uma chamada celular; A figura 3 representa um sistema de processador e memória de telefone celular convencional; A figura 4 representa um sistema de processador e memória de um telefone celular de acordo com uma concretização típica da invenção; A figura 5 representa um fluxograma ilustrando um processo de inicialização de um telefone celular típico de acordo com uma concretização da invenção; A figura 6 representa um fluxograma ilustrando um processo de validação de memória periódico típico de acordo com a invenção; A figura 7 representa um dispositivo de transferência de dados típico de acordo com uma concretização da invenção; A figura 8 representa um fluxograma ilustrando um processo típico para autenticar o dispositivo de transferência de dados de acordo com uma concretização da invenção; A figura 9 representa um fluxograma ilustrando um processo típico para introduzir um ESN inicial em uma memória eletrônica de acordo com uma concretização da invenção; A figura 10 representa um fluxograma ilustrando um processo típico para reprogramar um ESN estabelecido de acordo com a invenção; e A figura 11 representa um sistema de memória protegida de acordo com uma concretização típica da invenção; A figura 12 representa um programador de telefone celular típico de acordo com uma concretização da invenção;
DESCRIÇÃO DETALHADA
Uma memória eletrônica típica envolvendo aparelhos e processos de acordo com a invenção é exposta abaixo no contexto de uma aplicação em telefone celular. Os exemplos descritos abaixo são meramente fornecidos para ilustrar uma aplicação ideal incorporando a invenção.
Reportando-se à figura 4, um controlador 400 controla a operação de um telefone celular (ver, p.ex., a referência 1204 na figura 12). O controlador 400 opera em conjunção com uma memória flash de programa 420, uma memória de leitura somente programável eletronicamente rasurável (EEPROM) 410, e uma memória de acesso aleatório (RAM) 408. O controlador 400 inclui um microprocessador 402 e uma memória de leitura somente interna (IROM) 403. A IROM 403 contém o código de partida 404, o código de verificação 405, o código de autenticação 409, e uma chave de criptografia pública 406. O controlador 400 também contém uma memória de acesso aleatório estática protegida (PSRAM) 407, um controlador de interrupção 421, e temporizadores baseados em hardware 401 para iniciar cálculos de hash periódicos pelo microprocessador 402 sobre o conteúdo de memória selecionado. A EEPROM 410 inclui dados de perfil de usuário 412, um ESN 414, um MIN 416, e um par de valor de hash válido assinado/não assinado 418. O código de instrução envolvido com a operação geral do telefone celular está contido na memória flash de programa 420. A memória RAM 408 é usada como uma memória de bloco de notas para operações que são parte do processamento de chamada de telefone celular normal. As operações envolvendo dados sensíveis, cálculos de valor de hash e processos de autenticação de preferência são executados em conjunção com a PSRAM 407. O controlador 400 comunica-se com a memória flash de programa 420, a RAM 408 e a EEPROM 410 via o bus de memória 424.
Um processo para ativação de telefone e validação de memória para o sistema representado na figura 4, de acordo com uma concretização típica da invenção, é ilustrado na figura 5. Após o telefone celular ser ativado, o código de partida 404 dentro da IROM 403 é executado pelo microprocessador 402 para inicializar o controlador (bloco 500). O código de hash 405 contido na IROM 403 é então rodado para efetuar um cálculo de valor de hash de auditoria sobre o conteúdo selecionado da memória flash de programa 420 e o valor ESN 414 armazenado na EEPROM 410 (bloco 502). O controlador então autentica o par de valor de hash válido assinado 418 armazenado na EEPROM 410 (bloco 504). Isto pode envolver autenticar o valor de hash válido assinado processando o mesmo com uma chave pública 406 e a seguir comparar o resultado com o valor de hash não assinado. O valor de hash autenticado é então armazenado na PSRAM 407 (bloco 506). O valor de hash de auditoria derivado no bloco 5502 é então comparado com o valor de hash autenticado derivado no bloco 504 (bloco 508). Se os dois valores coincidirem, um contador de programa de processador é introduzido em uma posição apropriada na memória flash 420, e um processo de cálculo de hash periódico é habilitado (bloco 510) após o qual o telefone celular inicia a operação normal (bloco 512). Se os valores de hash não coincidirem no bloco 508 o sistema é colocado em um laço infinito (bloco 514) ou é de outra maneira desabilitado. O processo precedente previne que um clonador substitua quer um programa modificado na memória flash quer um ESN modificado na EEPROM 410, pois tal procedimento causaria um desencontro do valor de hash desse modo tomando o telefone inoperante.
Para prevenir que uma memória de sombra 422 venha ser utilizada em substituição à memória flash válida periódica 420 em seguida à iniciação de uma operação normal, é preferível efetuar processamento de valor de hash periódico. Durante a operação de telefone normal o cálculo do valor de hash periódico pode ocorrer em resposta à expiração de um temporizador, ou em resposta a outros eventos do sistema. Na concretização típica representada na figura 4, um cálculo de hash periódico é iniciado em resposta à expiração de um temporizador 401 baseado em hardware que causa a geração de uma interrupção não mascarável (NMI). Uma NMI é uma interrupção orientada por hardware que não pode ser “mascarada” por processos de software. Por isso, um clonador não pode configurar código de sombra que seja projetado para ignorar uma NMI. Uma interrupção regular é também uma interrupção de hardware que tem de competir com outras interrupções regulares provenientes de eventos de telefone celular normais para obter acesso aos recursos do micro processador. Uma interrupção regular é confirmada e processada quando se toma a interrupção de prioridade mais alta solicitando serviço.
Uma vez que o cálculo de valor de hash completo pode tomar mais tempo do que pode ser tolerado pela operação de telefone normal, é preferível proporcionar uma faculdade para realizar o processo numa base parcelada em vários segmentos distribuídos através de um período de tempo (p.ex. de alguns segundos). De acordo com outro aspecto de uma concretização preferencial, os temporizadores baseados em hardware invocam um processo em duas etapas para realizar um segmento do cálculo de valor de hash. Primeiramente, uma interrupção não mascarável (NMI) leva o microprocessador a imediatamente recuperar o conteúdo de uma posição de memória flash ou EEPROM seguinte projetada para inclusão no cálculo de hash periódico e armazenar o mesmo na PSRAM. A NMI de preferência é de uma variedade de interrupção curta, de prioridade máxima, que ocasiona efeito mínimo sobre as tarefas do microprocessador que podem estar ativas quando o NMI ocorre. Isto assegura que não possam ser tomadas quaisquer ações pelo software clone para evitar a detecção pelo cálculo de hash. Uma segunda interrupção padrão de prioridade mais baixa também é gerada pelos temporizadores baseados em hardware 401 que solicita serviço para completar o segmento atual do cálculo de valor de hash baseado sobre o byte de memória previamente capturado pela rotina NMI. Esta tarefa pode ser preterida, conforme requerido por tarefas de processamento de chamada normais, por um tempo máximo predefinido (T) antes do temporizador de hardware expirar e desabilitar o telefone. O tempo máximo (T) é selecionado para ser adequado para qualquer processamento de chamada legítimo a ser completado, o segmento de cálculo de hash a ser completado e o temporizador de hardware a ser restaurado ao início de seu ciclo de contagem regressiva antes de expirar. A estratégia de utilizar dois tipos de interrupções para periodicamente completar um segmento do cálculo de valor de hash evita qualquer degradação em resposta do sistema enquanto assegurando que o teste de segurança não possa ser ultrapassado por software clone residente na memória flash de sombra.
Um fluxograma representando um processo de cálculo de valor de hash periódico típico de acordo com a invenção é ilustrado na figura 6. Reportando-se à figura, tanto um NMI como uma interrupção regular é gerado no bloco 604 quando o contador TI no temporizador de hardware 401 expira (bloco 602). Uma vez que o NMI adquira controle do microprocessador (bloco 604), o sistema desabilita ou coloca em fila interrupções regulares por um breve período de tempo durante o qual o byte seguinte na memória flash ou EEPROM requerido para o cálculo de hash é copiado na PSRAM (bloco 606). O controle é então retomado à tarefa que sendo executada quando o NMI ocorreu (bloco 608). Sob condições normais, dentro de um curto período de tempo, a interrupção normal do temporizador baseado em hardware 401 também é atendida (bloco 610) e um segmento do cálculo de hash é completado baseado sobre o byte de memória previamente armazenado na PSRAM (bloco 616). Se o cálculo de valor de hash ainda não está completo, os temporizadores baseados em hardware (Tl & T2) 401 são restaurados aos seus valores iniciais (bloco 624) e a operação de telefone normal prossegue (bloco 600) até a expiração seguinte do temporizador Tl. Se o temporizador T2 vir a expirar (bloco 612) antes da interrupção regular ser atendida (bloco 610) o telefone é desabilitado (bloco 614). A expiração nominal do temporizador T2 (salvo se a interrupção regular é corretamente atendida) previne que um clonador desabilite o cálculo de hash periódico.
Este cálculo por tarefa periódico do valor de hash continua até o cálculo de valor de hash de auditoria ser completado (bloco 618). O valor de hash previamente autenticado é então buscado da PSRAM e comparado com o valor de hash de auditoria (bloco 620). Se houver uma coincidência, os temporizadores baseados em hardware 401 são reposicionados (bloco 624) e o telefone continua a operar normalmente (bloco 600). Se houver uma falta de coincidência, o sistema é desabilitado (bloco 622), p.ex. colocando o microprocessador 402 em uma condição suspensa. O conteúdo selecionado da memória de telefone celular através do qual o cálculo de hash é efetuado de preferência inclui o conteúdo da memória flash 420 e o ESN dentro da EEPROM 414. Isto previne que um clonador remova fisicamente ou modifique quer a memória flash quer a EEPROM e substitua as mesmas com um dispositivo reprogramado contendo um ESN e/ou código de programa modificado para fraudar o portador do celular. É preferível que o conteúdo de memória selecionado e o cálculo de valor de hash usados tomem o telefone inoperante por modificação de mesmo um bit de memória incluído no cálculo de valor de hash.
De acordo com outro aspecto da invenção, um telefone celular pode ser programado de uma maneira segura utilizando um dispositivo de transferência de dados. Um dispositivo de transferência de dados típico de acordo com a invenção é mostrado na figura 7. Os numerais de referência do controlador 400, seu conteúdo, e memórias associadas são idênticos às referências da figura 4. O dispositivo de transferência de dados típico 750 inclui um microprocessador seguro 752, que contém uma chave de criptografia privada 754 que corresponde a uma chave de criptografia pública 406 na IROM 403 no controlador 400. O microprocessador seguro 752 comunica-se com o controlador de telefone celular 400 via uma interface 758. A interface 758 pode ser uma conexão serial alâmbrica, tal como um enlace RS-232, uma interface infravermelha sem fio, ou uma interface RF, tal como a antena principal de um telefone celular (não mostrado), ou outra antena dentro do telefone celular. O acesso à memória do telefone celular pelo dispositivo de transferência de dados 750 é permitido somente após um processo de autenticação rigoroso ser completado. Mais especificamente, o controlador 400 (e componentes de memória associados) pode ser acessado para o fim de transferir dados somente após o dispositivo de transferência de dados 750 passar por um processo de interrogação para assegurar sua autenticidade. A figura 8 ilustra um processo típico para autenticar o dispositivo de transferência de dados 750 de acordo com uma concretização típica da invenção. Como uma primeira etapa (bloco 800), o telefone é colocado em uma condição operativa de preferência usando um processo preventivo de fraude previamente descrito com respeito à figura 5. Após uma interconexão ser estabelecida, o processador seguro 752 emite uma mensagem de solicitação de programação para o controlador 400 juntamente com um número aleatório (Randl) gerado pelo microprocessador seguro 752 (bloco 802). Em resposta, o controlador 400 emite um código de interrogação de número aleatório (Rand2) para o microprocessador seguro 752 (bloco 804). O microprocessador seguro 752 então gera uma resposta à interrogação baseado sobre Randl, Rand2, e a chave privada 754 (bloco 806). A resposta à interrogação é então retomada ao controlador 400 (bloco 808). A resposta à interrogação é processada pelo controlador 400 utilizando Randl, Rand2, e a chave pública 406 (bloco 810). A resposta à interrogação processada é então autenticada comparando o seu valor com Rand2 (bloco 812). Se a resposta à interrogação decifrar corretamente (p.ex. Rand2), a autenticidade de transferência de dados é verificada e o telefone entra em um modo de programação (bloco 814). Subseqüentemente, o dispositivo de transferência de dados 750 pode acessar as várias memórias no telefone celular e/ou transferir novo conteúdo de memória flash 420.
Se a resposta à interrogação não é válida, uma contagem de falha é incrementada (bloco 816). A contagem de falha é testada para ver se um número predeterminado (maxcount) foi atingido (bloco 818). A contagem de falha leva em consideração o fato de que o dispositivo de transferência de dados 750 pode estar se comunicando com o controlador 400 através de um meio ruidoso. Quaisquer erros de transmissão resultantes podem resultar em uma falha de autenticação. Assim, é preferível munir o dispositivo transferidor de dados 750 de mais de uma chance para colocar o telefone celular em um modo de programação. Em uma concretização típica da invenção, uma contagem máxima (maxcount) de cinqüenta foi determinada ser apropriada. Se o número predeterminado não tiver sido alcançado, uma mensagem é emitida para o dispositivo transferidor de dados 750 indicando que ocorreu uma pane de autenticação (bloco 822). Ao receber uma indicação deste tipo, o processo de autenticação é reiniciado no bloco 802. Se o número predeterminado de tentativas tiver sido atingido, o telefone é colocado em uma condição inoperante e uma mensagem pode ser exibida indicando a um usuário que o telefone tem de ser retomado para receber serviços autorizados.
Após o dispositivo transferidor de dados 750 tiver completado qualquer reprogramação de ESN ou transferência para a memória flash 420, o controlador 400 dentro do telefone inicia um novo cálculo de hash que inclui, por exemplo, o conteúdo revisto da memória flash 420 e o ESN 414. O valor de hash resultante é emitido para o dispositivo transferidor de dados 750 para uma assinatura digital utilizando a chave privada 754. O valor de hash assinado é então retomado ao controlador 400 para armazenamento na EEPROM 410, juntamente com uma versão não assinada do mesmo valor de hash. O ESN pode ser reprogramado de acordo com a invenção, porém por razões de segurança, a programação do ESN de preferência é realizada ao nível da fábrica, mais exatamente do que por representantes autorizados da fábrica. A programação de um ESN pode ocorrer em duas situações: programação inicial de ESN durante a fabricação, e reprogramação de um ESN existente. Um ESN inicial pode ser programado utilizando um dispositivo transferidor de dados similar aquele da figura 9.
Como uma primeira etapa (bloco 900), o telefone é colocado em uma condição operativa (ver a figura 5). Em seguida ao estabelecimento de uma interconexão com o telefone, o processador seguro 752 emite uma mensagem de solicitação de programar ESN para o controlador 400 juntamente com um número aleatório (RAND1) (bloco 902). O controlador 400 realiza um teste para determinar se o ESN dentro do telefone é todo de zeros que é sempre o caso para um telefone recém-fabricado (bloco 904). Se o ESN não é todo de zeros, a solicitação de modo de programar ESN é negada (bloco 906). Se o ESN é todo de zeros, um processo de interrogação-resposta substancialmente similar aquele definido nas etapas 804 a 820 da figura 8 é iniciado (ver o bloco 908). Após autenticação proveitosa do dispositivo transferidor de dados 750, um novo ESN pode ser transferido da EEPROM 410.
Após o dispositivo transferidor de dados 750 ter completado a transferência do ESN para a EEPROM 410, o controlador 400 inicia um novo cálculo de hash que inclui o novo ESN 414. O valor de hash resultante é emitido para o dispositivo transferidor de dados 750 para uma assinatura digital utilizando a chave privada 754. O valor de hash assinado 418 é então retomado ao controlador 400 para armazenamento na EEPROM 410, juntamente com uma versão não assinada do mesmo valor de hash.
Um ESN existente também pode ser reprogramado em um sistema incorporando a presente invenção. O processo de reprogramar ESN de preferência é realizado somente na fábrica e não por representantes de fábrica autorizados locais. Maior segurança é proporcionada utilizando um conjunto de instruções de microprocessador, somente disponível na fábrica, que são carregados em um telefone para o fim de trocar um ESN previamente programado no telefone. O processo pode ser executado usando um dispositivo transferidor de dados similar aquele mostrado na figura 7 e é descrito abaixo com respeito à figura 10.
Como uma primeira etapa (bloco 1000) o telefone é colocado em um modo de programar regular de acordo com o processo ilustrado na figura 8. Um dispositivo transferidor de dados 750 de fábrica contém o código de reprogramar ESN 756 que pode ser transferido para a memória PSRAM 407 do telefone celular para facilitar reprogramar o ESN. Tendo colocado o sistema no modo de programar, o código de reprogramar ESN 756 é transferido para a PSRAM 407 (bloco 1002). Na execução do código de reprogramar ESN 756, o controlador 400 zera o ESN existente (bloco 1004) e inicia o processo de reprogramar ESN (bloco 1006).
Após o dispositivo transferidor de dados 750 ter completado a introdução do novo ESN na EEPROM 410, o controlador 400 inicia um novo cálculo de hash que inclui o novo ESN 414 (bloco 1008). O valor de hash resultante é emitido para o dispositivo transferidor de dados 750 para uma assinatura digital utilizando a chave privada 754 (bloco 1010). O valor de hash assinado 418 é então retomado ao controlador 400 para armazenamento na EEPROM 410 juntamente com uma versão não assinada do mesmo valor de hash (bloco 1012). O cálculo de valor de hash e assinatura digital nas concretizações típicas da presente invenção são executados utilizando funções de verificação unidirecionais e um esquema de autenticação de chave privada/pública. Uma função de verificação unidirecional é usada para derivar o valor de hash representativo de conteúdo de memória dentro do telefone celular. O sistema de chave pública/privada é usado para proporcionar segurança para o valor de hash válido armazenado na EEPROM e autenticar um dispositivo transferidor de dados ou programador tentando manipular a memória no telefone celular. A verificação unidirecional é conhecida daqueles versados na técnica, e é descrita, por exemplo, na patente US n° 5.343.527 (Moore).Uma função de verificação unidirecional é uma função que é simples de computar numa direção reversa. Uma função de verificação unidirecional, H(M), opera sobre uma entrada de comprimento arbitrário, M, que nas concretizações típicas da presente invenção é constituída de conteúdo de memória eletrônica selecionado. A função verificadora ou de hash realizada sobre M retoma um valor de hash de comprimento fixo, h (ver Equação 1). h = H(M) Equação 1 Existem muitas funções que podem tomar uma entrada de comprimento arbitrário e retomar uma saída de comprimento fixo, porém as funções de verificação unidirecionais tem s seguintes características adicionais: dado M, é fácil computar h; dado h, é difícil de computar M; e dado M, é difícil de encontrar outra mensagem, M’, tal que H(M) = H(M’). O ataque básico contra uma verificação unidirecional é: dado o valor de hash da entrada de memória (conteúdo misturado), um clonador buscaria criar outro conjunto de conteúdo de memória, M’, de tal maneira que H(M) = H(M’). Se o clonador tivesse êxito em assim proceder, enfraquecería a segurança da função de verificação unidirecional. O alvo da verificação ou prova unidirecional é proporcionar uma assinatura singular, ou impressão digital de M. Na presente invenção, uma função de verificação unidirecional segura é realizada sobre o conteúdo selecionado da memória de um telefone celular para produzir um valor de hash de auditoria. O valor de hash de auditoria é comparado com um valor de hash válido previamente produzido realizando a função de hash unidirecional sobre o conteúdo de memória selecionado da memória que é conhecido ser autêntico.
Em uma concretização preferencial, um algoritmo de compilação de mensagem, tal como MD5, é usado para o cálculo de compilação de mensagem, tal como MD5, é usado para o cálculo de hash unidirecional. O algoritmo MD5 produz uma prova de N-bit, ou compilação de mensagem, da mensagem de entrada (isto é, do conteúdo de memória selecionado). O algoritmo MD5 é muito sensível pelo fato de uma mudança em um único bit no conteúdo selecionado estatisticamente resultar em metade dos bits de valor de hash se alterar. O algoritmo MD5 também é conhecido por sua velocidade e simplicidade. A velocidade é uma consideração importante pelo fato das demandas de tempo exigidas do microprocessador de telefone celular não poderem ser tão grandes de maneira a interferir inaceitavelmente com os processos de sistema usuais. O algoritmo MD5 também é conveniente porque pode ser realizado numa base incrementai desse modo permitindo a interrupção do processo de verificação ou prova para que uma tarefa de microprocessador regular possa ser endereçada antes de a verificação ser retomada. Além disso, o algoritmo MD5 é apropriado para emprego em arquiteturas de microprocessador convencionais. Outros algoritmos de verificação unidirecional que podem ser usados de acordo com concretizações da presente invenção incluem, porém sem estar limitados a: Snerfu, H-Hash, MD2, MD4, Algoritmo de Hash Seguro (SHA), e HAVAL. Aqueles versados na técnica estarão facilmente habilitados a programar um microprocessador para executar o processo de verificação unidirecional.
Os algoritmos de chave pública utilizam duas chaves, uma publicamente disponível e uma mantida privadamente (secreta) para tarefas tais como mensagens de criptografar e de decifrar, autenticação de mensagens, e assinaturas digitais. As chaves podem ser utilizadas de diferentes maneiras para alcançar alvos diferentes. Por exemplo, se o alvo é manter uma mensagem secreta, a chave privada deve ser mantida segura por um destinatário para que somente o destinatário possa decifrar as mensagens. Neste caso, a chave de criptografia pode ser publicamente conhecida e conhecida estar associada com um destinatário potencial específico. Embora o remetente possa ser assegurado de sigilo de informações neste processo, o destinatário não pode ser assegurado da autenticidade do remetente. Se a chave privada (secreta) de um par de chaves é mantida em segredo por um remetente para criptografia, qualquer destinatário com uma correspondente chave pública pode ser assegurado da autenticidade do remetente, embora sem uma segurança de sigilo. É o último esquema que é utilizado para autenticar um dispositivo transferidor de dados de acordo com a presente invenção.
Os algoritmos de chave pública operam baseados sobre funções de porta de armadilha matemática que tomam computacionalmente inviável deduzir a chave privada a partir da chave pública. No caso do bem conhecido algoritmo RSA (Rivest, Shamir e Adleman), a segurança depende da dificuldade de decompor os fatores do produto de dois grandes números primos. A seleção de chave principia com a seleção de dois grandes números primos p e q, que conjuntamente multiplicados produzem um grande número n. n = pq (Equação 2) A chave de criptografia e então aleatoriamente selecionada de tal maneira que e e (p-l)(q-l) são reciprocamente primos. Finalmente, o algoritmo euclidiano é usado para computar a chave de decifrar, d de tal maneira que F = (p-l)(q-l) (Equação 3) ed = l(mod F) (Equação 4) Os números e e n são a chave pública; o número d é a chave privada. A Equação 5 dá o processo de criptografia RSA, e a Equação 6 dá o processo de decodificação. C = M2(mod n) (Equação 5) C =Cd(mod n) (Equação 6) Um adversário capaz de fatorar n podería utilizar a Equação 3 para determinar o módulo, F, e então determinar a chave privada, d, a partir da Equação 4, dada a chave pública e. Não obstante, como indicado acima, n é usualmente tão grande a tomar a dita fatoração inviável. Maiores detalhes sobre o algoritmo RSA podem ser encontrados na patente US n° 4.405.829 (Rivest & outro).
Nas concretizações preferenciais da presente invenção, o algoritmo Fiat-Shamir (FS), ou uma variante do mesmo, é utilizada (referência é feita à patente US n° 4.748.668, o conteúdo da qual é aqui incorporado por completo a título de referência). O algoritmo FS é adaptado para implementar um esquema de autenticação e assinatura digital que é apropriado para as faculdades computacionais limitadas dos telefones celulares típicos. O algoritmo FS é diferente dos esquemas prévios, tal como RSA, pelo fato do algoritmo FS utilizar fatores baseados sobre a dificuldade de determinar o inverso de um resíduo quadrático (vi) módulo n. Mais especificamente, o esquema FS envolve selecionar um número n que é o produto de dois grandes números primos que são de preferência de entre 512 e 1064 bits em comprimento. Uma chave pública (v): vl, v2, ...vk, e uma chave privada (s): sl, s2, ...sk, são geradas de tal maneira que sl= qirt)l/vi)mod η. A dificuldade no determinar os inversos (1/vi) mod n dentro do contexto da equação precedente ode ser mostrado ser equivalente à dificuldade de determinar os fatores do número primo n. Sem sacrificar a segurança, o algoritmo executa muito mais rapidamente que outros esquemas. Na realidade, o esquema FS comprovou ultrapassar o desempenho do esquema RS A pelo fato de um cálculo FS exigir somente 1% a 4% da multiplicação modular normalmente necessária para completar as computações de autenticação necessárias. Isto corresponde à autenticação do valor de hash assinado a uma velocidade que é até de duas ordens de magnitude mais rápida que a utilização de um esquema RSA para executar a mesma tarefa. Consequentemente, a autenticação do dispositivo de transferência de dados e a comparação do valor de hash de auditoria periódica podem ser efetuados de maneira consideravelmente mais rápida utilizando um esquema FS do que utilizando um esquema RSA. Ao programa em massa telefones celulares ou outras memórias eletrônicas ao nível de fábrica, o uso do algoritmo FS reduz o tempo de produção pelo mais rapidamente gerar assinatura digital de valores de hash válidos para armazenamento. Outros algoritmos que podem ser aplicados incluem, porém sem estar limitados a, ELGAMAL, DAS, e Fiege-Fiat-Shamir.
De acordo com outro aspecto da invenção, o hardware de controlador dentro de um telefone celular tem características de segurança que previnem um clonador de determinar o conteúdo de memória segura ou de outro modo ultrapassar os esquemas de segurança previamente descritos. A figura 11 ilustra o hardware de controlador, memórias externas e detalhes de uma estrutura de memória/bus de endereço. Exceto pela lógica de selecionar chip 1122 e a lógica de segurança 1124, a função e operação de elementos no controlador são as mesmas como descritas para a figura 4. A lógica selecionar chip 1122 decodifica endereços no bus de endereço de microprocessador 1102 para proporcionar sinais de seleção de hardware para componentes de memória e dispositivos de hardware conectados com o bus 1102. Por exemplo, toda vez que um endereço se apresentar no bus de endereço 1102 que seja alocado à memória IROM 403, é habilitado um selecionar chip IROM (CS). A lógica de segurança 1124 funciona para detectar tentativas de acessar o conteúdo de PSRAM 407 ou reposicionar os temporizadores baseados em hardware 401 utilizando código de instrução de microprocessador armazenados em um dispositivo de memória diferente da memória IROM 403. Por exemplo, uma instrução de leitura ou gravação localizada na memória flash 420 com um endereço alvo de uma posição de memória na PSRAM 407 será detectado como uma operação ilegal. Qualquer tentativa de acesso ilegal resulta no microprocessador ser forçado a entrar em um estado suspenso que requer uma restauração de potência completa do telefone celular para reassumir a operação normal. A lógica de segurança é uma implementação das seguintes equações lógicas: Equação Lógica 1 S = (Spvr*B
Equação Lógica 2 Suspensão = not S ((A+C) onde: S = Modo de segurança; f Supvr = Uma transição do microprocessador para o modo supervisor; A = Sinal selecionar chip para a memória PSRAM B = Sinal selecionar chip para a memória IROM C = Sinal selecionar chip para o tempo de hardware; e Suspensão = Uma entrada de controle de hardware para microprocessador que o leva a introduzir um laço sem fim ou condição de espera permanente até a potência ser removida e reaplicada ao telefone. A Equação Lógica 1 acima declara: O modo de segurança (S) é estabelecido sempre que o microprocessador efetuar uma transição para o modo supervisor ((Supvr) ao mesmo tempo que o selecionar chip IROM 403 está ativo (*B). A Equação Lógica 2 acima declara> A entrada de suspensão de microcomputador é ativada se o controlador 400 não estiver no modo de segurança (not S) e os sinais select chip quer PSRAM 407 quer temporizador de hardware forem ativados (*(A+C)). Esta lógica efetivamente previne a ultrapassagem das medidas de segurança proporcionadas pelas comparações de valor de hash e processo de autenticação previamente descritos uma vez que acessos legítimos à PSRAM 407 e comandos de restaurar para os temporizadores de hardware 401 de preferência são provenientes de código armazenado no IROM 403.
Todo código legítimo localizado na memória IROM 403 (código de boot, código de hash, código de chave pública, e código de autenticação) de preferência são enquadrados por instruções que levam o modo de segurança a ser estabelecido ao início de uma rotina e cancelado ao deixar a rotina. Em uma concretização preferencial da invenção, uma instrução de interrupção de software (comumente disponível em microprocessadores modernos) é colocada no início de cada rotina na IROM 403 para comutar o microprocessador 402 para um modo supervisor e levar um sinal de hardware de microprocessador SPVR a tomar-se ativo. Uma vez que o sinal chip select IROM 403 estará ativo naquela ocasião, o modo de segurança S será estabelecido. A execução de uma instmção de retomo ao término da rotina de software cancela o modo de segurança.
De acordo com outro aspecto da invenção, o dispositivo transferidor de dados compreende uma unidade de segurança fornecida pela fábrica que pode ser usada em combinação com um computador para fins gerais. Um conjunto típico é representado na figura 12. Uma unidade de segurança 1200 é afixado a uma porta de E/S (I/O) de um PC 1202 via um conector padrão 1206. Uma segunda porta no PC 1202 é usada em conjunção com um segundo conector padrão 1208, tal como um RS-232, cabo ou enlace infravermelho, para interconexão com um telefone celular 1204. Os processos ilustrados na fig. 8 podem ser executados utilizando o conjunto representado na figura 12 para efetuar o processo de reprogramação do telefone celular. Um representante de serviço da fábrica autorizado tendo um PC padrão e uma unidade de segurança 1200 é equipado para reprogramar telefones.
De acordo com outra concretização da invenção, um telefone celular existente pode ser munido da faculdade de programação de campo que é segura contra ataques que não envolvam a obtenção de acesso ao conjunto de cartão de circuito impresso interno. Este nível de proteção é muito eficaz contra os processos mais usuais de ataques de clonagem nos quais o conteúdo de memória dentro do telefone são modificados utilizando comandos de teste acessíveis através de um conector de telefone externo. Isto pode ser realizado atualizando um telefone celular atual para utilizar o procedimento de autenticação por Dispositivo de Transferência de Dados (DTD) descrito na figura 8 antes de conceder o acesso aos comandos de programação de campo. Tanto o código de software de autenticação como a chave pública são armazenados na memória flash existente assim evitando quaisquer alterações às construções convencionais atuais.
Aplicações típicas da invenção foram descritas no contexto de sistemas de criptografia de chave e verificação unidirecional conforme aplicados na segurança de e programação de uma memória eletrônica em um telefone celular. Todavia, aqueles versados na técnica facilmente apreciarão e reconhecerão que qualquer função apropriada, cálculo, algoritmo, processo ou sistema para derivar uma assinatura de conteúdo de memória pode ser aplicado de acordo com a invenção. Outrossim, a invenção foi descrita com referência às concretizações específicas. Todavia, será facilmente aparente aqueles versados na técnica que é possível incorporar a invenção em outras formas específicas além daquelas das concretizações específicas descritas acima. Por exemplo, é possível incorporar a invenção em qualquer memória eletrônica e/ou dispositivo de acessar ou programar memória eletrônica sem se afastar do espírito da invenção. Além disso, a invenção pode ser aplicada e realizada em processadores de sinais digitais, processadores de aplicação específica, ou quaisquer outros sistemas processadores ou orientados no sentido de memória eletrônica. Por conseguinte, as concretizações específicas aqui descritas são meramente ilustrativas e não devem ser consideradas de forma alguma como restritivas. O âmbito da invenção é definido pelas reivindicações apensas, mais exatamente do que pela descrição precedente.
REIVINDICAÇÕES
Claims (24)
1. Dispositivo eletrônico, compreendendo: memória (410, 420); e um microprocessador (402) configurado para realizar um cálculo de hash no conteúdo autenticado da memória para produzir um valor de hash válido, caracterizado pelo fato de que o microprocessador é adicional mente configurado para: periodicamente realizar um cálculo de hash no conteúdo da memória (410, 420) para derivar um valor de hash de auditoria; comparar o dito valor de hash de auditoria com o dito valor de hash válido, os ditos cálculos de hash e a comparação sendo seguros contra violação; e desabilitar o dispositivo eletrônico quando o dito valor dc hash de auditoria não coincidir com o valor de hash válido.
2. Dispositivo eletrônico de acordo com a reivindicação 1, caracterizado pelo fato de que o microprocessador (402) compreende um dispositivo para periodicamente derivar o valor de hash de acordo com a expiração de um temporizador baseado em hardware.
3. Dispositivo eletrônico de acordo com a reivindicação 1, caracterizado pelo fato de a memória incluir uma memória flasb (420) e uma EEPROM (410).
4. Dispositivo eletrônico de acordo com a reivindicação 1, caracterizado pelo fato dc que compreende adicionalmentc: uma memória dc acesso aleatório protegida (407) para realizar o cálculo de hash em conjunto com o microprocessador (402).
5. Dispositivo eletrônico de acordo com a reivindicação 3, caracterizado pelo fato de que o microprocessador compreende um dispositivo para derivar o valor de hash de auditoria baseado no conteúdo selecionado da memória flash (420) e da EEPROM (410).
6. Dispositivo eletrônico de acordo com a reivindicação 5, caracterizado pelo fato de o conteúdo selecionado incluir um número serial eletrônico.
7. Dispositivo eletrônico de acordo com a reivindicação 5, caracterizado pelo fato de o conteúdo selecionado incluir código de programa de microprocessador.
8. Dispositivo eletrônico de acordo com a reivindicação 1, caracterizado pelo fato de que o microprocessador (402) compreende um dispositivo para autenticar o valor de hash válido usando uma chave pública armazenada no interior da memória (410, 420).
9. Dispositivo eletrônico de acordo com a reivindicação 1, caracterizado pelo fato de que o microprocessador (402) compreende um dispositivo para criptografar o valor de hash válido com uma assinatura digital dada usando uma chave privada.
10. Dispositivo eletrônico de acordo com a reivindicação 1, caracterizado pelo fato de que o microprocessador (402) compreende um dispositivo para realizar os cálculos de hash usando uma dentre um grupo de funções de hash compreendendo: Snerfu, H-Hash, MD2, MD4, MD5, Algoritmo de Hash Seguro (SHA) e HAVAL.
11. Dispositivo eletrônico de acordo com a reivindicação 1, caracterizado pelo fato de que o microprocessador (402) compreende um dispositivo para autenticar e criptografar usando um dentre um grupo de algoritmos de sistema de chave pública/privada compreendendo: ELGAMAL, RS A, DAS, Fiege-Fiat-Shamir, e Fiat-Shamir.
12. Dispositivo eletrônico de acordo com a reivindicação 4, caracterizado pelo fato de que compreende adicionalmente lógica de segurança para supervisionar o acesso à memória de acesso aleatório protegida.
13. Dispositivo eletrônico de acordo com a reivindicação 1, caracterizado pelo fato de que o dito dispositivo eletrônico é um telefone celular.
14. Dispositivo eletrônico de acordo com a reivindicação 5, caracterizado pelo fato de que o conteúdo da memória flash inclui instruções de operação para o dispositivo eletrônico e o conteúdo de EEPROM inclui um valor de hash válido, e em que o microprocessador compreende um dispositivo para realizar um cálculo de hash de uma via sobre partes selecionadas de conteúdos de EEPROM e flash autenticados para produzir o valor de hash válido, um dispositivo para periodicamente gerar um valor de hash de auditoria pela realização do cálculo de hash sobre as partes selecionadas, e um dispositivo para comparar o valor de hash de auditoria com o valor de hash válido autenticado para avaliar se pelo menos uma das memórias flash e EEPROM foram alteradas.
15. Dispositivo eletrônico de acordo com a reivindicação 14, caracterizado pelo fato de que o microprocessador (402) compreende um dispositivo para realizar um cálculo de hash de uma via usando uma de um grupo de funções de hash compreendendo: Snerfu, H-Hash, MD2, MD4, MD5, Algoritmo de Hash Seguro (SHA) e HAVAL.
16. Dispositivo eletrônico de acordo com a reivindicação 9, caracterizado pelo fato de que o microprocessador (402) compreende um dispositivo para criptografar o valor de hash válido com uma assinatura digital pela chave privada usando meios de processamento externos ao dispositivo eletrônico.
17. Processo para detectar violação de memória em um dispositivo eletrônico, compreendendo a etapa de: armazenar um valor de hash válido assinado produzido pela realização de um cálculo de hash no conteúdo selecionado de uma memória (410, 420) cujo conteúdo de memória selecionado é autenticado; caracterizado pelo fato de compreender adicionalmente as etapas de: produzir periodicamente um valor de hash de auditoria pela realização do cálculo de hash no conteúdo selecionado da memória (410, 420); comparar o valor de hash de auditoria com o valor de hash válido, pelo que uma diferença entre os valores de hash de auditoria e válido indica alteração do conteúdo de memória selecionado, em que as etapas de armazenar, produzir e comparar são seguras contra violação; e desabilitar o dispositivo eletrônico quando o dito valor de hash de auditoria não coincidir com o valor de hash válido.
18. Processo de acordo com a reivindicação 17, caracterizado pelo fato de a etapa de produzir o valor de hash de auditoria ser realizada em conjunto com uma memória de acesso aleatório protegida (407).
19. Processo de acordo com a reivindicação 17, caracterizado pelo fato de incluir adicionalmente a etapa de assinar o valor de hash válido com uma assinatura digital baseada em uma chave privada.
20. Processo de acordo com a reivindicação 11, caracterizado pelo fato de a etapa de produzir o valor de hash de auditoria ser realizada de acordo com a expiração de um temporizador baseado em hardware.
21. Processo de acordo com a reivindicação 11, caracterizado pelo fato de a etapa de produzir o valor de hash de auditoria envolver calcular segmentos de valor de hash de auditoria.
22. Processo de acordo com a reivindicação 21, caracterizado pelo fato de o cálculo de um segmento de valor de hash de auditoria poder ser retardado quando necessário enquanto outros processos ocorrendo dentro do dispositivo eletrônico são completados.
23. Processo de acordo com a reivindicação 17, caracterizado pelo fato de o valor de hash válido receber uma assinatura digital, e em que a etapa de comparar o valor de hash de auditoria com o valor de hash válido incluir a etapa de autenticar o valor de hash válido contra a assinatura.
24. Processo de acordo com a reivindicação 17, caracterizado pelo fato de que o dispositivo eletrônico é um telefone celular.
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US08/706,574 US6026293A (en) | 1996-09-05 | 1996-09-05 | System for preventing electronic memory tampering |
| PCT/US1997/015311 WO1998010611A2 (en) | 1996-09-05 | 1997-09-05 | System for preventing electronic memory tampering |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| BR9712007A BR9712007A (pt) | 1999-08-24 |
| BRPI9712007B1 true BRPI9712007B1 (pt) | 2017-06-06 |
Family
ID=24838185
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| BRPI9712007A BRPI9712007B1 (pt) | 1996-09-05 | 1997-09-05 | dispositivo eletrônico e processo para detectar violação de memória em um dispositivo eletrônico |
Country Status (12)
| Country | Link |
|---|---|
| US (1) | US6026293A (pt) |
| EP (1) | EP0923842B1 (pt) |
| JP (5) | JP4050322B2 (pt) |
| KR (1) | KR100492840B1 (pt) |
| CN (2) | CN1126398C (pt) |
| AU (1) | AU734212B2 (pt) |
| BR (1) | BRPI9712007B1 (pt) |
| DE (1) | DE69736065T2 (pt) |
| EE (1) | EE9900084A (pt) |
| ES (1) | ES2262189T3 (pt) |
| PL (1) | PL332050A1 (pt) |
| WO (1) | WO1998010611A2 (pt) |
Families Citing this family (192)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7747243B2 (en) | 1992-03-24 | 2010-06-29 | Boatwright John T | Call security system |
| US6748209B2 (en) * | 1995-10-30 | 2004-06-08 | At&T Wireless Services, Inc. | Method and apparatus for storing activation data in a cellular telephone |
| US5974311A (en) | 1995-10-30 | 1999-10-26 | At&T Wireless Services Inc. | Method and apparatus for storing activation data in a cellular telephone |
| US6097939A (en) * | 1997-07-11 | 2000-08-01 | Compaq Computer Corporation | Method and apparatus for event data maintenance per MIN/ESN pair in a mobile telephone system |
| GB2328843B (en) * | 1997-08-29 | 2002-08-14 | Nokia Mobile Phones Ltd | A system for remotely accessing data stored in a radiotelephone |
| US6230002B1 (en) * | 1997-11-19 | 2001-05-08 | Telefonaktiebolaget L M Ericsson (Publ) | Method, and associated apparatus, for selectively permitting access by a mobile terminal to a packet data network |
| US6182162B1 (en) | 1998-03-02 | 2001-01-30 | Lexar Media, Inc. | Externally coupled compact flash memory card that configures itself one of a plurality of appropriate operating protocol modes of a host computer |
| DE19980546B4 (de) * | 1998-03-02 | 2011-01-27 | Lexar Media, Inc., Fremont | Flash-Speicherkarte mit erweiterter Betriebsmodus-Erkennung und benutzerfreundlichem Schnittstellensystem |
| US6223290B1 (en) * | 1998-05-07 | 2001-04-24 | Intel Corporation | Method and apparatus for preventing the fraudulent use of a cellular telephone |
| US7756986B2 (en) * | 1998-06-30 | 2010-07-13 | Emc Corporation | Method and apparatus for providing data management for a storage system coupled to a network |
| US6263445B1 (en) * | 1998-06-30 | 2001-07-17 | Emc Corporation | Method and apparatus for authenticating connections to a storage system coupled to a network |
| US6665530B1 (en) * | 1998-07-31 | 2003-12-16 | Qualcomm Incorporated | System and method for preventing replay attacks in wireless communication |
| US7110984B1 (en) * | 1998-08-13 | 2006-09-19 | International Business Machines Corporation | Updating usage conditions in lieu of download digital rights management protected content |
| AU6042899A (en) * | 1998-09-18 | 2000-04-10 | Qualcomm Incorporated | Method and apparatus for authenticating embedded software in a remote unit over a communications channel |
| US6460138B1 (en) * | 1998-10-05 | 2002-10-01 | Flashpoint Technology, Inc. | User authentication for portable electronic devices using asymmetrical cryptography |
| US6829712B1 (en) * | 1998-10-27 | 2004-12-07 | Sprint Communications Company L.P. | Object-based security system |
| US6901457B1 (en) | 1998-11-04 | 2005-05-31 | Sandisk Corporation | Multiple mode communications system |
| US6363396B1 (en) * | 1998-12-21 | 2002-03-26 | Oracle Corporation | Object hashing with incremental changes |
| JP3219064B2 (ja) * | 1998-12-28 | 2001-10-15 | インターナショナル・ビジネス・マシーンズ・コーポレーション | デジタルデータ認証システム |
| US6802006B1 (en) * | 1999-01-15 | 2004-10-05 | Macrovision Corporation | System and method of verifying the authenticity of dynamically connectable executable images |
| KR20010101824A (ko) * | 1999-02-09 | 2001-11-14 | 밀러 럿셀 비 | 특정 전화번호부 엔트리 |
| US6370380B1 (en) * | 1999-02-17 | 2002-04-09 | Telefonaktiebolaget Lm Ericsson (Publ) | Method for secure handover |
| DE19911221B4 (de) * | 1999-03-12 | 2005-10-27 | T-Mobile Deutschland Gmbh | Verfahren zur Verteilung von Schlüsseln an Teilnehmer von Kommunikationsnetzen |
| US7103574B1 (en) * | 1999-03-27 | 2006-09-05 | Microsoft Corporation | Enforcement architecture and method for digital rights management |
| FI991134L (fi) * | 1999-05-18 | 2000-11-19 | Sonera Oyj | Ohjelmiston testaus |
| US6669385B1 (en) * | 1999-05-25 | 2003-12-30 | Silverbrook Research Pty Ltd | Printer having a document transfer device |
| EP1063589A1 (en) * | 1999-06-25 | 2000-12-27 | TELEFONAKTIEBOLAGET L M ERICSSON (publ) | Device for processing data and corresponding method |
| US7650504B2 (en) * | 1999-07-22 | 2010-01-19 | Macrovision Corporation | System and method of verifying the authenticity of dynamically connectable executable images |
| US7343351B1 (en) * | 1999-08-31 | 2008-03-11 | American Express Travel Related Services Company, Inc. | Methods and apparatus for conducting electronic transactions |
| US6708049B1 (en) * | 1999-09-28 | 2004-03-16 | Nellcor Puritan Bennett Incorporated | Sensor with signature of data relating to sensor |
| US6587680B1 (en) * | 1999-11-23 | 2003-07-01 | Nokia Corporation | Transfer of security association during a mobile terminal handover |
| IL133584A (en) * | 1999-12-19 | 2010-02-17 | Enco Tone Ltd | Method for the acoustic encodification of dynamic identification codes |
| US6973570B1 (en) * | 1999-12-31 | 2005-12-06 | Western Digital Ventures, Inc. | Integrated circuit comprising encryption circuitry selectively enabled by verifying a device |
| CN1194209C (zh) * | 2000-01-24 | 2005-03-23 | 微动公司 | 防止改动远离主系统的信号调节器的系统 |
| US6751616B1 (en) | 2000-01-28 | 2004-06-15 | Oracle International Corp. | Techniques for DLM optimization with re-mapping responsibility for lock management |
| US6529906B1 (en) | 2000-01-28 | 2003-03-04 | Oracle Corporation | Techniques for DLM optimization with re-mastering events |
| US6920454B1 (en) | 2000-01-28 | 2005-07-19 | Oracle International Corporation | Techniques for DLM optimization with transferring lock information |
| US7246120B2 (en) | 2000-01-28 | 2007-07-17 | Oracle International Corporation | Techniques for achieving higher availability of resources during reconfiguration of a cluster |
| US7751600B2 (en) | 2000-04-18 | 2010-07-06 | Semiconductor Energy Laboratory Co., Ltd. | System and method for identifying an individual |
| DE60117197T2 (de) * | 2000-04-26 | 2006-07-27 | Semiconductor Energy Laboratory Co., Ltd., Atsugi | Kommunikationssystem und -verfahren zur Identifikation einer Person mittels biologischer Information |
| AU2001267459A1 (en) | 2000-05-23 | 2001-12-03 | Actineon Inc. | Programmable communicator |
| US6681304B1 (en) * | 2000-06-30 | 2004-01-20 | Intel Corporation | Method and device for providing hidden storage in non-volatile memory |
| US6721843B1 (en) | 2000-07-07 | 2004-04-13 | Lexar Media, Inc. | Flash memory architecture implementing simultaneously programmable multiple flash memory banks that are host compatible |
| JP3639194B2 (ja) * | 2000-07-27 | 2005-04-20 | 富士通株式会社 | 機種変更装置および機種変更方法ならびに機種変更プログラムを記録した記録媒体 |
| FR2812510B1 (fr) * | 2000-07-28 | 2004-03-19 | Sagem | Procede d'exploitation d'un terminal de telephonie cellulaire et terminal pour la mise en oeuvre du procede |
| US7155559B1 (en) * | 2000-08-25 | 2006-12-26 | Lexar Media, Inc. | Flash memory architecture with separate storage of overhead and user data |
| US6618584B1 (en) | 2000-08-30 | 2003-09-09 | Telefonaktiebolaget Lm Ericsson (Publ) | Terminal authentication procedure timing for data calls |
| US6772274B1 (en) | 2000-09-13 | 2004-08-03 | Lexar Media, Inc. | Flash memory system and method implementing LBA to PBA correlation within flash memory array |
| US7043636B2 (en) * | 2000-09-26 | 2006-05-09 | Telefonaktiebolaget Lm Ericsson (Publ) | Data integrity mechanisms for static and dynamic data |
| US20030159047A1 (en) * | 2000-09-26 | 2003-08-21 | Telefonaktiebolaget L M Ericsson (Publ) | Method of securing and exposing a logotype in an electronic device |
| US7058806B2 (en) * | 2000-10-17 | 2006-06-06 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and apparatus for secure leveled access control |
| GB2369205B (en) * | 2000-11-17 | 2005-02-02 | Personal Data Prot System Ltd | Personal data device and protection system and method for storing and protecting personal data |
| US7260636B2 (en) | 2000-12-22 | 2007-08-21 | Emc Corporation | Method and apparatus for preventing unauthorized access by a network device |
| US7668315B2 (en) * | 2001-01-05 | 2010-02-23 | Qualcomm Incorporated | Local authentication of mobile subscribers outside their home systems |
| US7036023B2 (en) * | 2001-01-19 | 2006-04-25 | Microsoft Corporation | Systems and methods for detecting tampering of a computer system by calculating a boot signature |
| AU2001237019A1 (en) * | 2001-02-13 | 2002-08-28 | Qualcomm Incorporated | Method and apparatus for authenticating embedded software in a remote unit over a communications channel |
| US7188243B2 (en) * | 2001-02-16 | 2007-03-06 | Microsoft Corporation | System and method for over the air configuration security |
| US7047405B2 (en) * | 2001-04-05 | 2006-05-16 | Qualcomm, Inc. | Method and apparatus for providing secure processing and data storage for a wireless communication device |
| KR100910432B1 (ko) * | 2001-03-16 | 2009-08-04 | 콸콤 인코포레이티드 | 무선 통신 장치용 보안 처리 및 데이터 저장을 제공하는 방법 및 장치 |
| US6804752B2 (en) * | 2001-04-02 | 2004-10-12 | Delphi Technologies, Inc. | Event data protection method for a flash programmable microprocessor-based control module |
| US20020147918A1 (en) | 2001-04-05 | 2002-10-10 | Osthoff Harro R. | System and method for securing information in memory |
| US7099663B2 (en) * | 2001-05-31 | 2006-08-29 | Qualcomm Inc. | Safe application distribution and execution in a wireless environment |
| FI114416B (fi) * | 2001-06-15 | 2004-10-15 | Nokia Corp | Menetelmä elektroniikkalaitteen varmistamiseksi, varmistusjärjestelmä ja elektroniikkalaite |
| FI115356B (fi) * | 2001-06-29 | 2005-04-15 | Nokia Corp | Menetelmä audiovisuaalisen informaation käsittelemiseksi elektroniikkalaitteessa, järjestelmä ja elektroniikkalaite |
| KR20030002376A (ko) * | 2001-06-29 | 2003-01-09 | 세이프다임 주식회사 | 공개키 기반 인증을 위한 키관리 시스템 |
| DE10131575A1 (de) * | 2001-07-02 | 2003-01-16 | Bosch Gmbh Robert | Verfahren zum Schutz eines Mikrorechner-Systems gegen Manipulation von in einer Speicheranordnung des Mikrorechner-Systems gespeicherten Daten |
| US7383432B1 (en) * | 2001-07-09 | 2008-06-03 | Advanced Micro Devices, Inc. | Software modem with hidden authentication commands |
| KR100813944B1 (ko) * | 2001-07-11 | 2008-03-14 | 삼성전자주식회사 | 디지털 권리 운영을 수행하기 위하여 휴대용 기기와컴퓨터 사이의 통신을 제어하는 방법 |
| FI115257B (fi) * | 2001-08-07 | 2005-03-31 | Nokia Corp | Menetelmä informaation käsittelemiseksi elektroniikkalaitteessa, järjestelmä, elektroniikkalaite ja suoritinlohko |
| KR100401135B1 (ko) * | 2001-09-13 | 2003-10-10 | 주식회사 한국전산개발 | 데이터 보안 시스템 |
| US20030059049A1 (en) * | 2001-09-24 | 2003-03-27 | Mihm Thomas J. | Method and apparatus for secure mobile transaction |
| US20030061488A1 (en) * | 2001-09-25 | 2003-03-27 | Michael Huebler | Cloning protection for electronic equipment |
| US7404202B2 (en) * | 2001-11-21 | 2008-07-22 | Line 6, Inc. | System, device, and method for providing secure electronic commerce transactions |
| JP2005518589A (ja) * | 2002-02-22 | 2005-06-23 | レクサー メディア,インク. | インジケータライトが一体化されたリムーバブル記憶媒体 |
| US20030182561A1 (en) * | 2002-03-25 | 2003-09-25 | International Business Machines Corporation | Tamper detection mechanism for a personal computer and a method of use thereof |
| US7840803B2 (en) | 2002-04-16 | 2010-11-23 | Massachusetts Institute Of Technology | Authentication of integrated circuits |
| US7338443B1 (en) | 2002-04-29 | 2008-03-04 | Tucker Peter L | Secure patient data recorder for recording monitored vital sign data |
| US7054613B2 (en) * | 2002-05-03 | 2006-05-30 | Telefonaktiebolaget Lm Ericsson (Publ) | SIM card to mobile device interface protection method and system |
| GB0211644D0 (en) | 2002-05-21 | 2002-07-03 | Wesby Philip B | System and method for remote asset management |
| US11337047B1 (en) | 2002-05-21 | 2022-05-17 | M2M Solutions Llc | System and method for remote asset management |
| GB0212318D0 (en) * | 2002-05-28 | 2002-07-10 | Symbian Ltd | Tamper evident removable media storing executable code |
| US20030226040A1 (en) * | 2002-06-03 | 2003-12-04 | International Business Machines Corporation | Controlling access to data stored on a storage device of a trusted computing platform system |
| US20040003265A1 (en) * | 2002-06-26 | 2004-01-01 | International Business Machines Corporation | Secure method for BIOS flash data update |
| EP1795992B1 (en) * | 2002-07-30 | 2018-01-24 | Fujitsu Limited | Method and apparatus for reproducing information using a security module |
| JP4576100B2 (ja) * | 2002-07-30 | 2010-11-04 | 富士通株式会社 | 情報再生装置、セキュアモジュールおよび情報再生方法 |
| US7320642B2 (en) * | 2002-09-06 | 2008-01-22 | Wms Gaming Inc. | Security of gaming software |
| AU2003277850A1 (en) * | 2002-09-16 | 2004-04-30 | Telefonaktiebolaget Lm Ericsson (Publ) | Loading data onto an electronic device |
| US20040078536A1 (en) * | 2002-10-22 | 2004-04-22 | Tai-Ming Chen | Authentication mechanism integrated with random access memory and method of use |
| DE60224590T2 (de) * | 2002-11-08 | 2009-01-15 | Nokia Corp. | Software-integritätstest bei einem mobiltelefon |
| US7370212B2 (en) | 2003-02-25 | 2008-05-06 | Microsoft Corporation | Issuing a publisher use license off-line in a digital rights management (DRM) system |
| DE10311249A1 (de) * | 2003-03-14 | 2004-09-23 | Robert Bosch Gmbh | Mikroprozessorsystem und Verfahren zum Erfassen des Austauschs von Bausteinen des Systems |
| KR100568228B1 (ko) * | 2003-05-20 | 2006-04-07 | 삼성전자주식회사 | 고유번호를 이용한 프로그램 탬퍼 방지 방법과 난독처리된 프로그램 업그레이드 방법, 상기 방법을 위한 장치 |
| US7857702B2 (en) * | 2003-07-25 | 2010-12-28 | Futurelogic, Inc. | Method and apparatus for changing firmware in a gaming printer |
| US7100205B2 (en) * | 2003-10-22 | 2006-08-29 | The United States Of America As Represented By The Secretary Of The Navy | Secure attention instruction central processing unit and system architecture |
| US7379952B2 (en) * | 2004-01-30 | 2008-05-27 | Oracle International Corporation | Techniques for multiple window resource remastering among nodes of a cluster |
| US7882361B2 (en) * | 2004-02-05 | 2011-02-01 | Oracle America, Inc. | Method and system for accepting a pass code |
| US7401234B2 (en) * | 2004-03-01 | 2008-07-15 | Freescale Semiconductor, Inc. | Autonomous memory checker for runtime security assurance and method therefore |
| KR100575767B1 (ko) | 2004-03-05 | 2006-05-03 | 엘지전자 주식회사 | 이동 통신 단말기의 장치번호 저장 방법 |
| US8548429B2 (en) * | 2004-03-08 | 2013-10-01 | Rafi Nehushtan | Cellular device security apparatus and method |
| US7331063B2 (en) * | 2004-04-30 | 2008-02-12 | Microsoft Corporation | Method and system for limiting software updates |
| US20060242406A1 (en) * | 2005-04-22 | 2006-10-26 | Microsoft Corporation | Protected computing environment |
| US7644239B2 (en) | 2004-05-03 | 2010-01-05 | Microsoft Corporation | Non-volatile memory cache performance improvement |
| US7584366B2 (en) * | 2004-07-08 | 2009-09-01 | At&T Intellectual Property I, L.P. | Methods, systems and computer program products for detecting tampering of electronic equipment based on constrained time to obtain computational result |
| GB2416956B (en) * | 2004-07-29 | 2007-09-19 | Nec Technologies | Method of testing integrity of a mobile radio communications device and related apparatus |
| US20060035631A1 (en) * | 2004-08-13 | 2006-02-16 | Christopher White | Wireless device service activation from the wireless device |
| US7653802B2 (en) * | 2004-08-27 | 2010-01-26 | Microsoft Corporation | System and method for using address lines to control memory usage |
| US7356668B2 (en) * | 2004-08-27 | 2008-04-08 | Microsoft Corporation | System and method for using address bits to form an index into secure memory |
| US7734926B2 (en) * | 2004-08-27 | 2010-06-08 | Microsoft Corporation | System and method for applying security to memory reads and writes |
| US7822993B2 (en) * | 2004-08-27 | 2010-10-26 | Microsoft Corporation | System and method for using address bits to affect encryption |
| US7444523B2 (en) | 2004-08-27 | 2008-10-28 | Microsoft Corporation | System and method for using address bits to signal security attributes of data in the address space |
| DE102004043211A1 (de) * | 2004-09-03 | 2006-03-09 | Biotronik Crm Patent Ag | Vorrichtung und Verfahren zum Betreiben eines mobilen Kommunikationsgerätes |
| JP2006072935A (ja) * | 2004-09-06 | 2006-03-16 | Fujitsu Ltd | 半導体装置及びデータ書き込み制御方法 |
| RU2408071C2 (ru) * | 2004-10-11 | 2010-12-27 | Телефонактиеболагет Лм Эрикссон (Пабл) | Защищенные загрузка и хранение данных в устройстве обработки данных |
| US8627086B2 (en) * | 2004-10-11 | 2014-01-07 | Telefonaktiebolaget Lm Ericsson (Publ) | Secure loading and storing of data in a data processing device |
| US8347078B2 (en) | 2004-10-18 | 2013-01-01 | Microsoft Corporation | Device certificate individualization |
| US7490197B2 (en) | 2004-10-21 | 2009-02-10 | Microsoft Corporation | Using external memory devices to improve system performance |
| US20060089917A1 (en) * | 2004-10-22 | 2006-04-27 | Microsoft Corporation | License synchronization |
| WO2006053304A2 (en) | 2004-11-12 | 2006-05-18 | Pufco, Inc. | Volatile device keys and applications thereof |
| US8336085B2 (en) | 2004-11-15 | 2012-12-18 | Microsoft Corporation | Tuning product policy using observed evidence of customer behavior |
| US8464348B2 (en) * | 2004-11-15 | 2013-06-11 | Microsoft Corporation | Isolated computing environment anchored into CPU and motherboard |
| US8176564B2 (en) * | 2004-11-15 | 2012-05-08 | Microsoft Corporation | Special PC mode entered upon detection of undesired state |
| KR100654446B1 (ko) | 2004-12-09 | 2006-12-06 | 삼성전자주식회사 | 보안 부팅 장치 및 방법 |
| US20060200469A1 (en) * | 2005-03-02 | 2006-09-07 | Lakshminarayanan Chidambaran | Global session identifiers in a multi-node system |
| US7822995B2 (en) * | 2005-03-03 | 2010-10-26 | Seagate Technology Llc | Apparatus and method for protecting diagnostic ports of secure devices |
| US8438645B2 (en) | 2005-04-27 | 2013-05-07 | Microsoft Corporation | Secure clock with grace periods |
| US7209990B2 (en) * | 2005-04-05 | 2007-04-24 | Oracle International Corporation | Maintain fairness of resource allocation in a multi-node environment |
| US8725646B2 (en) * | 2005-04-15 | 2014-05-13 | Microsoft Corporation | Output protection levels |
| US9436804B2 (en) * | 2005-04-22 | 2016-09-06 | Microsoft Technology Licensing, Llc | Establishing a unique session key using a hardware functionality scan |
| US9363481B2 (en) | 2005-04-22 | 2016-06-07 | Microsoft Technology Licensing, Llc | Protected media pipeline |
| CN101218588B (zh) * | 2005-05-05 | 2010-05-19 | 塞尔蒂卡姆公司 | 具有可认证的固件的附件设备及布置和认证该固件的方法 |
| US20060265758A1 (en) * | 2005-05-20 | 2006-11-23 | Microsoft Corporation | Extensible media rights |
| US7934256B2 (en) * | 2005-06-01 | 2011-04-26 | Panasonic Corporation | Electronic device, update server device, key update device |
| US8353046B2 (en) * | 2005-06-08 | 2013-01-08 | Microsoft Corporation | System and method for delivery of a modular operating system |
| US7363564B2 (en) * | 2005-07-15 | 2008-04-22 | Seagate Technology Llc | Method and apparatus for securing communications ports in an electronic device |
| US20070050622A1 (en) * | 2005-09-01 | 2007-03-01 | Rager Kent D | Method, system and apparatus for prevention of flash IC replacement hacking attack |
| JP4568196B2 (ja) * | 2005-09-01 | 2010-10-27 | 株式会社東芝 | プロセッサ、コンピュータシステムおよび認証方法 |
| KR100740658B1 (ko) * | 2005-10-20 | 2007-07-19 | 프롬투정보통신(주) | 다형성 및 탬퍼방지 지원 암호처리방법 및 암호모듈 |
| US8914557B2 (en) | 2005-12-16 | 2014-12-16 | Microsoft Corporation | Optimizing write and wear performance for a memory |
| CN100437502C (zh) | 2005-12-30 | 2008-11-26 | 联想(北京)有限公司 | 基于安全芯片的防病毒方法 |
| KR101366376B1 (ko) | 2006-01-24 | 2014-02-24 | 베라요, 인크. | 신호 제너레이터에 기반한 장치 보안 |
| WO2007107701A2 (en) * | 2006-03-22 | 2007-09-27 | British Telecommunications Public Limited Company | Communications device monitoring |
| WO2007148768A1 (en) * | 2006-06-23 | 2007-12-27 | Semiconductor Energy Laboratory Co., Ltd. | Personal data management system and nonvolatile memory card |
| US7957532B2 (en) * | 2006-06-23 | 2011-06-07 | Microsoft Corporation | Data protection for a mobile device |
| KR100800073B1 (ko) * | 2006-07-10 | 2008-01-31 | 엘지전자 주식회사 | 이동통신 단말기 및 그 공개키 갱신방법 |
| US8453206B2 (en) * | 2006-11-09 | 2013-05-28 | Panasonic Corporation | Detecting unauthorized tampering of a program |
| US8356178B2 (en) * | 2006-11-13 | 2013-01-15 | Seagate Technology Llc | Method and apparatus for authenticated data storage |
| DE102007007481A1 (de) * | 2007-02-15 | 2008-08-21 | Giesecke & Devrient Gmbh | Verfahren zur Analyse einer Softwarekonfiguration eines tragbaren Datenträgers |
| US20100153716A1 (en) * | 2007-04-10 | 2010-06-17 | Kirihata Yasuhiro | System and method of managing files and mobile terminal device |
| US8782396B2 (en) * | 2007-09-19 | 2014-07-15 | Verayo, Inc. | Authentication with physical unclonable functions |
| KR20090037712A (ko) * | 2007-10-12 | 2009-04-16 | 삼성전자주식회사 | 보안 부트-업되는 전자 장치, 그것의 해쉬값 계산 방법 및부트-업 방법 |
| US8468366B2 (en) * | 2008-03-24 | 2013-06-18 | Qualcomm Incorporated | Method for securely storing a programmable identifier in a communication station |
| US9141776B2 (en) | 2008-04-30 | 2015-09-22 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and apparatus for secure hardware analysis |
| US9032151B2 (en) | 2008-09-15 | 2015-05-12 | Microsoft Technology Licensing, Llc | Method and system for ensuring reliability of cache data and metadata subsequent to a reboot |
| US7953774B2 (en) | 2008-09-19 | 2011-05-31 | Microsoft Corporation | Aggregation of write traffic to a data store |
| TWI498827B (zh) * | 2008-11-21 | 2015-09-01 | Verayo Inc | 非連網射頻辨識裝置物理不可複製功能之鑑認技術 |
| US8401521B2 (en) * | 2008-11-25 | 2013-03-19 | Broadcom Corporation | Enabling remote and anonymous control of mobile and portable multimedia devices for security, tracking and recovery |
| JP5208796B2 (ja) * | 2009-02-12 | 2013-06-12 | 中国電力株式会社 | 整数の暗号化及び復号化方法 |
| JP5208797B2 (ja) * | 2009-02-12 | 2013-06-12 | 中国電力株式会社 | 整数の暗号化及び復号化方法 |
| US8839458B2 (en) * | 2009-05-12 | 2014-09-16 | Nokia Corporation | Method, apparatus, and computer program for providing application security |
| US8468186B2 (en) * | 2009-08-05 | 2013-06-18 | Verayo, Inc. | Combination of values from a pseudo-random source |
| US8811615B2 (en) * | 2009-08-05 | 2014-08-19 | Verayo, Inc. | Index-based coding with a pseudo-random source |
| CN101673250B (zh) * | 2009-09-18 | 2012-02-08 | 中兴通讯股份有限公司 | 一种手机存储器中代码/数据的保护方法及装置 |
| DE102010002472A1 (de) * | 2010-03-01 | 2011-09-01 | Robert Bosch Gmbh | Verfahren zum Verifizieren eines Speicherblocks eines nicht-flüchtigen Speichers |
| US8484451B2 (en) * | 2010-03-11 | 2013-07-09 | St-Ericsson Sa | Method and apparatus for software boot revocation |
| US9641606B2 (en) | 2010-06-22 | 2017-05-02 | Blackberry Limited | Peer to peer secure synchronization between handheld devices |
| US9032186B2 (en) | 2010-07-09 | 2015-05-12 | Blackberry Limited | Utilization of a microcode interpreter built in to a processor |
| WO2012003591A1 (en) * | 2010-07-09 | 2012-01-12 | Research In Motion Limited | Microcode-based challenge/response process |
| TWI496161B (zh) * | 2010-08-06 | 2015-08-11 | Phison Electronics Corp | 記憶體識別碼產生方法、管理方法、控制器與儲存系統 |
| CN102375943B (zh) * | 2010-08-16 | 2015-06-10 | 群联电子股份有限公司 | 识别码产生方法与存储器管理方法、控制器及储存系统 |
| JP2012058991A (ja) * | 2010-09-08 | 2012-03-22 | Fujitsu Toshiba Mobile Communications Ltd | 情報処理装置 |
| CN102073824B (zh) * | 2011-01-12 | 2014-06-04 | 深圳昂楷科技有限公司 | 一种加密文档唯一标识的生成和更新的方法 |
| US8630411B2 (en) * | 2011-02-17 | 2014-01-14 | Infineon Technologies Ag | Systems and methods for device and data authentication |
| US8938621B2 (en) * | 2011-11-18 | 2015-01-20 | Qualcomm Incorporated | Computing device integrity protection |
| KR101368949B1 (ko) * | 2012-07-20 | 2014-03-03 | 주식회사 안랩 | 공격코드 실행 사전 차단 방법 및 공격코드 실행 사전 차단 장치 |
| US20140043059A1 (en) * | 2012-08-10 | 2014-02-13 | Microsemi Soc Corp. | Secure digest for pld configuration data |
| CN102880838A (zh) * | 2012-09-04 | 2013-01-16 | 深圳市芯海科技有限公司 | 电子设备的检测方法及装置 |
| US10032029B2 (en) * | 2014-07-14 | 2018-07-24 | Lenovo (Singapore) Pte. Ltd. | Verifying integrity of backup file in a multiple operating system environment |
| WO2016137573A1 (en) * | 2015-02-25 | 2016-09-01 | Private Machines Inc. | Anti-tamper system |
| CN104866779B (zh) * | 2015-04-07 | 2018-05-11 | 福建师范大学 | 一种控制电子文件生命周期及安全删除的方法及系统 |
| WO2016185577A1 (ja) | 2015-05-20 | 2016-11-24 | 富士通株式会社 | プログラム検証方法、検証プログラム、及び情報処理装置 |
| KR102316279B1 (ko) | 2015-10-19 | 2021-10-22 | 삼성전자주식회사 | 비휘발성 메모리 장치 및 이를 포함하는 에스에스디 |
| KR102466412B1 (ko) * | 2016-01-14 | 2022-11-15 | 삼성전자주식회사 | 스토리지 장치 및 스토리지 장치의 동작 방법 |
| DE102017004620A1 (de) * | 2016-07-04 | 2018-01-04 | Sew-Eurodrive Gmbh & Co Kg | Sicherheitseinrichtung und Verfahren zum Betreiben eines Systems |
| DE102017111939A1 (de) * | 2017-05-31 | 2018-12-06 | Krohne Messtechnik Gmbh | Verfahren zur sicheren Kommunikation mit einem Feldgerät der Prozessmesstechnik und ein entsprechendes Feldmessgerät der Prozessmesstechnik |
| US10467439B2 (en) * | 2017-07-05 | 2019-11-05 | Dell Products, L.P. | Detecting tampering of memory contents in an information handling system |
| US11074324B2 (en) | 2018-09-05 | 2021-07-27 | International Business Machines Corporation | Preventing software application tampering |
| US11163912B2 (en) * | 2019-03-25 | 2021-11-02 | Micron Technology, Inc. | Data attestation in memory |
| US11436315B2 (en) * | 2019-08-15 | 2022-09-06 | Nuvoton Technology Corporation | Forced self authentication |
| CN111008389B (zh) * | 2019-12-05 | 2020-10-20 | 成都星时代宇航科技有限公司 | 基于卫星中文件系统的数据处理方法及装置 |
| US11520940B2 (en) | 2020-06-21 | 2022-12-06 | Nuvoton Technology Corporation | Secured communication by monitoring bus transactions using selectively delayed clock signal |
| CN114691341B (zh) * | 2022-04-18 | 2025-06-03 | 北京自如信息科技有限公司 | 一种基于CocoaPods的打包任务处理方法、装置和电子设备 |
| CN115378671A (zh) * | 2022-08-09 | 2022-11-22 | 中国电子信息产业集团有限公司第六研究所 | 一种工程文件的可信检测系统、方法、设备以及存储介质 |
Family Cites Families (32)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4405829A (en) * | 1977-12-14 | 1983-09-20 | Massachusetts Institute Of Technology | Cryptographic communications system and method |
| US4748668A (en) * | 1986-07-09 | 1988-05-31 | Yeda Research And Development Company Limited | Method, apparatus and article for identification and signature |
| US5224160A (en) * | 1987-02-23 | 1993-06-29 | Siemens Nixdorf Informationssysteme Ag | Process for securing and for checking the integrity of the secured programs |
| US4811377A (en) * | 1987-07-31 | 1989-03-07 | Motorola, Inc. | Secure transfer of radio specific data |
| US5442645A (en) * | 1989-06-06 | 1995-08-15 | Bull Cp8 | Method for checking the integrity of a program or data, and apparatus for implementing this method |
| JPH0388051A (ja) * | 1989-08-31 | 1991-04-12 | Nec Corp | 主記憶監視方式 |
| DK624489A (da) * | 1989-12-11 | 1991-06-12 | Cetelco As | Sikkerhedskredsloeb til mobiltelefon samt en fremgangsmaade ved brug af kredsloebet |
| JPH03237253A (ja) * | 1990-02-09 | 1991-10-23 | Nippondenso Co Ltd | 自動車用制御装置 |
| JP2830302B2 (ja) * | 1990-02-15 | 1998-12-02 | 株式会社デンソー | 自動車用制御装置 |
| US5390245A (en) * | 1990-03-09 | 1995-02-14 | Telefonaktiebolaget L M Ericsson | Method of carrying out an authentication check between a base station and a mobile station in a mobile radio system |
| US5046082A (en) * | 1990-05-02 | 1991-09-03 | Gte Mobile Communications Service Corporation | Remote accessing system for cellular telephones |
| US5142579A (en) * | 1991-01-29 | 1992-08-25 | Anderson Walter M | Public key cryptographic system and method |
| US5237612A (en) * | 1991-03-29 | 1993-08-17 | Ericsson Ge Mobile Communications Inc. | Cellular verification and validation system |
| JPH052535A (ja) * | 1991-06-26 | 1993-01-08 | Hitachi Ltd | 半導体記憶装置 |
| JPH0553919A (ja) * | 1991-08-26 | 1993-03-05 | Fujitsu Ltd | メモリ異常アクセス防止方法 |
| US5204902A (en) * | 1991-09-13 | 1993-04-20 | At&T Bell Laboratories | Cellular telephony authentication arrangement |
| US5153919A (en) * | 1991-09-13 | 1992-10-06 | At&T Bell Laboratories | Service provision authentication protocol |
| WO1993007565A1 (en) * | 1991-10-01 | 1993-04-15 | Motorola, Inc. | Memory write protection method and apparatus |
| US5442706A (en) * | 1992-02-27 | 1995-08-15 | Hughes Aircraft Company | Secure mobile storage |
| JPH05265866A (ja) * | 1992-03-19 | 1993-10-15 | Csk Corp | 外部romのセキュリティシステム |
| JPH05327582A (ja) * | 1992-05-19 | 1993-12-10 | Fujitsu Ltd | 携帯電話機のプログラムメモリ書き替え方式 |
| JP2973723B2 (ja) * | 1992-07-30 | 1999-11-08 | 日本電気株式会社 | 携帯電話機の加入者情報設定方式 |
| JPH0697931A (ja) * | 1992-09-14 | 1994-04-08 | Fujitsu Ltd | パーソナル通信端末登録制御方式 |
| JPH06223041A (ja) * | 1993-01-22 | 1994-08-12 | Fujitsu Ltd | 広域環境利用者認証方式 |
| US5551073A (en) * | 1993-02-25 | 1996-08-27 | Ericsson Inc. | Authentication key entry in cellular radio system |
| JP3115157B2 (ja) * | 1993-06-29 | 2000-12-04 | 三菱電機株式会社 | ソフトウェア配布サービス方式 |
| US5384847A (en) * | 1993-10-01 | 1995-01-24 | Advanced Micro Devices, Inc. | Method and apparatus for protecting cordless telephone account authentication information |
| US5343527A (en) * | 1993-10-27 | 1994-08-30 | International Business Machines Corporation | Hybrid encryption method and system for protecting reusable software components |
| JP3052244B2 (ja) * | 1993-11-10 | 2000-06-12 | 富士通株式会社 | 移動通信システムにおける移動機の登録方法とicカードの登録方法、及びそれらを実現するための移動機、icカード、及びicカード挿入型移動機 |
| US5606315A (en) * | 1994-12-12 | 1997-02-25 | Delco Electronics Corp. | Security method for protecting electronically stored data |
| WO1996024894A1 (en) * | 1995-02-08 | 1996-08-15 | Sega Enterprises, Ltd. | Information processor having security check function |
| US5737701A (en) * | 1995-10-03 | 1998-04-07 | At&T Corp. | Automatic authentication system |
-
1996
- 1996-09-05 US US08/706,574 patent/US6026293A/en not_active Expired - Lifetime
-
1997
- 1997-09-05 EP EP97939691A patent/EP0923842B1/en not_active Expired - Lifetime
- 1997-09-05 KR KR10-1999-7001850A patent/KR100492840B1/ko not_active Expired - Lifetime
- 1997-09-05 PL PL97332050A patent/PL332050A1/xx unknown
- 1997-09-05 AU AU41722/97A patent/AU734212B2/en not_active Expired
- 1997-09-05 JP JP51277098A patent/JP4050322B2/ja not_active Expired - Lifetime
- 1997-09-05 EE EEP199900084A patent/EE9900084A/xx unknown
- 1997-09-05 BR BRPI9712007A patent/BRPI9712007B1/pt active IP Right Grant
- 1997-09-05 WO PCT/US1997/015311 patent/WO1998010611A2/en not_active Ceased
- 1997-09-05 ES ES97939691T patent/ES2262189T3/es not_active Expired - Lifetime
- 1997-09-05 DE DE69736065T patent/DE69736065T2/de not_active Expired - Lifetime
- 1997-09-05 CN CN97199389A patent/CN1126398C/zh not_active Expired - Lifetime
-
2003
- 2003-01-17 CN CN03102720A patent/CN1446015A/zh active Pending
-
2007
- 2007-04-16 JP JP2007107618A patent/JP2007293847A/ja active Pending
- 2007-10-09 JP JP2007263735A patent/JP4777957B2/ja not_active Expired - Lifetime
-
2011
- 2011-01-17 JP JP2011007295A patent/JP4955818B2/ja not_active Expired - Lifetime
- 2011-06-03 JP JP2011125634A patent/JP4917681B2/ja not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| PL332050A1 (en) | 1999-08-16 |
| AU734212B2 (en) | 2001-06-07 |
| US6026293A (en) | 2000-02-15 |
| JP2001500293A (ja) | 2001-01-09 |
| DE69736065T2 (de) | 2007-01-04 |
| AU4172297A (en) | 1998-03-26 |
| BR9712007A (pt) | 1999-08-24 |
| CN1235743A (zh) | 1999-11-17 |
| KR100492840B1 (ko) | 2005-06-07 |
| JP4955818B2 (ja) | 2012-06-20 |
| JP4777957B2 (ja) | 2011-09-21 |
| WO1998010611A3 (en) | 1998-07-09 |
| CN1446015A (zh) | 2003-10-01 |
| HK1021104A1 (en) | 2000-05-26 |
| EP0923842B1 (en) | 2006-06-07 |
| ES2262189T3 (es) | 2006-11-16 |
| WO1998010611A2 (en) | 1998-03-12 |
| JP4917681B2 (ja) | 2012-04-18 |
| EE9900084A (et) | 1999-10-15 |
| EP0923842A2 (en) | 1999-06-23 |
| JP2008112443A (ja) | 2008-05-15 |
| JP2011170841A (ja) | 2011-09-01 |
| JP2007293847A (ja) | 2007-11-08 |
| CN1126398C (zh) | 2003-10-29 |
| DE69736065D1 (de) | 2006-07-20 |
| JP2011238246A (ja) | 2011-11-24 |
| JP4050322B2 (ja) | 2008-02-20 |
| KR20000068467A (ko) | 2000-11-25 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| BRPI9712007B1 (pt) | dispositivo eletrônico e processo para detectar violação de memória em um dispositivo eletrônico | |
| JP4912879B2 (ja) | プロセッサの保護された資源へのアクセスに対するセキュリティ保護方法 | |
| US7886355B2 (en) | Subsidy lock enabled handset device with asymmetric verification unlocking control and method thereof | |
| KR101216306B1 (ko) | 이동 단말기에서의 구성 파라미터 갱신 | |
| US7539868B2 (en) | Run-time firmware authentication | |
| US9317708B2 (en) | Hardware trust anchors in SP-enabled processors | |
| KR20080039145A (ko) | 이동 단말의 불법 사용을 방지하기 위한 방법 및 장치 | |
| CN121682809A (zh) | 片上系统、安全启动验证方法、芯片及设备 | |
| AU5418201A (en) | System for preventing electronic memory tampering | |
| HK1021104B (en) | System for preventing electronic memory tampering | |
| KR20070017455A (ko) | 프로세서 내에서의 보호된 리소스들로의 억세스에 대한안전한 보호 방법 | |
| HK1059525A (en) | System for preventing electronic memory tampering | |
| MXPA99002040A (en) | System for preventing electronic memory tampering |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| B15K | Others concerning applications: alteration of classification |
Free format text: ALTERADA A CLASSIFICACAO DE H04Q 7/32 PARA INT. CL. 2011.01 H04W 12/08, H04L 9/32, G06F 12/14 Ipc: H04W 12/08 (2011.01), H04L 9/32 (2011.01), G06F 12 |
|
| B07A | Application suspended after technical examination (opinion) [chapter 7.1 patent gazette] | ||
| B07B | Technical examination (opinion): publication cancelled [chapter 7.2 patent gazette] | ||
| B07A | Application suspended after technical examination (opinion) [chapter 7.1 patent gazette] | ||
| B09B | Patent application refused [chapter 9.2 patent gazette] |
Free format text: INDEFIRO O PEDIDO DE ACORDO COM ART. 8O COMBINADO COM ART. 13 E ART. 22 DA LPI |
|
| B12B | Appeal against refusal [chapter 12.2 patent gazette] | ||
| B16A | Patent or certificate of addition of invention granted [chapter 16.1 patent gazette] |