nfc e suas aplicações – considerações no âmbito de uma...
TRANSCRIPT
1
NFC e suas Aplicações – Considerações no âmbito de
uma solução de bilhética como a preconizada no
contexto do projecto SAM NFC
2
Contents
Introdução ....................................................................................................................................... 3
Modos de Operação ........................................................................................................................ 5
Comportamento Ativo e Passivo ................................................................................................. 6
O protocolo NFCIP e arquitectura de camadas .............................................................................. 6
LLCP ............................................................................................................................................. 7
MAC ............................................................................................................................................. 7
Inicialização .............................................................................................................................. 7
Fluxo de ativação do modo ativo de comunicação ................................................................. 8
Fluxo de ativação do modo passivo de comunicação ............................................................. 9
Protocolo de troca de dados ..................................................................................................... 11
Formato do Bloco .................................................................................................................. 12
Nível Físico ................................................................................................................................. 13
Aplicações ..................................................................................................................................... 14
Problemas de segurança ............................................................................................................... 15
Segurança ...................................................................................................................................... 17
Elemento seguro ....................................................................................................................... 18
hardware incorporado .............................................................................................................. 20
SMC ........................................................................................................................................... 21
UICC SIM .................................................................................................................................... 21
Sistemas de Bilhética – Projecto SAM NFC ................................................................................... 22
3
Introdução
Near Field Communication (NFC) é uma tecnologia de comunicação sem fio de curto alcance
entre dispositivos eletrônicos. A comunicação só ocorre quando os dois dispositivos são postos
a centímetros de distância entre si. Usa indução magnética para permitir a troca de dados entre
os dispositivos, formando na prática um transformador com núcleo de ar.
Trata-se de uma tecnologia desenvolvida a partir de uma combinação de tecnologias sem
contacto de identificação e de interligação já existentes, nomeadamente na incorporação de
funcionalidades de RFID em dispositivos como telemóveis e outros (impressoras, televisões,
etc..). Dispositivos equipados com NFC para além de servirem como tag identificadora
asseguram capacidades de escrita e leitura das tags com níveis de segurança igual aos actuais
Smart Cards.
Foi desenvolvido pela Philips e Sony e seu padrão se chama NFCIP-1 (Near Field Communication
Interface and Protocol 1), contido nos documentos (ISO/IEC 18092:2004) e (ECMA 340). Esse
padrão especifica os esquemas de modulação, codificações de bit, taxas de transmissão e
formato de quadro para a interface aérea, assim como os mecanismos de inicialização e
controle de colisão. No padrão NFCIP-1, também são definidos três tipos de comportamento
que um dispositivo NFC pode apresentar: iniciador ativo, alvo ativo e alvo passivo.
O NFC opera com portadora em 13,56MHz na banda não regulada ISM com largura de banda de
1800KHz e velocidades até 424 Kbits/s. O comprimento de onda a essa frequência supera os
22m, portanto o uso de pequenas antenas em loop permite bom acoplamento magnético e
péssima eficiência de irradiação: combinação que colabora para manter a privacidade da
comunicação.
Pode usar diferentes técnicas de modulação de portadora, de acordo com a taxa de
transmissão requerida. As diferentes taxas de transmissão permitem a sua adaptação a
formatos já presentes no mercado como o ISO/IEC 14443A (106Kbps) e o Sony FeliCa (212 e
424Kbps) e garantem a retrocompatibilidade do NFC com cartões já existentes. O standard é
também compatível com o ISO 15693, que define os Cartões Vicinity, um standard largamente
adoptado para localização de items através do RFID.
4
As camadas inferiores da tecnologia são baseadas em standards definidos por entidades como
ISO, ECMA e ETSI. A distância típica de operação de dispositivos NFC é de menos de 10cm. Esta
pequena distância é uma grande vantagem em termos de:
� segurança, pois dificulta a interceptação do sinal por outros dispositivos (mais há frente
ver-se-á quais as limitações em termos de segurança);
� usabilidade, pois em um ambiente repleto de etiquetas será ativada apenas aquela à
qual o utilizador apontar seu leitor (dado, obviamente, que haja uma separação mínima
entre as etiquetas).
No NFC existem três modos distintos de operação e que são o Peer-to-Peer, Read/Write e o
Card Emulation. O Peer-to-Peer permite que sejam transferidos dados entre dispositivos NFC, o
Read/Write permite que haja interoperabilidade entre o dispositivo e tags sem bateria,
finalmente o card emulation mode permite que haja retrocompatibilidade entre o NFC e infra-
estruturas já existentes para cartões sem contacto, emulando os actuais Smart Cards.
Figura 1
5
Modos de Operação
Os dispositivos NFC atuais não só implementam o padrão NFCIP-1, mas também o NFCIP-2, que
é descrito nos documentos ISO 21841 e ECMA 352. O padrão NFCIP-2 especifica o mecanismo
que detecta e seleciona um dos quatro modos de operação possíveis. Estes são:
� Peer-to-Peer (ou Terminal-to-Terminal), ISO 18092; O modo Peer-to-Peer cria uma
conexão de rede ponto-a-ponto entre dois dispositivos ativos (iniciador e alvo) para
troca de dados.
� PCD (Proximity Coupling Device, ou “leitor”) , ISO 14443 e VCD (Vincinity Coupling Device,
ou “leitor”), ISO 15693; Mais conhecido como modo Leitor/Escritor. Neste modo o
dispositivo NFC ativo inicia uma operação em uma tag passiva. A diferença entre os
modos PCD e VCD, ambos modos “leitor/escritor”, está na distância máxima de
operação. O modo PCD permite a leitura de etiquetas a até 13cm de distância, enquanto
o modo VCD permite uma distância de até 127cm.
� PICC (Proximity Integrated Circuit Card, ou “cartão”), ISO 14443; NFC possui um modo
emulador de cartão (tag) compatível, o que torna fácil e ecológica a substituição dos
cartões pelo aparelho. No modo Emulador de Cartão, o telefone será visto por qualquer
leitor/escritor como uma tag passiva, ou seja, o dispositivo NFC não gerará o seu
próprio campo magnético. O grande benefício desse modo é o de transformar o celular
em uma carteira eletrônica: se o telefone estiver ligado, o utilizador pode escolher uma
entre várias tags para emular. Se desligado ou sem bateria, o telefone pode ainda ser
energizado como uma tag passiva comum.
Os dispositivos NFC que implementam o NFCIP-2, já são compatíveis com uma vasta
infraestrutura de leitores e tags RFID já implantada em diversas partes do mundo.
O NFC Forum especificou um formato de troca de dados e definições de tipo de registro para
permitir a troca de dados entre dispositivos de diferentes fabricantes; e um protocolo de
controle de enlace lógico para o modo Peer-to-Peer, com o objetivo de prover
interoperabilidade entre as camadas mais altas.
6
Comportamento Ativo e Passivo Nos modos de operação referidos atrás, os dispositivos NFC podem assumir dois tipos de
comportamento:
� modo Ativo - No modo ativo as informações são codificadas usando código Miller com
100% de modulação, atingindo uma taxa de transmissão de 106Kbps. Nesse modo,
iniciador e alvo se comunicam gerando alternadamente seus campos magnéticos.
� modo Passivo - Com codificação Manchester à taxa de modulação de 10%, transmite a
até 424Kbps. O iniciador provê um campo magnético portador, o qual induz corrente na
antena do alvo, energizando-o, e este por sua vez responde modulando esse campo.
O protocolo NFCIP e arquitectura de camadas
O NFCIP-1 (documento ISO 18092) descreve o protocolo de transporte, procedimentos de
inicialização e especificações RF (ex. modulação de sinal) e está definido no ISO 18092. Este
especifica os requisitos para os dispositivos estejam em conformidade com o standard NFC.
O standard especifica dois modos de comunicação que os dispositivos NFC devem suportar, o
modo activo e passivo:
� Modo Activo: Neste modo ambos os dispositivos geram o seu campo RF para transporte
de dados.
� Modo Passivo: Apenas um dos dispositivos gera o campo RF enquanto o outro utiliza-o
para transferir os dados. O protocolo especifica que o iniciador (quem inicia a comunicação)
deve gerar o campo RF.
A aplicação define a velocidade inicial de comunicação em 106, 212 ou 424 kbit/s.
Posteriormente a aplicação ou o ambiente de comunicação pode requerer adaptação de
velocidade, que pode ser feita durante a comunicação.
O NFCIP-1 utiliza modulações e esquemas de codificação diferentes dependendo da velocidade.
Enquanto estabelece a ligação, o iniciador começa a comunicação num modo particular a uma
7
velocidade particular. O receptor/alvo determina a velocidade actual e o protocolo de baixo
nível associado automaticamente e responde de acordo. A comunicação é terminada ou
quando existe um comando da aplicação nesse sentido, ou quando os dispositivos saem do
alcance.
O NFCIP-1 especifica apenas o nível físico e o MAC (Medium Access Control), enquanto o NFC
Forum especifica a subcamada de LLCP (Logical Link Control Protocol).
LLCP Trata-se da metade superior do nível lógico do modelo OSI e situa-se acima do nível fisico o do
MAC. O protocolo LLCP) oferece os seguintes serviços:
� Ativação, supervisão e desativação de enlace;
� comunicação assíncrona balanceada;
� multiplexação de protocolo (o LLCP consegue acomodar vários protocolos de camada
superior ao mesmo tempo);
� transmissão de dados orientada à conexão, para garantia de entrega de pacotes através
de sequenciamento e retransmissões;
� transmissão de dados não-orientado à conexão, provendo menor overhead de
protocolo. Pode ser usada se os protocolos de camada superior fornecerem controle de
fluxo.
MAC Esta camada é implementada pelo protocolo NFCIP-1 , e executa as seguintes operações como
inicilaização, activação de modos de comunicação e detecção de colisões.
Inicialização
Inicialmente todos os dispositivos devem estar no modo alvo, ou seja, devem aguardar
silenciosamente (sem emitir campo de RF) por um comando vindo de um iniciador. Em seguida,
8
a aplicação determina que um desses dispositivos passe para o modo iniciador, e que este
opere no modo ativo ou passivo de comunicação a uma dada taxa de transmissão. Na etapa
seguinte, o fluxo de ativação entra em execução. O fluxo de ativação difere entre os modos
ativo e passivo.
Fluxo de ativação do modo ativo de comunicação
No modo ativo de comunicação (também chamado de NFC ativo), o fluxo (ver Figura 24 ) inicia-
se com um passo de prevenção de colisão. Uma vez que o meio esteja livre, o dispositivo
iniciador entra no modo NFC ativo. O iniciador deve executar o algoritmo de detecção de
colisão para verificar se há algum campo RF externo. Se nenhum for detectado, ativa seu campo
RF. Em seguida, envia uma trama de requisição de atributo (Attribute Request – ATR_REQ) a
uma taxa de transmissão que pode ser de 106Kbps, 212Kbps ou 424Kbps. O iniciador então
desliga seu rádio e aguarda uma resposta. Os parâmetros negociados nesse pedido são as taxas
de transmissão de ida e de volta, e o limite máximo de dados para uma trama.
O alvo que recebeu a trama ATR_REQ executa o algoritmo de prevenção de colisão de resposta
(vários alvos podem responder ao mesmo tempo, causando uma colisão). Se o meio estiver
livre, o alvo envia a trama de resposta de atributo (Attribute Response – ATR_RES) de volta, na
mesma taxa de transmissão, e desliga seu rádio.
O iniciador faz uma detecção de colisão. Caso receba mais de uma resposta ao mesmo tempo
(colisão), reenvia a trama ATR_REQ. Caso contrário, recebe a trama de resposta contendo os
parâmetros propostos pelo alvo. Se não estiver satisfeito com algum parâmetro, envia uma
trama Parameter Selection Request (PSL_REQ) para mudar um parâmetro, e aguarda uma
resposta PSL_RES. Se estiver satisfeito, envia uma trama do tipo Data Exchange Protocol
Request (DEP_REQ) para iniciar o protocolo de troca de dados. Se der tudo certo, a essa altura o
alvo terá um número de identificação (Device Identification - DID) ao qual o iniciador se referirá
daí por diante.
Após terminar sua troca de dados, o iniciador pode desativar o protocolo de troca de dados. Ao
enviar uma trama Deselect Request (DSL_REQ) a um alvo em particular, o alvo envia uma trama
9
de resposta Deselect Response (DSL_RES) e entra em modo sleep. Neste modo, a trama pára de
responder ao protocolo de troca de dados. Para reativá-lo, o iniciador deve enviar uma trama
Wake Up Request (WUP_REQ) que contém a identificação (DID) do alvo. Em seguida o alvo
responde com uma trama Wake Up Response (WUP_RES) e volta a ativar-se.
O iniciador pode liberar um alvo com o qual não deseja mais manter nenhum vínculo. Para isso,
envia uma trama Release Request (RLS_REQ) e aguarda uma trama de confirmação do alvo do
tipo Release Response – RLS_RES. Neste momento, o alvo perde seu número de identificação
(DID) e fica livre para passar por outro processo de inicialização.
Fluxo de ativação do modo passivo de comunicação
No modo passivo de comunicação (também chamado de NFC passivo), o fluxo de inicia-se com
um passo de prevenção de colisão. Uma vez que o meio esteja livre, o dispositivo iniciador
entra no modo NFC passivo. O próximo passo consiste num loop em que ocorrem a inicialização
e a descoberta de único dispositivo (Single Device Discovery - SDD). Esta etapa utiliza protocolos
de descoberta de dispositivo, de acordo com a taxa de transmissão escolhida pelo iniciador. A
106Kbps, usa-se o protocolo de detecção por colisão de bit. A 212 e 424Kbps, usa-se o
protocolo de detecção por janela de tempo.
Os dispositivos alvo possuem os seguintes estados de funcionamento:
� Estado Desligado (POWER OFF): o alvo não está recebendo um campo magnético
suficientemente forte para entrar em funcionamento;
� Estado Perceptivo (SENSE): o alvo está sendo alimentado por um campo magnético e
encontra-se preparado para responder a iniciadores à procura de dispositivos alvo;
� Estado de Resolução (RESOLUTION): o alvo permanece neste estado enquanto participa
do protocolo de descoberta de dispositivo. Uma vez que é descoberto, entra no Estado
Selecionado;
10
� Estado Selecionado (SELECTED): neste estado, o alvo é capaz de responder aos
comandos de determinação de parâmetros e de transmissão de dados, emitidos pelo
iniciador;
� Estado Adormecido (SLEEP): um alvo no Estado Selecionado que recebe uma requisição
de remoção entra no Estado Adormecido. Aqui o alvo só é capaz de responder à
requisição para acordar (daí volta para o Estado de Resolução).
A detecção por colisão de bit funciona da seguinte forma:
1) O iniciador faz uma requisição para que todos os alvos respondam, de forma síncrona, com
seus números binários de identificação única. O iniciador recebe todos os identificadores de
uma vez, sobrepostos (totalmente colididos);
2) O iniciador verifica a primeira posição de bit (a posição do bit mais significativo). Caso tenha
havido colisão (um valor 0 de um alvo e um valor 1 de outro), prevalece o nível alto (no
caso, o valor 1). Então o iniciador faz uma nova requisição, para que respondam todos os
alvos cujos identificadores contenham o valor 1 na primeira posição de bit;
3) Desta vez, os alvos cujos identificadores começam com 0 não respondem, e por conseguinte
menos colisões ocorrem. O iniciador repete a etapa 2, mas desta vez verificando também a
próxima posição de bit;
4) Este processo se repete até que o iniciador faça uma requisição com um identificador
completo, à qual apenas um alvo irá responder (já que o identificador é único).
Na detecção por janela de tempo, o tempo é dividido em janelas. Os alvos escolhem janelas
aleatórias para responder a uma requisição de polling do iniciador. Nas janelas ocupadas e sem
colisão, o iniciador é capaz de recuperar os identificadores dos alvos. Funciona da seguinte
forma:
1) O iniciador faz uma requisição de polling, com um determinado número N de janelas de
tempo;
11
2) Cada alvo que recebeu a requisição gera aleatoriamente um número entre 1 e N. Assim que
ocorrer a janela correspondente a seu número gerado, o alvo enviará seu identificador.
3) Um intervalo de tempo após a requisição de polling inicia-se a primeira janela de tempo;
4) O iniciador obtém um número de identificação de cada janela preenchida onde não houve
colisão. Em seguida faz uma requisição de descoberta a cada número obtido, à qual apenas
um alvo irá responder por vez.
Após o passo de inicialização e descoberta, o iniciador verifica se o dispositivo alvo suporta o
protocolo NFCIP-1. Caso suporte, o iniciador pode negociar parâmetros de conexão e em
seguida iniciar o protocolo de troca de dados (Data Exchange Protocol – DEP). Caso não
suporte, o dispositivo iniciador volta à etapa de inicialização e descoberta.
Após a troca de dados com um alvo em particular, o iniciador pode remover um alvo. Este alvo
irá ao Estado de Adormecido, e enquanto estiver nesse estado, não responderá a requisições
de dados. O iniciador pode enviar uma requisição para acordá-lo e retorná-lo ao Estado de
Resolução.
O iniciador pode encerrar o protocolo de troca de dados através de uma requisição de soltura
(Release Request – RLS_REQ): o iniciador volta a seu estado inicial, e os alvos voltam ao Estado
Perceptivo.
Protocolo de troca de dados O protocolo de troca de dados de NFCIP-1 chama-se Data Exchange Protocol (DEP). Usa half-
duplex para uma transmissão orientada a blocos (quadros de camada de enlace), com detecção
e correção de erro do campo de dados do bloco através de um CRC (Cyclic Redundant Check).
Retransmissões também são suportadas. Logo, após a sequência de ativação, o dispositivo alvo
deve esperar por um bloco do iniciador, pois só este tem o direito de transmitir. Após transmitir
o bloco, o iniciador deve aguardar o recebimento do bloco de resposta (ou um timeout), antes
12
de poder voltar a transmitir. Todos os blocos que o alvo transmite são respostas a blocos
recebidos do iniciador.
Um iniciador pode manter contato com múltiplos alvos ao mesmo tempo, mas só pode iniciar o
processo de requisição/resposta com um alvo de cada vez.
Se a carga útil de uma transmissão não couber em apenas um bloco, esta pode ser dividida em
blocos encadeados.
Formato do Bloco
A estrutura de um bloco é a que se apresenta na próxima figura . O tamanho máximo de um
bloco é de 255 bytes. Cada campo contém um byte.
Figura 2 – Formato do bloco de dados do protocolo NFCIP-1
Os campos são os que se descrevem a seguir:
� CMD 0 e CMD 1: Determinam se o bloco é de requisição (enviada por um iniciador) ou
de resposta (enviada por um alvo).
� PFB: Carrega informações de controle que definem o tipo de bloco enviado. Há três
tipos fundamentais de blocos:
o Bloco de informação (dados): o campo PFB possui uma flag para bloco encadeado e
dois bits para número de sequência;
o Bloco de confirmação (ACK/NACK): para confirmar recebimento/pedir reenvio;
o Bloco de controle: usado para verificar se um alvo ainda existe, e para estender
timeouts;
13
� DID: Identificador do dispositivo
� NAD: Identificador especial usado para criar mais de uma ligação lógica entre um
iniciador e um alvo
� Bytes restantes: Carga útil.
Nível Físico Num circuito eletrônico, uma bobina de fio forma um elemento indutivo (um indutor). Se uma
corrente variável passar por esse indutor, forma-se um campo magnético a seu redor. Quando
dois indutores são postos um próximo ao outro, e no primeiro circula uma corrente alternada,
um campo magnético variável é formado. O fluxo magnético que atravessa o segundo indutor
induz uma corrente alternada neste (fenômeno conhecido como Lei da Indução
Eletromagnética). Na região próxima à antena, que é um indutor, há o chamado campo
próximo reativo (reactive near field), o qual tem uma interessante propriedade: se parte da
energia desse campo não for absorvida por outro indutor, será reabsorvida pelo indutor fonte
(induzindo corrente neste) ao invés de irradiar-se pelo espaço. (Near and Far Field). Este campo
próximo reativo é o meio de comunicação usado por NFC.
No caso prático de um leitor e uma etiqueta, o leitor modula a amplitude de seu campo
magnético para enviar uma mensagem à etiqueta, e em seguida mantém este campo
magnético sem modulação alguma, para poder energizar a etiqueta enquanto aguarda uma
resposta. A etiqueta, após demodular a mensagem do leitor e envia a resposta alterando
(modulando) a carga de seu próprio circuito. Como toda a energia consumida por essa carga
vem do campo próximo reativo gerado pelo leitor, uma alteração dessa carga gera uma
alteração na energia consumida (pela etiqueta), que por sua vez gera uma alteração na energia
reabsorvida pelo leitor. Por conseguinte, uma mudança na carga da etiqueta gera uma
mudança na corrente da antena (indutor) do leitor. O leitor detecta essa mudança de corrente
e demodula a mensagem enviada pela etiqueta. Esse método com o qual a etiqueta se
comunica com o leitor chama-se “Modulação de Carga”.
14
No modo de operação Peer-to-Peer embora os dois dispositivos comunicantes estejam ativos
há um que é iniciador e outro que é o alvo. A diferença reside no fato de que o alvo também
gera seu próprio campo magnético (ao invés de modular o campo do iniciador).
Aplicações
Com o NFC, o telefone celular ganha outras funcionalidades como a implantação de aplicações
para pagamento e transporte com cartões de proximidade (RFID). De fato, existem três grandes
vantagens em usar o NFC num telefone celular: a primeira é sua disseminação em larga escala;
a segunda está no poder de processamento/memória superiores ao de uma etiqueta RFID; e a
terceira está no acesso que o telefone celular tem a redes de dados (redes celulares, redes
locais ou Internet).
As aplicações de NFC podem ser divididas em dois tipos: aquelas que requerem rígida
segurança para o controle de transações financeiras, e aquelas que são menos exigentes pois
fazem a troca de dados menos críticos, como texto.
A aplicação mais óbvia é a carteira eletrônica, já disponibilizada por vários bancos a nível
Europeu em 2014. Os primeiros cartões de proximidade surgiram para controle de acesso em
edificações, controle de ponto, e pagamento em transporte público. As dificuldades surgem ao
reunir os diferentes provedores de serviços num único dispositivo e isolar os dados de cada
serviço, de forma a garantir a privacidade do utilizador.
Para transações financeiras, a GSMA NFC Initiative propõe o uso de um TSM (Trusted Service
Manager) entre o provedor de serviço e a operadora de rede móvel. A carteira eletrônica deve
ser protegida contra o roubo de informações pessoais através de comunicação sem fio. Além
disso, uma vez perdido o celular, terá de ser possível desabilitar todos os seus serviços, assim
como reobter suas respectivas configurações e dados através de uma ligação para o TSM.
Existem problemas potênciais caso o utilizador mude de operador. Ele deverá descobrir, de
antemão, se o seu TSM tem contrato com o novo provedor. Há a possibilidade de provedores
15
de serviço serem exclusivos de determinados TSMs. Outro problema surge na hora de trocar de
TSM. Será que o TSM em questão irá a pedido do utilizador transferir suas informações e
assinaturas a um TSM concorrente, ou terá ele (o utilizador) de recontratar todos os seus
serviços e ainda reconfigurá-los?
Problemas de segurança
Tal como acontece com muitas tecnologias de comunicação sem fio NFC não é invulnerável,
apesar de seu curto alcance. As ligações básicas especificadas no ISO / IEC 18092, utilizando o
protocolo NFCIP-1 não são criptografadas e não há autenticação. Logo é necessário colocar
aplicações em layers acima do NFC para lidar com criptografia e autenticação. No que toca à
autenticação, o Fórum NFC já fornece uma especificação IDT para incorporar as assinaturas nas
mensagens NDEF.
Espionagem
O NFC é especialmente propenso a escutas. Apesar das conexões ocorrerem num espaço de
cerca de 10 cm, é possível usar hardware especializado para ouvir em uma ligação. É
conveniente salientar que no modo ativo em que ambos os dispositivos geram alternadamente
os seus próprios campos, as distâncias de espionagem podem ir até 10m. No modo passivo, em
que o destino responde, através da modulação do campo de iniciadores, a gama de ataque cai
significativamente para cerca de 1 m.
Ataques semelhantes já são possíveis em cartões sem contato RFID, em particular aqueles que
utilizam a norma ISO/IEC 14443, normalmente usados em sistemas de bilhética.
Jamming ou barramento de serviço
A forma mais simples de ataque impossibilta o uso do dispositivo, ou perturba a comunicação.
Como cada dispositivo reage a um sinal de entrada de alguma forma, pode ser uma interação
16
que exige interface do utilizador, um invasor pode inundar um dispositivo com sinais de tags
vazias para torná-lo inutilizável.
A única solução é a inclusão de um interruptor para desativar completamente o NFC [48]. Caso
contrário, a comunicação pode ser cancelada por perturbar o fluxo de dados de transmissões
em freqüências do NFC com o timing correto (isto é o o dispositivo é incapaz de descodificar
sinais codificados que recebe). O ataque só requer hardware apropriado e conhecimento da
modulação e codificação usadas. No entanto, com base no nível de potência os dispositivos NFC
podem detectar tais ataques.
Modificação de dados
Podem-se modificar os dados de forma que ainda pareçam válidos ao dispositivo receptor. Os
ataques podem ocorrer ao nível de bits, por exemplo a mudança de bits de 1 para 0 e vice-
versa. A prevenção envolve a verificação de influências de campo de terceiros e parar a
comunicação em detectar qualquer interferência, ou através do uso de um canal criptografado
de um nível superior.
Simulação de Relés
Um ataque de retransmissão é executado por interposição no meio de duas partes que se
comunicam. Estes ataques são possíveis em sistemas RFID e foram aperfeiçoados para
trabalhar com telefones convencionais NFC mediante a instalação de software. Um ataque
exige dois telefones para atuar como proxies, por sua vez conectados com um link de alta
velocidade (muito fácil dado que pode ser implementado via Bluetooth). Este tipo de ataque
permite contornar a autenticação dinâmica executada por modelos mais recentes do cartão
NFC uma vez que o link relé apresenta atrasos ainda aceites por leitores de cartões atuais. Este
ataque pode ser feito em qualquer sistema de ISO/IEC 14443. Possíveis contramedidas incluem
abortar a comunicação caso os tempos de roundtrip ou a localização do dispositivo de
emparelhamento não sejam os esperados.
17
Além dos ataques já referidos existe ainda o risco de se perder os cartões bancários ou os
blhetes NFC ou mesmo o telemovel. Se o telemovel não estiver encriptado o nível de segurança
oferecido pelo PIN é baixo e pode ser facilmente ultrapassado. Nestes, casos uma autenticação
seprada é necessária.
Segurança
A segurança é uma questão fundamental com NFC. dado que todas as informações de
transações e contas de cartão de pagamento precisam ser mantidos em segurança e separados.
Por esta razão, NFC requer o uso de um SE (Secure Element).
Figura 3 – Elemento seguro
18
O controlador de host (controlador de banda) é o coração de qualquer telefone móvel. O Host
Controller Interface (HCI) cria uma ponte entre o controlador NFC eo controlador de host. Uma
interface ISO / IEC 7816 suporta a vinculação das SEs ao controlador de host. O controlador
anfitrião define os modos de operação do controlador NFC através do HCI, processa os dados
que são enviados e recebidos, e estabelece uma conexão entre o controlador NFC e o SE. Além
disso, mantém a interface de comunicação, periféricos, e a interface do utilizador
Elemento seguro Serviços seguros NFC devem ocorerr num ambiente protegido. Essa proteção é obtida através
da utilização de um SE que fornece os mecanismos de segurança necessários para suportar
vários modelos de negócios. O SE é uma combinação de hardware, software, interfaces e
protocolos incorporados num aparelho móvel que permite o armazenamento seguro. O SE é
necessário para diversas aplicações, tais como pagamento, emissão de bilhetes, o governo e
outras aplicações em que a autenticação segura e um ambiente confiável estão entre os pré-
requisitos
Um SE precisa ter um sistema operativo. O sistema operativo (por exemplo, MULTOS, JavaCard
OS) suporta a execução segura de aplicações e armazenamento seguro de dados de aplicações.
O sistema operativo também podem apoiar o download seguro de aplicações.
Em bilhética sem contacto, pagamento e outros casos de aplicação semelhantes, a segurança é
uma questão importante. Esses aplicativos usam dados valiosos, eo armazenamento de
informações valiosas e privados (por exemplo, informações de cartão de crédito) numa
memória não segura é inaceitável, uma vez que estes podem ser transmitidos através de uma
interface GSM para uma terceira identidade.
Para resolver este problema, as aplicações relevantes NFC precisam ser executadas e guardadas
na memória de um SE de um telemovel com NFC (ver figuras 3 e 4).
19
Figura 4 – Arquitetura de segurança em dispositivo NFC
Um dispositivo móvel integrado com a tecnologia NFC é geralmente composto de vários
circuitos integrados (CIs), SE e uma interface NFC. A interface NFC é composto de um contato,
analógico / digital chamado de Front-end NFC sem contato (NFC CLF), uma antena NFC e um IC
chamado um controlador NFC para permitir transações NFC. Além de um controlador NFC, um
telefone móvel NFC tem, pelo menos, um SE que está ligado ao controlador de NFC para a
execução das transacções seguras de proximidade com dispositivos NFC externos. O SE oferece
um ambiente dinâmico e seguro para programas e dados. Ele permite o armazenamento seguro
de dados valiosos e privados, tais como informações de cartão de crédito do utilizador e
execução segura dos serviços NFC, tais como pagamentos. Além disso, mais do que um SE pode
ser directamente ligado ao controlador NFC. As interfaces comuns suportados entre SEs e o
controlador NFC são o Single Wire Protocol (SWP) e a NFC Wired Interface (NFC-WI). O SE pode
ser acedido e controlado a partir do host controler interno, bem como a partir do campo de RF
externamente.
20
Existem vários tipos de implementação de implementação elemento seguro (SE):
� hardware incoporado no telefone móvel (já vem de fábrica).
� Cartão de memória secure (SMC ou SD Card)
� SIM Based (operador de rede móvel abordagem centrada) onde a aplicação protegida é
executada no UICC e UICC está conectado com SWP.
Figura 5 – Tipos de SE
hardware incorporado Nesta alternativa o SE é um cartão inteligente soldado sobre o telefone móvel que não pode ser
removido. O nível de segurança oferecido por este SE é tão elevado como o suportado por um
cartão inteligente. Este chip é incorporado no telefone móvel durante a fase de fabrico e tem
de ser personalizado após o dispositivo ser fornecido ao utilizador final. Soldado no aparelho, o
chip SE, obviamente, não pode ser transferido para outro móvel. Tem que ser personalizado a
cada vez que o telefone móvel é usado por outro utilizador. Embora o hardware embarcado
baseado SE é compatível com todos os padrões de cartões inteligentes, a comunicação dentro
do telefone celular não é padronizado ainda.
21
SMC A SMC removível é constituído de memória, um elemento de cartão inteligente incorporado e
um controlador de cartão inteligente. Trata-se de uma combinação de um cartão de memória e
um cartão inteligente. Assim, um SMC fornece o mesmo nível de segurança de cartões
inteligentes e é compatível com a maioria das principais normas, interfaces e ambiente para
cartões inteligentes (eg, EMV, GlobalPlatform, ISO / IEC 7816, JavaCard). Devido ao fato de
removível e ter uma memória de grande capacidade, a SE baseado em SMC pode hospedar um
grande número de aplicações, e não precisa ser reeditado quando o cliente compra um novo
telefone móvel. A base SMC SE pode ser inserido no novo dispositivo facilmente.
UICC SIM A UICC é o smart card físico que o cartão SIM ou USIM é implementado em cima. Por isso, é
conhecido como um cartão SIM ou USIM. A base UICC SE é compatível com todos os padrões de
cartões inteligentes e pode hospedar várias aplicações de diferentes provedores. A UICC
garante a integridade e segurança de todos os tipos de dados pessoais. A UICC pode hospedar
aplicações GSM / UMTS como aplicações SIM / USIM, bem como aplicações tais como carteiras
electronicas e pagamentos, emissão de bilhetes, etc...
Pode-se afirmar que os SEs baseados em UICC proporcionam um ambiente ideal para
aplicações NFC. Eles são pessoais, seguros, portáteis e de fácil geração. Neste caso, os
portadores de cartões podem ter certeza de que as transações são executadas com suas
informações pessoais protegidas. Os prestadores de serviços, que implantam aplicações NFC
certificadas, não correm o risco de perder os clientes quando os titulares mudam de aparelhos.
Mais do que um cartão de crédito ou de débito podem ser armazenadas no mesmo UICC. Em
uso, os dados transferidos por NFC (na verdade, a partir da UICC) para o leitor são comunicados
aos organismos financeiros utilizando o mesmo processo seguro, usado para operações de
crédito ou cartão de débito convencionais.
22
Para ativar pagamentos de proximidade, elemento seguro deve ser capaz de autenticar-se num
banco, e ser resistente ao ataque físico ou lógico. Os dados são comunicados entre UICC e
módulo NFC com SWP, que foi desenvolvido para apoiar o uso de aplicativos de pagamento em
execução no UICCs, e permite que a aplicação de pagamento no UICC comunique com os
leitores sem contato via interface NFC do aparelho..
Por exemplo, uma aplicação de pagamento micro "Wallet NFC" consiste em várias partes. A
única parte que é realmente reconhecida pelo utilizador - são as aplicações em execução no
dispositivo móvel. Esta parte fornece o utilizador com uma GUI (graphical user interface) e
permite que recarregue a carteira e ver a quantidade de dinheiro disponível no aparelho. Para
recarregar a carteira, a aplicação é capaz de estabelecer uma conexão GPRS para um servidor
TSM apoiado pelo operador de rede móvel. O servidor de transação aceita a conexão de
entrada do aparelho NFC. A autenticação do dispositivo é feita através de uma solução do
operador de rede móvel. O servidor verifica o saldo da conta do cliente e, em seguida, envia o
dinheiro (criptografado) de volta para o aparelho, ficando o dinheiro directamente armazenado
no elemento de segurança.
Sistemas de Bilhética – Projecto SAM NFC
Embora os sistemas de bilhética RFID anunciem o cumprimento dos standards, o que se verifica
na realidade é um cumprimento parcial dos mesmos. Por exemplo, no projeto SAM NFC
(QREN), tendo como base de comparação a ISO 14443, verificou-se que nem toda esta
especificação era cumprida pelos cartões CTS512 e SRT512. Tendo-se chegado à conclusão que
essa premissa não se verifica, também se concluiu que embora a maioria dos cartões não
cumpram a ISO 14443 na sua totalidade, cumprem as especificações pertencentes à parte 1 e 2
da mesma ISO, fazendo com que a Camada Física constituinte do cartão e, a sua Potência de
Radio Frequência e Interface de Sinal utilizada sejam normalmente compatíveis. Isto garante
que as características necessárias à comunicação entre os dispositivos em termos de Hardware
estão asseguradas, desde que obedeçam ao mesmo standard. Na tabela 1, podem-se ver as
diferenças entre 3 tipos de cartões obedecendo à norma ISO 14443.
23
Camada
Cartão
Lisboa Viva Rhone (SRT512) Viva Viagem
(CTS512)
Características Físicas ISO 14443 – Parte
1
ISO 14443 – Parte
1
ISO 14443 – Parte
1
Potência de Radio Frequência e
Interface de Sinal
ISO 14443 – Parte
2
ISO 14443 – Parte
2
ISO 14443 – Parte
2
Inicialização e Anti colisão ISO 14443 – Parte
3
Desenvolvido pelo
fabricante: ST
Desenvolvido pelo
fabricante: ASK
Protocolo de Transmissão ISO 14443 – Parte
4
Desenvolvido pelo
fabricante: ST
Desenvolvido pelo
fabricante: ASK
Tabela 1 - Especificações presentes nos cartões em estudo
Da Tabela 1, rapidamente se percebe que o desenvolvimento de uma solução de bilhética
abrangente, baseada em NFC, e que permita integração de diversos tipos de transportes (por
exemplo que englobe metro, carris e comboios sub-urbanos) terá de suportar diversos tipos de
Inicialização, Anti Colisão e Protocolo de Transmissão. No entanto, importa salientar que as
alterações associadas reflectem-se somente ao nível do software e encontram-se bem
definidas, não sendo passíveis de objecto de investigação visando a sua melhoria.
No entanto, dadas as questões colocadas pela tecnologia NFC e a sua integração nas redes
móveis trabalhos de investigação futura centrar-se-ão em aspectos como:
� Segurança
� Análise de tráfego gerado no enquadramento da solução na rede existente (operador e fora
do operador)
� Análise da robustez da solução face a ataques
� processos de autenticação