Estándares de las tarjetas inteligentes: ¿qué significa cada uno de ellos?

Nick Smith | 14 mayo 2019
Tarjetas inteligentes Estándares

Con tantos estándares vigentes relativos a las tarjetas inteligentes, es importante comprender qué significa cada uno y qué relevancia tienen. En este artículo le ofreceremos una perspectiva sobre algunos estándares clave y la función que desempeñan dentro del ecosistema de las tarjetas inteligentes.

Cada estándar comentado en este artículo define un aspecto del comportamiento o del funcionamiento de una tarjeta inteligente. Estos estándares básicos son parte fundamental de la mayoría de las tarjetas inteligentes que hay hoy en día en el mercado.

Los estándares comentados en este artículo son:

ISO 7816

Uno de los estándares más importantes para las tarjetas inteligentes es la norma ISO 7816, y sobre ella se fundamentan la mayoría de las tarjetas inteligentes disponibles actualmente. Otras muchas tarjetas inteligentes se sustentan en otras partes de la ISO 7816 para aspectos relacionados con su funcionalidad.

La norma ISO 7816 consta de 15 partes, y cada una de ellas define un aspecto diferente del nivel de capacidad de las tarjetas. No describiremos aquí las 15 partes, pero hay dos aspectos cruciales definidos por esta norma son (1) la interfaz eléctrica con la tarjeta a través de os contactos y (2) el protocolo de comunicación entre un lector de tarjetas inteligentes (llamado dispositivo de interfaz en la norma) y una tarjeta inteligente.

La ISO 7816 se redactó originalmente para tarjetas con contactos eléctricos expuestos en su superficie (“tarjetas de contacto”). La norma describe las señales y los protocolos de transmisión en la interfaz eléctrica de las tarjetas de contacto. Esta información la utilizan los fabricantes de hardware que se dedican a los lectores de tarjetas y que necesitan saber cómo comunicarse con una tarjeta nivel de E/S inferior. Las tarjetas inteligentes contactless (sin contacto) están definidas por una norma independiente, la ISO 14443 referida más adelante.

El protocolo de comunicación definido por la ISO 7816 consiste en una serie de comandos que pueden utilizarse para controlar y gestionar una tarjeta inteligente y también la estructura de las cargas útiles comando/respuesta intercambiadas entre un lector de tarjetas inteligentes y una tarjeta inteligente, la unidad de comunicación entre un lector de tarjetas inteligentes y una tarjeta inteligente (APDU, o Application Protocol Data Unit).

Las APDU pueden adoptar dos formas: comandos APDU y respuestas APDU. Los comandos APDU se envían desde un lector de tarjetas hacia una tarjeta, y contienen el código de instrucciones, parámetros y datos. Las respuestas APDU se envían desde una tarjeta de nuevo hacia el lector de tarjetas, y contienen los datos de repuesta y el código de estado.

ISO 14443

La ISO 14443 define el funcionamiento de las tarjetas inteligentes contactless, o tarjetas de proximidad, esa decir, tarjetas que tienen una antena de radiofrecuencias (RF) integrada en ellas. La norma describe el protocolo de comunicación inalámbrica empleado en la capa de enlace entre una tarjeta y un lector de tarjetas que funciona a 13,56 MHz (RFID HF).

Las tarjetas de proximidad según la ISO 14443 se alimentan de inducción electromagnética al entrar en el campo de RF generado por un lector de tarjetas. Las tarjetas que cumplen este requisito tienen un rango operativo de hasta 10 cm, aunque está limitado por el tamaño de la antena de la tarjeta y la potencia de la señal del lector de tarjetas o terminal, de modo que en la práctica el rango operativo suele ser de 1 cm.

Hay que destacar que la ISO 14443 no define el protocolo de comunicación de mayor nivel (el conjunto de comandos) empleado por las aplicaciones. Muchas tarjetas conformes con la ISO 14443 utilizan el conjunto de comandos definido en la ISO 7816-4, pero algunas, como la MiFARE DESFire, utilizan uno propio.

NFC

NFC, cuyo significado es Near Field Communication (comunicación de campo cercano), es un conjunto de protocolos de comunicación inalámbricos de rango reducido que permite que dos dispositivos se comuniquen entre sí e intercambien datos. NFC incorpora varias normas, incluyendo la ISO 14443 (consulte más arriba).

NFC define dos modos de comunicación: activo y pasivo. En el modo pasivo, un dispositivo alimentado, como un lector de tarjetas inteligentes, genera un campo de RF que alimenta a la tarjeta, por ejemplo a una tarjeta inteligente. El modo activo permite que dos dispositivos NFC se comuniquen «peer-to-peer» (entre iguales).

NFC define tres modos de funcionamiento de la siguiente manera:

  • Lector/Grabador - En este modo, el dispositivo habilitado con NFC puede actuar como un dispositivo de interfaz de hardware convencional que puede leer desde y escribir en una etiqueta/tarjeta inteligente (ISO 14443).
  • Emulación de tarjetas - En este modo, un dispositivo habilitado con NFC, como puede ser un smartphone, puede actuar como una tarjeta inteligente o etiqueta, y puede convertirse en objetivo de otro dispositivo habilitado con NFC, como un terminal de pago por tarjeta.. La tecnología de pago por tarjeta, como Apple Pay, funciona con el smartphone actuando de esa manera.
  • Peer-to-Peer - En el modo peer-to-peer, dos dispositivos NFC pueden participar en una comunicación bidireccional para intercambiar datos de forma personalizada.

PC/SC

PC/SC es una API multiplataforma de facto para la integración de tarjetas inteligentes en aplicaciones de escritorio. Fue originalmente definida por Microsoft para Windows a finales de los años 90, y se llamó WinSCard API. Posteriormente se convirtió a Linux y Mac gracias al proyecto PCSC Lite.

PC/SC API permite que una aplicación detecte lectores de tarjetas inteligentes conectados al ordenador y conectarse y comunicarse con una tarjeta inteligente que esté presente en un lector. La API no distingue de qué forma está la tarjeta presente en el lector, de modo que podría tratarse de una tarjeta de contacto tradicional introducida en u lector, o bien podría tratarse de una tarjeta contactless colocada sobre un lector de tarjetas contactless.

ISO 7810

Esta norma define las características físicas de las tarjetas identificativas incluyendo el tamaño. forma, resistencia al doblado y durabilidad.

Algunos de los tamaños más importantes que se definen en esta norma son:

  1. ID-1 - Un tamaño de 85,60 × 53,98 mm. Se usa en la mayoría de las tarjetas, incluyendo las bancarias (tarjetas de crédito, de débito, etc.) y los bonos de transporte. También se usan para los permisos de conducir en muchos países.
  2. ID-000 - Un tamaño de 25 mm × 15 mm de ancho con una esquina recortada. Este tamaño se utiliza en tarjetas SIM de teléfonos móviles.

Tarjeta Java card

La tarjeta Java card es una tecnología para tarjetas inteligentes que permite incluir en la tarjeta aplicaciones en Java. Tarjetas inteligentes Java Card smart cards (Las Java Cards) funcionan en un entorno de Java mínimo, y las aplicaciones incluidas en la tarjeta están almacenadas como applets que funcionan en dicho entorno. Las Java cards normalmente se utilizan en aplicaciones de identificación (p.ej. PKI, DNI), tarjetas de pago (crédito/débito) y tarjetas SIM para teléfonos móviles.

Una applet para Java card suele manejar un conjunto de comandos personalizados, y opcionalmente puede manejar cualquier comando definido en la ISO 7816-4.

Java Card ofrece un entorno seguro para el almacenamiento de información sensible. Las applets está aisladas entre sí y del hardware y el sistema operativo de la tarjeta subyacente. Las applets para Java card acceden a las funciones criptográficas de una tarjeta a través de la librería y el tiempo de ejecución de la Java card.

GlobalPlatform

GlobalPlatform es una norma referente a la gestión segura del contenido de una tarjeta inteligente card, por ejemplo la instalación y eliminación de aplicaciones en/de la tarjeta. La gestión se realiza a través de protocolos criptográficos que autentifican y aseguran el proceso.