Negociar sessões seguras

O comando negotiate smart tap session troca as informações necessárias para estabelecer um canal seguro entre o dispositivo móvel e o terminal, com autenticação do comerciante e transmissão criptografada dos dados do cartão para o terminal. Esse comando é opcional, embora o dispositivo móvel possa se recusar a enviar determinados cartões sem uma sessão segura.

Negociar comando de sessão segura do smart tap

Cla INS. P1 P2 Lc Dados Le
90 53 00 00 xx Negociar registro NDEF de solicitação 00

Negociar registro NDEF da solicitação

Deslocamento Comprimento Descrição Tipo de registro Formato de payload M/O/C
0 6 Negociar cabeçalho de solicitação NDEF ngr Cabeçalho NDEF M
6 2 Negociar versão NDEF da solicitação (0001)   Binário M
8 16 Registro NDEF da sessão ses   M
24 var. Registro NDEF de parâmetros de criptografia cpr   M

Registro NDEF de parâmetros de criptografia

O blob de dados a ser assinado consiste no valor de uso único do terminal (32 bytes), no valor de uso único do dispositivo móvel (32 bytes), no ID do coletor (4 bytes) e na chave pública temporária do terminal NIST P-256 compactado (33 bytes).

O código do coletor é codificado no mesmo formato do registro do código do coletor. Se o código do coletor exceder 4 bytes conforme codificado, use os últimos 4 bytes. Se for menor que 4 bytes, use o botão esquerdo com 0s.

Se a sinalização de autenticação em tempo real no byte de autenticação não estiver definida, o blob de dados terá 32 bytes de 0s no lugar do valor de uso único do dispositivo móvel.

Deslocamento Comprimento Descrição Tipo de registro Formato de payload M/O/C
0 6 Cabeçalho NDEF de parâmetros de criptografia cpr Cabeçalho NDEF M
6 32 Valor de uso único do terminal   Binário M
38 1 Byte de autenticação   Binário M
39 33 Chave pública temporária do comerciante (compactada)   Binário M
72 4 Versão da chave em longo prazo do comerciante   Binário M
76 var.

Registro NDEF da assinatura

Prefixo ASN.1 + assinatura de (terminal nonce || mobile device nonce || collector ID || terminal ephemeral public key)

sig PRIMITIVO M
  Registro NDEF do código do coletor cld PRIMITIVO M
Byte de autenticação
  0x01 0x02 0x04 0x08 0x10 0x20 4 x 40 0x80
bitmap de byte de autenticação Autenticação em tempo real Rfg Rfg Rfg Rfg Rfg Rfg Rfg

O bit de autenticação ativo precisa ser definido como 1 se a assinatura tiver um valor de uso único completo do dispositivo móvel. Defina como 0 se um valor de uso único de todos os 0s for usado para uma assinatura pré-assinada.

Negociar resposta segura da sessão segura do smart tap

Se o status da resposta for 9000 ou 9002, a resposta conterá a chave pública temporária do dispositivo móvel. A chave pública temporária do dispositivo móvel é usada para gerar a chave compartilhada para as próximas operações criptográficas.

O status da resposta será 9500 se a assinatura não puder ser verificada ou se o dispositivo móvel não tiver cartões desse comerciante e não puder verificar a assinatura. Mesmo que o status da resposta seja 9500, todos os dados retornados ainda serão criptografados.

Deslocamento Comprimento Descrição Tipo de registro Formato de payload M/O/C
0 var. Negociar registro NDEF de solicitação nrs   M
2 Status ISO 7816-4   Binário M

Negociar registro NDEF de resposta

Deslocamento Comprimento Descrição Tipo de registro Formato de payload M/O/C
0 6 Negociar cabeçalho NDEF de resposta nrs Cabeçalho NDEF M
6 16 Registro NDEF da sessão ses   M
22 39 Registros NDEF temporários da chave pública do dispositivo móvel dpk   O

Registro NDEF temporário da chave pública do dispositivo móvel

Deslocamento Comprimento Descrição Tipo de registro Formato de payload M/O/C
0 6 Cabeçalho NDEF temporário da chave pública do dispositivo móvel dpk Cabeçalho NDEF M
6 33 Chave pública temporária do dispositivo móvel (compactada)   Binário M

Palavras de status relevantes

Categoria Palavras de status relevantes
90xx 9.000, 9.002
91xx N/A
92xx TODOS
93xx TODOS
94xx TODOS
95xx 9500
6xxx 6,82

Consulte Palavras de status para mais detalhes.