Biometría del Tecleo 1
Biometría del TecleoBiometría del Tecleo
Juan Alberto SigüenzaJuan Alberto Sigüenza
[email protected]@uam.es
““Keystroke Dynamics”Keystroke Dynamics”
Biometría del Tecleo 2
ContenidosHipótesisHipótesis Trabajos PreviosTrabajos Previos Ejemplo de Aplicación eCommerceEjemplo de Aplicación eCommerce El Problema del Tecleo en InternetEl Problema del Tecleo en Internet El Problema del ReconocimientoEl Problema del Reconocimiento
• Modelo BorrosoModelo Borroso• Modelo EstadísticoModelo Estadístico
ResultadosResultados• Curvas de AprendizajeCurvas de Aprendizaje• “ “Todos vs. Todos”Todos vs. Todos”• Índice de “Separabilidad”Índice de “Separabilidad”
Algunas conclusionesAlgunas conclusiones
Biometría del Tecleo 3
Hipótesis
¿Se puede autentificar a ¿Se puede autentificar a un usuario por su modo un usuario por su modo
de tecleo?de tecleo?
¿Cómo influye la dificultad de las secuencias de tecleo?
¿Qué nivel de entrenamiento necesita el usuario?
Biometría del Tecleo 4
Fundamentos
• Es el principal mecanismo de interacción de una persona con un ordenador.
• Es un proceso complejo que involucra muchos factores característicos del usuario, ya no sólo su físico externo como p.e. en el caso de las huellas dactilares, sino que llegamos a intentar medir indirectamente la propia configuración de los grupos neuronales del sistema nervioso del usuario, con los que generan este proceso de tecleo.
Biometría del Tecleo 5
-Echando la vista atrás podemos encontrar los orígenes de la
dinámica de tecleo en los primeros sistemas de telégrafos de
Estados Unidos, donde se empezó a observar cómo los
operadores eran capaces de identificarse entre sí, en diferentes
estaciones, por el ritmo de pulsaciones del código Morse que
generaban cada uno de ellos al transmitir los mensajes
codificados
W.L. Bryan, N. Halter, “Studies in the Physiology and Psychology of
the Telegraphic Language”.
The Psychology of Skill: Three studies, 1973.
Antecedente
Biometría del Tecleo 6
-Williams, Umphress, (1985)
-Se utilizaron dos conjuntos de entradas por cada usuario, el ‘reference
profile’ (entrenamiento) y el ‘test profile’ (explotación). Para cada tiempo de
tecleo entre dos pulsaciones se aproximó a la centésima de segundo más
próxima.
-El resultado del experimento reveló que cuando los profiles de reference y
test eran del mismo usuario el nivel de correlación era alto, mientras que si
eran distintos era un nivel medio. En general se observó que cuando un
supuesto ‘intruso’ se hacía pasar por otro usuario se obtenían bajas
puntuaciones de similitud.
Investigaciones preliminares
Biometría del Tecleo 7
Obaidat y col. 1993 , 1994, 1997
-Se comenzó utilizando tiempos entre pulsaciones de una secuencia fijada de caracteres y posteriormente se incluyeron “hold times”. Tiempo en milisegundos.
-Número reducido de usuarios (6-10).
-Se utilizaron técnicas de normalización.
-Reconocimiento con Redes neuronales, técnicas borrosas y RBF.
-Reconocimiento en torno al 98%
-FAR=8% y FRR=9%.
Trabajos Previos
Biometría del Tecleo 8
Eloff y de Ru 1997- Por un lado se capturaba la dificultad de tecleo de dos caracteres consecutivos, generando una puntuación de dificultad basada en la distancia sobre el teclado de las dos teclas pulsadas y el número de teclas que se debían de pulsar simultáneamente para generar el carácter requerido. Por otro lado se medía también el intervalo de tiempo entre dos pulsaciones consecutivas.
-El algoritmo de reconocimiento utilizado consistió en un modelo basado en comparación de plantillas o templates borrosos.
-Los resultados obtenidos con este modelo alcanzaron porcentajes de reconocimiento entre el 72 y el 100% en la identificación correcta del usuario real, y entre el 0% y el 15% de aceptación de usuarios falsos (intrusos).
Trabajos Previos
Biometría del Tecleo 9
Ej. Aplicación e-Commerce
Biometría del Tecleo 10
El Problema del Tecleo en Internet Composición de una muestra de tecleo:
• Interkey times.• Hold times.
El muestreo en Internet: independencia de la máquina.
Alternativas de muestreo:• Con tiempo.• Con ciclos máquina (pseudo-ciclos):
• Chequeo constante.• Disparo de eventos.
Normalización:• Por el Mínimo / Máximo.• Por la Media.
Biometría del Tecleo 11
El muestreo en detalle (I)
• Los prototipos desarrollados se basan en modelos de medición de ciclos máquina. Los ciclos máquina pueden medirse directamente utilizando lenguajes de bajo nivel y programando en ensamblador. Sin embargo, este tipo de lenguaje es específico de la plataforma para la que se vaya a desarrollar y por tanto no es una aproximación válida a la hora de desarrollar un sistema de comercio electrónico para Internet, donde las plataformas son heterogéneas y por razones de seguridad no se permite la ejecución de programas de bajo nivel en las máquinas clientes de los usuarios.
Biometría del Tecleo 12
El muestreo en detalle (II)
• Como alternativa se pueden medir los ciclos máquina de forma indirecta usando pseudo-ciclos máquina. Esto consiste en usar un lenguaje de medio/alto nivel para lanzar un contador con chequeo constante o por disparo de eventos de forma que no se cuentan directamente los ciclos máquina, sino estos multiplicados por un factor constante que corresponde al número de instrucciones máquina que compone la secuencia de cuenta en el lenguaje de medio/alto nivel elegido.
• A pesar de ser menos precisión que los ciclos máquina, veremos en los experimentos realizados que los pseudo-ciclos máquina son suficientes para el propósito buscado.
Biometría del Tecleo 13
Ejemplo: NormalizaciónExperimento: La secuencia = "mtm&mmcm". Interkey times.
(a)200 MHz: (media =11484)
Intervalo T Tm (mt) 8725 0.7597 (tm) 6316 0.5499 (m&) 24880 2.1664 (&m) 13438 1.1709 (mm) 9875 0.8598 (mc) 9540 0.8307 (cm) 7620 0.6635
(b) 50 MHz: (media =1789)
Intervalo T Tm (mt) 1263 0.7059 (tm) 1115 0.6232 (m&) 3868 2.1621 (&m) 2353 1.3152 (mm) 1420 0.7937 (mc) 1190 0.6651 (cm) 1316 0.7356
T: interkey times en pseudo-ciclos. Tm: normalización de T por la media.
Biometría del Tecleo 14
El Problema del Reconocimiento
• El Modelo BorrosoEl Modelo Borroso
• El Modelo EstadísticoEl Modelo Estadístico
Ejemplos:Ejemplos:
Biometría del Tecleo 15
Modelo borroso
• El prototipo basado en un modelo borroso (fuzzy), se apoya en el componente de razonamiento bajo incertidumbre implícito en el problema. Las entradas del sistema son pulsaciones de teclas que un usuario genera al interaccionar con el ordenador i.e. tiempos “más o menos” iguales. La idea es que si el usuario realiza una pulsación X y genera un tiempo de 12775 pseudo-ciclos, en una ocasión posterior con la misma pulsación X es de esperar que su comportamiento tecleando sea similar pero no exactamente el mismo, de forma que generaría un tiempo como 12434 pseudo-ciclos. Es decir, tiempos más o menos iguales.
Biometría del Tecleo 16
Modelo Borroso
Reglas Borrosas:Reglas Borrosas:R1. T muy corto U muy bueno.R2. T corto U bueno.R3. T normal U normal.R4. T largo U malo.R5. T muy largo U muy malo.
T: pseudociclos normalizados por la mediaU: categorización del usuario
Biometría del Tecleo 17
Reglas Borrosas:
1.Si T es muy corto, entonces U es muy bueno tecleando.2.Si T es corto, entonces U es bueno tecleando.3.Si T es normal, entonces U es normal tecleando.4.Si T es largo, entonces U es malo tecleando.5.Si T es muy largo, entonces U es muy malo tecleando.
(1) T es “muy corto”: Fs1(x) = 1/exp(4*(x-0.001)*(x-0.001)).(2) T es “corto”: Fs2(x) = 1/exp(12*(x-0.575)*(x-0.575)).(3) T es “normal”: Fs3(x) = 1/exp(7*(x-1.000)*(x-1.000)).(4) T es “largo”: Fs4(x) = 1/exp(10*(x-1.575)*(x-1.575)).(5) T es “muy largo”: Fs5(x) = 1/(1+exp(-4*x+8)).
(A) U es “muy malo” tecleando: Ft1(x) = triangle(x,0,200).(B) U es “malo” tecleando: Ft2(x) = triangle(x,250,200).(C) U es “normal” tecleando: Ft3(x) = triangle(x,500,200).(D) U es “bueno” tecleando: Ft4(x) = triangle(x,750,200).(E) U es “muy bueno” tecleando: Ft5(x) = triangle(x,1000,200).
Modelo Borroso
Valores calculadosempíricamente
(x, c, s)función triangular
de variable x, centrada en c
y de ancho de base 2 · s.
Biometría del Tecleo 18
Modelo Borroso
Biometría del Tecleo 19
Ejemplo: Modelo Borroso
Biometría del Tecleo 20
Modelo Estadístico• Estimación paramétrica.• Densidad normal de media μ y varianza σ² (N(μ,σ²)). • Estimación puntual de máx. verosimilitud. • Estimadores: μ,σ² muestrales.• Función de Scoring:
Ni(μ,σ²) fi(x; μ,σ²) = (1/√2 σ²π) exp( (-1/2 σ²) · (x- μ)²)
Smax = 1/√2 σ²π
S(x) = exp( (-1/2 σ²) · (x- μ)² )
Biometría del Tecleo 21
Ejemplo: Modelo EstadísticoPara el tiempo B, la puntuación que le corresponde es un 9% de semejanza con el usuario real, luego es muy probable que dicho tiempo no haya sido generado por él. Sin embargo, el caso A es lo contrario, es el caso perfecto donde el tiempo obtenido corresponde exactamente con la media de los tiempos generados anteriormente, y por tanto se obtiene una puntuación del 100%, i.e. es muy probable que el usuario real sea quien generó ese tiempo de tecleo.
Biometría del Tecleo 22
ResultadosResultados:Resultados:
• Curvas de Aprendizaje• “Todos vs. Todos”• Índice de “Separabilidad”
Secuencias de Tecleo:Secuencias de Tecleo:
Usuario Claveautonoma internetdespacho telefonosoftware hardwarecar&mil5 jim3eza$qzr$tmp9 ojm&xdw2alcn&ei3 ñzurb$1y
Biometría del Tecleo 23
Curvas de Aprendizaje
"autonoma"
0
0,2
0,4
0,6
0,8
1
1,21 3 5 7 9 11
13
15
17
Número de Muestra
Ps
eu
do
cic
losInterkey TimesInterkey Times
Biometría del Tecleo 24
Curvas de Aprendizaje
"alcn&ei3"
00,20,40,60,8
11,2
1 3 5 7 9 11 13 15Número de Muestra
Pseu
do
cic
losInterkey TimesInterkey Times
Biometría del Tecleo 25
“Todos vs. Todos”
Todos los Todos los voluntarios se voluntarios se hacen pasar hacen pasar por todos los por todos los
demás.demás.
1 3 5 7 9
11
S1
S3
S5
S7
S9
S11
0,9-1,2
0,6-0,9
0,3-0,6
0-0,3
1 3 5 7 9 11
S1
S3
S5
S7
S9
S11
0,9-1,2
0,6-0,9
0,3-0,6
0-0,3
“autonoma”
“alcn&ei3”
La diagonal más La diagonal más oscura indica que oscura indica que
los niveles de los niveles de reconocimiento son reconocimiento son máximos para cada máximos para cada
usuario con él usuario con él mismo.mismo.
Interkey TimesInterkey Times
ModeloModeloBorrosoBorroso
Biometría del Tecleo 26
“Todos vs. Todos”““autonoma”autonoma”
Biometría del Tecleo 27
Índice de “Separabilidad”Tiempos Entre pulsaciones De pulsaciones MixtoModelo Borroso 95% 93% 99%Modelo Estadístico 97% 94% 99%
Vol.1 Vol.2 Vol.3 Vol.4 Vol.5 Vol.6 Vol.7 Vol.8 Vol.9 Vol.10 Vol.11 Vol.12 Vol.13Serie 1 0,30951 0,11676 0,22163 0,19868 0,28739 0,19651 0,14319 0,1268 0,20997 0,24647 0,25162 0,14903 0,22108Serie 2 0,16518 0,42403 0,21834 0,2139 0,19654 0,26068 0,26842 0,20589 0,22862 0,20101 0,1945 0,25135 0,28376Serie 3 0,18365 0,17213 0,29631 0,17529 0,23028 0,1949 0,23873 0,09615 0,21939 0,22248 0,23256 0,27472 0,23098Serie 4 0,21836 0,15955 0,16223 0,25119 0,23803 0,14451 0,14038 0,04308 0,17878 0,22469 0,1859 0,08929 0,1249Serie 5 0,30675 0,17866 0,17228 0,18145 0,44871 0,24651 0,25572 0,13895 0,20359 0,22303 0,31813 0,22031 0,28987Serie 6 0,24695 0,15676 0,24709 0,22435 0,21947 0,41335 0,27894 0,09785 0,27569 0,20884 0,15051 0,25302 0,25661Serie 7 0,22628 0,24797 0,4115 0,11168 0,2465 0,33592 0,40383 0,24181 0,27229 0,30714 0,15433 0,44723 0,3117Serie 8 0,08684 0,20249 0,11776 0,0933 0,14932 0,22037 0,16268 0,26951 0,21456 0,27353 0,19857 0,28825 0,12537Serie 9 0,18723 0,21431 0,44839 0,11119 0,1974 0,31749 0,38235 0,24782 0,35194 0,23253 0,10772 0,39879 0,33238Serie 10 0,16876 0,28215 0,24024 0,09947 0,29081 0,33703 0,31765 0,20561 0,22628 0,29015 0,15175 0,27925 0,30621Serie 11 0,20978 0,22388 0,13803 0,17035 0,3055 0,19213 0,16803 0,17616 0,20178 0,21354 0,38273 0,21949 0,19639Serie 12 0,18923 0,15343 0,30382 0,06803 0,11427 0,30671 0,33962 0,28553 0,24399 0,23034 0,10408 0,52612 0,26665Serie 13 0,29073 0,1868 0,28749 0,17559 0,25083 0,34586 0,29906 0,19073 0,28429 0,29421 0,15773 0,28954 0,34811
#Fallos = 2 (serie 7) + 2 (serie 8) + 3 (serie 9) + 3 (serie 10) = 10#Total = #Elementos de la matriz excepto la diagonal = (13 · 13) – 13 = 156Indice de separabilidad = 1 – (#Fallos / #Total) = 1 – (10 / 156) = 0.93 = 93%
Biometría del Tecleo 28
Ejemplo: Gemelos UnivitelinosInterkey Times & Modelo BorrosoInterkey Times & Modelo Borroso
Biometría del Tecleo 29
Algunas conclusiones...•Área de Biometría:
• Se puede identificar a un usuario por su tecleo (incluso gemelos).• Secuencias sencillas funcionan mejor.• Se requiere poco entrenamiento (entorno a 10 muestras).
• Área de Internet:• Biometría del Tecleo I*net = normalización + herramientas abiertas.• Ideal B2C (business-to-customer): no-intrusivo y estándar.
• Área de Reconocimiento de Patrones:• Los interkey caracterizan mejor que hold, pero mixed supera ambos.
• Modelos borroso y estadístico permiten reconocer usuarios en I*net.