ES2967932T3 - Sistema y método para desentrañar características específicas de usuarios, acciones y dispositivos registrados en datos del sensor del movimiento - Google Patents
Sistema y método para desentrañar características específicas de usuarios, acciones y dispositivos registrados en datos del sensor del movimiento Download PDFInfo
- Publication number
- ES2967932T3 ES2967932T3 ES21703309T ES21703309T ES2967932T3 ES 2967932 T3 ES2967932 T3 ES 2967932T3 ES 21703309 T ES21703309 T ES 21703309T ES 21703309 T ES21703309 T ES 21703309T ES 2967932 T3 ES2967932 T3 ES 2967932T3
- Authority
- ES
- Spain
- Prior art keywords
- segments
- user
- translated
- processor
- mobile device
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/32—User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/316—User authentication by observing the pattern of computer usage, e.g. typical user behaviour
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/213—Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
- G06F18/2132—Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods based on discrimination criteria, e.g. discriminant analysis
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/217—Validation; Performance evaluation; Active pattern learning techniques
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0475—Generative networks
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/088—Non-supervised learning, e.g. competitive learning
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/09—Supervised learning
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/094—Adversarial learning
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/0985—Hyperparameter optimisation; Meta-learning; Learning-to-learn
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2218/00—Aspects of pattern recognition specially adapted for signal processing
- G06F2218/12—Classification; Matching
- G06F2218/16—Classification; Matching by matching signal segments
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/086—Learning methods using evolutionary algorithms, e.g. genetic algorithms or genetic programming
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Social Psychology (AREA)
- Medical Informatics (AREA)
- Physiology (AREA)
- Telephone Function (AREA)
- Image Analysis (AREA)
- User Interface Of Digital Computer (AREA)
- Collating Specific Patterns (AREA)
- Measuring Pulse, Heart Rate, Blood Pressure Or Blood Flow (AREA)
- Measurement And Recording Of Electrical Phenomena And Electrical Characteristics Of The Living Body (AREA)
Abstract
Se proporcionan métodos y sistemas para desenredar características discriminatorias de un usuario de un dispositivo de señales de movimiento y autenticar a un usuario en un dispositivo móvil. En al menos un aspecto de los métodos y sistemas, cada señal de movimiento capturada se divide en segmentos. Luego, los segmentos se convierten en segmentos traducidos utilizando uno o más algoritmos de traducción entrenados. Luego, los segmentos y los segmentos traducidos se proporcionan a un sistema de aprendizaje automático. Luego, las características discriminativas del usuario se extraen de los segmentos y los segmentos se traducen con el procesador utilizando el sistema de aprendizaje automático que aplica uno o más algoritmos de extracción de características. (Traducción automática con Google Translate, sin valor legal)
Description
DESCRIPCIÓN
Sistema y método para desentrañar características específicas de usuarios, acciones y dispositivos registrados en datos del sensor del movimiento
Referencia cruzada a solicitudes relacionadas
La presente solicitud se basa en y reivindica prioridad a la solicitud de patente provisional de EE.UU. N.° de serie: 62/957,653 titulada "System and Method for Disengling Features Specific to Users, Actions and Devices Recorded in Motion Sensor Data", presentada el 6 de enero de 2020.
Campo técnico
La presente solicitud se refiere a sistemas y métodos para extraer características de un usuario, y en particular, sistemas y métodos para extraer características discriminativas de un usuario de un dispositivo a partir de datos del sensor de movimiento relacionados con el usuario.
Antecedentes
Los sistemas estándar de aprendizaje automático (ML), diseñados para la identificación y autenticación de usuarios (propietarios) de teléfonos inteligentes basándose en datos del sensores de movimiento, sufren de graves caídas de rendimiento y precisión (por ejemplo, superiores al 10 %) cuando un atacante intenta autenticarse en el teléfono inteligente del propietario. Este problema se produce naturalmente cuando el sistema ML no puede desentrañar las características discriminativas del usuario de las características discriminativas del dispositivo de teléfono inteligente o las características discriminativas de la acción genérica (por ejemplo, coger el teléfono de la mesa, responder una llamada, etc.). El problema es causado por el hecho de que las señales registradas por los sensores de movimiento (por ejemplo, acelerómetro y giroscopio) durante una sesión de autenticación contienen todas estas características (representativas para el usuario, la acción y el dispositivo) juntas.
Un enfoque para resolver este problema es recoger señales de movimiento adicionales durante el registro de usuario al: (a) pedir al usuario que se autentique en múltiples dispositivos mientras realiza diferentes acciones (por ejemplo, sentarse en una silla, ponerse de pie, cambiar de manos, etc.) o (b) pedir al propietario del teléfono inteligente que permita a otra persona hacer algunas autenticaciones (para simular ataques potenciales). Sin embargo, ambas opciones son inconvenientes para el usuario.
Los siguientes documentos constituyen la técnica anterior relevante:
El documento US2019/286242A1;
El documento de MARIO FRANK ET AL: "Touchalytics: On the Applicability of Touchscreen Input as a Behavioral Biometric for Continuous Authentication", TRANSACCIONES IEE EN INFORMACIÓN FORENSE Y DE SEGURIDAD, vol. 8, n.° 1;
El documento de AKHIL MATHUR ET AL: "Using deep data augmentation training to address software and hardware heterogeneities in wearable and smartphone sensing devices", PROCESAMIENTO DE INFORMACIÓN EN REDES DE SENSORES, 11 de abril de 2018
Como tal existe la necesidad de una manera más fiable y eficiente para extraer las características discriminativas de un usuario de un dispositivo móvil.
Compendio
En un primer aspecto, se proporciona un método implementado por ordenador para desentrañar características discriminativas de un usuario de un dispositivo a partir de señales de movimiento capturadas por un dispositivo móvil. El dispositivo móvil tiene uno o más sensores de movimiento, un medio de almacenamiento, instrucciones almacenadas en el medio de almacenamiento, y un procesador configurado al ejecutar las instrucciones. En el método, cada señal de movimiento capturada se divide en segmentos, con el procesador. Los segmentos luego se convierten en segmentos traducidos con el procesador usando uno o más algoritmos de traducción entrenados. Los segmentos y los segmentos traducidos se proporcionan luego a un sistema de aprendizaje automático con el procesador. Las características discriminativas del usuario se extraen luego de los segmentos y los segmentos traducidos con el procesador usando el sistema de aprendizaje automático que aplica uno o más algoritmos de extracción de características.
En otro aspecto, las características discriminativas del usuario se usan para identificar al usuario con el uso futuro del dispositivo por el usuario. En otro aspecto, el uno o más sensores de movimiento comprenden al menos uno de un giroscopio y un acelerómetro. En otro aspecto, la una o más señales de movimiento corresponde a una o más interacciones entre el usuario y el dispositivo móvil.
En otro aspecto, las señales de movimiento incluyen características discriminativas del usuario, características discriminativas de acciones realizadas por el usuario y características discriminativas del dispositivo móvil. En un aspecto adicional, la etapa de dividir la una o más señales de movimiento capturadas en los segmentos elimina las características discriminativas de las acciones realizadas por el usuario. En un aspecto adicional, la etapa de convertir los segmentos en los segmentos traducidos elimina las características discriminativas del dispositivo móvil.
En otro aspecto, el uno o más algoritmos de traducción entrenados comprenden una o más redes generativas antagónicas consistentes en el ciclo (Ciclo-GAN), y los segmentos traducidos comprenden señales de movimiento sintéticas que simulan señales de movimiento que se originan desde otro dispositivo.
En otro aspecto, la etapa de dividir la una o más señales de movimiento capturadas en segmentos comprende dividir cada señal de movimiento en un número fijo de segmentos, donde cada segmento tiene una longitud fija.
En un segundo aspecto, se proporciona un método implementado por ordenador para autenticar a un usuario en un dispositivo móvil a partir de señales de movimiento capturadas por un dispositivo móvil. El dispositivo móvil tiene uno o más sensores de movimiento, un medio de almacenamiento, instrucciones almacenadas en el medio de almacenamiento, y un procesador configurado al ejecutar las instrucciones. En el método, la una o más señales de movimiento capturadas se dividen en segmentos con el procesador. Los segmentos se convierten en segmentos traducidos con el procesador usando uno o más algoritmos de traducción entrenados. Los segmentos y los segmentos traducidos se proporcionan a un sistema de aprendizaje automático con el procesador. Los segmentos y segmentos traducidos se clasifican luego como pertenecientes a un usuario autorizado o como pertenecientes a un usuario no autorizado con el procesador asignando una puntuación a cada uno de los segmentos y segmentos traducidos. Un esquema de votación o un modelo de metaaprendizaje se aplica luego en las puntuaciones asignadas a los segmentos y los segmentos traducidos con el procesador. Luego se determina, con el procesador, si el usuario es un usuario autorizado basándose en el esquema de votación o modelo de metaaprendizaje.
En otro aspecto, la etapa de clasificación comprende: comparar los segmentos y segmentos traducidos con características del usuario autorizado extraídos de segmentos de muestra proporcionados por el usuario autorizado durante un proceso de registro, donde las características se almacenan en el medio de almacenamiento; y asignar a cada segmento con una puntuación basándose en un modelo de clasificación.
En otro aspecto, el uno o más sensores de movimiento comprenden al menos uno de un giroscopio y un acelerómetro. En otro aspecto, la etapa de dividir la una o más señales de movimiento capturadas en segmentos comprende dividir cada señal de movimiento en un número fijo de segmentos, y cada segmento tiene una longitud fija. En otro aspecto, al menos una parte de los segmentos están solapados.
En otro aspecto, el uno o más algoritmos de traducción entrenados comprenden uno o más Ciclo-GAN, y la etapa de convertir comprende: traducir los segmentos a través de un primer generador en los segmentos traducidos, que imitan los segmentos generados en otro dispositivo; y volver a traducir los segmentos traducidos a través de un segundo generador para imitar los segmentos generados en el dispositivo móvil.
En otro aspecto, los segmentos traducidos comprenden señales de movimiento sintéticas que simulan señales de movimiento que se originan desde otro dispositivo. En otro aspecto, la etapa de proporcionar comprende: extraer, con el procesamiento usando una o más técnicas de extracción de características, características de los segmentos y segmentos traducidos para formar vectores de características; y emplear un modelo de clasificación aprendido en los vectores de características que corresponden a los segmentos y los segmentos traducidos.
En un tercer aspecto, se proporciona un sistema para desentrañar características discriminativas de un usuario de un dispositivo a partir de señales de movimiento capturadas en un dispositivo móvil y autenticar a un usuario en el dispositivo móvil, donde el dispositivo móvil tiene al menos un sensor de movimiento. El sistema incluye una interfaz de comunicación de red, un medio de almacenamiento legible por ordenador, y un procesador configurado para interactuar con la interfaz de comunicación de red y el medio de almacenamiento legible por ordenador y ejecutar uno o más módulos de software almacenados en el medio de almacenamiento. Los módulos de software incluyen:
un módulo de segmentación que cuando se ejecuta configura el procesador para dividir cada señal de movimiento capturada en segmentos;
un módulo de conversión que cuando se ejecuta configura el procesador para convertir los segmentos en segmentos traducidos usando una o más redes generativas antagónicas consistentes en el ciclo (Ciclo-GAN) entrenadas;
un módulo de extracción de características que cuando se ejecuta configura el procesador para extraer características discriminativas del usuario de los segmentos y segmentos traducidos, usando el procesador un sistema de aprendizaje automático;
un módulo de clasificación que cuando se ejecuta configura el procesador para asignar puntuaciones a los segmentos y segmentos traducidos y determinar si los segmentos y segmentos traducidos pertenecen a un usuario autorizado o a un usuario no autorizado basándose en sus puntuaciones respectivas; y
un módulo de metaaprendizaje que cuando se ejecuta configura el procesador para aplicar un esquema de votación o un modelo de metaaprendizaje en las puntuaciones asignadas a los segmentos y segmentos traducidos basándose en segmentos almacenados correspondientes al usuario.
En otro aspecto, el al menos un sensor de movimiento comprende al menos uno de un giroscopio y un acelerómetro.
En otro aspecto, el módulo de conversión configura el procesador para traducir los segmentos a través de un primer generador en los segmentos traducidos, que imitan los segmentos generados en otro dispositivo y volver a traducir los segmentos traducidos a través de un segundo generador para imitar los segmentos generados en el dispositivo móvil.
En otro aspecto, el módulo de extracción de características se configura además para emplear un modelo de clasificación aprendido en las características extraídas que corresponden a los segmentos y los segmentos traducidos.
Breve descripción de los dibujos
La Fig. 1A describe un diagrama de alto nivel de un sistema para desentrañar características discriminativas de un usuario de un dispositivo a partir de los datos del sensor de movimiento y autenticar un usuario a partir de los datos del sensor de movimiento, según al menos una realización descrita en la presente memoria; La Fig. 1B describe un diagrama de bloques de un sistema informático para desentrañar características discriminativas de un usuario de un dispositivo a partir de los datos del sensor de movimiento y autenticar un usuario a partir de los datos del sensor de movimiento, según al menos una realización descrita en la presente memoria;
La Fig. 1C describe un diagrama de bloques de módulos software para desentrañar características discriminativas de un usuario de un dispositivo a partir de los datos del sensor de movimiento y autenticar un usuario a partir de los datos del sensor de movimiento, según al menos una realización descrita en la presente memoria;
La Fig. 1D describe un diagrama de bloques de un sistema informático para desentrañar características discriminativas de un usuario de un dispositivo a partir de los datos del sensor de movimiento y autenticar un usuario a partir de los datos del sensor de movimiento, según al menos una realización descrita en la presente memoria;
La Fig. 2 es un diagrama que muestra un sistema de identificación de usuario de teléfono inteligente estándar ejemplar y un diagrama de flujo basado en aprendizaje automático, según una o más realizaciones;
La Fig. 3 es un diagrama mostrado de un sistema de dispositivo móvil y un diagrama de flujo ejemplares para la identificación del usuario eliminando de características discriminativas de la acción basándose en el aprendizaje automático, según una o más realizaciones;
La Fig. 4 es un diagrama de una red generativa antagónica consistente en el ciclo (Ciclo-GAN) ejemplar para la traducción de señal a señal, según una o más realizaciones;
Las Figs. 5A-5D muestran un sistema y diagrama de flujo para desentrañar características discriminativas de un usuario de un dispositivo móvil de los datos del sensor de movimiento y autenticar a un usuario a partir de los datos del sensor de movimiento, según una o más realizaciones;
La Fig. 6A describe un diagrama de bloques de alto nivel que muestra un flujo de cálculo para desentrañar características discriminativas de un usuario de un dispositivo a partir de datos del sensor de movimiento, según al menos una realización descrita en la presente memoria; y
La Fig. 6B describe un diagrama de bloques de alto nivel que muestra un flujo de cálculo para autenticar a un usuario en un dispositivo móvil a partir de datos del sensor de movimiento, según al menos una realización descrita en la presente memoria.
Descripción detallada de determinadas realizaciones
A modo de descripción general e introducción, se describen en la presente memoria sistemas y métodos ejemplares para extraer o desentrañar las características discriminativas de un usuario de teléfono inteligente a partir de las señales de movimiento y separarlas de las características que son útiles para discriminar la acción y discriminar el dispositivo, sin requerir que el usuario realice ninguna autenticación adicional durante el registro. Según una o más realizaciones del método, en una primera etapa, las características que discriminan las acciones se eliminan cortando la señal en fragmentos más pequeños y aplicando un sistema de aprendizaje automático en cada uno de estos fragmentos, independientemente. Debe entenderse que el término "eliminar" no significa necesariamente que las características de señal relacionadas con la acción (o dispositivo) se eliminen de la señal o señales de datos de movimiento resultantes. Más bien, el proceso elimina efectivamente la característica discriminativa de la acción ofuscando esas características discriminativas a través del procesamiento independiente de los fragmentos de señal. Dicho de otra manera, puesto que el sistema no puede reconstruir la señal completa de vuelta a partir de los fragmentos pequeños, la acción del usuario que corresponde a la señal de movimiento (por ejemplo, deslizar con dedo, gesto) ya no puede recuperarse e identificarse y, por lo tanto, se elimina de manera efectiva. En una segunda etapa, las características que discriminan el dispositivo se eliminan efectivamente empleando un modelo generativo, por ejemplo, redes generativas antagónicas, para simular sesiones de autenticación en un conjunto predefinido de dispositivos. El modelo generativo se entrena para tomar como entrada fragmentos de señales de un dispositivo y proporcionar como salida fragmentos similares de señales que reemplazan las características del dispositivo de entrada con características discriminativas para otros dispositivos en un conjunto predefinido. Después de infundir características de diferentes dispositivos en las señales de un determinado usuario, el sistema de aprendizaje automático puede aprender de los fragmentos de señal originales y fragmentos de señal simulados qué características no cambian entre dispositivos. Estas son las características que son útiles para discriminar al usuario en cuestión.
Los métodos y sistemas descritos en la presente memoria se pueden conectar a cualquier sistema de aprendizaje automático diseñado para la identificación y autenticación de usuario (propietario) de teléfono inteligente, por ejemplo. Los métodos y sistemas descritos se enfocan en las características discriminativas del usuario, mientras que eliminan las características que discriminan dispositivos y acciones. Los métodos y sistemas se validan en un conjunto de experimentos y los beneficios se demuestran empíricamente.
La Fig. 1A describe un diagrama de alto nivel del presente sistema 100 para desentrañar características discriminativas de un usuario de un dispositivo a partir de los datos del sensor de movimiento y autenticar un usuario a partir de los datos del sensor de movimiento según al menos una realización. Los presentes métodos pueden implementarse usando uno o más aspectos del presente sistema 100, como se describe con más detalle a continuación. En algunas implementaciones, el sistema 100 incluye una plataforma de servidor del sistema basada en la nube que se comunica con PCs fijos, servidores y dispositivos tales como teléfonos inteligentes, tabletas y ordenadores portátiles operados por los usuarios.
En una disposición, el sistema 100 comprende un servidor del sistema (servidor de backend) 105 y uno o más dispositivo(s) de usuario que incluyen uno o más dispositivo(s) 101 móvil(es). Aunque los presentes sistemas y métodos se describen generalmente como realizados, en parte, con un dispositivo móvil (por ejemplo, un teléfono inteligente), en al menos una realización, los presentes sistemas y métodos pueden implementarse en otros tipos de dispositivos informáticos, tales como estaciones de trabajo, un ordenador personal, ordenador portátil, dispositivos de control de acceso u otros ordenadores digitales apropiados. Por ejemplo, mientras que los dispositivos orientados al usuario como el dispositivo 101 móvil capturan típicamente las señales de movimiento, una o más de las operaciones de procesamiento ejemplares dirigidas a desentrañar las características discriminativas del usuario a partir de la señal de movimiento, y la autenticación/identificación pueden ser realizadas por el servidor 105 del sistema. El sistema 100 también puede incluir uno o más dispositivos 102 informáticos remotos.
El servidor 105 del sistema puede ser prácticamente cualquier dispositivo informático o aparato de procesamiento de datos capaz de comunicarse con los dispositivos de usuario y dispositivos informáticos remotos y recibir, transmitir y almacenar información electrónica y solicitudes de procesamiento como se describe con más detalle en la presente memoria. De manera similar, el dispositivo 102 informático remoto puede ser prácticamente cualquier dispositivo informático o aparato de procesamiento de datos capaz de comunicarse con el servidor del sistema o los dispositivos de usuario y recibir, transmitir y almacenar información electrónica y procesar solicitudes como se describe con más detalle en la presente memoria. También debe entenderse que el servidor del sistema o dispositivo informático remoto puede ser cualquier número de dispositivos informáticos en red o basados en la nube.
En una o más realizaciones, el(los) dispositivo(s) de usuario, el(los) dispositivo(s) 101 móvil(es) pueden configurarse para comunicarse entre sí, el servidor 105 del sistema o el dispositivo 102 informático remoto, transmitiendo información electrónica a los mismos y recibiendo información electrónica de los mismos. Los dispositivos de usuario pueden configurarse para capturar y procesar señales de movimiento del usuario, por ejemplo, correspondientes a uno o más gestos (interacciones) de un usuario 124.
El(Los) dispositivo(s) 101 móvil(es) pueden ser cualquier dispositivo informático móvil o aparato de procesamiento de datos capaz de realizar los sistemas y métodos descritos en la presente memoria, incluyendo, pero sin limitarse a, un ordenador personal, una tableta, un asistente digital personal, un dispositivo electrónico móvil, un teléfono celular o un dispositivo de teléfono inteligente y similares.
Debe observarse que, aunque la Fig. 1A representa el sistema 100 para desentrañar las características discriminativas de un usuario y la autenticación de usuario con respecto al(a los) dispositivo(s) 101 móvil(es) y un dispositivo 102 informático remoto, cualquier número de dichos dispositivos puede interactuar con el sistema de la manera descrita en la presente memoria. También debe observarse que aunque la Fig. 1A representa un sistema 100 para desentrañar características discriminativas de un usuario y autenticación con respecto al usuario 124, cualquier número de usuarios puede interactuar con el sistema de la manera descrita en la presente memoria.
Debe entenderse además que aunque los varios dispositivos informáticos y máquinas a los que se hace referencia en la presente memoria, incluyendo, pero sin limitarse a, el(los) dispositivo(s) 101 móvil(es) y el servidor 105 del sistema y el dispositivo 102 informático remoto se denominan en la presente memoria dispositivos y máquinas individuales o únicas, en determinadas implementaciones los dispositivos y máquinas a los que se hace referencia, y sus operaciones, características y funcionalidades asociadas o adjuntas pueden combinarse o disponerse o emplearse de otro modo a través de varios de dichos dispositivos o máquinas, tales como a través de una conexión de red o conexión por cable, como es conocido por los expertos en la técnica.
También debe entenderse que los sistemas y métodos ejemplares descritos en la presente memoria en el contexto del(de los) dispositivo(s) 101 móvil(es) (también denominado teléfono inteligente) no se limitan específicamente al dispositivo móvil y pueden implementarse usando otros dispositivos informáticos habilitados.
Con referencia ahora a la Fig. 1B, el dispositivo 101 móvil del sistema 100, incluye varios componentes de hardware y software que sirven para permitir la operación del sistema, incluyendo uno o más procesadores 110, una memoria 120, un micrófono 125, una pantalla 140, una cámara 145, una salida 155 de audio, un almacenamiento 190 y una interfaz 150 de comunicación. El procesador 110 sirve para ejecutar una aplicación cliente en la forma de instrucciones de software que pueden cargarse en la memoria 120. El procesador 110 puede ser cualquier número de procesadores, una de unidad de procesamiento central CPU, una unidad de procesamiento de gráficos GPU, un núcleo de multiprocesador, o cualquier otro tipo de procesador, dependiendo de la implementación.
Preferiblemente, la memoria 120 y/o el almacenamiento 190 son accesibles por el procesador 110, permitiendo así que el procesador reciba y ejecute instrucciones codificadas en la memoria y/o en el almacenamiento para hacer que el dispositivo móvil y sus varios componentes de hardware realicen operaciones para aspectos de los sistemas y métodos como se describirá en mayor detalle a continuación. La memoria puede ser, por ejemplo, una memoria de acceso aleatorio (RAM) o cualquier otro medio de almacenamiento legible por ordenador volátil o no volátil adecuado. Además, la memoria puede ser fija o extraíble. El almacenamiento 190 puede adoptar varias formas, dependiendo de la implementación. Por ejemplo, el almacenamiento puede contener uno o más componentes o dispositivos tales como un disco duro, una memoria flash, un disco óptico reescribible, una cinta magnética reescribible, o alguna combinación de los anteriores. El almacenamiento también puede ser fijo o extraíble.
Uno o más módulos 130 de software pueden codificarse en el almacenamiento 190 y/o en la memoria 120. Los módulos 130 de software pueden comprender uno o más programas de software o aplicaciones que tienen código de programa informático, o un conjunto de instrucciones ejecutadas en el procesador 110. En una realización a modo ejemplar, como se representa en la FIG. 1C, preferiblemente, entre los módulos 130 de software se incluye un módulo 170 de interfaz de usuario, un módulo 172 de extracción de características, un módulo 173 de segmentación, un módulo 174 de clasificación, un módulo 175 de metaaprendizaje, un módulo 176 de base de datos, un módulo 177 de comunicación y un módulo 178 de conversión que se ejecutan por el procesador 110. Dicho código o instrucciones de programa informático configuran el procesador 110 para realizar operaciones de los sistemas y métodos descritos en la presente memoria y se pueden escribir en cualquier combinación de uno o más lenguajes de programación.
Específicamente, el módulo 170 de interfaz de usuario puede comprender uno o más algoritmos para realizar etapas relacionadas con la captura de señales de movimiento de un usuario y la autenticación de la identidad del usuario. El módulo 172 de extracción de características puede comprender uno o más algoritmos de extracción de características (por ejemplo, algoritmos de aprendizaje automático) para realizar etapas relacionadas con la extracción de características discriminativas de los usuarios de segmentos y segmentos traducidos de las señales de movimiento del usuario. El módulo 173 de segmentación puede comprender uno o más algoritmos para realizar etapas relacionadas con la división de las señales de movimiento capturadas en segmentos. El módulo 178 de conversión comprende uno o más algoritmos de traducción para realizar etapas relacionadas con la conversión de los segmentos de señales de movimiento en segmentos traducidos. El módulo 174 de clasificación comprende uno o más algoritmos para realizar etapas relacionadas con la puntuación (por ejemplo, asignar probabilidades de clase a) los segmentos y segmentos traducidos. El módulo 175 de metaaprendizaje comprende uno o más algoritmos (por ejemplo, esquema de votación o un modelo de metaaprendizaje) para realizar etapas relacionadas con la integración de las puntuaciones asignadas a los segmentos y segmentos traducidos para identificar o rechazar al usuario que intenta autenticarse. El módulo 176 de base de datos comprende uno o más algoritmos para almacenar o guardar datos relacionados con las señales de movimiento, segmentos o segmentos traducidos a la base de datos 185 o almacenamiento 190. El módulo 177 de comunicación comprende uno o más algoritmos para transmitir y recibir señales entre los dispositivos 101, 102 y/o 105 informáticos del sistema 100.
El código de programa puede ejecutarse completamente en el dispositivo 101 móvil, como un paquete de software independiente, parcialmente en el dispositivo móvil, parcialmente en el servidor 105 del sistema, o completamente en el servidor del sistema u otro ordenador o dispositivo remoto. En el último escenario, el ordenador remoto puede conectarse al dispositivo 101 móvil a través de cualquier tipo de red, incluyendo una red de área local (LAN) o una red de área amplia (WAN), red de comunicaciones móviles, red celular, o la conexión puede realizarse a un ordenador externo (por ejemplo, a través de Internet usando un Proveedor de Servicios de Internet).
En una o más realizaciones, el código de programa de los módulos 130 de software y uno o más dispositivos de almacenamiento legibles por ordenador (tales como la memoria 120 y/o el almacenamiento 190) forman un producto de programa informático que puede fabricarse y/o distribuirse según la presente invención, como es conocido por los expertos en la técnica.
En algunas realizaciones ilustrativas, uno o más de los módulos 130 de software pueden descargarse a través de una red al almacenamiento 190 desde otro dispositivo o sistema a través de la interfaz 150 de comunicación para su uso dentro del sistema 100. Además, debe observarse que otra información y/o datos relevantes para la operación de los presentes sistemas y métodos (tales como la base de datos 185) también pueden almacenarse en el almacenamiento. Preferiblemente, dicha información se almacena en un almacén de datos encriptado que se asigna específicamente para almacenar de forma segura la información recogida o generada por el procesador que ejecuta la aplicación de autenticación segura. Preferiblemente, las medidas de encriptación se usan para almacenar la información localmente en el almacenamiento del dispositivo móvil y transmitir información al servidor 105 del sistema. Por ejemplo, dichos datos pueden encriptarse usando una encriptación polimórfica de 1024 bits, o, dependiendo de los controles de exportación, un método de encriptación AES de 256 bits. Además, la encriptación puede realizarse usando claves remotas (semillas) o claves locales (semillas). Se pueden usar métodos de encriptación alternativos como entenderían los expertos en la técnica, por ejemplo, SHA256.
Además, los datos almacenados en el(los) dispositivo(s) 101 móvil(es) y/o el servidor 105 del sistema pueden encriptarse usando los datos del sensor de movimiento de un usuario o la información del dispositivo móvil como una clave de encriptación. En algunas implementaciones, se puede usar una combinación de lo anterior para crear una clave única compleja para el usuario que se puede encriptar en el dispositivo móvil usando criptografía de curva elíptica, preferiblemente al menos 384 bits de longitud. Además, esa clave puede usarse para asegurar los datos de usuario almacenados en el dispositivo móvil o el servidor del sistema.
También, en una o más realizaciones, una base de datos 185 se almacena en el almacenamiento 190. Como se describirá con mayor detalle a continuación, la base de datos 185 contiene o mantiene varios elementos y elementos de datos que se usan a lo largo de las varias operaciones del sistema 100 y métodos para desentrañar las características discriminativas de un usuario y la autenticación de usuario. La información almacenada en la base de datos puede incluir, pero no se limita a, plantillas de datos del sensor de movimiento de usuario e información de perfil, como se describirá en mayor detalle en la presente memoria. Debe observarse que aunque la base de datos se representa como configurada localmente para el dispositivo 101 móvil, en determinadas implementaciones la base de datos o varios de los elementos de datos almacenados en la misma pueden, además o alternativamente, localizarse de forma remota (tal como en un dispositivo 102 remoto o servidor 105 del sistema - no mostrado) y conectarse al dispositivo móvil a través de una red de una manera conocida por los expertos en la técnica.
Una interfaz 115 de usuario también está conectada operativamente al procesador. La interfaz puede ser uno o más dispositivo(s) de entrada o salida tales como conmutador(es), botón(es), tecla(s), una pantalla táctil, micrófono, etc., como se entendería en la técnica de los dispositivos informáticos electrónicos. La interfaz 115 de usuario sirve para facilitar la captura de comandos del usuario tales como comandos de encendido-apagado o información de usuario y ajustes relacionados con la operación del sistema 100 para el reconocimiento del usuario. Por ejemplo, en al menos una realización, la interfaz 115 puede servir para facilitar la captura de determinada información desde el(los) dispositivo(s) 101 móvil(es), tal como información de usuario personal para registrarse en el sistema para crear un perfil de usuario.
El dispositivo 101 móvil también puede incluir una pantalla 140 que también está conectada operativamente al procesador 110. La pantalla incluye una pantalla o cualquier otro dispositivo de presentación de este tipo que permite que el sistema dé instrucciones o de otra manera proporcione retroalimentación al usuario con respecto a las operaciones del sistema 100 para desentrañar características discriminativas de un usuario y autenticación de usuario. A modo de ejemplo, la pantalla puede ser una pantalla digital tal como una pantalla de matriz de puntos u otra pantalla 2-dimensional.
A modo de ejemplo adicional, como es común en teléfonos inteligentes tales como el dispositivo 101 móvil, la interfaz y la pantalla pueden integrarse en una pantalla táctil. Por consiguiente, la pantalla también se usa para mostrar una interfaz gráfica de usuario, que puede visualizar varios datos y proporcionar "formularios" que incluyan campos que permiten la entrada de información por el usuario. Tocar la pantalla táctil en ubicaciones correspondientes a la visualización de una interfaz gráfica de usuario permite a la persona interactuar con el dispositivo para introducir datos, cambiar ajustes, funciones de control, etc. Por lo tanto, cuando se toca la pantalla táctil, la interfaz de usuario comunica este cambio al procesador, y los ajustes pueden cambiarse, o la información introducida por el usuario puede capturarse y almacenarse en la memoria.
El dispositivo 101 móvil también puede incluir una cámara 145 capaz de capturar imágenes digitales. El dispositivo 101 móvil o la cámara 145 también pueden incluir uno o más emisores de luz o señal (por ejemplo, LEDs, no mostrados), por ejemplo, un emisor de luz visible o emisor de luz infrarroja y similares. La cámara puede estar integrada en el dispositivo móvil, tal como una cámara frontal o una cámara trasera que incorpora un sensor, por ejemplo y sin limitación un sensor CCD o CMOS. Como entenderían los expertos en la técnica, la cámara 145 también puede incluir hardware adicional tal como lentes, medidores de luz (por ejemplo, medidores de lux) y otras características de hardware y software convencionales que se pueden usar para ajustar los ajustes de captura de imagen tales como zoom, enfoque, apertura, exposición, velocidad de obturador y similares. Alternativamente, la cámara puede ser externa al dispositivo 101 móvil. Las posibles variaciones de la cámara y de los emisores de luz las entenderían los expertos en la técnica. Además, el dispositivo móvil también puede incluir uno o más micrófonos 125 para capturar registros de audio como entenderían los expertos en la técnica.
La salida 155 de audio también está conectada operativamente al procesador 110. La salida de audio puede ser cualquier tipo de sistema de altavoces que esté configurado para reproducir archivos de audio electrónicos como entenderían los expertos en la técnica. La salida de audio puede estar integrada en el dispositivo 101 móvil o externa al dispositivo 101 móvil.
Varios dispositivos de hardware o sensores 160 también pueden conectarse operativamente al procesador. Por ejemplo, los sensores 160 pueden incluir: un reloj integrado para rastrear la hora del día, etc.; un dispositivo habilitado con GPS para determinar una ubicación del dispositivo móvil; un magnetómetro de gravedad para detectar el campo magnético de la Tierra para determinar la orientación 3-dimensional del dispositivo móvil; sensores de proximidad para detectar una distancia entre el dispositivo móvil y otros objetos; sensores de radiación de RF para detectar los niveles de radiación de RF; y otros dispositivos de este tipo que entenderían los expertos en la técnica.
El(Los) dispositivo(s) 101 móvil(es) también comprende un acelerómetro 135 y/o un giroscopio 136, que se configuran para capturar señales de movimiento del usuario 124. En al menos una realización, el acelerómetro también puede configurarse para rastrear la orientación y aceleración del dispositivo móvil. El dispositivo 101 móvil puede ajustarse (configurarse) para proporcionar los valores de acelerómetro y giroscopio al procesador 110 que ejecuta los varios módulos 130 de software, incluyendo, por ejemplo, el módulo 172 de extracción de características, el módulo 174 de clasificación y el módulo 175 de metaaprendizaje.
La interfaz 150 de comunicación también está conectada operativamente al procesador 110 y puede ser cualquier interfaz que permita la comunicación entre el dispositivo 101 móvil y dispositivos, máquinas y/o elementos externos que incluyen el servidor 105 del sistema. Preferiblemente, la interfaz de comunicación incluye, pero no se limita a, un módem, una tarjeta de interfaz de red (NIC), una interfaz de red integrada, un transmisor/receptor de radiofrecuencia (por ejemplo, Bluetooth, celular, NFC), un transmisor/receptor de comunicación por satélite, un puerto de infrarrojos, una conexión USB, y/o cualquier otra interfaz de este tipo para conectar el dispositivo móvil a otros dispositivos informáticos y/o redes de comunicación tales como redes privadas e Internet. Dichas conexiones pueden incluir una conexión por cable o una conexión inalámbrica (por ejemplo, usando el estándar 802.11) aunque debe entenderse que la interfaz de comunicación puede ser prácticamente cualquier interfaz que permita la comunicación hacia y desde el dispositivo móvil.
En varios puntos durante las operaciones del sistema 100 para desentrañar características discriminativas de un usuario y autenticación de usuario, el dispositivo 101 móvil puede comunicarse con uno o más dispositivos informáticos, tales como el servidor 105 del sistema, y/o el dispositivo 102 informático remoto. Dichos dispositivos informáticos transmiten y/o reciben datos hacia y desde el dispositivo 101 móvil, iniciando así preferiblemente, manteniendo y/o mejorando la operación del sistema 100, como se describirá con mayor detalle a continuación.
La Fig. 1D es un diagrama de bloques que ilustra una configuración ejemplar del servidor 105 del sistema. El servidor 105 del sistema puede incluir un procesador 210 que está conectado operativamente a varios componentes de hardware y software que sirven para permitir la operación del sistema 100 para desentrañar características discriminativas de un usuario y reconocimiento de usuario. El procesador 210 sirve para ejecutar instrucciones para realizar varias operaciones relacionadas con el reconocimiento de usuario como se describirá con mayor detalle a continuación. El procesador 210 puede ser varios procesadores, un núcleo de multiprocesador, o algún otro tipo de procesador, dependiendo de la implementación particular.
En determinadas implementaciones, una memoria 220 y/o un medio 290 de almacenamiento son accesibles por el procesador 210, permitiendo así que el procesador 210 reciba y ejecute instrucciones almacenadas en la memoria 220 y/o en el almacenamiento 290. La memoria 220 puede ser, por ejemplo, una memoria de acceso aleatorio (RAM) o cualquier otro medio de almacenamiento legible por ordenador volátil o no volátil adecuado. Además, la memoria 220 puede ser fija o extraíble. El almacenamiento 290 puede adoptar varias formas, dependiendo de la implementación particular. Por ejemplo, el almacenamiento 290 puede contener uno o más componentes o dispositivos tales como un disco duro, una memoria flash, un disco óptico reescribible, una cinta magnética reescribible, o alguna combinación de los anteriores. El almacenamiento 290 también puede ser fijo o extraíble.
Uno o más módulos 230 de software están codificados en el almacenamiento 290 y/o en la memoria 220. Uno o más de los módulos 230 de software pueden comprender uno o más programas de software o aplicaciones que tienen código de programa informático, o un conjunto de instrucciones ejecutadas en el procesador 210. En una realización, los módulos 230 de software pueden comprender uno o más de los módulos 130 de software. Dicho código de programa informático o instrucciones para realizar operaciones para aspectos de los sistemas y métodos descritos en la presente memoria pueden escribirse en cualquier combinación de uno o más lenguajes de programación, como entenderían los expertos en la técnica. El código de programa puede ejecutarse completamente en el servidor 105 del sistema como un paquete de software independiente, parcialmente en el servidor 105 del sistema y parcialmente en un dispositivo informático remoto, tal como un dispositivo 102 informático remoto, y/o dispositivo(s) 101 móvil(es) o completamente en dichos dispositivos informáticos remotos. En una o más realizaciones, como se representa en la Fig. 1B, preferiblemente, incluidos entre los módulos 230 de software están un módulo 172 de extracción de características, un módulo 173 de segmentación, un módulo 174 de clasificación, un módulo 175 de metaaprendizaje, un módulo 176 de base de datos, un módulo 177 de comunicación y un módulo 178 de conversión que puede ejecutarse por el procesador 210 del servidor del sistema.
También, preferiblemente almacenada en el almacenamiento 290 está una base de datos 280. Como se describirá con mayor detalle a continuación, la base de datos 280 contiene o mantiene varios elementos y elementos de datos que se utilizan a lo largo de las varias operaciones del sistema 100, incluyendo, pero sin limitarse a, perfiles de usuario como se describirá con mayor detalle en la presente memoria. Debe observarse que aunque la base de datos 280 se representa como configurada localmente al dispositivo 105 informático, en determinadas implementaciones la base de datos 280 o varios de los elementos de datos almacenados en la misma pueden almacenarse en una memoria legible por ordenador o medio de almacenamiento que se ubica de forma remota y se conecta al servidor 105 del sistema a través de una red (no mostrada), de una manera conocida por los expertos habituales en la técnica.
Una interfaz 250 de comunicación también está conectada operativamente al procesador 210. La interfaz 250 de comunicación puede ser cualquier interfaz que permita la comunicación entre el servidor 105 del sistema y dispositivos, máquinas o elementos externos. Preferiblemente, la interfaz 250 de comunicación incluye, pero no se limita a, un módem, una tarjeta de interfaz de red (NIC), una interfaz de red integrada, un transmisor/receptor de radiofrecuencia (por ejemplo, Bluetooth, celular, NFC), un transmisor/receptor de comunicación por satélite, un puerto de infrarrojos, una conexión USB, o cualquier otra interfaz de este tipo para conectar el dispositivo 105 informático a otros dispositivos informáticos y/o redes de comunicación, tales como redes privadas e Internet. Dichas conexiones pueden incluir una conexión por cable o una conexión inalámbrica (por ejemplo, usando el estándar 802.11) aunque debe entenderse que la interfaz 250 de comunicación puede ser prácticamente cualquier interfaz que permita la comunicación hacia y desde el procesador 210.
Las operaciones del sistema 100 y sus varios elementos y componentes se pueden apreciar adicionalmente con referencia a los métodos para desentrañar características discriminativas de un usuario y autenticación de usuario usando datos del sensor de movimiento como se describe a continuación con referencia a las Figs. 2, 3, 4, 5A-5D, 6A-6B, por ejemplo. Los procesos representados en la presente memoria se muestran desde la perspectiva del dispositivo 101 móvil y/o el servidor 105 del sistema, sin embargo, debe entenderse que los procesos pueden ser realizados, en su totalidad o en parte, por el(los) dispositivo(s) 101 móvil(es), el servidor 105 del sistema y/u otros dispositivos informáticos (por ejemplo, el dispositivo 102 informático remoto) o cualquier combinación de los anteriores. También debe apreciarse que se pueden realizar más o menos operaciones que las mostradas en las figuras y que han sido descritas en la presente memoria. Estas operaciones también se pueden realizar en un orden diferente al descrito en la presente memoria. También debe entenderse que una o más de las etapas pueden ser realizadas por el dispositivo 101 móvil y/o en otros dispositivos informáticos (por ejemplo, el servidor 105 del sistema y el dispositivo 102 informático remoto).
En la bibliografía reciente se han propuesto varios sistemas de autenticación de comportamiento de usuario (UBA) para usuarios de teléfonos inteligentes basándose en sensores de movimiento. Los sistemas modernos que obtienen tasas de precisión de nivel superior, se basan en los principios de aprendizaje automático (ML) y aprendizaje profundo para aprender modelos discriminativos, por ejemplo "N. Neverova, C. Wolf, G. Lacey, L. Fridman, D. Chandra, B. Barbello, G. Taylor. Learning Human Identity from Motion Patterns. IEEE Access, vol.
4, pp. 1810-1820, 2016". Sin embargo, dichos modelos se evalúan en conjuntos de datos recogidos de usuarios de teléfonos inteligentes, que tienen un usuario (el propietario legítimo) por dispositivo.
La Fig.2 muestra un sistema híbrido y un diagrama de flujo de proceso que muestra un sistema de identificación de usuario de teléfono inteligente estándar basándose en aprendizaje automático según una o más realizaciones. Específicamente, la Fig. 2 muestra un flujo de ejecución de un sistema 300 de UBA típico que puede implementarse usando teléfonos inteligentes. Como se muestra en la Fig. 2, en un sistema 300 de UBA típico, las señales de acelerómetro o giroscopio se registran durante cada sesión de autenticación o registro. Las señales se proporcionan luego como entrada a un sistema de aprendizaje automático. El sistema 300 extrae características y aprende un modelo en un conjunto de muestras de entrenamiento recogidas durante el registro de usuario. Durante la autenticación de usuario, el modelo entrenado clasifica las señales ya sea como pertenecientes al propietario (autorizando la sesión) o como pertenecientes a un usuario diferente (rechazando la sesión). A continuación se muestran etapas ejemplares específicas del sistema 300 de UBA:
1. Durante el registro o autenticación del usuario, capturar las señales de los sensores integrados tales como acelerómetro y giroscopio.
2. Dentro del sistema ML, extraer características relevantes de las señales, empleando un conjunto de técnicas de extracción de características.
3. Durante el registro, dentro del sistema ML, entrenar un modelo de clasificación en los vectores de características que corresponden a las señales registradas durante el registro de usuario.
4. Durante la autenticación, dentro del sistema ML, emplear el modelo de clasificación aprendido en el vector de características correspondiente para distinguir el usuario legítimo (propietario del teléfono inteligente) de los atacantes potenciales.
En esta configuración, el límite de decisión de los sistemas ML puede estar influenciado por las características discriminativas del dispositivo o la acción en lugar de por las características discriminativas del usuario. Se llevaron a cabo experimentos para probar esta hipótesis. Los resultados empíricos indican que en realidad es más fácil confiar en características que corresponden a dispositivos que en características que corresponden a usuarios. Esta cuestión no se ha señalado ni abordado en la bibliografía anterior. Sin embargo, esta cuestión se vuelve problemática cuando los atacantes pueden poner sus manos en un teléfono inteligente propiedad de un usuario legítimo y tratan de autenticarse en una aplicación que está protegida por un sistema de UBA. Además, los atacantes podrían hacerse pasar por el usuario legítimo después de un análisis exhaustivo e imitación de los movimientos realizados durante la autenticación. Si el sistema ML se basa en las características más prominentes que caracterizan el dispositivo o las acciones, es probable que conceda acceso al atacante a la aplicación. Por lo tanto, el sistema ML tendrá un aumento de tasa de falsos positivos y no podrá rechazar dichos ataques.
Con el fin de resolver este problema, el sistema 300 podría configurarse para pedir al usuario que se autentique en múltiples dispositivos, usando diferentes movimientos (por ejemplo, autenticarse con la mano izquierda, la mano derecha, mientras está sentado, de pie, etc.), y, con el fin de obtener muestras negativas del mismo dispositivo, el sistema 300 podría indicar al usuario que deje que otra persona haga varias sesiones de autenticación en su propio dispositivo. Sin embargo, todas estas son soluciones poco prácticas que conducen a un proceso de registro engorroso.
En consecuencia, se proporcionan en la presente memoria métodos y sistemas que proporcionan una solución práctica de dos etapas al problema intrínseco a los sistemas de UBA basándose en sensores de movimiento, a saber, que desentrañan las características discriminativas del usuario de las características discriminativas del dispositivo y la acción. En una o más realizaciones de la presente solicitud, los métodos descritos se componen de las siguientes dos etapas de procesamiento primarias:
1. Con el fin de eliminar las características que discriminan el movimiento o la acción del usuario (por ejemplo, deslizar el dedo, gesto), las señales de movimiento se cortan en fragmentos muy pequeños y se aplica un sistema ML en cada uno de los fragmentos individuales. Puesto que no se puede reconstruir toda la señal de vuelta a partir de estos fragmentos, los movimientos (acciones genéricas realizadas por el usuario) ya no se pueden identificar. Sin embargo, estos fragmentos pequeños de la señal original siguen conteniendo características discriminativas para el usuario y el dispositivo.
2. Con el fin de eliminar las características que discriminan el dispositivo, se aplica un conjunto de algoritmos de traducción (por ejemplo, modelos generativos tales como redes generativas antagónicas consistentes en el ciclo, para Ciclo-GAN cortos), con el fin de simular sesiones de autenticación en un conjunto predefinido de dispositivos. Los modelos generativos están entrenados para tomar fragmentos de señales como entrada y proporcionar como salida fragmentos similares que incluyen características de los dispositivos de nuestro conjunto predefinido. Después de infundir características de diferentes dispositivos en las señales de un determinado usuario, el sistema ML puede aprender qué características no cambian a través de los dispositivos. Estas son las características que ayudan a discriminar al usuario respectivo.
Usando uno o más algoritmos de traducción, tales como Ciclo-GAN, en la segunda etapa, se logra la traducción de comportamiento de usuario de teléfono inteligente a teléfono inteligente, lo que ayuda a enmascarar las características que describen los sensores de teléfono inteligente y a revelar las que dan forma al comportamiento de usuario. Una consecuencia positiva de aclarar el comportamiento legítimo del usuario es que el sistema de UBA se vuelve más vigilante y es más difícil de falsificar, es decir, se reduce la tasa de falsos positivos. En una o más realizaciones, los sistemas descritos (por ejemplo, el sistema 100) y los métodos proporcionan un sistema de UBA mejorado o pueden incorporarse alternativamente en un sistema de UBA convencional para mejorar el sistema de UBA existente.
Convencionalmente, los mecanismos de autenticación de dispositivos móviles comunes tales como PIN, contraseñas gráficas y escaneos de huellas dactilares ofrecen seguridad limitada. Estos mecanismos son susceptibles a suposiciones (o simulaciones en el caso de escaneos de huellas dactilares) y a ataques de canal lateral tales como los ataques por manchas, reflexión y captura de vídeo. Como resultado, los métodos de autenticación continua basándose en señales biométricas de comportamiento están en el punto de mira para tanto los campos académicos como los industriales.
El primer artículo de investigación que analiza los datos del acelerómetro con el fin de reconocer la marcha de un usuario de dispositivo móvil es"E. Vildjiounaite, S.-M. Makela, M. Lindholm, R. Rihimaki, V. Kyllonen, J. Mantyjarvi, H. Ailisto. Unobtrusive multimodal biometrics for ensuring privacy and information security with personal devices. En: Actas de la Conferencia Internacional sobre Computación Generalizada, 2006".
Desde entonces, la comunidad investigadora ha propuesto una variedad de sistemas de UBA, tales como:"N. Clarke, S. Furnell. Advanced user authentication for mobile devices. Computers & Security, vol. 26, n.° 2, 2007" y"P. Campisi, E. Maiorana, M. Lo Bosco, A. Neri. User authentication using keystroke dynamics for cellular phones. Signal Processing, IET, vol. 3, n.° 4, 2009",que se enfoca en la dinámica de pulsaciones de teclas, y"C. Shen, T. Yu, S. Yuan, S., Y. Li, X. Guan. Performance analysis of motion-sensor behavior for user authentication on smartphones. Sensors, vol. 16, n.° 3, pp. 345-365, 2016 ”,“A. Buriro, B. Crispo, F. Del Frari, K. Wrona. Hold & Sign: A Novel Behavioral Biometrics for Smartphone User Authentication. En: Proceedings of Security and Privacy Workshops, 2016", "G. Canfora, P. di Notte F. Mercaldo, C. A. Visaggio. A Methodology for Silent and Continuous Authentication in Mobile Environment. En: Proceedings of International Conference on E-Business and Telecommunications, pp. 241-265, 2016", "N. Neverova, C. Wolf, G. Lacey, L. Fridman, D. Chandra, B. Barbello, G. Taylor. Learning Human Identity from Motion Patterns. IEEE Access, vol. 4, págs.
1810-1820, 2016",que se enfoca en las técnicas de aprendizaje automático o profundo.
Los métodos presentados en la bibliografía de investigación o patentes no abordan el problema de las señales de movimiento que contienen características específicas para los usuarios, acciones y dispositivos en conjunto. Se han reportado altos niveles de rendimiento en los trabajos recientes, cuando los usuarios realizan autenticaciones, cada uno en su propio dispositivo. En esta configuración, no está claro si las tasas de precisión de alto nivel de los modelos de aprendizaje automático se deben a la capacidad de los modelos para discriminar entre usuarios o entre dispositivos. Este problema se produce porque cada usuario se autentica en su propio dispositivo y los dispositivos no se comparten entre los usuarios.
Los experimentos realizados con un conjunto de usuarios que realizan autenticaciones en un conjunto de dispositivos, de manera que cada usuario llega a autenticarse en cada dispositivo, revelan que en realidad es más fácil discriminar entre dispositivos (la precisión es de alrededor del 98 %) que discriminar entre usuarios (la precisión es de alrededor del 93 %). Esto sugiere que los sistemas de UBA presentados en la bibliografía de investigación y las patentes tienen más probabilidades de funcionar bien debido a que se basan en características específicas para los dispositivos en lugar de características específicas para los usuarios. Dichos sistemas son propensos a una alta tasa de falsos positivos (los atacantes son autorizados en el sistema), cuando los atacantes realizan autenticaciones en un dispositivo robado al propietario.
Puesto que este problema no se ha analizado en la bibliografía, al menos en el contexto de la identificación de usuarios basándose en señales de movimiento para sensores de teléfonos inteligentes, los sistemas y métodos descritos son los primeros en abordar la tarea de desentrañar las características específicas de los usuarios, acciones y dispositivos. En al menos una realización, el método comprende una o más de dos etapas/enfoques, uno que desentraña las características específicas para usuarios y dispositivos de las características específicas para acciones, y uno que desentraña las características específicas para usuarios de aquellas específicas para dispositivos.
Este último enfoque se inspira en investigaciones recientes en la transferencia de estilo de imagen basándose en Redes generativas antagónicas. En"I. Goodfellow, J. Pouget-Abadie, M. Mirza, B. Xu, D. Warde-Farley, S. Ozair, A. Courville, Y. Bengio. Generative Adversarial Nets. En: Proceedings of Advances in Neural Information Processing Systems, pp. 2672-2680, 2014", los autores introdujeron Redes generativas antagónicas (GAN), un modelo compuesto por dos redes neuronales, un generador y un discriminador, que generan nuevas imágenes (realistas) aprendiendo la distribución de muestras de entrenamiento a través de la minimización de la divergencia de Kullback-Leibler. Se propusieron varios otros enfoques basándose en GAN para mapear la distribución de un conjunto de imágenes de origen a un conjunto de imágenes de destino, es decir, realizar la transferencia de estilo. Por ejemplo, métodos tales como "J. Y. Zhu, T. Park, P. Isola, A. A. Efros. Unpaired image-to-image translation using cycle-consistent adversarial networks. En: Proceedings of IEEE International Conference on Computer Vision, pp 2223-2232, 2017" y "J. Kim, M. Kim, H. Kang, K. Lee. U-GAT-IT: Unsupervised generative attentional networks with adaptive layer-instance normalization for image-to-image translation. arXiv preprint arXiv:1907.10830, 2019" añade una pérdida de consistencia de ciclo entre las distribuciones de destino y de origen. Sin embargo, estos métodos existentes son específicos para la transferencia de estilo de imagen.
En una o más realizaciones de la presente solicitud, las redes neuronales generativas profundas se adaptan a los datos de señal de movimiento enfocándose en la transferencia de características de señales de datos del sensor de movimiento a señales, en el dominio del tiempo. Más específicamente, las capas convolucionales y las capas de agrupamiento que son componentes centrales de redes neuronales generativas profundas se modifican para realizar las operaciones convolucionales y de agrupamiento, respectivamente, solo en el dominio del tiempo. Adicionalmente, en al menos una realización, se emplean GAN consistentes en el ciclo para transferir señales en una configuración de múltiples dominios (por ejemplo, configuración de múltiples dispositivos que puede comprender 3 o más dispositivos). Por el contrario, las GAN existentes operan en el dominio de imagen, y se aplican para transferir estilo entre solo dos dominios (por ejemplo, entre imágenes naturales y pinturas).
Según una o más realizaciones, y como se mencionó anteriormente, con el fin de desentrañar las características discriminativas del usuario de las características discriminativas del dispositivo y la acción, se proporciona un método de dos etapas.
La primera etapa se basa esencialmente en el preprocesamiento de las señales, antes de darlas como entrada al sistema ML. El preprocesamiento consiste en dividir la señal en varios fragmentos. El número de fragmentos, su longitud, así como el intervalo usado para seleccionar los fragmentos son parámetros de la etapa de preprocesamiento propuesta, y pueden tener un impacto directo en la precisión y el tiempo. Por ejemplo, se establece un número fijo de fragmentos y una longitud fija para cada fragmento. En este caso, el intervalo para extraer fragmentos se calcula a partir de una señal teniendo en cuenta la longitud de la señal. Las autenticaciones más rápidas producirán señales más cortas y los fragmentos podrían solaparse, mientras que las autenticaciones más lentas producirán señales más largas y los fragmentos podrían no cubrir la señal completa (algunas partes se perderán). Otro ejemplo es fijar el intervalo y las longitudes de la señal, obteniendo un número diferente de fragmentos dependiendo de la longitud de las señales de entrada. También otro ejemplo es fijar el número de fragmentos y calcular los intervalos y las longitudes correspondientes con el fin de cubrir todas las señales de entrada. Todos los casos ejemplificados (y otros casos similares) están cubiertos por el enfoque de preprocesamiento de la presente solicitud realizado por los sistemas descritos. Los fragmentos resultantes se someten además a la extracción de características y al proceso de clasificación de un sistema de UBA ejemplar, como se ilustra en la Fig. 3.
La Fig. 3 visualiza un diagrama que muestra un sistema de dispositivo móvil y un diagrama 305 de flujo ejemplares para la identificación del usuario eliminando características discriminativas de la acción, basándose en el aprendizaje automático, según una o más realizaciones. En una realización, el proceso puede implementarse usando uno o más elementos del sistema 100 (por ejemplo, el dispositivo 100 móvil, solo, o junto con el servidor 105 del sistema). Como se muestra en la Fig. 3, las señales (señales de movimiento) 310 de acelerómetro o giroscopio son registradas por el dispositivo 101 móvil durante cada sesión de autenticación. Las señales 310 se dividen luego por el sistema (por ejemplo, el procesador del dispositivo 100 móvil y/o el servidor 105 del sistema) en N segmentos o fragmentos 315 más pequeños (potencialmente solapados). Los fragmentos 315 se consideran como muestras individuales y se proporcionan como entrada a un sistema de aprendizaje automático. El sistema de aprendizaje automático luego extrae las características y aprende un modelo a partir de un conjunto de muestras de entrenamiento durante el registro. Durante la autenticación de usuario, el sistema de aprendizaje automático clasifica los fragmentos 315 como pertenecientes al propietario o como pertenecientes a un usuario diferente. Puede aplicarse un enfoque de metaaprendizaje o un voto de mayoría (ponderado) en las etiquetas o puntuaciones asignadas a los fragmentos (extraídos de una señal registrada durante una sesión de autenticación) para autorizar o rechazar la sesión.
Los sistemas y métodos ejemplares descritos en la presente memoria pueden implementarse usando datos del sensor de movimiento capturados durante sesiones de autenticación implícita y/o explícita. La autenticación explícita se refiere a una sesión de autenticación en la que se le indica al usuario que realice una acción prescrita usando el dispositivo móvil. Por el contrario, la autenticación implícita se refiere a una sesión de autenticación de usuario que se realiza sin indicar explícitamente a un usuario que realice ninguna acción. El objetivo de dividir las señales 310 de movimiento en fragmentos 315, es decir, aplicar el preprocesamiento descrito anteriormente, es eliminar las características discriminativas de la acción. Durante la autenticación explícita o implícita, el usuario puede realizar diferentes acciones, aunque las autenticaciones explícitas pueden mostrar una variabilidad menor. De hecho, en las sesiones de autenticación explícita, es probable que el usuario siempre realice las mismas etapas, por ejemplo, escanear un código QR, apuntar el teléfono inteligente hacia la cara, colocar un dedo en el escáner de huellas dactilares, etc. Sin embargo, estas etapas pueden realizarse usando una mano (izquierda o derecha) o dos manos, el usuario puede realizarlos mientras está sentado en una silla, de pie o caminando. En cada uno de estos casos, las señales de movimiento registradas serán diferentes. Un problema puede aparecer si el usuario realiza las etapas de autenticación con una mano durante el registro y la otra mano durante la autenticación, puesto que el modelo ML entrenado no se generalizará bien a dichos cambios. En esta situación, un sistema convencional rechazará al usuario legítimo, teniendo así una alta tasa de falsos negativos. La misma situación es más frecuente en la autenticación de usuario implícita, es decir, mientras el usuario interactúa con alguna aplicación confidencial de datos, por ejemplo, una aplicación bancaria. En esta configuración, no solo la forma en que se mueven las manos o la postura del usuario, por ejemplo, puede ser diferente, sino también las acciones realizadas por el usuario (gestos de toque en diferentes ubicaciones en la pantalla, gestos de deslizamiento en diferentes direcciones, etc.). La forma más directa de separar (clasificar) dichas acciones es observar los cambios en las señales de movimiento a lo largo del tiempo, desde el comienzo del registro hasta el final. El objetivo aquí, sin embargo, es eliminar la capacidad del sistema para separar acciones. Si las señales 310 de movimiento se separan en fragmentos 315 pequeños, que se tratan independientemente, como es el enfoque implementado por una o más realizaciones del sistema descrito para desentrañar características discriminativas de un usuario de teléfono inteligente a partir de las señales de movimiento, el sistema ML ya no tendrá la oportunidad de observar toda la señal registrada como un todo. Al no saber qué fragmento va a donde, el sistema ML no podrá reconocer la acción, que solo es identificable observando todo el registro. Esto sucede debido a que volver a juntar los fragmentos en un orden diferente corresponderá a una acción diferente. Se observó que la etapa de preprocesamiento de señal de los presentes métodos mejora la precisión de reconocimiento en un 4 %, cuando los usuarios realizan un conjunto de acciones mientras entrenan el sistema ML, y un conjunto diferente de acciones durante las pruebas. Puesto que el sistema ML toma una decisión (por ejemplo, genera una etiqueta o calcula una puntuación) para cada fragmento, un esquema de votación o un modelo de metaaprendizaje puede ser aplicado por el sistema en el conjunto de decisiones (etiquetas o puntuaciones) correspondientes a una autenticación con el fin de determinar si el usuario que realiza la autenticación es legítimo o no.
Es bien sabido que los sensores de hardware pueden identificarse fácilmente observando la salida producida por estos sensores, debido a defectos integrados, como se detalla en"N. Khanna, A. K. Mikkilineni, A. F. Martone, G. N. Ali, G. T. C. Chiu, J. P. Allebach, E. J. Delp. A survey of forensic characterization methods for physical devices. Digital Investigation, vol. 3, págs. 17-28, 2006". Por ejemplo, en"K. R. Akshatha, A. K. Karunakar, H. Anitha, U. Raghavendra, D. Shetty camera identification using PRNU: A feature based approach. Digital Investigation, vol. 19, pp. 69-77, 2016", los autores describen un método para identificar una cámara de teléfono inteligente analizando las fotos capturadas, mientras que en"A. Ferreira, L. C. Navarro, G. Pinheiro, J. A. dos Santos, A. Rocha. Laser printer attribution: Exploring new features and beyond. Forensic Science International, vol. 247, págs. 105-125, 2015”, los autores presentan un enfoque para identificar un dispositivo de impresión láser analizando las páginas impresas. De manera similar, el acelerómetro y los sensores de giroscopio pueden identificarse de manera única analizando las señales de movimiento producidas. Esto significa que las señales de movimiento registradas durante el registro y la autenticación del usuario contendrán inherentemente características discriminativas del dispositivo. Basándose en los datos de sistemas anteriores, se ha determinado que es mucho más fácil identificar el teléfono inteligente basándose en las señales de movimiento registradas (la precisión es 98 %), que identificar a los usuarios (la precisión es 93 %) o las acciones (la precisión es 92 %).
Aunque la división de las señales en fragmentos elimina las características discriminativas para la acción, no alivia el problema causado por las características discriminativas para el dispositivo. El problema principal es que las características discriminativas del dispositivo y las características discriminativas del usuario (propietario del teléfono inteligente) están entremezcladas dentro de las señales de movimiento registradas durante el registro del usuario y dentro de los fragmentos resultantes después de nuestra etapa de preprocesamiento.
Según un aspecto destacado adicional, los sistemas y métodos para desentrañar las características discriminativas de un usuario de teléfono inteligente a partir de las señales de movimiento descritas en la presente memoria proporcionan una solución a este problema que no requiere que el usuario (propietario de teléfono inteligente) realice etapas adicionales además del registro estándar usando un solo dispositivo. Los métodos y sistemas descritos para desentrañar características discriminativas de un usuario de un dispositivo de datos del sensor de movimiento y autenticar un usuario a partir de los datos del sensor de movimiento se inspiran, en parte, por el éxito de redes generativas antagónicas consistentes en el ciclo en traducción de imagen a imagen con transferencia de estilo. Como se muestra en "J. Y. Zhu, T. Park, P. Isola, A. A. Efros. Unpaired image-to-image translation using cycle-consistent adversarial networks. En: Proceedings of IEEE International Conference on Computer Vision, pp. 2223-2232, 2017", un Ciclo-GAN puede reemplazar el estilo de una imagen con un estilo diferente, mientras que mantiene su contenido. De manera similar, los sistemas y métodos descritos reemplazan el dispositivo usado para registrar una señal de movimiento con un dispositivo diferente, mientras que mantienen las características discriminativas del usuario. Sin embargo, como se ha indicado anteriormente, los métodos existentes eran específicos para la transferencia de estilo de imagen, mientras que el enfoque descrito en la presente memoria se dirige específicamente a la transferencia de características desde las señales de datos del sensor de movimiento de un dispositivo particular a señales simuladas para otro dispositivo, en el dominio del tiempo.
En consecuencia, en una o más realizaciones, el sistema 100 implementa al menos un algoritmo de traducción, tal como un Ciclo-GAN, para la traducción de señal a señal, como se ilustra en la Fig. 4. Específicamente, la Fig. 4 es un diagrama de una red generativa antagónica consistente en el ciclo (Ciclo-GAN) 400 ejemplar para la traducción de señal a señal según una o más realizaciones. Como se muestra en la Fig. 4 y según al menos una realización, una señal de entrada x, registrada en un dispositivo X, se traduce usando el generador G, para hacer parecer como si se hubiera registrado en un dispositivo diferente Y. La señal se vuelve a traducir al dispositivo original X usando el generador F. Un discriminador D<y>discrimina entre las señales registradas en el dispositivo Y y las señales generadas por G. El generador G se optimiza para engañar al discriminador D<y>, mientras que el discriminador D<y>se optimiza para separar las muestras, de una manera antagónica. Además, la red generativa antagónica (formada por los generadores G y F y el discriminador D<y>) se optimiza para reducir el error de reconstrucción calculado después de traducir la señal x de vuelta al dispositivo original X. En al menos una realización, la optimización se realiza usando el descenso de gradiente estocástico (o una de sus muchas variantes), un algoritmo que se usa comúnmente para optimizar redes neuronales, como entenderían los expertos en la técnica. Los gradientes se calculan con respecto a una función de pérdida y se propagan hacia atrás a través de la red neuronal usando la regla de la cadena, como entenderían los expertos en la técnica. En una o más realizaciones, la optimización de redes neuronales se puede realizar usando algoritmos evolutivos. Sin embargo, debe entenderse que los métodos descritos no se limitan a la optimización por descenso de gradiente o algoritmos evolutivos.
La adición del error de reconstrucción a la función de pérdida global garantiza la consistencia del ciclo. Además de traducir del dispositivo X al dispositivo Y, el Ciclo-GAN se entrena simultáneamente para transferir del dispositivo Y al dispositivo X. Por lo tanto, al final, los sistemas y métodos descritos traducen las señales en ambas direcciones. En una o más realizaciones, la función de pérdida usada para entrenar el Ciclo-GAN para la traducción señal a señal en ambas direcciones es:
<ciclo>-GAN(G’ F’ Dx>DY,xry) = £GAN(G,DY,x,y)<+>£c,an(F'Dx>x,y) A - £ C^ 0<(>G,F,x,y<),>
donde:
G y F son generadores;
DxyDyson discriminadores;
x eyson señales de movimiento (fragmentos) del dispositivo X y el dispositivoY,respectivamente;
Aes el parámetro que controla la importancia de la consistencia cíclica con respecto a la pérdida de GAN;
# W M y , * , y ) = Ey~paatoAy)\l09(DY(y))} £’x~pdatos(x) [log(l - M Gto ) ) ] es
la pérdida por entropía cruzada que corresponde a la traducción del dispositivo X al dispositivoY,donde E[^] es el valor esperado y Pdatos( )^ es la distribución de probabilidad de muestras de datos;
pérdida por entropía cruzada que corresponde a la traducción del dispositivoYal dispositivo X;
es la suma de las pérdidas de consistencia cíclica para ambas traducciones, donde II J | es la normal li.
Además de o como alternativa al ciclo GAN, el modelo U-GAT-IT introducido en "J. Kim, M. Kim, H. Kang, K. Lee. U-GAT-IT: Unsupervised generative attentional networks with adaptive layer-instance normalization for image-to-image translation. arXiv preprint arXiv:1907.10830, 2019" puede incorporarse en los presentes sistemas y métodos para traducción de señal a señal. El modelo U-GAT-IT incorpora módulos de atención, tanto en el generador como en el discriminador, y una función de normalización (Normalización de Instancia de Capa Adaptativa), con el fin de mejorar la traducción del dominio de origen al dominio de destino. Los mapas de atención se obtienen con un clasificador auxiliar, mientras que los parámetros de la función de normalización se aprenden durante el entrenamiento. En al menos una realización, la función de pérdida usada para entrenar U-GAT-IT es:
donde:
• G y F son generadores;
•DxyDyson discriminadores;
• x eyson señales de movimiento (fragmentos) del dispositivo X y el dispositivoY,respectivamente;
• A1 ,Á2 , Á3yÁ4;son parámetros que controlan la importancia de los varios componentes de pérdida;
es la pérdida de mínimos cuadrados que corresponde a la traducción del dispositivo X al dispositivo Y;
pérdida de mínimos cuadrados que corresponde a la traducción del dispositivoYal dispositivo X;
de pérdidas de consistencia cíclica para tanto traducciones como / / a / / 1 es la normal I1 ;
- , .............................. es la suma
de las pérdidas de ide ntidad que ga rantizan que las distribuciones de amplitud de las señales de entrada y salida sean similares;
es la suma de las pérdidas de mínimos cuadrados
que introducen los mapas de atencón.
En una o más realizaciones, con el fin de obtener resultados de transferencia que se generalizan a través de múltiples dispositivos, se usan varios modelos de Ciclo-GAN (o U-GAT-IT) para transferir señales entre varios pares de dispositivos. En al menos una realización, se establece un número fijo de teléfonos inteligentes T y se recogen señales de movimiento de cada uno de los dispositivos T. En una o más realizaciones, se establece un número fijo de usuarios que realizan el registro en cada uno de los dispositivos T. La recogida de datos se hace antes de que el sistema de UBA se despliegue en producción, es decir, nunca se pide a los usuarios finales que realicen registros en los dispositivos T, lo que sería inviable. El número de Ciclo-GAN entrenados es T, de manera que cada Ciclo-GAN aprende a traducir las señales de un dispositivo particular a todos los otros dispositivos y viceversa, como se ilustra en las Figs. 5A-5D, que se analizan con más detalle a continuación.
Un objetivo de los sistemas y métodos descritos en la presente memoria es obtener modelos genéricos de Ciclo-GAN que pueden traducir una señal capturada en algún dispositivo original a uno de los dispositivos T en el conjunto, independientemente del dispositivo original. En al menos una realización, el mismo alcance se puede lograr usando diferentes arquitecturas de GAN, varias profundidades de redes, tasas de aprendizaje o algoritmos de optimización. La capacidad de generalización se garantiza aprendiendo a traducir de múltiples dispositivos a uno solo en lugar de simplemente aprender a traducir de un dispositivo a otro. Por lo tanto, los algoritmos de traducción (por ejemplo, Ciclo-GAN) de las realizaciones descritas pueden aplicarse para traducir una señal capturada en el dispositivo de algún usuario a uno de los dispositivos T en el conjunto, sin conocer al usuario o tener información sobre el dispositivo que está usando, durante el entrenamiento de los algoritmos de traducción (por ejemplo, modelos Ciclo-GAN). Cada vez que la señal original se traduce a uno de los dispositivos T, las características del dispositivo del propietario se reemplazan con las características de un dispositivo determinado del conjunto de dispositivos T, mientras que se mantienen las características específicas para el usuario. Alimentando tanto las señales originales como las traducidas al sistema ML según una o más realizaciones del sistema para desentrañar características discriminativas de un usuario de un dispositivo a partir de los datos del sensor de movimiento, el sistema ML ya no puede aprender características discriminativas específicas del dispositivo original. Esto sucede debido a que el sistema ML se configura para colocar (clasificar) señales originales y traducidas en la misma clase, y la manera más relevante para obtener un límite de decisión de este tipo es observando las características que son discriminativas para el usuario.
Realizaciones ejemplares
Las realizaciones ejemplares de los presentes sistemas y métodos se analizan con mayor detalle a continuación con referencia a las Figs. 5A-5D, 6A-6B, y 1A-1D, junto con aplicaciones prácticas de las técnicas y otros escenarios prácticos donde se pueden aplicar los sistemas y métodos para desentrañar características discriminativas de un usuario de un dispositivo y autenticación basándose en señales de movimiento capturadas por sensores de movimiento del dispositivo móvil.
En una o más realizaciones, los métodos descritos en la presente memoria proporcionan un proceso de ejecución de UBA modificado. El proceso de ejecución de UBA modificado puede desentrañar las características discriminativas del usuario de las características discriminativas de las acciones y los dispositivos, como se ejemplifica en las Figs. 5A-5D. Las Figs. 5A-5D muestran un sistema y diagrama de flujo para desentrañar características discriminativas de un usuario de un dispositivo móvil de los datos del sensor de movimiento y autenticar a un usuario según una o más realizaciones. Las etapas en el diagrama de flujo de las Figs. 5A-5D se puede realizar usando el sistema ejemplar para desentrañar características discriminativas de un usuario de un dispositivo a partir de datos del sensor de movimiento que incluyen, por ejemplo, el dispositivo 101 móvil y/o el servidor 105 del sistema del sistema 100. Las etapas en el diagrama de flujo de las Figs. 5A-5D se detallan a continuación:
1. Durante el registro o autenticación del usuario, las señales 310 de movimiento son capturadas por el dispositivo 101 móvil desde los sensores integrados tales como un acelerómetro y un giroscopio.
2. Las señales 310 de movimiento se dividen en fragmentos más pequeños 315.
3. Usando un conjunto de Ciclo-GAN 400 entrenados, se generan nuevas señales 500 (señales traducidas), simulando la sesión de autenticación del usuario en otros dispositivos.
4. Dentro del sistema ML 505, las características relevantes se extraen de los fragmentos de señal originales y traducidos para formar vectores de características, empleando un conjunto de técnicas de extracción de características.
5. Durante el registro, dentro del sistema ML 505, se entrena un modelo de clasificación en los vectores de características que corresponden a los fragmentos 500 de señal registrados y traducidos.
6. Durante la autenticación, dentro del sistema ML 505, el modelo de clasificación aprendido se emplea en los vectores de características que corresponden a los fragmentos de señal registrados y traducidos.
7. Durante la autenticación, para distinguir el usuario legítimo (propietario de un teléfono inteligente) de los posibles atacantes, se emplea un esquema de votación o un modelo de metaaprendizaje en las puntuaciones o etiquetas obtenidas para los fragmentos registrados y traducidos que corresponden a una sesión de autenticación.
Estas etapas y otras se describen y ejemplifican con más detalle en los siguientes métodos ejemplares de las Figs. 6A-6b .
Según una o más realizaciones, la Fig. 6A describe un diagrama de bloques de alto nivel que muestra un flujo de cálculo para desentrañar características discriminativas de un usuario de un dispositivo a partir de datos del sensor de movimiento. En una o más realizaciones, el método de la figura 6A puede ser realizado por los presentes sistemas, tales como el sistema 100 ejemplar de la figura 1A. Aunque muchas de las siguientes etapas se describen como realizadas por el dispositivo 101 móvil (Fig. 1A), en determinadas realizaciones, una o más de las siguientes etapas pueden ser realizadas por el servidor del sistema (servidor de backend) 105, que está en comunicación con el dispositivo 101 móvil.
Con referencia a la Fig. 5A y las Figs. 1A-1D, el proceso comienza en la etapa S105, donde el procesador del dispositivo 101 móvil se configura, ejecutando uno o más módulos de software (por ejemplo, el módulo 170 de interfaz de usuario), para hacer que al menos un sensor de movimiento (por ejemplo, el acelerómetro 135, el giroscopio 136) del dispositivo móvil capture datos del usuario en la forma de una o más señales de movimiento. En una o más realizaciones, las señales de movimiento son señales de múltiples ejes que corresponden al movimiento físico o interacciones del usuario con el dispositivo recogidas durante un dominio de tiempo especificado desde el al menos un sensor de movimiento del dispositivo móvil. El movimiento físico del usuario puede estar en la forma de un "gesto", (por ejemplo, toque con el dedo o deslizar el dedo) u otra interacción física con el dispositivo móvil (por ejemplo, recoger el dispositivo móvil). Por ejemplo, los sensores de movimiento pueden recoger o capturar señales de movimiento que corresponden al usuario que escribe su firma en el aire (una interacción "explícita") o al usuario que toca su teléfono (una interacción "implícita"). Como tal, las señales de movimiento contienen características que son específicas para (discriminativas de) el usuario, la acción realizada por el usuario (por ejemplo, gesto), y el dispositivo móvil particular.
En una o más realizaciones, la recogida o captura de señales de movimiento por los sensores de movimiento del dispositivo móvil se puede realizar durante una o más ventanas de tiempo predeterminadas, que son preferiblemente ventanas de tiempo cortas. Por ejemplo, en al menos una realización, la ventana de tiempo puede ser de aproximadamente 2 segundos. En al menos una realización, tal como durante el registro de un usuario, el dispositivo móvil puede configurarse para recoger (capturar) señales de movimiento del usuario que indican al usuario que haga un gesto particular o interacción explícita. Además, en al menos una realización, el dispositivo móvil puede configurarse para recoger señales de movimiento sin indicar nada al usuario, de manera que las señales de movimiento recogidas representan gestos o interacciones implícitos del usuario con el dispositivo móvil. En una o más realizaciones, el procesador del dispositivo 101 móvil puede configurarse, ejecutando uno o más módulos de software (por ejemplo, el módulo 176 de base de datos) para guardar las señales de movimiento capturadas en la base de datos 185 del dispositivo móvil o, alternativamente, las señales de movimiento capturadas pueden guardarse en la base de datos 280 del servidor 105 de backend.
En la etapa S110, el procesador del dispositivo móvil se configura, ejecutando uno o más módulos de software (por ejemplo, el módulo 173 de segmentación), para dividir la una o más señales de movimiento capturadas en segmentos. Específicamente, las señales de movimiento capturadas se dividen en N número de fragmentos o segmentos más pequeños. Como se analizó anteriormente, los sistemas y métodos descritos se configuran, en parte, para abordar la cuestión de distinguir, en señales de movimiento, características que son específicas o únicas para un usuario particular y características que son discriminativas de la acción realizada por el usuario. Como tal, dividiendo las señales de movimiento en segmentos, se eliminan las características discriminativas de las acciones realizadas por el usuario. En una o más realizaciones, la etapa de dividir la una o más señales de movimiento capturadas en segmentos comprende dividir cada señal de movimiento en un número fijo de segmentos, y cada segmento tiene una longitud fija. En una o más realizaciones, al menos algunos de los segmentos o fragmentos son segmentos o fragmentos solapados.
Con referencia continua a la figura 5A, en la etapa S115, el procesador del dispositivo móvil se configura, ejecutando uno o más módulos 530 de software (por ejemplo, el módulo 178 de conversión), para convertir los segmentos en segmentos traducidos usando uno o más algoritmos de traducción entrenados, tales como redes generativas antagónicas consistentes en el ciclo (Ciclo-GAN). Como se analizó anteriormente, los sistemas y métodos descritos se configuran, en parte, para abordar la cuestión de distinguir, en señales de movimiento, entre características que son específicas o únicas para un usuario particular y características que son discriminativas del dispositivo móvil del usuario. Convirtiendo los segmentos en segmentos traducidos usando Ciclo-GAN, el presente método elimina efectivamente las características discriminativas del dispositivo móvil a partir de la(s) señal(es) de datos de movimiento recogida(s) proporcionada(s) al modelo ML.
Más específicamente, según una o más realizaciones, los fragmentos/segmentos se consideran que son muestras individuales, y estos fragmentos/segmentos se proporcionan como la entrada al uno o más algoritmos de traducción (por ejemplo, Ciclo-GAN). En una o más realizaciones que utilizan Ciclo-GAN, cada Ciclo-GAN se entrena fuera de línea en un conjunto de datos separado de señales de movimiento recogidas en un conjunto predefinido, T, de diferentes dispositivos. Dado un segmento como la entrada, el Ciclo-GAN convierte cada segmento en un segmento traducido de manera que el segmento traducido corresponde a un segmento como se hubiera registrado en un dispositivo del conjunto predefinido de dispositivos T que es diferente del dispositivo móvil del usuario. En otras palabras, los segmentos traducidos comprenden una o más señales de movimiento sintéticas que simulan señales de movimiento que se originan otro dispositivo. Por ejemplo, el segmento de entrada de la señal de movimiento x registrada en un dispositivo X se traduce usando un Ciclo-GAN (generador) G, para hacer parecer que se registró en un dispositivo diferente Y.
Cada vez que se traduce un segmento original usando uno de los Ciclo-GAN, las características del propio dispositivo del usuario se reemplazan con las características de un determinado dispositivo del conjunto predefinido de dispositivos T, mientras que se mantienen las características específicas para el usuario. Como se mencionó anteriormente, un objetivo del proceso es separar las características en las señales de movimiento que son específicas (discriminativas) del usuario y aquellas características que son meramente específicas (discriminativas) de un dispositivo utilizado por el usuario. Por lo tanto, según al menos una realización, para obtener resultados específicos para el usuario de manera que el usuario pueda identificarse a través de múltiples dispositivos, se usan varios modelos de Ciclo-GAN (o U-GAT-IT u otros algoritmos de traducción) para traducir los segmentos entre varios dispositivos. En una o más realizaciones, se establece un número fijo de dispositivos (por ejemplo, teléfonos inteligentes) T y se recogen segmentos de señales de movimiento de cada uno de los dispositivos T. También se establece un número fijo de usuarios que realizan el registro en cada uno de los dispositivos T. Como tal, se entrena un número de Ciclo-GAN establecido de manera que cada Ciclo-GAN aprende a traducir los segmentos de un dispositivo particular a todos los otros dispositivos en el conjunto y viceversa, como se ilustra en la Fig. 4A. Por lo tanto, según al menos una realización, el presente sistema da como resultado modelos genéricos de Ciclo-GAN que pueden traducir una señal capturada en algún dispositivo original a otro dispositivo en un conjunto predefinido de dispositivos T, independientemente del dispositivo original.
Cabe señalar que, en al menos una realización, esta etapa se puede lograr usando diferentes arquitecturas GAN, varias profundidades de red, tasas de aprendizaje o algoritmos de optimización. La capacidad de generalización se garantiza aprendiendo a traducir de múltiples dispositivos a uno solo en lugar de meramente aprender a traducir de un dispositivo a otro. Por lo tanto, los Ciclo-GAN pueden aplicarse para traducir una señal capturada en un dispositivo del usuario a otro dispositivo en el conjunto de dispositivos T sin conocer al usuario o tener información sobre el dispositivo que está usando, durante el entrenamiento de los modelos Ciclo-GAN. Cada vez que los segmentos originales se traducen a uno de los dispositivos T en el conjunto, las características del dispositivo del usuario se reemplazan con las características de otro dispositivo en el conjunto de dispositivos T, mientras que se mantienen las características específicas para el usuario.
En una o más realizaciones de la etapa S115, una vez que los segmentos de entrada se traducen, el procesador del dispositivo móvil se configura, ejecutando uno o más módulos de software (por ejemplo, módulo 178 de conversión), para traducir los segmentos de vuelta. Por ejemplo, como se mencionó en el ejemplo anterior, el segmento de entrada de la señal de movimiento x registrada en un dispositivo X se traduce usando un Ciclo-GAN (generador) G, para hacer parecer que se registró en un dispositivo diferente Y. El segmento traducido se vuelve a traducir al dispositivo original X usando un Ciclo-GAN (generador) F. Según al menos una realización, un discriminador D<y>discrimina luego entre las señales registradas en el dispositivo Y y las señales generadas por Ciclo-GAN (generador) G. El generador G se optimiza para engañar al discriminador D<y>, mientras que el discriminador D<y>se optimiza para separar las muestras, de una manera antagónica. Además, en al menos una realización, todo el sistema está optimizado para reducir el error de reconstrucción calculado después de traducir la señal x de vuelta al dispositivo original X. La adición del error de reconstrucción a la función de pérdida global garantiza la consistencia del ciclo.
Con referencia continua a la Fig. 5A, en la etapa S120, el procesador del dispositivo móvil se configura, ejecutando uno o más módulos de software (por ejemplo, el módulo 172 de extracción de características), para proporcionar los segmentos y los segmentos traducidos a un sistema de aprendizaje automático. Los segmentos y segmentos traducidos proporcionados como entradas al sistema de aprendizaje automático se consideran muestras individuales.
En la etapa S125, el procesador del dispositivo móvil se configura luego, ejecutando uno o más módulos de software, para extraer características discriminativas del usuario de los segmentos y segmentos traducidos usando el sistema de aprendizaje automático que aplica uno o más algoritmos de extracción de características. Por ejemplo, en una o más realizaciones durante un proceso de registro de usuario, el procesador se configura para extraer características relevantes de los segmentos y segmentos traducidos para formar vectores de características usando una o más técnicas de extracción de características. En la etapa S127, el procesador se configura para emplear y entrenar un modelo de clasificación aprendido en los vectores de características que corresponden a los segmentos y los segmentos traducidos. En al menos una realización, el sistema de aprendizaje automático puede ser una red neuronal profunda de extremo a extremo, que comprende tanto etapas de extracción de características (S125) como de clasificación (S127). En una o más realizaciones, el sistema de aprendizaje automático puede estar formado por dos componentes (un extractor de características y un clasificador) o tres componentes (un extractor de características, un método de selección de características - no mostrado - y un clasificador). En cualquier realización, está presente un componente entrenable, a saber, una red neuronal profunda o un clasificador. El componente entrenable se entrena típicamente en un conjunto de datos de muestras (fragmentos de señales de movimiento) y etiquetas correspondientes (identificadores de usuario) aplicando un algoritmo de optimización, por ejemplo, descenso de gradiente, con respecto a una función de pérdida que expresa lo bien que el componente entrenable puede predecir las etiquetas correctas para las muestras de datos de entrenamiento (segmentos originales o traducidos recogidos durante el registro de usuario), como lo entenderían los expertos en la técnica. El objetivo del algoritmo de optimización es minimizar la función de pérdida, es decir, mejorar la capacidad predictiva del componente entrenable. En la etapa S130 finaliza el método.
La Fig. 6B describe un diagrama de bloques de alto nivel que muestra un flujo de cálculo para autenticar a un usuario en un dispositivo móvil a partir de datos del sensor de movimiento, según al menos una realización. Con referencia ahora a la Fig. 5B, el método comienza en las etapas S105. Las etapas S105 - S120 mostradas en la Fig. 6B son las mismas etapas descritas anteriormente con respecto al método mostrado en la Fig. 6A. Específicamente, en la etapa S105, una o más señales de movimiento de un usuario son capturadas por el dispositivo móvil, y en la etapa S110, la una o más señales de movimiento capturadas se dividen en segmentos. En la etapa S115, los segmentos se convierten en segmentos traducidos usando uno o más algoritmos de traducción entrenados (por ejemplo, Ciclo-GAN), y en la etapa S120, los segmentos y los segmentos traducidos se proporcionan a un sistema de aprendizaje automático.
Con referencia continua a la Fig. 5B y las Figs. 1A-1D, después de la etapa S120, en la etapa S135 se configura el procesador del dispositivo móvil, ejecutando uno o más módulos de software (por ejemplo, el módulo 174 de clasificación), para clasificar (por ejemplo, puntuar, asignar probabilidades de clase a) los segmentos y segmentos traducidos. Más específicamente, en una o más realizaciones, los vectores de características que representan segmentos y segmentos traducidos se analizan y puntúan. En una o más realizaciones, los segmentos y los segmentos traducidos pueden corresponder a una sesión de autenticación de manera que los segmentos y los segmentos traducidos se puntúen según un modelo de aprendizaje automático, por ejemplo, un clasificador o una red neuronal profunda, que se entrenó previamente, en la etapa S127 en la Fig. 6A, en los datos recogidos durante el registro de usuario.
En la etapa S140, el dispositivo móvil se configura, ejecutando uno o más módulos 130 de software (por ejemplo, el módulo 175 de metaaprendizaje), para aplicar un esquema de votación o un modelo de metaaprendizaje en las puntuaciones (por ejemplo, probabilidades de clase) asignadas a los segmentos y segmentos traducidos obtenidos durante una sesión de autenticación. Aplicando el esquema de votación o el modelo de metaaprendizaje, el dispositivo móvil se configura para proporcionar una decisión unánime para autorizar o rechazar al usuario. En una o más realizaciones, la decisión unánime para la sesión se basa en un esquema de votación o modelo de metaaprendizaje que se aplica a las puntuaciones de todos los segmentos y segmentos traducidos.
Finalmente, en la etapa S145, el dispositivo móvil se configura, ejecutando uno o más módulos de software (por ejemplo, el módulo 175 de metaaprendizaje), para determinar, basándose en la etapa de votación o metaaprendizaje, si el usuario es un usuario autorizado. Como se mencionó anteriormente, los segmentos y los segmentos traducidos se puntúan según las probabilidades de clase dadas como salida por un modelo de aprendizaje automático que se entrenó, durante el registro, para identificar un usuario conocido. Como tal, basándose en el esquema de votación o el metaaprendizaje aplicado en puntuaciones de los segmentos respectivos y segmentos traducidos, el procesador se configura para determinar si los segmentos y segmentos traducidos pertenecen a un usuario (autorizado) particular o no, y así determinar finalmente si el usuario es un usuario autorizado o un usuario no autorizado. El proceso de autenticación descrito en la presente memoria se refiere a autenticación uno a uno (verificación de usuario). En la etapa S150, termina el método para autenticar a un usuario basándose en los datos del sensor de movimiento.
Resultados experimentales
En esta sección, los resultados experimentales obtenidos con el método de desentrañar descrito en la presente memoria se presentan según una o más realizaciones. Se usaron dos conjuntos de datos diferentes en los siguientes experimentos. El primer conjunto de datos (denominado en lo sucesivo la base de datos 5x5) consiste en señales registradas del acelerómetro y giroscopio de 5 teléfonos inteligentes, cuando son utilizados por 5 individuos para realizar autenticaciones. Se pidió a los individuos que variaran la posición durante la autenticación (es decir, que se levantaran, o que se sentaran y usaran la mano derecha o la mano izquierda), realizando así diferentes acciones genéricas. En cada posición, se capturaron señales de 50 autenticaciones, lo que significa que cada individuo realizó un total de 1000 autenticaciones en cada uno de los 5 teléfonos inteligentes, es decir, el número total de sesiones es 5000. El segundo conjunto de datos (en adelante denominado base de datos 3x3) se formó con las mismas variaciones posicionales que en el primero, pero con 3 personas diferentes y 3 teléfonos inteligentes diferentes.
Las señales de cada base de datos se dividieron en 25 fragmentos en la fase de preprocesamiento. Los fragmentos de señal resultantes del conjunto de datos 5x5 se usan para entrenar 5 Ciclo-GAN con el propósito de traducir señales hacia y desde los 5 dispositivos. Luego, cada uno de los fragmentos de señal obtenidos de la base de datos 3x3 se alimentan a los GAN entrenados obteniendo, de esta manera, un conjunto completamente nuevo de señales. Estas nuevas señales (traducidas) se dividen además en dos subconjuntos: uno usado para entrenar y el otro usado para probar un sistema ML para la identificación de usuario basándose en señales de movimiento.
Es bien sabido que el entrenamiento de GAN es altamente inestable y difícil, debido a que se requiere que el GAN encuentre un equilibrio de Nash de un juego minimax no convexo con parámetros dimensionales altos. Sin embargo, en estos experimentos, se observó un descenso monotónico de la función de pérdida para las redes generativas, sosteniendo la idea de que se había logrado un punto de equilibrio.
Dividiendo las señales en fragmentos, se capturaron las características discriminativas del usuario y se minimizó la importancia de los movimientos (acciones). Una prueba clara es que alimentado los fragmentos de señal (sin aplicar GAN) en el sistema ML, se observó un aumento de precisión del 4 % en el reconocimiento del usuario. Traducir el comportamiento del usuario a través de diferentes dispositivos móviles (aplicando GAN) condujo a un aumento adicional en la precisión de reconocimiento del usuario en otro 3 % (con relación a la precisión obtenida usando los fragmentos de señal solos). Por lo tanto, se puede concluir que a través de la simulación de características de varios dispositivos, se obtuvo un sistema ML que es más robusto e invariable a las características del dispositivo.
Junto con el crecimiento del número de dispositivos móviles, la frecuencia de ataques ha aumentado significativamente. Por lo tanto, en los últimos años se han propuesto varios algoritmos de análisis del comportamiento del usuario, incluyendo sistemas basándose en señales capturadas por sensores de movimiento durante la autenticación del usuario. Un problema importante al que se enfrentan los algoritmos basados en datos del sensores de movimiento hoy en día es que es muy difícil desentrañar características específicas para los usuarios de aquellas específicas para acciones y dispositivos. Los sistemas y métodos de la presente solicitud abordan este problema dividiendo señales de movimiento en fragmentos y usando algoritmos de traducción (por ejemplo, Ciclo-GAN) para traducir las señales a otros dispositivos, sin requerir ningún cambio en el proceso de registro de usuario.
De hecho, dividir las señales en fragmentos más pequeños ayuda a reducir la influencia de las acciones (realizadas por el usuario) sobre el límite de decisión del sistema ML, aumentando la precisión de identificación de usuario en un 4 %, como se muestra en los ejemplos anteriores. Además, es bien sabido que los sensores de diferentes dispositivos son diferentes debido al proceso de fabricación, incluso si los dispositivos son de la misma marca y modelo, y salen de la misma línea de producción. Este hecho conduce a una influencia importante de los sensores del dispositivo móvil sobre el límite de decisión del sistema ML para la identificación del usuario. Según una o más realizaciones, los sistemas y métodos descritos en la presente memoria, usando GAN, simulan autenticaciones de múltiples dispositivos basándose en señales de movimiento registradas de un dispositivo arbitrario, disminuyen la influencia de dispositivos móviles sobre el sistema ML, y aumentan la influencia de las características que son específicas para el usuario. Los sistemas y métodos descritos mejoran adicionalmente la precisión del sistema m L en aproximadamente 3 %. Por consiguiente, en general, en una o más realizaciones, los presentes sistemas y métodos pueden aumentar el rendimiento en un 7 %, reduciendo tanto las tasas de falsos positivos como de falsos negativos.
Los sistemas y métodos ejemplares para desentrañar las características discriminativas de un usuario de un dispositivo de las señales de movimiento y para autenticar a un usuario en un dispositivo móvil de las señales de movimiento se exponen en los siguientes puntos:
Punto 1. Un método implementado por ordenador para desentrañar características discriminativas de un usuario de un dispositivo a partir de señales de movimiento capturadas por un dispositivo móvil que tiene uno o más sensores de movimiento, un medio de almacenamiento, instrucciones almacenadas en el medio de almacenamiento, y un procesador configurado ejecutando las instrucciones, que comprende:
dividir, con el procesador, cada señal de movimiento capturada en segmentos;
convertir, con el procesador usando uno o más algoritmos de traducción entrenados, los segmentos en segmentos traducidos;
proporcionar, con el procesador, los segmentos y los segmentos traducidos a un sistema de aprendizaje automático; y
extraer, con el procesador usando el sistema de aprendizaje automático que aplica uno o más algoritmos de extracción de características, características discriminativas del usuario a partir de los segmentos y de los segmentos traducidos.
Punto 2. El método del punto 1, en donde las características discriminativas del usuario se usan para identificar al usuario con el uso futuro del dispositivo por el usuario.
Punto 3. El método de los puntos anteriores, en donde el uno o más sensores de movimiento comprenden al menos uno de un giroscopio y un acelerómetro.
Punto 4. El método de los puntos anteriores, en donde la una o más señales de movimiento corresponde a una o más interacciones entre el usuario y el dispositivo móvil.
Punto 5. El método de los puntos anteriores, en donde las señales de movimiento incluyen características discriminativas del usuario, características discriminativas de acciones realizadas por el usuario y características discriminativas del dispositivo móvil.
Punto 6. El método del punto 5, en donde la etapa de dividir la una o más señales de movimiento capturadas en los segmentos elimina las características discriminativas de las acciones realizadas por el usuario.
Punto 7. El método del punto 5, en donde la etapa de convertir los segmentos en los segmentos traducidos elimina las características discriminativas del dispositivo móvil.
Punto 8. El método de los puntos anteriores, en donde el uno o más algoritmos de traducción entrenados comprenden una o más redes generativas antagónicas consistentes en el ciclo (Ciclo-GAN), y en donde los segmentos traducidos comprenden señales de movimiento sintéticas que simulan señales de movimiento que se originan otro dispositivo.
Punto 9. El método de los puntos anteriores, en donde la etapa de dividir la una o más señales de movimiento capturadas en segmentos comprende dividir cada señal de movimiento en un número fijo de segmentos, en donde cada segmento tiene una longitud fija.
Punto 10. Un método implementado por ordenador para autenticar a un usuario en un dispositivo móvil a partir de señales de movimiento capturadas por un dispositivo móvil que tiene uno o más sensores de movimiento, un medio de almacenamiento, instrucciones almacenadas en el medio de almacenamiento, y un procesador configurado ejecutando las instrucciones, que comprende:
dividir, con el procesador, la una o más señales de movimiento capturadas en segmentos;
convertir, con el procesador usando uno o más algoritmos de traducción entrenados, los segmentos en segmentos traducidos;
proporcionar, con el procesador, los segmentos y los segmentos traducidos a un sistema de aprendizaje automático; y
clasificar, con el procesador, los segmentos y segmentos traducidos como pertenecientes a un usuario autorizado o como pertenecientes a un usuario no autorizado asignando una puntuación a cada uno de los segmentos y segmentos traducidos; y
aplicar, con el procesador, un esquema de votación o un modelo de metaaprendizaje sobre las puntuaciones asignadas a los segmentos y a los segmentos traducidos; y
determinar, con el procesador, basándose en el esquema de votación o en el modelo de metaaprendizaje, si el usuario es un usuario autorizado.
Punto 11. El método del punto 10, en donde la etapa de puntuación comprende:
comparar los segmentos y segmentos traducidos con características del usuario autorizado extraídas de segmentos de muestra proporcionados por el usuario autorizado durante un proceso de registro, en donde las características se almacenan en el medio de almacenamiento; y
asignar a cada segmento una puntuación basándose en el modelo de clasificación.
Punto 12. El método del punto 10 u 11, en donde uno o más sensores de movimiento comprenden al menos uno de un giroscopio y un acelerómetro.
Punto 13. El método de los puntos 10-12, en donde la etapa de dividir en segmentos la una o más señales de movimiento capturadas comprende dividir cada señal de movimiento en un número fijo de segmentos, en donde cada segmento tiene una longitud fija.
Punto 14. El método de los puntos 10-13, en donde al menos una parte de los segmentos se solapan.
Punto 15. El método de los puntos 10-14, en donde el uno o más algoritmos de traducción entrenados comprenden uno o más Ciclo-GAN, y en donde la etapa de convertir comprende:
traducir los segmentos a través de un primer generador en los segmentos traducidos, que imitan los segmentos generados en otro dispositivo; y
volver a traducir los segmentos traducidos a través de un segundo generador para imitar los segmentos generados en el dispositivo móvil.
Punto 16. El método de los puntos 10-15, en donde los segmentos traducidos comprenden señales de movimiento sintéticas que simulan señales de movimiento que se originan desde otro dispositivo.
Punto 17. El método de los puntos 10-16, en donde la etapa de proporcionar comprende:
extraer, con el procesamiento usando una o más técnicas de extracción de características, características de los segmentos y segmentos traducidos para formar vectores de características; y
emplear un modelo de clasificación aprendido en los vectores de características que corresponden a los segmentos y los segmentos traducidos.
Punto 18. Un sistema para desentrañar características discriminativas de un usuario de un dispositivo a partir de señales de movimiento capturadas en un dispositivo móvil que tiene al menos un sensor de movimiento y autenticar un usuario en el dispositivo móvil, el sistema que comprende:
una interfaz de comunicación de red;
un medio de almacenamiento legible por ordenador;
un procesador configurado para interactuar con la interfaz de comunicación de red y el medio de almacenamiento legible por ordenador y ejecutar uno o más módulos de software almacenados en el medio de almacenamiento, que incluye:
un módulo de segmentación que cuando se ejecuta configura el procesador para dividir cada señal de movimiento capturada en segmentos;
un módulo de conversión que cuando se ejecuta configura el procesador para convertir los segmentos en segmentos traducidos usando una o más redes generativas antagónicas consistentes en el ciclo (Ciclo-GAN) entrenadas;
un módulo de extracción de características que cuando se ejecuta configura el procesador para extraer características discriminativas del usuario de los segmentos y segmentos traducidos, usando el procesador un sistema de aprendizaje automático;
un módulo de clasificación que cuando se ejecuta configura el procesador para asignar puntuaciones a los segmentos y segmentos traducidos y determinar si los segmentos y segmentos traducidos pertenecen a un usuario autorizado o a un usuario no autorizado basándose en sus puntuaciones respectivas; y
un módulo de metaaprendizaje que cuando se ejecuta configura el procesador para aplicar un esquema de votación o un modelo de metaaprendizaje basándose en las puntuaciones asignadas a los segmentos y segmentos traducidos basándose segmentos almacenados correspondientes al usuario.
Punto 19. El sistema del punto 18, en donde el al menos un sensor de movimiento comprende al menos uno de un giroscopio y un acelerómetro.
Punto 20. El sistema de los puntos 18-19, en donde el módulo de conversión configura el procesador para traducir los segmentos a través de un primer generador a los segmentos traducidos, que imitan segmentos generados en otro dispositivo y volver a traducir los segmentos traducidos a través de un segundo generador para imitar segmentos generados en el dispositivo móvil.
Punto 21. El sistema de los puntos 18-20, en donde el módulo de extracción de características se configura además para emplear un modelo de clasificación aprendido sobre las características extraídas que corresponden a los segmentos y a los segmentos traducidos.
En esta coyuntura, debe observarse que aunque gran parte de la descripción anterior se ha dirigido a sistemas y métodos para desentrañar características discriminativas de un usuario y autenticación de usuario usando datos del sensor de movimiento, los sistemas y métodos descritos en la presente memoria pueden desplegarse y/o implementarse de manera similar en escenarios, situaciones y configuraciones más allá de los escenarios referidos.
Aunque esta memoria descriptiva contiene muchos detalles de implementación específicos, éstos no deben interpretarse como limitaciones del alcance de cualquier implementación o de lo que pueda reivindicarse, sino más bien como descripciones de características que pueden ser específicas de realizaciones particulares de implementaciones particulares. Determinadas características que se describen en la memoria descriptiva en el contexto de realizaciones separadas también se pueden implementar en combinación en una sola realización. A la inversa, varias características que se describen en el contexto de una sola realización también pueden implementarse en múltiples realizaciones por separado o en cualquier subcombinación adecuada. Además, aunque las características pueden describirse anteriormente actuando en determinadas combinaciones e incluso reivindicarse inicialmente como tales, una o más características de una combinación reivindicada pueden en algunos casos eliminarse de la combinación, y la combinación reivindicada puede dirigirse a una subcombinación o variación de una subcombinación.
De manera similar, aunque las operaciones se ilustran en los dibujos en un orden particular, no debe entenderse que es necesario que dichas operaciones sean realizadas en el orden particular mostrado o en un orden en serie, o que se realicen todas las operaciones ilustradas, para lograr resultados deseables. En determinadas circunstancias, la multitarea y el procesamiento paralelo pueden ser ventajosos. Además, la separación de varios componentes del sistema en las realizaciones descritas anteriormente no debe entenderse como que se requiere dicha separación en todas las realizaciones, y debe entenderse que los componentes del programa y sistemas descritos generalmente pueden integrarse juntos en un solo producto de software o empaquetarse en múltiples productos de software.
La terminología usada en la presente memoria tiene el propósito de describir realizaciones particulares y no pretende limitar la invención. Como se usa en la presente memoria, las formas singulares “un”, “una” y “el”, “la” pretenden incluir también las formas plurales, a menos que el contexto indique claramente lo contrario. Se comprenderá además que los términos "comprende" y/o "que comprende", cuando se usan en la presente memoria descriptiva, especifican la presencia de las características, los enteros, las etapas, las operaciones, los elementos y/o los componentes que se indican, pero no excluyen la presencia o adición de una o más características, enteros, etapas, operaciones, elementos, componentes y/o grupos de los mismos. Debe observarse que el uso de términos ordinales tales como "primero", "segundo", "tercero", etc., en las reivindicaciones para modificar un elemento de la reivindicación no connota por sí mismo ninguna prioridad, precedencia u orden de un elemento de la reivindicación sobre otro o el orden temporal en el que se realizan los acciones de un método, sino que se usan simplemente como etiquetas para distinguir un elemento de la reivindicación que tiene un nombre determinado de otro elemento que tiene un mismo nombre (pero para el uso del término ordinal) para distinguir los elementos de la reivindicación. Además, la redacción y la terminología usadas en la presente memoria tienen propósitos descriptivos y no deben ser interpretadas en forma limitativa. El uso de “que incluye”, “que comprende” o “que tiene”, “que contiene”, “que implica”, y variaciones los mismos en la presente memoria pretende abarcar los elementos enumerados a continuación y sus equivalentes, así como otros elementos adicionales. Debe entenderse que los números similares en los dibujos representan elementos similares a través de las varias figuras, y que no todos los componentes y/o etapas descritos e ilustrados con referencia a las figuras se requieren para todas las realizaciones o disposiciones.
Por lo tanto, realizaciones y disposiciones ilustrativas de los sistemas y métodos descritos proporcionan un método implementado por ordenador, sistema informático y producto de programa informático para autenticación de usuario usando datos del sensor de movimiento. El diagrama de flujo y los diagramas de bloques en las figuras ilustran la arquitectura, funcionalidad y operación de posibles implementaciones de sistemas, métodos y productos de programas informáticos según varias realizaciones y disposiciones. En este sentido, cada bloque en el diagrama de flujo o los diagramas de bloques puede representar un módulo, un segmento o una parte de un código, que comprenda una o más instrucciones ejecutables para implementar la o las funciones lógicas especificadas. También debe observarse que, en algunas implementaciones alternativas, las funciones señaladas en el bloque pueden producirse en un orden distinto al señalado en las figuras. Por ejemplo, dos bloques que se muestran uno tras otro, de hecho, se pueden ejecutar sustancialmente de forma concurrente, o a veces los bloques se pueden ejecutar en el orden inverso, dependiendo de la funcionalidad involucrada. También se observará que cada bloque de los diagramas de bloques y/o la ilustración del diagrama de flujo, así como combinaciones de bloques en los diagramas de bloques y/o la ilustración del diagrama de flujo, pueden implementarse mediante sistemas basados en hardware con propósitos específicos que realicen las funciones o acciones especificadas, o combinaciones de instrucciones informáticas y hardware con propósitos especiales.
El objeto descrito anteriormente se proporciona solo a modo de ilustración y no debe interpretarse como limitante. Se pueden realizar varias modificaciones y cambios en el objeto descrito en la presente memoria sin seguir las realizaciones y aplicaciones de ejemplo ilustradas y descritas, y sin apartarse del alcance de la presente invención, que se expone en las siguientes reivindicaciones.
Claims (15)
1. Un método implementado por ordenador para desentrañar características discriminativas de un usuario de un dispositivo a partir de señales de movimiento capturadas por un dispositivo móvil que tiene uno o más sensores de movimiento, que comprende:
proporcionar, en un procesador, una o más señales de movimiento capturadas por el dispositivo móvil; dividir, con el procesador, cada señal de movimiento capturada en segmentos;
convertir, con el procesador usando uno o más algoritmos de traducción entrenados, los segmentos en segmentos traducidos, en donde el uno o más algoritmos de traducción entrenados comprenden una o más redes generativas antagónicas consistentes en el ciclo (Ciclo-GAN), y en donde los segmentos traducidos comprenden señales de movimiento sintéticas que simulan señales de movimiento que se originan desde otro dispositivo;
proporcionar, con el procesador, los segmentos y los segmentos traducidos como entradas a un sistema de aprendizaje automático; y
extraer, con el procesador usando el sistema de aprendizaje automático que aplica uno o más algoritmos de extracción de características, características discriminativas del usuario a partir de los segmentos y de los segmentos traducidos.
2. El método de la reivindicación 1, en donde las características discriminativas del usuario se usan para identificar al usuario con el uso futuro del dispositivo por el usuario.
3. El método de la reivindicación 1, en donde el uno o más sensores de movimiento comprenden al menos uno de un giroscopio y un acelerómetro.
4. El método de la reivindicación 1, en donde la una o más señales de movimiento corresponde a una o más interacciones entre el usuario y el dispositivo móvil.
5. El método de la reivindicación 1, en donde las señales de movimiento incluyen características discriminativas del usuario, características discriminativas de las acciones realizadas por el usuario y características discriminativas del dispositivo móvil, en donde la etapa de dividir la una o más señales de movimiento capturadas en los segmentos elimina las características discriminativas de las acciones realizadas por el usuario, y en donde las etapas de convertir los segmentos en los segmentos traducidos y proporcionar los segmentos y los segmentos traducidos al sistema de aprendizaje automático elimina efectivamente las características discriminativas del dispositivo móvil.
6. El método de la reivindicación 1, en donde la etapa de dividir en segmentos la una o más señales de movimiento capturadas comprende dividir cada señal de movimiento en un número fijo de segmentos, en donde cada segmento tiene una longitud fija.
7. Un método implementado por ordenador para autenticar a un usuario de un dispositivo móvil a partir de señales de movimiento capturadas por el dispositivo móvil que tiene uno o más sensores de movimiento, que comprende:
proporcionar, en un procesador, una o más señales de movimiento capturadas;
dividir, con el procesador, la una o más señales de movimiento capturadas en segmentos;
convertir, con el procesador usando uno o más algoritmos de traducción entrenados, los segmentos en segmentos traducidos, en donde el uno o más algoritmos de traducción entrenados comprenden una o más redes generativas antagónicas consistentes en el ciclo (Ciclo-GAN), y en donde los segmentos traducidos comprenden señales de movimiento sintéticas que simulan señales de movimiento que se originan desde otro dispositivo;
proporcionar, con el procesador, los segmentos y los segmentos traducidos como entradas a un sistema de aprendizaje automático; y
clasificar, con el procesador usando el sistema de aprendizaje automático, los segmentos y segmentos traducidos como pertenecientes a un usuario autorizado o como pertenecientes a un usuario no autorizado asignando una puntuación a cada uno de los segmentos y segmentos traducidos;
aplicar, con el procesador, un esquema de votación o un modelo de metaaprendizaje sobre las puntuaciones asignadas a los segmentos y a los segmentos traducidos; y
determinar, con el procesador, basándose en el esquema de votación o en el modelo de metaaprendizaje, si el usuario es un usuario autorizado.
8. El método de la reivindicación 7, en donde la etapa de clasificación comprende:
comparar los segmentos y segmentos traducidos con características del usuario autorizado extraídas de segmentos de muestra del usuario autorizado durante un proceso de registro, en donde las características se almacenan en el medio de almacenamiento; y
asignar a cada segmento una puntuación basándose en un modelo de clasificación.
9. El método de la reivindicación 7, en donde la etapa de dividir la una o más señales de movimiento capturadas en segmentos comprende dividir cada señal de movimiento en un número fijo de segmentos, en donde cada segmento tiene una longitud fija, y en donde al menos una parte de los segmentos se solapan.
10. El método de la reivindicación 7, que donde la etapa de convertir comprende:
traducir los segmentos a través de un primer generador en los segmentos traducidos, que imitan los segmentos generados en otro dispositivo; y
volver a traducir los segmentos traducidos a través de un segundo generador para imitar los segmentos generados en el dispositivo móvil.
11. El método de la reivindicación 7, en donde los segmentos traducidos comprenden señales de movimiento sintéticas que simulan señales de movimiento que se originan desde otro dispositivo.
12. El método de la reivindicación 7, en donde la etapa de proporcionar comprende:
extraer, con el procesamiento usando una o más técnicas de extracción de características, características de los segmentos y segmentos traducidos para formar vectores de características; y
emplear un modelo de clasificación aprendido en los vectores de características que corresponden a los segmentos y los segmentos traducidos.
13. Un sistema para desentrañar características discriminativas de un usuario de un dispositivo a partir de señales de movimiento capturadas en un dispositivo móvil que tiene al menos un sensor de movimiento y autenticar el usuario en el dispositivo móvil, el sistema que comprende:
una interfaz de comunicación de red;
un medio de almacenamiento legible por ordenador;
un procesador configurado para interactuar con la interfaz de comunicación de red y el medio de almacenamiento legible por ordenador y ejecutar uno o más módulos de software almacenados en el medio de almacenamiento, que incluye:
un módulo de segmentación que cuando se ejecuta configura el procesador para dividir cada señal de movimiento capturada en segmentos;
un módulo de conversión que cuando se ejecuta configura el procesador para convertir los segmentos en segmentos traducidos usando una o más redes generativas antagónicas consistentes en el ciclo (Ciclo-GAN) entrenadas, en donde los segmentos traducidos comprenden señales de movimiento sintéticas que simulan señales de movimiento que se originan desde otro dispositivo;
un módulo de extracción de características que cuando se ejecuta configura el procesador para extraer características discriminativas del usuario de los segmentos y segmentos traducidos, usando el procesador un sistema de aprendizaje automático;
un módulo de clasificación que cuando se ejecuta configura el procesador para asignar puntuaciones a los segmentos y segmentos traducidos y determinar si los segmentos y segmentos traducidos pertenecen a un usuario autorizado o a un usuario no autorizado basándose en sus puntuaciones respectivas; y
un módulo de metaaprendizaje que cuando se ejecuta configura el procesador para aplicar un esquema de votación o un modelo de metaaprendizaje en las puntuaciones asignadas a los segmentos y segmentos traducidos basándose en segmentos almacenados correspondientes al usuario.
14. El sistema de la reivindicación 13, en donde el módulo de conversión configura el procesador para traducir los segmentos a través de un primer generador a los segmentos traducidos, que imitan segmentos generados en otro dispositivo y volver a traducir los segmentos traducidos a través de un segundo generador para imitar segmentos generados en el dispositivo móvil.
15. El sistema de la reivindicación 13, en donde el módulo de extracción de características se configura además para emplear un modelo de clasificación aprendido sobre las características extraídas que corresponden a los segmentos y a los segmentos traducidos.
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US202062957653P | 2020-01-06 | 2020-01-06 | |
| PCT/IB2021/050077 WO2021140450A1 (en) | 2020-01-06 | 2021-01-06 | System and method for disentangling features specific to users, actions and devices recorded in motion sensor data |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| ES2967932T3 true ES2967932T3 (es) | 2024-05-06 |
Family
ID=74550697
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| ES21703309T Active ES2967932T3 (es) | 2020-01-06 | 2021-01-06 | Sistema y método para desentrañar características específicas de usuarios, acciones y dispositivos registrados en datos del sensor del movimiento |
Country Status (14)
| Country | Link |
|---|---|
| US (1) | US12393654B2 (es) |
| EP (1) | EP4088205B1 (es) |
| JP (1) | JP7684975B2 (es) |
| KR (1) | KR102913394B1 (es) |
| CN (1) | CN115087973B (es) |
| AU (1) | AU2021205292A1 (es) |
| CA (1) | CA3166863A1 (es) |
| CO (1) | CO2022011128A2 (es) |
| ES (1) | ES2967932T3 (es) |
| MX (1) | MX2022008396A (es) |
| PE (1) | PE20221863A1 (es) |
| PL (1) | PL4088205T3 (es) |
| WO (1) | WO2021140450A1 (es) |
| ZA (1) | ZA202207976B (es) |
Families Citing this family (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2023136433A1 (ko) * | 2022-01-12 | 2023-07-20 | 삼성전자 주식회사 | 휠체어와 관련된 운동 정보 산출 방법 및 웨어러블 디바이스 |
| JP7679036B2 (ja) | 2022-05-20 | 2025-05-19 | 日本電信電話株式会社 | 学習装置、推定装置、学習方法、推定方法及びプログラム |
| US12430673B2 (en) * | 2022-05-23 | 2025-09-30 | Verizon Patent And Licensing Inc. | Systems and methods for request validation |
| CN116664880B (zh) * | 2023-07-31 | 2023-11-28 | 南昌大学 | 深度伪造反取证图像的生成方法 |
Family Cites Families (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP5142883B2 (ja) * | 2008-08-14 | 2013-02-13 | 株式会社東芝 | 本人識別装置 |
| US9424458B1 (en) * | 2015-02-06 | 2016-08-23 | Hoyos Labs Ip Ltd. | Systems and methods for performing fingerprint based user authentication using imagery captured using mobile devices |
| US10061909B2 (en) * | 2016-12-29 | 2018-08-28 | Qualcomm Incorporated | Device authentication based on behavior classification using convolution neural network |
| CN107742068A (zh) * | 2017-09-01 | 2018-02-27 | 中国科学院信息工程研究所 | 一种智能设备的多源隐式身份认证系统及方法 |
| US11733780B2 (en) * | 2018-03-16 | 2023-08-22 | Veridium Ip Limited | System and method for user recognition using motion sensor data |
| US10713569B2 (en) * | 2018-05-31 | 2020-07-14 | Toyota Research Institute, Inc. | System and method for generating improved synthetic images |
| US10713874B2 (en) * | 2018-08-24 | 2020-07-14 | TruU, Inc. | Machine learning-based platform for user identification |
| KR20190099156A (ko) | 2019-08-06 | 2019-08-26 | 엘지전자 주식회사 | 사용자의 행동 패턴을 이용하여 사용자를 인증하는 방법 및 디바이스 |
-
2021
- 2021-01-06 PL PL21703309.1T patent/PL4088205T3/pl unknown
- 2021-01-06 MX MX2022008396A patent/MX2022008396A/es unknown
- 2021-01-06 CA CA3166863A patent/CA3166863A1/en active Pending
- 2021-01-06 WO PCT/IB2021/050077 patent/WO2021140450A1/en not_active Ceased
- 2021-01-06 JP JP2022541627A patent/JP7684975B2/ja active Active
- 2021-01-06 EP EP21703309.1A patent/EP4088205B1/en active Active
- 2021-01-06 ES ES21703309T patent/ES2967932T3/es active Active
- 2021-01-06 AU AU2021205292A patent/AU2021205292A1/en active Pending
- 2021-01-06 KR KR1020227027088A patent/KR102913394B1/ko active Active
- 2021-01-06 CN CN202180013376.4A patent/CN115087973B/zh active Active
- 2021-01-06 US US17/142,899 patent/US12393654B2/en active Active
- 2021-01-06 PE PE2022001404A patent/PE20221863A1/es unknown
-
2022
- 2022-07-18 ZA ZA2022/07976A patent/ZA202207976B/en unknown
- 2022-08-05 CO CONC2022/0011128A patent/CO2022011128A2/es unknown
Also Published As
| Publication number | Publication date |
|---|---|
| JP7684975B2 (ja) | 2025-05-28 |
| US20210209508A1 (en) | 2021-07-08 |
| JP2023509482A (ja) | 2023-03-08 |
| CA3166863A1 (en) | 2021-07-15 |
| MX2022008396A (es) | 2022-11-30 |
| EP4088205C0 (en) | 2023-11-15 |
| AU2021205292A1 (en) | 2022-08-11 |
| ZA202207976B (en) | 2023-12-20 |
| WO2021140450A1 (en) | 2021-07-15 |
| US12393654B2 (en) | 2025-08-19 |
| PL4088205T3 (pl) | 2024-03-04 |
| EP4088205B1 (en) | 2023-11-15 |
| CO2022011128A2 (es) | 2023-07-10 |
| PE20221863A1 (es) | 2022-11-30 |
| EP4088205A1 (en) | 2022-11-16 |
| CN115087973A (zh) | 2022-09-20 |
| KR20220123118A (ko) | 2022-09-05 |
| CN115087973B (zh) | 2025-05-27 |
| KR102913394B1 (ko) | 2026-01-14 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| ES2967932T3 (es) | Sistema y método para desentrañar características específicas de usuarios, acciones y dispositivos registrados en datos del sensor del movimiento | |
| Sumalatha et al. | A comprehensive review of unimodal and multimodal fingerprint biometric authentication systems: Fusion, attacks, and template protection | |
| ES3032510T3 (en) | Systems and methods for performing fingerprint based user authentication using imagery captured using mobile devices | |
| JP6651565B2 (ja) | バイオメトリックテンプレートセキュリティおよびキー生成 | |
| ES2762524T3 (es) | Sistema y método para autorizar el acceso a entornos de acceso controlado | |
| ES2791776T3 (es) | Sistema y método para la autenticación biométrica en conexión con dispositivos equipados con cámara | |
| KR102202690B1 (ko) | 지문 인식 방법, 장치 및 시스템 | |
| US20190130082A1 (en) | Authentication Methods and Devices for Allowing Access to Private Data | |
| Li et al. | CNN-based continuous authentication on smartphones with conditional Wasserstein generative adversarial network | |
| ES3028243T3 (en) | Method to generate training data for a bot detector module, bot detector module trained from training data generated by the method and bot detection system | |
| Ibrahim et al. | Performance analysis of biometric recognition modalities | |
| WO2016033184A1 (en) | System and method for determining liveness | |
| Chavez-Galaviz et al. | Embedded biometric cryptosystem based on finger vein patterns | |
| Balasubramaniam et al. | AI based advancements in biometrics and its applications | |
| CN112334897B (zh) | 认证用户的方法和电子设备 | |
| Zhong et al. | VeinDeep: Smartphone unlock using vein patterns | |
| HK40081499B (en) | System and method for disentangling features specific to users, actions and devices recorded in motion sensor data | |
| HK40081499A (en) | System and method for disentangling features specific to users, actions and devices recorded in motion sensor data | |
| Suresh et al. | Nature inspired hybrid algorithms for binding shared key with user trait | |
| HK40081046A (en) | System and method for disentangling features specific to users, actions and devices recorded in motion sensor data | |
| HK40081046B (zh) | 用於区分开运动传感器数据中记录的特定於用户、动作和设备的特徵的系统和方法 | |
| Ashwini et al. | Deep Biometrics: Exploring the Intersection of Deep Learning and Biometric Applications | |
| Kalra et al. | Improving performance by combining fingerprint and Iris in multimodal biometric | |
| US20260122064A1 (en) | Identity verification bridge for biometric authentication | |
| Tambay | Testing fuzzy extractors for face biometrics: generating deep datasets |