Esta seção descreve os requisitos gerais do conjunto de comandos APDU para cartões não compatíveis com ISO14443-4 (conhecidos como cartões de armazenamento).
comando General-Authenticate
O comando General-Authenticate é usado para executar a sequência de autenticação em um cartão MIFARE. Esse comando só é aplicável aos cartões MIFARE Mini, Classic 1k e 4k.
General-Authenticate formato de comando
Comando
Classe
INS
P1
P2
Lc
Entrada de Dados
General-Authenticate
0xFF
0x86
0x00
0x00
0x01
Endereço MSB, Endereço LSB, Tipo de Chave A ou B, Número da Chave
General-Authenticate formato de resposta
Resposta
SW1, SW2
comando Get-Data
O comando Get-Data é usado para recuperar informações da marca/cartão NFC sem contato.
Get-Data formato de comando
Comando
Classe
INS
P1
P2
L2
Get-Data
0xFF
0xCA
0x00: número de série do cartão (ISO14443-A: UID, ISO14443-B: PUPI, Felica: IDm, Jewel: RID)
0x01: bytes históricos do cartão (Tipo A: bytes históricos de ATR, Tipo B: resposta ATTRIB)
0x00
0x00
Get-Data formato de resposta
Resposta
Saída de dados, SW1, SW2
comando Load-Key
O comando Load-Key é usado para armazenar chaves MIFARE no driver. Esse comando só é aplicável aos cartões MIFARE Mini, Classic 1k e 4k.
Load-Key formato de comando
Comando
Classe
INS
P1
P2
Lc
Entrada de Dados
Load-Key
0xFF
0x82
Estrutura de chave
Número da Chave
0x6
Valor da chave
Load-Key formato de resposta
Resposta
SW1, SW2
Comando Gerenciar Sessão
A implementação desse comando deve ser de acordo com a especificação do PCSC.
Gerenciar formato de comando de sessão
Comando
Classe
INS
P1
P2
Lc
Entrada de Dados
Autenticação Geral
0xFF
0xC2
0x00
0x00
Variável
Objeto de dados TLV
Veja a seguir os objetos de dados TLV necessários para serem compatíveis com o driver:
Marca
Objeto de dados
0x80
Objeto de dados version
0x81
Iniciar Sessão Transparente
0x82
Encerrar Sessão Transparente
comando Read-Binary
O comando Read-Binary é usado para ler dados da marca/cartão NFC sem contato. O comando é aplicável somente a cartões de armazenamento (cartões MIFARE Classic/UL, Felica, ISO15693 e Jewel/Topaz).
Read-Binary formato de comando
Comando
Classe
INS
P1
P2
Lc
Entrada de Dados
Li
Read-Binary
0xFF
0xB0
Endereço MSB
Endereço LSB
Comprimento dos dados em
Dados
Comprimento esperado
Read-Binary família MIFARE
Comando
CIA
INS
P1
P2
Le
UL READ 16
0xFF
0xB0
0x00
0x00 0x15
0x10
CL 1k READ 16
0xFF
0xB0
0x00
0x00 0x3F
0x10
CL 4k READ 16
0xFF
0xB0
0x00
0x00 0xFF
0x10
família Read-Binary Jewel
Comando
CIA
INS
P1
P2
Le
LEIA TUDO
0xFF
0xB0
0x00
0x00
0x00
RID
0xFF
0xB0
0x00
0x00
0x06
READ
0xFF
0xB0
Bloquear Não
Deslocamento de bloco
0x01
LEIA 8
0xFF
0xB0
Bloquear Não
0x00
0x08
LEIA SEG
0xFF
0xB0
0x00
Segment Addr
0x80
Read-Binary família Felica
Comando
CIA
INS
P1
P2
Lc
Entrada de Dados
CHECK
0xFF
0xB0
0x00
0x00
Comprimento dos dados em
Número de serviços, número de blocos, lista de blocos
Família ISO 15693
Comando
CIA
INS
P1
P2
Le
READ
0xFF
0xB0
Número do Bloco
0x00
0x04
Resposta da família ISO 15693
Resposta
Data out, SW1, SW2
Comando de troca transparente
Formato de comando do Exchange Transparente
Comando
Classe
INS
P1
P2
Lc
Entrada de Dados
Autenticação Geral
0xFF
0xC2
0x00
0x01
Variável
Objeto de dados TLV
Veja a seguir os objetos de dados TLV necessários para que o Transparent Exchange Command tenha suporte do driver para troca transparente de comandos em cartões de armazenamento:
Marca
Objeto de dados
0x95
Transceive - Transmitir e receber
0x5F46
Timer
comando Update-Binary
O comando Update-Binary é usado para gravar dados na marca/cartão NFC sem contato. O comando é aplicável somente a cartões de armazenamento (cartões MIFARE Classic/UL, Felica, ISO15693 e Jewel/Topaz). O formato da solicitação e da resposta para o comando é conforme descrito abaixo.
Update-Binary formato de comando
Comando
Classe
INS
P1
P2
Lc
Entrada de Dados
Update-Binary
0xFF
0xD6
Endereço MSB
Endereço LSB
Comprimento dos dados em
Dados
Update-Binary família MIFARE
Comando
CIA
INS
P1
P2
Le
UL WRITE 4
0xFF
0xD6
0x00
0x00 0x15
0x04
CL 1k WRITE 16
0xFF
0xD6
0x00
0x00 0x3F
0x10
CL 4k WRITE 16
0xFF
0xB0
0x00
0x00 0xFF
0x10
família Update-Binary Jewel
Comando
CIA
INS
P1
P2
Le
WRITE1-E
0xFF
0xD6
Número do Bloco
Deslocamento de bloco
0x01
WRITE8-E
0xFF
0xD6
Número do Bloco
0x00
0x08
Update-Binary família Felica
Comando
CIA
INS
P1
P2
Le
Entrada de Dados
UPDATE
0xFF
0xD6
0x00
0x00
Comprimento dos dados em
Número de Serviços, Número de blocos, Lista de blocos