Title: Tarjetas Inteligentes PKCS
1Tarjetas InteligentesPKCS11PKCS15
SEGURIDAD EN REDES TELEMÁTICAS Mario Hernández
Fidalgo Juan Manuel Rodríguez Bejarano Curso
2003/2004
2Índice (I)
- Tarjetas inteligentes
- Descripción
- Características
- Sistema Operativo
- PKCS11
- Modelo Gral.
- Modelo de Objetos
- Sesiones de Cryptoki
- Estados de Sesión
3Índice(yII)
- Otros conceptos
- Tipos de Sesiones
- PKCS15
- Definición
- Características
- Modelo Gral.
- Clases de objetos
- Tipos de Ficheros
- Gestión de Objetos
- Resumen
4Tarjetas Inteligentes.Introdución(I)
- ?Cómo almacenar claves y certificados?
- Medios extratelemáticos
- Disquetes
- Papel
- En 1973 Roland Moreno incluye un microchip en una
tarjeta de plástico. - Chipcard
- Incorporación de procesador inteligente
- Smart Card
5Tarjetas Inteligentes.Introdución(II)
- Características Smart Card
- Tamaño reducido
- Resistente a la manipulación
- Almacenamiento seguro de la información
- Procesamiento de información
6Tarjetas Inteligentes.Introdución(III)
- Características Smart Card según ISO 7810,7813
- Resistir ataques con rayos X y luz Ultravioleta
- Tener superficie plana
- Permitir cierto grado de torsión
- Resistir altos voltajes, campos
electromagnéticos, electricidad estática - No disipar más de 2,5 W
7Tarjetas Inteligentes.Introdución(IV)
- Caractrísticas Smart Card según ISO 7816-1
8Tarjetas Inteligentes.Introdución(V)
- Wireless Smart Cards
- Principio de Faraday Un conductor en presencia
de un campo electro-magnético recibe por
inducción la presencia de una corriente que
depende la magnitud de este
9Tarjetas Inteligentes.Introdución(y VI)
10Tarjetas Inteligentes. COS(I)
- COS Chip Operating System
- Constituye el sistema operativo de las Smart
cards - Reside en la ROM de la tarjeta y proporciona
funcionalidades como - Acceso seguro a la información almacenada
- Autenticación
- Encriptación
11Tarjetas Inteligentes. COS(II)
- Líneas básicas de funcionamiento
- Coordinación de los intercambios de información
entre la tarjeta y el mundo exterior - Gestión de los archivos y los datos almacenados
en memoria - Control del acceso a la información
- Gestión de la seguridad de la tarjeta y de sus
algoritmos criptográficos - Fiabilidad de mantenimiento
- Gestión de las diferentes fases del ciclo de
vida
12Tarjetas Inteligentes. COS( y III)
- Sistemas Operativos Multi-Aplicación para Smart
Cards (MACOS) - Java Card Para programación desarrollada en Java
- MultOS Es el primer COS para smart cards que
incluye las siguientes características es
abierto, proporciona una alta seguridad y es
multiaplicacion. - Windows para Smart cards Sistema operativo de
Microsoft para smart cards
13Introducción a PKCS11y 15
- Las tarjetas inteligentes son ideales para
almacenar claves privadas y realizar operaciones
criptográficas. - Para aumentar su utilidad se necesitan estándares
que regulen su funcionamiento - Las PKCS 11 y PKCS 15 definen
- Un interfaz de Programación de Aplicaciones
(API) - Formato de almacenamiento de la información
criptográfica
14PKCS11.Introducción
- Constituye la definición de un interfaz de acceso
a los denominados Tokens criptográficos. - Especifica el interfaz de de programación de
aplicación (API), llamado Cryptoki - Definición de Cryptoki en lenguaje ANSI C
- Portable y flexible
15PKCS11.Modelo General
16PKCS11.Modelo de Objetos (I)
- Los objetos pueden ser creados,sobrescritos y
borrados - El acceso esta en función de estados de
seguridad
17PKCS11.Modelo de Objetos (II)
- Cryptoki reconoce dos tipos de usuarios
- Oficial de seguridad (SO)
- Inicializa el token,
- Establece el PIN del usuario normal
- Hacer posible la manipulación de algunos objetos
públicos - Usuario normal
- Tiene permiso de acceso a los objetos privados
del token - El usuario se deberá autenticar antes de realizar
cualquier función criptográfica (Opcional)
18PKCS11.Sesiones de Cryptoki
- Cryptoki necesita que una aplicación abra una o
mas sesiones (Conexiones lógicas) con un token
para obtener acceso a sus objetos y sus funciones
- Tipos de sesiones
- Sesión de lectura escritura (R/W)
- Sesión de solo lectura (R/O)
- Cryptoki soporta múltiples sesiones sobre
múltiples token - Una sesión abierta puede estar en distintos
estados
19PKCS11.Estados de sesión (I)
20PKCS11.Estados de sesión (y II)
21PKCS11.Otros conceptos
- Eventos de sesión
- Descriptores de sesión
- Descriptores de objeto
- Capacidades de sesión
- Operaciones administrativas
- Operaciones de la gerencia del objeto
- Operaciones criptográficas
22PKCS11.Tipos de Funciones (I)
- De propósito general
- Initialize, cleanup,
- Gestión del slot y token
- GetSlotInfo, GetTokenInfo,
- Gestión de la sesión
- OpenSession, CloseSession
- Gestión del objeto
- Create, Destroy, Copy,
23PKCS11.Tipos de Funciones (y II)
- Funciones de encriptado
- Funciones de desencrìptado
- Funciones de resumen
- Funciones de firma
- Funciones MAC
- Gestión de claves (ejgenerar un par de claves)
- Funciones de aviso errores
24PKCS11 Preguntas
25PKCS15.Introducción
- Constituye una definición de cómo son almacenadas
en los tokens abstracciones criptográficas de
alto nivel tales como claves y certificados. - Define
- Estructura de los datos
- Contenido de los ficheros
- Estructura de los directorios
- Objetivo Proporciona portabilidad de
certificados almacenados en tokens
criptográficos, a través de aplicaciones software.
26PKCS15. Características
- Interoperabilidad entre
- Componentes (multiplataforma)
- Productos de varios desarrolladores.
- Permite a múltiples aplicaciones residir en la
tarjeta - Soporta almacenamiento de cualquier tipo de
objetos (claves ,certificados y datos) - Consistente con estándares existentes
- (ej PKCS11)
27PKCS15.Modelo General
28PKCS15.Clases de Objetos
29PKCS15.Tipos de Ficheros
30PKCS15. Formato de los Ficheros(I)
31PKCS15.Formato de los Ficheros(II)
- Estructura típica de un DF
32PKCS15.Formato de los ficheros(III)
- EF(ODF) Fichero directorio de objetos
33PKCS15.Formato de los ficheros(IV)
- EF(PrKDF) Fichero directorio de claves privadas
34PKCS15.Formato de los ficheros(V)
- EF(PuKDF) Fichero directorio de claves públicas
35PKCS15.Formato de los ficheros(VI)
- EF(SKDF) Fichero directorio de claves secretas
36PKCS15.Formato de los ficheros(VII)
- EF(CDF) Fichero directorio de certificados
37PKCS15.Formato de los ficheros(VIII)
- EF(DODF) Fichero directorio de objetos de datos
38PKCS15.Formato de los ficheros(IX)
- EF(AODF) Fichero directorio de objetos de
autenticación
39PKCS15.Formato de los ficheros(y X)
- EF(TokenInfo) Fichero de información genérica de
la tarjeta. - EF(UnusedSpace) Fichero de referencia a espacio
libre. - Otros EFs, contienen
- claves privadas
- claves publicas
- claves secretas
- certificados
- datos específicos
40PKCS15. Gestión de Objetos (I)
- Añadir (Crear) nuevos objetos(Antes de crear un
nuevo certificado)
41PKCS15.Gestión de Objetos (II)
- Añadir (Crear) nuevos objetos(Después de crear un
nuevo certificado )
42PKCS15.Gestión de Objetos (III)
- Borrado de objetos (Antes de borrar el objeto )
43PKCS15.Gestión de Objetos (IV)
- Borrado de objetos (Después de borrar el objeto )
44PKCS15.Gestión de Objetos (V)
- Modificado de objetos
- Consiste en el cambio de la información
almacenada - Se necesitan permisos adecuados
- Escritura
- Dos métodos
- Si estructura datos lineal?actualización
- Si datos no estructurados?sobrescritura
45PKCS15.Gestión de objetos (VI)
46PKCS15.Gestión de objetos (y VII)
- Condiciones de acceso(continuación)
47PKCS15.Resumen (I)
- Claves Privadas
- Por lo menos dos claves privadas deben estar
presentes en el Token - Una clave privada para autentificación y cifrado.
- Otra clave privada para no repudio.
- Certificados
- Por cada clave privada?un certificado X509
- Por cada certificado?un CDF
-
-
48PKCS15. Resumen (II)
- Objetos de Autenticación.
- Deben existir por lo menos dos objetos de
autenticación en el TOKEN para la protección de
objetos privados - Uno contiene el PIN 1 (para actualizar
certificados) - Otro contiene el PIN 2 (para acceso a operaciones
criptograficas)
49PKCS15.Resumen (III)
- Condiciones del PIN
- Longitud 4 caracteres mínimo.
- Codificación BCD, UTF8 o ASCII.
- Bloqueo tras 3 intentos fallidos
- Las rutinas de bloqueo y desbloqueo son definidas
por el programador de la aplicación.
50PKCS15.Resumen (y IV)
- Condiciones del PIN
- Un PIN se puede desbloquear cualquier número de
veces.
51PKCS15.Preguntas
52Referencias
- RSA Laboratories. PKCS 11 v2.11 Cryptographic
Token Interface Standard RSA Laboratories 2001 - RSA Laboratories. PKCS 15 v1.1 Cryptographic
Token Information Syntax Standard RSA
Laboratories 2000
53Fin