Download Tarjetas inteligentes - Departamento de Ingeniería Telemática

Document related concepts
no text concepts found
Transcript
TARJETAS INTELIGENTES
Dpto. de Ingeniería Telemática - Universidad Carlos III de Madrid
Mª Celeste Campo Vázquez
[email protected]
Máster en
Comercio
Electrónico
1
Índice
•
•
•
•
•
•
•
Máster en
Comercio
Electrónico
Introducción
Tipos de tarjetas
Arquitectura
Lectores de tarjetas y terminales
Seguridad
Estándares y tecnologías
Aplicaciones
2
Introducción
Definición y ventajas
• Dispositivo electrónico insertado en una
tarjeta de plástico
• Proporciona:
– Almacenamiento persistente y protegido
– Capacidad de procesamiento
• Amplio uso en Europa y Asia:
– 70% de los europeos usa tarjetas inteligentes:
• Telefonía móvil
• Sistema sanitario
Máster en
Comercio
Electrónico
• Parkings y tickets
3
Introducción
Uso
Máster en
Comercio
Electrónico
4
Introducción
Mercado
Máster en
Comercio
Electrónico
Fuente: Market 2004 Worldwide shipment
EuroSmart (http://www.eurosmart.com)
5
Introducción
Mercado por regiones
Máster en
Comercio
Electrónico
Fuente: Market 2004 Worldwide shipment
EuroSmart (http://www.eurosmart.com)
6
Introducción
Perspectiva de mercado en 2005
Máster en
Comercio
Electrónico
Fuente: Market 2004 Worldwide shipment
EuroSmart (http://www.eurosmart.com)
7
Introducción
Historia
• Tarjetas de papel:
– Primeras tarjetas
– Utilizadas como tarjetas de visita
– Se deterioran fácilmente
• Principios de los años 50 en EEUU aparecen las
tarjetas de plástico:
– Mayor duración y mejor imagen
– Datos impresos en relieve
– Seguridad basada en métodos visuales
Máster en
Comercio
Electrónico
– Dinners Club las utiliza por primera vez para que sus
mejores clientes realizarán sus pagos
8
Introducción
Historia
• A las tarjetas de plástico se le añade una banda
magnética:
– Gran difusión gracias a su uso masivo en la Banca Mundial
– Se basa en los mismos mecanismos que las cintas de
música o vídeo
– Permite automatizar los procesos
– Mayor seguridad: protección a través de un PIN
• Inconvenientes:
Máster en
Comercio
Electrónico
– Los datos están grabados superficialmente
– Relativamente sencillo y poco costoso realizar duplicados
– Sensible a campos electromágneticos existente que pueden
deteriorar la banda magnética
– Capacidad reducida de almacenamiento (255 caracteres)
9
Introducción
Historia
Máster en
Comercio
Electrónico
• A principios de los 70 y gracias a los avances de la
microelectrónica a las tarjetas de plástico se les
incorporá un circuito integrado (chip).
• A finales de los 70 comienzan a aparecer los
primeros productos comerciales, como resultado de
proyectos tecnológicos franceses en campos como la
banca, la telefonía pública, la sanidad, la
universidad,...
• En los años 80 se implanta con éxito:
– Carte Bancaire (1982/1984)
– Servicio de telecomunicaciones (1984).
• Nuevos campos de aplicación: prepago telefónico,
tarjetas monedero,...
10
Tipos de tarjetas
Introducción
• Clasificación:
– Tipo de circuito integrado
• Tarjetas de memoria
• Tarjetas con microprocesador
– Mecanismo de conexión tarjeta/lector:
• Tarjetas con contactos
• Tarjetas sin contactos
• Tarjetas híbridas
Máster en
Comercio
Electrónico
11
Tipos de tarjetas
Tarjetas de memoria
• Se utilizan fundamentalmente como dinero electrónico, las más
conocidas son las tarjetas de pre-pago telefónico de las
cabinas.
• Proporcionan mayor seguridad que las tarjetas de banda
magnética pero tienen un coste superior.
• Su seguridad no es suficiente para ciertas operaciones. Se
distinguen dos niveles:
– Tarjetas protegidas o tarjetas lógicas.
– Tarjetas no protegidas.
• Capacidad de almacenamiento limitada (aprox. 4KB).
• Mayor complejidad en el lector que en la tarjeta.
• Otras aplicaciones:
Máster en
Comercio
Electrónico
– Tarjetas de sistema sanitario.
– Tarjetas de fidelización.
12
Tipos de tarjetas
Tarjetas con microprocesador
• Son las que se denominan tarjetas inteligentes o smart cards.
• Su mayor difusión en los últimos años se ha conseguido por su
uso en telefonía móvil GSM.
• Su valor añadido viene por su capacidad de proceso:
– Mayor seguridad.
– Capacidad de realizar nuevas operaciones de forma interna.
• Mayor capacidad de almacenamiento (aprox. 4-64KB).
• El coste de las tarjetas es elevado lo que impide su utilización
en determinadas aplicaciones, aunque:
– Los lectores son menos complejos y por lo tanto menos costosos.
• Pueden ser multiaplicación y multiproveedor.
• Lenta aceptación de estas tarjetas en el sistema bancario.
Máster en
Comercio
Electrónico
13
Tipos de tarjetas
Tarjetas con contactos
• Estandarizado por ISO7816-2
• Existen tarjetas de 6 contactos (tarjetas telefónicas).
• Los contactos pueden ser un punto débil.
• Aplicaciones: bancarias, telefonía móvil,...
Máster en
Comercio
Electrónico
14
Tipos de tarjetas
Tarjetas sin contactos
•
Pueden ser:
– De memoria: se les llama normalmente Tags.
– Inteligentes: son las que se conocen como tarjetas sin contactos
•
Comunicación entre el lector y la tarjeta a través de señales
electromagnéticas:
– RF de baja potencia: alcanza distancias de hasta 10 m.
– RF de alta potencia: alcanzan distancias superiores a 10 m.
•
Ventaja: menor número de fallos.
•
Inconvenientes: mayor potencia del micro, mayor complejidad, mayor
coste.
•
Se emplean en sistemas con:
– Transacciones rápidas.
– Información intercambiada reducida.
Máster en
Comercio
Electrónico
•
Transporte público, acceso a edificios,...
15
Arquitectura
Introducción
•
•
Máster en
Comercio
Electrónico
CPU:
•
EEPROM (Electrical Erasable
Programmable ROM)
–
Procesador de 8 bits/16 bits
–
Coprocesador criptográfico
–
SISTEMA DE FICHEROS (datos)
–
5 Mhz, 5V/3V
–
Aplicaciones
–
32 KB
ROM (Read Only
Memory):
–
SISTEMA OPERATIVO
–
Datos y aplicaciones
almacenados en producción
–
16 KB
•
RAM (Random Access Memory):
–
4KB
16
Arquitectura
Sistema Operativo
• Dota a la tarjeta de inteligencia
• El sistema operativo se encarga:
– Gestionar la memoria:
• Normalmente se organiza en un sistema de ficheros
• Controla las estructuras de datos dentro de los ficheros
– Seguridad:
• Control de acceso a los ficheros
• Restringir las operaciones que se pueden hacer con los
ficheros
• No dejar que se ejecute nada que no esté contemplado
• Operaciones criptográficas: creación de claves,
firma/verificación, cifrado/descifrado,...
– Juego de instrucciones establecido:
Máster en
Comercio
Electrónico
• Identifica qué operaciones se pueden realizar, y cómo deben
utilizarse
17
Arquitectura
Sistema Operativo
• Propietarios de propósito específico:
– Son sistemas operativos creados con una misión específica,
para una tarjeta monedero, para una tarjeta GSM,...
• Propietarios de propósito general:
– Son sistemas operativos creados por fabricantes, con el
objetivo de poder utilizarse en diferentes aplicaciones
– El desarrollo de aplicaciones está cerrado
– Gran variedad y con múltiples diferencias
• Abiertos:
Máster en
Comercio
Electrónico
– Son sistemas operativos sobre los que se pueden
programar aplicaciones en lenguajes de más alto nivel (C o
Java).
– El desarrollo de aplicaciones se abre a terceros
18
Arquitectura
Sistema de ficheros
• La mayoría de la tarjetas tienen un sistema de ficheros similar al
que tenemos en nuestro ordenador
• Sistema de ficheros formado por:
– Ficheros dedicados (DF): son el equivalente a los carpetas
(directorios):
• Fichero maestro (MF): directorio raíz
– Ficheros elementales (EF): son el equivalente a los ficheros
(archivos).
• Se realiza direccionamiento lógico utilizando identificadores de
ficheros (FID) de 2 bytes
• Se establecen condiciones de seguridad de acceso a los
ficheros:
Máster en
Comercio
Electrónico
– DF se protegen las operaciones de creación/borrado
– EF se protegen las operaciones de creación/borrado y
lectura/escritura
19
Arquitectura
Conjunto de Instrucciones
• Varios estándares definen conjuntos de instrucciones
que pueden soportar las tarjetas inteligentes:
–
–
–
–
ISO/IEC 7816-4
GSM 11.11
EN 726-3
prEN 1456
• También existen tarjetas programables: aceptan la
carga dinámica de programas, y son éstos los que
determinan los comandos que soporta la tarjeta:
– Java Card
– MultOS
– WfSC
Máster en
Comercio
Electrónico
20
Lectores de tarjetas y terminales
• Lectores de tarjetas: conectores que actúan como
interfaz entre la tarjeta y el dispositivo de
comunicación
• Terminales: computador con capacidad de control de
acceso a la tarjeta
– PINpads
– Terminales de punto de venta
– Cajeros automáticos
– Controles de acceso mediante identificación biométrica
• Ejemplos: http://www.axalto.com/products/terminals.asp
Máster en
Comercio
Electrónico
http://www.axalto.com/infosec/egate.asp
21
Lectores de tarjetas y terminales
Comunicación terminal-tarjeta
• Tarjeta nunca inicializa la comunicación
• Protocolo de comunicación en tres capas:
– Aplicaciones
– APDU (Application Protocol Data Unit)
• Definido por el estándar ISO7816-4
– T=0 y T=1
• Variantes de protocolo asíncrono de comunicación
half-duplex
• Definido por el estándar ISO7816-3
Máster en
Comercio
Electrónico
22
Seguridad
Introducción
• ¿Por qué son más seguras las tarjetas inteligentes?
– Almacena y comprueba el PIN/Password internamente
– Ejecución de algoritmos criptográficos internamente
– Por lo tanto, nunca se envía información sensible al sistema
externo para su comprobación
• Ciclo de vida:
– Fase de fabricación
– Fase de pre-personalización
– Fase de personalización
– Fase de utilización
– Fase final
Máster en
Comercio
Electrónico
23
Seguridad
Hardware
• Mecanismos de protección:
– Procesador y memoria en el mismo chip, ocultar los
buses, anular modos de prueba,...
– Detección de variaciones en la señal del reloj,
reguladores del voltaje,...
• Ataques:
– Lectura óptica de la memoria
– Manipulación externa de la señal del reloj
– Altas temperaturas, rayos-X
– Análisis del voltaje suministrado a la tarjeta
Máster en
Comercio
Electrónico
24
Seguridad
Software
• Mecanismos de protección:
– PIN y contadores
– Test de inicio
– Control de I/O por el sistema operativo
– Desactivación completa por software
– Seguridad introducida en las aplicaciones
• Ataques:
– Análisis de las instrucciones soportadas
Máster en
Comercio
Electrónico
– Suplantación de la entidad externa (PIN)
25
Seguridad
Autenticación usuario - tarjeta
• PIN:
– Método más utilizado…pero no es el más seguro
• Métodos biométricos:
– Características físicas pertenecientes al usuario
– Varios métodos:
• ADN
• Huella dactilar
• Iris
• ….
– Necesidades:
• No invasivo
Máster en
Comercio
Electrónico
• Coste de almacenamiento/procesamiento
26
Seguridad
Interacción tarjeta - aplicación
• Autenticación externa: terminal ante la tarjeta
• Autenticación interna: tarjeta ante el terminal
• Seguridad de mensajes:
– Modo de operación protegido (MAC: Message
Authentication Code)
• Autenticación e integridad
– Modo de operación protegido (MAC+cifrado)
• Autenticación, integridad y confidencialidad.
Máster en
Comercio
Electrónico
27
Seguridad
Funciones criptográficas
• Almacenamiento seguro:
– Algoritmos de clave privada: clave
– Algoritmos de clave pública: clave privada y certificado
• Cálculos criptográficos:
– Algoritmos de clave privada: DES, 3-DES
– Algoritmos de clave pública: RSA, DSA, curvas
elípticas (sin coprocesador)
• Mecanismos seguros: las claves no abandonan la
tarjeta.
Máster en
Comercio
Electrónico
28
Estándares y tecnologías
• Estándares:
– ISO7816
– EMV ICC
• Tecnologías:
– Desarrollo de aplicaciones off-card:
• OCF
• PC/SC
– Desarrollo de aplicaciones on-card:
• Java Card
• WfSC
• MultOS
Máster en
Comercio
Electrónico
• Visa Open Platform
29
Aplicaciones
Comercio electrónico
• Proporcionar seguridad a las aplicaciones:
autenticación, no repudio y privacidad.
• Usos principales:
– Almacén de dinero que nos permita realizar pagos en
la red
– Medio de autenticación de usuarios
– Realizar firmas digitales
– Privacidad en las comunicaciones
– Tickets electrónicos
Máster en
Comercio
Electrónico
– Aplicaciones de fidelización
30
Aplicaciones
Otras
• Autenticación y acceso seguro:
– Alternativa al uso de passwords
– Ejemplos:
• Acceso a estaciones de trabajo
• Acceso a redes
• Comunicaciones seguras
• Sistema sanitario:
– Identificación del paciente
– Almacenamiento seguro de información del paciente
Máster en
Comercio
Electrónico
31
Aplicaciones
Otras
• Sistemas bancarios:
– Monederos electrónicos:
• Ventajas: sistemas de pago off-line, pagos pequeños
• Desventajas: incompatibilidad entre los diferentes sistemas
– Tarjetas de crédito/débito (American Express, VISA,...)
• Telefonía móvil GSM:
– Seguridad en las comunicaciones
– Independencia del terminal móvil
– Desarrollo de nuevas aplicaciones proporcionando servicios
de valor añadido SIM Application Toolkit
Máster en
Comercio
Electrónico
32
Aplicaciones
Otras
• DNI digital que incluirá:
– Un certificado electrónico para autenticar la personalidad del
ciudadano.
– Un certificado para firmar electrónicamente, con la misma validez
jurídica que la firma manuscrita.
– Claves para su utilización.
– La fórmula de la huella digital en formato electrónico.
– La fotografía digitalizada.
– La imagen digitalizada de la firma manuscrita.
– Los datos impresos en la tarjeta.
Máster en
Comercio
Electrónico
33
Resumen
• Tarjetas inteligentes mecanismo que
proporciona un alto nivel de seguridad al
consumidor en B2C
• Su implantación masiva presenta problemas:
– Interoperabilidad
– Coste de la tarjetas
Máster en
Comercio
Electrónico
34
TARJETAS INTELIGENTES
Java Card
Dpto. de Ingeniería Telemática - Universidad Carlos III de Madrid
Mª Celeste Campo Vázquez
[email protected]
Máster en
Comercio
Electrónico
35
Índice
• Introducción
• Características
• Alternativas:
– Windows for Smart Card
– MULTOS
• Comparativa
Máster en
Comercio
Electrónico
36
Introducción
• Java Card permite tener tecnología Java en
tarjetas inteligentes
• Ventajas:
–
–
–
–
–
Máster en
Comercio
Electrónico
Independencia de plataforma
Multiaplicación
Flexibilidad
Aplicaciones post-personalización
Compatible con estándares de tarjetas
inteligentes
– Gran comunidad de desarrolladores
– “Write Once Run Anywhere”
37
Características
Arquitectura Java Card
Applets
Applet
monedero
Applet
ID
Applet
fidelización
JCRE
EXTENSIONES
ESPECíFICAS
API
INSTALADOR
CLASES DEL SISTEMA
GESTIÓN
DE APPLETS
GESTIÓN
DE TRANSACCIONES
JCVM
I/O
OTROS
SERVICIOS
Métodos nativos
Hardware y sistema nativo de la tarjeta inteligente
Máster en
Comercio
Electrónico
38
Características
Limitaciones Java Card
• Gestión dinámica de contenidos en la tarjeta:
– Open Platform desarrollada por VISA:
• Descarga/borrado dinámica y segura de aplicaciones.
• Canales de comunicación seguros entre aplicación del
host y aplicación en la tarjeta.
• PIN global compartido entre aplicaciones.
• Interoperabilidad entre Java Card de
diferentes fabricantes
• Mejora de herramientas de desarrollo
Máster en
Comercio
Electrónico
39
WfSC: Windows for Smart Card
• Introducción de Microsoft en las tarjetas inteligentes.
• Primera versión estable en Mayo de 1999 (WfSC
v1.1)
• Tiene licencia como sistema operativo.
• Características:
– Configuración del sistema operativo:
• GSM.
• Funciones criptográficas.
• ISO 7816-4.
– Card Manager opcional.
– Tarjeta multifunción más que mutiaplicación.
• Aplicaciones en Visual Basic.
• No define las gestión de contenidos de la tarjeta:
posible adopción de OP.
Máster en
Comercio
Electrónico
40
MULTOS
• Origen en el sector financiero para monedero
electrónico.
• Especificaciones estables desde 1998.
• Características:
– Máquina virtual MULTOS adaptada a tarjetas inteligentes.
– Aplicaciones en lenguaje MEL y C.
– Security Manager con criptografía RSA (co-procesador
criptográfico) obligatorio.
– Certificación ITSEC E6.
– Descarga de aplicaciones después de la entrega al usuario
final.
• Versión actual MULTOS 5 (Septiembre 2000):
– Interfaz dual: con y sin contactos.
– Soporte GSM: SecureSIM.
Máster en
Comercio
Electrónico
41
Comparativa*
• Por tamaño de código:
– MULTOS aplicaciones en MEL.
– Java Card aplicaciones en Java.
– WfSC aplicaciones en Visual Basic.
• Por velocidad de ejecución:
– MULTOS aplicaciones en MEL.
– MULTOS aplicaciones en C.
– Java Card aplicaciones en Java.
Máster en
Comercio
Electrónico
* Fuente: Consult Hyperion
42
Comparativas técnicas
Java Card
MULTOS
WfSC
Ámbito
API
JVM
JCRE
VM
API
Entorno de
ejecución
Gestor de
aplicaciones
S.O.
Configurable
Multifunción no
multiaplicación
Portabilidad
Portabilidad a
nivel de bytecode
(JC2.1)
Portabilidad de
ejecutables
Sin probar
Personalizació
n previa y post
descarga.
Sin probar
Personalización Personalización
previa a la
descargar
Máster en
Comercio
Electrónico
43
Comparativas técnicas
Máster en
Comercio
Electrónico
Java Card
MULTOS
WfSC
Lenguaje
Java
MEL, C, Java
Visual Basic
Extensión
del API
API extensible
Definidas en el
estándar:interfaz
sin contactos y
aplicaciones GSM
Definidas en
el estándar:
GSM e ISO
7816-4
Procesador
Optimizado para
32 bit
Optimizado para 8
bit
RSA co-procesador
Diseñado para
procesadores
de 8 bit
Seguridad
Completa a
través de los
Protection Profile
Completa
Nivel básico
configurable
44
Referencias
Máster en
Comercio
Electrónico
•
Smart Card Application Development Using Java. Hansmann,
Nickous, Schäck, Seliger.
•
Smart Card Developer's Kit. Scott B. Guthery, Timoty M. Jurgensen.
•
Multos: http://www.multos.com
•
ISO: http://www.iso.sh
•
EMV ICC, Visa Open Platform: http://www.visa.com
•
OCF: http://www.opencard.org
•
Java Card: http://java.sun.com/products/javacard/index.jsp
•
MULTOS: http://www.multos.com
•
WfSC:
– http://www.microsoft.com/technet/Security/topics/smrtcard/smrtcdcb/sec1/smar
tc01.mspx
45