[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

BRPI1105958B1 - Dispositivo com microcircuitos de controle de execução de pelo menos uma função interna protegida embarcada no mesmo e processo para tal - Google Patents

Dispositivo com microcircuitos de controle de execução de pelo menos uma função interna protegida embarcada no mesmo e processo para tal Download PDF

Info

Publication number
BRPI1105958B1
BRPI1105958B1 BRPI1105958-3A BRPI1105958A BRPI1105958B1 BR PI1105958 B1 BRPI1105958 B1 BR PI1105958B1 BR PI1105958 A BRPI1105958 A BR PI1105958A BR PI1105958 B1 BRPI1105958 B1 BR PI1105958B1
Authority
BR
Brazil
Prior art keywords
microcircuits
protected
surveillance
mobile terminal
execution
Prior art date
Application number
BRPI1105958-3A
Other languages
English (en)
Inventor
Aurélien RABOISSON
Sylvestre Denis
Original Assignee
Oberthur Technologies
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Oberthur Technologies filed Critical Oberthur Technologies
Publication of BRPI1105958A2 publication Critical patent/BRPI1105958A2/pt
Publication of BRPI1105958B1 publication Critical patent/BRPI1105958B1/pt

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/32Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
    • G06Q20/327Short range or proximity payments by means of M-devices
    • G06Q20/3278RFID or NFC payments by means of M-devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/32Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
    • G06Q20/322Aspects of commerce using mobile devices [M-devices]
    • G06Q20/3229Use of the SIM of a M-device as secure element
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C9/00Individual registration on entry or exit
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F7/00Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
    • G07F7/08Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
    • G07F7/10Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means together with a coded signal, e.g. in the form of personal identification information, like personal identification number [PIN] or biometric data
    • G07F7/1008Active credit-cards provided with means to personalise their use, e.g. with PIN-introduction/comparison system

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Accounting & Taxation (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Storage Device Security (AREA)
  • Telephone Function (AREA)
  • Power Sources (AREA)

Abstract

dispositivo com microcircuitos de controle de execução de pelo menos uma função interna protegida embarcada no mesmo e processo para tal a invenção tem notadamente por objeto o controle de execução de funções internas e de aplicações protegidas embarcadas em um cartão com microcircuitos para terminal móvel. o controle de uma função interna protegida é diretamente efetuado no cartão com microcircuitos. depois de ter detectado (400) um comando de colocação em vigilância do cartão, a partir de uma informação recebida de um terminal móvel no qual é conectado o cartão, pelo menos uma indicação relativa à execução da função interna protegida é analisada (415). se a função interna protegida é suscetível de ser afetada pela execução do comando de colocação em vigilância, a execução do comando de colocação em vigilância é diferida (410).

Description

[0001] A presente invenção trata da execução de funções em cartões de microcircuitos e mais particularmente um processo e um dispositivo de controle de execução para funções internas e aplicações protegidas embarcadas em cartões com microcircuitos para terminais móveis, notadamente cartões de identificação.
[0002] O desenvolvimento dos terminais móveis tais como os telefones móveis acarretou o desenvolvimento de numerosas aplicações que não são necessariamente, em si mesmas, aplicações de telefonia. Dentre estas aplicações, existem notadamente aplicações de jogo, de gestão de informações pessoais, de gestão do tempo, de carteira eletrônica, de pagamento, etc.. Uma aplicação de pagamento ou de carteira eletrônica permite pagar um produto ou um serviço por intermédio de seu terminal móvel.
[0003] De acordo com sua natureza, o acesso a estas aplicações ou a algumas de suas funcionalidades pode ser controlado. Assim, por exemplo, as aplicações de pagamento, notadamente para o pagamento de somas substanciais, requerem geralmente uma identificação do usuário. Uma tal identificação pode ser realizada a partir de um cartão de identificação se o terminal móvel utilizado para executar a aplicação dele dispor.
[0004] Existem notadamente cartões de identificação conhecidos sob os nomes de cartões SIM (acrônimo de Subscriber ldentity Module em terminologia anglo- saxônica), cartões USIM (acrônimo de Universal Subscriber ldentity Module em terminologia anglo-saxônica), cartões UICC (acrônimo de UMTS lntegrated Circuit Card em terminologia anglo-saxônica, UMTS sendo a sigla de Universal Mobile Telecommunications System em terminologia anglo-saxônica) e cartões RUIM (acrônimo de Removable Universal Identity Module em terminologia anglo-saxônica).
[0005] Estes cartões compreendem geralmente meios de processamento de dados e meios de memorização de dados para o armazenamento das informações específicas para um usuário de uma rede de telefonia móvel. A presença de um tal cartão dentro de um terminal móvel, em particular de um telefone móvel, permite a este terminal, graças às informações contidas no cartão de identificação, se conectar à rede e trocar dados com outros terminais da rede, notadamente de maneira segura (o cartão contém por exemplo uma chave criptográfica permitindo se autenticar junto à rede e cifrar trocas de dados).
[0006] Os cartões de identificação formam um elemento tornado seguro dos terminais móveis permitindo uma autenticação dos usuários destes cartões graças a chaves de autenticação memorizadas, por exemplo, nos meios de memorização destes cartões.
[0007] Além disso, alguns terminais móveis dispõem de meios de comunicação sem fio de baixo alcance, por exemplo de tipo NFC (sigla de Near Field Communicação em terminologia anglo-saxônica). Os terminais móveis compreendem então uma antena de comunicação de campo próximo. Esta antena pode igualmente ser integrada amovível do terminal. Ela permite a troca de dados entre o terminal móvel e um equipamento externo tal como um terminal de pagamento.
[0008] Assim, é possível, com a ajuda de um terminal móvel, efetuar um pagamento por comunicação sem contato. Uma tal comunicação é, por exemplo, conforme a norma ISO 14 443 que visa um formato de cartão de identificação e um protocolo de comunicação associado.
[0009] Para utilizar este tipo de serviços ou para trocar informações, o usuário aproxima seu terminal móvel do terminal, de tal sorte que uma transação por comunicação em campo próximo possa ser realizada.
[0010] Ainda mais, uma seleção de aplicações bancárias pode ser ativada no cartão de identificação do terminal móvel utilizado, por exemplo pelo microcontrolador de um cartão SIM. A ativação desta seleção de aplicações é por exemplo comandada pelo terminal móvel conforme a norma ISO 7816 relativa aos cartões de identificação com contatos. O usuário pode então escolher uma das aplicações bancárias selecionadas.
[0011] Como indicado precedentemente e a fim de tornar segura uma operação efetuada pela aplicação escolhida, uma autenticação do usuário pode ser efetuada. Esta última ci pode notadamente consistir em demandar uma senha ao usuário, por exemplo seu código PIN (acrônimo de Personal Identificação Number em terminologia anglo-saxônica), via uma interface gráfica do terminal móvel. O código PIN utilizado aqui é geralmente diferente do código PIN utilizado para aceder às funções de telefonia. Depois que o usuário a tiver lançado, por exemplo com a ajuda de um teclado, real ou virtual (utilizando por exemplo uma tela de toque), esta senha é transmitida ao cartão de identificação, por exemplo segundo a norma ISO 7816, que o compara a um código armazenado em uma memória não volátil do cartão de identificação. Se esta senha e este código coincidem, a operação é autorizada, caso contrário, ela é rejeitada.
[0012] Por razões de segurança, a senha lançada pelo usuário tem geralmente uma duração limitada. Assim, se a operação visada não foi efetuada no retardo fixado, o código expira. Um tal retardo é geralmente predeterminado, seu valor é tipicamente de um minuto. Se o retardo expirou e o usuário deseja no entanto efetuar a operação visada, ele deve recuperar a senha.
[0013] Ainda que um tal sistema permita limitar os riscos de fraude, existe no entanto uma necessidade constante de melhorar a segurança ligada à execução de algumas operações efetuadas a partir de um terminal móvel, notadamente de transações.
[0014] A invenção permite resolver pelo menos um dos problemas expostos precedentemente.
[0015] A invenção tem assim por objeto um processo de controle de execução de pelo menos uma função interna protegida embarcada em um dispositivo com microcircuitos adaptado para ser utilizado em cooperação com um terminal móvel, este processo, conduzido no dito dispositivo com microcircuitos, compreendendo as etapas seguintes, - detecção de um comando de colocação em vigilância do dito dispositivo com microcircuitos, o dito comando de colocação em vigilância sendo detectado a partir de uma informação recebida de um terminal móvel no qual é conectado o dito dispositivo com microcircuitos; - análise de pelo menos uma indicação relativa à execução da dita pelo menos uma função interna protegida; e - se a dita pelo menos uma função interna protegida é suscetível de ser afetada pela execução do dito comando de colocação em vigilância, execução diferida do dito comando de colocação em vigilância.
[0016] O processo de acordo com a invenção permite assim proteger a integridade de um dispositivo com microcircuitos tal como um cartão com microcircuitos e assegurar a proteção de aplicações protegidas executadas por este dispositivo diferindo, se necessário, a execução de comandos de colocação em vigilância do dispositivo. Para estes fins, um comando de colocação em vigilância é diferido em função da execução de funções internas protegidas, por exemplo de funções de contagem podendo ser utilizadas para determinar a validade de uma senha ou de funções de gestão de memórias do dispositivo com microcircuitos.
[0017] De acordo com um modo de realização particular, o processo compreende ainda as etapas seguintes, - colocação em a um primeiro valor de uma variável de estado durante o lançamento da dita pelo menos uma função interna protegida; e, - colocação em um segundo valor da dita variável de estado quando a execução da dita pelo menos uma função interna protegida é terminada ou quando a dita função interna protegida é reinicializada; a dita etapa de análise compreendendo uma etapa de análise do valor da dita variável de estado.
[0018] De acordo com este modo de realização, uma variável de estado é utilizada como meio de troca de informações entre funções internas protegidas e um módulo de gestão de colocação em vigilância do dispositivo, este módulo podendo, em função do valor desta variável, ou seja, em função da execução de funções internas protegidas, diferir ou não a execução de um comando de colocação em vigilância.
[0019] De acordo com um outro modo de realização, a execução do dito comando de colocação em vigilância é diretamente controlada pela dita pelo menos uma função interna protegida. Não é então necessário utilizar variável de estado para estes fins.
[0020] De maneira vantajosa, o processo compreende ainda uma etapa de comparação de um nível de vigilância demandado associado à dita comando de colocação em vigilância com um estado de vigilância do dito dispositivo com microcircuitos. Assim, de acordo com os valores relativos dos níveis de vigilância demandado e real, pode ser determinado se é necessário ou não verificar se a execução de um comando de colocação em vigilância deve ser diferida ou não.
[0021] Sempre de acordo com um modo de realização particular o dito dispositivo com microcircuitos ou o dito terminal móvel sendo provido de meios de comunicação sem fio de baixo alcance e o dito dispositivo com microcircuito compreendendo uma aplicação protegida embarcada recorrendo aos ditos meios de comunicação sem fio de baixo alcance e à dita função interna protegida, o processo compreende ainda as etapas seguintes, - recepção de um dado de autenticação para a execução da dita aplicação protegida, o dito dado de autenticação sendo recebido do dito terminal móvel; - comparação do dito dado de autenticação recebido com pelo menos um dado armazenado no dito dispositivo com microcircuitos; - se o dito dado de autenticação recebido corresponde ao dito pelo menos um dado armazenado e se a dita aplicação protegida é solicitada, verificação da validade do dito dado de autenticação recebido segundo pelo menos um critério definido dinamicamente no dito dispositivo com microcircuitos; e, - se o dito dado de autenticação recebido é válido, execução da dita aplicação protegida.
[0022] O processo de acordo com a invenção permite assim determinar a validade de uma senha lançada por um usuário, sem recorrer a meios do terminal móvel em que é utilizado o dispositivo com microcircuitos. O processo de acordo com a invenção permite assim melhorar a segurança ligada à utilização de uma senha.
[0023] De maneira vantajosa, a dita função interna protegida é uma função de contagem, o processo compreendendo ainda, se o dito dado de autenticação recebido corresponde ao dito pelo menos um dado armazenado, uma etapa de solicitação à dita função de contagem para um retardo de uma duração predeterminada, a dita etapa de verificação compreendendo a verificação que o dito retardo não decorreu. A validade de uma senha é assim limitada no tempo, a contagem do tempo sendo efetuada de maneira segura no dispositivo com microcircuitos. A dita função de contagem é, de preferência, baseada sobre um relógio material do dito dispositivo com microcircuitos.
[0024] Sempre de acordo com um modo de realização particular, o processo compreende ainda as etapas seguintes, - recepção de pelo menos uma informação do dito terminal móvel ao qual é conectado o dito dispositivo com microcircuitos para informar que pelo menos um terminal de acesso sem contato é acessível via os ditos meios de comunicação sem fio de baixo alcance; - seleção de pelo menos a dita aplicação protegida embarcada no dito dispositivo com microcircuitos em resposta à dita pelo menos uma informação recebida e transmissão de pelo menos uma referência à dita pelo menos aplicação selecionada ao dito terminal móvel; e, - recepção de pelo menos um identificador de uma aplicação, o dito identificador correspondendo a uma referência à dita aplicação protegida embarcada.
[0025] O processo permite assim a condução simples e segura de aplicações tais como aplicações de pagamento.
[0026] A invenção tem igualmente por objeto um programa de computador compreendendo instruções adaptadas à condução de cada uma das etapas do processo descrito precedentemente quando o dito programa é executado sobre um computador.
[0027] A invenção tem também por objeto um dispositivo compreendendo meios tais como um microcontrolador adaptados à condução de cada uma das etapas do processo descrito precedentemente assim como um cartão de identificação de um assinante a uma rede de telefonia móvel compreendendo um tal dispositivo e um terminal móvel integrando um tal dispositivo.
[0028] De acordo com um modo de realização particular, o dispositivo compreende ainda pelo menos uma memória configurada para memorizar pelo menos um dado relativo à dita pelo menos uma função interna protegida. Sempre de acordo com um modo de realização particular, o microcontrolador é ainda configurado para executar um algoritmo de criptografia protegendo o dito pelo menos um dado relativo à dita pelo menos uma função interna protegida e/ou para executar um algoritmo de proteção material de pelo menos um componente do dito dispositivo a fim de melhorar a proteção da dita pelo menos uma função interna.
[0029] As vantagens obtidas por este programa de computador, este dispositivo e este cartão de identificação são similares àquelas mencionadas precedentemente.
[0030] Outras vantagens, finalidades e características da presente invenção vão ressaltar da descrição detalhada que se segue, dada a título de exemplo não limitativo, em face dos desenhos anexos nos quais:
[0031] - a figura 1 representa esquematicamente um terminal móvel e um cartão com microcircuito associado permitindo a condução da invenção;
[0032] - a figura 2 ilustra algumas etapas conduzidas em um terminal móvel conforme a invenção;
[0033] - a figura 3 ilustra algumas etapas conduzidas em um cartão com microcircuito conforme a invenção; e,
[0034] - a figura 4 ilustra algumas etapas de um exemplo de algoritmo de um módulo de gestão de colocação em vigilância, conforme a invenção.
[0035] Foi observado que a segurança ligada à execução de algumas operações efetuadas por um terminal móvel em conjunção com um cartão com microcircuitos apresenta fraquezas em que uma parte do mecanismo de segurança é conduzida no terminal móvel e que este último não pode ser considerado como uma zona de execução segura.
[0036] Em particular, foi observado que em razão das especificações das operadoras móveis e bancárias, os terminais móveis conduzem aplicações intermediárias. Estas últimas são notadamente utilizadas para calcular o retardo de expiração de uma senha lançada por um usuário. Elas podem ser implementadas sob forma de midlet, ou seja, de um conjunto de API (sigla de Application Program Interface em terminologia anglo-saxônica) Java definindo a maneira pela qual aplicações executadas em um cartão inserido em um terminal móvel se conectam à interface de terminal. Da mesma forma, uma senha pode ser válida para um número de utilizações dado.
[0037] Em outros termos, aplicações protegidas que devem ser executadas por intermédio de um terminal móvel têm uma segurança relativa. A título de ilustração, o comando de invalidação de uma senha no final de um retardo de expiração é uma função condução sobre um terminal móvel e cujo resultado é tipicamente transmitido de maneira não segura a um cartão com microcircuitos, por exemplo um cartão SIM. Os midlets que executam estas funções não são certificados, notadamente por autoridades bancárias. Estas funções podem então ser o alvo de ataques fraudulentos e seus resultados podem ser interceptados.
[0038] Além disso, midlets podem ser falhos, o que pode levar a que uma senha seja válida durante um período considerável. Assim, por exemplo, quando um usuário deve lançar uma senha para efetuar transações superiores a uma soma dada, ele pode efetuar transações superiores a esta soma sem se ter conta se o mecanismo de expiração da senha é falho.
[0039] Adicionalmente, é observado que os cartões com microcircuitos são geralmente providos de um modo, chamado modo vigilância, permitindo inibir, parcialmente ou totalmente, funções destes cartões. Um tal modo tem por objeto reduzir o consumo elétrico do cartão com microcircuitos a fim de preservar a carga da bateria do terminal móvel no qual é utilizada o cartão com microcircuitos (um cartão com microcircuitos sendo tipicamente alimentado eletricamente pelo terminal móvel ao qual ele é conectado). Assim, em outros termos, existe um estado ativo no qual um cartão com microcircuitos pode ser utilizado «normalmente», um ou vários estados de vigilância de acordo com os quais apenas algumas funções do cartão podem ser utilizadas e um estado parado no qual nenhuma função pode ser utilizada. Para passar para um estado ativo ou de vigilância a partir do estado parado, é preciso geralmente iniciar o cartão, o que leva um tempo geralmente não desprezível. O estado de um cartão com microcircuitos é, de acordo com as normas correntes, controlado pelo terminal móvel no qual o cartão é utilizado. Assim, por exemplo, a função de um terminal móvel para colocar em vigilância um cartão com microcircuitos, mais precisamente para parar seu relógio interno está de acordo com a norma ISO 7816, «clockstop» que tem por efeito de parar o sinal de relógio transmitido pelo terminal móvel ao cartão com microcircuitos. Quando o cartão com microcircuitos detecta a parada do sinal de relógio, ele se põe em vigilância.
[0040] A invenção visa a execução de funções internas protegidas, notadamente de funções de segurança, por exemplo funções de cálculo de um retardo de expiração de uma senha ou, mais geralmente, de um dado de autenticação lançado por um usuário, em um cartão com microcircuitos, por exemplo um cartão SIM, UICC, UMTS ou RUIM, configurado para ser utilizado em cooperação com um terminal móvel. Assim, conforme a invenção, a validade de um dado de autenticação de um usuário é efetuada de acordo com um critério definido dinamicamente no cartão de identificação. Este critério é tipicamente uma duração de validade e/ou um número de utilizações. A invenção visa igualmente a execução de outras funções protegidas tais como funções de gestão de memória.
[0041] A figura 1 representa um terminal móvel 100 apto a realizar a invenção. Como ilustrado, o terminal móvel 100 compreende um módulo 105 de telefonia móvel, vantajosamente ligado a um alto-falante 110 e a um microfone 115. O módulo de telefonia móvel é ligado a uma antena (não representada) do terminal móvel 100 para comunicar com a rede de telefonia móvel O terminal móvel 100 compreende igualmente uma unidade central de processamento 120, também chamada CPU (sigla de Central Processing Unit em terminologia anglo-saxônica) e, de preferência, uma tela 125.
[0042] O terminal móvel 100 compreende ainda um módulo 130 de comunicação de baixo alcance, vantajosamente um módulo de comunicação sem fio de baixo alcance. O módulo 130 é por exemplo do tipo NFC. O módulo 130 pode ser diretamente implantado no terminal móvel 100, por exemplo sob forma de circuito integrado e de antena, ou inserido no terminal móvel 100, por exemplo, sob forma de cartão com microcircuitos compreendendo uma antena integrada.
[0043] O terminal móvel compreende igualmente um dispositivo de lançamento 135, tal como um teclado ou um dispositivo equivalente, para lançar caracteres, valores e/ou comandos. O dispositivo de lançamento 135 forma, em cooperação com a tela 125, uma interface de usuário. O dispositivo de lançamento 135 pode igualmente ser integrado à tela 125 sob forma de tela de toque.
[0044] O terminal móvel 100 compreende também um módulo memória 140 adaptado para memorizar pelo menos aplicações e/ou interfaces lógicas 145 utilizadas entre o terminal móvel 100 e alguns destes componentes, fixos ou amovíveis, tais como o módulo 130 e um cartão com microcircuitos conectado a este terminal móvel, por exemplo o cartão de identificação 150.
[0045] O cartão de identificação 150 é aqui um cartão SIM provido de um microcontrolador 155, de uma primeira memória 160 e de uma segunda memória 170. A primeira memória 160 é aqui utilizada para armazenar aplicações tais como aplicações do usuário, de sua operadora e aplicações bancárias. Uma parte 165 desta memória é ainda utilizada para armazenar informações, parâmetros e/ou informações do usuário para lhe permitir ter acesso a uma rede de telefonia móvel, em particular um código de tipo PIN. A primeira memória 160 é tipicamente uma memória de tipo flash. A segunda memória 170 é aqui uma memória de tipo ROM (acrônimo de Read Only Memory em terminologia anglo-saxônica). Ela é notadamente utilizada para armazenar o sistema de exploração do cartão de identificação assim como funções de interface.
[0046] De acordo com um modo de realização particular, o módulo 130 de comunicação de baixo alcance pode ser integrado, parcialmente ou totalmente, ao cartão de identificação 150.
[0047] O cartão de identificação 150 é, de preferência, amovível e seguro.
[0048] A invenção visa um mecanismo levado diretamente em um cartão com microcircuito, ou seja, de maneira geral, um dispositivo com microcircuitos, por exemplo no cartão SIM 150, para controlar a execução de funções internas protegidas, relativamente ao estado do cartão, notadamente de funções internas solicitadas por aplicações protegidas. O dispositivo com microcircuitos, compreendendo por exemplo o microcontrolador 155 e as memórias 160 e 170, pode ser integrado ao terminal móvel.
[0049] De acordo com um modo de realização particular, a invenção tem por objeto um mecanismo para gerir dinamicamente a validade de uma senha lançada por um usuário com a ajuda de meios de lançamento tais como o teclado 135. Este mecanismo pode notadamente consistir em controlar a duração de validade da senha e/ou em testar o número de execuções de uma aplicação protegidas utilizando uma mesma senha lançada. Um tal mecanismo interno ao cartão com microcircuitos é menos sensível aos ataques que um mecanismo similar levado em um terminal móvel porque o ambiente de um cartão com microcircuitos é geralmente mais seguro que o ambiente do terminal móvel. Além disso, um tal mecanismo pode mais facilmente ser certificado, por exemplo por uma autoridade bancária.
[0050] De maneira vantajosa, este mecanismo utiliza uma função interna do cartão com microcircuitos, geralmente chamada timer em terminologia anglo- saxônica. Um timer é tipicamente definido como sendo uma função, material ou software, encarregados de gerar uma interrupção após um número de avisos de relógio para ativar ou executar uma outra função, tipicamente do código lógico. Este número de avisos de relógio e o relógio que deve ser utilizado (por exemplo o relógio do cartão com microcircuitos) são geralmente fornecidos à função como parâmetros.
[0051] Conforme a invenção, uma interface (API) é, por exemplo, acrescentada ao sistema de exploração utilizado dentro do cartão com microcircuitos para oferecer funções internas de controle de validade de uma senha recebida do terminal móvel ao qual é conectado o cartão. Estas funções permitem notadamente contar uma duração predefinida de validade de uma senha. A interface acrescentada aqui consiste por exemplo em um serviço fornecido pelo sistema de exploração do cartão SIM a uma aplicação bancária, por exemplo uma aplicação de tipo cardlet. Um tal serviço é por exemplo solicitado desde que uma senha recebida é considerada como correta, ou seja, quando ela corresponde a um dado de autenticação previamente memorizado.
[0052] Para controlar uma duração predefinida de validade de uma senha, o relógio material do cartão com microcircuitos é, de preferência utilizado. A função timer utilizando um tal relógio, também chamada hardware timer em terminologia anglo-saxônica, pode ser considerada como uma extensão material do sistema de exploração do cartão com microcircuitos, o sistema de exploração sendo geralmente lógico. Esta função hardware timer, geralmente existente dentro dos cartões SIM, mais precisamente dentro do microcontrolador, oferece vantagem de ser correntemente certificada, pelos fabricantes, de acordo com os critérios comuns conhecidos sob o nome de EAL4+.
[0053] Em variante, uma função lógica timer (chamada software timer em terminologia anglo-saxônica) pode ser utilizada. O relógio utilizado para estes fins pode ser gerado a partir do relógio material do cartão com microcircuitos ou a partir de um relógio do terminal móvel. Uma função lógica timer não é geralmente certificada pelos fabricantes.
[0054] De acordo com um modo de realização preferido, o cartão com microcircuitos compreende pelo menos dois níveis de vigilância. Um primeiro nível corresponde a uma vigilância total de acordo com a qual o conjunto de seus componentes está em vigilância (trata-se então de um modo de vigilância padrão). Um segundo nível corresponde a uma vigilância parcial de acordo com a qual algumas funções estão ativas. Assim, por exemplo, a função de contagem de uma duração predefinida de validade de uma senha pode permanecer ativa neste nível de vigilância. Em outros termos, no modo de vigilância parcial, a função timer (software timer ou hardware timer) aqui está ativa.
[0055] A figura 2 ilustra algumas etapas conduzidas em um terminal móvel conforme a invenção.
[0056] Uma primeira etapa (etapa 200) tem por objeto a detecção de um terminal, por exemplo um terminal de pagamento de um objeto ou de um serviço, tal como o acesso a um museu. De acordo com a configuração do módulo de comunicação sem fio de baixo alcance utilizado, esta etapa pode ser realizada automaticamente por detecção de um sinal ou em resposta a um comando do usuário realizado via uma interface do terminal móvel utilizado.
[0057] Em uma etapa seguinte (etapa 205), um canal de comunicação é estabelecido entre o terminal móvel e o terminal previamente detectado. Este canal de comunicação é aqui estabelecido de acordo com um protocolo padrão, por exemplo um protocolo conforme a norma ISO 14 443. Paralelamente, de maneira simultânea ou precedentemente, um canal de comunicação é estabelecido entre o terminal móvel utilizado e um cartão com microcircuitos contida neste último (etapa 210). Novamente, este canal de comunicação é de preferência estabelecido de acordo com um protocolo padrão, por exemplo um protocolo conforme a norma ISO 7816.
[0058] Em seguida, uma informação relativa ao terminal detectado é transmitida ao cartão com microcircuitos para lhe permitir selecionar aplicações contidas nesta último e podendo ser executadas. A seleção de aplicações é, de preferência, baseada sobre o tipo de terminal detectado. Uma referência a estas aplicações selecionadas é transmitida ao terminal móvel, por exemplo sob forma de lista (etapa 215). Trata-se, por exemplo, de aplicações bancárias.
[0059] A lista das aplicações selecionadas pode ser exibida sobre o terminal móvel a fim de permitir ao usuário escolher nela uma (etapa 220). Uma referência da aplicação escolhida é então transmitida ao cartão com microcircuitos que, se for o caso, indica ao terminal móvel que uma senha deve ser lançada pelo usuário. Neste caso, o usuário lança uma senha com a ajuda, por exemplo, de um teclado ou de um dispositivo similar ligado ao terminal móvel (etapa 225). Esta senha é então transmitida ao cartão com microcircuitos, por exemplo de acordo com a norma ISO 7816, que a verifica e começa a execução da aplicação escolhida, ou seja, de funções desta aplicação. Estas funções podem ser identificadas pela aplicação escolhida em si ou ser selecionadas pelo usuário. Pode notadamente se tratar de uma ordem de pagamento cujo montante pode ser lançado pelo usuário ou transmitido pelo terminal durante o estabelecimento da comunicação entre o terminal móvel e o terminal.
[0060] Durante a execução destas funções (etapa 230), o terminal móvel é geralmente solicitado como interface entre o cartão com microcircuitos e o módulo de comunicação sem fio de baixo alcance do terminal móvel.
[0061] Como ilustrado, o processo pode ser repetido enquanto não se põe um fim nele (de maneira automática ou pelo usuário).
[0062] A figura 3 ilustra algumas etapas executadas em um cartão com microcircuitos, por exemplo um cartão SIM, conforme a invenção.
[0063] Uma primeira etapa (etapa 300) visa aqui a seleção de aplicações contidas no cartão de identificação. Como descrito precedentemente, uma tal seleção é, de preferência, efetuada de acordo com características de um terminal com o qual o terminal móvel compreendendo o cartão com microcircuitos estabeleceu um canal de comunicação. Tais características podem assim visar indicações relativas ao pagamento de uma soma ou à recarga de um carteira eletrônica ou de uma avaliação de comunicação.
[0064] Referências às aplicações selecionadas são então transmitidas ao terminal móvel, por exemplo sob forma de uma lista. Quando uma tal lista é recebida pelo terminal móvel, ela é de preferência exibida de tal sorte que o usuário possa escolher uma delas. Quando uma aplicação foi escolhida, uma referência a esta última é transmitida ao cartão com microcircuitos, mais precisamente ao microcontrolador do cartão com microcircuitos, para lhe permitir começar a aplicação correspondente (etapa 305).
[0065] Alternativamente, se uma única aplicação é suscetível de ser executada ou em função de parâmetro de configuração, uma aplicação pode ser diretamente começada sem que ela tenha sido explicitamente escolhida pelo usuário.
[0066] Durante o lançamento de uma aplicação, um teste é efetuado para determinar se a aplicação está protegida, ou seja, se a execução desta aplicação ou de algumas de suas funções requer a autenticação do usuário (etapa 310). Na negativa, a aplicação é executada de maneira clássica pelo microcontrolador do cartão com microcircuitos.
[0067] No caso contrário, se a aplicação está protegida, uma instrução é aqui transmitida ao terminal móvel a fim de obter uma senha permitindo desbloquear a aplicação por autenticação. Esta última é, de preferência, lançada pelo usuário, com a ajuda de um teclado ou de um dispositivo similar ligado e ao terminal móvel e depois transmitido ao cartão com microcircuitos.
[0068] É observado aqui que dados ligados à ou às funções protegidas, memorizados em memórias do cartão com microcircuitos, por exemplo a memória 160 e/ou a memória 170 descritas com referência à figura 1, podem ser protegidos com a ajuda de algoritmos de criptografia respeitando a norma FIPS (acrônimo de Federal Informação Processing Standards em terminologia anglo-saxônica).
[0069] De maneira similar, componentes do cartão com microcircuitos tais como o microcontrolador 155 e as memórias 160 e 170 descritas com referência à figura 1, nas quais são memorizados dados relativos à ou às funções protegidas, podem ser protegidos materialmente contra ataques ditos não invasivos (por exemplo ataques por análise de tempo, análise de consumo, análise electromagnética e/ou ataques de relógios), invasivos ou semi-invasivos.
[0070] Após ter obtido uma senha (etapa 315), um teste é efetuado para determinar se a senha recebida é correta (etapa 320). Para estes fins, o microcontrolador do cartão com microcircuitos, ou um módulo ligado a este microcontrolador, compara a senha recebida a um dado previamente memorizado. Uma tal comparação pode notadamente ser realizada de acordo com algoritmos de autenticação e de criptografia padrão.
[0071] Alternativamente, outros modos de autenticação tais como o reconhecimento de impressões digitais podem ser utilizados.
[0072] Se a senha não é correta, põe-se fim ao procedimento ou uma instrução é transmitida ao terminal móvel para convidar o usuário a relançar uma senha (como indicado pela utilização de uma seta em traço pontilhado).
[0073] Ao contrário, se a senha é correta, uma função de contagem do tempo, ou seja, uma função interna protegida, é ativada (etapa 325). Como descrito precedentemente, esta função tem por objeto identificar um intervalo de tempo no qual a senha recebida é considerada como válida. A duração deste intervalo de tempo é, de preferência, predeterminada. A função de contagem é baseada sobre um relógio do cartão com microcircuitos ou, alternativamente, sobre um relógio do terminal móvel.
[0074] Alternativamente, a função de contagem pode ser começada antes de verificar a senha, a função de contagem sendo parada se a senha não estiver correta.
[0075] A função de contagem é tipicamente baseada sobre a função timer (de preferência a função hardware timer) descrita precedentemente. Esta última é chamada com, como parâmetros, a duração de validade da senha e o relógio que deve ser utilizado. Na expiração do timer, ou seja, no fim da execução da função timer, uma interrupção é gerada. Ela indica à função de contagem que esta última está é terminada. A função de contagem pode igualmente ser assimilada à função timer.
[0076] De acordo com um modo de realização particular, uma primeira indicação é transmitida ao sistema de exploração do cartão com microcircuitos, ou mais geralmente a um módulo de gestão de colocação em vigilância, quando a função de contagem é ativada. Da mesma forma, uma segunda indicação é transmitida ao sistema de exploração do cartão de identificação, ou mais geralmente a um módulo de gestão de colocação em vigilância, quando a função de contagem é reinicializada ou quando a contagem está terminada. Assim, conhecendo o estado da função de contagem, o sistema de exploração, ou mais geralmente um módulo de gestão de colocação em vigilância, pode interditar o estado de vigilância total do cartão de identificação quando a função de contagem está ativa. Em outros termos, apenas um estado ativo ou um estado de vigilância parcial de acordo com o qual o relógio do cartão com microcircuitos está ativo pode ser utilizado quando a função de contagem está ativa (quando o relógio do cartão de identificação é utilizado). Se a função de contagem é baseada sobre um relógio do terminal móvel, o estado de vigilância parcial é um estado de acordo com o qual a função de contagem é operacional sem que o relógio do cartão de identificação esteja necessariamente ativo.
[0077] Alternativamente, pode-se interditar mudar o estado do cartão de identificação quando a função de contagem é ativa. Assim, de maneira vantajosa, uma variável de estado, de preferência memorizada em uma memória volátil, por exemplo a variável de estado PIN_OK, é colocada em um primeiro valor quando a função de contagem é ativada (por exemplo, PIN_OK=1). Esta variável de estado é colocação a um segundo valor quando a função de contagem é reinicializada ou que a contagem é terminada (por exemplo, PIN_OK=0). Alternativamente, esta variável de estado pode ser diretamente colocado neste segundo valor quando a função timer emite uma interrupção (quando o timer expira), a função de contagem sendo então desativada quando a variável de estado é colocada neste segundo valor. Neste caso, a interrupção gerada pela função timer dispara uma função, de preferência lógica, de atualização da variável de estado PIN_OK.
[0078] Em seguida, quando um comando que visa uma função da aplicação protegida executada é processado pelo microcontrolador do cartão com microcircuitos, um teste é efetuado para determinar se a senha recebida é válida (etapa 335). É observado aqui que um comando que visa uma função da aplicação protegida executada pode estar diretamente ligado a esta última (ele é, neste caso, automaticamente recebido) pode resultar de uma escolha do usuário o comando é então recebido via a unidade central de processamento 120 por intermédio de uma instrução emitida do terminal móvel, como ilustrado pela seta em traço pontilhado) ou pode provir do terminal ao qual é conectado o terminal móvel (o comando é então recebido via o módulo 130, como ilustrado pela seta em traço pontilhado).
[0079] Para determinar se uma senha é válida, o microcontrolador do cartão com microcircuitos faz aqui solicitação à função de contagem do tempo iniciada precedentemente. Assim, se o retardo decorreu, a senha é considerada como não válida. Além disso, de acordo com um modo de realização particular, o número de execuções da aplicação protegida (ou de funções desta aplicação) desde o lançamento da senha pode ser comparado a um número de utilizações predeterminado. É assim possível limitar a utilização de uma senha a um único comando, dois comandos, etc..
[0080] Se a senha não é válida, uma instrução é transmitida ao terminal móvel para convidar o usuário a relançar uma senha (o algoritmo retorna à etapa 315 descrita precedentemente).
[0081] Se, ao contrário, a senha é considerada como válida, o comando considerado é processado e a função correspondente é executada (etapa 340). Como indicado precedentemente, a execução desta função pode recorrer ao terminal móvel, notadamente para solicitar o módulo de comunicação sem fio de baixo alcance utilizado. De acordo com um modo de realização particular segundo o qual uma senha não pode ser utilizada senão para a execução de uma única função, a função de contagem do tempo é reinicializada (para parar a mesma). Desta forma, se um novo comando protegido deve ser executado, a senha será considerada como não válida sem que seja necessário comparar o número de comandos executados desde a recepção desta senha a um número de utilizações predeterminado.
[0082] É observado aqui que aplicações podem ser protegidas pelo fato de que a execução de algumas de suas funções é submetida a algumas restrições, notadamente a autenticação do usuário, como descrito precedentemente. Entretanto, uma aplicação pode igualmente ser protegida de maneira global, ou seja, quando a execução da aplicação foi autorizada (após autenticação do usuário), não há necessidade de autenticar o usuário para executar suas funções. No entanto, quando esta aplicação recorre a uma outra aplicação protegida, pode ser necessário re-autenticar o usuário para executar esta outra aplicação.
[0083] Quando o cartão com microcircuitos detecta um comando de colocação em vigilância e se o nível de colocação em vigilância é tal que ele é suscetível de afetar a execução da aplicação protegida, notadamente a função interna de contagem, um teste é efetuado para determinar se o comando de colocação em vigilância pode ser executado ou se sua execução deve ser diferida. Para estes fins, um módulo de gestão de colocação em vigilância é, de preferência, levado no cartão com microcircuitos. Pode se tratar de um módulo material ou de um módulo lógico. Ele pode notadamente ser integrado ao sistema de exploração do cartão com microcircuitos. Se uma variável de estado, por exemplo a variável de estado PIN_OK, de preferência memorizada em memória volátil, é utilizada, o módulo de gestão de colocação em vigilância determina o valor da variável de estado e, em função deste valor, autoriza ou não a colocação no estado de vigilância demandado.
[0084] A figura 4 ilustra algumas etapas de um exemplo de algoritmo de um módulo de gestão de colocação em vigilância, conforme a invenção. Como ilustrado, uma primeira etapa (etapa 400) tem por objeto a detecção de um comando de colocação em vigilância do cartão com microcircuitos compreendendo este módulo. Conforme a norma ISO 7816, este comando é detectado a partir do sinal de relógio proveniente do terminal móvel no qual o cartão com microcircuito é utilizado, quando o sinal de relógio é parado.
[0085] Em uma etapa seguinte, o módulo de gestão de colocação em vigilância determina se o estado de vigilância demandado, associado ao comando de colocação em vigilância, é inferior ao estado de vigilância atual (etapa 405), ou seja, se o estado de vigilância demandado visa a ativação de algumas funções do cartão com microcircuitos (o estado de vigilância demandado é, neste caso, inferior ou igual ao estado de vigilância atual) ou se, ao contrário, o estado de vigilância demandado visa a inibição de algumas funções do cartão com microcircuitos (p estado de vigilância demandado é, neste caso, superior ao estado de vigilância atual).
[0086] Se o estado de vigilância demandado é inferior ou igual ao estado de vigilância atual, o comando de colocação em vigilância recebido é executado (etapa 410).
[0087] Ao contrário, se o estado de vigilância demandado é superior ao estado de vigilância atual, um teste é efetuado para determinar o valor da variável de estado utilizada para indicar que funções internas protegidas são suscetíveis de ser afetadas por uma colocação em vigilância de um nível superior ao estado de vigilância atual (etapa 415). De acordo com o exemplo dado precedentemente, esta etapa visa aqui determinar p valor da variável de estado PIN_OK.
[0088] Se o valor da variável de estado utilizada indica que funções internas protegidas não são suscetíveis de ser afetadas por uma colocação em vigilância de um nível superior ao estado de vigilância atual, o comando de colocação em vigilância recebido é executado (etapa 410).
[0089] Ao contrário, se o valor da variável de estado utilizada indica que funções internas protegidas são suscetíveis de ser afetadas por uma colocação em vigilância de um nível superior ao estado de vigilância atual, um outro teste é efetuado para determinar se o nível de vigilância demandado afeta a execução de uma função interna protegida (etapa 420), por exemplo se o estado de vigilância demandado tem por objeto inibir a função de contagem ou a função timer (se elas são diferentes). Na afirmativa, as duas últimas etapas (etapas 415 e 420) são repetidas para diferir a execução do comando de colocação em vigilância detectada.
[0090] Em variante, a interrupção gerada pela função timer pode ser utilizada para disparar uma função, de preferência lógica, de atualização da variável de estado PIN_OK, esta função de atualização compreendendo uma função de gestão de vigilância. Assim, se um comando de colocação em vigilância foi previamente detectado, ou seja, se uma vigilância está em espera, o cartão com microcircuitos é colocado em vigilância durante esta interrupção, em seguida à atualização da variável de estado PIN_OK.
[0091] Ao contrário, se o nível de vigilância demandado não afeta a execução de uma função interna protegida, o comando de colocação em vigilância detectado é executado (etapa 410).
[0092] O valor da variável de estado utilizada pode ser memorizado em uma memória volátil ou não volátil de acordo com os níveis de vigilância dos cartões com microcircuitos de tal sorte que este valor seja acessível no estado de vigilância o mais elevado de acordo com o qual uma função interna protegida pode ser executada. É observado aqui que pode ser possível modificar o estado de vigilância (passar para um estado de vigilância de um nível inferior) para mudar o valor de uma variável de estado.
[0093] De acordo com um modo de realização particular, a execução dos comandos de colocação em vigilância pode ser controlada pelas funções internas protegidas que gerem as variáveis de estado relativas a estas últimas ou pelas aplicações protegidas que recorrem a estas funções internas protegidas. De acordo com este modo de realização, as funções internas protegidas ou as aplicações protegidas, após ter recebido uma indicação de acordo com a qual um comando de colocação em vigilância foi detectado, indicam ao módulo de gestão de colocação em vigilância o instante no qual os comandos de colocação em vigilância podem ser executados.
[0094] De acordo com um outro modo de realização, uma função interna protegida embarcada em um cartão com microcircuitos é relativa a uma função de gestão da memória do cartão. Pode notadamente se tratar de uma função chamada «wear leveling».
[0095] É lembrado aqui que as memórias utilizadas nos cartões com microcircuitos compreendem geralmente memórias de tipo EEPROM (sigla de Electrically-Erasable Programmable Read-Only Memory em terminologia anglo- saxônica) que têm tipicamente um número limite de ciclos de escritas, por exemplo 20 ou 100 milhões de escritas. Ora, algumas zonas de memórias são geralmente acessadas, em escrita, mais frequentemente que outras. Assim, para evitar uma perempção prematura de um cartão com microcircuitos (ligada à impossibilidade de escrever em algumas zonas de memória), uma função de deslocamento de dados entre zonas de memória é executada a fim de repartir tão uniformemente quanto possível as operações de escritas. Esta função de gestão da memória é comunmente chamada wear leveling.
[0096] Uma tal função interna pode ser condução paralelamente à execução de aplicações chamadas por um usuário, podendo conduzir a uma baixa de desempenho dos cartões com microcircuitos. Elas podem igualmente ser empregadas quando os cartões com microcircuitos são inutilizados. Neste caso, a colocação em vigilância posterior de certos componentes dos cartões com microcircuitos, notadamente componentes encarregados das operações de leitura e de escrita pode conduzir, por exemplo, a perdas de dados. É pois necessário prever um mecanismo de prevenção de perda de dados em caso de colocação em vigilância dos cartões com microcircuitos.
[0097] Este problema é vantajosamente resolvido pela invenção. De acordo com um modo de realização particular, uma primeira indicação é transmitida ao sistema de exploração do cartão de identificação, ou mais geralmente a um módulo de gestão de colocação em vigilância, quando a função de wear leveling é ativada. Da mesma forma, uma segunda indicação é transmitida ao sistema de exploração do cartão de identificação, ou mais geralmente a um módulo de gestão de colocação em vigilância, quando a execução da função de wear leveling é terminada. Assim, conhecendo o estado da função de wear leveling, o sistema de exploração, ou mais geralmente a um módulo de gestão de colocação em vigilância, pode interditar o estado de vigilância total do cartão com microcircuitos quando a função de wear leveling está ativa. Alternativamente, ele pode ser interditado de mudar o estado do cartão com microcircuitos quando a função de wear leveling está ativa. Para este fins, uma variável de estado, por exemplo a variável de estado WL_OK, é colocada em a um primeiro valor quando a função de wear leveling está ativada (par exemplo, WL_OK=1). Esta variável de estado é colocada em um segundo valor quando a execução da função de wear leveling é terminada (por exemplo, WL_OK=0).
[0098] O módulo de gestão de colocação em vigilância é então similar àquele descrito com referência à figura 4, a variável de estado PIN OK sendo substituída pela variável de estado WL_OK. De maneira vantajosa, uma mesma variável de estado, por exemplo VEILLE OK, é utilizada para controlar a execução de funções internas protegidas a fim que comandos de colocação em vigilância sejam, se for o caso, diferidas.
[0099] Como descrito precedentemente, os algoritmos descritos acima, notadamente os algoritmos descritos com referência às figuras 3 e 4, são vantajosamente levados em um cartão com microcircuitos, por exemplo um cartão de identificação de um assinante a uma rede de telefonia móvel tal como um cartão SIM.
[00100] Naturalmente, para satisfazer necessidades específicas, uma pessoa competente no domínio da invenção poderá aplicar modificações na descrição precedente.

Claims (16)

1. Processo de controle de execução de pelo menos uma função interna protegida embarcada em um dispositivo com microcircuitos (150) adaptado para ser utilizado em cooperação com um terminal móvel (100), o processo caracterizado pelo fato de ser conduzido no dito dispositivo com microcircuitos e em que ele compreende as etapas seguintes: receber um dado de autenticação para a execução de uma aplicação protegida embarcada que é embarcada no dispositivo com microcircuitos, o item de dado de autenticação sendo recebido a partir do terminal móvel, e executando a aplicação protegida quando o item de dado de autenticação é válido; detectar (400) um comando de colocação em vigilância o dito dispositivo com microcircuitos, o dito comando de colocação em vigilância sendo detectado a partir de uma informação recebida de um terminal móvel no qual é conectado o dito dispositivo com microcircuitos; analisar (415), pelo dispositivo com microcircuitos, pelo menos uma indicação para determinar se a pelo menos uma função interna protegida, relativa ao acesso à aplicação protegida embarcada, sendo executada, é suscetível de ser afetada pela execução do comando de colocação em vigilância; e adiar a execução (410), pelo dispositivo com microcircuitos, do dito comando de colocação em vigilância, com base na determinação de que a pelo menos uma função interna protegida sendo executada é suscetível de ser afetada pelo comando de colocação em vigilância.
2. Processo de acordo com a reivindicação 1, caracterizado pelo fato de que compreende ainda as etapas seguintes: colocar em um primeiro valor (325) uma variável de estado durante o lançamento da dita pelo menos uma função interna protegida; e colocar em um segundo valor (325) a dita variável de estado quando a execução da dita pelo menos uma função interna protegida é terminada ou quando a dita função interna protegida é reinicializada; a dita etapa de analisar compreende uma etapa de analisar o valor da dita variável de estado.
3. Processo de acordo com a reivindicação 1, caracterizado pelo fato de que a execução do dito comando de colocação em vigilância é controlada pela dita pelo menos uma função interna protegida.
4. Processo de acordo com qualquer uma das reivindicações 1 a 3, caracterizado pelo fato de que compreende ainda uma etapa de comparar (405) um nível de vigilância demandado associado ao dito comando de colocação em vigilância com um estado de vigilância do dito dispositivo com microcircuitos.
5. Processo de acordo com qualquer uma das reivindicações 1 a 4, caracterizado pelo fato de que o dito dispositivo com microcircuitos ou o dito terminal móvel é provido de meios de comunicação sem fio de baixo alcance (130), o dito dispositivo com microcircuito compreendendo uma aplicação protegida embarcada recorrendo aos ditos meios de comunicação sem fio de baixo alcance e à dita função interna protegida, este processo compreendendo ainda as etapas seguintes: receber (315) um dado de autenticação para a execução da dita aplicação protegida, o dito dado de autenticação sendo recebido do dito terminal móvel; comparar (320) o dito dado de autenticação recebido com pelo menos um dado armazenado no dito dispositivo com microcircuitos; se o dito dado de autenticação recebido corresponde ao dito pelo menos um dado armazenado e se a dita aplicação protegida é solicitada, verificar (335) a validade do dito dado de autenticação recebido segundo pelo menos um critério definido dinamicamente no dito dispositivo com microcircuitos; e, se o dito dado de autenticação recebido é válido, executar (340) a dita aplicação protegida.
6. Processo de acordo com a reivindicação 5, caracterizado pelo fato de que a dita função interna protegida é uma função de contagem, o processo compreendendo ainda, se o dito dado de autenticação recebido corresponde ao dito pelo menos um dado armazenado, uma etapa de solicitar (325) à dita função de contagem um retardo de uma duração predeterminada, a dita etapa de verificar compreendendo verificar que o dito retardo não decorreu.
7. Processo de acordo com a reivindicação 6, caracterizado pelo fato de que a dita função de contagem é baseada em um relógio material do dito dispositivo com microcircuitos.
8. Processo de acordo com qualquer uma das reivindicações 5 a 7, caracterizado pelo fato de que compreende ainda as etapas seguintes: receber pelo menos uma informação do dito terminal móvel ao qual é conectado o dito dispositivo com microcircuitos para informar que pelo menos um terminal de acesso sem contato é acessível via os ditos meios de comunicação sem fio de baixo alcance; selecionar (300) pelo menos a dita aplicação protegida embarcada no dito dispositivo com microcircuitos em resposta à dita pelo menos uma informação recebida e transmitir pelo menos uma referência à dita pelo menos aplicação selecionada no dito terminal móvel; e, receber pelo menos um identificador de uma aplicação, o dito identificador correspondendo a uma referência à dita aplicação protegida embarcada.
9. Processo de acordo com a reivindicação 1, caracterizado pelo fato de que o dito dispositivo com microcircuitos é um cartão com microcircuitos.
10. Dispositivo com microcircuitos para controlar a execução de pelo menos uma função interna protegida embarcada no dito dispositivo com microcircuitos (150), o dito dispositivo com microcircuitos sendo adaptado para ser utilizado em cooperação com um terminal móvel (100), o dispositivo caracterizado pelo fato de que compreende um microcontrolador configurado para conduzir as etapas seguintes: receber um dado de autenticação para a execução de uma aplicação protegida embarcada que é embarcada no dispositivo com microcircuitos, o item de dado de autenticação sendo recebido a partir do terminal móvel, e executando a aplicação protegida quando o item de dado de autenticação é válido; detectar (400) um comando de colocação em vigilância do dito dispositivo com microcircuitos, o dito comando de colocação em vigilância sendo detectado a partir de uma informação recebida de um terminal móvel no qual é conectado o dito dispositivo com microcircuitos; analisar (415) pelo menos uma indicação para determinar se a pelo menos uma função interna protegida, relativa ao acesso à aplicação protegida embarcada, sendo executada, é suscetível de ser afetada pela execução do comando de colocação em vigilância; e, adiar a execução (410) do dito comando de colocação em vigilância, com base na determinação de que a pelo menos uma função interna protegida sendo executada é suscetível de ser afetada pelo comando de colocação em vigilância.
11. Dispositivo de acordo com a reivindicação 10, caracterizado pelo fato de que compreende ainda pelo menos uma memória configurada para memorizar pelo menos um dado relativo à dita pelo menos uma função interna protegida.
12. Dispositivo de acordo com a reivindicação 11, caracterizado pelo fato de que o dito microcontrolador é ainda configurado para executar um algoritmo de criptografia protegendo o dito pelo menos um dado relativo à dita pelo menos uma função interna protegida.
13. Dispositivo de acordo com qualquer uma das reivindicações 10 a 12, caracterizado pelo fato de que o dito microcontrolador é ainda configurado para executar um algoritmo de proteção material de pelo menos um componente do dito dispositivo.
14. Processo de acordo com a reivindicação 2, caracterizado pelo fato de que compreende adicionalmente uma etapa de comparar um nível de vigilância demandado associado ao dito comando de colocação em vigilância com um estado de vigilância do dito dispositivo com microcircuitos.
15. Processo de acordo com a reivindicação 2, caracterizado pelo fato de que o dito dispositivo com microcircuitos ou o dito terminal móvel é provido de meios de comunicação sem fio de baixo alcance (130), o dito dispositivo com microcircuito compreendendo uma aplicação protegida embarcada configurada para usar os ditos meios de comunicação sem fio de baixo alcance e a dita função interna protegida, este processo compreendendo ainda as etapas seguintes: receber um dado de autenticação para a execução da dita aplicação protegida, o dito dado de autenticação sendo recebido do dito terminal móvel; comparar o dito dado de autenticação recebido com pelo menos um dado armazenado no dito dispositivo com microcircuitos; se o dito dado de autenticação recebido corresponde ao dito pelo menos um dado armazenado e se a dita aplicação protegida é solicitada, verificar a validade do dito dado de autenticação recebido segundo pelo menos um critério definido dinamicamente no dito dispositivo com microcircuitos; e, se o dito dado de autenticação recebido é válido, executar a dita aplicação protegida.
16. Processo de acordo com a reivindicação 6, caracterizado pelo fato de que compreende ainda as etapas seguintes: receber pelo menos uma informação do dito terminal móvel ao qual é conectado o dito dispositivo com microcircuitos para informar que pelo menos um terminal de acesso sem contato é acessível via os ditos meios de comunicação sem fio de baixo alcance; selecionar pelo menos a dita aplicação protegida embarcada no dito dispositivo com microcircuitos em resposta à dita pelo menos uma informação recebida e transmitir pelo menos uma referência à dita pelo menos aplicação selecionada no dito terminal móvel; e, receber pelo menos um identificador de uma aplicação, o dito identificador correspondendo a uma referência à dita aplicação protegida embarcada.
BRPI1105958-3A 2010-12-09 2011-12-08 Dispositivo com microcircuitos de controle de execução de pelo menos uma função interna protegida embarcada no mesmo e processo para tal BRPI1105958B1 (pt)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1060288A FR2968799B1 (fr) 2010-12-09 2010-12-09 Procede et dispositif de controle d'execution pour des fonctions internes et des applications protegees embarquees dans des cartes a microcircuits pour terminaux mobiles
FR1060288 2010-12-09

Publications (2)

Publication Number Publication Date
BRPI1105958A2 BRPI1105958A2 (pt) 2017-11-21
BRPI1105958B1 true BRPI1105958B1 (pt) 2021-03-30

Family

ID=45044463

Family Applications (1)

Application Number Title Priority Date Filing Date
BRPI1105958-3A BRPI1105958B1 (pt) 2010-12-09 2011-12-08 Dispositivo com microcircuitos de controle de execução de pelo menos uma função interna protegida embarcada no mesmo e processo para tal

Country Status (8)

Country Link
US (1) US9811822B2 (pt)
EP (1) EP2463833B1 (pt)
JP (1) JP5926047B2 (pt)
KR (1) KR101885381B1 (pt)
CN (1) CN102547682B (pt)
BR (1) BRPI1105958B1 (pt)
ES (1) ES2432503T3 (pt)
FR (1) FR2968799B1 (pt)

Families Citing this family (53)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8989705B1 (en) 2009-06-18 2015-03-24 Sprint Communications Company L.P. Secure placement of centralized media controller application in mobile access terminal
US8712407B1 (en) * 2012-04-05 2014-04-29 Sprint Communications Company L.P. Multiple secure elements in mobile electronic device with near field communication capability
US9027102B2 (en) 2012-05-11 2015-05-05 Sprint Communications Company L.P. Web server bypass of backend process on near field communications and secure element chips
US8862181B1 (en) 2012-05-29 2014-10-14 Sprint Communications Company L.P. Electronic purchase transaction trust infrastructure
US9282898B2 (en) 2012-06-25 2016-03-15 Sprint Communications Company L.P. End-to-end trusted communications infrastructure
US9066230B1 (en) 2012-06-27 2015-06-23 Sprint Communications Company L.P. Trusted policy and charging enforcement function
US8649770B1 (en) 2012-07-02 2014-02-11 Sprint Communications Company, L.P. Extended trusted security zone radio modem
US8667607B2 (en) 2012-07-24 2014-03-04 Sprint Communications Company L.P. Trusted security zone access to peripheral devices
US8863252B1 (en) 2012-07-25 2014-10-14 Sprint Communications Company L.P. Trusted access to third party applications systems and methods
US9183412B2 (en) 2012-08-10 2015-11-10 Sprint Communications Company L.P. Systems and methods for provisioning and using multiple trusted security zones on an electronic device
US8954588B1 (en) 2012-08-25 2015-02-10 Sprint Communications Company L.P. Reservations in real-time brokering of digital content delivery
US9215180B1 (en) 2012-08-25 2015-12-15 Sprint Communications Company L.P. File retrieval in real-time brokering of digital content
US9015068B1 (en) 2012-08-25 2015-04-21 Sprint Communications Company L.P. Framework for real-time brokering of digital content delivery
US9003496B2 (en) 2012-09-07 2015-04-07 Nxp B.V. Secure wireless communication apparatus
US8752140B1 (en) 2012-09-11 2014-06-10 Sprint Communications Company L.P. System and methods for trusted internet domain networking
US9578664B1 (en) 2013-02-07 2017-02-21 Sprint Communications Company L.P. Trusted signaling in 3GPP interfaces in a network function virtualization wireless communication system
US9161227B1 (en) 2013-02-07 2015-10-13 Sprint Communications Company L.P. Trusted signaling in long term evolution (LTE) 4G wireless communication
US9104840B1 (en) 2013-03-05 2015-08-11 Sprint Communications Company L.P. Trusted security zone watermark
US9613208B1 (en) 2013-03-13 2017-04-04 Sprint Communications Company L.P. Trusted security zone enhanced with trusted hardware drivers
US8881977B1 (en) 2013-03-13 2014-11-11 Sprint Communications Company L.P. Point-of-sale and automated teller machine transactions using trusted mobile access device
US9049186B1 (en) 2013-03-14 2015-06-02 Sprint Communications Company L.P. Trusted security zone re-provisioning and re-use capability for refurbished mobile devices
US9049013B2 (en) 2013-03-14 2015-06-02 Sprint Communications Company L.P. Trusted security zone containers for the protection and confidentiality of trusted service manager data
US9191388B1 (en) 2013-03-15 2015-11-17 Sprint Communications Company L.P. Trusted security zone communication addressing on an electronic device
US8984592B1 (en) 2013-03-15 2015-03-17 Sprint Communications Company L.P. Enablement of a trusted security zone authentication for remote mobile device management systems and methods
US9374363B1 (en) 2013-03-15 2016-06-21 Sprint Communications Company L.P. Restricting access of a portable communication device to confidential data or applications via a remote network based on event triggers generated by the portable communication device
US9021585B1 (en) 2013-03-15 2015-04-28 Sprint Communications Company L.P. JTAG fuse vulnerability determination and protection using a trusted execution environment
US9454723B1 (en) 2013-04-04 2016-09-27 Sprint Communications Company L.P. Radio frequency identity (RFID) chip electrically and communicatively coupled to motherboard of mobile communication device
US9324016B1 (en) 2013-04-04 2016-04-26 Sprint Communications Company L.P. Digest of biographical information for an electronic device with static and dynamic portions
US9171243B1 (en) 2013-04-04 2015-10-27 Sprint Communications Company L.P. System for managing a digest of biographical information stored in a radio frequency identity chip coupled to a mobile communication device
US9838869B1 (en) 2013-04-10 2017-12-05 Sprint Communications Company L.P. Delivering digital content to a mobile device via a digital rights clearing house
US9443088B1 (en) 2013-04-15 2016-09-13 Sprint Communications Company L.P. Protection for multimedia files pre-downloaded to a mobile device
US9069952B1 (en) 2013-05-20 2015-06-30 Sprint Communications Company L.P. Method for enabling hardware assisted operating system region for safe execution of untrusted code using trusted transitional memory
US9560519B1 (en) 2013-06-06 2017-01-31 Sprint Communications Company L.P. Mobile communication device profound identity brokering framework
US9183606B1 (en) 2013-07-10 2015-11-10 Sprint Communications Company L.P. Trusted processing location within a graphics processing unit
US9208339B1 (en) 2013-08-12 2015-12-08 Sprint Communications Company L.P. Verifying Applications in Virtual Environments Using a Trusted Security Zone
US9185626B1 (en) 2013-10-29 2015-11-10 Sprint Communications Company L.P. Secure peer-to-peer call forking facilitated by trusted 3rd party voice server provisioning
US10121144B2 (en) 2013-11-04 2018-11-06 Apple Inc. Using biometric authentication for NFC-based payments
US9191522B1 (en) 2013-11-08 2015-11-17 Sprint Communications Company L.P. Billing varied service based on tier
US9161325B1 (en) 2013-11-20 2015-10-13 Sprint Communications Company L.P. Subscriber identity module virtualization
US9118655B1 (en) 2014-01-24 2015-08-25 Sprint Communications Company L.P. Trusted display and transmission of digital ticket documentation
US9226145B1 (en) 2014-03-28 2015-12-29 Sprint Communications Company L.P. Verification of mobile device integrity during activation
US9230085B1 (en) 2014-07-29 2016-01-05 Sprint Communications Company L.P. Network based temporary trust extension to a remote or mobile device enabled via specialized cloud services
US9779232B1 (en) 2015-01-14 2017-10-03 Sprint Communications Company L.P. Trusted code generation and verification to prevent fraud from maleficent external devices that capture data
US9838868B1 (en) 2015-01-26 2017-12-05 Sprint Communications Company L.P. Mated universal serial bus (USB) wireless dongles configured with destination addresses
US9473945B1 (en) 2015-04-07 2016-10-18 Sprint Communications Company L.P. Infrastructure for secure short message transmission
US9819679B1 (en) 2015-09-14 2017-11-14 Sprint Communications Company L.P. Hardware assisted provenance proof of named data networking associated to device data, addresses, services, and servers
US10282719B1 (en) 2015-11-12 2019-05-07 Sprint Communications Company L.P. Secure and trusted device-based billing and charging process using privilege for network proxy authentication and audit
US9817992B1 (en) 2015-11-20 2017-11-14 Sprint Communications Company Lp. System and method for secure USIM wireless network access
US9883319B2 (en) 2016-05-24 2018-01-30 Paypal, Inc. Mobile application configurations to enable data transfers
CN106920302B (zh) * 2017-01-16 2019-11-15 中国铁塔股份有限公司江西省分公司 用于物联锁的开锁方法、主装置、从装置及系统
US10499249B1 (en) 2017-07-11 2019-12-03 Sprint Communications Company L.P. Data link layer trust signaling in communication network
CN111523633B (zh) * 2020-07-02 2021-02-23 华为技术有限公司 数据传输方法、多功能卡及电子设备
US20220353062A1 (en) * 2021-05-03 2022-11-03 InfoKeyVault Technology Co., Ltd. Integrated circuit module functioning for information security

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02196390A (ja) * 1989-01-26 1990-08-02 Hitachi Maxell Ltd Icカード
NL9401406A (nl) * 1994-08-31 1996-04-01 Nederland Ptt Betaalsysteem met verbeterde integriteit.
US6707842B2 (en) 1997-10-22 2004-03-16 Via Telecom Co., Ltd. Accelerated base station searching by buffering samples
FR2773025B1 (fr) * 1997-12-24 2000-01-14 Schlumberger Ind Sa Systeme d'echange de donnees entre un terminal de paiement portable et une base fixe
GB9806069D0 (en) * 1998-03-20 1998-05-20 Mondex Int Ltd Integrated circuit card
US6738068B2 (en) * 2000-12-29 2004-05-18 Intel Corporation Entering and exiting power managed states without disrupting accelerated graphics port transactions
US7757094B2 (en) 2001-02-27 2010-07-13 Qualcomm Incorporated Power management for subscriber identity module
DE60220506T2 (de) * 2001-02-27 2008-02-07 Qualcomm, Inc., San Diego Leistungssteuerung für teilnehmeridentitätsmodul
JP2003281489A (ja) * 2002-03-25 2003-10-03 Nippon Telegr & Teleph Corp <Ntt> Icカード、icカードシステム、icカード使用時間計算方法、icカード制御方法、icカード使用時間計算プログラム、icカード制御プログラム及びicカード使用時間計算・制御プログラムを記録した記録媒体
WO2004105359A2 (en) * 2003-05-19 2004-12-02 Einar Rosenberg An apparatus and method for increased security of wireless transactions
JP2005332209A (ja) * 2004-05-20 2005-12-02 Rohm Co Ltd 半導体集積回路装置及びこれを用いた携帯機器
JP2006127361A (ja) * 2004-11-01 2006-05-18 Dainippon Printing Co Ltd Icカード用icチップ、icカード及びicカード用プログラム
US8511558B2 (en) * 2005-04-12 2013-08-20 Sandisk Il Ltd. Smartcard power management
US20070101152A1 (en) * 2005-10-17 2007-05-03 Saflink Corporation Token authentication system
EP2003556A1 (fr) * 2007-05-25 2008-12-17 Axalto SA Procédé de traitement par un dispositif électronique portable de commandes applicatives issues de canaux physiques, dispositif et système correspondants
JP5104237B2 (ja) * 2007-11-12 2012-12-19 セイコーエプソン株式会社 Icカード、icカードの制御方法、および、icカードの制御プログラム
WO2009141764A2 (en) * 2008-05-19 2009-11-26 Nxp B.V. Nfc mobile communication device and nfc reader

Also Published As

Publication number Publication date
FR2968799B1 (fr) 2013-01-11
JP2012123807A (ja) 2012-06-28
CN102547682A (zh) 2012-07-04
BRPI1105958A2 (pt) 2017-11-21
ES2432503T3 (es) 2013-12-03
EP2463833A1 (fr) 2012-06-13
EP2463833B1 (fr) 2013-07-24
KR101885381B1 (ko) 2018-08-03
JP5926047B2 (ja) 2016-05-25
CN102547682B (zh) 2016-08-31
KR20120064633A (ko) 2012-06-19
US9811822B2 (en) 2017-11-07
FR2968799A1 (fr) 2012-06-15
US20120149327A1 (en) 2012-06-14

Similar Documents

Publication Publication Date Title
BRPI1105958B1 (pt) Dispositivo com microcircuitos de controle de execução de pelo menos uma função interna protegida embarcada no mesmo e processo para tal
US20190253417A1 (en) Hardware device and authenticating method thereof
BR112013020142B1 (pt) cartão inteligente, e, método para autenticação de segurança offline com código pin de um único uso de um cartão inteligente
KR101824249B1 (ko) 인증용 개인키를 내부적으로 생성하는 집적 회로 유형의 전자 소자 제어 방법
ES2963328T3 (es) Procedimiento para verificar la integridad de un código de aplicación, dispositivo y producto de programa informático correspondientes
CN102546169B (zh) 用于控制被用户认证保护的功能的执行的方法和系统
CN107223252B (zh) 安全元件
US8495734B2 (en) Method and device for detecting an erroneous jump during program execution
RU2468428C2 (ru) Способ защиты исполнения программы
US10939265B2 (en) Method of managing an application
US9298533B2 (en) Portable data carrier having operating error counter
US10263781B2 (en) IC chip and authentication method for user authentication
KR102099739B1 (ko) 보안 엘리먼트를 관리하는 방법
KR102448579B1 (ko) 지문 인식 카드 및 지문 인식 카드를 이용한 카드 동작 방법
JP2018113504A (ja) セキュアエレメント、uimカード、認証方法、及び認証プログラム
KR20110053030A (ko) Rfid를 이용한 보안usb장치 및 접근제어 방법
KR20150050335A (ko) 사용자 인증을 위한 ic 칩 및 인증 방법
JP5471575B2 (ja) Icカード及びコンピュータプログラム
Asokan et al. Mobile Hardware Security
US20180004955A1 (en) Method for Secure Operation of a Computer Unit, Software Application and Computer Unit
JP2005242852A (ja) 携帯可能電子媒体

Legal Events

Date Code Title Description
B03A Publication of a patent application or of a certificate of addition of invention [chapter 3.1 patent gazette]
B06F Objections, documents and/or translations needed after an examination request according [chapter 6.6 patent gazette]
B06U Preliminary requirement: requests with searches performed by other patent offices: procedure suspended [chapter 6.21 patent gazette]
B07A Application suspended after technical examination (opinion) [chapter 7.1 patent gazette]
B09A Decision: intention to grant [chapter 9.1 patent gazette]
B16A Patent or certificate of addition of invention granted [chapter 16.1 patent gazette]

Free format text: PRAZO DE VALIDADE: 20 (VINTE) ANOS CONTADOS A PARTIR DE 08/12/2011, OBSERVADAS AS CONDICOES LEGAIS.

B25D Requested change of name of applicant approved

Owner name: IDEMIA FRANCE (FR)

B25G Requested change of headquarter approved

Owner name: IDEMIA FRANCE (FR)

B25E Requested change of name of applicant rejected

Owner name: IDEMIA FRANCE (FR)

Free format text: INDEFERIDO O PEDIDO DE ALTERACAO DE NOME CONTIDO NA PETICAO 870230021209 DE 13/03/2023, EM VIRTUDE DA PATENTE JA ESTAR EM NOME DA INTERESSADA.