BRPI1000684A2 - processo e dispositivo que permitem selecionar automaticamente uma aplicação que possa ser executada pelo dispositivo - Google Patents

processo e dispositivo que permitem selecionar automaticamente uma aplicação que possa ser executada pelo dispositivo Download PDF

Info

Publication number
BRPI1000684A2
BRPI1000684A2 BRPI1000684-2A BRPI1000684A BRPI1000684A2 BR PI1000684 A2 BRPI1000684 A2 BR PI1000684A2 BR PI1000684 A BRPI1000684 A BR PI1000684A BR PI1000684 A2 BRPI1000684 A2 BR PI1000684A2
Authority
BR
Brazil
Prior art keywords
module
applications
mifare
application
execution
Prior art date
Application number
BRPI1000684-2A
Other languages
English (en)
Inventor
Sophie Diallo
Brito Jimmy De
Franck Bricout
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 BRPI1000684A2 publication Critical patent/BRPI1000684A2/pt
Publication of BRPI1000684B1 publication Critical patent/BRPI1000684B1/pt

Links

Classifications

    • 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/0866Mechanisms 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 by active credit-cards adapted therefor
    • 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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/542Event management; Broadcasting; Multicasting; Notifications
    • 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/34Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
    • G06Q20/341Active cards, i.e. cards including their own processing means, e.g. including an IC or chip
    • 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/34Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
    • G06Q20/352Contactless payments by cards
    • 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/34Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
    • G06Q20/357Cards having a plurality of specified features
    • G06Q20/3574Multiple applications on card

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Software Systems (AREA)
  • Multimedia (AREA)
  • General Engineering & Computer Science (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Telephone Function (AREA)
  • Communication Control (AREA)
  • Telephonic Communication Services (AREA)

Abstract

PROCESSO E DISPOSITIVO QUE PERMITEM SELECIONAR AUTOMATICAMENTE UMA APLICAçãO QUE POSSA SER EXECUTADA PELO DISPOSITIVO. A presente invenção se refere a um dispositivo eletrónico que compreende: - meios de recepção (1100) de mensagens emitidas por uma entidade externa (100); - meios de execução (1420) de ao menos duas aplicações (M1, M2. M3) que se comunicam com a referida entidade externa segundo o mesmo protocolo; - meios de geração (PG 1) aptos a gerar um evento predeterminado com a recepção de ao menos uma mensagem particular recebida da referida entidade (100) ou em caso de inicialização da comunicação com a referida entidade; e - meios de seleção (PG2) aptos a detectar o referido evento e a selecionar uma aplicação dentre as referidas aplicações (M1, M2, M3), sendo a escolha da aplicação selecionada feita independentemente de qualquer mensagem recebida da referida entidade externa (100).

Description

RELATÓRIO DESCRITIVO
Pedido de patente de invenção para "PROCESSO E DISPOSITIVO QUE PERMITEM SELECIONAR AUTOMATICAMENTE UMA APLICAÇÃO QUE POSSA SER EXECUTADA PELO DISPOSITIVO"
Estado da técnica
A presente invenção se situa no campo dos dispositivos eletrônicos de múltiplas aplicações aptos a se comunicarem com uma entidade externa, sendo estes dispositivos preferivelmente portáteis.
Ela se aplica, em particular, e de forma não limitativa, a cartões com micro-circuitos (cartões com chips) aptos a se comunicarem com um leitor do referido cartão, pela execução de uma pluralidade de aplicações (transação de pagamento, controle de acesso, etc.).
O documento US 2008/0306849 descreve um processo que pode ser implementado por um leitor para se comunicar com um cartão com microchip que possa executar aplicações em conformidade com o protocolo ISO 14443-4 e aplicações em conformidade com o protocolo MIFARE. Segundo esse processo, é necessário que o leitor reconheça as aplicações suportadas pelo cartão com microchip a fim de poder selecionálas.
A presente invenção permite superar esta restrição.
Objetivo e descrição resumida da invenção
Segundo um primeiro aspecto, a invenção se refere a um dispositivo eletrônico que compreende:
- meios de recepção de mensagens emitidas por uma entidade externa; meios de implementação de ao menos duas aplicações de comunicação com esta entidade de acordo com o mesmo protocolo;
meios de geração capazes de gerar um evento predeterminado após a recepção de ao menos uma mensagem particular recebida da referida entidade ou em caso de inicialização da comunicação com esta entidade; e
meios de seleção capazes de detectar este evento e a selecionar uma aplicação dentre as aplicações mencionadas acima, com a escolha da aplicação selecionada sendo feita independentemente de qualquer mensagem recebida pela referida entidade externa.
Correspondentemente, a invenção se refere igualmente a um processo de seleção que pode ser implementado por um dispositivo eletrônico apto a se comunicar com uma entidade externa e a executar ao menos duas aplicações de comunicação com esta entidade externa de acordo com o mesmo protocolo; o processo compreendendo:
uma etapa de geração de um evento predeterminado após a recepção de ao menos uma mensagem particular recebida da referida entidade ou em caso de inicialização da comunicação com esta entidade;
uma etapa de detecção do referido evento; e
- uma etapa de seleção de uma aplicação dentre as aplicações mencionadas acima, sendo a escolha da aplicação feita independentemente de qualquer mensagem recebida pela referida entidade externa.
Assim, e de forma muito vantajosa, a invenção permite selecionar uma aplicação executada pelo dispositivo eletrônico sem que qualquer comando de seleção desta aplicação seja emitido pela entidade externa. Em um modo de realização particular, o dispositivo eletrônico de acordo com a invenção compreende:
meios de execução de um primeiro módulo computacional capaz de acionar a execução de um segundo módulo computacional, sendo este segundo módulo computacional capaz de executar as aplicações mencionadas acima, e
meios de geração do evento que está sendo implementado pelo primeiro módulo.
A invenção encontra uma aplicação preferida, porém não limitativa, quando o segundo módulo computacional que executa as aplicações referidas é visto, desse dispositivo eletrônico, como uma "Caixapreta".
Tais são geralmente os casos em que o segundo módulo computacional é desenvolvido por um terceiro.
Neste relatório, o significado de "módulo computacional" deve ser entendido em sentido amplo: ele se refere em especial a um programa de computador, ou um subprograma de computador, uma função ou uma biblioteca de funções.
Em um modo particular de realização da invenção:
o primeiro módulo é capaz de se comunicar com a entidade externa de acordo com as normas ISO 14443-1 à ISO 14443-3;
as referidas aplicações são aplicações MIFARE (marca registrada); e
o segundo módulo é capaz de executar uma aplicação para gerenciar o envio e a recepção de mensagens trocadas com a referida entidade externa em relação às referidas aplicações MIFARE. A propósito, a tecnologia MIFARE se baseia no padrão 14443 tipo A, e se distingue ao substituir a camada ISO 14443-4 pelo protocolo MIFARE, com as tecnologias iiISO 14443 tipo An e iiMIFAREi tendo em comum os protocolos ISO 14443-1, ISO 14443-2 e ISO 14443-3.
Para mais informações sobre a tecnologia MIFARE, os técnicos no assunto podem se referir ao documento iiMFlICSSO, Functional specification, Rev. 5.3" de 29 de janeiro de 2008.
De forma conhecida, as mensagens enviadas por um leitor (ou mais geralmente por uma entidade externa), a um cartão com microchip (ou mais geralmente a um dispositivo eletrônico portátil), através de uma aplicação MIFARE, consistem essencialmente em mensagens de comando para acessar em leitura ou em gravação uma memória dedicada a esta aplicação MIFARE.
Nesse campo particular, é freqüente chamar em particular de "aplicação MIFAREi a memória em si. Por conseguinte, deve distinguir então:
a aplicação MIFARE, isto é, da
aplicação que gera mensagens trocadas com o leitor para acessar a memória em leitura ou em gravação.
Por conseqüência, em um modo particular de implementação,
a invenção permite selecionar uma aplicação MIFARE executada por exemplo por um cartão com microchip, para efetuar uma transação com um leitor deste cartão, sem que qualquer comando de seleção da aplicação MIFARE ou da memória dedicada a esta aplicação seja emitido pelo leitor.
Em um modo de realização da invenção, o primeiro módulo gera o evento predeterminado após a recepção de um comando interpretável por este primeiro módulo. Quando o primeiro módulo está apto a se comunicar com st, entidade externa segundo as normas ISO 14443-1 a ISO 14443-3, a mensagem particular que gera o evento predeterminado no contexto da invenção pode ser especialmente escolhida dentre:
- uma mensagem de requisição REQA emitida periodicamente pelo leitor;
uma mensagem SEL de seleção de um cartão (dispositivo eletrônico no contexto da invenção; ou
uma mensagem HALT de fim de transação definida pela norma ISO 14443-3.
Esse modo de realização permite vantajosamente selecionar uma aplicação MIFARE, após o fim de uma primeira transação MIFARE, independentemente da forma como esta primeira aplicação MIFARE terminar, por exemplo, em seguida ao envio de uma mensagem HALT pelo leitor ou pelo corte do campo eletromagnético.
É possível, em certos casos, que a entidade externa emita várias vezes certas mensagens, por exemplo, várias mensagens de requisição.
O técnico no assunto compreenderá que em tais circunstâncias, pode ser que algumas aplicações jamais sejam selecionadas.
A invenção propõe duas soluções para evitar esse problema:
gerar o evento predeterminado imediatamente antes de ativar a execução do segundo módulo; e
gerar o evento predeterminado com a recepção de um comando não interpretável pelo primeiro módulo. Em um modo de realização particular, o primeiro modula retoma a sua execução após a execução do segundo módulo e o primeiro módulo gera o evento predeterminado após a recuperação da execução.
E fundamental observar que, de acordo com a invenção, a seleção da aplicação, isto é, a escolha da aplicação dentre as aplicações possíveis, se faz independentemente de qualquer mensagem recebida pelo leitor.
Em um modo particular de realização, os meios de seleção do dispositivo segundo a invenção selecionam as aplicações umas após outras, de forma seqüencial.
Em uma variante, as aplicações podem ser selecionadas de forma cíclica, ou aleatória.
Em um modo particular de realização, as diferentes etapas do processo de seleção são determinadas por instruções de programas computacionais.
Em conseqüência, a invenção também se refere a um programa computacional com um suporte de informações, sendo esse programa suscetível de ser executado em um dispositivo eletrônico em comunicação ou mais geralmente em um computador, com o programa compreendendo instruções adaptadas para implementar as etapas de um processo de seleção tal como descrito acima.
Este programa pode utilizar qualquer linguagem de programação, seja na forma de código-fonte, código objeto, ou códigos intermediários entre código-fonte e código objeto, tal como em uma forma previamente compilada, ou em qualquer outra forma adequada.
A invenção se refere também a um suporte de informações legível por um computador, e compreendendo instruções de um programa de computador tal como mencionado acima. O suporte de informações pode ser qualquer entidade ou dispositivo capaz de armazenar o programa. Por exemplo, o suporte pode compreender um meio de armazenamento, tal como uma ROM, por exemplo um CD-ROM ou uma ROM de circuitos microeletrônicos, ou ainda um meio de gravação magnético, por exemplo um disquete (floppy disó) ou um disco rígido.
Por outro lado, o suporte de informações pode ser um suporte transmissível, tal como um sinal elétrico ou óptico, que pode ser transferido através de um cabo elétrico ou óptico, por rádio ou por outros meios. O programa segundo a invenção pode ser transmitido em uma rede como a Internet.
Alternativamente, o suporte de informações pode ser um circuito integrado ao qual o programa seja incorporado, sendo o circuito adaptado para executar ou para ser utilizado na execução do processo em questão.
Na primeira variante de realização da invenção mencionada anteriormente, a tomada de decisão segundo a qual uma aplicação deve ser selecionada pelo dispositivo eletrônico é desencadeada pela ocorrência de um evento associado à recepção de uma mensagem particular recebida do leitor.
De acordo com um segundo aspecto, a invenção se refere também a um dispositivo eletrônico que compreende:
- meios para implementar ao menos duas aplicações MIFARE; e
- meios para selecionar sistematicamente uma das referidas aplicações MIFARE após a execução de uma das referidas aplicações MIFARE. Correspondentemente, a invenção se refere a um processo ãê execução que pode ser implementado por um dispositivo eletrônico capaz de executar ao menos duas aplicações MIFARE, com o processo selecionando sistematicamente uma das aplicações MIFARE após a execução de uma das referidas aplicações MIFARE.
A seleção de uma aplicação MIFARE pode também ser feita de forma seqüencial, cíclica ou aleatória.
Em um modo particular de realização desta segunda modalidade, o dispositivo eletrônico segundo a invenção compreende meios para executar um primeiro módulo computacional capaz de acionar a execução de um segundo módulo computacional, sendo o segundo módulo (PG2) capaz de implementar aplicações MIFARE, e sendo os meios de seleção implementados pelo primeiro módulo.
Em um modo particular de realização, o primeiro módulo seleciona a aplicação MIFARE imediatamente antes de acionar a execução do segundo módulo.
Breve descrição dos desenhos
Outras características e vantagens da presente invenção surgirão a partir da descrição a seguir, com referência aos desenhos anexos que ilustram um exemplo de realização desprovido de qualquer caráter limitativo. Nos desenhos:
a figura 1 ilustra um dispositivo eletrônico de acordo com a invenção em um modo particular de realização;
a figura 2 ilustra um detalhe desse dispositivo;
- as figuras 3 A a 3 D e a figura 4 ilustram, na forma de um organograma de processos de seleção de acordo com diferentes modos de realização da invenção. Descrição detalhada de um modo de realização
A figura 1 ilustra um dispositivo 1000 de seleção de acordo com um modo particular de realização da invenção.
Esse dispositivo 1000 é um telefone celular.
Ele compreende um processador 1300 capaz de executar operações clássicas de um telefone celular, a saber, operações de telefonia, envio e recepção de mensagens, e operações de gestão da interface usuário- máquina.
No exemplo de realização descrito aqui, o dispositivo 1000 compreende meios de comunicação sem fio com um leitor externo 100. Esses meios de comunicação sem fio são principalmente constituídos por uma antena 1100 e por um microprocessador 1200 de acordo com a norma NFC ('iiNear Field Communicatiotf ou comunicação de campo próximo) ou ISO 14443.
No exemplo de realização descrito aqui, o microprocessador 1200 preenche as funções de conversor analógico/digital e de modulador/demodulador para a comunicação através da antena 1100. Tal microprocessador é normalmente chamado CLF (para Contactless Frontend).
No exemplo de realização descrito aqui, o cartão SIM 1400 se comunica com o microprocessador 1200, segundo uma conexão L2 e de acordo com o protocolo SWP (/Single Wire Protoeol).
A figura 2 ilustra em detalhes o cartão 1400 do telefone celular 1000.
Cada cartão SIM, preferencialmente de acordo com a norma IS07816, compreende uma interface de entrada/saída 1410, uma memória ROM 1430 e uma memória não volátil regravável do tipo EEPROM 1440, sendo esses elementos ligados por um barramento a um microprocessador 1420.
No exemplo de realização descrito aqui, a memória não volátil regravável EEPROM1440 compreende:
- três memórias Ml, M2, M3, cada uma constituindo uma aplicação no contexto da tecnologia MIFARE; e
um ponteiro PTR que aponta para a memória Mla M3 selecionada em um dado momento.
No modo de realização descrito aqui, a memória ROM 1430 compreende dois programas de computador, a saber:
um primeiro programa de computador PG1,
compreendendo principalmente o sistema operacional do cartão 1400,
instruções para implementar os protocolos ISO 1444-1 a 14441-3 e um módulo que permite selecionar uma aplicação MIFARE Ml a M3;
- um programa de computador PG2 capaz de executar uma aplicação para gerar o envio e a recepção de mensagens trocadas com a entidade externa 100 quanto às referidas aplicações MIFARE Ml a M3.
Com referência à figura 3A, são descritas agora as etapas principais de um primeiro processo de seleção de acordo com a invenção, sendo esse processo implementado pelo telefone celular 1000 descrito anteriormente com referência às figuras 1 e 2.
Supomos inicialmente que um usuário aproxime o telefone celular 1000 a alguns centímetros do leitor 100 de modo que a antena 1100 do telefone entre no campo eletromagnético gerado pelo leitor.
O cartão SIM 1400 é alimentado pelo circuito Ll ou pela bateria do telefone. No modo de realização descrito aqui, o primeiro programa de computador PG1 é então executado pelo microprocessador 1420 do cartão SIM.
Supomos que o ponteiro seja inicializado, em uma fase preliminar de personalização, para apontar, por exemplo, uma aplicação MIFARE M1.
Supomos que o leitor 100 envie uma mensagem de requisição REQA recebida pelo módulo PG1 durante uma etapa E8.
A recepção desta mensagem constitui um evento no contexto da invenção.
No modo de realização descrito aqui, o programa PG1 compreende uma etapa E40 para deslocar o ponteiro PTR de forma seqüencial, de modo que ele aponte então para a aplicação MIFARE M2.
O programa PG1 aciona então, durante uma etapa o segundo programa computacional PG2 para gerar a troca de mensagens trocadas com a entidade externa 100 sobre a aplicação MIFARE M2.
Com referência à figura 3B, são descritas as etapas de um segundo processo de seleção de acordo com a invenção.
Nesse modo de realização, o primeiro programa de computador PGl é capaz de implementar as normas ISO 1444-1 a ISO 1444-4.
Nesse modo de realização, a memória não volátil EEPROM 1440 compreende um registro capaz de memorizar o valor de um indicador FLAG inicializado em 0.
No exemplo de realização descrito aqui, o ponteiro PTR é inicializado para apontar a memória MIFARE M1.
No exemplo de realização descrito aqui, quando o primeiro programa de computador PGl recebe a mensagem de requisição REQA, ele verifica, durante uma etapa E10, se o indicador FLAG memorizado tx§? memória não volátil EEPROM 1440 comporta o valor predeterminado "1" ou não.
Se for este o caso, o ponteiro PTR é deslocado durante uma etapa E40 e o indicador FLAG é posicionado no valor "0" durante uma etapa E14.
No exemplo descrito aqui, esse indicador FLAG é inicializado com o valor "0", e por isso nessa primeira recepção da mensagem de requisição REQA, as etapas El2 e E14 não são executadas, e nenhum evento é assim detectado neste estágio.
De acordo com o protocolo ISO 14414-1 a 14414-3, o dispositivo 1000 de acordo com a invenção responde à requisição REQA através do envio de uma mensagem ATQA durante uma etapa E16.
Então, durante uma etapa El 8, o leitor 100 e o dispositivo eletrônico 1000 de acordo com a invenção implementam uma etapa geral El8 conhecida pelos técnicos no assunto pelo nome de iiAnticollision Loop", permitindo que o leitor 100 selecione efetivamente o dispositivo 1000 segundo a invenção dentre outros dispositivos ou cartões com microchips situados no campo eletromagnético do leitor 100.
Depois desta fase de administração de colisões, o dispositivo 1000 envia ao leitor 100, durante uma etapa E20, um identificador UID que identifica, de forma única, o dispositivo 1000.
De acordo com o protocolo ISO 14443-1 a 14443-3, o leitor 100 seleciona o dispositivo 1000 durante uma etapa E22 através do envio de uma mensagem SEL (UID), e o telefone 1000 confirma esta seleção pelo envio de uma mensagem SAK (Select Acknowledgement).
Estas diferentes mensagens (REQ A, ATQA, Anticollision Loop, UID, SEL(UID) e SAK) são mensagens comuns às aplicações que utilizam o protocolo ISO 14443-4 e às aplicações de acordo corri a tecnologia MIFARE.
Supomos agora que o leitor 100 emita, durante uma etapa E25, uma mensagem MSG.
Durante um teste E26, o primeiro módulo PGl verifica se esta mensagem está de acordo ou não com o protocolo ISO 14443-4.
Se for este o caso, o resultado do teste E26 será positivo.
Este teste é então seguido por um processo E28 de autenticação mútua implementado pelo leitor 100 e o telefone celular 1000, de acordo com o protocolo ISO 14443-4, e depois por uma etapa geral E36, durante a qual o telefone 1000 se comunica com o leitor 100 de acordo com o protoclo ISO 14443-4.
Se, na etapa E26, o primeiro módulo PGl detectar que a mensagem MSG recebida na etapa E25 não está de acordo com o protocolo ISO 14443-4, o resultado do teste E26 será negativo.
O teste então é seguido por uma etapa E44, durante a qual o primeiro programa de computador PGl coloca no valor "1" o indicador FLAG.
Então, o primeiro programa de computador PGl aciona o segundo programa de computador PG2 durante uma etapa E50.
Uma transação MIFARE pode então ser executada entre o leitor 100 e a aplicação MIFARE Ml do telefone celular 1000.
Posteriormente, quando o telefone celular 1000 receber uma nova mensagem de requisição REQ A (na etapa 8), o resultado do teste ElO em que se testa o valor do indicador FLAG será positivo, e assim as etapas E12 (deslocamento do ponteiro PTR), e El4 (reinicialização do indicador FLAG ao valor "0") serão executadas. O telefone 1000 seleciona em conseqüência a aplicação MIFARE M2.
Nesse segundo modo de realização, a recepção de uma mensagem não interpretável pelo primeiro programa de computador PGl constitui um evento no contexto da invenção.
No terceiro modo de realização ilustrado na figura 3C, o segundo programa de computador PG2 devolve o controle ao primeiro programa de computador PGl após a execução da aplicação MIFARE e o deslocamento do ponteiro terem se efetuado, na etapa E40, depois desta recuperação de controle.
Esse modo de realização evita o uso de um indicador FLAG.
No quarto modo de realização ilustrado na figura 3 D, o primeiro módulo PGl desloca o ponteiro PGR (etapa E40), após ter recebido uma mensagem não interpretável, e imediatamente antes de acionar a execução do segundo módulo PG2.
Nos modos de realização descritos anteriormente, o ponteiro PTR é deslocado seqüencialmente.
Em uma variante, ele pode ser deslocado de forma cíclica, ou escolhido aleatoriamente.
A figura 4 ilustra um processo de seleção de acordo com uma segunda variante de realização da invenção.
Nesse modo de realização, o primeiro programa de computador PGl é capaz de detectar se o segundo programa de computador PG2 executa uma aplicação MIFARE monitorando o acesso às memórias M1 a M3. No modo de realização descrito aqui, o primeiro programa de computador PGl inicializa, durante uma etapa E100, um relógio (timer), com um intervalo de tempo predeterminado.
Quando um acesso a uma das memórias Ml a M3 ocorre (teste El20 positivo), considera-se que uma aplicação MIFARE esteja em curso com o leitor 100, e o relógio se reinicializa com este mesmo intervalo de tempo.
Ao revés, se nenhum acesso a uma das memórias Ml a M3 ocorre durante este tempo (teste E40 positivo), é considerado que não há uma aplicação MIFARE atual (seja porque nunca houve, seja porque haja terminado), e uma aplicação MIFARE é selecionada.
Na maior parte dos casos, a aplicação MIFARE assim selecionada será diferente da aplicação MIFARE atual.
Porém, em um modo de realização da invenção, a aplicação MIFARE é selecionada aleatoriamente, e pode ser que a mesma aplicação MIFARE seja selecionada várias vezes seguidas.
Em todos os modos de realização descritos anteriormente (figuras 3A a 3D e figura 4), a memória não volátil regravável EEPROM 1440 compreende três memórias distintas Ml, M2, M3.
Em uma variante, a memória não volátil regravável EEPROM 1440 compreende somente uma memória M, e a cada mudança de aplicação MIFARE, o conteúdo da aplicação MIFARE é copiado nessa memória M. Nesta variante, não é necessário utilizar um ponteiro PTR, e a aplicação MIFARE, e a aplicação MIFARE em curso é determinada comparando-se o conteúdo da memória M com cada uma das aplicações MIF ARE. Nos modos de realização descritos anteriormente, a invenção é principalmente implementada no cartão com microchip 1400 do telefone celular 1000.
Alternativamente, ela poderia ser implementada no próprio telefone celular, sendo os programas de computador PGl e PG2 executados pelo processador 1300 do telefone.
A invenção pode também ser implementada em outros tipos de dispositivos eletrônicos e especialmente em um cartão com microchip dotado de meios de comunicação sem fio, em especial de uma antena.

Claims (15)

1. Dispositivo eletrônico (1000) que compreende: meios de recepção (1100) de mensagens emitidas por uma entidade externa (100); e - meios de execução (1420) de ao menos duas aplicações (M1, M2, M3) que se comunicam com a referida entidade externa segundo o mesmo protocolo, sendo este dispositivo (1000) caracterizado por compreender: meios de geração (PGl) aptos a gerar um evento predeterminado com a recepção de ao menos uma mensagem particular recebida da referida entidade (100) ou em caso de inicialização da comunicação com a referida entidade; e meios de seleção (PG2) aptos a detectar o referido evento e a selecionar uma aplicação dentre as referidas aplicações (Ml, M2, M3), sendo a escolha da aplicação selecionada feita independentemente de qualquer mensagem recebida da referida entidade externa (100).
2. Dispositivo de acordo com a reivindicação 1, caracterizado por compreender: - meios de execução de um primeiro módulo computacional (PGl) apto a acionar a execução de um segundo módulo computacional (PG2), sendo o segundo módulo (PG2) apto a implementar as referidas aplicações (Ml, M2, M3); e por: os referidos meios de geração de eventos serem implementados pelo primeiro módulo (PG1).
3. Dispositivo de acordo com a reivindicação 2, caracterizado pelo referido primeiro módulo (PGl) gerar o referido evento predeterminado com a recepção de um comando (REQA) interpretável pelo referido primeiro módulo (PG1).
4. Dispositivo de acordo com a reivindicação 2, caracterizado pelo referido primeiro módulo (PGl) gerar o referido evento predeterminado imediatamente antes da execução do referido segundo módulo (PG2).
5. Dispositivo de acordo com a reivindicação 4, caracterizado pelo referido primeiro módulo (PGl) gerar o referido evento predeterminado com a recepção de um comando (REQA) não interpretável pelo referido primeiro módulo (PG1).
6. Dispositivo de acordo com a reivindicação 2, no qual o referido primeiro módulo (PGl) retoma a sua execução após a execução do referido segundo módulo (PG2), caracterizado pelo referido primeiro módulo (PGl) gerar o referido evento predeterminado após a referida recuperação da execução.
7. Dispositivo de acordo com uma das reivindicações 2 a 5, caracterizado por: o referido primeiro módulo (PGl) ser apto a se comunicar com a referida entidade externa (100) segundo as normas ISO 14443-1 a ISO 14443-3; as referidas aplicações (Ml, M2, M3) serem aplicações MFARE; e por: o referido segundo módulo (PG2) ser apto a implementar uma aplicação (1432) para gerar o envio e a recepção de mensagens trocadas com a referida entidade externa (100) em relação às referidas aplicações MIFARE(M1, M2, M3).
8. Dispositivo de acordo com uma das reivindicações 1 a 6, caracterizado pelos referidos meios de seleção selecionarem a referida aplicação dentre as referidas aplicações de forma seqüencial.
9. Processo de seleção que pode ser implementado por um dispositivo eletrônico (1000) apto a se comunicar com uma entidade externa e a implementar ao menos duas aplicações (Ml, M2, M3) que se comuniquem com a referida entidade externa segundo o mesmo protocolo, sendo o processo caracterizado por compreender: uma etapa de geração de um evento predeterminado com a recepção de ao menos uma mensagem particular recebida da referida entidade ou em caso de inicialização da comunicação com a referida entidade; uma etapa de detecção do referido evento; e uma etapa de seleção de uma aplicação dentre as referidas aplicações, sendo a escolha da aplicação selecionada feita independentemente de qualquer mensagem recebida da referida entidade externa.
10. Programa de computador caracterizado por compreender instruções para a execução de etapas do processo de seleção definido na reivindicação 9, quando o referido programa for executado por um computador.
11. Suporte de gravação caracterizado por ser legível por um computador no qual é gravado um programa de computador que compreenda instruções para a execução de etapas do processo de seleção referido na reivindicação 10.
12. Dispositivo eletrônico (1000) caracterizado por compreender: meios (1420) de execução de ao menos duas aplicações MIFARE (Ml, M2, M3); e meios de seleção (PGl) sistemática de uma das referidas aplicações MIFARE após a execução de uma das referidas aplicações MIFARE.
13. Dispositivo de acordo com a reivindicação 12, caracterizado por compreender meios de execução de um primeiro módulo computacional (PGl) apto a acionar a execução de um segundo módulo computacional (PG2), sendo este segundo módulo (PG2) apto a implementar as referidas aplicações MIFARE (Ml, M2, M3), sendo os referidos meios de seleção implementados pelo primeiro módulo (PG1).
14. Dispositivo de acordo com a reivindicação 13, caracterizado pelo referido primeiro módulo (PGl) selecionar a referida aplicação MIFARE imediatamente antes de acionar a execução do referido segundo módulo (PG2).
15. Processo de seleção que pode ser implementado por um dispositivo eletrônico (1000) apto a implementar ao menos duas aplicações MIFARE (Ml, M2, M3), sendo o processo caracterizado por selecionar sistematicamente uma das referidas aplicações MIFARE após a execução de uma das referidas aplicações MIFARE.
BRPI1000684A 2009-03-27 2010-03-29 processo e dispositivo que permitem selecionar automaticamente uma aplicação que possa ser executada pelo dispositivo BRPI1000684B1 (pt)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR0901484A FR2943818A1 (fr) 2009-03-27 2009-03-27 Procede et dispositif permettant de selectionner automatiquement une application pouvant etre mise en oeuvre par ce dispositif

Publications (2)

Publication Number Publication Date
BRPI1000684A2 true BRPI1000684A2 (pt) 2012-01-17
BRPI1000684B1 BRPI1000684B1 (pt) 2020-05-19

Family

ID=41202513

Family Applications (1)

Application Number Title Priority Date Filing Date
BRPI1000684A BRPI1000684B1 (pt) 2009-03-27 2010-03-29 processo e dispositivo que permitem selecionar automaticamente uma aplicação que possa ser executada pelo dispositivo

Country Status (7)

Country Link
US (1) US9021504B2 (pt)
EP (1) EP2234041B1 (pt)
CN (1) CN101853351B (pt)
BR (1) BRPI1000684B1 (pt)
ES (1) ES2435453T3 (pt)
FR (1) FR2943818A1 (pt)
PL (1) PL2234041T3 (pt)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2968804B1 (fr) * 2010-12-13 2013-01-04 St Microelectronics Rousset Procede de gestion du dialogue entre un equipement et au moins un objet multi-applicatif tel qu'une carte a puce sans contact et objet correspondant
DE102012006191A1 (de) * 2012-03-27 2013-10-02 Giesecke & Devrient Gmbh Verfahren zur Auswahl einer Anwendung eines tragbaren Datenträgers
CN103761492A (zh) * 2013-12-10 2014-04-30 上海动联信息技术股份有限公司 基于13.56MHz的非接触设备对多张卡片操作的方法
CN105939167B (zh) * 2016-03-15 2018-11-30 天地融科技股份有限公司 一种数据传输方法、终端、电子签名设备及系统
FR3052897B1 (fr) * 2016-06-21 2018-08-03 Idemia France Procede mis en œuvre dans une entite electronique et entite electronique associee
FR3105663B1 (fr) * 2019-12-23 2022-09-09 St Microelectronics Rousset Configuration d'une transaction dans un dispositif électronique sans contact
FR3105662B1 (fr) 2019-12-23 2021-11-26 St Microelectronics Rousset Configuration d'une transaction dans un dispositif électronique sans contact

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2751449A1 (fr) * 1996-07-17 1998-01-23 Philips Electronics Nv Procede d'exploitation d'un appareil destine a permettre l'acces a des services
US6564995B1 (en) * 1997-09-19 2003-05-20 Schlumberger Malco, Inc. Smart card application-selection
US6938244B1 (en) * 1999-05-11 2005-08-30 Microsoft Corp. Interlaced protocol for smart card application development
US6631849B2 (en) * 2000-12-06 2003-10-14 Bank One, Delaware, National Association Selectable multi-purpose card
WO2006107861A2 (en) * 2005-04-04 2006-10-12 Mastercard International Incorporated System and method for card quality assurance
US7865141B2 (en) * 2006-06-15 2011-01-04 Silicon Storage Technology, Inc. Chipset for mobile wallet system
DE102006057093B4 (de) * 2006-12-04 2008-10-02 Infineon Technologies Ag Vorrichtung zur Auswahl einer virtuellen Kartenanwendung
US8116678B2 (en) * 2007-06-08 2012-02-14 Vivotech, Inc. Methods, systems and computer program products for interacting with ISO 14443-4 and MIFARE® applications on the same wireless smart device during a common transaction
CN101755291B (zh) * 2007-07-24 2012-05-30 Nxp股份有限公司 用于向移动电话安全地发送应用程序的方法、系统和可信任服务管理器

Also Published As

Publication number Publication date
EP2234041A3 (fr) 2010-11-17
CN101853351A (zh) 2010-10-06
BRPI1000684B1 (pt) 2020-05-19
EP2234041A2 (fr) 2010-09-29
ES2435453T3 (es) 2013-12-19
US20100251261A1 (en) 2010-09-30
US9021504B2 (en) 2015-04-28
EP2234041B1 (fr) 2013-08-14
PL2234041T3 (pl) 2014-01-31
FR2943818A1 (fr) 2010-10-01
CN101853351B (zh) 2015-01-21

Similar Documents

Publication Publication Date Title
BRPI1000684A2 (pt) processo e dispositivo que permitem selecionar automaticamente uma aplicação que possa ser executada pelo dispositivo
US9411990B2 (en) Working method of a multi-slot card reader based on the standard CCID protocol
ES2796825T3 (es) Método para preseleccionar al menos una aplicación en un dispositivo de comunicación móvil que comprende un sistema NFC
JP2007317170A (ja) Icモジュールおよび携帯電話
JP4813362B2 (ja) 半導体メモリカード
BRPI0722283A2 (pt) Método, aparelho, sistema, programa de computador, meio fisico e módulo
JP2018152130A (ja) 通信デバイス及び通信システム
ES2925234T3 (es) Dispositivo y método de comunicación
US20110197203A1 (en) Communication device, communication method and program
JP2015060409A (ja) Icカード、携帯可能電子装置、及び、icカード処理装置
US9542632B2 (en) IC card, portable electronic device, and reader/writer
CN109479195B (zh) 管理安全元件的方法
US9010649B2 (en) IC card, portable electronic device, and reader/writer
JP2006293941A (ja) 非接触データキャリアおよび非接触データキャリアシステムとそれらのデータ処理方法
JP5724694B2 (ja) 通信装置、通信方法、及び通信処理プログラム
JP2012093857A (ja) Icチップ、icチップにおけるメモリ初期化方法、icチップ用処理プログラム、携帯端末
JP5799754B2 (ja) Icチップ、icチップにおける処理方法、icチップ用処理プログラム、icカード、及び携帯端末
CN109862553B (zh) 终端和通信方法
JP2006012026A (ja) 携帯型情報記憶媒体及びそのプログラム
JP7424536B1 (ja) 電子情報記憶媒体、icチップ、icカード、通信パラメータ送信方法、及びプログラム
JP2011060002A (ja) Icチップ、icカード、及び初期応答データ送信方法
JP2007128271A (ja) 携帯可能情報記録媒体及びそのプログラム
JP2006172271A (ja) マルチアプリケーションicカード及びicカード用プログラム
JP2008033661A (ja) 処理装置および方法、並びにプログラム
JP4620418B2 (ja) リアルタイムコマンドの処理方法、icカード、およびその組み込み端末

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]
B06A Patent application procedure suspended [chapter 6.1 patent gazette]
B09A Decision: intention to grant [chapter 9.1 patent gazette]
B16A Patent or certificate of addition of invention granted [chapter 16.1 patent gazette]

Free format text: PRAZO DE VALIDADE: 10 (DEZ) ANOS CONTADOS A PARTIR DE 19/05/2020, OBSERVADAS AS CONDICOES LEGAIS.

B25G Requested change of headquarter approved

Owner name: OBERTHUR TECHNOLOGIES (FR)

B25G Requested change of headquarter approved

Owner name: OBERTHUR TECHNOLOGIES (FR)