Unpredictable Number

Summary

O Unpredictable Number (UN), em português Número Imprevisível, é um valor gerado pelo terminal POS/TPA durante uma transação EMV e enviado ao chip do cartão.

Como funciona?

  1. O terminal POS gera um número imprevisível.
  2. Envia esse número ao chip do cartão.
  3. O chip utiliza-o no processo criptográfico de autenticação, por exemplo, na geração de uma assinatura digital DDA ou CDA.
  4. O terminal verifica a assinatura e confirma que está associada ao desafio enviado.

Exemplo prático

Imagina que um cliente faz uma compra de 50 €.

  1. O POS gera um número. Por exemplo: A7F29C31
  2. O POS envia o número ao cartão. O chip recebe A7F29C31 como parte dos dados da transação.
  3. O cartão executa a operação criptográfica. Utiliza o número imprevisível juntamente com outros dados para produzir uma assinatura digital ou um criptograma, conforme o mecanismo EMV.
  4. O POS verifica o resultado. Verifica a assinatura ou os dados criptográficos e confirma que correspondem ao desafio e aos dados relevantes da transação.

Porque é importante?

Imagina que alguém interceta os dados de uma transação anterior e tenta reutilizá-los noutra operação.

Se o terminal gerar um novo número imprevisível, por exemplo B8124F60, o cartão terá de produzir uma resposta criptográfica correspondente ao novo desafio.

A resposta antiga, associada a A7F29C31, não deverá ser válida para o novo desafio.

Isto ajuda a prevenir ataques de repetição (replay attacks).

O que garante a segurança deste número?

O aspeto mais importante é a qualidade da geração do número no terminal.

O POS deve gerar valores suficientemente imprevisíveis e evitar repetições ou padrões facilmente identificáveis.

Se o número for previsível ou repetido com frequência, um atacante poderá ter mais facilidade em preparar ataques.