ES2940642T3 - Procedimientos y dispositivos para la inscripción y autenticación de un usuario en un servicio - Google Patents

Procedimientos y dispositivos para la inscripción y autenticación de un usuario en un servicio Download PDF

Info

Publication number
ES2940642T3
ES2940642T3 ES18825747T ES18825747T ES2940642T3 ES 2940642 T3 ES2940642 T3 ES 2940642T3 ES 18825747 T ES18825747 T ES 18825747T ES 18825747 T ES18825747 T ES 18825747T ES 2940642 T3 ES2940642 T3 ES 2940642T3
Authority
ES
Spain
Prior art keywords
user
agreement
challenge
service
authentication
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
Application number
ES18825747T
Other languages
English (en)
Inventor
Arnaud Olivier
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hiasecure
Original Assignee
Hiasecure
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hiasecure filed Critical Hiasecure
Application granted granted Critical
Publication of ES2940642T3 publication Critical patent/ES2940642T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3271Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/102Entity profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/085Secret sharing or secret splitting, e.g. threshold schemes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2103Challenge-response

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Storage Device Security (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Telephone Function (AREA)
  • Cash Registers Or Receiving Machines (AREA)
  • Furnace Housings, Linings, Walls, And Ceilings (AREA)
  • Helmets And Other Head Coverings (AREA)
  • Respiratory Apparatuses And Protective Means (AREA)

Abstract

El método de autenticación propuesto se basa en una convención secreta entre el servicio y el usuario. Esta convención se define sobre la base de una elección aleatoria de bloques algorítmicos elementales de una colección de bloques algorítmicos elementales durante la fase de registro del usuario. Durante la autenticación, el usuario usa la convención aplicándola a un desafío presentado por el servicio para determinar una respuesta. Los bloques algorítmicos se eligen de manera que puedan ser memorizados por el usuario. Como resultado de la diversidad de estos ladrillos y la combinatoria detrás de las convenciones, la cantidad de convenciones posibles es muy alta, lo que hace prácticamente imposible que un atacante adivine la convención. (Traducción automática con Google Translate, sin valor legal)

Description

DESCRIPCIÓN
Procedimientos y dispositivos para la inscripción y autenticación de un usuario en un servicio
La presente invención se refiere al campo de los procedimientos de inscripción y de autenticación y de los dispositivos que permiten implementarlos. Estos procedimientos se utilizan normalmente entre un proveedor de servicios y un usuario que desea acceder al servicio. El uso más común es el acceso a un servicio implementado por un servidor y accesible a un usuario a través de una red de datos, por ejemplo la red Internet, desde un terminal de usuario conectado a esta red.
Una primera familia de procedimientos de autenticación se basa en el uso de un secreto compartido entre el usuario y el proveedor del servicio. El ejemplo más común es una contraseña bien conocida. Un usuario crea una cuenta en el servicio y define su contraseña en este momento. Estamos hablando de una fase de inscripción. Al acceder al servicio, proporciona su identidad (login en inglés) y la contraseña asociada. El servicio entonces verifica que la contraseña corresponda a la contraseña grabada por el servicio durante la fase de inscripción.
Esta familia de procedimientos posee limitaciones bien conocidas. Es posible que un atacante determine la contraseña de diferentes maneras. Por ejemplo, el atacante puede espiar las comunicaciones y capturar la contraseña para luego poder suplantar la identidad del usuario en el servicio. El cifrado de los intercambios permite, en cierta medida, luchar contra estos ataques. Del mismo modo es posible adivinar la contraseña, ya sea mediante el uso de datos personales vinculados al usuario, técnica conocida con el nombre de ingeniería social, su fecha de nacimiento, el nombre de su mascota u otros, o bien mediante el uso de diccionarios de contraseñas. Del mismo modo es posible espiar al usuario cuando introduce su contraseña en su terminal utilizando una cámara por ejemplo o utilizando un software espía grabando el uso de las pulsaciones del teclado del terminal.
También se conocen técnicas de desafío-respuesta. Algunas permiten luchar contra el espionaje en el intercambio del secreto entre el usuario y el servicio evitando la transmisión del secreto. La idea en este caso es que el servicio genere un desafío aleatorio que envía al usuario. El usuario genera una respuesta por la aplicación de una función al desafío, esta función que usa el secreto compartido. Por ejemplo, se puede tratar del cifrado de desafío, el secreto se utiliza como clave de cifrado. El servicio es capaz de llevar a cabo el mismo cálculo y verificar que la respuesta del usuario coincida con el cifrado del desafío por el secreto compartido. Si estos procedimientos permiten efectivamente eliminar el acceso al secreto compartido por espionaje de las comunicaciones entre el terminal y el servidor que aloja el servicio, dejándose de transmitir el secreto, no son de utilidad contra la ingeniería social, los diccionarios de contraseñas o el espionaje del terminal del usuario.
Una segunda familia de procedimientos de autenticación se basa en una propiedad intrínseca del usuario. Se incluyen en esta categoría todos los procedimientos biométricos como el reconocimiento de iris, las huellas dactilares, la rede venosa, la voz, etc. Estas técnicas tienen un cierto nivel de fiabilidad pero generalmente requieren dotar al terminal del usuario de un dispositivo de reconocimiento adaptado a la tecnología elegida y por lo tanto son costosas.
Una tercera familia de procedimientos de autenticación se basa en la posesión de un objeto, en este caso se autentica al portador del objeto. Se incluyen, anecdóticamente en lo que a nosotros respecta, en esta categoría el sistema llaves/cerradura donde se autoriza el acceso al portador de la llave correspondiente a la cerradura. Los sistemas informáticos modernos se basan, por ejemplo, en la posesión de un teléfono al que el servicio envía un código que el usuario debe introducir en su terminal. Se asegura que el usuario está en posesión del teléfono pre-grabado por el servicio. Del mismo modo se puede tratar de un dispositivo para generar un código de forma pseudoaleatoria como en los sistemas conocidos como generadores de tókenes de autenticación de una sola vez (token based autentication en inglés). En estos sistemas, el usuario utiliza un generador de tókenes que activa la generación del token a demanda cuando desea autenticarse. Luego proporciona el token solicitado al servicio. El servicio genera el token correspondiente con la ayuda de un algoritmo idéntico y verifica la concordancia del token recibido con el token solicitado. Estos tókenes son de un solo uso y, por lo tanto, no permiten reproducir la secuencia de autenticación si son interceptados durante la transmisión. La coincidencia de tókenes asegura que el usuario sea el portador del generador de tókenes grabado. Cada generador de tókenes está programado para generar una secuencia única de tókenes. La tarjeta bancaria del usuario del mismo modo puede ser utilizada como objeto del cual se verifica que el usuario es portador. Este es el caso, por ejemplo, cuando un servicio pide la tarjeta con la que compraste un billete de tren o espectáculo para emitir tu billete. El principal ataque posible de estos procedimientos es el robo del objeto del que el usuario es portador. El documento (WO 2017/193165 A1) describe un método de autenticación según el cual el secreto compartido entre el usuario y el sistema está constituido de un conjunto secreto de elementos cognitivos, por ejemplo, un conjunto secreto de imágenes.
Ninguno de estos procedimientos está libre de fallos hoy en día. Su fiabilidad no es perfecta. Su implementación y su gestión pueden ser complejas y/o costosas, como en el caso de la biometría.
La presente invención tiene por objetivo resolver los inconvenientes antes mencionados proponiendo un procedimiento de autenticación original. El procedimiento de autenticación propuesto se basa en un acuerdo secreto entre el servicio y el usuario. Este acuerdo se define sobre la base de una elección aleatoria de bloques algorítmicos elementales dentro de una colección de bloques elementales durante la fase de inscripción del usuario. Durante la autenticación, el usuario usa el acuerdo aplicándolo a un desafío presentado por el servicio para determinar una respuesta. Los bloques algorítmicos se eligen para que puedan ser memorizados por el usuario. Debido a la diversidad de estos bloques y la combinatoria en el origen de los acuerdos, el número de acuerdos posibles es muy grande, lo que hace que sea prácticamente imposible que un atacante adivine el acuerdo. Por otro lado, el usuario utiliza el acuerdo memorizado sin tener que ingresarlo en su terminal, solo se ingresa en el terminal el resultado de la aplicación del acuerdo al desafío. Como resultado, todas las técnicas de espionaje en el terminal no funcionan. Es prácticamente imposible volver al acuerdo capturando el desafío y la respuesta. Por lo tanto, el sistema es extremadamente seguro y fácil de configurar.
La presente invención está definida por las reivindicaciones independientes adjuntas.
La invención se refiere a un procedimiento de inscripción de un usuario en un servicio, por un módulo de autenticación ejecutado en un servidor, caracterizado porque comprende las etapas siguientes:
- determinación de un acuerdo que permita el cálculo de una respuesta a partir de un desafío por la selección aleatoria de una pluralidad de bloques algorítmicos básicos en un conjunto de bloques algorítmicos básicos;
-transmisión del acuerdo con destino a un terminal del usuario para su presentación al usuario;
- grabación del acuerdo asociado a un identificador del usuario, dicho acuerdo que constituye un secreto compartido entre el usuario y el módulo de autenticación.
Según un modo de realización particular, el procedimiento comprende también una etapa de adaptación del acuerdo.
Según un modo de realización particular, la etapa de adaptación comprende una etapa de:
- simplificación del acuerdo inicialmente determinado por reducción del número de bloques algorítmicos básicos.
Según un modo de realización particular, la etapa de adaptación comprende una etapa de:
- complejización del acuerdo inicialmente determinado por aumento del número de bloques algorítmicos básicos.
Según un modo de realización particular, la etapa de simplificación o de complejización comprende la selección aleatoria de bloques algorítmicos básicos a ser eliminados, respectivamente agregados, al acuerdo.
Según un modo de realización particular, la etapa de simplificación o de complejización comprende la recepción de una selección por el usuario de bloques algorítmicos básicos a ser eliminados, respectivamente agregados, al acuerdo.
Según un modo de realización particular, el procedimiento comprende además al menos una etapa de prueba del acuerdo determinado.
Según un modo de realización particular, la etapa de prueba comprende las etapas siguientes:
- generación de un desafío compatible con el acuerdo;
- transmisión del desafío con destino a un terminal del usuario;
- recepción de una respuesta al desafío recibida desde el terminal del usuario;
- comparación de la respuesta recibida con respecto a una respuesta calculada aplicando el acuerdo al desafío generado.
Según un modo de realización particular, el procedimiento comprende además una etapa de:
- simplificación del acuerdo tras uno o más fallos de la etapa de prueba.
Según un modo de realización particular, el procedimiento comprende además una etapa de:
- determinación de un nuevo acuerdo tras uno o más fallos de la etapa de prueba.
Según un modo de realización particular, los bloques algorítmicos básicos comprenden una primera forma inteligible para el usuario y una segunda forma correspondiente a un código ejecutable por un dispositivo de procesamiento de información.
Según un modo de realización particular, el acuerdo grabado asociado a un usuario está del mismo modo asociado a un identificador de servicio.
La invención del mismo modo se refiere a un procedimiento de autenticación de un usuario en un servicio, por un módulo de autenticación ejecutado en un servidor, caracterizado porque comprende las etapas siguientes:
- obtención de un acuerdo asociado al usuario que permita el cálculo de una respuesta a partir de un desafío por la selección aleatoria de una pluralidad de bloques algorítmicos básicos en un conjunto de bloques algorítmicos básicos, dicho acuerdo que constituye un secreto compartido entre el usuario y el módulo de autenticación;
- generación de un desafío compatible con el acuerdo;
-transmisión del desafío a un terminal del usuario;
- recepción de una respuesta al desafío recibida desde el terminal del usuario;
- comparación de la respuesta recibida con respecto a una respuesta calculada aplicando el acuerdo al desafío generado.
Según un modo de realización particular, el desafío generado es diferente de todos los desafíos generados previamente para un mismo usuario.
Según un modo de realización particular, el desafío se transmite directamente al terminal del usuario.
Según un modo de realización particular, el desafío se transmite a un servicio que sirve de intermediario entre el servidor y el terminal del usuario.
La invención del mismo modo se refiere a un dispositivo de procesamiento de información caracterizado porque comprende un procesador configurado para ejecutar un procedimiento de inscripción según la invención.
La invención del mismo modo se refiere a un dispositivo de procesamiento de información caracterizado porque comprende un procesador configurado para ejecutar un procedimiento de autenticación según la invención.
La invención del mismo modo se refiere a un programa de ordenador que comprende instrucciones adaptadas a la implementación de cada una de las etapas del procedimiento según la invención cuando dicho programa se ejecuta en un ordenador.
La invención del mismo modo se refiere a un medio de almacenamiento de información, removible o no, legible parcial o totalmente por un ordenador o un microprocesador que comprende instrucciones de código de un programa de ordenador para la ejecución de cada una de las etapas del procedimiento según la invención.
Otras particularidades y ventajas de la invención aparecerán además en la descripción siguiente, en relación con los dibujos adjuntos, dados a título de ejemplos no limitativos siguientes:
- la figura 1 ilustra un primer ejemplo de un sistema que permite la implementación de la invención;
- la figura 2 ilustra un segundo ejemplo de un sistema que permite la implementación de la invención;
- la figura 3 ilustra un módulo de autenticación según un ejemplo de realización de la invención;
- la figura 4 ilustra un procedimiento de inscripción según un modo de realización de la invención;
- la figura 5 ilustra un procedimiento de autenticación en un modo de realización de la invención;
- la figura 6 es un diagrama de bloques esquemático de un dispositivo de procesamiento de información para la implementación de uno o varios modos de realización de la invención.
La figura 1 ilustra un primer ejemplo de un sistema que permite la implementación de la invención. En este sistema, un terminal 101 permite a un usuario conectarse a un servicio 103 alojado por uno o varios servidores. El terminal 101 está conectado al servicio 103 por una red de comunicación de datos, normalmente la red de Internet. La conexión entre el terminal 101 y el servicio 103 que utiliza la red de comunicación permite el intercambio de mensajes 102 entre el terminal y el servicio 103. Estos intercambios de mensajes siguen un protocolo de intercambio, se puede tratar normalmente del protocolo HTTP (Hyper Text Transport Protocol en inglés) utilizado por los servicios web, pero del mismo modo se puede utilizar cualquier otro protocolo.
El servicio 103 alberga un módulo de autenticación, como por ejemplo el módulo de autenticación ilustrado por la figura 3. Este módulo de autenticación permite la implementación de un procedimiento de inscripción que permite a un usuario del terminal 101 registrarse en el servicio 103. Un ejemplo de dicho procedimiento de inscripción es ilustrado por la figura 4. El módulo de autenticación del mismo modo permite la implementación de un procedimiento de autenticación de un usuario del terminal 101 previamente inscrito en el servicio 103. La figura 5 ilustra un ejemplo de dicho procedimiento de autenticación.
El terminal 101 puede ser un ordenador personal, una tableta informática, un terminal de telefonía móvil o cualquier tipo de terminal conectado a una red de comunicación de datos. El servicio 103 normalmente se implementa en uno o más servidores. Estos servidores pueden ser operados directamente por el proveedor de servicios o por un tercero dentro de un centro de servidores (data center en inglés).
La figura 2 ilustra un segundo ejemplo de un sistema que permite la implementación de la invención. En este segundo ejemplo, el terminal 201 permite a un usuario conectarse a varios servicios, incluidos los dos servicios representados 203 y 204. Los procedimientos de inscripción y de autenticación son respaldados por un servidor 205 de autenticación. Este servidor de autenticación normalmente está controlado por un tercero de autenticación al que los proveedores de servicios que controlan los servicios 203 y 204 han subcontratado la autenticación.
Se pueden prever dos modos de funcionamiento. En un primer modo de funcionamiento, denominado funcionamiento por intermediario (proxy en inglés), el terminal 201 solo se comunica con los servicios 203 y 204, estos son los intercambios 202 y 207. Las operaciones de inscripción y de autenticación son entonces subcontratadas por los servicios 203 y 204 al servidor 205 de autenticación por los intercambios 208 y 209. En este modo de funcionamiento, nunca hay intercambios 206 directos entre el terminal 201 y el servidor 205 de autenticación. En este modo de funcionamiento, el servicio actúa como un intermediario entre el terminal y el servidor de autenticación.
En un segundo modo de funcionamiento, denominado funcionamiento directo, el servicio 203 o 204 que recibe una solicitud de inscripción o de autenticación de un terminal 201 de usuario inicia la operación correspondiente en el servidor 205 de autenticación. Entonces el servidor 205 de autenticación efectúa la operación de inscripción o de autenticación por intercambios 206 directos con el terminal 201 y notifica el resultado de la operación al servicio 203 o 204. Una vez que se efectúa la inscripción o la autenticación, se pueden reanudar las interacciones normales entre el terminal 201 y el servicio 203 o 204.
El sistema ilustrado por la figura 2 funciona con dos servicios 203 y 204, pero puede extenderse de manera similar a cualquier número de servicios. Los dos modos de funcionamiento descritos del mismo modo se pueden mezclar en función de los servicios. Algunos servicios pueden establecer un funcionamiento por intermediarios, mientras que otros servicios utilizan el funcionamiento directo.
En el sistema de la figura 2, el módulo de autenticación, un ejemplo del cual es ilustrado por la figura 3 es implementado por el servidor de autenticación.
La figura 3 ilustra un módulo 300 de autenticación según un ejemplo de realización de la invención.
Según un aspecto de la invención, la autenticación se basa en un secreto compartido entre el usuario y el módulo de autenticación. A diferencia del estado de la técnica, el secreto compartido no es una información estática, tal como una contraseña, sino un acuerdo. Por acuerdo, en este documento, nos referimos a un algoritmo que permite calcular una respuesta a partir de un desafío. El desafío puede tomar un número ilimitado de formas. Según un ejemplo de realización, el desafío consiste en una lista de cifras. Pero, el desafío puede basarse en imágenes, colores, símbolos o cualquier otro dato que pueda ser interpretado por un humano.
De hecho, el usuario debe memorizar el acuerdo, es decir, el algoritmo que se aplicará al desafío. Este algoritmo está compuesto por un conjunto de operaciones elementales, hablamos de bloques algorítmicos básicos. Como el desafío es interpretado por un ser humano para aplicarle el acuerdo memorizado, se pueden imaginar múltiples formas de comunicación del desafío. Si volvemos a tomar el ejemplo de la secuencia de cifras, esta secuencia se puede comunicar en forma bruta de una secuencia de cifras, pero también en forma de una imagen que comprende una secuencia de cifras, en forma de una secuencia de imágenes , cada una que representa una cifra, de una secuencia de símbolos, cada símbolo que está asociado a una cifra o cualquier otro medio, con el único límite de que el usuario debe ser capaz de identificar una secuencia de cifras a partir del desafío que se le transmite.
Según ciertos modos de realización, se definen diferentes familias de desafíos. Una primera familia puede tomar el ejemplo de secuencias de cifras. Otra familia puede basarse en formas geométricas. Otra familia puede estar basada en colores, imágenes, notas musicales etc... Si el sistema se basa en varias familias de desafíos, los bloques algorítmicos que permitan definir los acuerdos del mismo modo se clasificarán en las familias correspondientes en función de la familia de desafío que sean capaces de manejar.
El procedimiento de inscripción comprende la operación de definición de un acuerdo que será memorizado por el usuario y almacenado por el módulo de autenticación. Esta operación puede comprender la definición de la familia de desafíos correspondiente cuando el sistema comprende varias familias de desafíos.
El procedimiento de autenticación comprenderá la operación de elegir, preferiblemente de forma aleatoria, un desafío a presentar al usuario. El usuario entonces aplica el acuerdo que ha memorizado al desafío que se le presenta para calcular una respuesta. Esta respuesta se transmite al módulo de autenticación. Este último, que del mismo modo posee el acuerdo definido para este usuario, calcula por su parte la respuesta esperada. La autenticación tiene éxito cuando la respuesta producida por el usuario coincide con la respuesta esperada calculada por el módulo de autenticación según el acuerdo almacenado por el módulo.
Una de las ventajas del procedimiento de autenticación descrito de este modo es que el secreto compartido, por lo tanto el acuerdo, nunca es introducido por el usuario en su terminal, a diferencia de una contraseña. Por lo tanto, no es posible que un atacante obtenga el secreto mediante técnicas de espionaje del terminal.
Otra ventaja del procedimiento de autenticación descrito de este modo es que el número de acuerdos posibles aumenta exponencialmente con el número de bloques algorítmicos básicos utilizados para definir los acuerdos. Este número del mismo modo aumenta con el número de bloques básicos utilizados para definir un acuerdo dado. El límite de este último número es la capacidad del usuario para memorizar un gran número de etapas que constituyen el acuerdo.
El módulo 300 de autenticación del ejemplo de la figura 3 comprende una primera base 302 de datos que comprende los bloques algorítmicos básicos. Estos bloques algorítmicos básicos se pueden agrupar en cualquier número de bloques que constituyen un algoritmo, es decir, un acuerdo.
Ventajosamente, los bloques algorítmicos básicos están presentes en la base de datos en dos formas diferentes. Una primera forma es un texto que describe la operación de una manera comprensible para un usuario. Este es la forma que se utilizará para generar la versión presentada al usuario. Una segunda forma corresponde a un código informático que implementa la operación ejecutable por un procesador informático. Este código puede, por ejemplo, tomar la forma de una función informática. Esta segunda forma del bloque algorítmico básico está destinada a ser utilizada por el módulo de autenticación para generar la versión ejecutable del acuerdo que le permita calcular la respuesta a partir del desafío.
El módulo 300 de autenticación del mismo modo comprende una segunda base 303 de datos de los usuarios para almacenar los acuerdos definidos durante la fase de inscripción. Un acuerdo almacenado en la base 303 de datos por lo tanto, está asociado a un usuario. Si el sistema permite gestionar varios servicios, como en el sistema según la figura 2 por ejemplo, el acuerdo se puede asociar con un usuario y un servicio. En este caso, un mismo usuario estará asociado a varios acuerdos, un acuerdo por servicio gestionado por el módulo de autenticación.
El módulo 300 de autenticación del mismo modo comprende un módulo 301 de control responsable de ejecutar los procedimientos de inscripción y de autenticación de un usuario en un servicio. Es del mismo modo este módulo de control el que gestiona las comunicaciones con el terminal del usuario y/o los servicios según los modos de implementación del sistema.
El módulo 300 de autenticación puede estar comprendido en un servidor de autenticación tal como el servidor 205 de la figura 2 en un sistema donde la autenticación se subcontrata a un tercero de autenticación. Del mismo modo se puede incluir directamente en un servicio tal como el servicio 103 en un sistema que no subcontrata la autenticación.
La figura 4 ilustra un procedimiento de inscripción según un modo de realización de la invención. Este procedimiento puede, por ejemplo, ser implementado por el módulo 301 de control del módulo de autenticación de la figura 3.
En una primera etapa 401, se construye un acuerdo inicial por un sorteo aleatorio de bloques algorítmicos básicos de la base de datos de bloques algorítmicos básicos. Cuando el sistema gestiona varias familias de desafíos, del mismo modo se elige una familia de desafíos, normalmente de forma aleatoria, y la selección de los bloques básicos se realiza en un subconjunto de bloques compatibles con el procesamiento de los desafíos de la familia elegida.
Al final de esta etapa, se obtiene un acuerdo inicial, es decir un algoritmo compuesto por una sucesión de etapas, los bloques algorítmicos básicos, que permiten transformar un desafío en una respuesta.
Los bloques algorítmicos básicos son normalmente operaciones elementales sobre los datos que constituyen los desafíos. Sin embargo, del mismo modo pueden utilizar ventajosamente informaciones contextuales asociadas al usuario. Estas informaciones contextuales pueden relacionarse con la ubicación del usuario con la ayuda de datos de geolocalización. Por ejemplo, si el usuario está presente en su país de origen o no. Del mismo modo pueden referirse al terminal utilizado, un móvil o un ordenador por ejemplo. Pueden relacionarse además con datos asociados con la transacción que requiere autenticación, por ejemplo, el importe de la transacción. También pueden referirse a la hora actual o incluso hacer referencia a información vinculada a una transacción pasada, por lo tanto, a un historial de transacciones.
En el ejemplo siguiente, el desafío es del tipo serie de cifras. Los bloques algorítmicos básicos comprenden, por ejemplo, los bloques siguientes:
Bloque 1: colocarse en la cifra N;
Bloque 2: leer hacia la derecha;
Bloque 3: leer hacia la izquierda;
Bloque 4: leer N cifras consecutivas;
Bloque 5: leer el valor de la cifra y moverse el número correspondiente de cifras hacia la derecha;
Bloque 6: si estoy en mi país de origen;
Bloque 7: si no estoy en mi país de origen;
Bloque 8: si el valor de la cifra es par;
Bloque 9: si el valor de la cifra es impar;
Bloque 10: responder el resultado actual.
En este ejemplo, N representa un parámetro del bloque algorítmico básico. Un ejemplo de acuerdo puede estar compuesto por los bloques 7, 1(6), 3, 4(4), 10, 6, 1(1), 5, 2, 4(4), 10, la cifra entre paréntesis es el valor del parámetro N elegido.
Este acuerdo, traducido a un lenguaje sencillo, se puede leer: Si no estoy en mi país de origen entonces situarse en la 6a cifra, leer a la izquierda 4 cifras consecutivas; si estoy en mi país de origen entonces situarse en la primera cifra, leer el valor de la cifra y moverse del número correspondiente hacia la derecha, leer hacia la derecha 4 cifras consecutivas; producir el resultado.
Si el desafío es el siguiente: 374289245663, entonces la respuesta es para una persona en su país de origen: 2892; si la persona no está en su país de origen, la respuesta es entonces: 9824.
Durante la etapa 402, el acuerdo inicial definido de este modo se transmite al terminal del usuario para ser presentado al mismo. Esta transmisión puede ser directa entre el módulo de autenticación y el terminal del usuario o transmitida por el servicio. El usuario puede entonces memorizar el acuerdo.
Puede ocurrir que el usuario tenga dificultad para memorizar el acuerdo o que desee reforzar la seguridad del procedimiento. Para responder a estos problemas, según modos de realización particulares de la invención, una etapa 403 opcional permite ofrecer al usuario adaptar el acuerdo inicial seleccionado.
La adaptación que se ofrece normalmente comprende la posibilidad de simplificar el acuerdo para que sea más fácil de memorizar o, por el contrario, complejizarla para aumentar el nivel de seguridad deseado. En algunos modos de realización, solo se puede proporcionar una de estas adaptaciones. Las adaptaciones se pueden efectuar bajo el control del usuario o bajo el control del módulo de control.
En el primer caso, por simplificación, se ofrece al usuario la posibilidad de seleccionar uno o más bloques algorítmicos básicos para eliminarlos del acuerdo. El acuerdo resultante es, por lo tanto, más simple que el acuerdo inicial. Ventajosamente, el sistema puede limitar el nivel de simplificación para evitar que el acuerdo resultante sea demasiado simple, lo que podría debilitar la seguridad del sistema. Por ejemplo, puede ser necesario un número mínimo de bloques algorítmicos básicos.
Para complejizar el acuerdo, se le puede ofrecer al usuario la posibilidad de seleccionar uno o más bloques algorítmicos básicos de una lista para agregarlos al acuerdo. La manipulación se puede hacer, por ejemplo, usando arrastrar y soltar para insertar un nuevo bloque en el lugar de su elección. Por tanto, el número de etapas algorítmicas del acuerdo aumenta a medida que aumenta su complejidad. La posibilidad de adivinar el acuerdo mediante la observación del desafío y la respuesta disminuye, aumentando en consecuencia la seguridad de la solución.
En otro modo de realización, las operaciones de simplificación o de complejización se realizan bajo el control del módulo de control. Es entonces este módulo de control el que selecciona el o los bloques algorítmicos básicos que se eliminarán del acuerdo para la simplificación. Sigue siendo él quien selecciona nuevos bloques y los inserta en el acuerdo para su complejización.
Una vez satisfecho, el usuario valida entonces el acuerdo resultante.
Puede suceder que un usuario malinterprete el acuerdo. Ventajosamente, el procedimiento comprende una etapa 404 opcional de prueba del acuerdo. Durante esta etapa, el módulo de control genera un desafío, normalmente de forma aleatoria, y lo envía al usuario. Este último usa el acuerdo para calcular una respuesta y envía esta respuesta al módulo de control. Este último aplica el acuerdo al desafío y produce su versión de la respuesta resultante de la aplicación del acuerdo al desafío. Verifica entonces que el usuario haya enviado la respuesta esperada según el desafío y el acuerdo. Esta prueba se puede realizar para varios desafíos. Si el usuario ha enviado la respuesta esperada, se valida el acuerdo. En caso contrario, o en presencia de una alta tasa de error si se realizan varias pruebas, se propone volver a una etapa 403 de adaptación del acuerdo. En ciertos modos de realización, por ejemplo, si la simplificación del acuerdo no es deseable, del mismo modo es posible volver a la etapa 401 para seleccionar un nuevo acuerdo inicial.
Una vez validado el acuerdo, durante una etapa 405, el acuerdo está grabado en la base de datos 303 asociado con el identificador de usuario. En los sistemas donde el módulo de autenticación maneja la autenticación de usuarios para múltiples servicios, el acuerdo almacenado se asocia con un usuario y el servicio relevante. El acuerdo puede almacenarse en forma de algoritmo finalizado o bien en forma de lista de identificadores de los bloques algorítmicos básicos que constituyen el acuerdo y de los posibles parámetros de estos bloques básicos. El acuerdo se puede determinar entonces buscando los bloques algorítmicos básicos en la base 302 de datos.
El procedimiento de inscripción se completa entonces.
La figura 5 ilustra un procedimiento de autenticación en un modo de realización de la invención. Este procedimiento de autenticación normalmente ocurre cuando un usuario, con la ayuda de su terminal, desea conectarse a un servicio. El terminal transmite el identificador del usuario al servicio. Este identificador puede corresponder a un identificador introducido por el usuario, por ejemplo del tipo de nombre de usuario (login en inglés). También se puede tratar de un identificador único asociado al terminal como el identificador único utilizado en telefonía móvil y conocido como IMSI (International Mobile Subscriber en inglés) que permite identificar a un usuario registrado de la red de telefonía móvil. Este identificador se almacena en la tarjeta SIM (Subscriber Identity Module en inglés) del teléfono. El servicio envía entonces una solicitud de autenticación al módulo de autenticación que comprende el identificador del usuario. Ventajosamente, la solicitud del mismo modo comprende un identificador de servicio asociado al servicio que envía la solicitud. Este identificador de servicio es útil, por ejemplo, cuando la autenticación se subcontrata a un tercero de autenticación que gestiona la autenticación para varios servicios.
Durante una primera etapa 501, el módulo de control del módulo de autenticación genera un desafío para el usuario identificado por su identificador. El desafío generado debe ser compatible con el acuerdo asociado al usuario. En particular, cuando el sistema gestiona varias familias de desafíos, el módulo de control debe verificar en la base de datos de usuarios qué familia de desafíos está asociada con el usuario. El desafío normalmente se genera de forma aleatoria. Ventajosamente, el procedimiento de generación asegura la unicidad de los desafíos. Es decir, garantiza que un desafío generado sea siempre diferente a todos los desafíos generados anteriormente para ese mismo usuario.
Durante una etapa 502, el desafío generado se presenta al usuario. En un primer modo de realización, el servicio se usa como un intermediador para transmitir el desafío. El módulo de autenticación transmite el desafío al servicio que retransmite el desafío al terminal del usuario para su visualización. En otro modo de realización, el módulo de autenticación inicia una conexión directa con el terminal del usuario para la transmisión directa del desafío. Por ejemplo, la transmisión se puede realizar en forma de un mensaje de texto corto del tipo SMS o cualquier otro medio de comunicación apropiado.
Durante una etapa 503, se le invita al usuario que introduzca la respuesta correspondiente al desafío con la ayuda del acuerdo que ha memorizado. El usuario introduce entonces su respuesta en el terminal que la retransmite al módulo de autenticación, posiblemente a través del servicio. El cálculo de la respuesta se hace mentalmente por el usuario. El acuerdo, que corresponde al secreto del método propuesto, nunca se expresa ni se introduce en el terminal, lo que imposibilita su observación.
Durante una etapa 504, lo cual puede ocurrir en cualquier momento en el procedimiento descrito, no siendo imperativo el orden descrito de las etapas, el módulo de control del módulo de autenticación obtiene el acuerdo asociado al usuario. Normalmente, el módulo de control encuentra el acuerdo asociado con este usuario en la base de datos de usuarios. Cuando se gestionan varios servicios, el módulo de control encuentra el acuerdo asociado al usuario y al servicio que haya iniciado la solicitud de autenticación. El acuerdo se puede encontrar directamente en la base de datos de usuarios o generarse a partir de los bloques algorítmicos básicos identificados en la base de datos de usuarios y encontrados en la base de datos de bloques algorítmicos básicos. El módulo de autenticación genera entonces la versión ejecutable del acuerdo.
Durante una etapa 505, el módulo de control del módulo de autenticación aplica el acuerdo, en su versión ejecutable, al desafío para determinar una respuesta esperada. En el cálculo se utilizan los parámetros asociados al acuerdo y almacenados en la base de datos de usuarios con el acuerdo. Si los hay, los parámetros basados en las informaciones contextuales se determinan y utilizan durante la ejecución del acuerdo. Estos datos contextuales, como se describió anteriormente, pueden comprender la hora actual, la ubicación geográfica del usuario, por ejemplo, o incluso informaciones relacionadas con el historial de transacciones que entonces se memorizan, por ejemplo, en la base de datos de los usuarios.
Durante una etapa 506, se comparan la respuesta esperada de este modo calculada y la respuesta proporcionada por el usuario.
Durante la etapa 507, se procede a la autenticación propiamente dicha en función del resultado de la comparación de la etapa 506. Si las dos respuestas se corresponden, el usuario se considera autenticado. Si las dos respuestas son diferentes, la autenticación falla. En un modo de realización, al usuario cuya autenticación falla se le propone un número limitado de intentos. Estos nuevos intentos pueden basarse en el desafío inicial o en un nuevo desafío asociado a cada nuevo intento.
Al final del procedimiento de autenticación, el módulo de autenticación normalmente notifica al servicio el resultado de la autenticación. El servicio puede entonces otorgar acceso al usuario según el resultado de la autenticación.
La figura 6 es un diagrama de bloques esquemático de un dispositivo 600 de procesamiento de información para la implementación de uno o varios modos de realización de la invención. El dispositivo 600 de procesamiento de información puede ser un periférico tal como un microordenador, una estación de trabajo o un terminal móvil de telecomunicación. El dispositivo 600 comprende un bus de comunicación conectado a:
- una unidad 601 central de procesamiento, tal como un microprocesador, denominado CPU;
- una memoria 602 de acceso aleatorio, denominada RAM, para memorizar el código ejecutable del procedimiento de realización de la invención así como los registros adecuados para grabar las variables y parámetros necesarios para la implementación del procedimiento según modos de realización de la invención; la capacidad de memoria del dispositivo se puede completar con una memoria RAM opcional conectada a un puerto de expansión, por ejemplo; - una memoria 603 de solo lectura, denominada ROM, para almacenar programas informáticos para la implementación de modos de realización de la invención;
- una interfaz 604 de red normalmente está conectada a una red de comunicación a través de la cual se transmiten o reciben los datos digitales que se van a procesar. La interfaz 604 de red puede ser una sola interfaz de red o estar compuesta por un conjunto de interfaces de red diferentes (por ejemplo, interfaces cableadas e inalámbricas o diferentes tipos de interfaces cableadas o inalámbricas). Los paquetes de datos se envían a través de la interfaz de red para su transmisión o se leen desde la interfaz de red para su recepción bajo el control del software de aplicación que se ejecuta en el procesador 601;
- una interfaz 605 de usuario para recibir entradas de un usuario o mostrar informaciones a un usuario;
- un dispositivo 606 de almacenamiento tal como se describe en la invención y denominado HD;
- un módulo 607 de entrada/salida para la recepción/envío de datos desde/hacia dispositivos externos tales como discos duros, medios de almacenamiento extraíbles u otros.
El código ejecutable se puede almacenar en una memoria 603 de solo lectura, en el dispositivo 606 de almacenamiento o en un soporte digital removible tal como por ejemplo un disco. Según una variante, el código ejecutable de los programas puede recibirse por medio de una red de comunicación, a través de la interfaz 604 de red, para ser almacenado en uno de los medios de almacenamiento del dispositivo 600 de comunicación, tal como el dispositivo 606 de almacenamiento, antes de ser ejecutado.
La unidad 601 central de procesamiento es adecuada para controlar y dirigir la ejecución de instrucciones o porciones de código de software del programa o programas según uno de los modos de realización de la invención, instrucciones que se almacenan en uno de los medios de almacenamiento mencionados anteriormente. Después del encendido, la CPU 601 es capaz de ejecutar instrucciones desde la memoria 602 RAM principal, relacionadas con una aplicación de software. Dicho software, cuando es ejecutado por el procesador 601, provoca la ejecución de los procedimientos descritos.
En este modo de realización, el dispositivo es un dispositivo programable que usa un software para implementar la invención. Sin embargo, alternativamente, la presente invención puede implementarse en hardware (por ejemplo, bajo la forma de un circuito integrado específico o ASIC).
Naturalmente, para satisfacer necesidades específicas, un experto en el campo de la invención podrá aplicar modificaciones en la descripción anterior.
Aunque la presente invención se ha descrito anteriormente con referencia a modos de realización específicos, la presente invención no se limita a los modos de realización específicos, y las modificaciones que se encuentran dentro del alcance de la presente invención serán evidentes para un experto en la materia.

Claims (20)

REIVINDICACIONES
1. Procedimiento de inscripción de un usuario en un servicio, por un módulo de autenticación ejecutado en un servidor, que comprende las etapas siguientes:
- determinación de un acuerdo que permita el cálculo de una respuesta a partir de un desafío por la selección aleatoria de una pluralidad de bloques algorítmicos básicos en un conjunto de bloques algorítmicos básicos;
- transmisión del acuerdo con destino al terminal de un usuario para su presentación al usuario;
- grabación del acuerdo asociado a un identificador del usuario, dicho acuerdo que constituye un secreto compartido entre el usuario y el módulo de autenticación.
2. Procedimiento según la reivindicación 1, caracterizado por que además comprende una etapa de adaptación del acuerdo.
3. Procedimiento según la reivindicación 2, caracterizado por que la etapa de adaptación comprende una etapa de: - simplificación del acuerdo inicialmente determinado por reducción del número de bloques algorítmicos básicos.
4. Procedimiento según la reivindicación 2, caracterizado por que la etapa de adaptación comprende una etapa de: - complejización del acuerdo inicialmente determinado por aumento del número de bloques algorítmicos básicos.
5. Procedimiento según una de las reivindicaciones 3 ó 4, caracterizado por que la etapa de simplificación o de complejización comprende la selección aleatoria de bloques algorítmicos básicos a ser eliminados, respectivamente agregados, al acuerdo.
6. Procedimiento según una de las reivindicaciones 3 ó 4, caracterizado por que la etapa de simplificación o de complejización comprende la recepción de una selección por parte del usuario de bloques algorítmicos básicos a ser eliminados, respectivamente agregados, al acuerdo.
7. Procedimiento según una cualquiera de las reivindicaciones 1 a 6, caracterizado por que comprende además al menos una etapa para probar el acuerdo determinado.
8. Procedimiento según la reivindicación 7, caracterizado por que la etapa de prueba comprende las etapas siguientes: - generación de un desafío compatible con el acuerdo;
-transmisión del desafío con destino a un terminal del usuario;
- recepción de una respuesta al desafío recibida del terminal del usuario;
- comparación de la respuesta recibida con respecto a una respuesta calculada aplicando el acuerdo al desafío generado.
9. Procedimiento según la reivindicación 7, caracterizado porque además comprende una etapa de:
- simplificación del acuerdo tras uno o más fallos de la etapa de prueba.
10. Procedimiento según la reivindicación 7, caracterizado por que además comprende una etapa de:
- determinación de un nuevo acuerdo tras uno o más fallos de la etapa de prueba.
11. Procedimiento según una de las reivindicaciones 1 a 10, caracterizado por que los bloques algorítmicos básicos comprenden una primera forma inteligible para el usuario y una segunda forma correspondiente a un código ejecutable por un dispositivo de procesamiento de información.
12. Procedimiento según una de las reivindicaciones 1 a 11, caracterizado por que el acuerdo grabado asociado con un usuario del mismo modo está asociado a un identificador de servicio.
13. Procedimiento de autenticación de un usuario en un servicio, por un módulo de autenticación ejecutado en un servidor, que comprende las etapas siguientes:
- obtención de un acuerdo asociado con el usuario que permita el cálculo de una respuesta a partir de un desafío por la selección aleatoria de una pluralidad de bloques algorítmicos básicos en un conjunto de bloques algorítmicos básicos, dicho acuerdo que constituye un secreto compartido entre el usuario y el módulo de autenticación;
- generación de un desafío compatible con el acuerdo;
- transmisión del desafío con destino a un terminal del usuario;
- recepción de una respuesta al desafío recibida del terminal del usuario;
- comparación de la respuesta recibida con respecto a una respuesta calculada aplicando el acuerdo al desafío generado.
14. Procedimiento según la reivindicación 13, caracterizado por que el desafío generado es diferente a todos los desafíos generados anteriormente para el mismo usuario.
15. Procedimiento según una de las reivindicaciones 13 ó 14, caracterizado por que el desafío se transmite directamente al terminal del usuario.
16. Procedimiento según una de las reivindicaciones 13 ó 14, caracterizado por que el desafío se transmite a un servicio que actúa de intermediario entre el servidor y el terminal del usuario.
17. Dispositivo de procesamiento de información caracterizado por que comprende un procesador configurado para ejecutar un procedimiento de inscripción según una de las reivindicaciones 1 a 12.
18. Dispositivo de procesamiento de información caracterizado por que comprende un procesador configurado para ejecutar un procedimiento de autenticación según una de las reivindicaciones 13 a 16.
19. Programa de ordenador que comprende instrucciones adecuadas para la implementación de cada una de las etapas del procedimiento según una cualquiera de las reivindicaciones 1 a 16 cuando dicho programa se ejecuta en un ordenador.
20. Medio de almacenamiento de información, removible o no, legible parcial o totalmente por un ordenador o un microprocesador que comprende instrucciones de código de un programa de ordenador para la ejecución de cada una de las etapas del procedimiento según cualquiera de las reivindicaciones 1 a 16.
ES18825747T 2017-11-24 2018-11-19 Procedimientos y dispositivos para la inscripción y autenticación de un usuario en un servicio Active ES2940642T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1761152A FR3074321B1 (fr) 2017-11-24 2017-11-24 Procedes et dispositifs pour l'enrolement et l'authentification d'un utilisateur aupres d'un service
PCT/FR2018/052902 WO2019102120A1 (fr) 2017-11-24 2018-11-19 Procédés et dispositifs pour l'enrôlement et l'authentification d'un utilisateur auprès d'un service

Publications (1)

Publication Number Publication Date
ES2940642T3 true ES2940642T3 (es) 2023-05-10

Family

ID=61802035

Family Applications (1)

Application Number Title Priority Date Filing Date
ES18825747T Active ES2940642T3 (es) 2017-11-24 2018-11-19 Procedimientos y dispositivos para la inscripción y autenticación de un usuario en un servicio

Country Status (6)

Country Link
US (1) US11483166B2 (es)
EP (1) EP3729307B1 (es)
ES (1) ES2940642T3 (es)
FR (1) FR3074321B1 (es)
PT (1) PT3729307T (es)
WO (1) WO2019102120A1 (es)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112511569B (zh) * 2021-02-07 2021-05-11 杭州筋斗腾云科技有限公司 网络资源访问请求的处理方法、系统及计算机设备
FR3121764B1 (fr) 2021-04-09 2025-05-09 Hiasecure Méthode de contrôle d’accès à un bien ou service distribué par un réseau de communication de données

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8868919B2 (en) * 2012-10-23 2014-10-21 Authernative, Inc. Authentication method of field contents based challenge and enumerated pattern of field positions based response in random partial digitized path recognition system
US9491258B2 (en) * 2014-11-12 2016-11-08 Sorenson Communications, Inc. Systems, communication endpoints, and related methods for distributing images corresponding to communication endpoints
US9881054B2 (en) * 2015-09-30 2018-01-30 International Business Machines Corporation System and method of query processing with schema change in JSON document store
US10791123B2 (en) * 2015-11-25 2020-09-29 Yaron Gvili Selectivity in privacy and verification with applications
US10965671B2 (en) * 2016-05-10 2021-03-30 National Ict Australia Limited Authenticating a user

Also Published As

Publication number Publication date
US11483166B2 (en) 2022-10-25
EP3729307B1 (fr) 2022-12-21
PT3729307T (pt) 2023-03-23
FR3074321B1 (fr) 2021-10-29
WO2019102120A1 (fr) 2019-05-31
EP3729307A1 (fr) 2020-10-28
US20200336317A1 (en) 2020-10-22
FR3074321A1 (fr) 2019-05-31

Similar Documents

Publication Publication Date Title
US10735407B2 (en) System and method for temporary password management
ES2739896T3 (es) Acceso seguro a datos de un dispositivo
US11271926B2 (en) System and method for temporary password management
ES2894480T3 (es) Procedimiento para realizar la autenticación
US11388174B2 (en) System and method for securing a communication channel
ES2972816T3 (es) Autenticación de inicio de sesión y de transacciones segura y eficiente utilizando iPhones y otros dispositivos de comunicación móvil inteligentes
ES2820554T3 (es) Método y aparato para autentificar un usuario, método y aparato para registrar un dispositivo ponible
CA2876629C (en) Methods and systems for using derived credentials to authenticate a device across multiple platforms
ES2553222T3 (es) Seguridad de autentificación 2CHK mejorada con transacciones de consulta
EP3230917B1 (en) System and method for enabling secure authentication
US9787689B2 (en) Network authentication of multiple profile accesses from a single remote device
KR20080059617A (ko) 사용자 인증 방법 및 디바이스
EP3238369A1 (en) Systems and methods for authentication using multiple devices
JP2009510644A (ja) 安全な認証のための方法及び構成
CN103119975A (zh) 用户账户恢复
US20240394695A1 (en) Multi-Factor User Authentication
ES2940642T3 (es) Procedimientos y dispositivos para la inscripción y autenticación de un usuario en un servicio
US11151243B1 (en) Password hopping system and method
ES2778451T3 (es) Protección de procedimientos de inicio de sesión
Spychalski et al. Conceptual design and analysis of a mobile digital identity for eHealth applications
WO2013045716A1 (es) Sistema de autenticación mutua antipiratería en los soft token tipo smartphone y en sus sms
US20230196376A1 (en) Multi-Factor User Authentication
US20230196375A1 (en) Multi-Factor User Authentication
CA2904646A1 (en) Secure authentication using dynamic passcode
ES3013692T3 (en) Password management system, device and method of the same