Fundamentos de la tecnología NFC
La tecnología NFC es un nuevo sistema Wireless (sin cable), basado en el RFID y en otras tecnologías de identificación e interconexión sin contacto para la transmisión de datos. En general, cuando hablamos de NFC, nos estamos refiriendo a la capacidad de los smartphones y otros dispositivos de establecer radio comunicación entre ellos haciendo tan sólo que se toquen o aproximándolos, típicamente a una distancia de 10 cm o menor. Esta corta distancia lleva implícita seguridad en las operaciones, ya que éstas no se realizarán si los dispositivos no se aproximan voluntariamente. Esta vecindad necesaria de los dispositivos hace que una posible interceptación de las comunicaciones tenga una probabilidad muy baja. Esta tecnología opera a la frecuencia de 13,56 MHz y puede transferir datos a una velocidad de hasta 424 Kbits por segundo.
Por otro lado, existe también el llamado NFC Forum; se trata de una asociación industrial con más de 160 miembros fundada en 2004 por Nokia, Philips Semiconductors (que se pasó a llamar NXP Semiconductors en 2006) y Sony, cuyo objetivo principal es promocionar la tecnología y establecer estándares clave para el desarrollo de la misma. Con este objetivo, han creado un modelo de formación e intercambio de datos (NDEF – NFC Data Exchange Format) entre elementos NFC.
Además del NFC Forum, GSMA también ha trabajado para definir una plataforma para el despliegue de los “estándares GSMA NFC” en los dispositivos móviles.
La mayoría de los primeros casos empresariales, como los tags para anuncios u otras aplicaciones industriales, no han tenido éxito porque se ha impuesto alguna otra tecnología (códigos 3D, tags UHF…). En este sentido, la principal ventaja del NFC es que los dispositivos NFC habitualmente están conectados en la nube (“cloud”). Se pueden entregar tarjetas de visita “conectadas” a través del “aire”, al revés de lo que ocurre con las tarjetas tradicionales. Todos los smartphones con NFC pueden hacer uso de aplicaciones dedicadas, lo que da a cualquier aplicación cientos de millones de lectores potencialmente dedicados, en oposición de la infraestructura habitual de ticket, control de acceso o lectores para pagos.
Los elementos NFC pueden ser: un dispositivo (Smartphone/teléfono, PDA, PC, lector RFID, POS, etc.) o bien un tag. De hecho, la tecnología NFC siempre relaciona un dispositivo iniciador (activo) y un target (o tag); el iniciador genera de forma activa el campo RF que puede activar un tag pasivo. Esto hace que sea posible que los NFC targets puedan tomar distintas formas como tags, adhesivos, llaveros o tarjetas que no requieren baterías.
Si hablamos específicamente de NFC en el móvil, nos podemos encontrar con que el tag ya forma parte del propio móvil (son aquellos móviles o Smartphones “NFC”, que ya incorporan la tecnología), o bien nos podemos encontrar con que no incorpora la tecnología y lo queremos dotar de ella, por ejemplo pegando un tag en la parte trasera o colgándoselo del lateral. En este caso se trata de un simple tag, que en general es tipo MIFARE® y al cual no hay acceso desde el propio teléfono; en general, un tag de este tipo sólo nos identificará pero no podremos hacer operaciones complejas con él. La otra opción es que lleve una SIM interna la cual tiene una antena que queda dentro del propio teléfono. En este caso sí que se puede acceder a los datos de la tarjeta desde el propio teléfono, aunque al tener una antena no diseñada específicamente para el móvil en cuestión, su funcionamiento con otros dispositivos NFC puede ser bastante pobre.
En general, un dispositivo NFC (NFC Forum Device) se define así cuando implementa al menos las partes obligatorias del conjunto de protocolos definidos por el NFC Forum, y respeta los requisitos de interoperabilidad establecidos. En general, un dispositivo “activo” es aquel que tiene la capacidad de iniciar las comunicaciones con otro dispositivo NFC o con un tag.
Cada dispositivo NFC puede trabajar de tres modos distintos:
Por otro lado, tag NFC és un transponder contactless compatible con una de las 4 tipologías definidas por el NFC Forum, o bien con el estándar ISO/IEC 18902. Un tag NFC es un elemento pasivo, en el sentido de que no tiene la capacidad de iniciar la comunicación, pero utiliza la energía de la señal enviada por un dispositivo para responder.
Las 4 tipologías de tag NFC según NFC Forum son:
♦ NFC Forum Tag type 1 (compatible con tags Innovision Topaz/Jewel) -> Standard ISO/IEC 14443-3 Tipo A (sin anticolisión)
♦ NFC Forum Tag type 2 (compatible con tags NXP MIFARE Ultralight®) -> Standard ISO/IEC 14443-3 Tipo A
♦ NFC Forum Tag type 3 (compatible con tags Sony FeliCa) -> Standard JISX6319-4
♦ NFC Forum Tag type 4 (compatible con SmartCards que soportan comandos APDU) -> Standard ISO/IEC 14443-4 e ISO/IEC7816-4
Estos 4 tipos de tags definidos por NFC Forum también se diferencian entre ellos en términos de velocidad de comunicación y opciones de configuración, memoria, seguridad, retención de datos y duración de la grabación.
Los tags pueden almacenar datos personales de forma segura, tales como información de tarjetas de crédito y débito, datos de programas de fidelización, PIN’s y datos de networking, entre otro tipo de información.
Aquí podemos ver otro cuadro-resumen que describe los diferentes tipos de tag NFC en base a algunas características y su uso:
Volviendo a los dispositivos NFC, en general, el modo de trabajo tipo “Card Emulation” es posible, pero depende del controlador NFC presente en el interior del móvil Smartphone y de si el sistema operativo (SO) del mismo lo soporta. En la mayoría de móviles con SO Android, el modo “Card Emulation” está deshabilitado, pero hay algunos móviles con este SO que sí consienten esta forma de trabajo, pero mediante el acceso al Secure Element (SE) del mismo (elemento fuertemente controlado, pero al que se puede tener acceso de forma restringida, como por ejemplo se hace con la aplicación Google Wallet), o bien mediante acceso a la SIM. En todos los casos, esta característica está deshabilitada por razones de seguridad del fabricante del Smartphone, o del sistema operativo o del fabricante de la SIM (el proveedor de telefonía).
En algunos casos, es posible ver el móvil como un tag que presenta un identificador aleatorio, es decir, que es diferente cada vez que lo leemos. En estos casos, el ID que visualizamos no lo proporciona la emulación de tarjeta, si no el NFCID1, el ID peer-to-peer, y que lo genera de forma casual el hardware NFC con cada conexión NFC y no puede ser un número fijo, por razones de seguridad.
Por ejemplo, para aplicaciones de control de acceso, es posible usar el móvil para memorizar la información en el interior de la memoria del tag emulado (que, en general es un tag MIFARE®).
Si el UID es aleatorio, únicamente el primer byte es 0x08. Para que el móvil facilite un UID aleatorio, es necesario que:
En el interior del móvil exista un Secure Element (SE) que lo pueda facilitar
El sistema operativo (SO) permita el modo de trabajo card emulation, usando el SE presente (no card emulation software)
Es posible determinar si el smartphone soporta la modalidad peer-to-peer, o está en modo de emulación de tarjeta, con el valor del byte SAK. Si los bits del SAK van de 0 a 7 y que el bit 2 sea igual a 0:
► Si el bit 6 = 1, el Smartphone soporta el modo peer-to-peer (NFC-DEP) definido por el ISO 18092
► Si el bit 5 = 1, el Smartphone soporta el modo ISO-DEP (ISO 14443-4)
Si ninguno de estos bits está fijado, entonces el smartphone soporta un único protocolo propietario. Si el ID es aquel que se refiere a la modalidad peer-to-peer, entonces no hay ningún tag del cual leer o escribir.