ES2680152T3 - Método y aparato de autenticación conveniente para el usuario usando una aplicación de autenticación móvil - Google Patents
Método y aparato de autenticación conveniente para el usuario usando una aplicación de autenticación móvil Download PDFInfo
- Publication number
- ES2680152T3 ES2680152T3 ES13748438.2T ES13748438T ES2680152T3 ES 2680152 T3 ES2680152 T3 ES 2680152T3 ES 13748438 T ES13748438 T ES 13748438T ES 2680152 T3 ES2680152 T3 ES 2680152T3
- Authority
- ES
- Spain
- Prior art keywords
- user
- application
- authentication
- authentication device
- server
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/083—Network architectures or network communication protocols for network security for authentication of entities using passwords
- H04L63/0838—Network architectures or network communication protocols for network security for authentication of entities using passwords using one-time-passwords
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/34—User authentication involving the use of external additional devices, e.g. dongles or smart cards
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/36—User authentication by graphic or iconic representation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/606—Protecting data by securing the transmission between two devices or processes
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09C—CIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
- G09C5/00—Ciphering apparatus or methods not provided for in the preceding groups, e.g. involving the concealment or deformation of graphic data such as designs, written or printed messages
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0853—Network architectures or network communication protocols for network security for authentication of entities using an additional device, e.g. smartcard, SIM or a different communication terminal
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0869—Network architectures or network communication protocols for network security for authentication of entities for achieving mutual authentication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/18—Network architectures or network communication protocols for network security using different networks or channels, e.g. using out of band channels
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3215—Cryptographic 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 a plurality of channels
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3226—Cryptographic 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 a predetermined code, e.g. password, passphrase or PIN
- H04L9/3228—One-time or temporary data, i.e. information which is sent for every authentication or authorization, e.g. one-time-password, one-time-token or one-time-key
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3234—Cryptographic 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 involving additional secure or trusted devices, e.g. TPM, smartcard, USB or software token
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/06—Authentication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/60—Context-dependent security
- H04W12/69—Identity-dependent
- H04W12/77—Graphical identity
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- Telephonic Communication Services (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
- Mobile Radio Communication Systems (AREA)
- Storage Device Security (AREA)
Abstract
Un método (400) para asegurar la interacción con una aplicación por un usuario (290) que accede remotamente a dicha aplicación a través de un dispositivo (230) de acceso que está conectado a un servidor (210) de aplicación que aloja dicha aplicación, que comprende las etapas de: en un dispositivo (240) de autenticación de usuario capturar (435) una señal emitida por el dispositivo de acceso, dicha señal codificada con un mensaje de iniciación de autenticación, comprendiendo dicho mensaje de iniciación de autenticación al menos un identificador de aplicación que corresponde a una identidad de la aplicación; en el dispositivo (240) de autenticación de usuario decodificar (435) dicha señal y obtener el mensaje de iniciación de autenticación; en el dispositivo (240) de autenticación de usuario recuperar (440) desde el mensaje de iniciación de autenticación el identificador de aplicación; en el dispositivo (240) de autenticación de usuario generar (449) un valor de seguridad dinámico usando un primer algoritmo criptográfico parametrizado con una clave de generación de valor de seguridad dinámico criptográfico y usar al menos un elemento de datos personalizado que está asociado con el usuario particular o el dispositivo de autenticación de usuario particular; en el dispositivo (240) de autenticación de usuario generar (450) un mensaje de respuesta que comprende al menos el valor de seguridad dinámico generado; el método (400) caracterizado por que comprende adicionalmente las etapas de: en el dispositivo (240) de autenticación de usuario usar el identificador de aplicación recuperado desde el mensaje de iniciación de autenticación para obtener una representación interpretable humana de la identidad de aplicación y presentar (442) la representación de identidad de aplicación obtenida al usuario (290) usando una interfaz (340) de salida de usuario del dispositivo (240) de autenticación de usuario; en el dispositivo (240) de autenticación de usuario, generar el valor de seguridad dinámico de manera que esté criptográficamente enlazado a la identidad de aplicación presentada al usuario; en el dispositivo (240) de autenticación de usuario obtener (445) desde el usuario, usando una interfaz (350) de entrada de usuario del dispositivo (240) de autenticación de usuario, una aprobación para generar un mensaje de respuesta y hacer el mensaje de respuesta generado disponible a dicho servidor (220) de verificación; hacer (460) el mensaje de respuesta generado disponible a dicho servidor (220) de verificación; en el servidor (220) de verificación recibir el mensaje de respuesta; verificar (470) el mensaje de respuesta que incluye verificar (475) la validez del valor de seguridad dinámico; comunicar (480) el resultado de la verificación del mensaje de respuesta a la aplicación.
Description
5
10
15
20
25
30
35
40
45
50
55
DESCRIPCION
Método y aparato de autenticación conveniente para el usuario usando una aplicación de autenticación móvil Campo de la invención
La invención se refiere a asegurar el acceso remoto a ordenadores y aplicaciones y transacciones remotas a través de redes informáticas. Más específicamente, la invención se refiere a métodos y aparatos para autenticar usuarios a servidores de aplicación remotos.
Antecedentes de la invención
A medida que el acceso remoto de los sistemas informáticos y aplicaciones crece en popularidad, el número y diversidad de transacciones a las que se accede remotamente a través de redes públicas tales como Internet ha aumentado drásticamente. Esta popularidad tiene subrayada una necesidad de seguridad; en particular: cómo asegurar que las personas que acceden remotamente a una aplicación son quien reivindican ser, cómo asegurar que las transacciones que se están realizando remotamente se inician por individuos legítimos, y cómo asegurar que los datos de transacción no se han modificado antes de recibirse en un servidor de aplicación.
En el pasado, los proveedores de aplicación se han basado en contraseñas estáticas para proporcionar la seguridad para aplicaciones remotas. En los últimos años se ha hecho evidente que las contraseñas estáticas no son suficientes y que se requiere tecnología de seguridad más avanzada.
Una tecnología de autenticación que ofrece un nivel de seguridad significativamente superior que las contraseñas estáticas se ofrece por 'dispositivos de testigo de autenticación fuertes'. Ejemplos típicos de testigos de autenticación fuertes son los productos de la línea DIGIPASS®, comercializados por Vasco Data Security Inc. de Chicago, Illinois (véase el sitio web
http://www.vasco.com). Un testigo de autenticación fuerte es un dispositivo alimentado por batería autónomo, especializado para proporcionar funciones de autenticación y/o firma de transacción, normalmente de tamaño de bolsillo, con su propia pantalla y teclado numérico. En algunos casos el teclado numérico se reduce a un único botón o incluso se omite completamente, en otros casos el teclado numérico puede ser un teclado completo. La pantalla y el teclado numérico de un testigo de autenticación fuerte típico son no extraíbles, y no son utilizables para el usuario, controlados completamente por el testigo, e inmunes para interferencia por software malicioso en un ordenador anfitrión. Por lo tanto, se considera que los testigos de autenticación fuertes tienen una interfaz de usuario confiable en contraste a, por ejemplo, los PC donde hay siempre la posibilidad de que software malicioso tal como un virus o un troyano presente mensajes falsos al usuario, o capture lo que el usuario introduzca en el teclado numérico, o lea en memoria datos sensibles asociados con una aplicación de seguridad o modifique datos antes de que se firmen. El fin principal de un testigo de autenticación fuerte es generar valores de seguridad dinámicos que se denominan normalmente como 'Contraseñas de Un Solo Uso' (OTP) o contraseñas dinámicas. Típicamente estas OTP se generan combinando criptográficamente un secreto que se comparte entre el testigo y un servidor de verificación o de autenticación con un valor dinámico tal como un valor de tiempo, un valor de contador o un desafío de servidor que se proporciona al testigo, o una combinación de estos. Algunos testigos de actualización fuertes pueden usar también datos (tales como datos de transacción) que se han proporcionado al testigo como el valor dinámico o en combinación con cualquiera de los valores dinámicos anteriormente mencionados para generar un valor de seguridad. En estos casos el valor de seguridad resultante se pretende para indicar la aprobación del usuario de los datos y el valor de seguridad normalmente se denomina como una firma electrónica o Código de Autenticación de Mensaje (MAC). En algunos casos combinando criptográficamente el secreto con un valor dinámico comprende realizar una encriptación simétrica o algoritmo de desencriptación (tal como por ejemplo DES, 3DES o AES) a través de datos relacionados con el valor dinámico y usar el secreto como una encriptación simétrica o clave de desencriptación. En algunos casos combinando criptográficamente el secreto con un valor dinámico comprende realizar una función de troceo criptográfico (tal como por ejemplo SHA-1) que se codifica con el secreto y usar los datos relacionados con el valor dinámico como datos de entrada para la función de troceo. Algunos testigos de autenticación fuertes consisten en un dispositivo con una pantalla y un teclado numérico que puede comunicar con una tarjeta inteligente insertada mediante la cual la generación de las OTP o MAC se realiza parcialmente por el mismo dispositivo y parcialmente por la tarjeta inteligente insertada.
http://www.vasco.com). Un testigo de autenticación fuerte es un dispositivo alimentado por batería autónomo, especializado para proporcionar funciones de autenticación y/o firma de transacción, normalmente de tamaño de bolsillo, con su propia pantalla y teclado numérico. En algunos casos el teclado numérico se reduce a un único botón o incluso se omite completamente, en otros casos el teclado numérico puede ser un teclado completo. La pantalla y el teclado numérico de un testigo de autenticación fuerte típico son no extraíbles, y no son utilizables para el usuario, controlados completamente por el testigo, e inmunes para interferencia por software malicioso en un ordenador anfitrión. Por lo tanto, se considera que los testigos de autenticación fuertes tienen una interfaz de usuario confiable en contraste a, por ejemplo, los PC donde hay siempre la posibilidad de que software malicioso tal como un virus o un troyano presente mensajes falsos al usuario, o capture lo que el usuario introduzca en el teclado numérico, o lea en memoria datos sensibles asociados con una aplicación de seguridad o modifique datos antes de que se firmen. El fin principal de un testigo de autenticación fuerte es generar valores de seguridad dinámicos que se denominan normalmente como 'Contraseñas de Un Solo Uso' (OTP) o contraseñas dinámicas. Típicamente estas OTP se generan combinando criptográficamente un secreto que se comparte entre el testigo y un servidor de verificación o de autenticación con un valor dinámico tal como un valor de tiempo, un valor de contador o un desafío de servidor que se proporciona al testigo, o una combinación de estos. Algunos testigos de actualización fuertes pueden usar también datos (tales como datos de transacción) que se han proporcionado al testigo como el valor dinámico o en combinación con cualquiera de los valores dinámicos anteriormente mencionados para generar un valor de seguridad. En estos casos el valor de seguridad resultante se pretende para indicar la aprobación del usuario de los datos y el valor de seguridad normalmente se denomina como una firma electrónica o Código de Autenticación de Mensaje (MAC). En algunos casos combinando criptográficamente el secreto con un valor dinámico comprende realizar una encriptación simétrica o algoritmo de desencriptación (tal como por ejemplo DES, 3DES o AES) a través de datos relacionados con el valor dinámico y usar el secreto como una encriptación simétrica o clave de desencriptación. En algunos casos combinando criptográficamente el secreto con un valor dinámico comprende realizar una función de troceo criptográfico (tal como por ejemplo SHA-1) que se codifica con el secreto y usar los datos relacionados con el valor dinámico como datos de entrada para la función de troceo. Algunos testigos de autenticación fuertes consisten en un dispositivo con una pantalla y un teclado numérico que puede comunicar con una tarjeta inteligente insertada mediante la cual la generación de las OTP o MAC se realiza parcialmente por el mismo dispositivo y parcialmente por la tarjeta inteligente insertada.
Una manera típica de proporcionar datos a un testigo de autenticación fuerte es dejando que el usuario introduzca los datos manualmente en el teclado numérico del testigo. Cuando la cantidad de datos que ha de introducirse de esta manera supera unas pocas docenas de caracteres, este proceso puede percibirse por los usuarios como demasiado engorroso.
Una manera típica de proporcionar las OTP o MAC generadas desde el testigo de autenticación al sistema que necesita verificarlas, consiste en visualizar el testigo la OTP o MAC generada en su pantalla y copiar el usuario la OTP o MAC visualizada en su PC (u otro dispositivo de acceso a Internet) que transmite esta OTP o MAC a la aplicación o servidor de autenticación donde puede a continuación verificarse la validez de la OTP o MAC. Sin embargo, esto también requiere algunas acciones del usuario que pueden percibirse como inconvenientes.
Los testigos de autenticación fuertes normalmente se basan en mecanismos criptográficos simétricos para generar OTP o MAC usando claves secretas simétricas que se han de compartir entre un testigo de autenticación fuerte y un
5
10
15
20
25
30
35
40
45
50
55
servidor de verificación. Esto puede ser un problema si un usuario desearía usar su testigo con varias aplicaciones puesto que todos estos servidores de aplicación tendrían entonces que compartir la clave o claves secretas del testigo que a su vez tiene el potencial de crear riesgos de seguridad.
Otro aspecto de testigos de autenticación fuerte de hardware especializado es que inevitablemente tienen un cierto coste mínimo que no es cero. Esto puede hacer en ocasiones a los testigos de autenticación fuertes de hardware especializado menos atractivos para un número de aplicaciones para las que el coste por usuario puede en ocasiones ser un factor crítico.
El documento WO2009/101549 A2 describe un sistema donde el testigo de autenticación fuerte es un dispositivo móvil del usuario, que genera credenciales de usuario para servicios que se accede por un terminal remoto.
Lo que es necesario es un mecanismo de autenticación que ofrezca, por un lado, el mismo nivel de seguridad que los testigos de autenticación fuertes, pero que por otra parte sea muy conveniente para el usuario y pueda usarse fácilmente con varias aplicaciones o proveedores de aplicación y sea muy económico.
Descripción de la invención
La invención se define en las reivindicaciones 1, 14 y 17, respectivamente. Se exponen realizaciones particulares en las reivindicaciones dependientes.
Los aspectos de la presente invención están basados en una combinación de ideas por los inventores tales como, por ejemplo, la idea de los inventores de que pueden asegurarse varias diferentes aplicaciones con el mismo testigo de autenticación fuerte sin la necesidad de que estas diferentes aplicaciones compartan todas los secretos del testigo si estas aplicaciones pueden basarse en la verificación de las OTP y MAC generadas por ese testigo en un servidor de autenticación de terceros que es confiable por las aplicaciones y que tiene acceso a los testigos secretos.
Una idea adicional en la que están basados los aspectos de la invención es que el proceso de autenticación puede hacerse muy conveniente para el usuario si el dispositivo del usuario que genera las OTP o MAC comprende interfaces de comunicación para intercambiar datos con dispositivos informáticos mediante los cuales estas interfaces de comunicación puede suponerse que están omnipresentes con respecto a las aplicaciones dirigidas (p. ej. aplicaciones basadas en web) y los dispositivos de acceso típicos, p. ej. Ordenadores Personales (PC) o portátiles, que puede esperarse que los usuarios usen para acceder a estas aplicaciones sin requerir que los usuarios participen en etapas técnicas potencialmente complicadas y propensas a errores tales como son instalar controladores para estas interfaces de comunicación.
Otra idea en la que están basados los aspectos de la invención es que la solución puede ser muy rentable y es posible re-utilizar un dispositivo, tal como por ejemplo un teléfono móvil, que el usuario ya tiene de cualquier manera en lugar de tener que distribuir nuevos dispositivos de hardware especializados.
Dispositivos de autenticación
En algunas realizaciones de la invención se proporciona a cada usuario de una pluralidad de usuarios con un dispositivo de autenticación. En algunas realizaciones el dispositivo de autenticación es un dispositivo de hardware especializado tal como un testigo de autenticación fuerte especializado. En otras realizaciones el dispositivo de autenticación comprende un dispositivo de cliente electrónico móvil, tal como, por ejemplo, un teléfono inteligente o un asistente digital personal (PDA). En algunas realizaciones el dispositivo de cliente electrónico móvil portátil está equipado con una aplicación de software de autenticación. En algunas realizaciones el dispositivo de autenticación se ha personalizado con al menos un valor secreto que el dispositivo de autenticación puede usar, directa o indirectamente, en la generación de valores de seguridad dinámicos como se explica a continuación.
Generación de valores de seguridad dinámicos.
En algunas realizaciones el dispositivo de autenticación está adaptado para generar valores de seguridad dinámicos. En algunas realizaciones los valores de seguridad dinámicos generados pueden comprender contraseñas de un solo uso o dinámicas, y/o respuestas a desafíos y/o firmas electrónicas en datos de transacción. En algunas realizaciones el dispositivo de autenticación está adaptado para presentar valores de seguridad dinámicos generados al usuario. En algunas realizaciones los valores de seguridad dinámicos se generan combinando criptográficamente al menos un valor secreto (tal como una clave criptográfica) con al menos una variable dinámica (tal como un valor de tiempo y/o un valor de contador y/o un desafío y/o datos relacionados con transacción o cualquier combinación de estos). En algunas realizaciones la combinación criptográfica comprende realizar un algoritmo criptográfico. En algunas realizaciones el algoritmo criptográfico puede comprender una encriptación simétrica o algoritmo de desencriptación tal como DES, 3DES o AES. En algunas realizaciones el algoritmo criptográfico puede comprender un troceo o algoritmo de troceo con clave tal como SHA-1.
En algunas realizaciones el dispositivo de autenticación puede usar también una aplicación que identifica el elemento de datos, por ejemplo un identificador de aplicación, cuando se genera un valor de seguridad dinámico. En
5
10
15
20
25
30
35
40
45
50
55
60
algunas realizaciones el dispositivo de autenticación combina criptográficamente el identificador de aplicación con el al menos un valor secreto y posiblemente otros datos, tales como la al menos una variable dinámica para generar un valor de seguridad dinámico.
Manejo de PIN.
En algunas realizaciones el dispositivo de autenticación está adaptado para recibir un PIN o valor de contraseña proporcionado por el usuario. En algunas realizaciones el dispositivo de autenticación está adaptado para pasar un PIN o valor de contraseña proporcionado por el usuario a un segundo dispositivo de seguridad (tal como una tarjeta inteligente) para verificación. En algunas realizaciones el dispositivo de autenticación está adaptado para eliminar de su memoria cualquier copia en cualquier formato de un valor de PIN de este tipo una vez que se ha verificado ese valor de PIN. En algunas realizaciones el dispositivo de autenticación se ha adaptado para borrar o sobrescribir de manera activa las localizaciones de memoria donde un valor de PIN de este tipo se ha almacenado temporalmente después de que se ha verificado el valor de PIN. En algunas realizaciones el dispositivo de autenticación almacena un valor de referencia que está relacionado matemáticamente con un valor correcto para el PIN o contraseña que se espera que se proporcione por el usuario y el dispositivo de autenticación está adaptado para comparar un PIN o valor de contraseña proporcionado por un usuario a ese valor de referencia. En algunas realizaciones el dispositivo de autenticación está adaptado para generar el valor secreto usando un PIN o valor de contraseña proporcionado por el usuario. En algunas realizaciones el dispositivo de autenticación almacena un valor que comprende el valor secreto que está encriptado con una clave de encriptación que se deriva desde un PIN o valor de contraseña proporcionado por el usuario y el dispositivo de autenticación está adaptado para derivar un valor de clave de encriptación desde un PIN o valor de contraseña proporcionado por el usuario y usar ese valor de clave de encriptación para desencriptar el valor secreto encriptado que puede usarse a continuación p. ej. para generar un valor de seguridad dinámico.
Interfaces de comunicación
En algunas realizaciones el dispositivo de autenticación puede estar en red. En algunas realizaciones el dispositivo de autenticación puede comprender una interfaz de comunicación de datos para intercambiar datos a través de una red informática. En algunas realizaciones la interfaz de comunicación puede comprender una interfaz de comunicación inalámbrica p. ej. para comunicar con una red de telefonía móvil. En algunas realizaciones el dispositivo de autenticación puede adaptarse para enviar y/o recibir datos relacionados con autenticación a un servidor a través de una red informática. En algunas realizaciones el dispositivo de autenticación está adaptado para comunicar datos a través de la Internet. En algunas realizaciones el dispositivo de autenticación comprende una pila de TCP/IP (Protocolo de Control de Transmisión / Protocolo de Internet). En algunas realizaciones el dispositivo de autenticación está adaptado para intercambiar datos a través de una conexión de SSL (Capa de Conexiones Segura) y/o TLS (Seguridad de Capa de Transporte). En algunas realizaciones el dispositivo de autenticación está adaptado para enviar y/o recibir mensajes de HTTP (Protocolo de Transferencia de Hipertexto) y/o HTTPS (Protocolo de Transferencia de Hipertexto Seguro)
Mensaje de iniciación de autenticación
En algunas realizaciones el dispositivo de autenticación puede estar adaptado para recibir un mensaje de iniciación de autenticación. En una realización de la invención el mensaje de iniciación de autenticación puede incluir un desafío (p. ej., un número aleatorio o troceo de datos de transacción que puede procesarse para fines de autenticación/validación). En otra realización de la invención el mensaje de iniciación de autenticación incluye datos relacionados con transacción que incluyen valores de transacción o información de contexto de transacción. En algunas realizaciones la información de contexto de transacción puede incluir etiquetas de datos de transacción y/o información con respecto al significado de los datos relacionados con transacción. En algunas realizaciones el mensaje de iniciación de autenticación incluye información relacionada con el flujo de aplicación. En algunas realizaciones la información relacionada con el flujo de aplicación puede incluir información con respecto al tipo de transacción. En algunas realizaciones la información relacionada con el flujo de aplicación puede guiar al dispositivo de autenticación con respecto a la manera en la que el dispositivo de autenticación debería manejar los datos relacionados con transacción recibidos y/o cómo el dispositivo de autenticación debería manejar el flujo de interacción de usuario, por ejemplo qué datos deberían presentarse al usuario para revisión y/o aprobación y si debería consultarse al usuario o proporcionarse la oportunidad para corregir datos o proporcionar manualmente datos adicionales y/o qué mensajes deberían presentarse al usuario.
En algunas realizaciones el dispositivo de autenticación puede comprender componentes ópticos para recibir información óptica. En algunas realizaciones el mensaje de iniciación de autenticación puede codificarse como una señal óptica emitida por el dispositivo de acceso del usuario (p. ej. como un patrón dinámico o estático visualizado en la pantalla del dispositivo de acceso) y recibirse y decodificarse por el dispositivo de autenticación del usuario. En algunas realizaciones el dispositivo de autenticación puede comprender una cámara y el mensaje de iniciación de autenticación puede codificarse como una o más instantáneas o imágenes visualizadas en la pantalla del dispositivo de acceso y capturarse por la cámara del dispositivo de autenticación. En algunas realizaciones el mensaje de iniciación de autenticación puede codificarse como un código de QR (Código de Respuesta Rápida) que el dispositivo de autenticación lee con su cámara y decodifica para obtener el mensaje de iniciación de autenticación
5
10
15
20
25
30
35
40
45
50
55
60
real. En algunas realizaciones el mensaje de iniciación de autenticación puede codificarse usando más de un código de QR. En algunas realizaciones el mensaje de iniciación de autenticación puede comprender o tomar la forma de un URL.
Credencial de servidor
En algunas realizaciones el mensaje de iniciación de autenticación puede incluir una credencial de servidor que se ha generado criptográficamente por un servidor (que puede ser por ejemplo un servidor de aplicación o el servidor de autenticación). En algunas realizaciones el servidor ha generado la credencial del servidor usando una clave criptográfica simétrica y una clave secreta que se comparte con el dispositivo de autenticación o un segundo dispositivo de seguridad con el que se comunica el dispositivo de autenticación. En algunas realizaciones el dispositivo de autenticación está adaptado para verificar la credencial del servidor. En algunas realizaciones el dispositivo de autenticación está adaptado para verificar la credencial del servidor en cooperación con un segundo dispositivo de seguridad. En algunas realizaciones la verificación de la credencial del servidor se hace usando un algoritmo criptográfico simétrico que usa una clave secreta compartida con el servidor. En algunas realizaciones la credencial del servidor comprende una contraseña de un solo uso de servidor. En algunas realizaciones la credencial del servidor comprende una firma de datos. En algunas realizaciones la credencial del servidor comprende un código de autenticación de mensaje (MAC). En algunas realizaciones la credencial del servidor comprende datos de entrada encriptados. En algunas realizaciones el fin de la credencial del servidor es autenticar un servidor o aplicación de servidor. En algunas realizaciones el fin de la credencial del servidor es autenticar datos de entrada (que pueden estar comprendidos en el mensaje de iniciación de autenticación) recibidos por el dispositivo de autenticación desde un servidor. En algunas realizaciones el fin de la credencial del servidor es proteger la integridad de datos de entrada (que pueden estar comprendidos en el mensaje de iniciación de autenticación) recibidos por el dispositivo de autenticación desde un servidor. En algunas realizaciones el fin de la credencial del servidor es proteger la confidencialidad de datos de entrada (que pueden estar comprendidos en el mensaje de iniciación de autenticación) recibidos por el dispositivo de autenticación desde un servidor. En algunas realizaciones el fin de la credencial del servidor es enlazar criptográficamente juntos los datos de entrada (que pueden estar comprendidos en el mensaje de iniciación de autenticación) recibidos por el dispositivo de autenticación desde un servidor. En algunas realizaciones la generación de valores de seguridad dinámicos por el dispositivo de autenticación puede estar condicionada a la verificación satisfactoria de la credencial del servidor.
Identificador de sesión de autenticación
En algunas realizaciones el mensaje de iniciación de autenticación puede incluir un elemento de datos para identificar la sesión de autenticación, por ejemplo un identificador de sesión de autenticación. En algunas realizaciones un identificador de sesión de autenticación de este tipo, o de manera corta ID de sesión, puede comprender un número de secuencia. En algunas realizaciones el ID de sesión puede comprender un número generado aleatoriamente. En algunas realizaciones el ID de sesión puede generarse por un servidor de aplicación. En algunas realizaciones el ID de sesión puede generarse por un servidor de autenticación. En alguna realización el ID de sesión puede usarse por un dispositivo de autenticación que recibe el mensaje de iniciación de autenticación en la generación de un valor de seguridad dinámico.
Identificador de aplicación
En algunas realizaciones el mensaje de iniciación de autenticación puede incluir un elemento de datos para identificar una aplicación o proveedor de aplicación, p. ej. un identificador de aplicación. En algunas realizaciones el identificador de aplicación puede identificar la aplicación o el proveedor de aplicación para los que se supone que el dispositivo de autenticación del usuario genera un valor de seguridad dinámico. En algunas realizaciones el dispositivo de autenticación está adaptado para usar un valor relacionado con un identificador de aplicación comprendido en un mensaje de iniciación de autenticación en el cálculo de un valor de seguridad dinámico. En algunas realizaciones el identificador de aplicación comprende una representación de la aplicación o el proveedor de aplicación que el usuario puede reconocer como que identifica la aplicación o el proveedor de aplicación y el dispositivo de autenticación está adaptado para presentar esa representación al usuario. En algunas realizaciones el identificador de aplicación comprende un elemento de datos digitales y el dispositivo de autenticación está adaptado para usar ese elemento de datos digitales para recuperar una representación de la aplicación de proveedor de aplicación que el usuario puede reconocer como que identifica la aplicación o el proveedor de aplicación y el dispositivo de autenticación está adaptado para presentar esa representación al usuario. En algunas realizaciones la representación puede comprender un nombre o un logo. En algunas realizaciones la representación puede comprender sonidos (p. ej. una representación de voz de un nombre que el usuario puede usar para identificar la aplicación o el proveedor de aplicación, o una melodía de identificación musical que el usuario puede asociar con la aplicación o el proveedor de aplicación). En algunas realizaciones el dispositivo de autenticación puede presentar la representación visualizando datos visuales en una pantalla. En algunas realizaciones el dispositivo de autenticación puede presentar la representación al usuario emitiendo sonidos de audio, que pueden comprender por ejemplo voz o música.
En algunas realizaciones el dispositivo de autenticación está adaptado para generar un valor de seguridad dinámico tras recibir un mensaje de iniciación de autenticación. El dispositivo de autenticación puede estar adaptado
5
10
15
20
25
30
35
40
45
50
55
60
adicionalmente para extraer un identificador de aplicación desde el mensaje de iniciación de autenticación y para presentar la correspondiente representación de aplicación o proveedor de aplicación al usuario y para capturar la aprobación del usuario de si generar un valor de seguridad dinámico para esa aplicación o proveedor de aplicación y generar el valor de seguridad dinámico en la condición de que el usuario aprobó hacer eso.
Dirección de destino
En algunas realizaciones el mensaje de iniciación de autenticación puede incluir una dirección de destino. En algunas realizaciones la dirección de destino puede comprender una dirección de red de un servidor a la que el dispositivo de autenticación puede enviar datos o uno o más mensajes. En algunas realizaciones esta puede ser la dirección de red de un servidor de aplicación. En algunas realizaciones esta puede ser la dirección de red de un servidor de autenticación. En algunas realizaciones la dirección de destino puede comprender una dirección de IP. En algunas realizaciones la dirección de destino puede comprender un nombre de dominio. En algunas realizaciones la dirección de destino puede comprender un URL (Localizador de Recurso Uniforme) o URI (Identificador de Recurso Uniforme). En algunas realizaciones la dirección de destino puede comprender una dirección de destino de un servidor donde el dispositivo de autenticación puede enviar un valor de seguridad dinámico generado.
Mensaje de respuesta
En algunas realizaciones el dispositivo de autenticación está adaptado para generar un mensaje de respuesta después de que se ha generado un valor de seguridad dinámico. En algunas realizaciones el mensaje de respuesta puede comprender el valor de seguridad dinámico. En algunas realizaciones el mensaje de respuesta puede comprender un elemento de datos que identifica la aplicación o el proveedor de aplicación para los que se ha generado el valor de seguridad dinámico. Este elemento de datos que identifica la aplicación o el proveedor de aplicación puede comprender, por ejemplo, el identificador de aplicación comprendido en el mensaje de iniciación de autenticación recibido por el dispositivo de autenticación. En algunas realizaciones el mensaje de respuesta puede comprender un elemento de datos que identifica el dispositivo de autenticación (p. ej. un número de serie). En algunas realizaciones el mensaje de respuesta puede comprender un elemento de datos que identifica al usuario, p. ej., un nombre de usuario o un ID de usuario (identificador de usuario). En algunas realizaciones el mensaje de respuesta puede comprender un elemento de datos que identifica la sesión para la que se genera el valor de seguridad dinámico. Esto puede comprender, por ejemplo, un id de sesión comprendido en el mensaje de iniciación de autenticación recibido por el dispositivo de autenticación.
En algunas realizaciones el dispositivo de autenticación puede adaptarse para enviar el mensaje de respuesta a un servidor a través de una red informática. En algunas realizaciones el dispositivo de autenticación puede adaptarse para enviar el mensaje de respuesta a un servidor a través de la Internet. En algunas realizaciones el dispositivo de autenticación puede adaptarse para enviar el mensaje de respuesta a un servidor en un mensaje de IP. En algunas realizaciones el dispositivo de autenticación puede adaptarse para enviar el mensaje de respuesta a un servidor en un mensaje de HTTP, por ejemplo un mensaje POST de HTTP, en algunas realizaciones el dispositivo de autenticación puede enviar el mensaje de respuesta al servidor de aplicación. En algunas realizaciones el dispositivo de autenticación puede enviar el mensaje de respuesta a un servidor de autenticación. En algunas realizaciones la dirección de destino del servidor al que el dispositivo de autenticación necesita enviar el mensaje de respuesta puede almacenarse en el dispositivo de autenticación. En algunas realizaciones el dispositivo de autenticación usa una aplicación que identifica el elemento de datos (tal como por ejemplo un identificador de aplicación comprendido en el mensaje de iniciación de autenticación recibido por el dispositivo de autenticación) para recuperar la dirección de destino para el mensaje de respuesta. En algunas realizaciones el dispositivo de autenticación usa una dirección de destino comprendida en el mensaje de iniciación de autenticación recibido por el dispositivo de autenticación para recuperar la dirección de destino para el mensaje de respuesta. En algunas realizaciones ese dispositivo de autenticación aplica un filtro cuando recupera la dirección de destino. En algunas realizaciones el dispositivo de autenticación mantiene una lista blanca de direcciones de destino permitidas y compara la dirección de destino recuperada con esa lista blanca y declina enviar el mensaje de respuesta si la dirección de destino recuperada no coincide con la de esa lista blanca. Por ejemplo en algunas realizaciones el mensaje de iniciación de autenticación comprende el nombre de dominio del servidor para enviar el mensaje de respuesta y el dispositivo de autenticación compara ese nombre de dominio a una lista de nombres de dominio permitidos.
Servidor de autenticación.
En algunas realizaciones las claves secretas de los dispositivos de autenticación se comparten con un servidor de autenticación. En algunas realizaciones el servidor de autenticación puede comprender uno o más ordenadores de servidor que ejecutan una o más aplicaciones de software. En algunas realizaciones el servidor de autenticación comprende una base de datos que almacena los valores de las claves secretas (o valores equivalentes) de los dispositivos de autenticación. En algunas realizaciones el servidor de autenticación almacena uno o más secretos que, en algunas realizaciones, un valor secreto que se almacena en la base de datos se enlaza a un valor de identificación (tal como un número de serie) del dispositivo de autenticación correspondiente o está enlazado a un valor de identificación (tal como un nombre de usuario) de un usuario asociado con el correspondiente dispositivo de autenticación. En algunas realizaciones el servidor de autenticación almacena un secreto maestro y está adaptado para regenerar o derivar el valor secreto de un dispositivo de autenticación usando el secreto maestro y un valor de
5
10
15
20
25
30
35
40
45
50
55
identificación del dispositivo de autenticación o un usuario asociado con el dispositivo de autenticación. En algunas realizaciones el servidor de autenticación está adaptado para verificar valores de seguridad dinámicos generados por los dispositivos de autenticación. En algunas realizaciones el servidor de autenticación usa un valor secreto (que puede recuperar desde almacenamiento o regeneración como se ha explicado anteriormente) asociado con el dispositivo de autenticación para verificar un valor de seguridad dinámico que se supone que se ha generado con ese dispositivo de autenticación.
En algunas realizaciones el servidor de autenticación puede comprender una o más bases de datos para almacenar datos. En algunas realizaciones el servidor de autenticación puede usar y/o almacenar datos relacionados con el usuario. En algunas realizaciones el servidor de autenticación puede usar y/o almacenar datos relacionados con el dispositivo de autenticación. En algunas realizaciones los datos relacionados con el usuario o el dispositivo de autenticación comprenden una o más claves secretas. En algunas realizaciones una o más de estas claves secretas puede compartirse con el dispositivo de autenticación del usuario.
Otro aspecto más de la invención comprende un método para asegurar una aplicación basada en servidor remoto que se accede por un usuario a través de un dispositivo de acceso, que comprende un dispositivo informático tal como el PC o portátil del usuario, que comunica con el servidor de aplicación a través de una red informática p. ej. la Internet. El método puede comprender las siguientes etapas.
- Hacer disponible a un usuario un dispositivo de autenticación como se ha analizado anteriormente. En algunas realizaciones esto comprende distribuir dispositivos de autenticación que comprenden un testigo de autenticación de hardware especializado. En algunas realizaciones esto comprende hacer disponible una aplicación de software de autenticación para descarga e instalación en un dispositivo de cliente electrónico móvil portátil, tal como por ejemplo un teléfono inteligente o un asistente digital personal (PDA). En algunas realizaciones esto comprende adicionalmente personalizar el dispositivo de autenticación con datos de personalización. En algunas realizaciones los datos de personalización pueden comprender un valor secreto. En algunas realizaciones los datos de personalización pueden comprender un valor de dispositivo de autenticación tal como, por ejemplo, un número de serie. En algunas realizaciones la personalización comprende carga de datos de personalización en un testigo de autenticación fuerte de hardware antes de que el testigo se distribuya a un usuario. En algunas realizaciones la personalización comprende intercambiar el dispositivo de autenticación mensajes de personalización con un servidor de personalización.
- Registrar un dispositivo de autenticación y/o usuario con un servidor de autenticación.
- Activar una aplicación para uno o más usuarios.
- Ensamblar un mensaje de iniciación de autenticación a transmitirse a dicho dispositivo de autenticación.
En algunas realizaciones el mensaje de iniciación de autenticación se ensambla por el servidor de autenticación. En algunas realizaciones el mensaje de iniciación de autenticación se ensambla por el servidor de aplicación. En algunas realizaciones el mensaje de iniciación de autenticación se ensambla parcialmente por el servidor de autenticación y parcialmente por el servidor de aplicación. El mensaje de iniciación de autenticación puede comprender por ejemplo un identificador de sesión, y/o un desafío, y/o datos relacionados con transacción, y/o datos relacionados con contexto de transacción y/o un identificador de aplicación. En algunas realizaciones el mensaje de iniciación de autenticación puede comprender una credencial de servidor. Para obtener la credencial del servidor un servidor puede generar en primer lugar opcionalmente una credencial de servidor. En algunas realizaciones este servidor puede ser el servidor de aplicación. En algunas realizaciones este servidor puede ser el servidor de autenticación. El servidor puede generar la credencial del servidor usando una clave secreta y un algoritmo criptográfico. El algoritmo criptográfico puede ser un algoritmo criptográfico simétrico. En algunas realizaciones la clave secreta para generar la credencial del servidor puede compartirse con el testigo de autenticación del usuario.
- Transmitir el mensaje de iniciación de autenticación al dispositivo de autenticación del usuario.
En algunas realizaciones esto comprende enviar el mensaje de iniciación de autenticación en primer lugar al dispositivo de acceso del usuario. El dispositivo de acceso del usuario puede ejecutarse en una aplicación de ordenador tal como un explorador web. El mensaje de iniciación de autenticación puede embeberse en una o más páginas web que la aplicación basada en servidor sirve al explorador del dispositivo informático. A continuación el dispositivo de autenticación puede obtener el mensaje de iniciación de autenticación desde el dispositivo de acceso del usuario. En algunas realizaciones la pantalla del dispositivo de acceso del usuario emite una señal óptica que codifica el mensaje de iniciación de autenticación que se recibe y decodifica por el dispositivo de autenticación.
En algunas realizaciones el dispositivo de acceso del usuario visualiza un código de QR que codifica el mensaje de iniciación de autenticación (que puede ser en forma de un URL) y el dispositivo de autenticación del usuario lee y decodifica este código de qR. Por ejemplo el dispositivo de autenticación del usuario puede comprender un teléfono inteligente con una aplicación de autenticación adecuada. El usuario inicia la aplicación de autenticación que usa la cámara del teléfono inteligente para leer el código de QR y a continuación decodifica el código de QR.
En algunas realizaciones el dispositivo de autenticación recibe el mensaje de iniciación de autenticación en un
5
10
15
20
25
30
35
40
45
50
55
proceso de múltiples etapas. Por ejemplo, el dispositivo de autenticación puede recibir un primer mensaje que contiene información (tal como un URL) que permite que el dispositivo de autenticación contacte con un servidor y solicite el mensaje de iniciación de autenticación real. Por ejemplo, la página web del servidor de aplicación visualizada en el dispositivo de acceso del usuario puede visualizar un código de QR que codifica un URL que apunta al mensaje de iniciación de autenticación real que puede localizarse, por ejemplo, en el servidor de autenticación.
- Obtener aprobación del usuario.
En algunas realizaciones el dispositivo de autenticación puede adaptarse para buscar aprobación del usuario antes de generar un valor de seguridad dinámico y/o antes de enviar un mensaje de respuesta que comprende un valor de seguridad dinámico generado. En algunas realizaciones esta búsqueda de la aprobación del usuario comprende presentar el dispositivo de autenticación al usuario una representación de la aplicación o el proveedor de aplicación. Esta representación puede obtenerse y presentarse como se ha explicado anteriormente. En algunas realizaciones esta búsqueda de la aprobación del usuario comprende presentar el dispositivo de autenticación al usuario datos comprendidos en el mensaje de iniciación de autenticación. En algunas realizaciones esto puede comprender presentar datos relacionados con transacción al usuario. En algunas realizaciones el usuario puede indicar su aprobación usando un botón de OK. En algunas realizaciones el usuario puede indicar su aprobación introduciendo un PIN o contraseña válidos. En algunas realizaciones el dispositivo de autenticación no genera un valor de seguridad dinámico si el usuario no ha indicado su aprobación. En algunas realizaciones el dispositivo de autenticación no envía un mensaje de respuesta que comprende un valor de seguridad dinámico a un servidor si el usuario no ha indicado su aprobación.
- Generar un valor de seguridad dinámico.
El dispositivo de autenticación puede generar el valor de seguridad dinámico como se ha descrito en los párrafos anteriores. En algunas realizaciones el testigo de autenticación procesa el mensaje de iniciación de autenticación para generar un valor de seguridad dinámico. En algunas realizaciones el valor de seguridad dinámico se genera combinando criptográficamente una variable dinámica con una clave secreta. En algunas realizaciones la combinación criptográfica comprende usar un algoritmo criptográfico simétrico. En algunas realizaciones la variable dinámica comprende un desafío. En algunas realizaciones la variable dinámica comprende datos relacionados con transacción. En algunas realizaciones la variable dinámica comprende un valor relacionado con el tiempo. En algunas realizaciones la variable dinámica comprende un contador. En algunas realizaciones la variable dinámica comprende un elemento de datos comprendido en el mensaje de iniciación de autenticación recibido desde la aplicación basada en servidor. En algunas realizaciones el valor de seguridad dinámico se genera usando una clave que se comparte con la aplicación basada en servidor. En algunas realizaciones los datos de entrada comprenden una credencial de servidor y el dispositivo de autenticación verifica la credencial del servidor antes de generar el valor de seguridad dinámico. En algunas realizaciones el dispositivo de autenticación usa un algoritmo criptográfico simétrico con una clave secreta que se comparte con el servidor de aplicación para verificar la credencial del servidor. En algunas realizaciones el dispositivo de autenticación genera el valor de seguridad dinámico en la condición de que la verificación de la credencial del servidor fue satisfactoria.
En algunas realizaciones el dispositivo de autenticación puede generar el valor de seguridad dinámico usando un algoritmo criptográfico que también usa como entrada un elemento de datos que identifica la aplicación o el proveedor de aplicación. En algunas realizaciones este elemento de datos puede comprender el identificador de aplicación comprendido en el mensaje de iniciación de autenticación.
- transmitir el valor de seguridad dinámico generado al servidor de autenticación.
En algunas realizaciones el testigo de autenticación comprende una interfaz de salida de usuario segura y usa esa interfaz de salida de usuario segura para emitir el valor de seguridad dinámico al usuario. En algunas realizaciones el usuario recibe el valor de seguridad dinámico e introduce el valor de seguridad dinámico en una aplicación web relacionada con la aplicación basada en servidor.
En algunas realizaciones el dispositivo de autenticación ensambla un mensaje de respuesta que comprende el valor de seguridad dinámico y lo envía al servidor de autenticación. En algunas realizaciones el dispositivo de autenticación ensambla un mensaje de respuesta que comprende el valor de seguridad dinámico y lo envía al servidor de aplicación y el servidor de aplicación reenvía el mensaje de respuesta, o alguna parte de él, al servidor de autenticación. En algunas realizaciones el mensaje de respuesta puede comprender otros elementos de datos tales como un identificador de sesión, un identificador de aplicación, un identificador de dispositivo de autenticación, un usuario que identifica el elemento de datos y/u otros datos que pueden haberse aprobado por el usuario y/o pueden haberse usado en la generación del valor de seguridad dinámico tal como un desafío o datos de transacción o tiempo o datos de sincronización de contador.
- Verificar el valor de seguridad dinámico recibido. En algunas realizaciones el servidor de autenticación puede verificar la validez del valor de seguridad dinámico recibido. El servidor de autenticación puede verificar el valor de seguridad dinámico recibido usando un algoritmo criptográfico. En algunas realizaciones el servidor de autenticación
5
10
15
20
25
30
35
40
45
50
55
combina criptográficamente una variable dinámica de referencia con una clave secreta de referencia para verificar el valor de seguridad dinámico recibido. En algunas realizaciones el servidor de autenticación genera un valor de seguridad de referencia y compara el valor de seguridad de referencia con el valor de seguridad dinámico recibido. En algunas realizaciones el servidor de autenticación calcula el valor de seguridad de referencia combinando criptográficamente una variable dinámica de referencia con una clave secreta de referencia. En algunas realizaciones la combinación criptográfica comprende realizar un algoritmo criptográfico simétrico. En algunas realizaciones la clave secreta comprende una clave secreta que el servidor de autenticación comparte con el dispositivo de autenticación o con un segundo dispositivo de seguridad extraíble con el que ha cooperado el dispositivo de autenticación del usuario para generar el valor de seguridad dinámico.
- verificación del proveedor de aplicación
En algunas realizaciones el dispositivo de autenticación presenta al usuario un identificador de aplicación. En algunas realizaciones el servidor de autenticación verifica si el servidor de aplicación que solicitó verificación del valor de seguridad dinámico coincide con el identificador de aplicación que se presentó al usuario. En algunas realizaciones el dispositivo de autenticación incluye el identificador de aplicación que se presentó al usuario en el mensaje de respuesta y el servidor de autenticación verifica si el identificador de aplicación en el mensaje de respuesta que recibió coincide con el servidor de aplicación que solicitó verificación del valor de seguridad dinámico.
En algunas realizaciones el dispositivo de autenticación presenta al usuario un identificador de aplicación y usa ese identificador de aplicación en la generación del valor de seguridad dinámico. En algunas realizaciones el servidor usa un identificador de referencia proveedor de aplicación en la verificación del valor de seguridad dinámico de manera que esta verificación fallará si el identificador de aplicación usado por el dispositivo de autenticación en la generación del valor de seguridad dinámico no coincide con el identificador de proveedor de aplicación de referencia usado por el servidor de autenticación. En algunas realizaciones el servidor de autenticación extrae el identificador de proveedor de aplicación de referencia desde el mensaje de respuesta que también contiene el valor de seguridad dinámico a verificarse. En algunas realizaciones el servidor de autenticación deduce el valor de identificador de proveedor de aplicación de referencia desde la identidad del servidor de aplicación en nombre de la cual el servidor verifica el valor de seguridad dinámico.
- Informar al servidor de aplicación acerca del resultado de verificación.
En algunas realizaciones, tras verificar la validez del valor de seguridad dinámico, el servidor de autenticación puede informar al servidor de aplicación acerca del resultado de la verificación. Esta información puede comprender informar si la verificación fue satisfactoria. Esta información puede comprender, en caso de que la verificación fallara, un código de error (p. ej. "verificación criptográfica fallida", "dispositivo de autenticación desconocido", "id de sesión desconocido", "cuenta de usuario expirada", "cuenta de proveedor de aplicación expirada",...).
- informar al servidor de aplicación acerca de la identidad de usuario.
En algunas realizaciones el servidor de autenticación puede pasar también al servidor de aplicación una indicación de la identidad del usuario. En algunas realizaciones el servidor de autenticación puede pasar al servidor de aplicación un nombre de usuario general que es independiente de la aplicación o el proveedor de aplicación. En algunas realizaciones el servidor de autenticación puede pasar al servidor de aplicación un nombre de usuario específico que es una función del usuario y de la aplicación o el proveedor de aplicación. En algunas realizaciones el servidor de autenticación mantiene una base de datos que contiene para cada par de usuarios registrados y aplicaciones activadas un id de usuario para pasar al servidor de aplicación en cada sesión de autenticación.
- Informar al usuario acerca del resultado de verificación.
En algunas realizaciones el servidor que recibe el mensaje de respuesta devuelve un mensaje de acuse de recibo al dispositivo de autenticación que comprende el resultado de la verificación del valor de seguridad dinámico. Este mensaje puede contener, en caso de fallo, un código de error (p. ej. "verificación criptográfica fallida", "dispositivo de autenticación desconocido", "id de sesión desconocida", "cuenta de usuario expirada", "cuenta de proveedor de aplicación expirada",...).
- Tomar acción apropiada dependiendo del resultado de la verificación del valor de seguridad dinámico. En algunas realizaciones esto puede comprender que se conceda acceso al usuario a la aplicación del servidor de aplicación en caso de que la verificación fuera satisfactoria y se rechace el acceso en caso de que la verificación no fuera satisfactoria. En algunas realizaciones esto puede comprender que una solicitud de transacción emitida por el usuario se realice si la verificación fue satisfactoria y no se realice si la verificación no fue satisfactoria.
En algunas realizaciones el servidor de aplicación puede comprender uno o más ordenadores de servidor que ejecutan una o más aplicaciones de software. En algunas realizaciones el servidor de aplicación puede alojar una o más aplicaciones para accederse remotamente por uno o más usuarios. En algunas realizaciones el servidor de aplicación puede comprender uno o más servidores web. En algunas realizaciones una o más aplicaciones alojadas por el servidor de aplicación pueden estar basadas en web.
5
10
15
20
25
30
35
40
45
50
En algunas realizaciones el dispositivo de acceso del usuario para acceder a la aplicación alojada por el servidor de aplicación puede comprender un dispositivo informático. En algunas realizaciones este dispositivo informático puede comprender un PC o un portátil. En algunas realizaciones este dispositivo informático puede comprender un dispositivo de acceso a Internet, por ejemplo en un punto de acceso a Internet público. En algunas realizaciones el dispositivo de acceso puede estar en red. En algunas realizaciones el dispositivo de acceso puede estar adaptado para comunicar con un servidor de aplicación a través de una red informática. En algunas realizaciones esta red informática puede comprender una red de telecomunicaciones pública. En algunas realizaciones esta red informática puede comprender la Internet.
Breve descripción de los dibujos
Las anteriores y otras características y ventajas de la invención serán evidentes a partir de la siguiente descripción más particular de las realizaciones de la invención, como se ilustra en los dibujos adjuntos.
La Figura 1 ilustra esquemáticamente una implementación ejemplar de la invención.
La Figura 2 ilustra esquemáticamente un ejemplo de un sistema según un aspecto de la invención.
Las Figuras 3a y 3b ilustra esquemáticamente ejemplos de un dispositivo de autenticación de usuario según un aspecto de la invención.
Las Figuras 4a y 4b ilustran esquemáticamente un método para asegurar una aplicación remotamente accesible según un aspecto de la invención.
Descripción detallada
Algunas implementaciones de la presente invención se analizan a continuación. Aunque se analizan implementaciones específicas, debería entenderse que esto se hace para fines de ilustración únicamente. Un experto en la técnica reconocerá que pueden usarse otros componentes y configuraciones sin alejarse del espíritu y alcance de la invención.
La Figura 1 ilustra una implementación ejemplar de la invención.
Un usuario trata una aplicación remota (indicada como 'MDP' en la figura) usando un dispositivo de acceso (indicado como 'Explorador Web de PC' en la figura). El dispositivo de acceso puede ser, por ejemplo, un PC o un portátil. La aplicación remota puede alojarse por un servidor de aplicación. El dispositivo de acceso del usuario puede comunicar con el servidor de aplicación a través de una red informática tal como por ejemplo la Internet. La aplicación puede estar basada en web y el usuario puede acceder a la aplicación basada en web usando un explorador web que se ejecuta en el dispositivo de acceso del usuario.
En algún punto, el usuario puede solicitar explícita o implícitamente acceso a una parte de acceso protegido de la aplicación (indicado por la flecha que se etiqueta como '
https://mydigipass.com' en la figura).
https://mydigipass.com' en la figura).
La aplicación puede obtener un mensaje de iniciación de autenticación. La aplicación puede obtener el mensaje de iniciación de autenticación enviando una solicitud (indicado por la flecha etiquetada como 'Solicitar Código de QR' en la figura) a un servidor de autenticación (indicado como 'DPS' en la figura). El servidor de autenticación puede responder a esta solicitud devolviendo a la aplicación parte o todos los contenidos del mensaje de iniciación de autenticación. Por ejemplo el servidor de autenticación puede enviar a la aplicación un mensaje que contiene un nombre de dominio. El mensaje puede comprender también un ID de sesión. El mensaje puede comprender también un desafío. La aplicación puede enviar una página web al explorador web en el dispositivo de acceso que contiene una representación del mensaje de iniciación de autenticación. Por ejemplo la página web puede comprender un código de QR. El código de QR puede codificar un URL o URI. Ese URL/URI puede comprender los datos comprendidos en el mensaje de iniciación de autenticación tal como un nombre de dominio y/o un ID de sesión y/o un desafío. La página web puede sugerir que el usuario lea el código de QR con su dispositivo de autenticación.
El dispositivo de autenticación del usuario (indicado por 'Aplicación móvil' en la figura) puede ser, por ejemplo, un teléfono inteligente que comprende una cámara de fotos y que está equipado con una aplicación de autenticación. En otras realizaciones puede comprender un testigo de hardware especializado. El usuario puede iniciar la miniaplicación de autenticación o aplicación en el dispositivo de autenticación y ordenar a la miniaplicación de autenticación o aplicación que obtenga la representación del mensaje de iniciación de autenticación presentada por el dispositivo de acceso. Por ejemplo el usuario puede hacer que el dispositivo de autenticación lea el código de QR en la pantalla del dispositivo de acceso del usuario. Tras obtener la representación del mensaje de iniciación de autenticación presentado por el dispositivo de acceso, p. ej. leyendo el código de QR (indicado por la flechas etiquetadas 'Explorar Código de QR' y 'Código de QR (Sesión)' en la figura), la miniaplicación de autenticación decodifica el código de QR para obtener los contenidos del mensaje de iniciación de autenticación. Estos contenidos pueden comprender, por ejemplo, un nombre de dominio, y/o un ID de sesión, y/o un desafío.
En algunas realizaciones la miniaplicación de autenticación puede a continuación generar un valor de seguridad
5
10
15
20
25
30
35
40
45
50
55
dinámico sin interacción adicional del usuario. En otras realizaciones la miniaplicación de autenticación puede solicitar al usuario aprobación explícita antes de continuar. La miniaplicación de autenticación puede generar una contraseña de un solo uso (indicada en la figura como 'Usar Sesión como Desafío') combinando criptográficamente el secreto que almacena con una o más variables dinámicas. La una o más variables dinámicas pueden comprender el valor del desafío extraído desde el mensaje de iniciación de autenticación, y/o el valor del tiempo mantenido por un reloj en el dispositivo de autenticación, y/o el valor de un contador mantenido por la miniaplicación de autenticación (mediante el cual la miniaplicación de autenticación puede incrementar, por ejemplo, el contador cada vez que genera una OTP). La miniaplicación de autenticación puede generar, por ejemplo, un troceo criptográfico de una combinación de la una o más variables dinámicas y el secreto usando un algoritmo de troceo criptográfico tal como SHA-1. La miniaplicación de autenticación puede encriptar, por ejemplo, una combinación de las variables dinámicas usando un algoritmo de encriptación parametrizado para el secreto.
El dispositivo de autenticación puede ensamblar un mensaje de respuesta. Este mensaje de respuesta puede comprender la OTP generada. Puede comprender también el ID de sesión extraído desde el mensaje de iniciación de autenticación. Puede comprender también un identificador del dispositivo de autenticación tal como por ejemplo un número de serie único almacenado por la miniaplicación de autenticación. El dispositivo de autenticación puede enviar este mensaje de respuesta a un servidor indicado por el nombre de dominio extraído desde el mensaje de iniciación de autenticación. El nombre de dominio puede indicar, por ejemplo, el servidor de autenticación. Antes de enviar el mensaje de respuesta la miniaplicación de autenticación puede verificar si el nombre de dominio indica un destino permitido para el mensaje de respuesta. El dispositivo de autenticación puede comparar, por ejemplo, el nombre de dominio a una lista de nombres de dominio permitidos o a una lista de patrones de nombre de dominio permitidos.
El dispositivo de autenticación puede enviar el mensaje de respuesta, p. ej., al servidor de autenticación (indicado por la flecha etiquetada como 'Solicitud de Autenticación (SN, OTP)'). El mensaje de respuesta puede comprender, por ejemplo, un mensaje de POST de HTTP. Este mensaje de POST de HTTP puede enviarse al servidor indicado en el URL que se codificó por el código de QR.
Tras recibir el mensaje de respuesta el servidor de autenticación puede validar la OTP comprendida en el mensaje de respuesta. Para verificar la OTP el servidor de autenticación puede usar un secreto de verificación. El servidor de autenticación puede obtener el secreto de verificación usando un identificador de dispositivo de autenticación (p. ej. un número de serie) comprendido en el mensaje de respuesta. Por ejemplo el servidor de autenticación puede usar el identificador de dispositivo de autenticación para buscar el secreto de verificación en una base de datos, o el servidor de autenticación puede derivar el secreto de verificación desde el identificador de dispositivo de autenticación y un secreto maestro.
Después de validar la OTP el servidor de autenticación puede informar al dispositivo de autenticación del resultado (indicado por la flecha etiquetada como 'ACK' en la Figura).
Después de validar la OTP el servidor de autenticación puede informar al servidor de aplicación del resultado de la verificación. Por ejemplo el servidor de aplicación puede estar interrogando al servidor de autenticación para el resultado de la validación de la OTP asociada con el ID de sesión comprendido en el mensaje de iniciación de autenticación.
El servidor de autenticación puede también pasar un identificador de usuario (tal como un nombre de usuario) al servidor de aplicación. Para obtener el identificador de usuario el servidor de autenticación puede buscar una base de datos usando el identificador de dispositivo de autenticación que puede estar comprendido en el mensaje de respuesta. En algunas realizaciones la base de datos puede comprender más de un identificador de usuario para el mismo usuario asociado con un dispositivo de autenticación dado. Por ejemplo el servidor de autenticación puede almacenar un identificador de usuario diferente para diferentes servidores de aplicación y pasar el correspondiente identificador de usuario al servidor de aplicación. En algunas realizaciones el servidor de autenticación puede almacenar más de un identificador de usuario para el mismo usuario y la misma aplicación y el servidor de autenticación pueden participar en un diálogo con el dispositivo de autenticación para permitir al usuario elegir el identificador de usuario correcto para pasar al servidor de aplicación.
Un sistema para asegurar aplicaciones remotas.
La Figura 2 ilustra esquemáticamente un ejemplo de un sistema según un aspecto de la invención.
El sistema (200) comprende los siguientes componentes: un servidor (210) de aplicación, un servidor (220) de autenticación, una pluralidad de dispositivos (230) de acceso, y una pluralidad de dispositivos (240) de autenticación de usuario. En algunas realizaciones puede haber más de un servidor de aplicación.
El servidor (210) de aplicación puede estar adaptado para alojar una o más aplicaciones remotamente accesibles. Puede alojar, por ejemplo, un servidor web. El servidor de aplicación puede comprender un ordenador de servidor. El servidor de aplicación puede comprender un componente de procesamiento de datos tal como, por ejemplo, uno o más microprocesadores. Puede comprender componentes de almacenamiento para almacenar datos y/o software. Estos componentes de almacenamiento pueden comprender memoria volátil y/o no volátil tal como RAM y/o discos
5
10
15
20
25
30
35
40
45
50
55
60
duros. El servidor de aplicación puede comprender una interfaz de comunicación de datos (tal como por ejemplo una tarjeta de Ethernet) para conectar el servidor de aplicación a una red (250) informática (tal como por ejemplo la Internet) de modo que el servidor de aplicación puede comunicar e intercambiar datos y mensajes con, por ejemplo, el servidor de autenticación y/o un dispositivo de acceso y/o un dispositivo de autenticación de usuario.
Ejemplos de aplicaciones remotamente accesibles que pueden alojarse por un servidor de aplicación pueden incluir: aplicaciones de banca de Internet, sitios de comercio electrónico, aplicaciones de correo web (tales como Gmail), sitios de redes sociales (tales como Facebook), y otras aplicaciones basadas en web, basadas en Internet o basadas en la nube.
El servidor (220) de autenticación puede alojar una aplicación de servidor de autenticación que puede estar adaptada para verificar valores de seguridad dinámicos tales como, por ejemplo, contraseñas de un solo uso o firmas de transacción que pueden haberse generado por un dispositivo de autenticación de usuario. En algunas realizaciones el servidor de autenticación puede actuar como una parte confiable que verifica valores de seguridad dinámicos en nombre de posiblemente más de un servidor de aplicación que puede estar bajo control de diferentes proveedores de aplicación no relacionados. El servidor de autenticación puede estar adaptado para llevar a cabo cálculos criptográficos que en algunas realizaciones puede implicar algoritmos criptográficos simétricos y/o asimétricos. El servidor de autenticación puede comprender hardware seguro tal como por ejemplo un HSM (módulo de seguridad de hardware) para realizar de manera segura ciertas operaciones o cálculos sensibles de seguridad que pueden implicar claves secretas. El servidor de autenticación puede comprender un ordenador de servidor. El servidor de autenticación puede comprender un componente de procesamiento de datos tal como, por ejemplo, uno o más microprocesadores. Puede comprender componentes de almacenamiento para almacenar datos y/o software. Estos componentes de almacenamiento pueden comprender memoria volátil y/o no volátil tal como RAM (Memoria de Acceso Aleatorio) y/o discos duros.
En algunas realizaciones los componentes de almacenamiento pueden comprender una base de datos. En algunas realizaciones los componentes de almacenamiento pueden usarse para almacenar datos relacionados con el usuario para cada una de una pluralidad de usuarios. En algunas realizaciones estos datos relacionados con el usuario pueden comprender, por ejemplo, una o más claves secretas relacionadas con el usuario o datos de perfil de usuario que en algunas realizaciones pueden ser específicos de la aplicación. En algunas realizaciones estos datos relacionados con el usuario pueden comprender datos de identificación de dispositivo de autenticación de usuario (tales como un número de serie) de uno o más dispositivos de autenticación de usuario que, por ejemplo, pueden estar asociados con el usuario.
En algunas realizaciones los componentes de almacenamiento pueden usarse para almacenar datos relacionados con el dispositivo de autenticación de usuario para cada uno de una pluralidad de dispositivos de autenticación de usuario. En algunas realizaciones estos datos relacionados con el dispositivo de autenticación de usuario pueden comprender, por ejemplo, una o más claves secretas relacionadas con dispositivos de autenticación de usuario o datos de configuración de dispositivo de autenticación de usuario que en algunas realizaciones pueden ser específicos de aplicación y/o de usuario. En algunas realizaciones estos datos relacionados con el dispositivo de autenticación de usuario pueden comprender datos de identificación de usuario (tales como un nombre de usuario o ID de usuario) de uno o más usuarios que, por ejemplo, pueden asociarse con el dispositivo de autenticación de usuario.
El servidor de autenticación puede comprender una interfaz de comunicación (tal como por ejemplo una tarjeta de Ethernet) para conectar el servidor de autenticación a una red informática (tal como por ejemplo la Internet) de modo que el servidor de autenticación puede comunicar con, por ejemplo, un servidor de aplicación y/o un dispositivo de autenticación de usuario y/o un dispositivo de acceso.
En algunas realizaciones un único servidor puede actuar tanto como un servidor de aplicación como un servidor de autenticación. En otras realizaciones los servidores de aplicación y el servidor de autenticación son servidores distintos que interactúan remotamente intercambiando mensajes a través de una red informática (tal como por ejemplo la Internet).
El dispositivo (230) de acceso puede ser un dispositivo electrónico adaptado para conectarse a un servidor de aplicación y para permitir que un usuario interactúe remotamente a través de una red informática con un servidor de aplicación. El dispositivo de acceso puede comprender un componente de procesamiento de datos tal como, por ejemplo, uno o más microprocesadores. Puede comprender componentes de almacenamiento para almacenar datos y/o software. Estos componentes de almacenamiento pueden comprender memoria volátil y/o no volátil tal como RAM y/o discos duros y/o unidades de estado sólido (SSD). El dispositivo de acceso puede comprender una interfaz de comunicación (tal como por ejemplo una tarjeta de Ethernet) para conectar el dispositivo de acceso a una red informática (tal como por ejemplo la Internet) de modo que el dispositivo de acceso puede comunicar con, por ejemplo, un servidor de aplicación y/o un servidor de autenticación. El dispositivo de acceso puede comprender una interfaz de usuario con una interfaz de entrada de usuario y una interfaz de salida de usuario para interactuar con un usuario (290). El dispositivo de acceso puede comprender, por ejemplo, una pantalla y/o altavoces para presentar la salida al usuario y puede comprender, por ejemplo, un teclado y/o una pantalla táctil y/o un ratón para recibir entrada desde un usuario.
5
10
15
20
25
30
35
40
45
50
55
60
El dispositivo de acceso puede comprender, por ejemplo, un dispositivo informático tal como un ordenador personal (PC), o un portátil, o un ordenador de tableta. El dispositivo de acceso puede proporcionarse con un programa informático para permitir que el usuario interactúe con una aplicación remota a través de una red informática tal como Internet. Este programa informático puede comprender, por ejemplo, un explorador web (tal como, por ejemplo, Internet Explorer o Mozilla Firefox) y la aplicación remota puede comprender, por ejemplo, una aplicación de servidor basada en web. El dispositivo de acceso puede interactuar con una aplicación alojada por un servidor de aplicación intercambiando datos y mensajes. El dispositivo de acceso puede interactuar con una aplicación alojada por un servidor de aplicación usando un protocolo de comunicación tal como por ejemplo IP (Protocolo de Internet) y/o SSL/TLS (Capa de Conexiones Segura / Seguridad de Capa de Transporte) para intercambiar mensajes tales como mensajes de HTTP (Protocolo de Transferencia de Hipertexto).
En algunas realizaciones el dispositivo de acceso puede estar adaptado para recibir desde un servidor de aplicación datos relacionados con un mensaje de iniciación de autenticación que posibilitan que el dispositivo de acceso obtenga o genere una representación del mensaje de iniciación de autenticación. Por ejemplo, en algunas realizaciones el dispositivo de acceso está adaptado para recibir desde un servidor de aplicación una representación del mensaje de iniciación de autenticación. Por ejemplo el dispositivo de acceso puede estar adaptado para recibir una página web que contiene una imagen (por ejemplo un código de barras bidimensional tal como un código de QR) o un fichero de audio que codifica el mensaje de iniciación de autenticación. En algunas realizaciones el dispositivo de acceso está adaptado para recibir desde un servidor de aplicación uno o más elementos de datos (tales como, por ejemplo, un desafío y/o datos de transacción y/o un identificador de aplicación) que están comprendidos en el mensaje de iniciación de autenticación y que el dispositivo de acceso usa para generar una representación del mensaje de iniciación de autenticación. Por ejemplo el dispositivo de acceso puede estar adaptado para recibir una página web que contiene elementos de datos para estar comprendidos en el mensaje de iniciación de autenticación y el dispositivo de acceso puede ejecutar una aplicación tal como, por ejemplo, un módulo de extensión de explorador o una miniaplicación (que puede estar también contenida en la página web recibida) para generar una representación (tal como, por ejemplo, un código de barras bidimensional) del mensaje de iniciación de autenticación. En algunas realizaciones el dispositivo de acceso está adaptado para recibir desde el servidor de aplicación un elemento de datos que el dispositivo de acceso usa para recuperar desde otro servidor (tal como, por ejemplo, un servidor de autenticación) uno o más elementos de datos que están comprendidos en el mensaje de iniciación de autenticación y que el dispositivo de acceso usa para generar una representación del mensaje de iniciación de autenticación. Por ejemplo el dispositivo de acceso puede estar adaptado para recibir una página web que contiene un URL (Localizador de Recurso Uniforme) o URI (Identificador de Recurso Uniforme) que apunta a un elemento de datos en algún servidor (tal como por ejemplo un servidor de autenticación) que el dispositivo de acceso puede usar para generar una representación del mensaje de iniciación de autenticación. Este elemento de datos puede comprender, por ejemplo, uno o más elementos de datos (tal como un desafío) que están comprendidos en los contenidos del mensaje de iniciación de autenticación, o puede comprender una representación del mensaje de iniciación de autenticación entero, o puede comprender una credencial de servidor que autentica el origen del mensaje de iniciación de autenticación tal como una firma o MAC (Código de Autenticación de Mensaje) a través de los contenidos del mensaje de iniciación de autenticación o una representación encriptada del mensaje de iniciación de autenticación.
El dispositivo de acceso puede estar adaptado para emitir una señal que codifica una representación del mensaje de iniciación de autenticación. En algunas realizaciones el dispositivo de acceso está adaptado para usar su interfaz de salida de usuario (p. ej. sus altavoces de audio o su pantalla) para emitir la señal que codifica una representación del mensaje de iniciación de autenticación. Por ejemplo en algunas realizaciones el dispositivo de acceso puede estar adaptado para reproducir a través de sus altavoces un fichero de audio que contiene una señal de audio que codifica una representación del mensaje de iniciación de autenticación. En algunas realizaciones el dispositivo de acceso puede estar adaptado para emitir una señal óptica visualizando un patrón óptico variable en el tiempo que codifica una representación del mensaje de iniciación de autenticación. En algunas realizaciones el dispositivo de acceso puede estar adaptado para visualizar una o más imágenes (tal como códigos de barras bidimensionales) que codifican una representación del mensaje de iniciación de autenticación.
El dispositivo (240) de autenticación de usuario se analizará en más detalle en relación a las Figuras 3a y 3b.
En algunas realizaciones el dispositivo de acceso y el dispositivo de autenticación de usuario son físicamente dispositivos distintos. En algunas realizaciones el dispositivo de autenticación de usuario es una entidad confiable mientras que el dispositivo de acceso no es una entidad confiable.
El sistema está adaptado para autenticar usuarios que acceden a una aplicación alojada por uno de los servidores de aplicación y/o para autenticar transacciones emitidas por usuarios a una aplicación alojada por uno de los servidores de aplicación y puede usarse, por ejemplo, con el método analizado en relación a la figura 4.
Las Figuras 3a y 3b ilustran esquemáticamente un ejemplo y una variante de ese ejemplo de un aparato según un aspecto de la invención. El aparato comprende un ejemplo de un dispositivo (240) de autenticación de usuario del sistema analizado en relación a la Figura 2.
El dispositivo (240) de autenticación de usuario comprende un dispositivo electrónico adaptado para generar un
5
10
15
20
25
30
35
40
45
50
55
60
mensaje de respuesta que comprende un valor de seguridad dinámico en respuesta a un mensaje de iniciación de autenticación, por ejemplo, para autenticar un usuario o una transacción. El dispositivo de autenticación de usuario puede comprender un componente (310) de procesamiento de datos, componentes (320) de almacenamiento para almacenar datos y/o software, una interfaz (330) de comunicación de datos para conectar el dispositivo de autenticación de usuario a una red informática, una interfaz (340, 350) de usuario para interactuar con un usuario, una interfaz (360, 370) de entrada para capturar una señal que representa un mensaje de iniciación de autenticación que se está emitiendo por un dispositivo de acceso (p. ej. por medio de la interfaz de salida de usuario del dispositivo de acceso), y un reloj (380) en tiempo real para proporcionar valores relacionados con el tiempo.
El componente (310) de procesamiento de datos puede comprender por ejemplo uno o más microprocesadores. El componente de procesamiento de datos puede estar adaptado para realizar un algoritmo para generar valores de seguridad dinámicos. El componente de procesamiento de datos puede estar adaptado para realizar operaciones criptográficas que pueden comprender realizar algoritmos criptográficos simétricos o asimétricos. En algunas realizaciones el componente de procesamiento de datos puede comprender un microprocesador y/o un controlador y/o un ASIC (Circuito Integrado Específico de la Aplicación).
El dispositivo de autenticación de usuario puede comprender componentes (320) de almacenamiento para almacenar datos y/o software. Estos componentes de almacenamiento pueden comprender memoria volátil y/o no volátil tal como rAm y/o ROM (Memoria de Solo Lectura) y/o Flash y/o discos duros y/o unidades de estado sólido (SSD).
El dispositivo de autenticación de usuario puede comprender una interfaz (330) de comunicación de datos para conectar el dispositivo de autenticación de usuario a una red informática (tal como por ejemplo la Internet) de modo que el dispositivo de autenticación de usuario puede comunicar con, por ejemplo, un servidor de aplicación y/o un servidor de autenticación. La interfaz de comunicación de datos puede comprender, por ejemplo, una interfaz de comunicación de datos inalámbrica (330) para conectar a una red de comunicación inalámbrica tal como, por ejemplo, una red de telefonía móvil tal como, por ejemplo, una red de GSM (Sistema Global para Comunicaciones Móviles) o de UMTS (Sistema Universal de Telecomunicaciones Móviles). En algunas realizaciones la interfaz de comunicación de datos puede comprender una interfaz de radio móvil y/o una interfaz de red de GSM. En algunas realizaciones la interfaz de comunicación de datos puede comprender una antena. En algunas realizaciones la interfaz de comunicación de datos inalámbrica puede adaptarse para enviar datos desde el dispositivo de autenticación de usuario a un servidor de destino usando una red de comunicación de datos inalámbrica pública. En algunas realizaciones la interfaz de comunicación de datos inalámbrica puede estar adaptada también para recuperar datos desde un servidor remoto (tal como el servidor de aplicación o el servidor de autenticación) usando una red de comunicación de datos inalámbrica pública.
El dispositivo de autenticación de usuario puede comprender una interfaz (340, 350) de usuario con una interfaz (350) de entrada de usuario y una interfaz (340) de salida de usuario para interactuar con un usuario. El dispositivo de autenticación de usuario puede comprender una interfaz de salida de usuario para proporcionar salida a un usuario. La interfaz de salida de usuario puede comprender, por ejemplo, una pantalla (340) y/o altavoces para presentar salida al usuario. El dispositivo de autenticación de usuario puede comprender una interfaz de entrada de usuario para recibir entrada desde un usuario. La interfaz de entrada de usuario puede comprender, por ejemplo, un teclado (350) y/o una pantalla táctil y/o un micrófono para recibir entrada desde un usuario. La pantalla puede comprender una pantalla gráfica. La pantalla puede comprender una pantalla a color. La pantalla puede comprender, por ejemplo, una pantalla de LCD (Pantalla de Cristal Líquido) o una pantalla de TFT (Transistor de Película Delgada) o una pantalla de OLED (Diodo de Emisión de Luz Orgánico).
El dispositivo de autenticación de usuario puede comprender una interfaz (360, 370) de entrada para capturar una señal que representa un mensaje de iniciación de autenticación que se está emitiendo por un dispositivo de acceso (por ejemplo, por la interfaz de salida de usuario del dispositivo de acceso). Por ejemplo, en algunas realizaciones el dispositivo de autenticación de usuario puede comprender un micrófono (370) para capturar una señal de audio emitida por, por ejemplo, los altavoces de un dispositivo de acceso y codificada con un mensaje de iniciación de autenticación. En algunas realizaciones el dispositivo de autenticación de usuario puede comprender sensores ópticos para capturar señales ópticas emitidas por, por ejemplo, la pantalla de un dispositivo de acceso y codificadas con un mensaje de iniciación de autenticación. En algunas realizaciones el dispositivo de autenticación de usuario puede comprender una cámara (360) para capturar una o más imágenes visualizadas en la pantalla de un dispositivo de acceso y codificar un mensaje de iniciación de autenticación. En algunas realizaciones estas imágenes pueden comprender un código de barras bidimensional tal como un código de QR.
El dispositivo de autenticación de usuario puede comprender un mecanismo de temporización tal como el reloj (380) en tiempo real para proporcionar valores relacionados con el tiempo que el dispositivo de autenticación de usuario puede usar como entrada para un algoritmo criptográfico para generar un valor de seguridad dinámico.
El dispositivo de autenticación de usuario puede estar adaptado para obtener el mensaje de iniciación de autenticación decodificando la señal capturada. Por ejemplo puede estar adaptado para decodificar una señal de audio modulada que codifica un mensaje de iniciación de autenticación o puede estar adaptado para decodificar una o más imágenes (tal como códigos de Qr) que codifican un mensaje de iniciación de autenticación.
5
10
15
20
25
30
35
40
45
50
55
Verificación de credencial de servidor.
En algunas realizaciones el mensaje de iniciación de autenticación comprende una credencial de servidor y el dispositivo de autenticación de usuario puede estar adaptado para verificar esta credencial. En algunas realizaciones el dispositivo de autenticación de usuario está adaptado para verificar la credencial del servidor usando un algoritmo criptográfico parametrizado con una clave de verificación de credencial de servidor que puede almacenarse en el dispositivo de autenticación de usuario o que el dispositivo de autenticación de usuario puede obtener usando una clave almacenada en el dispositivo de autenticación de usuario.
En algunas realizaciones el dispositivo de autenticación de usuario puede usar un algoritmo criptográfico asimétrico para verificar la credencial del servidor. En algunas realizaciones la credencial del servidor comprende una firma digital a través de al menos algunos elementos de datos del mensaje de iniciación de autenticación y la verificación de la credencial del servidor puede comprender la verificación de esta firma. En algunas realizaciones la firma de la credencial del servidor se ha generado por la clave privada de un par de clave pública-privada asociado con un servidor confiable tal como el servidor de autenticación y el dispositivo de autenticación de usuario verifica la firma usando la correspondiente clave pública que puede almacenarse en el dispositivo de autenticación de usuario.
En algunas realizaciones el dispositivo de autenticación de usuario puede usar un algoritmo criptográfico simétrico para verificar la credencial del servidor. En algunas realizaciones el algoritmo criptográfico simétrico está parametrizado con una clave de credencial de servidor secreta simétrica. En algunas realizaciones la credencial del servidor comprende una porción encriptada del mensaje de iniciación de autenticación y el dispositivo de autenticación de usuario verifica la credencial del servidor desencriptando esta porción encriptada y certificando que en la porción desencriptada están presentes ciertos elementos estructurales esperados, tales como, por ejemplo, ciertos valores fijos para ciertos elementos de datos (p. ej. etiquetas) en la porción desencriptada o ciertas redundancias tales como, por ejemplo el valor de un código de CRC o ciertas consistencias obligatorias entre los valores de ciertos elementos de datos tales como las longitudes de ciertos campos de datos (como se indica por los campos de longitud) o restricciones en el intervalo permisible de los valores de ciertos campos de datos. En algunas realizaciones la credencial del servidor comprende un MAC (código de autenticación de mensaje) o un troceo con clave a través de una porción del mensaje de iniciación de autenticación y el dispositivo de autenticación de usuario puede calcular un valor de referencia para el MAC o el troceo con clave y comparar el valor de referencia con la credencial de servidor recibido.
En algunas realizaciones el dispositivo de autenticación de usuario puede rechazar el mensaje de iniciación de autenticación si la verificación de la credencial del servidor falla.
En algunas realizaciones el mensaje de iniciación de autenticación decodificado puede encriptarse y el dispositivo de autenticación de usuario puede estar adaptado para desencriptar el mensaje de iniciación de autenticación encriptado.
Extraer datos del mensaje de iniciación de autenticación.
El dispositivo de autenticación de usuario puede estar adaptado para extraer algunos elementos de datos que están comprendidos en el mensaje de iniciación de autenticación. En algunas realizaciones los elementos de datos que están comprendidos en el mensaje de iniciación de autenticación y que pueden extraerse por el dispositivo de autenticación de usuario pueden incluir uno o más de: un desafío, fecha relacionada con la transacción, un elemento de datos relacionado con identidad de aplicación, un id de sesión, un número aleatorio utilizado solo una vez, un valor de seguridad dinámico generado de servidor.
Indicación y aprobación de identidad de aplicación.
En algunas realizaciones el dispositivo de autenticación de usuario puede estar adaptado para extraer un elemento de datos relacionado con identidad de aplicación desde el mensaje de iniciación de autenticación. El dispositivo de autenticación de usuario puede estar adaptado para usar este elemento de datos relacionado con identidad de aplicación para obtener o generar una representación de la identidad de aplicación. Esta representación de la identidad de aplicación puede ser interpretable y reconocible por el usuario. En algunas realizaciones el elemento de datos relacionado con identidad de aplicación es la representación de la identidad de aplicación, por ejemplo el elemento de datos relacionado con identidad de aplicación (y la representación de la identidad de aplicación) puede simplemente ser un nombre de aplicación alfanumérico. En algunas realizaciones el elemento de datos relacionado con identidad de aplicación puede comprender un índice que el dispositivo de autenticación de usuario puede usar para recuperar la representación de la identidad de aplicación desde una base de datos interna. En algunas realizaciones el dispositivo de autenticación de usuario puede estar adaptado para determinar la representación de la identidad de aplicación desde el elemento de datos relacionado con identidad de aplicación en el mensaje de iniciación de autenticación sin usar ningún dato específico del elemento de la aplicación (permanentemente) almacenado en el dispositivo de autenticación de usuario. En algunas realizaciones el dispositivo de autenticación de usuario puede estar adaptado para determinar la representación de la identidad de aplicación desde el elemento de datos relacionado con identidad de aplicación en el mensaje de iniciación de autenticación y datos que el dispositivo de autenticación de usuario recupera desde una fuente externa. En algunas realizaciones el dispositivo de
5
10
15
20
25
30
35
40
45
50
55
60
autenticación de usuario puede usar el elemento de datos relacionado con identidad de aplicación para recuperar datos específicos de la aplicación desde una fuente externa y usar los datos recuperados para obtener la representación de la identidad de aplicación. En algunas realizaciones el elemento de datos relacionado con identidad de aplicación puede comprender una referencia, tal como por ejemplo un URL o URI, que el dispositivo de autenticación de usuario puede usar para recuperar la representación de la identidad de aplicación desde una fuente externa tal como un servidor remoto tal como, por ejemplo, el servidor de autenticación o un servidor de aplicación. En algunas realizaciones la representación de la identidad de aplicación puede comprender un nombre de aplicación. En algunas realizaciones la representación de la identidad de aplicación puede comprender una imagen gráfica tal como un logo de aplicación. En algunas realizaciones la representación de la identidad de aplicación puede comprender una secuencia de sonido característica. En algunas realizaciones la representación de la identidad de aplicación puede comprender una representación de voz sintética de un nombre de aplicación.
En algunas realizaciones la representación de la identidad de aplicación puede ser interpretable y reconocible por el usuario y el dispositivo de autenticación de usuario puede estar adaptado para presentar la representación de la identidad de aplicación al usuario del dispositivo de autenticación de usuario como parte del proceso para generar un mensaje de respuesta en respuesta al mensaje de iniciación de autenticación. Por ejemplo en algunas realizaciones el dispositivo de autenticación de usuario puede visualizar en su pantalla un nombre de aplicación. En algunas realizaciones el dispositivo de autenticación de usuario puede visualizar en su pantalla una imagen representativa de la aplicación tal como un logo de aplicación. En algunas realizaciones el dispositivo de autenticación de usuario puede emitir a través de sus altavoces una secuencia de sonido que es representativa de la aplicación tal como una secuencia de sonido característica o una representación de voz sintética del nombre de la aplicación.
En algunas realizaciones el dispositivo de autenticación de usuario está adaptado para obtener la confirmación de la representación implícita o explícita del usuario de la identidad de aplicación que el dispositivo de autenticación de usuario presenta al usuario. En algunas realizaciones el usuario confirma de manera explícita la representación de la identidad de aplicación, p. ej., haciendo clic un botón de OK. En algunas realizaciones la confirmación de la representación de la identidad de aplicación está integrada en una confirmación global en donde el usuario aprueba, p. ej., la generación del mensaje de respuesta y de esta manera señaliza su confirmación o aprobación de todos los datos o mensajes (que además de la representación de la identidad de aplicación pueden incluir ciertos datos comprendidos en el mensaje de iniciación de autenticación que deben confirmarse por el usuario) que el dispositivo de autenticación de usuario presentó al usuario hasta el momento en el curso del proceso para generar un mensaje de respuesta. En algunas realizaciones se considera que el usuario que introduce un PIN o contraseña por el dispositivo de autenticación de usuario como una aprobación implícita o confirmación.
En algunas realizaciones el dispositivo de autenticación de usuario está adaptado para abortar la generación del mensaje de respuesta si el usuario no confirma la representación de la identidad de aplicación. En algunas realizaciones, si el usuario no confirma, el dispositivo de autenticación de usuario puede, sin embargo, continuar la generación del mensaje de respuesta pero en su lugar no hacer que el mensaje de respuesta esté disponible para el usuario o un servidor de destino.
Aprobación de datos relacionados con transacción.
En algunas realizaciones el dispositivo de autenticación de usuario puede estar adaptado para extraer datos relacionados con transacción desde el mensaje de iniciación de autenticación. En algunas realizaciones los datos relacionados con transacción pueden estar comprendidos en una porción encriptada del mensaje de iniciación de autenticación o pueden estar criptográficamente enlazados (por ejemplo por una credencial de servidor) a otros datos en el mensaje de iniciación de autenticación tal como un valor de seguridad dinámico generado de servidor. Estos datos relacionados con la transacción pueden incluir valores para elementos de una transacción que el usuario ha emitido a la aplicación remota. Por ejemplo, en el caso de una transacción de transferencia monetaria estos datos relacionados con transacción pueden comprender la cantidad de dinero a transferirse, el código de divisa y el número de cuenta de destino. En el caso de una transacción bursátil los datos relacionados con transacción pueden comprender, por ejemplo, el símbolo de la acción a negociar, si comprar o vender, el precio por participación y la cantidad de participaciones a negociar.
En algunas realizaciones el dispositivo de autenticación de usuario está adaptado para presentar estos datos relacionados con transacción al usuario y obtener la confirmación implícita o explícita del usuario de los datos relacionados con transacción que el dispositivo de autenticación de usuario presenta al usuario. En algunas realizaciones el usuario confirma de manera explícita la representación de los datos relacionados con transacción, p. ej., haciendo clic un botón de OK. En algunas realizaciones la confirmación de los datos relacionados con transacción está integrada en una confirmación global en donde el usuario aprueba, p. ej., la generación del mensaje de respuesta y señaliza de esta manera su confirmación o aprobación de todos los datos o mensajes (que además de los datos relacionados con transacción pueden incluir, por ejemplo, una representación de la identidad de aplicación que debe confirmarse por el usuario) que el dispositivo de autenticación de usuario presentó al usuario hasta ahora en el curso del proceso para generar un mensaje de respuesta. En algunas realizaciones se considera que el usuario que introduce un PIN o contraseña por el dispositivo de autenticación de usuario como una aprobación implícita o confirmación.
En algunas realizaciones el dispositivo de autenticación de usuario está adaptado para abortar la generación del mensaje de respuesta si el usuario no confirma los datos relacionados con transacción. En algunas realizaciones, si el usuario no confirma, el dispositivo de autenticación de usuario puede, sin embargo, continuar la generación del mensaje de respuesta pero en su lugar no hacer que el mensaje de respuesta esté disponible para el usuario o un 5 servidor de destino.
Entrada de datos proporcionados por el usuario.
En algunas realizaciones el dispositivo de autenticación de usuario puede estar adaptado para pedir al usuario que introduzca los valores para ciertos elementos de datos. En algunas realizaciones el dispositivo de autenticación de usuario puede usar estos valores en la generación del valor de seguridad dinámico y/o en la generación del mensaje 10 de respuesta.
Entrada de PIN y uso de PIN.
En algunas realizaciones el dispositivo de autenticación de usuario está adaptado para obtener un PIN o valor de contraseña del usuario. En algunas realizaciones el usuario puede proporcionar el PIN o valor de contraseña usando el teclado o pantalla táctil del dispositivo de autenticación de usuario. En algunas realizaciones el dispositivo de 15 autenticación de usuario está adaptado para almacenar un PIN o valor de referencia de contraseña y para verificar el PIN o valor de contraseña proporcionado por el usuario comparándolo con el valor de referencia almacenado. El dispositivo de autenticación de usuario puede considerar la verificación de PIN o contraseña satisfactoria si el PIN o valor de contraseña proporcionado por el usuario coincide con el valor de referencia almacenado. En algunas realizaciones el dispositivo de autenticación de usuario está adaptado para abortar la generación del mensaje de 20 respuesta si el PIN o la verificación de contraseña fallan. En algunas realizaciones, si el PIN o la verificación de contraseña fallan, el dispositivo de autenticación de usuario, sin embargo, puede continuar la generación del mensaje de respuesta pero en su lugar no hacer que el mensaje de respuesta esté disponible para el usuario o un servidor de destino.
En algunas realizaciones el dispositivo de autenticación de usuario puede usar el PIN o valor de contraseña 25 introducido para obtener o generar el valor de una clave secreta. Por ejemplo, el dispositivo de autenticación de usuario puede combinar criptográficamente el PIN o valor de contraseña con una clave maestra para derivar otra clave, o puede usar el PIN o valor de contraseña como una clave para desencriptar un valor de clave encriptado.
En algunas realizaciones el dispositivo de autenticación de usuario está adaptado para añadir un valor representativo del PIN o valor de contraseña introducido al mensaje de respuesta. En algunas realizaciones el 30 dispositivo de autenticación de usuario está adaptado para encriptar una porción del mensaje de respuesta que comprende el valor representativo del PIN o valor de contraseña introducido.
Generar u obtener criptográficamente un valor de seguridad dinámico.
El dispositivo de autenticación de usuario puede estar adaptado para generar u obtener un valor de seguridad dinámico usando un algoritmo criptográfico parametrizado con al menos una clave secreta.
35 En algunas realizaciones la al menos una clave secreta que el dispositivo de autenticación de usuario usa para generar el valor de seguridad dinámico (o clave de generación de valor de seguridad dinámico) está matemáticamente relacionada con un secreto de base que está almacenado en un componente de almacenamiento del dispositivo de autenticación de usuario. En algunas realizaciones el secreto de base puede comprender un elemento de datos personalizado. En el contexto de esta aplicación la terminología 'elemento de datos 40 personalizado' de un dispositivo de autenticación de usuario hace referencia a un elemento de datos que está presente en una pluralidad de dispositivos de autenticación de usuario que tienen la misma función en cada dispositivo de esa pluralidad de dispositivos de autenticación de usuario, pero que tiene un valor individual particular en cada dispositivo individual particular de la pluralidad de dispositivos de autenticación de usuario. En otras realizaciones el secreto de base puede comprender un secreto maestro que se comparte entre múltiples dispositivos 45 de autenticación de usuario. En algunas realizaciones el dispositivo de autenticación de usuario está adaptado para derivar la al menos una clave de generación de valor de seguridad dinámico desde el secreto de base que está almacenado en un componente de almacenamiento del dispositivo de autenticación de usuario. En algunas realizaciones el dispositivo de autenticación de usuario está adaptado para derivar la al menos una clave de generación de valor de seguridad dinámico usando un PIN o contraseña u otro valor secreto proporcionado por el 50 usuario. En algunas realizaciones la al menos una clave de generación de valor de seguridad dinámico es el secreto de base. En algunas realizaciones los valores de la al menos una clave de generación de valor de seguridad dinámico y/o el secreto de base personalizado están asociados con un usuario particular o con un dispositivo de autenticación de usuario particular. En algunas realizaciones la clave de generación de valor de seguridad dinámico puede comprender una clave simétrica, tal como, por ejemplo, una clave de encriptación o desencriptación simétrica, 55 el valor de la cual se comparte con o está disponible para un servidor de autenticación. En algunas realizaciones la clave de generación de valor de seguridad dinámico puede comprender la clave privada de un par de clave pública/privada a usarse con un algoritmo criptográfico asimétrico.
En algunas realizaciones el dispositivo de autenticación de usuario puede estar adaptado para generar el valor de
5
10
15
20
25
30
35
40
45
50
55
60
seguridad dinámico combinando criptográficamente un número de valores de entrada y la al menos una clave de generación de valor de seguridad dinámico emitiendo los valores de entrada a un algoritmo criptográfico que está parametrizado con la al menos una clave de generación de valor de seguridad dinámico. Estos valores de entrada pueden comprender por ejemplo: una variable dinámica (tal como un valor relacionado con el tiempo proporcionado por el dispositivo de autenticación de usuario, y/o un valor relacionado con el contador proporcionado por el dispositivo de autenticación de usuario, y/o un desafío que el dispositivo de autenticación de usuario extrae desde el mensaje de iniciación de autenticación), y/o datos relacionados con la transacción que el dispositivo de autenticación de usuario extrae desde el mensaje de iniciación de autenticación y que pueden confirmarse por el usuario, y/o un identificador de sesión que el dispositivo de autenticación de usuario extrae desde el mensaje de iniciación de autenticación, y/o un elemento de datos que está relacionado con un identificador de aplicación que el dispositivo de autenticación de usuario extrae desde el mensaje de iniciación de autenticación o que está relacionado con una representación del identificador de aplicación que se ha de presentar al usuario y que puede confirmarse por el usuario. En algunas realizaciones los valores de entrada pueden comprender también datos proporcionados al dispositivo de autenticación de usuario por el usuario.
En algunas realizaciones el dispositivo de autenticación de usuario puede estar adaptado para generar el valor de seguridad dinámico usando un elemento de datos personalizado. En alguna realización este elemento de datos personalizado puede comprender una clave criptográfica personalizada. En algunas realizaciones este elemento de datos personalizado puede comprender un elemento de datos relacionado con el identificador de dispositivo de autenticación del usuario (tal como un número de serie). En algunas realizaciones el dispositivo de autenticación de usuario deriva la clave de generación de valor de seguridad dinámico desde un secreto maestro y un elemento de datos personalizado que en algunas realizaciones puede comprender un elemento de datos relacionado con el identificador de dispositivo de autenticación de usuario (tal como un número de serie).
En algunas realizaciones el algoritmo criptográfico usado por el dispositivo de autenticación de usuario para generar u obtener el valor de seguridad dinámico puede comprender un algoritmo criptográfico simétrico. Ejemplos de algoritmos criptográficos simétricos pueden incluir algoritmos de encriptación/desencriptación simétricos tales como DES (Norma de Encriptación de Datos) o AES (Norma de Encriptación Avanzada), algoritmos de MAC (Código de Autenticación de Mensaje) simétricos, algoritmos de troceo con clave tales como HMAC (código de autenticación de mensaje de troceo con clave) o SHA-1 o MD5 (mediante el cual la al menos una clave de generación de valor de seguridad dinámico trocea el algoritmo). Por ejemplo, en algunas realizaciones el dispositivo de autenticación de usuario puede encriptar una concatenación de los valores de entrada usando un cifrado de bloque simétrico tal como DES o AES en modo de CBC (Encadenamiento de Bloque de Cifrado) y usar una parte del criptograma resultante (preferiblemente una parte del último bloque del criptograma).
En algunas realizaciones el algoritmo criptográfico usado por el dispositivo de autenticación de usuario para generar u obtener el valor de seguridad dinámico puede comprender un algoritmo criptográfico asimétrico. Ejemplos de algoritmos criptográficos simétricos pueden incluir por ejemplo RSA (Rivest-Shamir-Adleman) o DSA (Algoritmo de Firma Digital). En algunas realizaciones el dispositivo de autenticación de usuario puede generar, por ejemplo, una firma digital a través de los valores de entrada usando un algoritmo criptográfico asimétrico parametrizado con la clave privada de un par de clave pública-privada.
En algunas realizaciones un valor de seguridad dinámico generado de servidor puede estar comprendido en una porción encriptada del mensaje de iniciación de autenticación y el dispositivo de autenticación de usuario puede estar adaptado para obtener este valor de seguridad dinámico desencriptando la porción encriptada y extrayendo el valor de seguridad dinámico generado de servidor desde la porción desencriptada.
Dispositivo de seguridad extraíble
En algunas realizaciones, como se ilustra en la figura 3b, el dispositivo (240) de autenticación de usuario puede comprender un dispositivo (395) de seguridad extraíble y una interfaz (390) de comunicación para intercambiar datos y/o mensajes y/o comandos y respuestas con este dispositivo de seguridad extraíble. En algunas realizaciones el dispositivo de seguridad extraíble puede estar adaptado para almacenar y/o manejar de manera segura claves secretas y/o puede estar adaptado para realizar ciertos cálculos criptográficos. En algunas realizaciones el dispositivo de autenticación de usuario puede basarse en el dispositivo de seguridad extraíble para almacenar y/o gestionar de manera segura algunos secretos (tal como claves criptográficas y/o valores de PIN o contraseñas de usuario). En algunas realizaciones el dispositivo de autenticación de usuario puede delegar algunos cálculos criptográficos al dispositivo de seguridad extraíble. En algunas realizaciones el dispositivo de autenticación de usuario usa elementos de datos proporcionados por el dispositivo de seguridad extraíble para obtener el valor de la clave de generación del valor de seguridad dinámico. En algunas realizaciones el dispositivo de autenticación de usuario delega algunos de los cálculos criptográficos para derivar el valor de la clave de generación de valor de seguridad dinámico al dispositivo de seguridad extraíble. En algunas realizaciones el dispositivo de autenticación de usuario delega algunos de los cálculos criptográficos para generar el valor de seguridad dinámico al dispositivo de seguridad extraíble. En algunas realizaciones el dispositivo de seguridad extraíble comprende datos de referencia relacionados con autenticación de usuario (tales como, por ejemplo, valores de referencia para un PIN o contraseña de usuario o una plantilla de referencia para una biométrica del usuario) y el dispositivo de autenticación de usuario usa el dispositivo de seguridad extraíble para autenticar el usuario (p. ej. teniendo el dispositivo de seguridad
5
10
15
20
25
30
35
40
45
50
55
extraíble que verificar un PIN o contraseña de usuario o una biométrica relacionada con el usuario).
Por ejemplo en algunas realizaciones el dispositivo (240) de autenticación de usuario puede comprender una interfaz (390) de comunicación que comprende un lector (391) de tarjeta inteligente y el dispositivo de seguridad extraíble puede comprender una tarjeta (395) de tarjeta inteligente o SIM (Módulo de Identidad de Abonado). En algunas realizaciones algunos aspectos de la comunicación entre la tarjeta inteligente y el dispositivo de autenticación de usuario pueden especificarse por la norma ISO/IEC 7816. En algunas realizaciones la tarjeta inteligente puede comprender una tarjeta expedida por una institución financiera. En algunas realizaciones la tarjeta inteligente puede comprender una tarjeta eMv (Europay-Mastercard-Visa). En algunas realizaciones el dispositivo de autenticación de usuario puede cumplir parcial o completamente con la norma CAP (Programa de Autenticación de Chip).
Generar un mensaje de respuesta.
El dispositivo de autenticación de usuario puede estar adaptado para generar un mensaje de respuesta que comprende al menos el valor de seguridad dinámico generado u obtenido. En algunas realizaciones el mensaje de respuesta puede comprender también elementos de datos adicionales tales como, por ejemplo, un identificador de sesión que el dispositivo de autenticación de usuario ha extraído del mensaje de iniciación de autenticación, y/o un identificador de dispositivo de autenticación de usuario (tal como un número de serie del dispositivo de autenticación de usuario) y/o un identificador de usuario (tal como un ID de usuario o un nombre de usuario) y/o un identificador de aplicación y/o un número aleatorio utilizado solo una vez. En algunas realizaciones el dispositivo de autenticación de usuario puede estar adaptado para encriptar el mensaje de respuesta completa o parcialmente.
Hacer que el mensaje de respuesta esté disponible para el usuario o servidor de autenticación.
En algunas realizaciones el dispositivo de autenticación de usuario puede estar adaptado para que el mensaje de respuesta esté disponible para el usuario, de modo que el usuario pueda reenviar el mensaje de respuesta al servidor de autenticación (por ejemplo copiando el mensaje de respuesta al dispositivo de acceso que puede reenviar el mensaje de respuesta directamente al servidor de autenticación o al servidor de aplicación que puede reenviarlo a su vez al servidor de autenticación). En algunas realizaciones el dispositivo de autenticación de usuario puede estar adaptado, por ejemplo, para visualizar el mensaje de respuesta como una cadena de dígitos o caracteres numéricos o hexadecimales o alfanuméricos que el usuario puede leer y copiar al dispositivo de acceso. En algunas realizaciones el dispositivo de autenticación de usuario puede estar adaptado, por ejemplo, para emitir una secuencia de fragmentos de voz sintetizados que representan una cadena de dígitos o caracteres numéricos o hexadecimales o alfanuméricos que el usuario puede escuchar y copiar al dispositivo de acceso.
En algunas realizaciones el dispositivo de autenticación de usuario puede adaptarse para enviar el mensaje de respuesta a un servidor de destino. En algunas realizaciones el dispositivo de autenticación de usuario puede adaptarse para enviar el mensaje de respuesta a un servidor de destino a través de una red de comunicación inalámbrica (tal como por ejemplo una red de telefonía móvil) usando su interfaz de comunicación de datos inalámbrica. En algunas realizaciones el dispositivo de autenticación puede estar adaptado, por ejemplo, para enviar el mensaje de respuesta mediante un SMS (Servicio de Mensajes Cortos) o puede estar adaptado para enviar el mensaje de respuesta a través de una conexión de IP inalámbrica, por ejemplo, en forma de un mensaje de POST de HTTP.
Tipos de dispositivos de autenticación de usuario.
En algunas realizaciones el dispositivo de autenticación de usuario puede ser un dispositivo de seguridad de hardware especializado. Un dispositivo de seguridad de hardware especializado en este contexto significa que su función primaria es recibir y procesar un mensaje de iniciación de autenticación y generar un valor de seguridad dinámico en respuesta. Significa adicionalmente que el dispositivo comprende un componente de almacenamiento adaptado para almacenar de manera segura secretos tales como claves criptográficas y/o valores de PIN y que su firmware de aplicación no puede cambiarse o actualizarse, o que puede cambiarse o actualizarse únicamente usando protocolos de actualización de firmware que usan mecanismos criptográficos para probar al dispositivo la autenticidad de la actualización de firmware.
En otras realizaciones el dispositivo de autenticación de usuario puede comprender un dispositivo la función primaria del cual no es recibir y procesar un mensaje de iniciación de autenticación y generar un valor de seguridad dinámico en respuesta y que puede permitir la adición o actualización libre de aplicaciones de software por el usuario. Por ejemplo el dispositivo de autenticación de usuario puede comprender un teléfono inteligente.
Método para asegurar una aplicación.
Las Figuras 4a y 4b ilustran un método (400) para asegurar una aplicación remotamente accesible que se accede por un usuario usando, por ejemplo, un sistema tal como el sistema analizado en relación a la Figura 2.
El método comprende las siguientes etapas.
Interacción inicial del usuario con la aplicación
5
10
15
20
25
30
35
40
45
50
55
60
En una primera etapa una aplicación remotamente accesible alojada por un servidor de aplicación interactúa con un usuario intercambiando (410) datos y mensajes con un dispositivo de acceso que se usa por el usuario para acceder e interactuar con la aplicación. Por ejemplo la aplicación puede recibir una solicitud de acceso desde el dispositivo de acceso, o la aplicación puede recibir desde el dispositivo de acceso (p. ej. en un mensaje de solicitud de transacción) datos de transacción emitidos por el usuario. En algunas realizaciones la aplicación es una aplicación basada en web y la aplicación interactúa con un explorador web en el dispositivo de acceso, p. ej., intercambiando mensajes de HTTP. En algún punto la aplicación puede requerir que el usuario o los datos emitidos por el usuario se autentiquen. En algunas realizaciones el usuario puede haber comunicado su (reivindicada o supuesta) identidad a la aplicación antes del comienzo del proceso de autenticación. En otras realizaciones la aplicación inicia el proceso de autenticación antes de que el usuario se haya identificado. Por ejemplo, en algunas realizaciones el usuario puede emitir una solicitud de acceso que comprende el nombre de usuario o nombre de inicio de sesión o número de cuenta del usuario. En otras realizaciones ese usuario puede emitir una solicitud de acceso anónima que no comprende una indicación de la identidad de usuario.
Obtener o generar un mensaje (420) de iniciación de autenticación.
En una siguiente etapa la aplicación puede recopilar (421) un número de elementos de datos y ensamblar estos elementos de datos en un mensaje de iniciación de autenticación. La aplicación puede recopilar, por ejemplo, un desafío, y/o datos de transacción a autenticarse (y que pueden tener que presentarse por el dispositivo de autenticación de usuario al usuario para aprobación), y/o un identificador de sesión, y/o un identificador de aplicación (que puede usarse por el usuario para identificar la aplicación y que puede presentarse por el dispositivo de autenticación de usuario al usuario para aprobación), y/o una credencial de servidor (que puede verificarse por el dispositivo de autenticación de usuario para autenticar el origen y/o los contenidos del mensaje de iniciación de autenticación), y/o una respuesta o dirección de destino (que puede usarse por el dispositivo de autenticación de usuario cuando envía un mensaje de respuesta), y/o un número aleatorio utilizado solo una vez (que puede usarse por el dispositivo de autenticación de usuario para derivar claves criptográficas secretas tales como, por ejemplo, una clave de verificación de credencial de servidor o una clave de generación de valor de seguridad dinámico), y/o un identificador de usuario (por ejemplo un nombre de usuario que el usuario proporcionó en una solicitud de acceso o de inicio de sesión). Algunos o todos estos elementos de datos pueden haberse generado por la aplicación. Algunos o todos estos elementos de datos pueden haberse generado por otra entidad y pueden haberse obtenido por la aplicación desde esta entidad. Esta entidad puede ser, por ejemplo, un servidor de autenticación confiable por la aplicación. Ejemplos de elementos de datos que pueden haberse generado y proporcionado a la aplicación por otra entidad tal como un servidor de autenticación confiable pueden comprender: un desafío, y/o un identificador de sesión, y/o una credencial de servidor, y/o un número aleatorio utilizado solo una vez, en algunas realizaciones el mismo elemento de datos puede tener más de una función. Por ejemplo, en algunas realizaciones un único elemento de datos puede combinar la función de desafío, identificador de sesión y número aleatorio utilizado solo una vez.
En algunas realizaciones recopilar los elementos de datos y/o usarlos para generar un mensaje de iniciación de autenticación puede hacerse completamente por la aplicación en el servidor de aplicación. En algunas realizaciones la recopilación de los elementos de datos y/o usarlos para generar un mensaje de iniciación de autenticación puede hacerse parcialmente por la aplicación en el servidor de aplicación y puede hacerse parcialmente bajo el control de la aplicación en el dispositivo de acceso (p. ej. por una miniaplicación tal como una miniaplicación de java o un módulo de extensión de explorador asociado con la aplicación). En algunas realizaciones la recopilación de los elementos de datos y/o usarlos para generar un mensaje de iniciación de autenticación puede hacerse completamente bajo el control de la aplicación en el dispositivo de acceso (p. ej. por una miniaplicación tal como una miniaplicación de java o un módulo de extensión de explorador asociado con la aplicación). En algunas realizaciones el mensaje de iniciación de autenticación completo puede generarse por otra entidad tal como un servidor de autenticación confiable y proporcionarse a la aplicación (por ejemplo enviando el mensaje de iniciación de autenticación generado al servidor de aplicación que aloja la aplicación o enviándolo al dispositivo de acceso con el que está interactuando el servidor de aplicación). Por ejemplo en algunas realizaciones el servidor de aplicación puede recopilar todos los elementos de datos y generar un mensaje de iniciación de autenticación y enviarlo al dispositivo de acceso. En algunas realizaciones el servidor de aplicación puede recopilar todos los elementos de datos y enviarlos al dispositivo de acceso donde el mensaje de iniciación de autenticación se genera usando estos elementos de datos (p. ej. por una miniaplicación tal como una miniaplicación java o un módulo de extensión de explorador asociado con la aplicación). En algunas realizaciones el servidor de aplicación puede recopilar algunos elementos de datos y enviarlos al dispositivo de acceso y el dispositivo de acceso puede recopilar algunos otros elementos de datos y el mensaje de iniciación de autenticación se genera en el dispositivo de acceso usando estos elementos de datos (p. ej. por una miniaplicación tal como una miniaplicación de java o un módulo de extensión de explorador asociado con la aplicación). En algunas realizaciones otra entidad tal como un servidor de autenticación puede recopilar todos los elementos de datos y generar el mensaje de iniciación de autenticación y enviarlo al servidor de aplicación (que puede reenviarlo al dispositivo de acceso) o enviarlo directamente al dispositivo de acceso.
Generar una credencial (422) de servidor
En algunas realizaciones el mensaje de iniciación de autenticación comprende una credencial de servidor. En algunas realizaciones el mensaje de iniciación de autenticación puede generarse usando un algoritmo criptográfico
5
10
15
20
25
30
35
40
45
50
55
parametrizado por una clave secreta. En algunas realizaciones la credencial del servidor se genera por el servidor de autenticación. La credencial del servidor puede usarse para unir y/o autenticar criptográficamente al menos algunos de los elementos de datos comprendidos en el mensaje de iniciación de autenticación. Por ejemplo en algunas realizaciones la credencial del servidor puede usarse para autenticar un identificador de aplicación y/o datos relacionados con transacción comprendidos en el mensaje de iniciación de autenticación. En algunas realizaciones la credencial del servidor puede usarse, por ejemplo, para unir criptográficamente, por ejemplo, un valor de seguridad dinámico generado de servidor comprendido en el mensaje de iniciación de autenticación a un identificador de aplicación y/o datos relacionados con transacción también comprendidos en el mensaje de iniciación de autenticación. En algunas realizaciones la credencial del servidor comprende una porción encriptada del mensaje de iniciación de autenticación. En las realizaciones la credencial del servidor comprende todo el mensaje de iniciación de autenticación encriptado completo. En algunas realizaciones la credencial del servidor comprende una porción encriptada del mensaje de iniciación de autenticación que comprende al menos un valor de seguridad dinámico generado de servidor.
Emitir (430) en el dispositivo de acceso una señal que codifica la representación de un mensaje de iniciación de autenticación.
El dispositivo de acceso puede obtener el mensaje de iniciación de autenticación o una representación de él como se describe en más detalle a continuación. Después de haber obtenido el mensaje de iniciación de autenticación o una representación de él, el dispositivo de acceso emite una señal que codifica el mensaje de iniciación de autenticación. El dispositivo de acceso puede emitir esta señal usando su interfaz de salida de usuario como se describe en más detalle a continuación.
Capturar en el dispositivo de autenticación de usuario la señal emitida y decodificar para obtener el mensaje (435) de iniciación de autenticación.
Cuando la señal que codifica el mensaje de iniciación de autenticación se está emitiendo por el dispositivo de acceso, puede capturarse por el dispositivo de autenticación de usuario como se describe en más detalle a continuación. El mensaje de iniciación de autenticación puede a continuación decodificarse por el dispositivo de autenticación de usuario desde la señal capturada como se describe en más detalle a continuación.
Procesar el mensaje de iniciación de autenticación y generar (440) un mensaje de respuesta
Una vez que se ha obtenido el mensaje de iniciación de autenticación por el dispositivo de autenticación de usuario, puede procesarse y puede generarse un mensaje de respuesta que comprende un valor de seguridad dinámico por el dispositivo de autenticación de usuario.
El mensaje de iniciación de autenticación puede procesarse para obtener sus contenidos y, si fuera aplicable (p. ej. si el mensaje de iniciación de autenticación comprende una credencial de servidor), autenticarlo o sus contenidos como se describe en más detalle a continuación.
Verificación (441) de credencial de servidor
Si fuera aplicable (p. ej. si el mensaje de iniciación de autenticación comprende una credencial de servidor), puede procesarse para autenticar su o sus contenidos como se describe en más detalle a continuación. En algunas realizaciones el mensaje de iniciación de autenticación puede comprender una credencial de servidor y este credencial de servidor puede verificarse por el dispositivo de autenticación de usuario como se describe en más detalle a continuación p. ej. para autenticar el origen del mensaje de iniciación de autenticación o alguno de sus contenidos. Si la verificación de credencial de servidor falla, el dispositivo de autenticación de usuario puede abortar etapas adicionales del proceso de autenticación. En un caso de este tipo el dispositivo de autenticación de usuario puede informar al usuario del fallo.
Presentación (442) de identidad de aplicación
En algunas realizaciones el mensaje de iniciación de autenticación comprende un identificador de aplicación que el dispositivo de autenticación de usuario usa para obtener una representación de la identidad de aplicación. La representación de la identidad de aplicación puede presentarse al usuario por medio de su interfaz de salida de usuario y la aprobación del usuario de la representación presentada de la identidad de aplicación puede capturarse por el dispositivo de autenticación de usuario. La aprobación puede usarse en etapas adicionales del proceso de autenticación.
En algunas realizaciones el mensaje de iniciación de autenticación puede comprender un identificador de aplicación así como una credencial de servidor que autentica al menos el identificador de aplicación comprendido en el mensaje de iniciación de autenticación, mediante el cual la credencial del servidor ha sido generada por el servidor de autenticación y mediante el cual el servidor de autenticación puede haber verificado que el identificador de aplicación coincide con la identidad de la aplicación para la que ha generado la credencial del servidor de modo que el usuario puede estar seguro de que el mensaje de iniciación de autenticación de hecho se origina desde la aplicación asociada con el identificador de aplicación.
5
10
15
20
25
30
35
40
45
50
55
Presentación (443) de datos de transacción
En algunas realizaciones el mensaje de iniciación de autenticación puede comprender uno o más elementos de datos relacionados con transacción que pueden presentarse al usuario por el dispositivo de autenticación de usuario por medio de su interfaz de salida de usuario para revisarse y/o aprobarse por el usuario. La aprobación del usuario de los datos relacionados con transacción presentados puede capturarse por el dispositivo de autenticación de usuario. La aprobación puede usarse en etapas adicionales del proceso de autenticación.
Entrada (444) de PIN
En algunas realizaciones puede solicitarse al usuario por el dispositivo de autenticación de usuario que proporcione un PIN o contraseña y el dispositivo de autenticación de usuario puede capturar el PIN o contraseña que el usuario proporciona y usarla como se ha descrito anteriormente. En algunas realizaciones la entrada del usuario de un PIN o contraseña actúa como una aprobación implícita. Puede considerarse por ejemplo por el dispositivo de autenticación de usuario como una aprobación de elementos de datos o mensajes (p. ej. representando la identidad de aplicación o datos relacionados con transacción) que se han presentado por el dispositivo de autenticación de usuario al usuario hasta este punto en el proceso de autenticación, o puede considerarse una aprobación del usuario para el dispositivo de autenticación de usuario para que siga adelante con la generación de un valor de seguridad dinámico y/o generación del mensaje de respuesta y/o envío del mensaje de respuesta a un servidor de destino.
Obtener (445) aprobación del usuario.
Puede requerirse una o más aprobaciones de usuario implícitas o explícitas por el dispositivo de autenticación de usuario (p. ej. una aprobación para seguir adelante con el proceso de autenticación, o una aprobación de la identidad de aplicación o una aprobación de la fecha relacionada con la transacción). En algunas realizaciones el dispositivo de autenticación de usuario solicita explícitamente que el usuario proporcione una aprobación (p. ej. visualizar un mensaje tal como "¿aprueba los siguientes datos de transacción?" u "¿obtiene acceso ahora a la siguiente aplicación?") y presenta explícitamente al usuario con una elección de si aprobar u observar (por ejemplo: "sí/no" o "continuar/cancelar") y el usuario puede proporcionar explícitamente la aprobación haciendo una elección e indicando explícitamente la elección apropiada al dispositivo de autenticación de usuario. En algunas realizaciones el usuario indica la aprobación de una manera implícita. Por ejemplo simplemente continuando (en lugar de abortar) la interacción de usuario normal cuando se está presentando con ciertos datos o mensajes a revisarse o, por ejemplo, introduciendo un PIN o contraseña cuando ciertos datos o mensajes se han presentado al usuario.
Uso y verificación de aprobaciones de usuario en el proceso de autenticación.
La continuación del proceso de autenticación puede depender de una o más de estas aprobaciones del usuario y el proceso de autenticación puede abortarse en algún punto si una o más de las aprobaciones no se proporcionan por el usuario o si el usuario las desaprueba. Por ejemplo en algunas realizaciones la generación de un valor de seguridad dinámico y/o la generación del mensaje de respuesta que comprende el valor de seguridad dinámico puede abortarse si la aprobación del usuario ha fallado. En algunas realizaciones, si no se han obtenido las aprobaciones del usuario requeridas, el dispositivo de autenticación de usuario puede no enviar el mensaje de respuesta generado a un servidor de destino o puede no presentar el mensaje de respuesta al usuario.
En algunas realizaciones las aprobaciones del usuario pueden estar implícitas en el mensaje de respuesta ya que son una condición necesaria para que el dispositivo de autenticación de usuario genere el valor de seguridad dinámico y/o el mensaje de respuesta o para que el dispositivo de autenticación de usuario presente el mensaje de respuesta al usuario o para enviar el mensaje de respuesta a un servidor de destino. En tales realizaciones el servidor de autenticación que verifica el valor de seguridad dinámico puede verificar implícitamente las aprobaciones del usuario verificando el valor de seguridad dinámico puesto que el servidor de autenticación no recibiría nunca un mensaje de respuesta con un valor de seguridad dinámico válido si el usuario no hubiera proporcionado las aprobaciones requeridas.
En algunas realizaciones el dispositivo de autenticación de usuario incluye elementos de datos que indican las aprobaciones del usuario (o la ausencia de las mismas) en el cálculo criptográfico del valor de seguridad dinámico y puede o puede no incluir estos elementos de datos en el mensaje de respuesta. Por ejemplo el dispositivo de autenticación de usuario puede usar un elemento de datos que comprende banderas de bits que indican si se solicitó al usuario proporcionar una cierta aprobación y/o si el usuario de hecho proporcionó esta aprobación. En algunas realizaciones el dispositivo de autenticación de usuario puede incluir estos elementos de datos que son indicativos de las aprobaciones del usuario como entradas para que el algoritmo criptográfico genere el valor de seguridad dinámico y puede incluir estos elementos de datos también en los contenidos del mensaje de respuesta. Un servidor de verificación que recibe el mensaje de respuesta puede a continuación verificar si estos elementos de datos indican un estado satisfactorio con respecto a las aprobaciones por el usuario y puede verificar criptográficamente si el valor de seguridad dinámico comprendido en el mismo mensaje de respuesta es coherente con los valores de estos elementos de datos. En otras realizaciones el dispositivo de autenticación de usuario puede incluir los elementos de datos que son indicativos de las aprobaciones del usuario como entradas para que el algoritmo criptográfico genere el valor de seguridad dinámico pero puede no incluir estos elementos de datos también en los
5
10
15
20
25
30
35
40
45
50
contenidos del mensaje de respuesta. Un servidor de verificación que recibe el mensaje de respuesta puede a continuación asumir ciertos valores para estos elementos de datos que son obligatorios para que el mensaje de respuesta se acepte (p. ej. valores que indican que el usuario proporcionó todas las aprobaciones requeridas) y puede verificar criptográficamente si el valor de seguridad dinámico comprendido en el mismo mensaje de respuesta es coherente con estos valores supuestos para estos elementos de datos.
Generar un valor (449) de seguridad dinámico
Después de que el dispositivo de autenticación de usuario haya obtenido todos los elementos de datos que se requieren para generar un valor de seguridad dinámico, el valor de seguridad dinámico puede generarse como se ha descrito anteriormente.
La generación del valor de seguridad dinámico por el dispositivo de autenticación de usuario puede estar condicionada a ciertas verificaciones y/o eventos. Por ejemplo, puede estar condicionada a la verificación satisfactoria de una credencial de servidor comprendida en el mensaje de iniciación de autenticación, o puede estar condicionada a que el usuario proporcione ciertas aprobaciones requeridas, o puede estar condicionada a la verificación satisfactoria de un PIN o contraseña introducido por el usuario.
Generar (450) un mensaje de respuesta
Como se ha descrito anteriormente, un mensaje de respuesta puede generarse por el dispositivo de autenticación de usuario que comprende el valor de seguridad dinámico. El mensaje de respuesta puede comprender también otros elementos de datos tales como por ejemplo un elemento de datos relacionado con la identidad de aplicación, y/o un identificador de sesión, y/o un identificador de usuario (que puede almacenarse en el dispositivo de autenticación de usuario, o puede haberse extraído desde el mensaje de iniciación de autenticación, o puede haberse proporcionado al dispositivo de autenticación de usuario por el usuario), y/o un identificador de dispositivo de autenticación de usuario (que puede almacenarse en el dispositivo de autenticación de usuario tal como un número de serie), y/o banderas que indican aprobaciones de usuario.
La generación del mensaje de respuesta por el dispositivo de autenticación de usuario puede estar condicionada a ciertas verificaciones y/o eventos. Por ejemplo, puede estar condicionada a la verificación satisfactoria de una credencial de servidor comprendida en el mensaje de iniciación de autenticación, o puede estar condicionada a que el usuario proporcione ciertas aprobaciones requeridas, o puede estar condicionada a la verificación satisfactoria de un PIN o contraseña introducido por el usuario.
Hacer el mensaje de respuesta disponible para un servidor (460) de verificación.
El mensaje de respuesta generado puede a continuación comunicarse a un servidor de verificación tal como el servidor de autenticación.
Presentar el mensaje de respuesta al usuario (461).
En algunas realizaciones el mensaje de respuesta se presenta por el dispositivo de autenticación de usuario al usuario por medio de la interfaz de salida de usuario después de lo que el usuario puede copiar el mensaje de respuesta al dispositivo de acceso que a su vez puede enviar el mensaje de respuesta directamente a un servidor de verificación tal como el servidor de autenticación o puede enviarlo al servidor de aplicación que puede reenviarlo al servidor de verificación.
Presentar el mensaje de respuesta al usuario por el dispositivo de autenticación de usuario puede estar condicionado a ciertas verificaciones y/o eventos. Por ejemplo, puede estar condicionado a la verificación satisfactoria de una credencial de servidor comprendida en el mensaje de iniciación de autenticación, o puede estar condicionado a que el usuario proporcione ciertas aprobaciones requeridas, o puede estar condicionado a la verificación satisfactoria de un PIN o contraseña introducido por el usuario.
Enviar el mensaje de respuesta a un servidor (465) de destino.
En algunas realizaciones el mensaje de respuesta se envía a un servidor de destino (que puede ser, por ejemplo, el servidor de aplicación o el servidor de autenticación) por el dispositivo de autenticación de usuario usando una interfaz de comunicación de datos. En algunas realizaciones esta interfaz de comunicación de datos comprende una interfaz de comunicación de datos inalámbrica. En algunas realizaciones esta interfaz de comunicación de datos inalámbrica comprende una interfaz para enviar mensajes de datos a través de una red de comunicación móvil pública tal como una red de GSM o UMTS.
En algunas realizaciones la dirección de destino del servidor de destino se almacena en el dispositivo de autenticación de usuario. En algunas realizaciones el dispositivo de autenticación de usuario puede determinar la dirección de destino usando un elemento de datos relacionado con la dirección de destino extraído desde el mensaje de iniciación de autenticación. En algunas realizaciones el dispositivo de autenticación de usuario verifica si la dirección de destino determinada es permisible. Puede comparar, por ejemplo, la dirección de destino determinada a
5
10
15
20
25
30
35
40
45
50
55
una lista negra de direcciones prohibidas o a una lista blanca de direcciones permitidas o puede verificar si satisface un número de reglas.
Enviar el mensaje de respuesta a un servidor de destino indicado por la dirección de destino determinada por el dispositivo de autenticación de usuario puede estar condicionado a ciertas verificaciones y/o eventos. Por ejemplo, puede estar condicionado a la verificación satisfactoria de una credencial de servidor comprendida en el mensaje de iniciación de autenticación, o puede estar condicionado a que el usuario proporcione ciertas aprobaciones requeridas, o puede estar condicionado a la verificación satisfactoria de un PIN o contraseña introducido por el usuario.
Verificación del mensaje (470) de respuesta.
Después de que se ha recibido el mensaje de respuesta en el servidor de verificación, puede verificarse. La verificación del mensaje de respuesta puede comprender diversas etapas y partes de la verificación pueden hacerse por el servidor de aplicación y partes de la verificación pueden hacerse por el servidor de autenticación.
En algunas realizaciones parte de la verificación del mensaje de respuesta comprende si los valores de ciertos elementos de datos en el mensaje de respuesta tienen valores aceptables. En algunas realizaciones esto puede comprender verificar que algunos de estos valores están dentro de un cierto intervalo. En algunas realizaciones esto puede comprender verificar que algunos de estos valores tienen uno de un número limitado de valores permisibles. Por ejemplo en algunas realizaciones el mensaje de respuesta puede comprender banderas que indican si el usuario ha aprobado o no ciertos elementos de datos y parte de la verificación puede comprender verificar que estas banderas indican que el usuario ha proporcionado de hecho ciertas aprobaciones. En algunas realizaciones el mensaje de respuesta puede comprender un elemento de datos que está relacionado con la representación de un identificador de aplicación que se ha presentado al usuario y la verificación del mensaje de respuesta puede comprender verificar que el valor de este elemento de datos corresponde a la presentación del identificador de aplicación que el usuario se supone que revisó. Por ejemplo, en algunas realizaciones el mensaje de iniciación de autenticación puede comprender un URL que apunta a un logo de aplicación a recuperarse por el dispositivo de autenticación de usuario y presentarse al usuario. En algunas de estas realizaciones el mensaje de iniciación de autenticación y/o el proceso para recuperar el logo no se aseguran criptográficamente de modo que no puede excluirse que un logo incorrecto se presentara al usuario. Para detectar si se presentó un logo incorrecto al usuario, el dispositivo de autenticación de usuario en tales realizaciones puede incluir en el mensaje de respuesta (y posiblemente también en el cálculo del valor de seguridad dinámico) p. ej. un troceo del logo que se presentó de manera efectiva al usuario. La verificación del mensaje de respuesta puede a continuación comprender que este valor de troceo corresponde al logo que se supuso que se presentó al usuario. En algunas realizaciones el dispositivo de autenticación de usuario puede capturar alguna entrada del usuario e incluir esta en el mensaje de respuesta (y posiblemente también en el cálculo del valor de seguridad dinámico), por ejemplo en algunas realizaciones el dispositivo de autenticación de usuario puede solicitar que el usuario introduzca un PIN o contraseña que puede ser conocido para la aplicación o servidor de autenticación e incluir un elemento de datos representativo del PIN o contraseña en el mensaje de respuesta (posiblemente en una porción encriptada del mensaje de respuesta). Parte de la verificación del mensaje de respuesta puede a continuación comprender verificar el servidor apropiado el valor de este elemento de datos relacionado con el PIN o la contraseña.
Verificación del mensaje de respuesta puede comprender también verificación del valor (475) de seguridad dinámico.
En algunas realizaciones el mensaje de iniciación de autenticación puede comprender un valor de seguridad dinámico generado de servidor y la verificación del valor de seguridad dinámico en el mensaje de respuesta puede comprender comparar el valor de seguridad dinámico recibido en el mensaje de respuesta con el valor de seguridad dinámico generado de servidor.
En algunas realizaciones la verificación del valor de seguridad dinámico comprende verificar la validez criptográfica del valor de seguridad dinámico.
En algunas realizaciones esto comprende determinar valores de referencia para los elementos de datos que se supone que se han usado en el cálculo del valor de seguridad dinámico por el dispositivo de autenticación de usuario. En algunas realizaciones: la fuente de los valores de referencia de algunos de estos elementos de datos pueden ser el mensaje de respuesta (por ejemplo banderas de aprobación de usuario y/o datos relacionados con identidad de aplicación). En algunas realizaciones la fuente de los valores de referencia de algunos de estos elementos de datos pueden ser el servidor de aplicación (por ejemplo un desafío que la aplicación incluyó en el mensaje de iniciación de autenticación y que no está comprendido en el mensaje de respuesta sino que se usa como entrada en el cálculo del valor de seguridad dinámico, o por ejemplo datos relacionados con la transacción). En algunas realizaciones la fuente de los valores de referencia de algunos de estos elementos de datos pueden ser el servidor de autenticación (por ejemplo el valor de un desafío originalmente proporcionado por el servidor de autenticación). En algunas realizaciones la determinación de los valores de referencia de ciertos elementos de datos pueden basarse en suposiciones. Por ejemplo en algunas realizaciones el dispositivo de autenticación de usuario puede usar un valor relacionado con contador en el cálculo del valor de seguridad dinámico y el servidor de autenticación puede mantener una copia de este valor relacionado con el contador y usar un algoritmo de
5
10
15
20
25
30
35
40
45
50
55
60
sincronización para determinar el valor que puede suponerse que usará el dispositivo de autenticación de usuario, o el dispositivo de autenticación de usuario usa un valor relacionado con el tiempo en el cálculo del valor de seguridad dinámico y el servidor de autenticación puede estimar el valor de este valor relacionado con el tiempo basándose en el tiempo de recepción del mensaje de respuesta.
En algunas realizaciones la validación criptográfica del valor de seguridad dinámico comprende la recuperación de una clave de verificación criptográfica. En algunas realizaciones esta clave de verificación está asociada con el dispositivo de autenticación de usuario y puede recuperarse usando un identificador de dispositivo de autenticación de usuario comprendido en el mensaje de respuesta. En algunas realizaciones esta clave de verificación está asociada con el usuario y puede recuperarse usando un identificador de usuario comprendido en el mensaje de respuesta. En algunas realizaciones recuperar la clave de verificación puede comprender hacer una búsqueda en la base de datos usando un identificador de usuario o un elemento de datos relacionado con el identificador de dispositivo de autenticación de usuario como un índice de búsqueda. En algunas realizaciones recuperar la clave de verificación puede comprender hacer una derivación de clave o diversificación desde una clave maestra usando un identificador de usuario o un elemento de datos relacionado con el identificador de dispositivo de autenticación de usuario como derivación o semilla de diversificación.
En algunas realizaciones una clave de verificación usada en la verificación criptográfica del valor de seguridad dinámico comprende una clave simétrica secreta que se ha usado también por el dispositivo de autenticación de usuario en el cálculo del valor de seguridad dinámico. En algunas realizaciones una clave de verificación usada en la verificación criptográfica del valor de seguridad dinámico comprende una clave pública de un par de clave pública- privada, la clave privada de la cual se ha usado por el dispositivo de autenticación de usuario en el cálculo del valor de seguridad dinámico. En algunas realizaciones la validación criptográfica del valor de seguridad dinámico recibido comprende ejecutar un algoritmo criptográfico en los valores de referencia anteriormente mencionados usando la clave de verificación criptográfica anteriormente mencionada y comparar el resultado de esta operación criptográfica con el valor de seguridad dinámico recibido. Por ejemplo en algunas realizaciones la validación criptográfica del valor de seguridad dinámico recibido puede comprender calcular un troceo con clave o un MAC a través de los valores de referencia anteriormente mencionados (en donde el troceo con clave o algoritmo de MAC está parametrizado con una clave de verificación simétrica que puede haberse recuperado como se ha descrito anteriormente). En algunas realizaciones la validación criptográfica del valor de seguridad dinámico recibido comprende ejecutar un algoritmo criptográfico en el valor de seguridad dinámico recibido usando la clave de verificación criptográfica anteriormente mencionada y comparar el resultado de esta operación criptográfica con los valores de referencia anteriormente mencionados. Por ejemplo en algunas realizaciones la validación criptográfica del valor de seguridad dinámico recibido comprende desencriptar el valor de seguridad dinámico con un algoritmo de desencriptación asimétrico usando la clave pública que corresponde a la clave privada que se usó por el dispositivo de autenticación de usuario para generar el valor de seguridad dinámico, y posteriormente comparar el valor desencriptado con un troceo de los valores de referencia anteriormente mencionados.
Comunicar un resultado de verificación al servidor (480) de aplicación.
En algunas realizaciones al menos una parte de la verificación del mensaje de respuesta se hace por un servidor de autenticación confiable y el resultado de la verificación hecho por el servidor de autenticación confiable se comunica al servidor de aplicación. En algunas realizaciones además del resultado de verificación también pueden comunicarse otros elementos de datos al servidor de aplicación. Por ejemplo en algunas realizaciones el servidor de autenticación puede comunicar elementos de datos comprendidos en el mensaje de respuesta al servidor de aplicación, tal como, por ejemplo, un identificador de sesión o un identificador de usuario o un elemento de datos relacionado con la representación de la identidad de aplicación que se presentó al usuario u otros elementos de datos que pueden haberse presentado al usuario por el dispositivo de autenticación de usuario (tal como datos relacionados con transacción) o que pueden haberse proporcionado al dispositivo de autenticación de usuario por el usuario. Recibir un identificador de sesión puede permitir que el servidor de aplicación determine para qué sesión de aplicación son aplicables los resultados comunicados. Recibir un identificador de usuario puede permitir al servidor de aplicación determinar la identidad del usuario sin que el usuario tenga que proporcionar manualmente esa identidad a la aplicación aumentando por lo tanto la conveniencia de usuario global. Recibir datos que se han presentado al usuario por el dispositivo de autenticación de usuario permite que el servidor de aplicación verifique los datos correctos que se presentaron al usuario.
En algunas realizaciones puede asegurarse la comunicación entre el servidor de aplicación y el servidor de autenticación. Por ejemplo en algunas realizaciones los mensajes desde el servidor de autenticación al servidor de aplicación pueden autenticarse criptográficamente para demostrar al servidor de aplicación que se originaron desde el servidor de autenticación legítimo. En algunas realizaciones los mensajes desde un servidor de aplicación al servidor de autenticación pueden autenticarse criptográficamente para demostrar que se originaron desde un servidor de aplicación legítimo. En algunas realizaciones algunos mensajes pueden encriptarse para garantizar confidencialidad de los contenidos de los mensajes. En algunas realizaciones algunos mensajes pueden protegerse criptográficamente (p. ej. con sumas de comprobación criptográficas o firmas) para garantizar la integridad de los contenidos de los mensajes.
En algunas realizaciones el servidor de autenticación puede determinar el servidor de aplicación y enviar el resultado
5
10
15
20
25
30
35
40
45
50
55
de verificación posiblemente junto con datos adicionales al servidor de aplicación. En algunas realizaciones los datos adicionales pueden comprender datos (tales como un identificador de sesión o un identificador de usuario) que permiten que el servidor de aplicación enlace los resultados de verificación proporcionados por el servidor de autenticación a una sesión de aplicación.
En otras realizaciones el servidor de aplicación puede interrogar al servidor de autenticación para el resultado de verificación. En los mensajes de solicitud de interrogación que el servidor de aplicación envía al servidor de autenticación, el servidor de aplicación puede incluir datos que el servidor de autenticación puede usar para adaptar la solicitud de interrogación al correcto de los mensajes de respuesta que ha recibido. Estos datos pueden incluir, por ejemplo, datos tales como un identificador de sesión o un identificador de usuario que puede adaptar correspondientes elementos de datos en el mensaje de respuesta. En algunas realizaciones el servidor de aplicación también proporciona al servidor de autenticación datos que pueden requerirse para la validación del valor de seguridad dinámico tales como, por ejemplo, los valores de datos relacionados con transacción que se han usado en el cálculo del valor de seguridad dinámico.
Comunicar datos adicionales relacionados con el usuario al servidor (499) de aplicación.
En algunas realizaciones el servidor de autenticación confiable puede almacenar y gestionar datos relacionados con el usuario que no se requieren para la verificación del mensaje de respuesta sino que pueden ser de valor para la aplicación. Tales datos pueden incluir, por ejemplo, el nombre de usuario del usuario para la aplicación dada, información personal (tal como el nombre real del usuario, dirección física y/o número de teléfono), información financiera (tal como el número de tarjeta de crédito), y/o información de perfil de usuario. En algunas realizaciones el servidor de autenticación puede pasar alguna de esta información a la aplicación junto con la comunicación del resultado de verificación. Esto puede depender de la verificación satisfactoria del valor de seguridad dinámico. En algunas realizaciones esto puede ser el objeto de reglas de política y una configuración de perfil de usuario. Por ejemplo en algunas realizaciones un usuario puede tener un perfil con el servidor de autenticación que comprende una pluralidad de datos relacionados con el usuario y el usuario puede configurar ese perfil para indicar qué datos pueden comunicarse a qué aplicación en qué condiciones. En algunas realizaciones el mensaje de iniciación de autenticación puede comprender una solicitud para presentarse al usuario por el dispositivo de autenticación de usuario para aprobar que el servidor de autenticación pase ciertos datos al servidor de aplicación (tal como por ejemplo el número de teléfono o dirección del usuario o número de tarjeta de crédito). El dispositivo de autenticación de usuario puede presentar esta solicitud al usuario e incluir la respuesta del usuario en el mensaje de respuesta y en el cálculo del valor de seguridad dinámico. Tras verificación positiva del mensaje de respuesta el servidor de autenticación puede concluir que el usuario ha aprobado la liberación de los datos solicitados a la aplicación y comunicar los datos solicitados al servidor de aplicación
En algunas realizaciones la aplicación puede incluir en el mensaje de iniciación de autenticación solicitudes para que el usuario proporcione ciertos datos (tales como una contraseña específica de aplicación) o solicitudes para liberar a la aplicación de ciertos datos almacenados por el servidor de autenticación mediante los cuales el servidor de autenticación puede, tras una verificación del mensaje de respuesta con éxito, comunicar los datos solicitados (es decir la información introducida o liberada) al servidor de aplicación. En algunas de estas realizaciones la comunicación de la fecha solicitada al servidor de aplicación por el servidor de autenticación puede depender de la verificación satisfactoria por el servidor de autenticación que el dispositivo de autenticación de usuario presentó una representación de la identidad de aplicación al usuario que el usuario aprobó y que la representación de la identidad de aplicación a la que se ha presentado y se ha aprobado por el usuario de hecho, coincide con la identidad de la aplicación que solicita los datos. En algunas de estas realizaciones el identificador de aplicación en el mensaje de iniciación de autenticación se autentica por una credencial de servidor también comprendida en el mensaje de iniciación de autenticación de manera que el usuario puede estar seguro de que la solicitud para los datos de hecho proviene de la aplicación pretendida.
Reaccionar en el servidor de aplicación como una función del resultado (490) de verificación.
Dependiendo del resultado de la verificación del mensaje de respuesta la aplicación puede tomar la acción apropiada. Por ejemplo en caso de una verificación satisfactoria la aplicación puede conceder acceso al usuario o puede ejecutar la transacción (491) emitida, y en caso de una verificación insatisfactoria la aplicación puede rechazar el acceso al usuario o para ejecutar la transacción (492) emitida.
Enlace criptográfico del identificador de aplicación al valor de seguridad dinámico.
En algunas realizaciones el mensaje de iniciación de autenticación comprende un identificador de aplicación que se usa por el dispositivo de usuario de autenticación para obtener una representación de la identidad de aplicación que presenta al usuario. En algunas realizaciones este identificador de aplicación o la correspondiente representación de la identidad de aplicación pueden enlazarse criptográficamente al valor de seguridad dinámico que el dispositivo de autenticación de usuario puede generar.
En algunas realizaciones el identificador de aplicación o la representación correspondiente de la identidad de aplicación se enlazan criptográficamente de manera directa al valor de seguridad dinámico generado. Por ejemplo
10
15
20
25
30
35
40
45
en algunas realizaciones el identificador de aplicación o la correspondiente representación de la aplicación (o un elemento de datos matemáticamente relacionado con el identificador de aplicación o la correspondiente representación de la aplicación) es uno de los elementos de datos de entrada para el algoritmo criptográfico usado por el dispositivo de autenticación de usuario para generar el valor de seguridad dinámico.
En algunas realizaciones el identificador de aplicación o la correspondiente representación de la identidad de aplicación se enlaza criptográficamente de manera indirecta al valor de seguridad dinámico generado. Por ejemplo en algunas realizaciones el identificador de aplicación comprendido en el mensaje de iniciación de autenticación se enlaza criptográficamente a otros elementos de datos en el mensaje de iniciación de autenticación (por ejemplo por medio de una credencial de servidor) que puede usarse por el dispositivo de autenticación de usuario como el elemento de datos de entrada para el algoritmo criptográfico usado por el dispositivo de autenticación de usuario para generar el valor de seguridad dinámico. En algunas realizaciones este enlace criptográfico entre el identificador de aplicación y otros elementos de datos comprendidos en el mensaje de iniciación de autenticación pueden verificarse por el dispositivo de autenticación de usuario. Por ejemplo en algunas realizaciones el identificador de aplicación se enlaza criptográficamente por una credencial de servidor (tal como una firma de servidor o un troceo con clave o un MAC a través de datos del mensaje de iniciación de autenticación) a otros elementos de datos (tales como un desafío o un identificador de sesión) en el mensaje de iniciación de autenticación que el dispositivo de autenticación de usuario (después de la verificación satisfactoria de la credencial del servidor) usa como entrada en el algoritmo criptográfico para la generación del valor de seguridad dinámico.
En algunas realizaciones el mensaje de iniciación de autenticación puede comprender un identificador de aplicación y un valor de seguridad dinámico generado de servidor que se enlazan criptográficamente (p. ej. por una credencial de servidor) mediante la cual el dispositivo de autenticación de usuario puede incluir este valor de seguridad dinámico generado de servidor en el mensaje de respuesta mediante el cual esta inclusión puede ser condicional tras la verificación satisfactoria por el dispositivo de autenticación de usuario del enlace criptográfico entre el identificador de aplicación y el valor de seguridad dinámico generado de servidor en el mensaje de iniciación de autenticación).
Modos para llevar a cabo la invención
Algunas realizaciones de los métodos según la invención.
Una primera clase de realizaciones de los métodos de la presente invención comprende métodos para asegurar la interacción con una aplicación mediante un usuario que accede remotamente a dicha aplicación a través de un dispositivo de acceso que está conectado a un servidor de aplicación que aloja dicha aplicación, comprendiendo los métodos las etapas de:
en un dispositivo de autenticación de usuario capturar una señal emitida por el dispositivo de acceso, dicha señal codificada con un mensaje de iniciación de autenticación, dicho mensaje de iniciación de autenticación que comprende al menos un identificador de aplicación que corresponde a una identidad de la aplicación;
en el dispositivo de autenticación de usuario decodificar dicha señal y obtener el mensaje de iniciación de autenticación;
en el dispositivo de autenticación de usuario recuperar desde el mensaje de iniciación de autenticación el identificador de aplicación;
en el dispositivo de autenticación de usuario usar el identificador de aplicación para obtener una representación interpretable humana de la identidad de aplicación y presentar la representación de identidad de aplicación obtenida al usuario usando una interfaz de salida de usuario del dispositivo de autenticación de usuario;
en el dispositivo de autenticación de usuario obtener desde el usuario, usando una interfaz de entrada de usuario del dispositivo de autenticación de usuario, una aprobación para generar un mensaje de respuesta y hacer el mensaje de respuesta disponible a un servidor de verificación;
en el dispositivo de autenticación de usuario generar un valor de seguridad dinámico usando un primer algoritmo criptográfico parametrizado con una clave de generación criptográfica de valor de seguridad dinámico y usar al menos un elemento de datos personalizado que está asociado con el usuario particular o el dispositivo de autenticación de usuario particular, en donde el valor de seguridad dinámico generado se enlaza criptográficamente a la identidad de aplicación presentada al usuario;
en el dispositivo de autenticación de usuario generar un mensaje de respuesta que comprende al menos el valor de seguridad dinámico generado;
hacer el mensaje de respuesta generado disponible a un servidor de verificación; en el servidor de verificación recibir el mensaje de respuesta;
verificar el mensaje de respuesta que incluye verificar la validez del valor de seguridad dinámico;
5
10
15
20
25
30
35
40
45
50
55
comunicar el resultado de la verificación del mensaje de respuesta a la aplicación.
Una segunda clase de realizaciones de los métodos de la presente invención comprende métodos de la primera clase en donde el mensaje de respuesta comprende adicionalmente un elemento de datos que es indicativo de una identidad del usuario o una identidad del dispositivo de autenticación de usuario y en donde dicho elemento de datos indicativo de la identidad de usuario o la identidad del dispositivo de autenticación de usuario se usa para determinar una identidad de usuario y en donde dicha identidad de usuario también se comunica a la aplicación.
Una tercera clase de realizaciones de los métodos de la presente invención comprende cualquiera de los métodos de la primera y segunda clases en donde la identidad de usuario se determina también como una función de la identidad de aplicación.
Una cuarta clase de realizaciones de los métodos de la presente invención comprende cualquiera de los métodos de la primera a la tercera clases en donde todos los datos dependientes de la aplicación usados para obtener la representación de la identidad de aplicación se obtienen por el dispositivo de autenticación de usuario desde una fuente externa al dispositivo de autenticación de usuario o desde el mensaje de iniciación de autenticación.
Una quinta clase de realizaciones de los métodos de la presente invención comprende cualquiera de los métodos de la primera a cuarta clases que comprende adicionalmente las etapas de generar una credencial de servidor a incluirse en el mensaje de iniciación de autenticación, dicha generación usando un segundo algoritmo criptográfico parametrizado con una clave de generación de credencial de servidor criptográfico; recuperar en el dispositivo de autenticación de usuario desde el mensaje de iniciación de autenticación la credencial de servidor incluida; y verificar en el dispositivo de autenticación de usuario la credencial del servidor usando un tercer algoritmo criptográfico parametrizado con una clave de verificación de credencial de servidor criptográfico.
Una sexta clase de realizaciones de los métodos de la presente invención comprende cualquiera de los métodos de la quinta clase en donde el identificador de aplicación comprendido en el mensaje de iniciación de autenticación está enlazado criptográficamente a la credencial del servidor.
Una séptima clase de realizaciones de los métodos de la presente invención comprende cualquiera de los métodos de la primera a sexta clases en donde la etapa de generar un mensaje de respuesta comprende adicionalmente en el dispositivo de autenticación de usuario que incluye en el mensaje de respuesta generado por el dispositivo de autenticación de usuario un elemento de datos indicativo de la representación de identidad de aplicación presentada al usuario.
Una octava clase de realizaciones de los métodos de la presente invención comprende cualquiera de los métodos de la séptima clase que comprende adicionalmente verificar en el servidor de verificación si el elemento de datos que es indicativo de la representación de identidad de aplicación presentada al usuario es coherente con la identidad de aplicación indicada por el identificador de aplicación comprendido en el mensaje de iniciación de autenticación.
Una novena clase de realizaciones de los métodos de la presente invención comprende cualquiera de los métodos de la primera a octava clases que comprende adicionalmente las etapas de: recuperar en el dispositivo de autenticación de usuario desde el mensaje de iniciación de autenticación datos relacionados con transacción comprendidos en el mensaje de iniciación de autenticación; presentar en el dispositivo de autenticación de usuario los datos relacionados con transacción recuperados usando una interfaz de salida de usuario del dispositivo de autenticación de usuario; en donde el valor de seguridad dinámico generado se enlaza criptográficamente a los datos relacionados con transacción.
Una décima clase de realizaciones de los métodos de la presente invención comprende cualquiera de los métodos de la novena clase que comprende adicionalmente las etapas de generar una credencial de servidor para incluirse en el mensaje de iniciación de autenticación, dicha generación usando un segundo algoritmo criptográfico parametrizado con una clave de generación de credencial de servidor criptográfico; recuperar en el dispositivo de autenticación de usuario desde el mensaje de iniciación de autenticación la credencial de servidor incluida; verificar en el dispositivo de autenticación de usuario la credencial del servidor usando un tercer algoritmo criptográfico parametrizado con una clave de verificación de credencial de servidor criptográfico; en donde la credencial del servidor está enlazada criptográficamente a los datos relacionados con transacción.
Una undécima clase de realizaciones de los métodos de la presente invención comprende cualquiera de los métodos de la novena clase que comprende adicionalmente las etapas de incluir en el dispositivo de autenticación de usuario en el mensaje de respuesta generado por el dispositivo de autenticación de usuario elementos de datos que son indicativos de los datos relacionados con transacción presentados al usuario; y en el servidor de verificación verificar si los elementos de datos que son indicativos de los datos relacionados con transacción presentados al usuario son coherentes con los datos relacionados con transacción comprendidos en el mensaje de iniciación de autenticación.
Una duodécima clase de realizaciones de los métodos de la presente invención comprende cualquiera de los métodos de la primera a undécima clases en donde la clave de generación del valor de seguridad dinámico comprende una clave personalizada secreta; y en donde el dispositivo de autenticación de usuario calcula el valor de seguridad dinámico combinando criptográficamente la clave de generación de valor de seguridad dinámico con al
5
10
15
20
25
30
35
40
45
50
55
menos un valor de entrada dinámico; y en donde dicho valor de entrada dinámico comprende al menos uno de un valor relacionado con el tiempo proporcionado por un mecanismo temporal en el dispositivo de autenticación de usuario, un valor relacionado con el contador almacenado y mantenido por el dispositivo de autenticación de usuario, o un desafío comprendido en el mensaje de iniciación de autenticación.
Una decimotercera clase de realizaciones de los métodos de la presente invención comprende cualquiera de los métodos de la duodécima clase en donde el dispositivo de autenticación de usuario calcula el valor de seguridad dinámico combinando criptográficamente la clave de generación de valor de seguridad dinámico también con un elemento de datos que es indicativo de la representación de identidad de aplicación presentada al usuario.
Una decimocuarta clase de realizaciones de los métodos de la presente invención comprende cualquiera de los métodos de la duodécima clase en donde el dispositivo de autenticación de usuario recupera desde el mensaje de iniciación de autenticación datos relacionados con transacción comprendidos en el mensaje de iniciación de autenticación y presenta estos datos relacionados con transacción al usuario; y en donde el dispositivo de autenticación de usuario calcula el valor de seguridad dinámico combinando criptográficamente la clave de generación de valor de seguridad dinámico también con elementos de datos que son indicativos de los datos relacionados con transacción presentados al usuario.
Aparato según la invención
Una primera clase de realizaciones de dispositivos de la presente invención comprende el aparato para generar credenciales de autenticación que comprende un componente de procesamiento adaptado para procesar datos; un componente de almacenamiento para almacenar datos; un componente de interfaz de usuario que comprende una primera interfaz de salida de usuario para presentar salidas a un usuario y una interfaz de usuario de entrada para recibir entrada desde el usuario; y una interfaz de entrada de datos adaptada para capturar una señal emitida por una segunda interfaz de salida de usuario de un dispositivo de acceso que el usuario está usando para acceder remotamente a una aplicación a través de una red informática, dicha señal codificada con un mensaje de iniciación de autenticación, dicho mensaje de iniciación de autenticación que comprende al menos un identificador de aplicación que corresponde a una identidad de dicha aplicación; mediante el cual el aparato está adaptado para decodificar dicha señal y obtener el mensaje de iniciación de autenticación; recuperar desde el mensaje de iniciación de autenticación el identificador de aplicación; usar el identificador de aplicación para obtener una representación interpretable humana de la identidad de aplicación y presentar la representación de identidad de aplicación obtenida al usuario usando la primera interfaz de salida de usuario; obtener desde el usuario, usando la interfaz de entrada de usuario, una aprobación para generar un mensaje de respuesta y hacer el mensaje de respuesta disponible a un servidor de verificación; generar un valor de seguridad dinámico usando un primer algoritmo criptográfico parametrizado con una clave de generación de valor de seguridad dinámico criptográfico y usar al menos un elemento de datos personalizado que está asociado con el usuario o el aparato, en donde el valor de seguridad dinámico generado está enlazado criptográficamente a la identidad de aplicación presentada al usuario; y generar un mensaje de respuesta que comprende al menos el valor de seguridad dinámico generado.
Una segunda clase de realizaciones de dispositivos de la presente invención comprende cualquiera del aparato de la primera clase de aparatos que están adaptados adicionalmente para presentar el mensaje de respuesta generado al usuario usando la primera interfaz de salida de usuario.
Una tercera clase de realizaciones de dispositivos de la presente invención comprende cualquiera del aparato de la primera clase de aparatos que comprende adicionalmente una interfaz de comunicaciones de datos adaptada para comunicar dicho mensaje de respuesta a un servidor de verificación.
Una realización de un sistema de la presente invención comprende un sistema para asegurar la interacción con una aplicación por un usuario que accede de manera remota a dicha aplicación a través de un dispositivo de acceso que está conectado a un servidor de aplicación que aloja dicha aplicación, que comprende una pluralidad de dispositivos de autenticación de usuario como se ha descrito anteriormente y un servidor de verificación adaptado para recibir un mensaje de respuesta generado por cualquiera de la pluralidad de dispositivos de autenticación de usuario, y adaptado para verificar el mensaje de respuesta recibido que incluye verificar la validez del valor de seguridad dinámico comprendido en el mensaje de respuesta, y adaptado para comunicar el resultado de la verificación del mensaje de respuesta a la aplicación.
Efectos ventajosos
Las ventajas de la invención anteriormente descrita incluyen las siguientes.
Soporte de múltiples aplicaciones verdadero.
Modelo de confianza.
La invención es adecuada para un entorno de múltiples aplicaciones con el siguiente modelo de confianza. Los usuarios confían en un servidor de autenticación confiable para manejar correctamente sus credenciales de autenticación hacia un número de aplicaciones y para basarse en un dispositivo de autenticación de usuario
5
10
15
20
25
30
35
40
45
50
55
proporcionado y/o controlado por el dispositivo de autenticación confiable y, hasta cierto punto, para gestionar de manera correcta ciertos datos que se han proporcionado al servidor de autenticación confiable. Las aplicaciones confían en el servidor de autenticación confiable con respecto a la verificación de credenciales de autenticación (es decir los valores de seguridad dinámicos comprendidos en los mensajes de respuesta). No hay necesidad de que las aplicaciones confíen entre sí. Más en particular no tienen que compartir ningún secreto entre sí. Los usuarios confían en una aplicación particular únicamente en el alcance y contexto de esa aplicación particular. Es decir los usuarios no confían en ninguna aplicación para que actúe de manera responsable en nombre del usuario en el alcance y contexto de cualquier otra aplicación y por lo tanto no desean proporcionar aplicaciones con credenciales que podrían usarse para acceder a otras aplicaciones en nombre del usuario.
En algunas realizaciones de la aplicación el valor de seguridad dinámico se enlaza criptográficamente a un identificador de aplicación al que se presenta, revisa por y aprueba por el usuario. Este enlace criptográfico limita de manera eficaz la validez de un mensaje de respuesta generado a una aplicación particular y asegura que las credenciales (mensajes de respuesta) generados para una aplicación no pueden reciclarse para otra aplicación.
Flexibilidad para soportar aplicaciones adicionales
Puesto que el dispositivo de autenticación de usuario no requiere diferentes claves criptográficas o diferentes datos de configuración para diferentes aplicaciones (más en particular no hay necesidad de que los dispositivos de autenticación de usuario almacenen ninguno de los datos específicos de la aplicación tal como, por ejemplo, identidades de representaciones de la aplicación), pueden soportarse fácilmente aplicaciones adicionales. La única cosa que se requiere para que se soporte una aplicación adicional es que esta aplicación adicional establezca una relación de confianza con el servidor de autenticación confiable.
Alta seguridad.
Los dispositivos de autenticación de usuario se han personalizado con claves criptográficas individuales de manera que pueden generar valores de seguridad dinámicos que son específicos para cualquier dispositivo de autenticación de usuario particular y por lo tanto (mediante la asociación conocida entre un dispositivo de autenticación de usuario particular y su usuario asociado) para el usuario legítimo de ese dispositivo de autenticación. Cualquier credencial que se genera por un dispositivo de autenticación de usuario particular se enlaza criptográficamente por lo tanto a ese dispositivo de autenticación de usuario particular (y su usuario asociado).
El uso de una variable dinámica (tal como un desafío o un contador o un valor de tiempo) en los cálculos de los valores de seguridad dinámicos asegura la imprevisibilidad de los valores de seguridad dinámicos generados y protege contra ataques de reproducción.
La presentación de una representación interpretable humana y reconocible de la identidad de aplicación y el enlace criptográfico de la misma con el valor de seguridad dinámico protege contra recogida de credenciales válidos por aplicaciones fraudulentas (p. ej. ataques de suplantación de identidad en tiempo real) para usarlos para obtener acceso a otras aplicaciones.
La presentación de datos de transacción en el dispositivo de autenticación de usuario confiable y la inclusión de los datos de transacción aprobados en el cálculo del valor de seguridad dinámico protege contra ataques MITM (hombre en el medio) mediante los cuales una parte fraudulenta intercepta y modifica datos de transacción que se emiten a una aplicación por un usuario legítimo.
Alta conveniencia para el usuario.
El usuario no tiene que recordar ningún dato de seguridad específico de aplicación tal como contraseñas específicas de aplicación. La invención incluso permite la identificación de usuario automática a la aplicación por el servidor de autenticación de manera que el usuario ya no tiene que recordar sino que tampoco tiene que introducir más ningún nombre de usuario específico de aplicación o id de usuario. La invención también proporciona la comunicación automática a aplicaciones de otros datos que se han proporcionado comúnmente a una amplia gama de aplicaciones (información de contacto, dirección, o número de tarjeta de crédito) evitando de esta manera entrada de datos manual tediosa.
Puesto que la invención puede funcionar con cualquier dispositivo de acceso convencional normal y no requiere que esté presente ningún hardware o software específico en el dispositivo de acceso (es decir un explorador web convencional para interactuar con la aplicación y una interfaz de salida de usuario normal para emitir el mensaje de iniciación de autenticación son suficientes) la invención asegura un muy alto grado de movilidad y autonomía para los usuarios,
Rentabilidad.
Puesto que el mismo dispositivo de autenticación de usuario puede usarse para un número intrínsecamente ilimitado de aplicaciones, la solución de la invención es muy rentable. También, puesto que la solución plantea requisitos muy pequeños al dispositivo de acceso (distintos a los que debería tener una interfaz de salida de usuario normal para
emitir la señal que codifica el mensaje de iniciación de autenticación) no hay problemas de soporte tediosos y costosos normalmente asociados con la instalación en dispositivos de acceso de hardware y/o software específicos (tales como, por ejemplo, lectores de tarjetas inteligentes y sus controladores asociados).
Algunas realizaciones del dispositivo de autenticación de usuario se basan únicamente en criptografía simétrica y no 5 usan criptografía asimétrica. Estas realizaciones tienen la ventaja de que pueden funcionar con criptogramas más cortos y requieren menos potencia de procesamiento que las realizaciones que se basan en criptografía asimétrica.
Se ha descrito un número de implementaciones. Sin embargo, se entenderá que pueden realizarse diversas modificaciones. Por ejemplo, los elementos de una o más implementaciones pueden combinarse, borrarse, modificarse o complementarse para formar implementaciones adicionales. Por consiguiente, otras implementaciones 10 están dentro del alcance de las reivindicaciones adjuntas. Además, aunque una característica particular de la presente invención puede haberse descrito con respecto a únicamente una de varias implementaciones, tal característica puede combinarse con una o más otras características de las otras implementaciones según pueda desearse y sea ventajoso para cualquier aplicación dada o particular. Aunque se han descrito las diversas realizaciones de la presente invención, debería entenderse que se han presentado a modo de ejemplo únicamente y 15 no para limitación. En particular, por supuesto, no es posible describir cualquier combinación concebible de componentes o metodologías para los fines de describir la materia objeto reivindicada, aunque un experto en la técnica puede reconocer que son posibles muchas combinaciones y permutaciones adicionales de la presente invención. Por lo tanto, el ámbito y alcance de la presente invención no debería estar limitado por ninguna de las realizaciones ejemplares anteriormente descritas sino que debería definirse únicamente según las siguientes 20 reivindicaciones y sus equivalentes.
Claims (17)
- 51015202530354045REIVINDICACIONES1. Un método (400) para asegurar la interacción con una aplicación por un usuario (290) que accede remotamente a dicha aplicación a través de un dispositivo (230) de acceso que está conectado a un servidor (210) de aplicación que aloja dicha aplicación, que comprende las etapas de:en un dispositivo (240) de autenticación de usuario capturar (435) una señal emitida por el dispositivo de acceso, dicha señal codificada con un mensaje de iniciación de autenticación, comprendiendo dicho mensaje de iniciación de autenticación al menos un identificador de aplicación que corresponde a una identidad de la aplicación;en el dispositivo (240) de autenticación de usuario decodificar (435) dicha señal y obtener el mensaje de iniciación de autenticación;en el dispositivo (240) de autenticación de usuario recuperar (440) desde el mensaje de iniciación de autenticación el identificador de aplicación;en el dispositivo (240) de autenticación de usuario generar (449) un valor de seguridad dinámico usando un primer algoritmo criptográfico parametrizado con una clave de generación de valor de seguridad dinámico criptográfico y usar al menos un elemento de datos personalizado que está asociado con el usuario particular o el dispositivo de autenticación de usuario particular;en el dispositivo (240) de autenticación de usuario generar (450) un mensaje de respuesta que comprende al menos el valor de seguridad dinámico generado;el método (400) caracterizado por que comprende adicionalmente las etapas de:en el dispositivo (240) de autenticación de usuario usar el identificador de aplicación recuperado desde el mensaje de iniciación de autenticación para obtener una representación interpretable humana de la identidad de aplicación y presentar (442) la representación de identidad de aplicación obtenida al usuario (290) usando una interfaz (340) de salida de usuario del dispositivo (240) de autenticación de usuario;en el dispositivo (240) de autenticación de usuario, generar el valor de seguridad dinámico de manera que esté criptográficamente enlazado a la identidad de aplicación presentada al usuario;en el dispositivo (240) de autenticación de usuario obtener (445) desde el usuario, usando una interfaz (350) de entrada de usuario del dispositivo (240) de autenticación de usuario, una aprobación para generar un mensaje de respuesta y hacer el mensaje de respuesta generado disponible a dicho servidor (220) de verificación;hacer (460) el mensaje de respuesta generado disponible a dicho servidor (220) de verificación;en el servidor (220) de verificación recibir el mensaje de respuesta;verificar (470) el mensaje de respuesta que incluye verificar (475) la validez del valor de seguridad dinámico; comunicar (480) el resultado de la verificación del mensaje de respuesta a la aplicación.
- 2. El método de la reivindicación 1, en donde el mensaje de respuesta comprende adicionalmente un elemento de datos que es indicativo de una identidad del usuario o una identidad del dispositivo de autenticación de usuario y en donde dicho elemento de datos indicativo de la identidad de usuario o la identidad de dispositivo de autenticación de usuario se usa para determinar una identidad de usuario y en donde dicha identidad de usuario también se comunica a la aplicación.
- 3. El método de la reivindicación 2, en donde la identidad de usuario se determina también como una función de la identidad de aplicación.
- 4. El método de la reivindicación 1, en donde todos los datos dependientes de la aplicación usados para obtener la representación de identidad de aplicación se obtienen por el dispositivo de autenticación de usuario desde una fuente externa al dispositivo de autenticación de usuario o desde el mensaje de iniciación de autenticación.
- 5. El método de cualquiera de las reivindicaciones anteriores que comprende adicionalmente las etapas de:generar (422) una credencial de servidor para que esté incluida en el mensaje de iniciación de autenticación, dicha generación usando un segundo algoritmo criptográfico parametrizado con una clave de generación de credencial de servidor criptográfico;en el dispositivo de autenticación de usuario recuperar desde el mensaje de iniciación de autenticación la credencial de servidor incluida;en el dispositivo de autenticación de usuario verificar (441) la credencial del servidor usando un tercer algoritmo criptográfico parametrizado con una clave de verificación de credencial de servidor criptográfico.51015202530354045
- 6. El método de la reivindicación 5, en donde el identificador de aplicación comprendido en el mensaje de iniciación de autenticación está enlazado criptográficamente a la credencial del servidor.
- 7. El método de cualquiera de las reivindicaciones anteriores, en donde la etapa de generar un mensaje de respuesta comprende adicionalmente:en el dispositivo de autenticación de usuario incluir en el mensaje de respuesta generado por el dispositivo de autenticación de usuario un elemento de datos indicativo de la representación de identidad de aplicación presentada al usuario.
- 8. El método de la reivindicación 7, que comprende adicionalmente:en el servidor de verificación verificar si el elemento de datos que es indicativo de la representación de identidad de aplicación presentada al usuario es coherente con la identidad de aplicación indicada por el identificador de aplicación comprendido en el mensaje de iniciación de autenticación.
- 9. El método de cualquiera de las reivindicaciones anteriores que comprende adicionalmente las etapas de:en el dispositivo de autenticación de usuario recuperar desde el mensaje de iniciación de autenticación datos relacionados con transacción comprendidos en el mensaje de iniciación de autenticación;en el dispositivo de autenticación de usuario presentar (443) los datos relacionados con transacción recuperados usando una interfaz de salida de usuario del dispositivo de autenticación de usuario; yen donde el valor de seguridad dinámico generado se enlaza criptográficamente a los datos relacionados con transacción.
- 10. El método de la reivindicación 9, que comprende adicionalmente las etapas de:generar (422) una credencial de servidor para que esté incluida en el mensaje de iniciación de autenticación, dicha generación usando un segundo algoritmo criptográfico parametrizado con una clave de generación de credencial de servidor criptográfico;en el dispositivo de autenticación de usuario recuperar desde el mensaje de iniciación de autenticación la credencial de servidor incluida;en el dispositivo de autenticación de usuario verificar (441) la credencial del servidor usando un tercer algoritmo criptográfico parametrizado con una clave de verificación de credencial de servidor criptográfico;en donde la credencial del servidor está enlazada criptográficamente a los datos relacionados con transacción.
- 11. El método de la reivindicación 9 o 10, que comprende adicionalmente las etapas de:en el dispositivo de autenticación de usuario incluir en el mensaje de respuesta generado por el dispositivo de autenticación de usuario elementos de datos indicativos de los datos relacionados con transacción presentados al usuario; yen el servidor de verificación verificar si los elementos de datos que son indicativos de los datos relacionados con transacción presentados al usuario son coherentes con los datos relacionados con transacción comprendidos en el mensaje de iniciación de autenticación.
- 12. El método de cualquiera de las reivindicaciones anteriores en dondela clave de generación de valor de seguridad dinámico comprende una clave personalizada secreta; y en dondeel dispositivo de autenticación de usuario calcula el valor de seguridad dinámico combinando criptográficamente la clave de generación de valor de seguridad dinámico con al menos un valor de entrada dinámico; y en dondedicho valor de entrada dinámico comprende al menos uno de un valor relacionado con el tiempo proporcionado por un mecanismo temporal en el dispositivo de autenticación de usuario, un valor relacionado con el contador almacenado y mantenido por el dispositivo de autenticación de usuario, o un desafío comprendido en el mensaje de iniciación de autenticación.
- 13. El método de la reivindicación 12, en donde el dispositivo de autenticación de usuario calcula el valor de seguridad dinámico combinando criptográficamente la clave de generación de valor de seguridad dinámico también con un elemento de datos que es indicativo de la representación de identidad de aplicación presentada al usuario.
- 14. Un aparato (240) para generar credenciales de autenticación que comprende: un componente (310) de procesamiento adaptado para procesar datos;5101520253035un componente (320) de almacenamiento para almacenar datos;un componente de interfaz (340, 350) de usuario que comprende una primera interfaz (340) de salida de usuario para presentar salidas a un usuario y una interfaz (350) de usuario de entrada para recibir entrada desde el usuario;yuna interfaz (360, 370) de entrada de datos adaptada para capturar una señal emitida por una segunda interfaz de salida de usuario de un dispositivo (230) de acceso que el usuario está usando para acceder remotamente a una aplicación a través de una red informática, dicha señal codificada con un mensaje de iniciación de autenticación, comprendiendo dicho mensaje de iniciación de autenticación al menos un identificador de aplicación que corresponde a una identidad de dicha aplicación; mediante la cual el aparato (240) está adaptado para decodificar dicha señal y obtener el mensaje de iniciación de autenticación;recuperar desde el mensaje de iniciación de autenticación el identificador de aplicación;generar un valor de seguridad dinámico usando un primer algoritmo criptográfico parametrizado con una clave de generación de valor de seguridad dinámico criptográfico y usar y al menos un elemento de datos personalizado que está asociado con el usuario o el aparato; ygenerar un mensaje de respuesta que comprende al menos el valor de seguridad dinámico generado;el aparato (240) caracterizado por que está adaptado adicionalmente para:usar el identificador de aplicación recuperado desde el mensaje de iniciación de autenticación para obtener una representación interpretable humana de la identidad de aplicación y presentar la representación de identidad de aplicación obtenida al usuario usando la primera interfaz de salida de usuario;generar el valor de seguridad dinámico de manera que esté criptográficamente enlazado a la identidad de aplicación presentada al usuario; yobtener desde el usuario, usando la interfaz de entrada de usuario, una aprobación para generar un mensaje de respuesta y hacer el mensaje de respuesta disponible a un servidor de verificación.
- 15. El aparato (240) de la reivindicación 14, adaptado adicionalmente para presentar el mensaje de respuesta generado al usuario usando la primera interfaz (340) de salida de usuario.
- 16. El aparato (240) de la reivindicación 14, que comprende adicionalmente una interfaz (330) de comunicaciones de datos adaptada para comunicar dicho mensaje de respuesta a un servidor (220) de verificación.
- 17. Un sistema (200) para asegurar la interacción con una aplicación por un usuario que accede remotamente a dicha aplicación a través de un dispositivo (230) de acceso que está conectado a un servidor (210) de aplicación que aloja dicha aplicación, que comprende:una pluralidad de dispositivos (240) de autenticación de usuario según la reivindicación 14; yun servidor (220) de verificación adaptado para recibir un mensaje de respuesta generado por cualquiera de la pluralidad de dispositivos (240) de autenticación de usuario, y adaptado para verificar el mensaje de respuesta recibido que incluye verificar la validez del valor de seguridad dinámico comprendido en el mensaje de respuesta, y adaptado para comunicar el resultado de la verificación del mensaje de respuesta a la aplicación.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201261679284P | 2012-08-03 | 2012-08-03 | |
US201261679284P | 2012-08-03 | ||
PCT/US2013/053433 WO2014022778A1 (en) | 2012-08-03 | 2013-08-02 | User-convenient authentication method and apparatus using a mobile authentication application |
Publications (1)
Publication Number | Publication Date |
---|---|
ES2680152T3 true ES2680152T3 (es) | 2018-09-04 |
Family
ID=48985857
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES13748438.2T Active ES2680152T3 (es) | 2012-08-03 | 2013-08-02 | Método y aparato de autenticación conveniente para el usuario usando una aplicación de autenticación móvil |
Country Status (9)
Country | Link |
---|---|
US (1) | US9710634B2 (es) |
EP (1) | EP2885904B1 (es) |
CN (1) | CN104662864B (es) |
DK (1) | DK2885904T3 (es) |
ES (1) | ES2680152T3 (es) |
IN (1) | IN2015KN00466A (es) |
PL (1) | PL2885904T3 (es) |
TR (1) | TR201810238T4 (es) |
WO (1) | WO2014022778A1 (es) |
Families Citing this family (330)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140019352A1 (en) | 2011-02-22 | 2014-01-16 | Visa International Service Association | Multi-purpose virtual card transaction apparatuses, methods and systems |
US8762263B2 (en) | 2005-09-06 | 2014-06-24 | Visa U.S.A. Inc. | System and method for secured account numbers in proximity devices |
US8121956B2 (en) | 2007-06-25 | 2012-02-21 | Visa U.S.A. Inc. | Cardless challenge systems and methods |
US7739169B2 (en) | 2007-06-25 | 2010-06-15 | Visa U.S.A. Inc. | Restricting access to compromised account information |
US7937324B2 (en) | 2007-09-13 | 2011-05-03 | Visa U.S.A. Inc. | Account permanence |
US9456054B2 (en) | 2008-05-16 | 2016-09-27 | Palo Alto Research Center Incorporated | Controlling the spread of interests and content in a content centric network |
US8219489B2 (en) | 2008-07-29 | 2012-07-10 | Visa U.S.A. Inc. | Transaction processing using a global unique identifier |
BRPI0921124A2 (pt) | 2008-11-06 | 2016-09-13 | Visa Int Service Ass | sistema para autenticar um consumidor, método implementado por computador, meio legível por computador, e, computador servidor. |
US9715681B2 (en) | 2009-04-28 | 2017-07-25 | Visa International Service Association | Verification of portable consumer devices |
US10846683B2 (en) | 2009-05-15 | 2020-11-24 | Visa International Service Association | Integration of verification tokens with mobile communication devices |
US9038886B2 (en) | 2009-05-15 | 2015-05-26 | Visa International Service Association | Verification of portable consumer devices |
US7891560B2 (en) * | 2009-05-15 | 2011-02-22 | Visa International Service Assocation | Verification of portable consumer devices |
US8893967B2 (en) | 2009-05-15 | 2014-11-25 | Visa International Service Association | Secure Communication of payment information to merchants using a verification token |
US8602293B2 (en) | 2009-05-15 | 2013-12-10 | Visa International Service Association | Integration of verification tokens with portable computing devices |
US9105027B2 (en) | 2009-05-15 | 2015-08-11 | Visa International Service Association | Verification of portable consumer device for secure services |
US8534564B2 (en) | 2009-05-15 | 2013-09-17 | Ayman Hammad | Integration of verification tokens with mobile communication devices |
US10140598B2 (en) | 2009-05-20 | 2018-11-27 | Visa International Service Association | Device including encrypted data for expiration date and verification value creation |
US8923293B2 (en) | 2009-10-21 | 2014-12-30 | Palo Alto Research Center Incorporated | Adaptive multi-interface use for content networking |
US10255591B2 (en) | 2009-12-18 | 2019-04-09 | Visa International Service Association | Payment channel returning limited use proxy dynamic value |
WO2011088109A2 (en) | 2010-01-12 | 2011-07-21 | Visa International Service Association | Anytime validation for verification tokens |
US10255601B2 (en) | 2010-02-25 | 2019-04-09 | Visa International Service Association | Multifactor authentication using a directory server |
US9245267B2 (en) | 2010-03-03 | 2016-01-26 | Visa International Service Association | Portable account number for consumer payment account |
US9342832B2 (en) | 2010-08-12 | 2016-05-17 | Visa International Service Association | Securing external systems with account token substitution |
US10586227B2 (en) | 2011-02-16 | 2020-03-10 | Visa International Service Association | Snap mobile payment apparatuses, methods and systems |
WO2012112822A2 (en) | 2011-02-16 | 2012-08-23 | Visa International Service Association | Snap mobile payment apparatuses, methods and systems |
SG193510A1 (en) | 2011-02-22 | 2013-10-30 | Visa Int Service Ass | Universal electronic payment apparatuses, methods and systems |
WO2012122049A2 (en) | 2011-03-04 | 2012-09-13 | Visa International Service Association | Integration of payment capability into secure elements of computers |
US9280765B2 (en) | 2011-04-11 | 2016-03-08 | Visa International Service Association | Multiple tokenization for authentication |
US9582598B2 (en) | 2011-07-05 | 2017-02-28 | Visa International Service Association | Hybrid applications utilizing distributed models and views apparatuses, methods and systems |
US9355393B2 (en) | 2011-08-18 | 2016-05-31 | Visa International Service Association | Multi-directional wallet connector apparatuses, methods and systems |
WO2013006725A2 (en) | 2011-07-05 | 2013-01-10 | Visa International Service Association | Electronic wallet checkout platform apparatuses, methods and systems |
WO2013019567A2 (en) | 2011-07-29 | 2013-02-07 | Visa International Service Association | Passing payment tokens through an hop/sop |
US10242358B2 (en) | 2011-08-18 | 2019-03-26 | Visa International Service Association | Remote decoupled application persistent state apparatuses, methods and systems |
US10825001B2 (en) | 2011-08-18 | 2020-11-03 | Visa International Service Association | Multi-directional wallet connector apparatuses, methods and systems |
US9710807B2 (en) | 2011-08-18 | 2017-07-18 | Visa International Service Association | Third-party value added wallet features and interfaces apparatuses, methods and systems |
WO2013029014A2 (en) | 2011-08-24 | 2013-02-28 | Visa International Service Association | Method for using barcodes and mobile devices to conduct payment transactions |
US10223730B2 (en) | 2011-09-23 | 2019-03-05 | Visa International Service Association | E-wallet store injection search apparatuses, methods and systems |
CN104094302B (zh) | 2012-01-05 | 2018-12-14 | 维萨国际服务协会 | 用转换进行数据保护 |
US10223710B2 (en) | 2013-01-04 | 2019-03-05 | Visa International Service Association | Wearable intelligent vision device apparatuses, methods and systems |
WO2013113004A1 (en) | 2012-01-26 | 2013-08-01 | Visa International Service Association | System and method of providing tokenization as a service |
AU2013214801B2 (en) | 2012-02-02 | 2018-06-21 | Visa International Service Association | Multi-source, multi-dimensional, cross-entity, multimedia database platform apparatuses, methods and systems |
US10282724B2 (en) | 2012-03-06 | 2019-05-07 | Visa International Service Association | Security system incorporating mobile device |
US20130297501A1 (en) | 2012-05-04 | 2013-11-07 | Justin Monk | System and method for local data conversion |
US9524501B2 (en) | 2012-06-06 | 2016-12-20 | Visa International Service Association | Method and system for correlating diverse transaction data |
WO2014008403A1 (en) | 2012-07-03 | 2014-01-09 | Visa International Service Association | Data protection hub |
US9846861B2 (en) | 2012-07-25 | 2017-12-19 | Visa International Service Association | Upstream and downstream data conversion |
US9256871B2 (en) | 2012-07-26 | 2016-02-09 | Visa U.S.A. Inc. | Configurable payment tokens |
US9665722B2 (en) | 2012-08-10 | 2017-05-30 | Visa International Service Association | Privacy firewall |
US10192216B2 (en) | 2012-09-11 | 2019-01-29 | Visa International Service Association | Cloud-based virtual wallet NFC apparatuses, methods and systems |
US10176478B2 (en) | 2012-10-23 | 2019-01-08 | Visa International Service Association | Transaction initiation determination system utilizing transaction data elements |
US9911118B2 (en) * | 2012-11-21 | 2018-03-06 | Visa International Service Association | Device pairing via trusted intermediary |
WO2014087381A1 (en) | 2012-12-07 | 2014-06-12 | Visa International Service Association | A token generating component |
BR112015013079A2 (pt) * | 2012-12-07 | 2017-07-11 | Microsec Szamitastechnikai Fejlesztoe Zrt | método e sistema para autenticação de usuário utilizando um dispositivo móvel e por meio de certificados |
CN103049320B (zh) | 2012-12-17 | 2016-05-04 | 广州市动景计算机科技有限公司 | 在浏览器中启动外部应用程序的方法和装置 |
US10740731B2 (en) | 2013-01-02 | 2020-08-11 | Visa International Service Association | Third party settlement |
US9741051B2 (en) | 2013-01-02 | 2017-08-22 | Visa International Service Association | Tokenization and third-party interaction |
US9130929B2 (en) * | 2013-03-15 | 2015-09-08 | Aol Inc. | Systems and methods for using imaging to authenticate online users |
US11055710B2 (en) | 2013-05-02 | 2021-07-06 | Visa International Service Association | Systems and methods for verifying and processing transactions using virtual currency |
SG11201509386UA (en) | 2013-05-15 | 2015-12-30 | Visa Int Service Ass | Mobile tokenization hub |
US10878422B2 (en) | 2013-06-17 | 2020-12-29 | Visa International Service Association | System and method using merchant token |
JP6371390B2 (ja) | 2013-07-15 | 2018-08-08 | ビザ インターナショナル サービス アソシエーション | セキュアな遠隔決済取引処理 |
US20150032625A1 (en) | 2013-07-24 | 2015-01-29 | Matthew Dill | Systems and methods for communicating risk using token assurance data |
CN115907763A (zh) | 2013-07-26 | 2023-04-04 | 维萨国际服务协会 | 向消费者提供支付凭证 |
US11605070B2 (en) | 2013-07-29 | 2023-03-14 | The Toronto-Dominion Bank | Cloud-based electronic payment processing |
AU2014306259A1 (en) | 2013-08-08 | 2016-02-25 | Visa International Service Association | Methods and systems for provisioning mobile devices with payment credentials |
US10496986B2 (en) | 2013-08-08 | 2019-12-03 | Visa International Service Association | Multi-network tokenization processing |
EP3843023A1 (en) | 2013-08-15 | 2021-06-30 | Visa International Service Association | Secure remote payment transaction processing using a secure element |
US9100175B2 (en) | 2013-11-19 | 2015-08-04 | M2M And Iot Technologies, Llc | Embedded universal integrated circuit card supporting two-factor authentication |
US9350550B2 (en) | 2013-09-10 | 2016-05-24 | M2M And Iot Technologies, Llc | Power management and security for wireless modules in “machine-to-machine” communications |
CN115358746A (zh) | 2013-09-20 | 2022-11-18 | 维萨国际服务协会 | 包括消费者认证的安全远程支付交易处理 |
US10498530B2 (en) | 2013-09-27 | 2019-12-03 | Network-1 Technologies, Inc. | Secure PKI communications for “machine-to-machine” modules, including key derivation by modules and authenticating public keys |
CA2927052C (en) | 2013-10-11 | 2021-09-21 | Visa International Service Association | Network token system |
US9978094B2 (en) | 2013-10-11 | 2018-05-22 | Visa International Service Association | Tokenization revocation list |
US10515358B2 (en) | 2013-10-18 | 2019-12-24 | Visa International Service Association | Contextual transaction token methods and systems |
US10489779B2 (en) | 2013-10-21 | 2019-11-26 | Visa International Service Association | Multi-network token bin routing with defined verification parameters |
US10491587B2 (en) * | 2013-10-28 | 2019-11-26 | Singou Technology Ltd. | Method and device for information system access authentication |
US10366387B2 (en) | 2013-10-29 | 2019-07-30 | Visa International Service Association | Digital wallet system and method |
US10700856B2 (en) | 2013-11-19 | 2020-06-30 | Network-1 Technologies, Inc. | Key derivation for a module using an embedded universal integrated circuit card |
AU2014353151B2 (en) | 2013-11-19 | 2018-03-08 | Visa International Service Association | Automated account provisioning |
US10325282B2 (en) * | 2013-11-27 | 2019-06-18 | At&T Intellectual Property I, L.P. | Dynamic machine-readable codes |
IN2013MU03727A (es) * | 2013-11-27 | 2015-07-31 | Tata Consultancy Services Ltd | |
KR101444305B1 (ko) * | 2013-12-13 | 2014-09-26 | (주)세이퍼존 | 다중 otp를 사용한 보안키, 보안 서비스 장치 및 보안 시스템 |
US9473491B1 (en) | 2014-12-16 | 2016-10-18 | Amazon Technologies, Inc. | Computing device with integrated authentication token |
US10362026B2 (en) | 2013-12-16 | 2019-07-23 | Amazon Technologies, Inc. | Providing multi-factor authentication credentials via device notifications |
US10841297B2 (en) | 2013-12-16 | 2020-11-17 | Amazon Technologies, Inc. | Providing multi-factor authentication credentials via device notifications |
US10866711B1 (en) | 2013-12-16 | 2020-12-15 | Amazon Technologies, Inc. | Providing account information to applications |
US9922322B2 (en) | 2013-12-19 | 2018-03-20 | Visa International Service Association | Cloud-based transactions with magnetic secure transmission |
RU2019111186A (ru) | 2013-12-19 | 2019-05-07 | Виза Интернэшнл Сервис Ассосиэйшн | Способы и системы облачных транзакций |
FR3015824A1 (fr) * | 2013-12-23 | 2015-06-26 | Orange | Obtention de donnees de connexion a un equipement via un reseau |
JP2017507549A (ja) * | 2013-12-30 | 2017-03-16 | バスコ データ セキュリティー インターナショナル ゲゼルシャフト ミット ベシュレンクテル ハフツング | ブルートゥースインタフェースを備える認証装置 |
US10433128B2 (en) | 2014-01-07 | 2019-10-01 | Visa International Service Association | Methods and systems for provisioning multiple devices |
US9846878B2 (en) | 2014-01-14 | 2017-12-19 | Visa International Service Association | Payment account identifier system |
US10098051B2 (en) | 2014-01-22 | 2018-10-09 | Cisco Technology, Inc. | Gateways and routing in software-defined manets |
US9954678B2 (en) | 2014-02-06 | 2018-04-24 | Cisco Technology, Inc. | Content-based transport security |
US9531679B2 (en) * | 2014-02-06 | 2016-12-27 | Palo Alto Research Center Incorporated | Content-based transport security for distributed producers |
US9836540B2 (en) | 2014-03-04 | 2017-12-05 | Cisco Technology, Inc. | System and method for direct storage access in a content-centric network |
US9626413B2 (en) | 2014-03-10 | 2017-04-18 | Cisco Systems, Inc. | System and method for ranking content popularity in a content-centric network |
JP6331528B2 (ja) * | 2014-03-17 | 2018-05-30 | 株式会社リコー | 認証システムおよび認証方法 |
US9716622B2 (en) | 2014-04-01 | 2017-07-25 | Cisco Technology, Inc. | System and method for dynamic name configuration in content-centric networks |
US9473576B2 (en) | 2014-04-07 | 2016-10-18 | Palo Alto Research Center Incorporated | Service discovery using collection synchronization with exact names |
US10026087B2 (en) | 2014-04-08 | 2018-07-17 | Visa International Service Association | Data passed in an interaction |
EP3130130A4 (en) * | 2014-04-11 | 2017-07-26 | Diro, Inc. | Dynamic contextual device networks |
US9860241B2 (en) | 2014-04-15 | 2018-01-02 | Level 3 Communications, Llc | Device registration, authentication, and authorization system and method |
US9942043B2 (en) | 2014-04-23 | 2018-04-10 | Visa International Service Association | Token security on a communication device |
US9992281B2 (en) | 2014-05-01 | 2018-06-05 | Cisco Technology, Inc. | Accountable content stores for information centric networks |
CA2946150A1 (en) | 2014-05-01 | 2015-11-05 | Visa International Service Association | Data verification using access device |
SG10202007850WA (en) | 2014-05-05 | 2020-09-29 | Visa Int Service Ass | System and method for token domain control |
GB2525930B (en) | 2014-05-09 | 2018-08-22 | Smartglyph Ltd | Method of authentication |
EP3146747B1 (en) | 2014-05-21 | 2020-07-01 | Visa International Service Association | Offline authentication |
US9609014B2 (en) | 2014-05-22 | 2017-03-28 | Cisco Systems, Inc. | Method and apparatus for preventing insertion of malicious content at a named data network router |
CN104378344B (zh) * | 2014-05-26 | 2016-03-09 | 腾讯科技(深圳)有限公司 | 登录信息传输方法、扫码方法及装置、后台服务器 |
MX361983B (es) | 2014-06-02 | 2018-12-19 | Schlage Lock Co Llc | Sistema de gestión de credenciales electrónicas. |
US11023890B2 (en) | 2014-06-05 | 2021-06-01 | Visa International Service Association | Identification and verification for provisioning mobile application |
CN104065652B (zh) * | 2014-06-09 | 2015-10-14 | 北京石盾科技有限公司 | 一种身份验证方法、装置、系统及相关设备 |
US9699198B2 (en) | 2014-07-07 | 2017-07-04 | Cisco Technology, Inc. | System and method for parallel secure content bootstrapping in content-centric networks |
US9621354B2 (en) | 2014-07-17 | 2017-04-11 | Cisco Systems, Inc. | Reconstructable content objects |
US9729616B2 (en) | 2014-07-18 | 2017-08-08 | Cisco Technology, Inc. | Reputation-based strategy for forwarding and responding to interests over a content centric network |
US9590887B2 (en) | 2014-07-18 | 2017-03-07 | Cisco Systems, Inc. | Method and system for keeping interest alive in a content centric network |
US9780953B2 (en) | 2014-07-23 | 2017-10-03 | Visa International Service Association | Systems and methods for secure detokenization |
US10484345B2 (en) | 2014-07-31 | 2019-11-19 | Visa International Service Association | System and method for identity verification across mobile applications |
US9430630B2 (en) * | 2014-07-31 | 2016-08-30 | Textpower, Inc. | Credential-free identification and authentication |
US9882964B2 (en) | 2014-08-08 | 2018-01-30 | Cisco Technology, Inc. | Explicit strategy feedback in name-based forwarding |
US9729662B2 (en) | 2014-08-11 | 2017-08-08 | Cisco Technology, Inc. | Probabilistic lazy-forwarding technique without validation in a content centric network |
US9800637B2 (en) | 2014-08-19 | 2017-10-24 | Cisco Technology, Inc. | System and method for all-in-one content stream in content-centric networks |
US9775029B2 (en) | 2014-08-22 | 2017-09-26 | Visa International Service Association | Embedding cloud-based functionalities in a communication device |
CN104158816A (zh) * | 2014-08-25 | 2014-11-19 | 中国科学院声学研究所 | 认证方法、装置和服务器 |
CN105488869A (zh) * | 2014-09-16 | 2016-04-13 | 深圳富泰宏精密工业有限公司 | 密码锁开锁系统及方法 |
US10140615B2 (en) | 2014-09-22 | 2018-11-27 | Visa International Service Association | Secure mobile device credential provisioning using risk decision non-overrides |
US9805182B1 (en) * | 2014-09-26 | 2017-10-31 | EMC IP Holding Company LLC | Authentication using a client device and a mobile device |
CA2960319A1 (en) | 2014-09-26 | 2016-03-31 | Visa International Service Association | Remote server encrypted data provisioning system and methods |
US11257074B2 (en) | 2014-09-29 | 2022-02-22 | Visa International Service Association | Transaction risk based token |
WO2016064930A1 (en) | 2014-10-21 | 2016-04-28 | Proofpoint, Inc. | Systems and methods for application security analysis |
US10015147B2 (en) | 2014-10-22 | 2018-07-03 | Visa International Service Association | Token enrollment system and method |
US10069933B2 (en) | 2014-10-23 | 2018-09-04 | Cisco Technology, Inc. | System and method for creating virtual interfaces based on network characteristics |
GB201419016D0 (en) | 2014-10-24 | 2014-12-10 | Visa Europe Ltd | Transaction Messaging |
US9838391B2 (en) | 2014-10-31 | 2017-12-05 | Proofpoint, Inc. | Systems and methods for privately performing application security analysis |
EP3213459B1 (en) * | 2014-10-31 | 2020-05-20 | OneSpan International GmbH | A multi-user strong authentication token |
US10325261B2 (en) | 2014-11-25 | 2019-06-18 | Visa International Service Association | Systems communications with non-sensitive identifiers |
EP3224784A4 (en) | 2014-11-26 | 2017-11-08 | Visa International Service Association | Tokenization request via access device |
CN113114743B (zh) * | 2014-12-08 | 2023-06-02 | 创新先进技术有限公司 | 一种显示访问内容的方法及服务器 |
GB2533095A (en) | 2014-12-08 | 2016-06-15 | Cryptomathic Ltd | System and method |
US10257185B2 (en) | 2014-12-12 | 2019-04-09 | Visa International Service Association | Automated access data provisioning |
EP3231157B1 (en) | 2014-12-12 | 2020-05-20 | Visa International Service Association | Provisioning platform for machine-to-machine devices |
US9590948B2 (en) | 2014-12-15 | 2017-03-07 | Cisco Systems, Inc. | CCN routing using hardware-assisted hash tables |
US10237189B2 (en) | 2014-12-16 | 2019-03-19 | Cisco Technology, Inc. | System and method for distance-based interest forwarding |
US10003520B2 (en) | 2014-12-22 | 2018-06-19 | Cisco Technology, Inc. | System and method for efficient name-based content routing using link-state information in information-centric networks |
US9660825B2 (en) | 2014-12-24 | 2017-05-23 | Cisco Technology, Inc. | System and method for multi-source multicasting in content-centric networks |
CN104579681B (zh) * | 2014-12-29 | 2018-04-20 | 华中师范大学 | 互信应用系统间身份认证系统 |
CN104539430B (zh) * | 2014-12-30 | 2018-11-30 | 飞天诚信科技股份有限公司 | 一种基于卡片的动态口令生成方法及设备 |
US10187363B2 (en) | 2014-12-31 | 2019-01-22 | Visa International Service Association | Hybrid integration of software development kit with secure execution environment |
US11615199B1 (en) * | 2014-12-31 | 2023-03-28 | Idemia Identity & Security USA LLC | User authentication for digital identifications |
US9832291B2 (en) | 2015-01-12 | 2017-11-28 | Cisco Technology, Inc. | Auto-configurable transport stack |
US9916457B2 (en) | 2015-01-12 | 2018-03-13 | Cisco Technology, Inc. | Decoupled name security binding for CCN objects |
US9946743B2 (en) | 2015-01-12 | 2018-04-17 | Cisco Technology, Inc. | Order encoded manifests in a content centric network |
US9954795B2 (en) | 2015-01-12 | 2018-04-24 | Cisco Technology, Inc. | Resource allocation using CCN manifests |
US10096009B2 (en) | 2015-01-20 | 2018-10-09 | Visa International Service Association | Secure payment processing using authorization request |
JP6403583B2 (ja) * | 2015-01-21 | 2018-10-10 | キヤノン株式会社 | アップデートされたアプリケーションを配信する配信管理サーバーおよび配信管理方法 |
US9853977B1 (en) | 2015-01-26 | 2017-12-26 | Winklevoss Ip, Llc | System, method, and program product for processing secure transactions within a cloud computing system |
US11250391B2 (en) | 2015-01-30 | 2022-02-15 | Visa International Service Association | Token check offline |
WO2016126729A1 (en) | 2015-02-03 | 2016-08-11 | Visa International Service Association | Validation identity tokens for transactions |
US10333840B2 (en) | 2015-02-06 | 2019-06-25 | Cisco Technology, Inc. | System and method for on-demand content exchange with adaptive naming in information-centric networks |
US10977657B2 (en) | 2015-02-09 | 2021-04-13 | Visa International Service Association | Token processing utilizing multiple authorizations |
KR101652625B1 (ko) * | 2015-02-11 | 2016-08-30 | 주식회사 이베이코리아 | 온라인 웹사이트의 회원 로그인을 위한 보안인증 시스템 및 그 방법 |
US11526885B2 (en) | 2015-03-04 | 2022-12-13 | Trusona, Inc. | Systems and methods for user identification using graphical barcode and payment card authentication read data |
US10164996B2 (en) | 2015-03-12 | 2018-12-25 | Visa International Service Association | Methods and systems for providing a low value token buffer |
US10075401B2 (en) | 2015-03-18 | 2018-09-11 | Cisco Technology, Inc. | Pending interest table behavior |
US10333921B2 (en) | 2015-04-10 | 2019-06-25 | Visa International Service Association | Browser integration with Cryptogram |
US9998978B2 (en) | 2015-04-16 | 2018-06-12 | Visa International Service Association | Systems and methods for processing dormant virtual access devices |
US10552834B2 (en) | 2015-04-30 | 2020-02-04 | Visa International Service Association | Tokenization capable authentication framework |
US9781090B2 (en) * | 2015-05-11 | 2017-10-03 | Citrix Systems, Inc. | Enterprise computing environment with continuous user authentication |
EP3407565B1 (en) * | 2015-06-24 | 2019-12-18 | Accenture Global Services Limited | Device authentication |
US10075402B2 (en) | 2015-06-24 | 2018-09-11 | Cisco Technology, Inc. | Flexible command and control in content centric networks |
CZ2015474A3 (cs) * | 2015-07-07 | 2017-02-08 | Aducid S.R.O. | Způsob autentizace komunikace autentizačního zařízení a alespoň jednoho autentizačního serveru pomocí lokálního faktoru |
CN106341372A (zh) * | 2015-07-08 | 2017-01-18 | 阿里巴巴集团控股有限公司 | 终端的认证处理、认证方法及装置、系统 |
JP2017027207A (ja) * | 2015-07-17 | 2017-02-02 | ソフトバンク株式会社 | 認証システム |
US10097546B2 (en) * | 2015-07-22 | 2018-10-09 | Verizon Patent And Licensing Inc. | Authentication of a user device using traffic flow information |
US10701038B2 (en) | 2015-07-27 | 2020-06-30 | Cisco Technology, Inc. | Content negotiation in a content centric network |
CN113973004B (zh) * | 2015-07-27 | 2022-08-09 | 亚马逊科技公司 | 经由设备通知提供多因素认证凭证 |
US9864852B2 (en) | 2015-07-27 | 2018-01-09 | Amazon Technologies, Inc. | Approaches for providing multi-factor authentication credentials |
US9986034B2 (en) | 2015-08-03 | 2018-05-29 | Cisco Technology, Inc. | Transferring state in content centric network stacks |
CN105162774B (zh) * | 2015-08-05 | 2018-08-24 | 深圳市方迪融信科技有限公司 | 虚拟机登录方法、用于终端的虚拟机登录方法及装置 |
CN106487774B (zh) | 2015-09-01 | 2019-06-25 | 阿里巴巴集团控股有限公司 | 一种云主机服务权限控制方法、装置和系统 |
US9832123B2 (en) | 2015-09-11 | 2017-11-28 | Cisco Technology, Inc. | Network named fragments in a content centric network |
CN105281913B (zh) * | 2015-09-17 | 2019-01-15 | 杭州猿人数据科技有限公司 | 用于电子签名的电子证据处理方法、系统及动态码服务系统 |
WO2017053394A1 (en) * | 2015-09-21 | 2017-03-30 | Vasco Data Security, Inc. | A multi-user strong authentication token |
US10355999B2 (en) | 2015-09-23 | 2019-07-16 | Cisco Technology, Inc. | Flow control with network named fragments |
US10313227B2 (en) | 2015-09-24 | 2019-06-04 | Cisco Technology, Inc. | System and method for eliminating undetected interest looping in information-centric networks |
US9977809B2 (en) | 2015-09-24 | 2018-05-22 | Cisco Technology, Inc. | Information and data framework in a content centric network |
US10454820B2 (en) | 2015-09-29 | 2019-10-22 | Cisco Technology, Inc. | System and method for stateless information-centric networking |
US11068889B2 (en) | 2015-10-15 | 2021-07-20 | Visa International Service Association | Instant token issuance |
US10263965B2 (en) | 2015-10-16 | 2019-04-16 | Cisco Technology, Inc. | Encrypted CCNx |
US9794238B2 (en) | 2015-10-29 | 2017-10-17 | Cisco Technology, Inc. | System for key exchange in a content centric network |
US9807205B2 (en) | 2015-11-02 | 2017-10-31 | Cisco Technology, Inc. | Header compression for CCN messages using dictionary |
US20170148009A1 (en) * | 2015-11-20 | 2017-05-25 | Afirma Consulting & Technologies, S.L. | Dynamic multilayer security for internet mobile-related transactions |
US9912776B2 (en) | 2015-12-02 | 2018-03-06 | Cisco Technology, Inc. | Explicit content deletion commands in a content centric network |
CN113542293B (zh) | 2015-12-04 | 2023-11-07 | 维萨国际服务协会 | 用于令牌验证的方法及计算机 |
US10097346B2 (en) | 2015-12-09 | 2018-10-09 | Cisco Technology, Inc. | Key catalogs in a content centric network |
US10078062B2 (en) | 2015-12-15 | 2018-09-18 | Palo Alto Research Center Incorporated | Device health estimation by combining contextual information with sensor data |
KR101772553B1 (ko) * | 2015-12-29 | 2017-08-30 | 주식회사 코인플러그 | 파일에 대한 공증 및 검증을 수행하는 방법 및 서버 |
JP6927981B2 (ja) * | 2015-12-30 | 2021-09-01 | ワンスパン インターナショナル ゲゼルシャフト ミット ベシュレンクテル ハフツング | パスコード検証のためのフォワードセキュア型暗号技術を使用した方法、システム、及び装置。 |
SG11201805266YA (en) | 2016-01-07 | 2018-07-30 | Visa Int Service Ass | Systems and methods for device push provisioning |
US10257271B2 (en) | 2016-01-11 | 2019-04-09 | Cisco Technology, Inc. | Chandra-Toueg consensus in a content centric network |
US9949301B2 (en) | 2016-01-20 | 2018-04-17 | Palo Alto Research Center Incorporated | Methods for fast, secure and privacy-friendly internet connection discovery in wireless networks |
US10305864B2 (en) | 2016-01-25 | 2019-05-28 | Cisco Technology, Inc. | Method and system for interest encryption in a content centric network |
US11080696B2 (en) | 2016-02-01 | 2021-08-03 | Visa International Service Association | Systems and methods for code display and use |
US11501288B2 (en) | 2016-02-09 | 2022-11-15 | Visa International Service Association | Resource provider account token provisioning and processing |
GB2547472A (en) * | 2016-02-19 | 2017-08-23 | Intercede Ltd | Method and system for authentication |
US10043016B2 (en) | 2016-02-29 | 2018-08-07 | Cisco Technology, Inc. | Method and system for name encryption agreement in a content centric network |
US10003507B2 (en) | 2016-03-04 | 2018-06-19 | Cisco Technology, Inc. | Transport session state protocol |
US10742596B2 (en) | 2016-03-04 | 2020-08-11 | Cisco Technology, Inc. | Method and system for reducing a collision probability of hash-based names using a publisher identifier |
US10038633B2 (en) | 2016-03-04 | 2018-07-31 | Cisco Technology, Inc. | Protocol to query for historical network information in a content centric network |
US10051071B2 (en) | 2016-03-04 | 2018-08-14 | Cisco Technology, Inc. | Method and system for collecting historical network information in a content centric network |
US9832116B2 (en) | 2016-03-14 | 2017-11-28 | Cisco Technology, Inc. | Adjusting entries in a forwarding information base in a content centric network |
US10212196B2 (en) | 2016-03-16 | 2019-02-19 | Cisco Technology, Inc. | Interface discovery and authentication in a name-based network |
US11436656B2 (en) | 2016-03-18 | 2022-09-06 | Palo Alto Research Center Incorporated | System and method for a real-time egocentric collaborative filter on large datasets |
MA45323A (fr) * | 2016-03-18 | 2019-01-23 | Forticode Ltd | Procédé et système d'authentification d'utilisateur à sécurité améliorée |
US10067948B2 (en) | 2016-03-18 | 2018-09-04 | Cisco Technology, Inc. | Data deduping in content centric networking manifests |
US10091330B2 (en) | 2016-03-23 | 2018-10-02 | Cisco Technology, Inc. | Interest scheduling by an information and data framework in a content centric network |
US10033639B2 (en) | 2016-03-25 | 2018-07-24 | Cisco Technology, Inc. | System and method for routing packets in a content centric network using anonymous datagrams |
US10050963B2 (en) | 2016-03-29 | 2018-08-14 | Microsoft Technology Licensing, Llc | Securing remote authentication |
WO2017172940A1 (en) * | 2016-03-29 | 2017-10-05 | Trusona, Inc. | Systems and methods for user identification using graphical barcode and payment card authentication read data |
CN107294721B (zh) * | 2016-03-30 | 2019-06-18 | 阿里巴巴集团控股有限公司 | 基于生物特征的身份注册、认证的方法和装置 |
US10320760B2 (en) | 2016-04-01 | 2019-06-11 | Cisco Technology, Inc. | Method and system for mutating and caching content in a content centric network |
US9930146B2 (en) | 2016-04-04 | 2018-03-27 | Cisco Technology, Inc. | System and method for compressing content centric networking messages |
US10091007B2 (en) * | 2016-04-04 | 2018-10-02 | Mastercard International Incorporated | Systems and methods for device to device authentication |
US10425503B2 (en) | 2016-04-07 | 2019-09-24 | Cisco Technology, Inc. | Shared pending interest table in a content centric network |
US10313321B2 (en) | 2016-04-07 | 2019-06-04 | Visa International Service Association | Tokenization of co-network accounts |
US10027578B2 (en) | 2016-04-11 | 2018-07-17 | Cisco Technology, Inc. | Method and system for routable prefix queries in a content centric network |
WO2017184121A1 (en) | 2016-04-19 | 2017-10-26 | Visa International Service Association | Systems and methods for performing push transactions |
US10404450B2 (en) | 2016-05-02 | 2019-09-03 | Cisco Technology, Inc. | Schematized access control in a content centric network |
US10320675B2 (en) | 2016-05-04 | 2019-06-11 | Cisco Technology, Inc. | System and method for routing packets in a stateless content centric network |
US10547589B2 (en) | 2016-05-09 | 2020-01-28 | Cisco Technology, Inc. | System for implementing a small computer systems interface protocol over a content centric network |
US10063414B2 (en) | 2016-05-13 | 2018-08-28 | Cisco Technology, Inc. | Updating a transport stack in a content centric network |
US10084764B2 (en) | 2016-05-13 | 2018-09-25 | Cisco Technology, Inc. | System for a secure encryption proxy in a content centric network |
US11250424B2 (en) | 2016-05-19 | 2022-02-15 | Visa International Service Association | Systems and methods for creating subtokens using primary tokens |
EP3466017B1 (en) | 2016-06-03 | 2021-05-19 | Visa International Service Association | Subtoken management system for connected devices |
US10103989B2 (en) | 2016-06-13 | 2018-10-16 | Cisco Technology, Inc. | Content object return messages in a content centric network |
US11068899B2 (en) | 2016-06-17 | 2021-07-20 | Visa International Service Association | Token aggregation for multi-party transactions |
FR3052894A1 (fr) * | 2016-06-20 | 2017-12-22 | Orange | Procede d'authentification |
US10305865B2 (en) | 2016-06-21 | 2019-05-28 | Cisco Technology, Inc. | Permutation-based content encryption with manifests in a content centric network |
US10361856B2 (en) | 2016-06-24 | 2019-07-23 | Visa International Service Association | Unique token authentication cryptogram |
US10148572B2 (en) | 2016-06-27 | 2018-12-04 | Cisco Technology, Inc. | Method and system for interest groups in a content centric network |
WO2018004679A1 (en) * | 2016-07-01 | 2018-01-04 | American Express Travel Related Services Company, Inc. | Systems and methods for validating transmissions over communication channels |
US10009266B2 (en) | 2016-07-05 | 2018-06-26 | Cisco Technology, Inc. | Method and system for reference counted pending interest tables in a content centric network |
US9992097B2 (en) | 2016-07-11 | 2018-06-05 | Cisco Technology, Inc. | System and method for piggybacking routing information in interests in a content centric network |
WO2018013431A2 (en) | 2016-07-11 | 2018-01-18 | Visa International Service Association | Encryption key exchange process using access device |
CN109478287B (zh) | 2016-07-19 | 2023-08-15 | 维萨国际服务协会 | 分发令牌和管理令牌关系的方法 |
US10122624B2 (en) | 2016-07-25 | 2018-11-06 | Cisco Technology, Inc. | System and method for ephemeral entries in a forwarding information base in a content centric network |
DK3279848T3 (da) * | 2016-08-02 | 2022-04-04 | Idemia France | Dynamisk sikkerhedskode til en korttransaktion |
DK3279849T3 (da) * | 2016-08-02 | 2022-04-11 | Idemia France | Dynamisk sikkerhedskode til en korttransaktion |
US10069729B2 (en) | 2016-08-08 | 2018-09-04 | Cisco Technology, Inc. | System and method for throttling traffic based on a forwarding information base in a content centric network |
US10956412B2 (en) | 2016-08-09 | 2021-03-23 | Cisco Technology, Inc. | Method and system for conjunctive normal form attribute matching in a content centric network |
AU2017316312B2 (en) | 2016-08-23 | 2022-01-20 | Visa International Service Association | Remote usage of locally stored biometric authentication data |
US10509779B2 (en) | 2016-09-14 | 2019-12-17 | Visa International Service Association | Self-cleaning token vault |
US10033642B2 (en) | 2016-09-19 | 2018-07-24 | Cisco Technology, Inc. | System and method for making optimal routing decisions based on device-specific parameters in a content centric network |
JP6693368B2 (ja) * | 2016-09-21 | 2020-05-13 | 株式会社オートネットワーク技術研究所 | 通信システム、中継装置及び通信方法 |
US11030618B1 (en) * | 2016-09-30 | 2021-06-08 | Winkk, Inc. | Authentication and personal data sharing for partner services using out-of-band optical mark recognition |
US10212248B2 (en) | 2016-10-03 | 2019-02-19 | Cisco Technology, Inc. | Cache management on high availability routers in a content centric network |
US10447805B2 (en) | 2016-10-10 | 2019-10-15 | Cisco Technology, Inc. | Distributed consensus in a content centric network |
US11159416B1 (en) | 2016-10-18 | 2021-10-26 | Headspin, Inc. | Systems and methods of testing virtual private network communications using remote connectivity |
US11625506B1 (en) | 2016-10-18 | 2023-04-11 | Headspin, Inc. | Secure enclosure for devices used to test remote connectivity |
US10135948B2 (en) | 2016-10-31 | 2018-11-20 | Cisco Technology, Inc. | System and method for process migration in a content centric network |
US10243851B2 (en) | 2016-11-21 | 2019-03-26 | Cisco Technology, Inc. | System and method for forwarder connection information in a content centric network |
CN110036386B (zh) | 2016-11-28 | 2023-08-22 | 维萨国际服务协会 | 供应到应用程序的访问标识符 |
JP7051859B2 (ja) | 2016-12-12 | 2022-04-11 | トゥルソナ,インコーポレイテッド | 光検出を用いたネットワーク対応アカウント作成のための方法及びシステム |
WO2018117970A1 (en) * | 2016-12-21 | 2018-06-28 | Aon Global Operations Ltd (Singapore Branch) | Methods and systems for securely embedding dashboards into a content management system |
US10915899B2 (en) | 2017-03-17 | 2021-02-09 | Visa International Service Association | Replacing token on a multi-token user device |
US11372744B1 (en) * | 2017-03-31 | 2022-06-28 | Headspin, Inc. | System for identifying issues during testing of applications |
US10116635B1 (en) * | 2017-04-27 | 2018-10-30 | Otis Elevator Company | Mobile-based equipment service system using encrypted code offloading |
US10902418B2 (en) | 2017-05-02 | 2021-01-26 | Visa International Service Association | System and method using interaction token |
US20180322273A1 (en) * | 2017-05-04 | 2018-11-08 | GM Global Technology Operations LLC | Method and apparatus for limited starting authorization |
US11494765B2 (en) | 2017-05-11 | 2022-11-08 | Visa International Service Association | Secure remote transaction system using mobile devices |
US11716331B2 (en) * | 2017-07-14 | 2023-08-01 | Offpad As | Authentication method, an authentication device and a system comprising the authentication device |
US10491389B2 (en) | 2017-07-14 | 2019-11-26 | Visa International Service Association | Token provisioning utilizing a secure authentication system |
US10445487B2 (en) * | 2017-07-20 | 2019-10-15 | Singou Technology (Macau) Ltd. | Methods and apparatus for authentication of joint account login |
US11019129B1 (en) | 2017-08-11 | 2021-05-25 | Headspin, Inc. | System for controlling transfer of data to a connected device |
USD942469S1 (en) | 2017-09-30 | 2022-02-01 | Asim Abdullah | Display screen or portion thereof with a graphical user interface |
US11348116B2 (en) * | 2017-11-07 | 2022-05-31 | Mastercard International Incorporated | Systems and methods for enhancing online user authentication using a personal cloud platform |
CN108090181A (zh) * | 2017-12-15 | 2018-05-29 | 深圳忠信信息技术有限公司 | 个人信息推送方法及系统 |
FR3077175A1 (fr) * | 2018-01-19 | 2019-07-26 | Orange | Technique de determination d'une cle destinee a securiser une communication entre un equipement utilisateur et un serveur applicatif |
US11356257B2 (en) | 2018-03-07 | 2022-06-07 | Visa International Service Association | Secure remote token release with online authentication |
US11134071B2 (en) * | 2018-04-23 | 2021-09-28 | Oracle International Corporation | Data exchange during multi factor authentication |
US11093653B2 (en) * | 2018-05-24 | 2021-08-17 | Texas Instruments Incorporated | Secure message routing |
US11256789B2 (en) | 2018-06-18 | 2022-02-22 | Visa International Service Association | Recurring token transactions |
US11637694B2 (en) | 2018-07-16 | 2023-04-25 | Winkk, Inc. | Secret material exchange and authentication cryptography operations |
CN108989441A (zh) * | 2018-07-27 | 2018-12-11 | 京东方科技集团股份有限公司 | 一种信息交互系统及方法 |
CN112740207A (zh) | 2018-08-22 | 2021-04-30 | 维萨国际服务协会 | 用于令牌预配和处理的方法和系统 |
US11206257B1 (en) * | 2018-09-18 | 2021-12-21 | West Corporation | Attendance tracking configuration for a mobile device |
US12028337B2 (en) * | 2018-10-08 | 2024-07-02 | Visa International Service Association | Techniques for token proximity transactions |
EP3881258B1 (en) | 2018-11-14 | 2024-09-04 | Visa International Service Association | Cloud token provisioning of multiple tokens |
CN118300876A (zh) * | 2018-12-12 | 2024-07-05 | 维萨国际服务协会 | 从非接触式装置发起的预配 |
US11019047B2 (en) * | 2019-02-01 | 2021-05-25 | Microsoft Technology Licensing, Llc | Credential loss prevention |
JP2022523959A (ja) * | 2019-03-04 | 2022-04-27 | シール・ネットワーク・ベー・フェー | 電子認証手段を伴うプレイングカード |
CN111726320B (zh) | 2019-03-19 | 2022-08-30 | 阿里巴巴集团控股有限公司 | 数据处理方法、装置及设备 |
SG11202108626QA (en) | 2019-05-17 | 2021-09-29 | Visa Int Service Ass | Virtual access credential interaction system and method |
EP3758322A1 (fr) * | 2019-06-25 | 2020-12-30 | Gemalto Sa | Procédé et système de génération de clés de chiffrement pour données de transaction ou de connexion |
US11347411B2 (en) | 2019-07-17 | 2022-05-31 | Ubs Business Solutions Ag | Secure storing and processing of data |
CN118842592A (zh) * | 2019-09-03 | 2024-10-25 | 谷歌有限责任公司 | 用于安全标识检索的系统和方法 |
KR102196365B1 (ko) * | 2019-10-07 | 2020-12-30 | 주식회사 로그 알앤디 | 모바일 단말기용 개인정보 보안 디바이스 |
US12132763B2 (en) | 2019-12-10 | 2024-10-29 | Winkk, Inc. | Bus for aggregated trust framework |
US11328042B2 (en) | 2019-12-10 | 2022-05-10 | Winkk, Inc. | Automated transparent login without saved credentials or passwords |
US11652815B2 (en) | 2019-12-10 | 2023-05-16 | Winkk, Inc. | Security platform architecture |
US11563582B2 (en) | 2019-12-10 | 2023-01-24 | Winkk, Inc. | Method and apparatus for optical encryption communication using a multitude of hardware configurations |
US11574045B2 (en) | 2019-12-10 | 2023-02-07 | Winkk, Inc. | Automated ID proofing using a random multitude of real-time behavioral biometric samplings |
US11928193B2 (en) | 2019-12-10 | 2024-03-12 | Winkk, Inc. | Multi-factor authentication using behavior and machine learning |
US11553337B2 (en) | 2019-12-10 | 2023-01-10 | Winkk, Inc. | Method and apparatus for encryption key exchange with enhanced security through opti-encryption channel |
US11588794B2 (en) | 2019-12-10 | 2023-02-21 | Winkk, Inc. | Method and apparatus for secure application framework and platform |
US12073378B2 (en) | 2019-12-10 | 2024-08-27 | Winkk, Inc. | Method and apparatus for electronic transactions using personal computing devices and proxy services |
US11657140B2 (en) | 2019-12-10 | 2023-05-23 | Winkk, Inc. | Device handoff identification proofing using behavioral analytics |
US11936787B2 (en) | 2019-12-10 | 2024-03-19 | Winkk, Inc. | User identification proofing using a combination of user responses to system turing tests using biometric methods |
CN111031074B (zh) * | 2020-01-09 | 2022-03-01 | 中国信息通信研究院 | 一种认证方法、服务器和客户端 |
US11438454B2 (en) * | 2020-03-31 | 2022-09-06 | International Business Machines Corporation | Authentication and authorization via vocal track frequency channel |
WO2021205660A1 (ja) * | 2020-04-10 | 2021-10-14 | 日本電気株式会社 | 認証サーバ、認証システム、認証サーバの制御方法及び記憶媒体 |
US11323263B2 (en) * | 2020-05-07 | 2022-05-03 | International Business Machines Corporation | Sharing of secret information for accessing a wireless computing network |
WO2022000048A1 (en) * | 2020-07-03 | 2022-01-06 | Bankvault Pty Ltd | Method and system for verification of identify of a user |
CN113973299B (zh) * | 2020-07-22 | 2023-09-29 | 中国石油化工股份有限公司 | 具有身份认证功能的无线传感器以及身份认证方法 |
US11706621B2 (en) | 2020-08-04 | 2023-07-18 | Seagate Technology Llc | Device registration to management domain |
US11386663B1 (en) | 2020-08-28 | 2022-07-12 | Headspin, Inc. | Reference-free system for determining quality of video data |
US11165586B1 (en) * | 2020-10-30 | 2021-11-02 | Capital One Services, Llc | Call center web-based authentication using a contactless card |
US11611631B2 (en) | 2021-02-18 | 2023-03-21 | Panduit Corp. | Secure remotely controlled system, device, and method |
CN113141351B (zh) * | 2021-03-23 | 2022-09-20 | 重庆扬成大数据科技有限公司 | 政务大数据多部门联合审核认证工作方法 |
US11706224B2 (en) * | 2021-04-14 | 2023-07-18 | Microsoft Technology Licensing, Llc | Entity authentication for pre-authenticated links |
US12095751B2 (en) | 2021-06-04 | 2024-09-17 | Winkk, Inc. | Encryption for one-way data stream |
US11843943B2 (en) | 2021-06-04 | 2023-12-12 | Winkk, Inc. | Dynamic key exchange for moving target |
US11824999B2 (en) | 2021-08-13 | 2023-11-21 | Winkk, Inc. | Chosen-plaintext secure cryptosystem and authentication |
CN113676468B (zh) * | 2021-08-17 | 2023-06-06 | 北京计算机技术及应用研究所 | 一种基于消息验证技术的三方增强认证系统设计方法 |
CN114465806A (zh) * | 2022-02-21 | 2022-05-10 | 深圳市世强元件网络有限公司 | 多方数据接入安全管理方法及系统 |
CN114500098A (zh) * | 2022-03-03 | 2022-05-13 | 广州市智荟环保有限公司 | 一种验证方法、装置和计算机设备及可读存储介质 |
US20240235841A1 (en) * | 2023-01-06 | 2024-07-11 | Capital One Services, Llc | System and method for parallel manufacture and verification of one-time-password authentication cards |
US20240291666A1 (en) * | 2023-02-24 | 2024-08-29 | Capital One Services, Llc | System and method for dynamic integration of user-provided data with one-time-password authentication cryptogram |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3361661B2 (ja) * | 1995-09-08 | 2003-01-07 | 株式会社キャディックス | ネットワーク上の認証方法 |
JP2002169784A (ja) * | 2000-11-30 | 2002-06-14 | Sony Corp | 情報処理装置および方法、並びにプログラム格納媒体 |
AU2005277198A1 (en) * | 2004-08-18 | 2006-03-02 | Mastercard International Incorporated | Method and system for authorizing a transaction using a dynamic authorization code |
US7379921B1 (en) * | 2004-11-08 | 2008-05-27 | Pisafe, Inc. | Method and apparatus for providing authentication |
WO2008073701A2 (en) * | 2006-12-08 | 2008-06-19 | Casdex, Inc. | System and method for file authentication and versioning using unique content identifiers |
SG170074A1 (en) | 2007-10-22 | 2011-04-29 | Microlatch Pty Ltd | A transmitter for transmitting a secure access signal |
ITBS20080031A1 (it) * | 2008-02-11 | 2009-08-12 | Alberto Gasparini | Metodo e telefono mobile per registrare e autenticare un utente presso un service provider |
US8302167B2 (en) | 2008-03-11 | 2012-10-30 | Vasco Data Security, Inc. | Strong authentication token generating one-time passwords and signatures upon server credential verification |
PT2166697E (pt) | 2008-09-17 | 2011-11-21 | Gmv Soluciones Globales Internet S A | Método e sistema de autenticação de um utilizador através de um dispositivo móvel |
US20100125516A1 (en) * | 2008-11-14 | 2010-05-20 | Wankmueller John R | Methods and systems for secure mobile device initiated payments |
ES2381293B1 (es) * | 2009-04-20 | 2012-11-07 | Alter Core, S.L. | Sistema y método de acreditación personal mediante dispositivo móvil. |
US8607043B2 (en) * | 2012-01-30 | 2013-12-10 | Cellco Partnership | Use of application identifier and encrypted password for application service access |
-
2013
- 2013-08-02 US US13/958,075 patent/US9710634B2/en active Active
- 2013-08-02 TR TR2018/10238T patent/TR201810238T4/tr unknown
- 2013-08-02 EP EP13748438.2A patent/EP2885904B1/en active Active
- 2013-08-02 WO PCT/US2013/053433 patent/WO2014022778A1/en active Application Filing
- 2013-08-02 ES ES13748438.2T patent/ES2680152T3/es active Active
- 2013-08-02 IN IN466KON2015 patent/IN2015KN00466A/en unknown
- 2013-08-02 PL PL13748438T patent/PL2885904T3/pl unknown
- 2013-08-02 CN CN201380049938.6A patent/CN104662864B/zh active Active
- 2013-08-02 DK DK13748438.2T patent/DK2885904T3/en active
Also Published As
Publication number | Publication date |
---|---|
CN104662864B (zh) | 2018-03-09 |
WO2014022778A1 (en) | 2014-02-06 |
PL2885904T3 (pl) | 2018-09-28 |
EP2885904A1 (en) | 2015-06-24 |
DK2885904T3 (en) | 2018-08-06 |
EP2885904B1 (en) | 2018-04-25 |
CN104662864A (zh) | 2015-05-27 |
US9710634B2 (en) | 2017-07-18 |
IN2015KN00466A (es) | 2015-07-17 |
US20140040628A1 (en) | 2014-02-06 |
TR201810238T4 (tr) | 2018-08-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2680152T3 (es) | Método y aparato de autenticación conveniente para el usuario usando una aplicación de autenticación móvil | |
CN107409049B (zh) | 用于保护移动应用的方法和装置 | |
RU158940U1 (ru) | Токен строгой аутентификации с визуальным выводом подписей инфраструктуры открытых ключей (pki) | |
ES2953529T3 (es) | Testigo de autenticación fuerte multiusuario | |
KR102242218B1 (ko) | 사용자 인증 방법 및 장치, 및 웨어러블 디바이스 등록 방법 및 장치 | |
ES2753964T3 (es) | Procedimiento para generar un software token, producto de programa informático y sistema informático de servicio | |
ES2951585T3 (es) | Autenticación de transacciones usando un identificador de dispositivo móvil | |
ES2599985T3 (es) | Validación en cualquier momento para los tokens de verificación | |
US9647840B2 (en) | Method for producing a soft token, computer program product and service computer system | |
CN101272237B (zh) | 一种用于自动生成和填写登录信息的方法和系统 | |
EP3807831B1 (en) | Method and system to create a trusted record or message and usage for a secure activation or strong customer authentication | |
US10147092B2 (en) | System and method for signing and authenticating secure transactions through a communications network | |
TWI529641B (zh) | 驗證行動端動態顯示之資料之系統及其方法 | |
CN111742314A (zh) | 便携式装置上的生物计量传感器 | |
CN104125064B (zh) | 一种动态密码认证方法、客户端及认证系统 | |
ES2837138T3 (es) | Procedimiento y sistema para la autentificación de un terminal de telecomunicación móvil en un sistema informático de servicio y terminal de telecomunicación móvil | |
KR20170042137A (ko) | 인증 서버 및 방법 | |
US20240005820A1 (en) | Content encryption and in-place decryption using visually encoded ciphertext | |
KR102122555B1 (ko) | 사용자가 소지한 금융 카드 기반 본인 인증 시스템 및 방법 | |
WO2016013924A1 (en) | System and method of mutual authentication using barcode | |
ES2971660T3 (es) | Procedimiento para llevar a cabo una transacción, terminal, servidor y programa informático correspondiente |