Leitor

Também chamado de programador, uma vez que pode escrever nos cartões, terminal, aparelho de aceitação de cartão (CAD - card acceptance device) ou aparelho de interface (IFD - interface device).

 

                                                         
                    Fig. 2.3.1: leitor de smart card de contato                                                           Fig. 2.3.2: leitor de smart card de contato(outro ângulo)

 

A primeira fase da comunicação é feita assim que o "contato" é feito ( seja ele contato real ou por meio de ondas de rádio), quando tanto o leitor quanto o cartão trocam informações de identificação. No caso de informações incongruentes, o contato é encerrado, o que aumenta a segurança (ver detalhes).

Após a verificação de compatibilidade, o leitor passa a se comunicar com o cartão, mediando a transmissão de dados do computador para o mesmo.

Infelizmente, não há um padrão para a comunicação entre o cartão e o leitor, portanto é necessário estar atento ao método da interface do leitor com o computador.

No caso dos cartões sem contato, a comunicação é feita baseada no formato APDU (Application Protocol Data Unit).

APDU

Nesse formato, os bytes são distribuidos da seguinte forma:

CLA - INS - P1 - P2 - Lc - Datafield - Le

CLA - Byte de Classe - geralmente se refere ao aplicativo em si

INS - Byte de Instrução - indica o código de instrução associado

P1, P2 - Parâmetros - se necessários, por exemplo para celulares (PIN)

Lc - define quantos bytes estão contidos no campo Datafield

Datafield - contém os dados do comando APDU

Le - define o tamanho esperado do Lc da resposta ao comando APDU


topo