INSTITUTO TECNOL´OGICO DE MORELIA DEPARTAMENTO DE

Anuncio
INSTITUTO TECNOLÓGICO
DE MORELIA
DEPARTAMENTO DE SISTEMAS Y
COMPUTACIÓN
Sistema de Autenticación para Dispositivos Móviles
basado en Biometrı́a de comportamiento de Tecleo
Tesis que presenta:
Gerardo Iglesias Galván
Para obtener el grado de:
Ingeniero en Sistemas Computacionales
Director de Tesis:
Dr. Francisco José Rodrı́guez Henrı́quez
CINVESTAV
Asesor Interno:
M.C. Cristóbal Villegas Santoyo
ITM
México, D.F.
Junio 2007
Agradecimientos
Quisiera agradecer a mi asesor, el Dr. José Francisco Rodrı́guez Henrı́quez,
por darme la oportunidad de trabajar con él durante estos últimos meses,
otorgándome toda su confianza y apoyo para el desarrollo del proyecto.
También quiero dar las gracias al Centro de Investigación y de Estudios Avanzados del I.P.N. por abrir sus puertas para que personas como yo
podamos realizar proyectos de este tipo, ası́ como por su apoyo económico
durante la estancia, ya que sin él no hubiera sido posible la culminación de
esta tesis.
Dedicatoria
A mis padres que siempre me han apoyado en todos
mis proyectos y motivado para no darme por vencido.
Índice general
Agradecimientos
I
Dedicatoria
II
Introducción
2
1. SEGURIDAD Y AUTENTICACIÓN
4
1.1. ¿Qué es la seguridad? . . . . . . . . . . . . . . . . . . . . . . .
4
1.1.1. Confidencialidad . . . . . . . . . . . . . . . . . . . . .
5
1.1.2. Integridad . . . . . . . . . . . . . . . . . . . . . . . . .
5
1.1.3. Autenticidad . . . . . . . . . . . . . . . . . . . . . . .
5
1.1.4. Posesión . . . . . . . . . . . . . . . . . . . . . . . . . .
5
1.1.5. Disponibilidad . . . . . . . . . . . . . . . . . . . . . . .
6
1.1.6. Utilidad . . . . . . . . . . . . . . . . . . . . . . . . . .
6
1.2. Elementos a proteger . . . . . . . . . . . . . . . . . . . . . . .
6
1.3. Amenazas a la seguridad . . . . . . . . . . . . . . . . . . . . .
6
1.3.1. Interceptación . . . . . . . . . . . . . . . . . . . . . . .
7
1.3.2. Interrupción . . . . . . . . . . . . . . . . . . . . . . . .
7
1.3.3. Modificación . . . . . . . . . . . . . . . . . . . . . . . .
7
iii
ÍNDICE GENERAL
iv
1.3.4. Fabricación . . . . . . . . . . . . . . . . . . . . . . . .
8
1.4. Autenticación de usuarios . . . . . . . . . . . . . . . . . . . .
8
1.4.1. Autenticación basada en algo que el usuario posee . . .
9
1.4.2. Autenticación basada en algo que el usuario conoce . . 10
1.4.3. Autenticación basada en algo que el usuario es . . . . . 12
2. BIOMETRÍA
13
2.1. La biometrı́a . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.2. Funcionamiento y desempeño . . . . . . . . . . . . . . . . . . 14
2.3. Biometrı́a estática . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.3.1. Cara . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.3.2. Huella digital . . . . . . . . . . . . . . . . . . . . . . . 16
2.3.3. Geometrı́a de la mano . . . . . . . . . . . . . . . . . . 18
2.3.4. Iris . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.3.5. Retina . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.4. Biometrı́a dinámica . . . . . . . . . . . . . . . . . . . . . . . . 19
2.4.1. Voz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.4.2. Manera de caminar . . . . . . . . . . . . . . . . . . . . 20
2.4.3. Firma autógrafa . . . . . . . . . . . . . . . . . . . . . . 20
2.5. Biometrı́a basada en dinámicas de tecleo . . . . . . . . . . . . 21
2.5.1. Historia . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.5.2. Funcionamiento . . . . . . . . . . . . . . . . . . . . . . 22
2.5.3. Trabajo Previo . . . . . . . . . . . . . . . . . . . . . . 23
3. DISPOSITIVOS MÓVILES Y SU PROGRAMACIÓN
INTITUTO TECNOLÓGICO DE MORELIA
26
v
ÍNDICE GENERAL
3.1. Historia del cómputo móvil . . . . . . . . . . . . . . . . . . . . 26
3.2. PDA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.3. Smartphones
. . . . . . . . . . . . . . . . . . . . . . . . . . . 29
3.4. Sistemas operativos móviles . . . . . . . . . . . . . . . . . . . 30
3.5. .NET Compact Framework . . . . . . . . . . . . . . . . . . . . 31
4. DISEÑO DEL SISTEMA
34
4.1. Núcleo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
4.2. Contador de tiempo . . . . . . . . . . . . . . . . . . . . . . . . 36
4.3. Criptografı́a . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
4.4. Registro y Verificación . . . . . . . . . . . . . . . . . . . . . . 37
4.5. Logs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
5. PRUEBAS Y ANÁLISIS DE DESEMPEÑO
41
5.1. Estudio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
5.2. Resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
6. CONCLUSIONES Y TRABAJO FUTURO
44
A. Funcionamiento del Sistema
46
A.1. Pantalla principal . . . . . . . . . . . . . . . . . . . . . . . . . 46
A.2. Pantalla de registro de usuario . . . . . . . . . . . . . . . . . . 48
A.3. Autenticación . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
B. Código Fuente del Sistema
INTITUTO TECNOLÓGICO DE MORELIA
53
Índice de figuras
1.1.
Triada de la seguridad
. . . . . . . . . . . . . . . . . . . . . . . . . .
5
1.2.
Ataque de Interceptación
. . . . . . . . . . . . . . . . . . . . . . . . .
7
1.3.
Ataque de Interrupción
. . . . . . . . . . . . . . . . . . . . . . . . .
7
1.4.
Ataque de Modificación
. . . . . . . . . . . . . . . . . . . . . . . . .
8
1.5.
Ataque de Fabricación
. . . . . . . . . . . . . . . . . . . . . . . . . .
8
1.6.
Ejemplo de un token de memoria
1.7.
Ejemplo de tokens inteligentes
2.1.
Proceso de registro y verificación en un sistema biométrico
2.2.
Medidas de desempeño de un sistema biométrico
2.3.
Aproximaciones para reconocimiento facial
2.4.
Minucias en una huella digital
2.5.
Medición de la geometrı́a de la mano
2.6.
Adquisición de las caracterı́sticas del iris
2.7.
Imagen de vasculatura retinal
2.8.
Eventos en el cálculo de dinámica de tecleo
3.1.
Osborne 1
3.2.
Compaq Portable
. . . . . . . . . . . . . . . . . . . . . 10
. . . . . . . . . . . . . . . . . . . . . . . 10
. . . . . . . . . . . 15
. . . . . . . . . . . . . . . 16
. . . . . . . . . . . . . . . . . 17
. . . . . . . . . . . . . . . . . . . . . . . 17
. . . . . . . . . . . . . . . . . . . . 18
. . . . . . . . . . . . . . . . . . 19
. . . . . . . . . . . . . . . . . . . . . . . 19
. . . . . . . . . . . . . . . . . 22
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
. . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
vi
vii
ÍNDICE DE FIGURAS
3.3.
Radio Shack TRS-80 Model 100
. . . . . . . . . . . . . . . . . . . . . . 27
3.4.
Psion 1
3.5.
PDA con teclado externo
3.6.
Smartphone
3.7.
Estructura modular de Windows CE
3.8.
Arquitectura del .NET Compact Framework
4.1.
Diseño modular del sistema
4.2.
Muestras de un usuario del sistema (milisegundos)
4.3.
Gráfica en la que se indican los coeficientes de variación en el perfil de un usuario
4.4.
Comparación entre los coeficientes de variación de una plantilla y los de una autenticación
5.1.
Desempeño del sistema
A.1.
Imagen del PDA iPAQ rx4240
A.2.
Pantalla principal de la aplicación
A.3.
Inicio del proceso de registro de un usuario
A.4.
Pantalla de registro de usuario
A.5.
Inicio de toma de muestras
A.6.
Toma de muestras
A.7.
Registro de usuario completado correctamente
A.8.
Autenticación correcta
A.9.
Autenticación incorrecta
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
. . . . . . . . . . . . . . . . . . . . . . . . . 29
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
. . . . . . . . . . . . . . . . . . . . 31
. . . . . . . . . . . . . . . . . 33
. . . . . . . . . . . . . . . . . . . . . . . . 34
. . . . . . . . . . . . . . 37
. . 39
40
. . . . . . . . . . . . . . . . . . . . . . . . . 43
. . . . . . . . . . . . . . . . . . . . . . . 47
. . . . . . . . . . . . . . . . . . . . . 47
. . . . . . . . . . . . . . . . . 48
. . . . . . . . . . . . . . . . . . . . . . 49
. . . . . . . . . . . . . . . . . . . . . . . . 49
. . . . . . . . . . . . . . . . . . . . . . . . . . . 50
. . . . . . . . . . . . . . . . 50
. . . . . . . . . . . . . . . . . . . . . . . . . . 51
. . . . . . . . . . . . . . . . . . . . . . . . . 52
INTITUTO TECNOLÓGICO DE MORELIA
Índice de cuadros
1.1.
Elección de contraseñas en base a longitud
. . . . . . . . . . . . . . . . . . 11
1.2.
Composición de contraseñas
2.1.
Comparación entre varias tecnologı́as biométricas [21]
4.1.
Comparación entre varias funciones de tiempo
4.2.
Tiempos de las muestras de registro de un usuario (milisegundos)
A.1.
Principales caracterı́sticas técnicas del PDA iPAQ 4240
. . . . . . . . . . . . . . . . . . . . . . . 12
1
. . . . . . . . . . . . . 14
. . . . . . . . . . . . . . . . 36
. . . . . . . . 38
. . . . . . . . . . . . 46
Introducción
En la actualidad al ver a nuestro alrededor, podemos observar que el mundo móvil adquiere cada vez mayor importancia y presencia en nuestras vidas
diarias. Pero debemos darnos cuenta que más que una moda, la tecnologı́a
móvil es una evolución que ha transformado la forma en que nos divertimos,
en que trabajamos, como nos informamos y como nos comunicamos.
Dentro de este mundo móvil uno de los integrantes más importantes son
los sistemas de cómputo móvil, conocidos popularmente como handhelds o
PDA (Personal Digital Assistant). Podemos considerarlos como uno de los
grupos más importantes debido a que su uso ha tenido un crecimiento bastante considerable, incorporando grandes avances tecnológicos y revolucionando la forma en que las personas trabajan, permitiéndoles hacerlo dónde
y cuándo deseen, incrementando su productividad y eficiencia.
Según un estudio realizado por IDC, una de de las consultoras de T.I. más
importantes del mundo, durante el 2005 se usaron más de 275 millones de dispositivos móviles alrededor del mundo dentro de las compañı́as pertenecientes
al Fortune 2000 [52], el grupo de las 100 empresas más productivas del mundo. Otro estudio llevado a cabo en el 2005 por Gartner Group, indica que el
40 % de la información corporativa residı́a en dispositivos de tipo handheld
[52]. Estos números nos permiten percibir la tendencia de la dinámica de los
negocios y el uso descentralizado de la información.
Pero toda nueva tecnologı́a trae consigo problemas inéditos, y en el caso
de los dispositivos móviles una de las principales dificultades que los acompaña es la seguridad. Estos problemas de seguridad abarcan cuestiones como
vulnerabilidades en los protocolos de comunicación inalámbrica y mecanismos de autenticación y protección de datos débiles dentro de los dispositivos.
Respecto al primer punto se han estado haciendo grandes esfuerzos durante
los últimos años para mejorarlo, pero en cuanto al segundo creemos que no
se ha considerado lo crı́tico que es.
2
ÍNDICE DE CUADROS
3
La autenticación juega un papel muy importante en la seguridad informática, ya que por definición, a los usuarios autentificados se les permite el
acceso a los recursos del sistema [57]. En los dispositivos móviles estos recursos pueden ser elementos confidenciales como direcciones, teléfonos, correos
eletrónicos, cuentas bancarias y contraseñas, e incluso accesos a redes remotas, lo cual pondrı́a en peligro los recursos de terceros.
Todo lo antes expuesto es lo que motivó la realización del actual proyecto
de tesis, el cual pretende desarrollar un sistema capaz de reconocer dinámicas de tecleo y que pueda trabajar en conjunto, de forma transparente, con
los tradicionales sistemas de autenticación basados en nombre de usuario y
contraseña, y fortalecer la seguridad proporcionada por éstos últimos.
El resto de esta tesis está organizado como sigue: en el Capı́tulo 1 se
define el término de seguridad y otros conceptos relacionados. En el Capı́tulo
2 se introduce la Biometrı́a y sus divisiones, al mismo tiempo que se detallan
los trabajos previos relacionados a esta tesis. El Capı́tulo 3, está dedicado
a la historia y elementos del cómputo móvil. En el Capı́tulo 4 se hace la
descripción del sistema desarrollado en este trabajo. Posteriormente, en el
Capı́tulo 5 se describen las pruebas realizadas y resultados obtenidos con el
sistema desarrollado. Finalmente en el Capı́tulo 6 se dan las conclusiones
obtenidas en este trabajo.
INTITUTO TECNOLÓGICO DE MORELIA
Capı́tulo 1
SEGURIDAD Y
AUTENTICACIÓN
1.1.
¿Qué es la seguridad?
Definir el concepto de seguridad no es algo fácil, pero podemos empezar
a partir de la frase citada por el Dr. Eugene Spafford: “El único sistema
totalmente seguro es aquel que está apagado, desconectado, guardado en
una caja fuerte de titanio, encerrado en un bunker de concreto y cuidado por
guardias muy bien armados... y aún ası́ tengo mis dudas” [9]. Esta cita parece
no llevarnos a ningún lado ni mucho menos aclarar el concepto, pero nos sirve
para percatarnos de tres cosas: no podemos hablar de sistemas totalmente
seguros, lo complicado que es el tratar de asegurar un sistema y, que esto
conlleva un proceso sumamente complejo.
Se puede decir que la seguridad consiste en que un sistema se comporte
como el usuario espera que lo haga, y a su vez mantenerlo libre de amenazas
y riesgos [46]. Por más de dos décadas se ha manejado que la seguridad se
logra a partir de tres conceptos, conocidos como la triada de la seguridad:
confidencialidad, integridad y disponibilidad [27][43].
En la actualidad esta percepción ha sido sustituida por los seis elementos
atómicos de la información: confidencialidad, posesión o control, integridad, autenticidad, disponibilidad y utilidad [44].
4
CAPÍTULO 1. SEGURIDAD Y AUTENTICACIÓN
Figura 1.1:
1.1.1.
5
Triada de la seguridad
Confidencialidad
Consiste en mantener la información secreta a todos, excepto a aquellos
que tienen autorización para verla [31].
Cuando la información de naturaleza confidencial ha sido accedida, usada,
copiada o revelada a, o por una persona que no estaba autorizada, entonces se
presenta una ruptura de confidencialidad. La confidencialidad es un requisito
para mantener la privacidad de las personas [53].
1.1.2.
Integridad
Significa que se debe asegurar que la información no ha sido alterada por
medios no autorizados o desconocidos [31]. Un atacante no debe ser capaz de
sustituir información legı́tima por falsa [51].
1.1.3.
Autenticidad
Debe ser posible para un usuario establecer el origen de la información.
Un atacante no debe tener la capacidad de hacerse pasar por otro usuario.
[51].
1.1.4.
Posesión
Es el mantener, controlar y tener la habilidad de usar la información.
La posesión es la habilidad de realmente poseer y controlar la información
INTITUTO TECNOLÓGICO DE MORELIA
CAPÍTULO 1. SEGURIDAD Y AUTENTICACIÓN
6
y cómo es usada [9]. Un ejemplo de pérdida de posesión es un empleado
que envı́a información corporativa a una cuenta de correo electrónico que no
pertenece a a la compañı́a, en ese momento se pierde la posesión exclusiva.
1.1.5.
Disponibilidad
Significa que todos aquellos elementos que sirven para el procesamiento de la información, ası́ como los que sirven para facilitar la seguridad,
estén activos y sean alcanzables siempre que se requiera. Dicha caracterı́stica
puede perderse a través de ataques de DoS (Denial of Service -Denegación
de Servicio-). [9].
1.1.6.
Utilidad
Utilidad de la información para un propósito. El valor de la información
recae en su utilidad [9]. Por ejemplo, un archivo cifrado deja de ser útil si no
se cuenta con las llaves necesarias para descifrarlo.
1.2.
Elementos a proteger
Los elementos que conforman un sistema informático se dividen en tres
distintas categorı́as: hardware, software y datos. Lo que más nos interesa
proteger son los datos, ya que éstos son los activos que poseen tanto empresas
como usuarios, es el más amenazado, y normalmente es mucho más difı́cil
recuperarlos en comparación con el hardware y el software [43].
Al asegurar los datos estamos asegurando la continuidad de operación de
una organización, reduciendo al mı́nimo los daños causados por una contingencia y manteniendo a salvo nuestra persona, familia o patrimonio.
1.3.
Amenazas a la seguridad
Existe un gran número de amenazas que pueden afectar la seguridad de
un sistema en sus distintas categorı́as, las cuales se pueden clasificar en cuatro
INTITUTO TECNOLÓGICO DE MORELIA
CAPÍTULO 1. SEGURIDAD Y AUTENTICACIÓN
7
grandes grupos: interceptación, interrupción, modificación y fabricación [26]. Estos ataques afectan a uno o más de los elementos atómicos de
la información.
1.3.1.
Interceptación
Estos ataques propician que una entidad no autorizada gane acceso a un
elemento del sistema.
Figura 1.2:
1.3.2.
Ataque de Interceptación
Interrupción
Se dice que un ataque es una interrupción si se logra que un elemento se
pierda, quede inutilizable o no disponible.
Figura 1.3:
1.3.3.
Ataque de Interrupción
Modificación
Este ataque se da después de una interceptación, cuando el oponente logra
modificar el elemento.
INTITUTO TECNOLÓGICO DE MORELIA
CAPÍTULO 1. SEGURIDAD Y AUTENTICACIÓN
Figura 1.4:
1.3.4.
8
Ataque de Modificación
Fabricación
Se habla de una fabricación cuando el atacante logra crear un objeto el
cual es difı́cil de distinguir si es un elemento genuino.
Figura 1.5:
1.4.
Ataque de Fabricación
Autenticación de usuarios
La palabra autenticación proviene del griego ‘αυθντ ικóς’ que significa
verdadero o genuino, y authentes que significa el autor o dueño [12]. Es la
acción de establecer o comprobar si una entidad es auténtica [17].
En el caso de este trabajo estaremos hablando de autenticar personas ante
un sistema computacional, es decir, comprobar la identidad digital de
un usuario para que pueda ganar acceso a un recurso del sistema.
La autenticación es la base para los controles de acceso, ya que los sistemas
deben ser capaces de identificar y diferenciar entre diversos usuarios [17].
Conviene hacer la distinción entre los términos identificación y autenticación, ya que con frecuencia se suelen confundir y usar ambos para hacer
referencia a la misma acción. Identificación es el medio que un usuario proporciona a un sistema para afirmar una identidad, mientras que autenticación
INTITUTO TECNOLÓGICO DE MORELIA
CAPÍTULO 1. SEGURIDAD Y AUTENTICACIÓN
9
es el medio para establecer la validez de esta afirmación [11]. Para aclarar
un poco más esta diferencia pensemos en el esquema de control de acceso
a través de ID y contraseña, el usuario se identifica con su ID, el cual es
conocido por el administrador del sistema e incluso por otros usuarios, pero
la manera en que se autentifica es con su contraseña secreta. De esta forma
podemos ver claramente cómo el sistema reconoce a las personas basándose
en los datos de autenticación que recibe.
Existen tres métodos a través de los cuales un usuario puede autenticarse:
algo que el usuario posee, algo que el usuario conoce y algo que el
usuario es [11]. Cada método presenta sus propias ventajas y desventajas,
por lo cual es aconsejable implementar controles de acceso multifactor, esto
es combinando los grupos mencionados [45].
A pesar de las divisiones de mecanismos de autenticación que existen,
todos ellos siguen un proceso bastante general:
1. El usuario pide acceso a un recurso.
2. El sistema le solicita al usuario su medio de autenticación.
3. El usuario entrega sus credenciales de autenticación.
4. El sistema verifica las credenciales del usuario.
5. El sistema niega o proporciona al usuario el acceso al recurso.
1.4.1.
Autenticación basada en algo que el usuario posee
Estos métodos se basan en que el usuario tiene en su poder un token, los
cuales podemos dividir en tokens de memoria y tokens inteligentes [17]. En
realidad son unos cuantos los sistemas de autenticación basados únicamente
en algo que el usuario posee, ya que la mayorı́a se combinan con algo que
el usuario sabe (autenticación multifactor), los pocos que solamente usan un
token están orientados a acceso fı́sico.
Los tokens de memoria son tokens que almacenan mas no procesan información, por lo que necesitan de dispositivos especiales de lectura/escritura
para almacenar y extraer los datos. El más usado de éstos son las tarjetas
con una cinta magnética en la parte posterior, como lo son las tarjetas de
crédito. Se puede apreciar un ejemplo en la Figura 1.6.
INTITUTO TECNOLÓGICO DE MORELIA
CAPÍTULO 1. SEGURIDAD Y AUTENTICACIÓN
Figura 1.6:
10
Ejemplo de un token de memoria
Los tokens inteligentes amplı́an su funcionalidad al incorporar uno o más
circuitos integrados. Una de las ventajas que presentan los tokens inteligentes
sobre los de memoria, es que comúnmente los inteligentes necesitan de una
contraseña para poder habilitarlos y posteriormente usarlos para la autenticación, complicando ası́ la falsificación del token [17].
Figura 1.7:
Ejemplo de tokens inteligentes
Las desventajas de usar autenticación basada en tokens tienen que ver
en general con el costo de su implementación, debido a que para su uso es
necesaria la implementación de hardware extra. Otro punto desfavorable para
el uso de tokens es que se pueden extraviar con relativa facilidad. Finalmente,
los usuarios prefieren sistemas sencillos de usar, por lo que les desagrada el
tener que cargar un token con ellos y presentarlo.
1.4.2.
Autenticación basada en algo que el usuario conoce
Los sistemas de autenticación más usados son aquellos basados en conocimiento, por ejemplo los que hacen uso de un ID de usuario y una contraseña,
o de una llave criptográfica [17].
Las ventajas de estos sistemas son que los usuarios se familiarizan muy
fácil y rápidamente con ellos, su implementación es muy sencilla y de bajo
costo, y que en un ambiente debidamente administrado y controlado pueden
INTITUTO TECNOLÓGICO DE MORELIA
CAPÍTULO 1. SEGURIDAD Y AUTENTICACIÓN
11
proporcionar un alto nivel de seguridad.
El punto débil de estos sistemas no reside en el sistema en sı́, sino en
las malas costumbres de los usuarios, por ejemplo, normalmente eligen como
contraseñas nombres de familiares, mascotas, fechas de nacimiento, palabras
comunes, etc., haciendo que el sistema se vuelva muy vulnerable a ataques
de fuerza bruta1 o por diccionario2 . Otros malos hábitos consisten en proporcionar las contraseñas a otras personas y el tenerlas anotadas en lugares
a la vista de otros.
A continuación, en los Cuadros 1.1 y 1.2, podemos ver algunas estadı́sticas
que muestran las tendencias de 13787 usuarios al establecer su contraseña
[55].
Longitud de contraseña
Número
(caracteres)
de usuario
1
55
2
87
3
212
4
449
5
1260
6
3035
7
2917
8
5772
Cuadro 1.1:
Elección de contraseñas en base a longitud
Al observar las tablas anteriores se puede percibir cómo los usuarios en
general hacen uso de contraseñas consideradas como débiles de acuerdo con
las recomendaciones y polı́ticas de seguridad creadas por los expertos [32],
[42], [66]. En primer lugar ningún usuario eligió una contraseña de longitud
mayor a ocho caracteres, tamaño que se considera como el mı́nimo para que
una contraseña sea fuerte. Otro punto importante a notar en estas estadı́sticas es que el 38.1 % usaron contraseñas que contenı́an únicamente letras, lo
que las hace muy vulnerables a ataques por diccionario y por fuerza bruta,
facilitándoles en gran medida el trabajo a los atacantes.
1
Ataque en el que se intenta cada posible contraseña, una por una [51]
Ataque en el que se toma una gran lista con palabras comunes y se va probando cada
una de estas como contraseña [51]
2
INTITUTO TECNOLÓGICO DE MORELIA
CAPÍTULO 1. SEGURIDAD Y AUTENTICACIÓN
12
Tipo de caracteres
Número de usuarios Porcentaje
Solamente minúsculas
3988
28.9 %
May/min mezcladas
5259
38.1 %
Algunas mayúsculas
5641
40.9 %
Dı́gitos
4372
31.7 %
Metacaracteres
24
0.2 %
Caracteres de control
188
1.4 %
Espacios y/o tabuladores
566
4.1 %
.,;
83
6.1 %
- +=
222
1.6 %
! # $ % & ()
654
4.4 %
Otros no alfanuméericos
229
1.7 %
Cuadro 1.2:
1.4.3.
Composición de contraseñas
Autenticación basada en algo que el usuario es
Para lograr la autenticación estos sistemas hacen uso de las caracterı́sticas o atributos, fisiológicos y de comportamiento, propios de cada individuo
que lo hacen único. Dichos sistemas son conocidos también como sistemas
biométricos.
La autenticación biométrica es mucho más compleja y cara en su implementación, y no siempre tiene buena aceptación entre los usuarios, pero en
general proporcionan un mejor nivel de seguridad con respecto al resto de
los sistemas [16].
El rechazo de los usuarios hacia este tipo de sistemas de autenticación
es debido principalmente a preocupaciones socioculturales, algunas erróneas,
que se pueden englobar en tres grupos distintos: privacidad de la información,
privacidad fı́sica y cuestiones religiosas. En el primer grupo se encuentran
puntos como abuso de la información, rastreo y monitereo de la persona y,
robo de identidad. Respecto a los aspectos fı́sicos se observa que las personas
no aceptan los sistemas biométricos por una estigmatización relacionada al
fichaje de delincuentes, inquietud por la higiene de los dispositivos biométricos, daño fı́sico, ası́ como que sistemas como los de lectura de iris pueden
revelar la existencia de ciertas enfermedades [65].
INTITUTO TECNOLÓGICO DE MORELIA
Capı́tulo 2
BIOMETRÍA
2.1.
La biometrı́a
Proveniente del griego ‘bios’, vida y ‘metron’, medida [12], se dice que es
el estudio de los métodos para el reconocimiento de los humanos a través de
rasgos intrı́nsecos fı́sicos y de conducta [2].
La biometrı́a puede ser usada en modo de identificación o de verificación.
En el primero el sistema identifica a un individuo de entre una población
registrada en una base de datos, buscando una igualación basándose únicamente en el parámetro biométrico; esto es conocido también como igualación
1 a N. El modo de verificación, llamado igualación 1 a 1, autentica la identidad de un usuario a partir de un patrón previamente registrado [47].
Como caracterı́sticas que se pueden usar para los sistemas biométricos
podemos encontrar geometrı́a de la mano, rasgos faciales, iris, retina, voz,
escritura, modo de caminar. Estas caracterı́sticas se dividen en estáticas o
fı́sicas y, dinámicas o de comportamiento. En el Cuadro 2.1 están evaluadas
varias tecnologı́as biométricas en base a distintos criterios, donde A, M y B
son “Alto”, “Medio” y “Bajo”, respectivamente.
13
CAPÍTULO 2. BIOMETRÍA
14
UniversalidadUnicidadPermanenciaRecolectabilidadDesempeñoAceptabilidadFacilidad de
engaño
Cara
A
B
M
A
B
A
B
M
A
A
M
A
M
A
M
M
M
A
M
M
M
B
B
B
M
B
M
M
de la mano
M
M
M
M
M
M
A
Iris
A
A
A
M
A
B
A
Retina
A
A
M
B
A
B
A
Firma
B
B
B
A
B
A
B
Voz
M
B
B
M
B
A
B
facial
A
A
B
A
M
A
A
ADN
A
A
A
B
A
B
B
Huella
digital
Geometrı́a
de la mano
Dinámica
de tecleo
Venas
Termograma
Cuadro 2.1:
2.2.
Comparación entre varias tecnologı́as biométricas [21]
Funcionamiento y desempeño
En los sistemas biométricos el usuario tiene la comodidad de no tener
que portar con él un token o crear y recordar una contraseña, únicamente la
primera vez que use el sistema tendrá que presentar su “credencial” biométrica para que el sistema cree y registre su perfil, el cual será comparado en cada
intento de autenticación contra la “credencial”.
Cuando una persona hace uso de un sistema biométrico, se obtiene un
rasgo fisiológico o conductual asociado a tal usuario. Dicha información es
procesada por un algoritmo numérico para obtener una representación digital
de la caracterı́stica biométrica. El proceso de convertir el rasgo biométrico en
una plantilla digital es realizado cada vez que el usuario trata de autenticarse
en el sistema.
El desempeño de un sistema biométrico normalmente es medido usando
varias tasas de error, siendo las más comunes la FAR (del inglés False Accept
Rate -tasa de falsa aceptación-) y la FRR (del inglés False Reject Rate -tasa
INTITUTO TECNOLÓGICO DE MORELIA
CAPÍTULO 2. BIOMETRÍA
Figura 2.1:
15
Proceso de registro y verificación en un sistema biométrico
de falso rechazo-) [6].
La FAR se refiere al error que ocurre cuando el sistema biométrico identifica de manera incorrecta los rasgos de la muestra biométrica como iguales
con respecto a otros rasgos de una muestra almacenada en su base de datos,
es decir, concede acceso a un usuario no legı́timo. Este error es conocido en
Estadı́stica como Falsos Positivos.
La FRR hace referencia a los errores que se presentan cuando el sistema
incorrectamente no iguala la muestra biométrica con una muestra registrada
en su base de datos, denegando el acceso a un usuario legı́timo. Dentro de la
Estadı́stica este error se conoce como Falsos Negativos.
Se considera que la FAR es más costosa que la FRR, ya que al producirse
un error de este tipo, se rompe el esquema de seguridad. Al graficar la FAR
contra la FRR, se puede obtener una nueva medida del sistema, que se muestra en la Figura 2.2; ésta medida es la tasa en la cual tanto la FAR como la
FRR son iguales, y se conoce como tasa de error igual (EER, Equal Error
Rate) o tasa de error de cruce (CER, Cross-over Error Rate). Se considera
que mientras más bajo sea la CER, más exacto será el sistema [4].
2.3.
Biometrı́a estática
Se conoce como biometrı́a estática a aquellas caracterı́sticas fisiológicas
que son únicas en cada ser humano y que son estables en el tiempo (bajo
INTITUTO TECNOLÓGICO DE MORELIA
CAPÍTULO 2. BIOMETRÍA
Figura 2.2:
16
Medidas de desempeño de un sistema biométrico
circunstancias naturales). Ejemplos de estos rasgos son el rostro, la mano,
las huellas digitales, el iris. Como podemos ver en el Cuadro 2.1 el uso de
cada uno de ellos como factor de autenticación tiene sus propias ventajas y
desventajas.
2.3.1.
Cara
Las imágenes faciales son la caracterı́stica biométrica más usada por los
humanos para el reconocimiento personal. Las principales aproximaciones
para el reconocimiento facial son dos, la primera se basa en la localización y
forma de rasgos de la cara, tales como cejas, ojos, nariz, labios, barbilla, y su
relación espacial; la segunda aproximación consiste en un análisis global de la
imagen de la cara representando una cara como un combinación ponderada
de un número de rostros canónicos (Eigenfaces Recognition).
Los problemas que presentan estos sistemas están relacionados a factores
de condición del ambiente en el momento de la adquisición de la muestra,
como pueden ser la iluminación, el fondo, el ángulo en que se toma la imagen.
2.3.2.
Huella digital
Las huellas digitales son el método de identificación de personas más
antiguo [30]. Las huellas digitales están formadas por patrones de valles y
crestas en las yemas de los dedos, los cuales se forman durante los primeros
INTITUTO TECNOLÓGICO DE MORELIA
CAPÍTULO 2. BIOMETRÍA
17
Figura 2.3:
Aproximaciones para reconocimiento facial
siete meses de vida del feto. Existen dos técnicas para la identificación de
huellas dactilares, en la primera se localizan las terminaciones de crestas,
bifurcaciones, puntos y cruces (todos estos elementos se denominan minucias, podemos ver un ejemplo en la Figura 2.4), y partiendo de su geometrı́a,
orientación y relación, se compara contra las mismas de la plantilla. La segunda técnica compara las zonas que rodean a las minucias para encontrar
diferencias de deformaciones [67].
Una desventaja de estos sistemas es que requieren una cantidad importante de recursos computacionales [22]. Otro punto desfavorable es que en
ocasiones puede llegar a ser inapropiado para ciertas personas que pueden
sufrir cambios en sus huellas por factores genéticos, ambientales, de envejecimiento o propios de sus actividades profesionales.
Figura 2.4:
INTITUTO TECNOLÓGICO DE MORELIA
Minucias en una huella digital
CAPÍTULO 2. BIOMETRÍA
2.3.3.
18
Geometrı́a de la mano
Para usar la geometrı́a de la mano como rasgo biométrico se coloca la
mano sobre una superficie y se toman dos imágenes, una de la vista lateral y
otra de la superior. A partir de estas imágenes se medirán la forma y tamaño
de la palma y el largo y ancho de los dedos [47].
Tiene como desventaja que los lectores suelen ser de gran tamaño, lo que
complica la incorporación en dispositivos móviles.
Figura 2.5:
2.3.4.
Medición de la geometrı́a de la mano
Iris
El iris es la parte del ojo que tiene el color, y está formado por un tejido
con una textura compleja con un patrón único. El iris se forma durante el
desarrollo fetal y se estabiliza en los primeros dos años de vida. La imagen
del ojo es adquirida por una pequeña cámara infrarroja, para después identificar el iris y segmentarlo en bordes y convertir sus caracterı́sticas en datos
numéricos (llamado IrisCode) [67].
Se considera que las sistemas que usan el iris son los más confiables de
todos los sistemas biométricos que se han propuesto [28], pero a pesar de ser
un sistema muy rápido y confiable, no existen muchas implementaciones hoy
en dı́a debido a su alto costo [67].
2.3.5.
Retina
Los vasos sanguı́neos de la retina poseen una estructura rica y única. El
funcionamiento de los sistemas que hacen uso de la retina es muy similar
INTITUTO TECNOLÓGICO DE MORELIA
CAPÍTULO 2. BIOMETRÍA
19
Figura 2.6:
Adquisición de las caracterı́sticas del iris
al de aquellos que usan el iris [23]. Un aspecto por el que no logran gran
aceptación entre los usuarios es que las lecturas pueden revelar la existencia
de ciertas enfermedades.
Figura 2.7:
2.4.
Imagen de vasculatura retinal
Biometrı́a dinámica
Los psicólogos han demostrado que los seres humanos somos predecibles
en nuestro desempeño de tareas repetitivas y rutinarias. Aprovechando estas
predicciones es que se ha desarrollado la biometrı́a dinámica o de comportamiento, que analiza rasgos de la persona tales como la voz, la forma de
escribir, la manera de teclear e incluso el ritmo al caminar [58].
Estos rasgos presentan las desventajas generales de que no son estables en
el tiempo y que pueden verse afectados por factores ambientales y de estado
emocional [8].
INTITUTO TECNOLÓGICO DE MORELIA
CAPÍTULO 2. BIOMETRÍA
2.4.1.
20
Voz
En los sistemas de autenticación por voz, el usuario emplea un micrófono
para grabar sus voz, ya sea repitiendo un texto dado por el sistema o hablando
libremente. Después la voz es digitalizada para poder extraer de ella algunas
caracterı́sticas únicas y generar el perfil. La extracción de las caracterı́sticas
puede lograrse a través de plantillas estocásticas o de plantillas modelo. En
las plantillas estocásticas se usan técnicas de igualación probabilı́sticas como
el Modelo Escondido de Markov, el cual produce una medida de similitud del
modelo [25].
En las plantillas modelo se emplean técnicas de igualación determinı́sticas,
que suponen que la muestra es similar al perfil, pero con alguna distorsión.
A partir de aquı́ se mide la distancia de error mı́nimo, empleando algoritmos
como envolvimiento de tiempo dinámico, cuantización de vectores y vecinos
más cercanos [67].
2.4.2.
Manera de caminar
La biometrı́a basada en la manera de caminar es un método espacialtemporal complejo, que se logra a través de filmaciones que analizan varios
movimientos de cada articulación, es por esto que requieren un alto costo computacional. La manera de caminar puede parecer un rasgo no muy
distintivo, pero es lo suficientemente discriminatorio como para permitir autenticaciones en ambientes de baja seguridad [23].
2.4.3.
Firma autógrafa
Una firma desarrollada de forma natural representa el acto de escritura
más frecuente y habitual, y aunque dos firmas nunca serán iguales, siempre la
mantenemos dentro de ciertos lı́mites, los cuales representan de manera única
a cada individuo. La firma ha sido aceptada como método de autenticación
en el gobierno, transacciones legales y comerciales [24].
INTITUTO TECNOLÓGICO DE MORELIA
CAPÍTULO 2. BIOMETRÍA
2.5.
2.5.1.
21
Biometrı́a basada en dinámicas de tecleo
Historia
Al escuchar hablar a alguien acerca de que se puede identificar a un
individuo a partir de sus dinámicas de escritura con un teclado, se podrı́a
pensar que es una ciencia nueva y complicada, sin embargo esta técnica se
viene empleando desde hace más tiempo del que podemos imaginar. Durante
la década de 1860 en Estados Unidos, cuando el telégrafo estaba en su pleno
auge, los operadores de telégrafos comenzaron a volverse un recurso valuable,
y mientras ganaban experiencia, iban desarrollando una “firma” única, siendo
posible que fueran identificados por su ritmo al pulsar los mensajes.
Durante la Primera Guerra Mundial, los franceses entrenaban a sus operadores de radio para que pudieran reconocer a los operadores enemigos que
transmitı́an en clave Morse, los operadores aprendı́an a reconocer a sus enemigos al distinguir las longitudes de los puntos, lı́neas, pausas y las variaciones de velocidad en la transmisión. Este método nuevamente volvió a
usarse durante la Segunda Guerra Mundial en labores de inteligencia, y se
conoció como “el puño del remitente” (“fist of the sender”).
En tiempos actuales la National Science Foundation de los Estados Unidos
se percató de la importancia de las dinámicas de tecleo y creó un proyecto
de investigación para seguridad de computadoras en la RAND Corporation.
Este proyecto arrojó como resultado que el concepto de “el puño del remitente” tenı́a importantes caracterı́sticas estadı́sticas que permitı́an que se
usara como una tecnologı́a de seguridad.
A inicios de la década de 1980 el SRI International fue fundado por el
National Bureau of Standards de los Estados Unidos con el fin de desarrollar
una solución biométrica que hiciera uso de los principios de “el puño del
remitente”. El SRI logró el registro de una patente, con lo que demostraba
que su implementación, al analizar las dinámicas de tecleo de un individuo
que tecleaba un ID de usuario y contraseña, lograba una precisión del 98 %.
El SRI, nuevamente a petición del National Bureau of Standards, llevó a cabo
un estudio de viabilidad para la implementación de las dinámicas de tecleo en
seguridad computacional. Su estudio mostró que un texto familiar al usuario
bastaba para autenticarlo virtualmente libre de errores.
En el año de 1984, International Bioaccess Systems Corporation adquirió todos los derechos de las tecnologı́as de dinámicas de tecleo previamente diseINTITUTO TECNOLÓGICO DE MORELIA
CAPÍTULO 2. BIOMETRÍA
22
ñadas por SRI International.
Posteriormente, en el 2002, Biopassword, Inc. compró todos los derechos
para la tecnologı́a, secretos comerciales y patentes de dinámicas de tecleo.
Desde entonces ha desarrollado nuevas patentes para reforzar y extender
las ventajas tecnológicas de las dinámicas de tecleo, incluso ha desarrollado estándares para la junta de estándares M1 del International Committee
for Information Technology Standards (INCITS) para usar las dinámicas de
tecleo como una tecnologı́a de autenticación [20].
2.5.2.
Funcionamiento
La naturaleza humana dicta que una persona no se sienta frente a una
computadora y comienza a teclear en un flujo caótico, sino que teclea por un
momento, se detiene para reunir ideas, se detiene para descansar, continúa
tecleando y ası́ sucesivamente [10]. Este comportamiento único nos brinda
las bases para desarrollar un esquema de autenticación; las caracterı́sticas
que nos interesarán para el análisis del comportamiento están relacionadas
con eventos de las pulsaciones de las teclas, y son: tiempo de presión (dwell
time) y tiempo de cambio (flight time).
El tiempo de presión es el tiempo que transcurre desde que se presiona
una tecla hasta que se libera. El tiempo de cambio corresponde al tiempo
que pasa desde que se suelta una tecla hasta que se presiona la siguiente [5].
Figura 2.8:
Eventos en el cálculo de dinámica de tecleo
El punto central para el cálculo de perfiles en estos sistemas consiste en
poder medir en el tiempo con la mayor precisión posible la ocurrencia de
estos eventos. Una vez que se tienen registrados todos los eventos ocurridos
en la entrada de texto por parte del usuario, el resto consiste en aplicar
un algoritmo para la obtención de una medida que represente a la muestra.
Existen varias aproximaciones para procesar los datos de tiempo: métodos
estadı́sticos, lógica difusa, redes neuronales [19]. Todas estas aproximaciones
INTITUTO TECNOLÓGICO DE MORELIA
CAPÍTULO 2. BIOMETRÍA
23
han sido probadas en implementaciones para teclados convencionales dando
buenos resultados.
2.5.3.
Trabajo Previo
Como se mencionó anteriormente, la identificación de usuarios a través
de sus ritmos de “escritura” ha sido empleada por alrededor de un siglo, sin
embargo su estudio y desarrollo cientı́fico data de inicios de la década de
1980. Desde entonces tanto investigadores como profesionales han llevado a
cabo numerosos estudios donde se proponen diversas metodologı́as. A continuación se comentan algunos de los más importantes, la mayorı́a de ellos
siendo realizados en los Estados Unidos.
El trabajo pionero en el área es el realizado por Stockton et. al. [14]
en 1980 en los Estados Unidos. En este estudio reunió a un grupo de seis
secretarias a las que se les pidió que teclearan tres distintos pasajes con
una longitud de entre 300 y 400 palabras, registrando el momento de cada
presión de teclas con una precisión de milisegundos; cuatro meses después
nuevamente las mismas seis personas capturaron los mismos pasajes de texto.
El análisis se realizó midiendo la latencia entre tiempos de dı́grafos (un par
de letras sucesivas), es decir, en la palabra ’biometrı́a’ un tiempo de dı́grafo
es el tiempo que toma escribir bi, el tiempo que toma escribir io es otro
y asi sucesivamente. Los dı́grafos considerados incluı́an únicamente letras
minúsculas y mayúsculas, saltos de lı́nea y signos de puntuación. A éstos
tiempos se les aplicó una prueba t de Student, arrojando resultados de una
FAR de 0 % y una FRR de 4 %.
En 1986 Garcı́a [15] publica una patente de un sistema con el que analizaba latencias entre dı́grafos usando un algoritmo de discriminación basado
en la función de distancia de Mahalanobis. En su estudio cada participante
escribió diez veces su nombre y mil palabras comunes. Obtuvo una FAR de
0.01 % y una FRR de 50 %.
Joyce y Gupta [24] en 1990 llevan a cabo un estudio con 33 estudiantes
universitarios, en el que cada persona teclea un nombre de usuario, contraseña, nombre y apellido ocho veces para estudiar las latencias de dı́grafos
a través de la media y la desviación estándar de vectores de distancia. Se
obtuvieron una FAR de 0.25 % y una FRR de 16.36 %.
Para 1993 se publicó un innovador estudio hecho por Obaidat y Maccairo-
INTITUTO TECNOLÓGICO DE MORELIA
CAPÍTULO 2. BIOMETRÍA
24
lo [40] en el que tomaron latencias de dı́grafos entre cadenas de referencia
usando redes neuronales. En su experimento emplearon a seis usuarios, cada uno escribió 20 veces una frase de 15 caracteres, logrando un desempeño
global del sistema de 97 %. En el mismo año Obaidat publica otro estudio [39]
esta vez aplicando un algoritmo de Red Neuronal Perceptron sobre latencias
de dı́grafos, para ello se apoyó en 24 usuarios que escribieron un número no
determinado de veces su nombre de usuario; esta vez no logró resultados muy
buenos, ya que reporta una FAR de 8 % y una FRR de 9 %. Cuatro años más
tarde lanza un nuevo estudio [41], el de mejor desempeño hasta ahora, ya
que logró un tasa del 0 % tanto para la FAR como para la FRR; en dicho
experimento registró latencias de dı́grafos y tiempos de presión y los analizó a través de múltiples algoritmos de aprendizaje automático de máquina.
Se apoyó en 15 personas que registraban un nombre de usuario 225 veces al
dı́a durante 8 semanas.
Monrose ha desarrollado dos estudios, uno en 1999 y otro en 2002. En
el primero [34] participaron 63 personas que escribieron texto arbitrario que
fue analizado usando una técnica de reducción de datos estadı́sticos, conocida
como análisis de factor, calculando dı́grafos, y logrando desempeños globales
de entre 83.22 % y 92.14 %. Su segundo trabajo [33], llevado a cabo en el
2001, únicamente reporta una FRR de 45 % y no explica de manera clara el
algoritmo usado. Menciona que participaron 20 usuarios que escribı́an una
contraseña de 8 caracteres, midiendo latencias de dı́grafos y tiempos de presión.
En el 2002, Bergadano et. al. [7] reunieron un total de 220 muestras (de
entre un total de 44 personas) formadas por un texto de 683 caracteres, las
cuales se analizaron usando un algoritmo de vectores de grado de desorden
para duración de trı́grafos (tres caracteres consecutivos). Obtuvo una FAR
igual a 0.04 % y una FRR de 4 %. La novedad en este estudio es que el sistema
permitı́a que los usuarios cometieran errores en el momento de que estuvieran
tecleando la muestra.
Araujo presentó en el 2004 en Brasil un trabajo [3] en el que empleaba
clasificadores de lógica difusa, para ello tomó muestras de 20 usuarios que
escribı́an dos contraseñas, una fija de 12 caracteres y otra libre de al menos
10 caracteres. Sus resultados fueron una FAR de 2.9 % y una FRR de 3.5 %.
Un trabajo importante es el logrado por Nisenson en el 2004 [37], ya que
en él aplica la biometrı́a de dinámicas de tecleo como un sistema de detección
de intrusos, usando el algoritmo de compresión Lempel-Ziv. En la prueba participaron un total de 35 personas, 5 tomaron el papel de usuarios legı́timos,
INTITUTO TECNOLÓGICO DE MORELIA
CAPÍTULO 2. BIOMETRÍA
25
mientras que el resto se hacı́an pasar por atacantes; todos escribı́an respuestas a varias preguntas, un texto fijo y posteriormente un texto libre, para
un total de 2551 ± 1866 caracteres. Consiguió un promedio de desempeño
global del 98.87 %.
Hace dos años Bartlow [6] reunió un grupo de 41 personas quienes proporcionaron a lo largo de un mes de pruebas un total de 8775 muestras.
Cada usuario tecleaba dos contraseñas, una de 8 caracteres y otra de 12,
siguiendo ciertas reglas de composción. Haciendo uso de diversos algoritmos
de aprendizaje de máquina, encontró los siguientes resultados: para el uso
de contraseña corta, una FAR de 7 % y una FRR de 7 %; para la contraseña
larga, una FAR y una FRR del 5 %.
El estudio más reciente fue el conducido el año pasado en México por
Aguilar [18]. El experimento se aplicó sobre un total de 230 personas, las
cuales facilitaron 26100 muestras. El análisis se basó en las latencias entre
teclas, que se analizaron en base a funciones estadı́sticas de dispersión. Se
consiguió una FAR de 0 % y una FRR de 35 %.
INTITUTO TECNOLÓGICO DE MORELIA
Capı́tulo 3
DISPOSITIVOS MÓVILES Y
SU PROGRAMACIÓN
3.1.
Historia del cómputo móvil
En el año de 1981 surgió lo que se puede considerar la primera computadora portátil, la Osborne 1. Tal vez las caracterı́sticas de dicho equipo no se
ajusten a las consideraciones que implica el término “portátil” hoy en dı́a,
pero cumplı́a con las consideraciones de diseño propuestas por un conocido
editor de libro técnicos llamado Adam Osborne. Osborne querı́a una computadora con una pantalla integrada que pudiera caber debajo del asiento de
un avión. La Osborne 1 contaba con un pantalla CRT de 5 pulgadas y venı́a
con una suite de software que contaba con BASIC, SuperCalc y WordStar
[59].
Figura 3.1:
Osborne 1
En 1982 fue fundada la compañı́a Compaq con el lanzamiento de su computadora portátil, la Compaq Portable. La Compaq Portable era portátil
26
CAPÍTULO 3. DISPOSITIVOS MÓVILES Y SU PROGRAMACIÓN
27
únicamente en comparación con su competidor la PC de IBM. El equipo de
Compaq tenı́a el tamaño de una máquina de coser y un peso de 12.7 Kg.,
logrando un rendimiento similar al de un PC IBM, con un microprocesador
8088, 128 KB de memoria RAM y un monitor integrado monocromático de
9 pulgadas, todo esto por un precio de 3 mil dólares. La Compaq Portable
presenta ventajas con respecto a la Osborne 1 en cuanto que usaba MS-DOS
y tenı́a compatibilidad con programas escritos para PC de IBM [29], [60].
Figura 3.2:
Compaq Portable
Durante los siguientes años siguieron apareciendo computadoras portátiles,
pero ninguna tan importante en lo que serı́a la evolución hacia las computadoras de mano como lo fue la Radio Shack TRS-80 Model 100. Era la primera
computadora de tamaño notebook, incorporaba una pantalla integrada LCD
de 8 lı́neas por 40 caracteres, teclado regular, BASIC y un procesador de
textos, además de que funcionaba con baterı́as AA [64].
Figura 3.3:
Radio Shack TRS-80 Model 100
El género PDA (Personal Digital Assistant -Asistente Personal Digital-)
fue creado por la compañı́a Psion, al lanzar en 1984 su organizador. La Psion
1 estaba basada en un microprocesador de 8 bits, tenı́a una pantalla LCD de
16 caracteres, almacenamiento no volátil de 10 KB en cartuchos, dos ranuras
para cartuchos, reloj-calendario, una base de datos con función de búsqueda,
paquete de funciones matemáticas y un paquete cientı́fico (opcional) que
permitı́a correr programas cientı́ficos residentes capaces de programar en un
lenguaje similar a BASIC. En 1993 Psion vuelve a innovar una vez más con
INTITUTO TECNOLÓGICO DE MORELIA
CAPÍTULO 3. DISPOSITIVOS MÓVILES Y SU PROGRAMACIÓN
28
la presentación de su serie 3a, las cuales podı́an conectarse con una PC de
escritorio para transferir, convertir y sincronizar datos [1].
Figura 3.4:
3.2.
Psion 1
PDA
Los PDA son dispositivos de cómputo del tamaño de la palma de la mano,
y comúnmente son conocidos como computadoras de bolsillo o de mano. Los
PDAs fueron ideados en un primer momento como simples organizadores
personales, pero con el paso de los años se fueron volviendo más versátiles,
agregando capacidades como videojuegos, procesamiento de textos, hojas de
cálculo, acceso a Internet, conexiones inalámbricas, reproducción de audio y
video, Sistemas de Posicionamiento Global (GPS) [62].
Aunque ya existı́an dispositivos que cumplı́an con muchas de las caracterı́sticas de un PDA, el término fue usado por primera vez el 7 de Enero de
1992 por el gerente general de Apple Computer, John Sculley, para referirse
a su Apple Newton.
La interacción con el usuario se logra principalmente a través de un touch
screen y un stylus (especie de aguja o lápiz) haciendo uso de un teclado
virtual, reconocimiento de caracteres o menús. Algunas veces se les puede
conectar un teclado para mejorar y facilitar la introducción de datos.
Los primeros modelos de PDA no contaban con posibilidad de almacenamiento externo, pero hoy en dı́a la mayorı́a incorporan ranuras para tarjetas Secure Digital o Compact Flash, mientras que algunas otras vienen con
un puerto USB para poder hacer uso de una unidad USB Flash.
Muchos modelos de PDA incorporan puerto de comunicación por infrarrojo, ya sea para comunicar dos PDA, con una computadora o conectar
con otros periféricos. Los modelos más modernos hacen uso de tecnologı́a
INTITUTO TECNOLÓGICO DE MORELIA
CAPÍTULO 3. DISPOSITIVOS MÓVILES Y SU PROGRAMACIÓN
Figura 3.5:
29
PDA con teclado externo
Bluetooth para lograr todo esto.
La mayorı́a de PDAs tienen la capacidad de sincronizar su información
con una computadora, caracterı́stica muy importante que permite mantener
al dı́a directorios telefónicos, agendas, bases de datos e incluso respaldar esta
y otra información. Dicha sincronización se logra con la ayuda de un software
especial proporcionado por el fabricante del PDA.
Un PDA se puede personalizar tanto en software como en hardware para
agregarle nuevas funcionalidades y mejorar su uso.
La compañı́a Palm Inc. fue un importante elemento en el desarrollo y
masificación de esta tecnologı́a, con la comercialización de sus dispositivos.
Fue tan grande el uso de éstos que con frecuencia se hace una generalización
para nombrar, de manera errónea, a todos los PDA como Palm o PalmPilot,
nombre de los productos de dicha compañı́a.
3.3.
Smartphones
Un smartphone es un teléfono móvil que incorpora funcionalidades de una
computadora personal. Es importante hacer notar que en un smartphone es
posible instalar aplicaciones desarrolladas por el fabricante, el operador o
una tercera persona, a diferencia de los teléfonos móviles convencionales que
solo permiten ciertas aplicaciones controladas. Otra caracterı́stica importante
es que poseen un sistema operativo definido como Windows Mobile, Linux,
Symbian o Palm OS [63].
Los smartphones incluyen casi todas las caracterı́sticas y funcionalidades
de un PDA, como lo son acceso a Internet, acceso a correo electrónico, procesamiento de textos, reproducción de audio y video. Otro punto que los hace
“inteligentes” es que incorporan un miniteclado para facilitar la introducción
INTITUTO TECNOLÓGICO DE MORELIA
CAPÍTULO 3. DISPOSITIVOS MÓVILES Y SU PROGRAMACIÓN
30
de datos.
Figura 3.6:
3.4.
Smartphone
Sistemas operativos móviles
El sistema operativo móvil más usado, con un 51 % del mercado en el 2005
[36], es el Symbian OS, creado por Symbian Ltd., una compañı́a formada
por Nokia, Ericsson, Sony Ericsson, Panasonic, Samsung y Siemens AG. El
Symbian OS está basado en el software de Psion y tiene una arquitectura
muy similar a la de las computadoras de escritorio.
Linux también ha contribuido con distribuciones para cómputo móvil,
tales como lo son Linux PDA y Linux Mobile, los cuales han tenido muy
buena aceptación en el mercado [36].
El Palm OS es el sistema operativo compacto desarrollado por PalmSource Inc., un sistema operativo sencillo de usar muy parecido a los sistemas operativos Microsoft Windows, creado para ser usado en los dispositivos móviles de la compañı́a Palm. Sin embargo, el desarrollo de este sistema
operativo se considera como muerto, dando paso al uso de otros [61].
En 1992 Microsoft comenzó con el desarrollo de dos proyectos: WinPad
y Pulsar. El proyecto WinPad tenı́a como objetivo la creación de un dispositivo de tipo handheld basado en Windows 3.1, llamado PC Companion, que
pudiera competir con el Newton de Apple. El proyecto Pulsar estaba orientado a dispositivos tipo localizador que usaran un sistema operativo orientado a
objetos. Debido a dificultades para soporte de hardware ası́ como a problemas
internos en la compañı́a, estos proyectos nunca vieron la luz, sin embargo en
1994 se reorganizaron bajo el nombre Pegasus, que serı́a la base para el lanzamiento en 1996 de Windows CE, el primer sistema operativo de Microsoft
diseñado para dispositivos móviles [13].
INTITUTO TECNOLÓGICO DE MORELIA
CAPÍTULO 3. DISPOSITIVOS MÓVILES Y SU PROGRAMACIÓN
31
Windows CE está basado en su contraparte de escritorio, por lo tanto
incorpora una API que resulta bastante familiar a los desarrolladores en
Windows. A pesar de esto hay algunas consideraciones que deben tener los
desarrolladores al momento de programar para dispositivos móviles, como son
la interfaz gráfica de usuario, las limitaciones de almacenamiento, consumo
de poder y opciones de comunicación.
Windows CE está hecho sobre un enfoque modular que permite que se
divida en alrededor de 300 módulos, a partir de los cuales los fabricantes de
equipos pueden ir seleccionando para construir sus sistemas operativos.
Figura 3.7:
Estructura modular de Windows CE
Desde el lanzamiento de Windows CE en 1996, Microsoft ha continuado
con las mejoras y nuevas versiones de su sistema operativo móvil.
3.5.
.NET Compact Framework
Antes de comenzar a hablar del .NET Compact Framework habrı́a que
aclarar qué es la plataforma .NET. La iniciativa .NET de Microsoft fue un
proyecto que pretendı́a integrar todos sus productos, desde el sistema operativo hasta las herramientas, creando una nueva plataforma de desarrollo
transparente en cuanto a redes, independiente de plataforma y que permitiera
un desarrollo ágil, robusto y seguro.
Con estas intenciones surge el marco de trabajo .NET, la base de la
plataforma .NET y que está integrado principalmente por un conjunto de
INTITUTO TECNOLÓGICO DE MORELIA
CAPÍTULO 3. DISPOSITIVOS MÓVILES Y SU PROGRAMACIÓN
32
lenguajes de programación, la biblioteca de clase base (Base Classes Library)
y el entorno común de ejecución para lenguajes (Common Language Runtime)
[48]. Algunos de los lenguajes incorporados en .NET son C#, Visual Basic,
Turbo Delphi for .NET, C++, Python, Perl, J#, Cobol .NET y Fortran.
Para cuando se empezó a desarrollar el .NET Framework ya existı́an
algunas herramientas para el desarrollo de aplicaciones en dispositivos inteligentes: eMbedded Visual C++ y eMbedded Visual Basic, es por esto que
se decidió incluir Windows CE dentro de la plataforma .NET y crear el .NET
CF, teniendo como objetivos los siguientes puntos [49]:
Desarrollo beneficiándose de las caracterı́sticas .NET.
Mantener consistencia con la versión de escritorio.
Asegurarse que se ejecute de manera correcta tanto en dispositivos
móviles como en incrustados.
Preservar la apariencia de las plataformas.
Proveer portabilidad a otros sistemas operativos.
De aquı́ es que surge el .NET CF como un subconjunto del .NET Framework, que utiliza algunas librerı́as completas de la versión de escritorio e incorpora algunas otras diseñadas especı́ficamente para su uso en dispositivos
móviles.
Para desarrollar aplicaciones que usen el .NET CF es necesario contar
con la suite Visual Studio .NET 2003 o Visual Studio 2005, que permiten
programar en Visual Basic y C#.
INTITUTO TECNOLÓGICO DE MORELIA
CAPÍTULO 3. DISPOSITIVOS MÓVILES Y SU PROGRAMACIÓN
Figura 3.8:
Arquitectura del .NET Compact Framework
INTITUTO TECNOLÓGICO DE MORELIA
33
Capı́tulo 4
DISEÑO DEL SISTEMA
En el presente capı́tulo se detallan las diferentes partes o módulos que
se integraron para el desarrollo del sistema propuesto en esta tesis, el cual
fue programado en su totalidad usando Visual Basic .NET; la elección de
Visual Basic .NET debido a la facilidad de integración que permite con la
API de Windows. También se explica la metodologı́a usada para la obtención
del perfil de los usuarios. En el Apéndice A se encuentra la descripción del
hardware en el que se implementó el sistema y su funcionamiento.
El sistema funciona a partir de un nombre de usuario y una contraseña
elegida de manera libre, siendo ésta en la cual se hará el cálculo de la dinámica
de tecleo del usuario.
Figura 4.1:
Diseño modular del sistema
34
CAPÍTULO 4. DISEÑO DEL SISTEMA
4.1.
35
Núcleo
El módulo principal, o núcleo, es el encargado de interactuar con el
usuario, y a partir de ahı́ llama a los demás módulos que se encargan de
otras tareas. Para esta parte se tuvo la necesidad de desarrollar un teclado
virtual para facilitar la introducción de datos por parte del usuario, ya que no
nos servı́a el SIP (Simple Input Panel) que proporciona el sistema operativo,
esto porque el SIP no permite calcular el tiempo que se mantiene presionada cada tecla (DT, dwell time), sino únicamente los tiempos de cambio
entre teclas (FT, fligth time). Nuestra implementación resultó en un teclado
con distribución QWERTY que contiene letras (mayúsculas y minúsculas) y
dı́gitos.
El poder registrar los DT era algo importante para el presente trabajo
debido a que al tener un mayor número de eventos en una plantilla se mejora
el desempeño al permitir comparar más caracterı́sticas de la dinámica de los
usuarios, es decir, si solamente se capturaran los FT tendrı́amos
NE = n − 1
(4.1)
Donde:
NE: es el número de eventos para la plantilla.
n: es la longitud en caracteres de la contraseña.
Ahora, si incluı́mos los DT en la plantilla obtenemos
NE = 2n − 1
(4.2)
Podemos observar como con esta aproximación aumenta significativamente el número de eventos a comparar, lo cual también ayuda a mejorar la
seguridad sin tener que usar contraseñas tan largas.
Otra ventaja que presenta esta modificación, al tomar en cuenta las dos
caracterı́sticas, es la dificultad extra que representa para un atacante reproducir de manera conjunta todos los DT y FT de un usuario legı́timo, la cual
crece mientras mayor sea la longitud de la contraseña usada.
INTITUTO TECNOLÓGICO DE MORELIA
CAPÍTULO 4. DISEÑO DEL SISTEMA
4.2.
36
Contador de tiempo
Este módulo es la parte esencial del sistema, ya que es el que permite
registrar en el momento en el que ocurre cada uno de los eventos de escritura
del usuario, por lo tanto debe proporcionar una alta precisión y exactitud.
Existen varias funciones, como las que se listan en el Cuadro 4.1, que nos
permiten calcular tiempos, cada una con sus propias caracterı́sticas [35].
Función
Now, Time, Timer
GetTickCount
TimeGetTime
QueryPerformanceCounter
Cuadro 4.1:
Unidad
segundos
milisegundos
milisegundos
QueryPerformanceFrequency
Precisión
1 segundo
≈ 10 ms
≈ 10 ms
Dependiente
del microprocesador
Comparación entre varias funciones de tiempo
Se decidió emplear las funciones de código nativo pertenecientes a la API
de Windows, QueryPerformanceCounter() y QueryPerformanceFrequency(),
debido a que son las que proporcionan mayor precisión. Estas funciones acceden a un reloj de alta precisión del hardware del sistema. La primera de las
funciones regresa el número de tics transcurridos desde el inicio del sistema,
mientras que la segunda nos devuelve la frecuencia del reloj (número de tics
por segundo), es por esto que las funciones deben usarse en conjunto para
conocer la precisión de la plataforma sobre la que se están ejecutando.
4.3.
Criptografı́a
Una vez que el usuario ha introducido todos sus datos de manera satisfactoria durante el proceso de registro, el módulo criptográfico toma como
entrada la contraseña y calcula un digesto1 haciendo uso del algoritmo MD52 ,
1
Representación compacta de una cadena de entrada, la cual es calculada a través de
una función de sólo ida [31].
2
Sucesor del algoritmo MD4, similar en diseño aunque más complejo, que produce un
digesto de 128 bits [51].
INTITUTO TECNOLÓGICO DE MORELIA
CAPÍTULO 4. DISEÑO DEL SISTEMA
37
el cual es almacenado en la base de datos para evitar tener la contraseña
guardada en texto claro.
Cuando el usuario intenta autenticarse, nuevamente el módulo criptográfico toma de entrada la contraseña y obtiene su digesto, el cual compara con
el digesto del usuario en cuestión que está guardado en la base de datos, si
los digestos coinciden, se continúa con el proceso de verificación biométrica,
de lo contrario desde este punto se deniega el acceso.
4.4.
Registro y Verificación
Aunque en la Figura 4.1 el registro y la verificación se muestran como
dos módulos distintos, aquı́ se explican de manera conjunta debido a que
en esencia realizan la misma tarea: obtener el perfil de los usuarios a partir de sus tiempos. El método seguido para la obtención y comparación de
perfiles es el mismo aplicado en [18], funciones estadı́sticas de dispersión. Se
eligió este método debido a que reportan buenos resultados, además de que
otros algoritmos como redes neuronales o lógica difusa no son viables para ser
implementados en dispositivos móviles debido a la gran cantidad de recursos
de cómputo que requieren durante la fase de entrenamiento.
En la la Figura 4.2 aparecen graficados los tiempos de cada una de las
cinco muestras que se tomaron de un usuario en el momento de su registro.
Dicho usuario es uno de los participantes en el estudio descrito en la Sección
5.1, y que seleccionó como contraseña la palabra “MELLERAY”. En dicha
gráfica se puede apreciar fácilmente como las cinco curvas siguen un patrón
muy similar, lo que indica que el usuario en efecto tiene establecida una
dinámica para escribir.
Figura 4.2:
Muestras de un usuario del sistema (milisegundos)
INTITUTO TECNOLÓGICO DE MORELIA
CAPÍTULO 4. DISEÑO DEL SISTEMA
38
Para el proceso de registro se tiene como entrada, por cada muestra proporcionada por el usuario, un vector con los tiempos en milisegundos de cada
uno de de los eventos DT y FT de la escritura de su contraseña.
M
M-E
E
E-L
L
L-L
L
L-E
E
E-R
R
R-A
A
A-Y
Y
Muestra 1
38
484
58
478
38
199
72
492
54
185
27
324
56
421
37
Muestra 2
62
485
52
504
41
259
81
407
56
191
37
266
76
402
84
Muestra 3
54
451
59
456
46
192
74
456
18
211
29
306
56
422
61
Muestra 4
51
418
31
462
32
195
80
463
35
192
21
341
45
420
70
Muestra 5
71
443
40
446
42
177
77
440
52
187
26
271
74
350
89
Cuadro 4.2:
Tiempos de las muestras de registro de un usuario (milisegundos)
A partir de estos datos se procede a obtener el tiempo promedio para
cada uno de los eventos, es decir para cada columna que se presenta en el
Cuadro 4.2. Enseguida necesitaremos medir la variabilidad que existe entre
los diferentes tiempos de las muestras. Para ésto usamos una medida de
dispersión: la desviación estándar. La desviación estándar es el promedio
de distancia que existe entre los datos y su media, y está expresada en las
mismas unidades que los datos originales [56] [50], y se calcula con:
rP
(x − x)2
S=
n−1
(4.3)
Donde:
x: es cada uno de los tiempos de las muestras para un evento.
x: es la media de cada evento.
n: es el número de muestras tomadas para el perfil.
Una vez que se tienen las desviaciones estándar, se calcula el coeficiente
de variación, una medida que nos proporciona un número adimensional que
describe la dispersión relativa a la media [54], y esta dado por:
CV =
Donde:
INTITUTO TECNOLÓGICO DE MORELIA
S
x
(4.4)
CAPÍTULO 4. DISEÑO DEL SISTEMA
39
S: es la desviación estándar de cada evento.
x: es la media de cada evento.
Figura 4.3:
Gráfica en la que se indican los coeficientes de variación en el perfil de un usuario
Hasta aquı́ se han obtenido todos los valores necesarios para crear y registrar la plantilla del usuario, los cuales serán usados para comparar cada
intento de autenticación.
Para el proceso de autenticación se calcula una nueva media, que será la
suma de la media de la plantilla más el tiempo de la nueva muestra. Al
tener las nuevas medias, se pueden calcular las desviaciones estándar y los
coeficientes de variación de igual manera que se calculan durante la creación
del perfil.
El siguiente paso consiste en calcular un parámetro llamado porcentaje
de similitud, que nos indica en puntos porcentuales el grado de similitud de
los nuevos tiempos con respecto a los tiempos de la plantilla. El porcentaje
de similitud se calcula con:
PS =
C
(100)
NE
(4.5)
Donde:
C: es el número de columnas donde el coeficiente de variación de
la plantilla es mayor que su respectivo coeficiente de variación de la nueva
muestra.
NE: es el número de eventos en la plantilla.
Este porcentaje de similitud se compara con otro parámetro llamado umbral de aceptación (UA), si el PS es mayor que el UA, entonces se considera
que el usuario es el legı́timo y se le concede el acceso al recurso. El valor del
INTITUTO TECNOLÓGICO DE MORELIA
CAPÍTULO 4. DISEÑO DEL SISTEMA
40
Figura 4.4: Comparación entre los coeficientes de variación de una plantilla y los de una autenticación
UA se establece según el nivel de seguridad y comportamiento que se quiere
lograr con el sistema, y se habla un poco más sobre él en el siguiente capı́tulo.
4.5.
Logs
Este módulo no es en sı́ parte funcional del sistema, sino que se incluyó únicamente por motivos estadı́sticos y de desempeño del sistema. Este
módulo guarda, por cada intento de autenticación, un archivo que contiene
toda la información generada por el módulo de verificación biométrica, como
son los promedios de tiempos, desviaciones estándar, coeficientes de variación
y porcentaje de similitud, ası́ como el resultado de si la autenticación fue exitosa o no, todo esto para poder analizar el comportamiento del sistema.
INTITUTO TECNOLÓGICO DE MORELIA
Capı́tulo 5
PRUEBAS Y ANÁLISIS DE
DESEMPEÑO
5.1.
Estudio
Para probar el funcionamiento del sistema, se realizó un experimento en
el que se reunió un grupo de personas para que hicieran uso del sistema. El
grupo estaba formado por veinticinco personas de entre 22 y 34 años, las
cuales se seleccionaron en base a que contaran con buenas habilidades de
escritura en teclados convencionales y tuvieran alguna experiencia en el uso
de un PDA, aunque solo dos de ellas aseguraron usar un PDA de manera
cotidiana. Las pruebas se llevaron a cabo a lo largo de un periodo de siete
dı́as.
Con las pruebas se pretendı́a medir la tasa de falso rechazo (FRR) y la
tasa de falsa aceptación (FAR), por lo que el experimento se dividió en dos
dinámicas. En la primera fase se les pidió a los usuarios que dieran de alta su
perfil en el sistema, para que posteriormente durante los siete dı́as, trataran
de autenticarse cada uno un total de 26 ocasiones, para reunir un total de 650
muestras. Para la segunda fase se le pidió a una persona diferente del grupo
inicial, que registrara su perfil en el sistema y permitiera a cada integrante del
grupo observar y analizar su dinámica de escritura, ası́ después cada uno de
los veinticinco individuos intentarı́a imitar su dinámica y engañar al sistema
nueve veces, es decir, se realizaron un total de 225 ataques.
Los usuarios podı́an elegir librememente la contraseña a usar, pero se les
41
CAPÍTULO 5. PRUEBAS Y ANÁLISIS DE DESEMPEÑO
42
hacı́a la recomendación de que usaran una palabra o frase con la que estuvieran familiarizados en su escritura y que fuera de al menos siete caracteres
de longitud. El umbral de aceptación (UA) del sistema se fijó en 60 %, Se decidió tomar este valor en base a los resultados reportados en [18] y a algunas
pruebas y observaciones preliminares hechas por nosotros.
El sistema guardaba los tiempos de todos los intentos llevados a cabo
por las personas que participaron en el estudio, esto con la intención de
que después pudieramos analizar con mayor detalle el comportamiento del
sistema. Dicho análisis consisitió en comenzar a ejecutar simulaciones del
mismo experimento, proporcionándole como entrada al sistema los mismos
tiempos que habı́an generado los usuarios previamente, pero cambiando en
cada ejecución el valor del UA en intervalos de 5 %, comenzando en un 5 %
y llevándolo hasta el 100 %.
5.2.
Resultados
Para la parte en que las personas interactuaron directamente con el software, de los 650 intentos de autenticación que hubo por parte de usuarios
legı́timos, el sistema rechazó de manera equivocada un total de 297, lo que se
transforma en una FRR de 44 %. Respecto a los intentos de falsificación de
identidad, de los 225 únicamente 6 de ellos fueron exitosos, entregando una
FAR con un valor del 2.664 %.
Las simulaciones que se hicieron más tarde, nos ayudaron a calcular las
curvas de la FRR y la FAR, que como ya se mencionó en la sección 2.2,
describen el desempeño global de un sistema biométrico, y además nos proporciona la tasa de error de cruce (CER) que nos indica el umbral óptimo de
sensibilidad del sistema [38].
En la Figura 5.1 podemos observar que el CER se encuentra en un UA
de alrededor de 45 %, que hace que el software funcione con una FRR y una
FAR de 15.11 %.
INTITUTO TECNOLÓGICO DE MORELIA
CAPÍTULO 5. PRUEBAS Y ANÁLISIS DE DESEMPEÑO
Figura 5.1:
INTITUTO TECNOLÓGICO DE MORELIA
Desempeño del sistema
43
Capı́tulo 6
CONCLUSIONES Y
TRABAJO FUTURO
Esta tesis tuvo por objetivo lograr una nueva aportación a las áreas de
seguridad de la información y los dispositivos móviles, al desarrollar un sistema capaz de reconocer dinámicas de tecleo y que pudiera trabajar en conjunto con los tradicionales sistemas de autenticación basados en nombre de
usuario y contraseña, y de esta manera fortalecer la seguridad proporcionada
por éstos últimos.
Al ser este trabajo la primera implementación de este tipo para dispositivos móviles, los resultados fueron satisfactorios y prometedores, ya que
nos dejan ver que el software puede madurar y convertirse en un producto
robusto y confiable.
La principal ventaja que se encontró en el actual sistema biométrico es
que provee una segunda capa de seguridad, fortaleciendo los sistemas basados
en nombre de usuario y contraseña; otra ventaja es, que actúa de manera
transparente para el usuario durante la etapa de autenticación. La desventaja
que presentó radica en la etapa de registro de usuario, ya que para algunos de
ellos puede llegar a ser tedioso el escribir en repetidas ocasiones su contraseña.
El sistema podrı́a llegar a presentar otra desventaja, la cual no se pudo
probar, y es la disminución de precisión y desempeño del sistema al estar
ejecutándose de manera simultánea con varias otras aplicaciones.
Respecto al trabajo a futuro hay varios puntos importantes sobre los
cuales enfocarse, el primero de ellos consiste en agregar al sistema un método
de adaptación, es decir, que le permita al software reconocer y aprender las
44
CAPÍTULO 6. CONCLUSIONES Y TRABAJO FUTURO
45
variaciones y evolución que va sufriendo la dinámica de tecleo del usuario a
lo largo del tiempo, lo que permitirı́a mejorar el desempeño. En un segundo
punto se tratarı́a de modificar el software para que sea tolerante a los errores
de escritura tanto en el proceso de registro como en el de autenticación.
Un último aspecto sobre el cual hay que trabajar es el portar el sistema a
teléfonos celulares convencionales, los cuales no cuentan con pantallas táctiles
para el ingreso de datos.
INTITUTO TECNOLÓGICO DE MORELIA
Apéndice A
Funcionamiento del Sistema
En el Cuadro A.1 se muestran las especificaciones técnicas del hardware
sobre el que se implementó y probó el sistema.
Marca
Modelo
Sistema Operativo
Procesador
Memoria
Display
Dimensiones
Peso
Cuadro A.1:
Hewlett-Packard
iPAQ rx4240
Microsoft Windows Mobile 5.0
Samsung S3C2442 de 400 MHz
ROM de 128 MB, SDRAM de 64 MB
TFT 65536 colores
6.35 x 10.2 x 1.675 milı́metros
125 gramos
Principales caracterı́sticas técnicas del PDA iPAQ 4240
En las siguientes secciones se detalla la composición de la interfaz gráfica
del sistema, ası́ como su funcionamiento.
A.1.
Pantalla principal
En la Figura A.2 se muestra la pantalla principal del sistema, en donde
se pueden observar los diferentes elementos que la conforman.
En esta primer pantalla aparece el menú “Nuevo”, el cual se debe seleccionar para dar de alta en el sistema un nuevo usuario.
46
APÉNDICE A. FUNCIONAMIENTO DEL SISTEMA
Figura A.1:
Figura A.2:
INTITUTO TECNOLÓGICO DE MORELIA
Imagen del PDA iPAQ rx4240
Pantalla principal de la aplicación
47
APÉNDICE A. FUNCIONAMIENTO DEL SISTEMA
Figura A.3:
A.2.
48
Inicio del proceso de registro de un usuario
Pantalla de registro de usuario
Con la interfaz de registro de usuario, Figura A.4, el sistema nos permite
introducir todos los datos necesarios para crear un nuevo perfil en el sistema.
En primer lugar, se deberá seleccionar un nombre de usuario y una contraseña, la cual debe ser capturada dos veces para confirmar que es correcta.
Aquı́ aún no se miden los tiempos de escritura del usuario, por lo que se
pueden cometer errores de escritura, borrar y volver a escribir. Cuando se
confirma que el nombre de usuario seleccionado no existe y que las contraseñas coinciden, se procede a la toma de muestras de tiempos.
El usuario deberá proporcionar cinco muestras, cada muestra consiste en
la escritura de la contraseña seleccionada anteriormente. En este punto el
usuario no deberá de equivocarse al teclear su contraseña, de ser ası́, deberá presionar el botón “Cancelar” y comenzar nuevamente dicha muestra.
INTITUTO TECNOLÓGICO DE MORELIA
APÉNDICE A. FUNCIONAMIENTO DEL SISTEMA
Figura A.4:
Pantalla de registro de usuario
Figura A.5:
INTITUTO TECNOLÓGICO DE MORELIA
Inicio de toma de muestras
49
APÉNDICE A. FUNCIONAMIENTO DEL SISTEMA
Figura A.6:
Figura A.7:
50
Toma de muestras
Registro de usuario completado correctamente
INTITUTO TECNOLÓGICO DE MORELIA
APÉNDICE A. FUNCIONAMIENTO DEL SISTEMA
A.3.
51
Autenticación
Cuando el usuario trata de autenticarse, debe escribir su nombre de
usuario y contraseña, en el primero se le permite cometer errores, a diferencia del tecleo de la contraseña, donde en caso de cometer un error, tiene
que hacer click en el botón “Cancelar” para introducir nuevamente la contraseña.
El sistema mostrará un cuadro de diálogo indicando si el usuario logró autenticarse de manera correcta o no.
Figura A.8:
INTITUTO TECNOLÓGICO DE MORELIA
Autenticación correcta
APÉNDICE A. FUNCIONAMIENTO DEL SISTEMA
Figura A.9:
INTITUTO TECNOLÓGICO DE MORELIA
52
Autenticación incorrecta
Apéndice B
Código Fuente del Sistema
En este apéndice se incluye un medio digital, el cual contiene los archivos
con el código fuente de la aplicación. Se presenta de esta forma debido al
gran número de lı́neas generadas.
53
Bibliografı́a
[1] 3-Lib. History of Psion. http://3lib.ukonline.co.uk/historyofpsion.htm.
[2] Ross J. Anderson and Ross Anderson. Security Engineering: A Guide
to Building Dependable Distributed Systems. Wiley, 2001.
[3] L.C.F. Araújo and M.G. Lizárraga and L.H.R. Sucupira Jr. Autentificación Personal por Dinámica de Tecleo Basada en Lógica Difusa.
Revista IEEE América Latina, 2(1), Marzo 2004.
[4] Julian Ashbourn. Biometrics: Advanced Identity Verification: The Complete Guide. Springer, 2000.
[5] Ahmed Awad and Issa Traore. Detecting Computer Intrusions Using
Behavioral Biometrics. Technical report, Department of Electrical and
Computer Engineering, University of Victoria, 2005.
[6] Nicholas Daniel Bartlow. Username and Password Verification through
Keystroke Dynamics. Master’s thesis, College of Engineering and Mineral Resources, West Virginia University, 2005.
[7] Francesco Bergadano and Daniele Gunetti and Claudia Picardi. User
Authentication through Keystroke Dynamics. ACM Transactions on
Information and System Security (TISSEC), Vol. 5, 2002. pp. 367–397.
[8] Ruud Bolle and Jonathan Connell and Sharanthchandra Pankanti.
Guide to Biometrics. Springer, 2003.
[9] Seymour Bosworth and Arthur E. Hutt and Douglas B. Hoyt. Computer
Security Handbook. Wiley, 1995.
[10] S. Card and T. Moran and and AÑewell. The Keystroke Level Model for
User Performance Time with Interactive Systems. In Communications
of ACM, Vol. 23, 1980. pp. 396–410.
54
BIBLIOGRAFÍA
55
[11] D. W. Davies and W. L. Price. Security for Computer Networks: An
Introduction to Data Security in Teleprocessing and Electronic Funds
Transfer. Wiley, 1989.
[12] Online
Etymology
Dictionary.
http://www.etymonline.com.
Authentication.
[13] Dan Fox and Jon Box. Building Solutions with the Microsoft .NET
Compact Framework: Architecture and Best Practices for Mobile Development. Addison-Wesley Professional, 2003.
[14] R. Stockton Gaines, William Lisowski, and S. James Press. Authentication by keystroke timing:some preliminary results. Technical report,
RAND Corporation, 1980. http://www.rand.org/pubs/reports/R2526/.
[15] J Garcia. Personal identification apparatus. Patent 4,621,334, U.S.
Patent and Trademark Office, 1986.
[16] Eric Guerrino and Mike Kahn and Ellen Kapito. User authentication
and encryption overview, 1997.
[17] Barbara Guttman. An Introduction to Computer Security: The NIST
Handbook. Diane Pub Co, 1995.
[18] Jose Guadalupe Aguilar Hernández and Luis Adrian Lizama Pérez. Autenticación de usuarios a través de Biometrı́a de Tecleo. Mexican Conference on Informatics Security 2006, 2006.
[19] Jarmo Ilonen. Keystroke Dynamics. Technical report, Lappeenranta
University of Technology, 2004.
[20] Biopassword Inc. Authentication Solutions Through Keystroke Dynamics. Whitepaper. http://www.biopassword.com/antiphishing-antifraudresources.php.
[21] A.K. Jain. Biometric recognition: how do I know who you are? Signal
Processing and Communications Applications Conference, 2004.
[22] Anil K. Jain. Biometric Authentication based on Keystroke Dynamics
Biometric. http://www.cse.msu.edu/ cse891/Sect601/.
[23] Anil K. Jain and Arun Ross and Salil Prabhakar. An Introduction to
Biometric Recognition. IEEE Transactions on Circuits and Systems for
Video Technology, 14(1), January 2004. pp.4–20.
INTITUTO TECNOLÓGICO DE MORELIA
BIBLIOGRAFÍA
56
[24] R. Joyce and G. Gupta. Identity Authentication Based on Keystroke
Latencies. In Communications of the ACM, vol. 33, no. 2, 1990. pp.
168-176.
[25] J.P. Campbell Jr. Speaker Recognition: A Tutorial. In Proceedings of
The IEEE, Vol. 85, No. 9, 1997. pp. 1437–1462.
[26] James F. Kurose and Keith W. Ross. Computer Networking: A TopDown Approach Featuring the Internet. Addison Wesley, 2004.
[27] J. C. Laprie. Dependability: Basic Concepts and Terminology. Springer,
1991.
[28] Li Ma and Tieniu Tan, and Yunhong Wang. Efficient iris recognition by
characterizing key local variations. IEEE Trans. on Image Processing,
2004. pp. 739-750.
[29] CED Magic. Compaq Portable. http://www.cedmagic.com/history/compaqportable.html.
[30] D. Maio and D. Maltoni and R. Capelli and A. Jain. Fingerprint Verification Competition. International Conference on Pattern Recognition
(ICPR), 2002. pp. 811-814.
[31] Alfred J. Menezes and Paul C. van Oorschot and Scott A. Vanstone.
Handbook of Applied Cryptography (Crc Press Series on Discrete Mathematics and Its Applications). CRC, 1996.
[32] Microsoft. Strong passwords: How to create and use them, 2006.
http://www.microsoft.com/protect/yourself/password/create.mspx.
[33] Fabian Monrose and Michael K. Reiter, and Susanne Wetzel. Password
hardening based on keystroke dynamics. In Int. J. Inf. Sec., vol. 1, no.
2, 2002.
[34] Fabian Monrose and Aviel D. Rubin. Keystroke dynamics as a biometric
for authentication. Future Generation Computer Systems, 16(4):351–
359, 2000.
[35] Microsoft Developer Network. How To Use QueryPerformanceCounter
to Time Code. http://support.microsoft.com/kb/172338.
[36] Internet
News.
Symbian
at
a
mobile
http://www.internetnews.com/stats/article.php/3584431.
INTITUTO TECNOLÓGICO DE MORELIA
loss.
BIBLIOGRAFÍA
57
[37] Mordechai Nisenson and Ido Yariv, and Ran El Yaniv. Towards Behaviometric Security Systems:Learning to Identify a Typist, volume Volume
2838/2003 of Lecture Notes in Computer Science. Springer Berlin /
Heidelberg, February 2004. pp. 363-374.
[38] Puripant Ruchikachorn and Nongluk Covavisaruch and Pipat Prateepamornkul. Personal Verification and Identification Using Hand Geometry. In ECTI Transactions on Computer and Information Technology
VOL.1, NO.2, 2005.
[39] M.S. Obaidat and S. Bleha. Computer user verification using the perceptron. In IEEE Trans. Systems, Man, and Cybernetics, vol. 23, no.
3, 1993. pp. 900-903.
[40] M.S. Obaidat and D.T. Maccairolo. An on-line neural network system
for computer access security. In IEEE Trans.Industrial Electronics, vol.
40, no. 2, 1993. pp. 806-813.
[41] M.S. Obaidat and B. Sadoun. Verification of computer users using
keystroke dynamics. In IEEE Trans. Systems, Man, and Cybernetics,
vol. 27, no. 2, 1997. pp. 367–397.
[42] University of Kansas IT Security Office. Choosing good passwords, 2004.
http://www.security.ku.edu/docs/doc-viewer.jsp?id=4.
[43] Tomas Olovsson.
A structured approach to computer security.
Technical report, Chalmers University of Technology, 1992.
http://www.asociacion-aecsi.es/doc/General Info/
[44] Donn B. Parker. Fighting Computer Crime: A New Framework for Protecting Information. Wiley, 2001. pp. 491-492.
[45] Thomas R. Peltier and Justin Peltier. Complete Guide to CISM Certification. AUERBACH, 2006.
[46] Charles P. Pfleeger and Shari Lawrence Pfleeger. Security in Computing
(4th Edition). Prentice Hall PTR, 2006.
[47] Fernando L. Podio and Jeffrey S. Dunn.
Biometric Authentication Technology: From the Movies to Your Desktop.
Technical report, Information Technology Laboratory, National Institute of Standards and Technology, 2001.
http://www.itl.nist.gov/div893/biometrics/Biometricsfromthemovies.pdf.
INTITUTO TECNOLÓGICO DE MORELIA
BIBLIOGRAFÍA
58
[48] Larry Roof and Dan Fergus. The Definitive Guide to the .NET Compact
Framework. Apress, 2003.
[49] Erik Rubin and Ronnie Yates. Microsoft .NET Compact Framework
Kick Start. Sams, 2003.
[50] Deborah Rumsey. Statistics for Dummies. For Dummies, 2003.
[51] Bruce Schneier. Applied Cryptography: Protocols, Algorithms, and
Source Code in C, Second Edition. Wiley, 1995.
[52] Bob Heard. Revolution or evolution?. SCMagazine. October 2003.
[53] Jae Shim. The International Handbook of Computer Security. Routledge,
2000.
[54] T. T. Soong. Fundamentals of Probability and Statistics for Engineers.
Wiley-Interscience, 2004.
[55] Eugene Spafford. Observing Reusable Password Choices. Technical report, Department of Computer Sciences, Purdue University, 1992. pp.
299–312.
[56] D. H. Stamatis. Six Sigma and Beyond: Statistics and Probability, Volume III. CRC, 2002.
[57] Mark Stamp. Information Security : Principles and Practice. WileyInterscience, 2005.
[58] D. Umphress and G. Williams. Identity Verification Through keyboard
Characteristics. International Journal of Man-Machine Studies, 1985.
pp. 263-273.
[59] Andy Wigley, Stephen Wheelwright, and Robert Burbidge. Microsoft
.NET Compact Framework (Core Reference). Microsoft Press, 2003.
[60] Wikipedia. Compaq Portable. http://en.wikipedia.org/wiki/Compaq Portable.
[61] Wikipedia. Palm OS. http://en.wikipedia.org/wiki/Palm OS.
[62] Wikipedia.
Personal
Digital
http://en.wikipedia.org/wiki/Personal digital assistant.
Assistants.
[63] Wikipedia. Smartphone. http://en.wikipedia.org/wiki/Smartphone.
[64] Wikipedia. TRS 80 Model 100. http://en.wikipedia.org/wiki/TRS-80.
INTITUTO TECNOLÓGICO DE MORELIA
BIBLIOGRAFÍA
59
[65] John D. Woodward. Army Biometric Applications: Identifying and Addressing Sociocultural Concerns. RAND Corporation, 2001.
[66] Jianxin Yan and Alan Blackwell and Ross Anderson. The Memorability
and Security of Passwords Some Empirical Results. Cambridge University Computer Laboratory, 2004. pp. 25-31.
[67] Yau Wei Yun.
The ’123’ of Biometric Technology.
Technical report, Information Technology Standards Committee, 2002.
http://www.itsc.org.sg/synthesis/2002/biometric.pdf.
INTITUTO TECNOLÓGICO DE MORELIA
Descargar