ES2912265T3 - Autenticación multifactor utilizando comunicación cuántica - Google Patents

Autenticación multifactor utilizando comunicación cuántica Download PDF

Info

Publication number
ES2912265T3
ES2912265T3 ES13833805T ES13833805T ES2912265T3 ES 2912265 T3 ES2912265 T3 ES 2912265T3 ES 13833805 T ES13833805 T ES 13833805T ES 13833805 T ES13833805 T ES 13833805T ES 2912265 T3 ES2912265 T3 ES 2912265T3
Authority
ES
Spain
Prior art keywords
user
trusted authority
information
password
keys
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
ES13833805T
Other languages
English (en)
Inventor
Richard Hughes
Charles Peterson
James Thrasher
Jane Nordholt
Jon Yard
Raymond Newell
Rolando Somma
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Triad National Security LLC
Original Assignee
Triad National Security LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Triad National Security LLC filed Critical Triad National Security LLC
Application granted granted Critical
Publication of ES2912265T3 publication Critical patent/ES2912265T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0852Quantum cryptography
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3226Cryptographic 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic 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 cryptographic hash functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2115Third party
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/082Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying multi-factor authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Abstract

Un método de autenticación multifactor que utiliza comunicación cuántica con un sistema informático que implementa una autoridad de confianza, comprendiendo el método (1000), con un dispositivo de usuario: transmitir, a la autoridad de confianza, pulsos de fotones; recibir, de la autoridad de confianza, un mensaje firmado por la autoridad de confianza; recuperar información de verificación de la memoria del dispositivo de usuario; verificar la autoridad de confianza utilizando la información de verificación y el mensaje firmado; recibir, de la autoridad de confianza, bases de medición ocultas utilizadas en una sesión de comunicación cuántica entre el dispositivo de usuario y la autoridad de confianza, siendo las bases de medición ocultas generadas por la autoridad de confianza utilizando las bases de medición que utilizó para medir los fotones de los pulsos, información del factor de dispositivo asociada con el dispositivo de usuario e información del factor de usuario asociada con un usuario, en el que la información del factor de dispositivo comprende información para una función de comprobación aleatoria y la información de factor de usuario asociada con un usuario comprende una contraseña de usuario, y en el que las bases de medición están ocultas por el autoridad confiable usando los resultados de aplicar la función de comprobación aleatoria a la contraseña del usuario; recuperar bases de medición, correspondientes a las bases de medición ocultas, utilizando la función de comprobación aleatoria y la contraseña de usuario; y derivar bits secretos que se comparten entre el dispositivo del usuario y la autoridad de confianza utilizando las bases de medición.

Description

DESCRIPCIÓN
Autenticación multifactor utilizando comunicación cuántica
Reconocimiento del apoyo del gobierno
Esta invención se realizó con el apoyo del gobierno bajo el Contrato No. DE-AC52-06NA25396 otorgado por el U.S. Department of Energy. El gobierno tiene ciertos derechos en la invención.
Antecedentes
En la comunicación cuántica, dos partes intercambian información codificada en estados cuánticos. Por lo general, los estados cuánticos son propiedades especialmente definidas de los fotones, tal como pares de estados de polarización. (por ejemplo, 0° y 90°, o 45° y 135°) o estados de base circular (por ejemplo, zurdos y diestros). A través de la comunicación cuántica ("QC"), las dos partes producen una serie aleatoria compartida de bits que solo ellos conocen, que luego pueden usarse como claves secretas en el cifrado y descifrado posterior de los mensajes. El proceso de producción de tales claves a través de QC también se denomina distribución de claves cuánticas ("QKD").
Un tercero puede, en teoría, escuchar a escondidas la QC entre las dos partes. Sin embargo, tales espías perturban la QC, introduciendo anomalías que las dos partes previstas pueden detectar. Utilizando la comunicación convencional, las dos partes procesan posteriormente los resultados de la QC para eliminar cualquier información parcial adquirida por un espía y forman claves secretas compartidas a partir de la información restante resultante de la QC.
Por ejemplo, de acuerdo con un enfoque general de QKD, un transmisor establece el estado cuántico de la información binaria, registra cómo establece el estado cuántico y transmite la información. La Tabla 1 muestra un ejemplo de estados cuánticos y bases para diferentes polarizaciones de fotones. Para las bases y estados que se muestran en la Tabla 1, el transmisor selecciona una base (rectilínea o diagonal), establece el estado de polarización para un fotón en la base seleccionada y registra el valor del bit (0 o 1), la base de envío seleccionada y el tiempo de transmisión.
T l 1. E m l n i .
Figure imgf000002_0001
Un receptor recibe la información binaria, mide el estado cuántico de la información y hace un registro de cómo midió el estado cuántico. El estado medido depende de cómo el receptor realiza la medición (por ejemplo, con base de medición rectilínea o diagonal). Se espera que el transmisor y el receptor registren diferentes valores de bits en algunos casos porque el transmisor y el receptor a veces configuran / miden la información codificada en estado cuántico de diferentes maneras. Por lo tanto, después de intercambiar información en estados cuánticos, el transmisor y el receptor comparan sus registros de cómo se establecieron y midieron los estados cuánticos. Para esta comparación, el transmisor y el receptor intercambian información a través de un canal público. Luego, el transmisor y el receptor producen una serie compartida de bits (claves) a partir de la información codificada para la cual el transmisor y el receptor establecieron y midieron los estados cuánticos de la misma manera.
Para las bases y estados que se muestran en la Tabla 1, por ejemplo, el receptor selecciona una base (rectilínea o diagonal), mide el estado de polarización en la base seleccionada y registra el valor de bit medido y la base de medición. Ninguna base de medición posible puede distinguir los cuatro estados, por lo que el receptor esencialmente adivina si es rectilíneo o diagonal. Si la base de medición coincide con la base de envío, el receptor debe medir el valor de bit correcto. Sin embargo, si la base de medición no coincide con la base de envío, es probable que el valor de bit medido sea correcto o incorrecto. Por ejemplo, si la base de envío es diagonal para el valor de bit 0 (estado de polarización de 45°) pero la base de medición es rectilínea, los valores de bit medidos de 0 (90°) y 1 (0°) son igualmente probables. El transmisor y el receptor comparan la base de envío y la base de medición para un fotón dado, y mantienen el valor del bit para un fotón si la base de envío y la base de medición coinciden.
Si un espía intercepta y mide un fotón, la medida perturba el estado cuántico del fotón. El espía solo puede adivinar la base de envío original cuando vuelve a codificar y retransmitir el fotón al destino previsto. En el momento de la medición por parte del receptor, no se detecta el espía. En su lugar, para los subconjuntos de los valores de bits para los que se encuentra que la base de envío y la base de medición coinciden, el transmisor y el receptor comparan los valores de paridad. Los valores de paridad deben coincidir exactamente, si el sistema está sintonizado apropiadamente y libre de imperfecciones en la transmisión y recepción. Los espías introducen discrepancias notables en los valores de bits, lo que permite que el transmisor y el receptor detecten los espías, corrijan las claves y establezcan un límite superior en la información parcial del espía.
Una cadena de bits sin errores compartida por el transmisor y el receptor se puede amplificar de forma privada (por ejemplo, mediante comprobación aleatoria con una función de comprobación aleatoria) para reducir su longitud. (O bien, los bits simplemente se pueden eliminar, pero esto carece de las ventajas de la amplificación de la privacidad). La longitud final de la cadena de bits compartidos puede depender del número de errores detectados. Acortar la cadena de bits compartidos con amplificación de privacidad reduce el conocimiento que un espía podría tener a un nivel arbitrariamente bajo, -típicamente mucho menos que un solo bit.
Otros enfoques de la QC explotan otras propiedades cuánticas (por ejemplo, entrelazamiento cuántico) para intercambiar información codificada en estados cuánticos. Además, se pueden utilizar técnicas tales como la amplificación de la privacidad para eliminar la información parcial que puede adquirir un espía. Se pueden utilizar técnicas tales como la reconciliación de la información para resolver pequeñas discrepancias en los valores de bits compartidos del transmisor y el receptor.
El marco teórico para la QC se ha establecido durante más de 25 años y sus ventajas en términos de seguridad de las claves son bien aceptadas. Durante las últimas dos décadas, las implementaciones de los sistemas QKD se han vuelto más económicas, más confiables, más fáciles de mantener (por ejemplo, autoajuste, autocomprobación) y más fáciles de usar. Aun así, en comparación con otras soluciones de seguridad, el sistema QKD tiende a ser costoso y difícil de implementar. Un sistema QKD típico es grande y funciona solo en modo punto a punto a través de una conexión de fibra entre el transmisor y el receptor. Varios sistemas QKD disponibles comercialmente realizan QKD solo a través de enlaces punto a punto, no son portátiles y requieren una conexión de fibra dedicada. Además, su QC no puede coexistir con el tráfico de red. Recientemente se han desarrollado dispositivos más pequeños y menos costosos para QKD, que pueden participar en la QC en el mismo canal que el tráfico de red regular, y que se pueden usar junto con protocolos para una comunicación segura entre múltiples partes. Estos avances pueden ayudar a QKD a hacerse un hueco comercial. Sin embargo, tales dispositivos y tecnologías QKD no abordan ciertos problemas prácticos de autenticación de usuarios.
Estado de la técnica:
Es conocido en los documentos de la técnica
D1 WO 2012/044855 A2 (LOS ALAMOS NAT SECURITY LLC [EE. UU.]; HUGHES RICHARD JOHN [EE. UU.]; NORDHOLT J) 5 de abril de 2012 (2012-04-05)
D2 WO 2009/141587 A1 (QINETIQ LTD [GB]; WISEMAN SIMON ROBERT [GB]) 26 de noviembre de 2009 (2009-11­ 26)
D3 SEBASTIEN KUNZ-JACQUES Y AL: "Using Hash-Based Signatures to Bootstrap Quantum Key Distribution", ARXIV.ORG, CORNELL UNIVERSITY LIBRARY, 201 OLIN LIBRARY CORNELL UNIVERSITY ITHACA, NY 14853, 13 de septiembre de 2011 (2011 -09-13), XP080527425,
D4 WO 2007/123869 A2 (MAGIQ TECHNOLOGIES INC [EE. UU.]; GELFOND ROBERT [EE. UU.]; BERZANSKIS AUDRIUS) 1 de noviembre de 2007 (2007-11-01)
D5 HUGO KRAWCZYK ED - LOUIS C GUILLOU Y OTROS: "New Hash Functions for Message Authentication", 21 de mayo 1995 (1995-05-21), ADVANCES IN CRYPTOLOGY EUROCRYPT 95, SPRINGER BERLIN HEIDELBERG, BERLIN, HEIDELBERG, PAGE(S) 301 - 310, XP019194337, ISBN: 978-3-540-59409-3
Resumen
Las innovaciones descritas en el presente documento proporcionan métodos para la autenticación de múltiples factores que utilizan la comunicación cuántica ("QC"). En un nivel alto, la autenticación multifactor utiliza "algo recordado" como primer factor para la autenticación y "algo poseído" como segundo factor para la autenticación. Por ejemplo, el primer factor puede ser una contraseña de usuario recordada por el usuario, y el segundo factor puede ser un dispositivo que posee el usuario, o información asociada de forma segura con dicho dispositivo. La autenticación multifactor proporciona ventajas en términos de eficiencia, seguridad, facilidad de implementación y usabilidad.
De acuerdo con un primer conjunto de innovaciones descritas en el presente documento, un usuario se registra para la autenticación de múltiples factores que usa QC con un sistema informático que implementa una autoridad confiable. Un dispositivo de usuario (tal como una tarjeta de QC como se describe en la sección I u otro dispositivo) recibe información de factor de dispositivo asociada con el dispositivo de usuario. Por ejemplo, la información del factor de dispositivo especifica una función de comprobación aleatoria, por ejemplo, como una matriz Toeplitz, o es otra información para una función de comprobación aleatoria. El dispositivo de usuario también recibe información del factor de usuario asociada con el usuario. Por ejemplo, la información del factor de usuario es una versión cifrada de una contraseña de usuario que el usuario ha proporcionado. El dispositivo de usuario almacena la información del factor de dispositivo y la información del factor de usuario en la memoria del dispositivo de usuario para su uso en la autenticación multifactor. Por ejemplo, como parte del almacenamiento, para la información del factor de dispositivo, se almacena una indicación de la función de comprobación aleatoria en la memoria del dispositivo de usuario. El dispositivo de usuario también puede recibir información de verificación y almacenar la información de verificación en la memoria del dispositivo de usuario, para su uso en la autenticación de la autoridad de confianza. La información del factor del dispositivo, la información del factor del usuario y/o la información de verificación generalmente se reciben directamente del sistema informático que implementa la autoridad de confianza (por ejemplo, en una sesión de inscripción en persona), pero alternativamente se reciben a través de una conexión de red.
De acuerdo con un segundo conjunto de innovaciones descritas en el presente documento (desde la perspectiva de la autoridad de confianza), se registra un usuario para la autenticación multifactor que utiliza QC con un sistema informático que implementa una autoridad de confianza. El sistema informático que implementa la autoridad de confianza transmite información del factor del dispositivo asociada con el dispositivo del usuario. Por ejemplo, la información del factor de dispositivo especifica una función de comprobación aleatoria, por ejemplo, como una matriz Toeplitz, o es otra información para una función de comprobación aleatoria. La información para la función de comprobación aleatoria se puede determinar con base, al menos en parte, en la salida de un generador de números aleatorios. El sistema informático también transmite información del factor de usuario asociada con un usuario. Por ejemplo, la información del factor de usuario es una versión cifrada de una contraseña de usuario, donde la contraseña de usuario se recibe de un usuario y se cifra (por ejemplo, utilizando una clave de cifrado secreta de la autoridad de confianza) para producir la versión cifrada de la contraseña de usuario. El sistema informático almacena la información del factor del dispositivo en la memoria del sistema informático que implementa la autoridad de confianza para su uso en la autenticación multifactor. Por ejemplo, como parte del almacenamiento, para la información del factor de dispositivo, se almacena una indicación de la función de comprobación aleatoria en la memoria del sistema informático. El sistema informático también puede determinar la información de verificación asociada con las claves de firma digital de la autoridad de confianza y luego transmitir la información de verificación. La información del factor del dispositivo, la información del factor del usuario y/o la información de verificación generalmente se transmiten directamente al dispositivo del usuario (por ejemplo, en una sesión de inscripción en persona), pero alternativamente se transmiten a través de una conexión de red.
De acuerdo con un tercer conjunto de innovaciones descritas en el presente documento, un dispositivo de usuario realiza una autenticación multifactor que usa QC con un sistema informático que implementa una autoridad confiable. El dispositivo de usuario recupera, de la memoria del dispositivo de usuario, información de factor de dispositivo asociada con el dispositivo de usuario. Por ejemplo, cuando la información del factor de dispositivo es información para una función de comprobación aleatoria, se recupera una indicación de la función de comprobación aleatoria de la memoria del dispositivo de usuario. El dispositivo de usuario también recupera, de la memoria del dispositivo de usuario, información de factor de usuario asociada con un usuario. Por ejemplo, la información del factor de usuario es una versión cifrada de una contraseña de usuario. Como parte de la autenticación multifactor, el dispositivo del usuario puede recibir la entrada del usuario para la contraseña del usuario (por ejemplo, 8-12 caracteres ASCII) para que la use el dispositivo del usuario en la autenticación multifactor y transmitir la versión cifrada de la contraseña de usuario (recuperada de la memoria del dispositivo del usuario) para que la utilice la autoridad de confianza para recuperar la contraseña del usuario.
El dispositivo de usuario utiliza la información del factor de dispositivo y la información del factor de usuario en la autenticación multifactor que utiliza QC con el sistema informático que implementa la autoridad de confianza. La QC en la autenticación multifactor puede incluir el uso de estados de señuelo, amplificación de privacidad y/o corrección de errores. Por ejemplo, el dispositivo de usuario transmite pulsos de fotones en estados de señuelo y pulsos de fotones en estados de no señuelo, recibe un conjunto de índices de detección firmados por la autoridad de confianza, recupera información de verificación de la memoria del dispositivo de usuario, verifica la autoridad de confianza utilizando la información de verificación y los índices de detección firmados, y transmite una indicación de estados no señuelo. Cuando la información del factor del dispositivo es información para una función de comprobación aleatoria, el dispositivo del usuario puede recibir información que indica bases de medición ocultas para QC y recuperar las bases de medición reales utilizando la función de comprobación aleatoria y una contraseña de usuario (por ejemplo, aplicando la función de comprobación aleatoria a la contraseña de usuario , luego calculando OR exclusivo de (1) la información oculta que indica las bases de medición y (2) los resultados de aplicar la función de comprobación aleatoria a la contraseña del usuario, para recuperar las bases de medición reales). A continuación, el dispositivo de usuario compara las bases de medición con las bases de envío para la QC y determina los bits secretos compartidos para la QC.
En el procesamiento posterior para la autenticación, el dispositivo de usuario puede intercambiar información para dos funciones de comprobación aleatoria con la autoridad de confianza, aplicar las dos funciones de comprobación aleatoria, respectivamente, a (1) bits secretos compartidos resultantes de la QC y (2) una contraseña de usuario, de modo que produzca un valor de verificación, luego transmitir el valor de verificación. El dispositivo de usuario recibe entonces una indicación del éxito o fracaso de la autenticación de múltiples factores.
De acuerdo con un cuarto conjunto de innovaciones descritas en el presente documento (desde la perspectiva de la autoridad de confianza), un sistema informático que implementa una autoridad de confianza realiza una autenticación multifactor que usa QC. El sistema informático recibe información del factor de usuario asociada con un usuario. Por ejemplo, la información del factor de usuario es una versión cifrada de una contraseña de usuario, en cuyo caso el sistema informático puede recuperar la contraseña de usuario a partir de la versión cifrada de la contraseña de usuario utilizando una clave de cifrado secreta de la autoridad de confianza. El sistema informático también recupera, de la memoria del sistema informático, información del factor del dispositivo asociada con el dispositivo del usuario. Por ejemplo, cuando la información del factor de dispositivo es información para una función de comprobación aleatoria, se recupera una indicación de la función de comprobación aleatoria de la memoria del sistema informático que implementa la autoridad de confianza.
El sistema informático utiliza la información del factor del dispositivo y la información del factor del usuario en la autenticación multifactor que utiliza la QC con el dispositivo del usuario. La QC en la autenticación multifactor puede incluir el uso de estados de señuelo, amplificación de privacidad y/o corrección de errores. Por ejemplo, el sistema informático recibe pulsos de fotones en estados de señuelo y pulsos de fotones en estados de no señuelo, transmite un conjunto de índices de detección firmados por la autoridad de confianza y recibe una indicación de estados de no señuelo. Cuando la información del factor del dispositivo es información para una función de comprobación aleatoria, el sistema informático puede aplicar la función de comprobación aleatoria a una contraseña de usuario y ocultar las bases de medición para la QC (por ejemplo, calculando OR exclusivo de (1) información que indica las bases de medición y (2) resultados de aplicar la función de comprobación aleatoria a la contraseña del usuario), transmite las bases de medición ocultas. El sistema informático recibe entonces una indicación de cuál de las bases de medición coincide con las bases de envío para la QC y determina los bits secretos compartidos para la QC.
En el procesamiento posterior para la autenticación, el sistema informático puede intercambiar información para dos funciones de comprobación aleatoria con el dispositivo de usuario, y aplicar las dos funciones de comprobación aleatoria, respectivamente, a (1) bits secretos compartidos resultantes del control de calidad y (2) una contraseña de usuario, de modo que produzca un valor de comparación, reciba un valor de verificación y compare el valor de verificación con el valor de comparación. El sistema informático transmite una indicación del éxito o fracaso de la autenticación multifactor.
Los anteriores y otros objetos, características y ventajas de la invención se harán más evidentes a partir de la siguiente descripción detallada, que procede con referencia a las figuras adjuntas.
La invención está definida por las reivindicaciones independientes. Las realizaciones preferidas se exponen en las reivindicaciones dependientes. \
Breve descripción de los dibujos
La Figura 1 es un diagrama de un entorno operativo de ejemplo en el que las claves se adquieren a través de QKD y en el que se puede realizar la autenticación multifactor con QC.
Las Figuras 2 y 3 son diagramas de entornos operativos de ejemplo en los que las claves se distribuyen y utilizan para el cifrado, la autenticación y el control de acceso.
La Figura 4 es un diagrama de bloques de un dispositivo móvil que incorpora una tarjeta de QC en algunas realizaciones.
La Figura 5 es un diagrama de bloques de un sistema informático de ejemplo en el que se pueden implementar algunas realizaciones descritas.
La Figura 6 es un diagrama que ilustra un protocolo de ejemplo que incluye QKD entre una autoridad de confianza y uno o más dispositivos de usuario para una comunicación segura entre múltiples partes.
La Figura 7 es un diagrama de flujo que ilustra una técnica generalizada para la distribución de claves que incluye QKD entre una autoridad de confianza y uno o más dispositivos de usuario para una comunicación segura entre múltiples partes.
Las Figuras 8a y 8b son diagramas que ilustran las características de un ejemplo de árbol de comprobación aleatoria de Merkle.
La Figura 9 es un diagrama que ilustra un protocolo para inscribirse en la autenticación multifactor con QC.
Las Figuras 10a y 10b son diagramas que ilustran un protocolo para realizar la autenticación multifactor con QC.
Las Figuras 11 y 12 son diagramas de flujo que ilustran técnicas generalizadas para inscribirse en la autenticación multifactor con control de calidad desde la perspectiva de un dispositivo de usuario y una autoridad de confianza, respectivamente.
Las Figuras 13 y 14 son diagramas de flujo que ilustran técnicas generalizadas para realizar la autenticación multifactor con QC desde la perspectiva de un dispositivo de usuario y una autoridad de confianza, respectivamente.
Descripción detallada
La autenticación multifactor con QC utiliza "algo recordado" y "algo poseído" como primer y segundo factor, respectivamente, para la autenticación. En implementaciones de ejemplo, el primer factor es una contraseña de usuario y el segundo factor es un dispositivo que posee un usuario, o información asociada de forma segura con dicho dispositivo. Como parte del protocolo de autenticación, el usuario puede demostrar a una autoridad de confianza que conoce la contraseña y posee el dispositivo. Si la autenticación tiene éxito y el usuario establece una relación de confianza con la autoridad de confianza, el usuario y la autoridad de confianza tienen bits secretos compartidos, que se pueden usar como contraseña para iniciar sesión en un sistema informático, ingresar a un sitio web seguro, obtener acceso a un edificio, establecer una prueba de la identidad del usuario, realizar una QC adicional para el establecimiento de claves autenticadas con contraseña, generar bits secretos compartidos adicionales o para algún otro propósito. En comparación con los enfoques anteriores para la autenticación de usuarios, los enfoques multifactor descritos en el presente documento tienen ventajas en términos de eficiencia, seguridad, practicidad y facilidad de uso.
En las implementaciones de ejemplo, diversas características del sistema son computacionalmente livianas y relativamente rápidas, y pueden implementarse en hardware de manera relativamente eficiente. Esto hace que las innovaciones para la autenticación de múltiples factores con QKD sean especialmente adecuadas para su uso en dispositivos con recursos limitados, tales como dispositivos portátiles y en aplicaciones de redes inteligentes.
Las innovaciones de autenticación multifactor se pueden utilizar en diversas aplicaciones que implican comunicaciones seguras, incluyendo las ventas comerciales, la banca, las conferencias y los sistemas militares. Las innovaciones de autenticación de múltiples factores se pueden utilizar para proteger las redes empresariales o los sistemas de control industrial, brindar servicios al consumidor de manera segura o proporcionar fichas de identificación y control de acceso.
En aras de la presentación, en algunos lugares, el término "autoridad confiable" se usa como abreviatura de un sistema informático que implementa el rol de autoridad confiable, y el término "usuario" se usa para indicar un sistema informático asociado con un usuario. A menos que el contexto indique claramente lo contrario, las operaciones descritas en el presente documento se implementan y realizan mediante sistemas informáticos. Por ejemplo, la descripción de la transmisión de información a una autoridad o usuario de confianza, la determinación de un valor y la recepción de información de una autoridad o usuario de confianza generalmente indican operaciones con un sistema informático asociado con la autoridad o el usuario de confianza. Por otro lado, la descripción de la entrada del usuario o la entrada biométrica a un dispositivo de usuario implica que un usuario humano proporciona dicha entrada.
Además, los términos "sistema" y "dispositivo" se usan indistintamente en el presente documento. A menos que el contexto indique claramente lo contrario, ningún término implica ninguna limitación en un tipo de sistema informático o dispositivo informático. En general, un sistema informático o dispositivo informático puede ser local o distribuido, y puede incluir cualquier combinación de hardware de propósito especial y/o hardware informático de propósito general con software que implementa la funcionalidad descrita en el presente documento. El término "dispositivo de usuario" generalmente indica un sistema informático asociado con un usuario.
Son posibles diversas alternativas a las implementaciones descritas en el presente documento. Ciertas técnicas descritas con referencia a los diagramas de flujo se pueden modificar cambiando el orden de las etapas que se muestran en los diagramas de flujo, dividiendo, repitiendo u omitiendo ciertas etapas, etc. Los diferentes aspectos de la autenticación multifactor descrita en el presente documento se pueden usar en combinación o por separado. Diferentes realizaciones implementan una o más de las técnicas y herramientas descritas. Algunas de las técnicas y herramientas descritas en el presente documento abordan uno o más de los problemas señalados en los antecedentes. Por lo general, una técnica/herramienta dada no resuelve todos esos problemas.
I. Entornos Operativos de Ejemplo.
La Figura 1 muestra un entorno (100) operativo de ejemplo en el que diversos dispositivos de usuario adquieren claves a través de QKD con una autoridad (101) de confianza. Los dispositivos de usuario incluyen una tarjeta (102) de QC que se acopla con una estación (103) base, un teléfono (107) móvil que tiene una tarjeta de QC, un satélite (108) y diversos ordenadores (106) conectados a un transmisor (105) de QC convencional. Un dispositivo de usuario puede ser para un usuario individual o para una empresa, institución financiera o institución gubernamental como usuario.
Un sistema informático implementa la autoridad (101) de confianza. La autoridad (101) de confianza autentica a un usuario (por ejemplo, de acuerdo con parte de un protocolo de autenticación multifactor descrito en el presente documento), produce claves cuánticas en comunicación con un dispositivo de usuario (o transmisor (105) de QC convencional), y almacena las claves cuánticas. En algún momento, la autoridad (101) de confianza realiza QKD con diferentes dispositivos, y la autoridad (101) de confianza almacena claves cuánticas producidas en las diferentes sesiones de QKD. Por lo tanto, con referencia a los roles convencionales para ciertos protocolos criptográficos, la autoridad (101) de confianza generalmente puede actuar como un centro de distribución de claves (generando/distribuyendo claves cuánticas a los dispositivos de los usuarios) y un centro de traducción de claves (manteniendo una base de datos de claves cuánticas y otra información utilizada para QKD, y responder a las solicitudes de dicha información). Mediante el uso de claves cuánticas y otra información proporcionada por la autoridad (101) de confianza, un dispositivo de usuario determinado puede comunicarse de forma segura con otros dispositivos de usuario que tengan claves cuánticas de QKD con la autoridad (101) de confianza o que hayan establecido una relación de confianza con la autoridad (101) de confianza.
La tarjeta (102) de QC contiene un transmisor de QC miniaturizado. La tarjeta (102) de QC se acopla con una estación (103) base, que proporciona una conexión de red con la autoridad (101) de confianza y puede proporcionar potencia eléctrica a la tarjeta (102) de QC. Las implementaciones de ejemplo para una estación (103) base, una tarjeta (102) de QC y una autoridad de confianza adaptada para QKD con una tarjeta (102) de QC se detallan en la Solicitud de Patente de EE. UU No. 12/895720, presentada el 30 de septiembre de 2010, y Solicitud de Patente PCT No. PCT/US2011/054061, presentada el 29 de septiembre de 2011, que ha sido publicado como el documento WO 2012/044852. Mientras que las soluciones QKD convencionales han tendido a ser costosas y difíciles de implementar, las implementaciones de ejemplo de la tarjeta (102) de QC y la estación (103) base son relativamente económicas. Una tarjeta (102) de QC se lleva fácilmente, y las claves cuánticas generadas con QKD facilitan una seguridad más sólida que la proporcionada con la distribución convencional de claves no cuánticas.
Normalmente, como condición previa para QKD, la autoridad (101) de confianza autentica al usuario. Por ejemplo, como parte de una etapa de inscripción en una implementación de un protocolo de autenticación multifactor descrito en el presente documento, el usuario de la tarjeta (102) de QC y la autoridad (101) de confianza realizan dicha inscripción en persona. El usuario de la tarjeta (102) de QC proporciona una contraseña de usuario a la autoridad (101) de confianza. Por supuesto, se espera que diferentes usuarios tengan diferentes contraseñas de usuario. La tarjeta (102) de QC también puede aceptar un escaneo de huellas dactilares del usuario, cifrar los datos del escaneo de huellas dactilares y transmitir el material cifrado a la autoridad (101) de confianza para operaciones de comparación en la autenticación posterior por parte de la autoridad (101) de confianza. Alternativamente, la tarjeta (102) de QC acepta otra información biométrica y/u otra información que identifica al usuario.
Como parte de la implementación del protocolo de autenticación multifactor, la autoridad (101) de confianza puede generar claves de firma digital de un solo uso, así como información de verificación para las claves de firma digital. La autoridad de confianza transmite dicha información de verificación a la tarjeta (102) de QC, para su uso posterior en la verificación de mensajes de la autoridad (101) de confianza (tal como índices de detección utilizados en el propio QKD, o una señal que indica aceptación/rechazo de la autenticación). Para un usuario y una tarjeta de QC diferentes, se espera que la autoridad de confianza genere información de verificación diferente. Además del protocolo de autenticación de múltiples factores, la tarjeta (102) de QC puede generar sus propias claves de firma digital de un solo uso e información de verificación para sus claves de firma digital, y luego transmitir dicha información de verificación a la autoridad (101) de confianza, para su posterior uso en la verificación de mensajes del usuario de la tarjeta (102) de QC.
Para usar en el protocolo de autenticación multifactor, la autoridad (101) de confianza también genera o determina de otro modo una función de comprobación aleatoria y transmite la función de comprobación aleatoria a la tarjeta (102) de QC para usar en etapas posteriores de autenticación de usuario. Por ejemplo, la función de comprobación aleatoria se especifica como una matriz Toeplitz, o se utiliza otro tipo de función de comprobación aleatoria. La tarjeta (102) de QC almacena la función de comprobación aleatoria, por ejemplo, en una memoria segura en la tarjeta (102) de QC. La autoridad (101) de confianza puede determinar diferentes funciones de comprobación aleatoria para diferentes tarjetas de QC. En su memoria, la autoridad (101) de confianza almacena las funciones de comprobación aleatoria para las diferentes tarjetas de QC respectivas.
Finalmente, la autoridad (101) de confianza cifra la contraseña de usuario transmitida por la tarjeta (102) de QC utilizando un mecanismo secreto (por ejemplo, un algoritmo de cifrado y una clave de cifrado que solo conoce la autoridad (101) de confianza) y transmite la versión cifrada de la contraseña de usuario a la tarjeta (102) de QC, para su uso en la autenticación de usuario posterior.
Otras etapas del protocolo de autenticación multifactor pueden integrarse con operaciones en las que la tarjeta (102) de QC realiza QKD con la autoridad (101) de confianza y almacena las claves cuánticas resultantes en una memoria segura en la tarjeta (102) de QC. Por ejemplo, como parte de una implementación del protocolo de autenticación multifactor, para iniciar el proceso, un usuario inserta la tarjeta (102) de Qc en la estación (103) base. La tarjeta (102) de QC transmite la versión cifrada de la contraseña de usuario a la autoridad (101) de confianza. La autoridad (101) de confianza recupera la contraseña del usuario utilizando su mecanismo secreto (por ejemplo, algoritmo de cifrado y clave de cifrado privada), que sirve para identificar al usuario ante la autoridad (101) de confianza. El usuario también ingresa la contraseña en la tarjeta (102) de QC, de modo que, sin transmitir la contraseña de usuario nuevamente en forma no cifrada, la contraseña está disponible para su uso en operaciones posteriores tanto en la autoridad (101) de confianza (recuperada de la contraseña cifrada) como la tarjeta (102) de q C (a partir de la entrada del usuario) para proporcionar un factor de autenticación segura del usuario. Aunque la autoridad (101) de confianza no verifica directamente la contraseña, para que el protocolo se complete con éxito, la contraseña del usuario debe ser la misma en la tarjeta (102) de QC y la autoridad (101) de confianza, como se explica a continuación.
Como parte del protocolo, la tarjeta (102) de QC y la autoridad (101) de confianza participan en QC. Dependiendo de la implementación, la tarjeta (102) de QC y la autoridad (101) de confianza pueden usar características tales como estados de señuelo, amplificación de privacidad y/o corrección de errores para brindar beneficios prácticos. Por ejemplo, en implementaciones de ejemplo del protocolo de autenticación de multifactor, cuando la tarjeta (102) de QC actúa como un transmisor de QC que utiliza estados de señuelo en QC, la autoridad (101) de confianza registra cuándo se ha detectado un fotón utilizando índices de detección y transmite los índices de detección a la tarjeta (102) de QC. Los índices de detección pueden ser firmados por la autoridad (101) de confianza de manera que permita que la tarjeta (102) de QC autentique la autoridad (101) de confianza utilizando la información de verificación proporcionada por la autoridad (101) de confianza durante el registro. La tarjeta (102) de QC identifica los índices de detección que representan pulsos que no son señuelos y comunica dicha información a la autoridad (101) de confianza.
Para el conjunto de pulsos medidos (o dentro del conjunto de pulsos no señuelo, cuando se han utilizado pulsos señuelo), la autoridad (101) de confianza identifica las bases de medición que utilizó para los fotones de los pulsos. En lugar de simplemente enviar dichas bases de medición a la tarjeta (102) de QC, la autoridad (101) de confianza utiliza la función de comprobación aleatoria proporcionada a la tarjeta (102) de QC durante el registro para proporcionar un nivel de seguridad. Por ejemplo, la autoridad (101) de confianza codifica la contraseña del usuario (recuperada de la versión cifrada transmitida por la tarjeta (102) de QC) utilizando la función de comprobación aleatoria compartida durante el registro, luego oculte el registro de sus bases de medición utilizando los resultados de la función de comprobación aleatoria. Para esta operación, la autoridad (101) de confianza puede calcular el XOR de las bases de medición y la contraseña de usuario codificada. La autoridad (101) de confianza luego envía las bases de medición ocultas a la tarjeta (102) de QC.
La tarjeta (102) de QC, que también tiene la función de comprobación aleatoria (desde el registro) y la contraseña de usuario (desde que el usuario la ingresa), codifica la contraseña del usuario con la función de comprobación aleatoria. La tarjeta (102) de QC recupera las bases de medición de la autoridad (101) de confianza utilizando la información recibida y la contraseña de usuario codificada. La tarjeta (102) de QC determina pulsos para los cuales su base de envío coincide con la base de medición de la autoridad de confianza y envía una indicación de las bases coincidentes a la autoridad (101) de confianza, momento en el que la tarjeta (102) de QC y la autoridad (101) de confianza puede identificar un conjunto común de bits secretos compartidos. La tarjeta (102) de QC y la autoridad (101) de confianza pueden usar amplificación de privacidad y corrección de errores para refinar aún más los bits secretos compartidos.
Como etapa final del protocolo de autenticación multifactor en esta implementación, la tarjeta (102) de QC y la autoridad (101) de confianza pueden intercambiar dos funciones de comprobación aleatoria adicionales, con la tarjeta (102) de QC especificando una primera función de comprobación aleatoria para la autoridad (101) de confianza, y especificando la autoridad (101) de confianza una segunda función de comprobación aleatoria a la tarjeta (102) de q C. Por ejemplo, las funciones de comprobación aleatoria adicionales son matrices de Toeplitz. La tarjeta (102) de QC codifica la contraseña de usuario con una de las funciones de comprobación aleatoria adicionales, codifica su versión de los bits secretos compartidos usando la otra función de comprobación aleatoria adicional y combina los resultados de las funciones de comprobación aleatoria adicionales para producir un valor de verificación. Por ejemplo, la tarjeta (102) de QC calcula el x Or de los resultados de las funciones de comprobación aleatoria adicionales. La tarjeta (102) de QC transmite el valor de verificación a la autoridad (101) de confianza, que calcula un valor de comparación de la misma manera utilizando la contraseña de usuario, su versión de los bits secretos compartidos y las dos funciones de comprobación aleatoria adicionales. Si el valor de comparación coincide con el valor de verificación, la autoridad (101) de confianza autentica al usuario y los bits secretos compartidos se pueden usar para otra generación de claves, como contraseñas, etc. De lo contrario, si el valor de comparación no coincide con la verificación valor, el usuario no está autenticado por la autoridad (101) de confianza. El usuario puede tener otra oportunidad de completar QKD, o la autoridad (101) de confianza puede terminar el proceso QKD.
En la Figura 1, la estación (103) base está conectada a la autoridad (101) de confianza a través de fibra (104) instalada. La fibra (104) instalada se utiliza como canal cuántico para QKD punto a punto entre la tarjeta (102) de QC y la autoridad (101) de confianza, por ejemplo, para la transmisión de fotones codificados con información de estado cuántico. El QKD de punto a punto puede ocurrir en un solo tramo óptico o en varios tramos en una red de fibra cuya topología admita QKD. Por ejemplo, la topología incluye enrutadores intermedios entre la tarjeta de QC y la autoridad de confianza, pero los enrutadores conservan la información del estado cuántico. En la Figura 1, la fibra (104) instalada también se utiliza como canal público para intercambiar información no cuántica entre la tarjeta (102) de QC y la autoridad (101) de confianza, por ejemplo, información de verificación, información no cuántica sobre bases de medición en el QKD, funciones de comprobación aleatoria, versiones cifradas de contraseñas de usuario y/o información de clave no secreta de la autoridad (101) de confianza. Alternativamente, la tarjeta (102) de QC y la autoridad (101) de confianza comunican información no cuántica a través de otro tipo de medios de red (por ejemplo, cobre, RF) o espacio libre (óptico), o sobre una red de fibra que tenga otra topología de red.
En un escenario de uso, una empresa compra tarjetas (102) de QC para sus empleados y compra una o más estaciones (103) base ubicadas en sus instalaciones. Un empleado conecta periódicamente su tarjeta (102) de QC en una estación base para cargar claves cuánticas. La tarjeta (102) de QC también puede recibir información de verificación para claves de firma digital, o generar claves de firma digital e información de verificación. Luego, el empleado puede usar las claves cuánticas para actividades tales como compras por Internet, autenticación o control de acceso en un sitio remoto.
El teléfono (107) móvil incluye una tarjeta (102) de QC, así como componentes de teléfonos móviles convencionales. El teléfono (107) móvil se acopla con una estación (103) base que está adaptada para conectarse al teléfono (107) móvil y proporciona una conexión de red a la autoridad (101) de confianza. La estación (103) base del teléfono móvil también puede proporcionar energía eléctrica y una conexión de datos para sincronizar la información del teléfono (107) móvil. El teléfono (107) móvil almacena claves cuánticas producidas por la tarjeta (102) de QC y la autoridad (101) de confianza (porejemplo, en un proceso QKD con seguridad adicional provista opcionalmente por autenticación de dos factores de acuerdo con un protocolo de autenticación de múltiples factores descrito en el presente documento). El teléfono (107) móvil también puede generar claves de firma digital (y la información de verificación correspondiente), y recibir y almacenar información de verificación de la autoridad (101) de confianza. A continuación, se describen ejemplos de implementaciones para un teléfono (107) móvil que incluye una tarjeta de QC.
Como se muestra en la Figura 1, la autoridad (101) de confianza también puede producir claves cuánticas para dispositivos que no sean una tarjeta (102) de QC y generar claves de firma digital (e información de verificación, así como funciones de comprobación aleatoria y contraseñas de usuario cifradas para la autenticación) para tales otros dispositivos. Por ejemplo, la autoridad (101) de confianza realiza QKD para distribuir claves cuánticas a un satélite (108) de órbita baja usando equipos para transmisión y recepción de QC a través del espacio libre. O, la autoridad (101) de confianza realiza QKD con un transmisor (105) de QC convencional, que transmite directamente las claves cuánticas producidas por QKD a un ordenador (106) conectado localmente en una instalación segura, con seguridad adicional provista opcionalmente por autenticación de dos factores de acuerdo con un protocolo de autenticación multifactor descrito en el presente documento. El transmisor (105) de QC convencional puede conectarse a la autoridad (101) de confianza a través de fibra (104) instalada (por ejemplo, fibra estándar para telecomunicaciones en un edificio, enlace FTTx, área metropolitana, etc.) o espacio libre (porejemplo, de techo a techo, de avión a tierra, de barco a barco, de satélite a tierra).
En cualquier caso, la QKD produce números aleatorios secretos de calidad criptográfica, que se pueden usar como claves cuánticas para el cifrado, la comunicación segura de audio o video entre múltiples partes, la autenticación, las transacciones bancarias, el control de acceso a las instalaciones, el control de acceso a un sistema informático o una base de datos, control de acceso a un sistema de control online, acceso de vehículos, firmas digitales, voto electrónico, telepresencia u otra aplicación. Como números aleatorios, las claves cuánticas tienen secreto directo. Las claves cuánticas no dependen de ninguna clave secreta preestablecida, y no están sujetas a ataques convencionales, ni son vulnerables a futuros avances que exploten el aumento de la potencia informática o fallas descubiertas en los algoritmos de generación de claves. Durante la inscripción con cualquier tipo de dispositivo, la autoridad (101) de confianza puede generar claves de firma digital para identificar la autoridad (101) de confianza en el dispositivo (en cuyo caso, la autoridad de confianza envía la información de verificación correspondiente a ese dispositivo), recibir una contraseña de usuario y proporcionar una función de comprobación aleatoria y una versión cifrada de la contraseña del usuario para usar en la autenticación del usuario. La autoridad (101) de confianza puede recibir información de verificación del dispositivo (correspondiente a las claves de firma digital generadas por el dispositivo) para que la utilice la autoridad de confianza u otro dispositivo para identificar el dispositivo.
Algunas de las claves cuánticas producidas por QKD se pueden usar para la autenticación y otras operaciones de configuración antes de las siguientes sesiones de QKD, de modo que dichas operaciones de configuración sean automáticas y transparentes para el usuario. Por ejemplo, dichas claves cuánticas se pueden usar al reponer claves de firma digital y comunicar nueva información de verificación para las nuevas claves de firma digital.
En los ejemplos que se muestran en la Figura 1, el sistema informático que implementa la autoridad (101) de confianza tiene un receptor de control de calidad. Alternativamente, el sistema informático que implementa la autoridad (101) de confianza tiene un transmisor de QC, y la otra parte de QKD incluye un receptor de QC.
La Figura 2 muestra un entorno (200) operativo de ejemplo en el que una tarjeta (102) de QC distribuye además claves cuánticas obtenidas a través de QKD con la autoridad (101) de confianza. Una tarjeta (102) de QC puede distribuir claves cuánticas almacenadas a un teléfono (117) móvil o al ordenador (116) de un usuario. Por ejemplo, la tarjeta (102) de QC transmite las claves cuánticas a través de una conexión de fibra punto a punto o una conexión inalámbrica. O bien, una tarjeta (102) de QC proporciona claves cuánticas a un centro (113) de control de satélites, que carga las claves cuánticas a un satélite (118). La tarjeta (102) de QC puede distribuir de manera similar las claves de firma digital que ha generado y/o la información de verificación que ha recibido.
De esta forma, la tarjeta (102) de QC se puede usar como una "pistola de relleno" para cargar claves cuánticas (así como claves de firma digital y/o información de verificación) desde su memoria segura en un cifrador remoto en una nave espacial, nave naval u otro vehículo. Por ejemplo, la tarjeta (102) de QC se carga con claves cuánticas (así como claves de firma digital y/o información de verificación) mientras se acopla con una estación base en un terminal, se lleva a una nave espacial antes del lanzamiento y luego carga las claves cuánticas (así como claves de firma digital y/o información de verificación) en un dispositivo informático a bordo de la nave espacial. El dispositivo informático a bordo de la nave espacial puede usar las claves cuánticas para una comunicación segura con la terminal u otro dispositivo.
La Figura 3 muestra un entorno (300) operativo de ejemplo en el que las claves cuánticas distribuidas a través de QKD se usan para establecer una comunicación segura, se usan para la autenticación o se usan para el control de acceso. Con una o más claves cuánticas e información proporcionada por la autoridad (101) de confianza, un dispositivo de usuario puede comunicarse de forma segura con otro dispositivo de usuario directamente o a través de una red (130) pública tal como Internet. O bien, el dispositivo de usuario puede utilizar una clave cuántica para autenticarse ante otro dispositivo de usuario u obtener acceso a una instalación a través de un dispositivo (120) de control de acceso. Dentro de la red de dispositivos de usuario que han recibido claves cuánticas de QKD con la autoridad de confianza, un dispositivo de usuario puede establecer una conexión segura con cualquier otro dispositivo de usuario sin QKD entre los dos dispositivos de usuario.
La autoridad (101) de confianza puede usar una de sus claves de firma digital generadas previamente para firmar un mensaje a un dispositivo de usuario, que a su vez puede usar información de verificación recibida previamente (o recopilada recientemente, por ejemplo, en tiempo real a través de Internet de la autoridad (101) de confianza) para verificar la identidad de la autoridad (101) de confianza. Un dispositivo de usuario puede usar una de sus claves de firma digital generadas previamente para firmar un mensaje a otro dispositivo de usuario. El otro dispositivo de usuario puede usar la información de verificación recibida previamente para verificar la identidad del primer dispositivo de usuario, o puede solicitar dicha información de verificación a la autoridad (101) de confianza. En este rol, la autoridad (101) de confianza puede verificar las credenciales de un usuario en diversas etapas antes de distribuir información sobre el usuario, para verificar que las credenciales para el usuario no hayan sido revocadas.
Un dispositivo de usuario que se muestra en la Figura 3 puede adquirir sus claves cuánticas a través de cualquier forma de QKD con la autoridad (101) de confianza, con o sin seguir un protocolo de autenticación de múltiples factores como se describe en el presente documento. Algunos de los dispositivos de usuario que se muestran en la Figura 3 adquirieron claves cuánticas directamente a través de QKD con la autoridad (101) de confianza, como se ilustra en la Figura 1. Por ejemplo, el teléfono (107) móvil y la tarjeta (102) de QC adquirieron claves cuánticas de QKD con la autoridad de confianza. Las ordenadores (106) de usuario adquirieron claves cuánticas directamente desde una conexión local a un transmisor de QC convencional con un enlace QKD a la autoridad de confianza. Para dicha QKD, el dispositivo (102, 106 o 107) y la autoridad de confianza pueden seguir un protocolo de autenticación de múltiples factores para autenticar a un usuario. Otros dispositivos de usuario que se muestran en la Figura 3 adquirieron claves cuánticas de una tarjeta de QC, como se muestra en la Figura 2. Por ejemplo, el satélite (118), el teléfono (117) móvil y los ordenadores (116) de usuarios adquirieron claves cuánticas de una tarjeta (102) de QC. En cualquier caso, un dispositivo de usuario puede usar sus claves cuánticas en una ubicación diferente a la ubicación en la que se distribuyeron las claves cuánticas al dispositivo de usuario. De manera similar, las claves de firma digital pueden generarse en un dispositivo o transmitirse al dispositivo, y la información de verificación puede recibirse en un dispositivo o transmitirse al dispositivo.
La autoridad (101) de confianza es tanto un nodo de QC (como en la Figura 1) como un punto de contacto de red convencional. Además de QKD, que actúa en el papel de un servidor de red, la autoridad (101) de confianza puede intercambiar información usando comunicación de red convencional con un dispositivo de usuario que actúa en el papel de un cliente de red. De esta forma, el dispositivo de usuario puede recibir información que se puede utilizar en combinación con una de sus claves cuánticas almacenadas para establecer una conexión segura con otro dispositivo de usuario. O bien, el dispositivo del usuario puede recibir material de la autoridad (101) de confianza que se ha cifrado con una de sus claves cuánticas almacenadas. Además de administrar QKD (o realizar QKD que es administrada por otro sistema), la autoridad (101) de confianza puede cumplir el rol de autoridad de certificación (por ejemplo, generalmente para proporcionar funciones de un directorio de certificados) y autoridad de registro en una infraestructura de clave pública. ("PKI"). Asimismo, la autoridad (101) de confianza puede actuar como cliente de la red. Alternativamente, otro sistema cumple la función de autoridad de certificación y/o autoridad de registro.
Las claves cuánticas pueden facilitar la comunicación segura incluso cuando las claves cuánticas no se utilizan para el cifrado algorítmico. Si dos dispositivos de usuario tienen las mismas claves cuánticas, un primer dispositivo de usuario puede usar claves cuánticas almacenadas para determinar patrones para difundir contenido de información entre longitudes de onda y/o intervalos de tiempo de una señal, y luego distribuir la información de acuerdo con los patrones en transmisión. El segundo dispositivo de usuario determina los patrones de las claves cuánticas almacenadas y elimina el contenido de información de la señal que recibe. Los patrones dependen de las claves cuánticas almacenadas, pero la seguridad se proporciona en la capa física de la transmisión, no mediante el uso de las claves cuánticas almacenadas en el cifrado.
Cuando se utilizan claves cuánticas, la autoridad (101) de confianza puede estar en línea o fuera de línea. Por ejemplo, supóngase que dos dispositivos han adquirido claves cuánticas de QKD con la autoridad (101) de confianza. Para establecer una conexión segura con un segundo dispositivo de usuario, un primer dispositivo de usuario se pone en contacto con la autoridad (101) de confianza a través de una red (130) pública tal como Internet. El primer dispositivo de usuario recibe información de la autoridad (101) de confianza que puede usarse, con una clave cuántica en el primer dispositivo de usuario, para establecer una conexión segura con el segundo dispositivo de usuario. Los dispositivos de usuario primero y segundo pueden entonces usar una clave de sesión conjunta para una comunicación segura a través de la red (130) pública o de otro modo. Cuando se necesita información de una autoridad (101) de confianza en línea para establecer la comunicación, una autoridad (101) de confianza en línea puede verificar las credenciales de un usuario antes de proporcionar información sobre el usuario, para evitar que se produzca una comunicación segura cuando las credenciales para el usuario han sido revocadas.
O, la autoridad (101) de confianza puede proporcionar dicha información al primer dispositivo de usuario y/o al segundo dispositivo de usuario, y luego desconectarse. Incluso aunque la autoridad de confianza esté fuera de línea, los dispositivos de usuario primero y segundo pueden establecer posteriormente una conexión segura a través de la red (130) pública o directamente entre sí. En este caso, sin embargo, la autoridad (101) de confianza ya no proporciona verificación de credenciales.
En general, la información que proporciona la autoridad (101) de confianza para usar con las claves cuánticas puede proporcionarse de forma no secreta a través de la red (130) pública, ya que la información solo es útil para el poseedor de una clave cuántica. La Sección IV describe protocolos de ejemplo para una comunicación multipartita segura. Los protocolos de ejemplo se pueden usar para comunicaciones seguras, autenticación, control de acceso y otras aplicaciones en entornos operativos tal como el entorno de ejemplo (300) de la Figura 3.
II. Ejemplo de Dispositivos Móviles con Tarjeta de QC.
La Figura 4 es un diagrama de sistema que representa un dispositivo (400) móvil a manera de ejemplo que incluye una variedad de componentes opcionales de hardware y software. En general, un componente del dispositivo móvil puede comunicarse con cualquier otro componente, aunque no se muestran todas las conexiones para facilitar la ilustración. El dispositivo móvil puede ser cualquiera de una variedad de dispositivos informáticos (por ejemplo, teléfono celular, teléfono inteligente, ordenador de mano, asistente digital personal, etc.) y puede permitir comunicaciones bidireccionales inalámbricas con una o más redes (404) de comunicaciones móviles, tal como una red celular o satelital.
En particular, el dispositivo (400) móvil incluye una tarjeta (470) de QC y una memoria (472) segura para almacenar claves cuánticas. La memoria (472) segura también puede almacenar claves de firma digital, información de verificación, funciones de comprobación aleatoria y/o versiones cifradas de contraseñas de usuario.
El dispositivo móvil ilustrado puede incluir un controlador o procesador (410) (por ejemplo, procesador de señales, microprocesador, ASIC u otros circuitos lógicos de control y procesamiento) para realizar tareas tales como codificación de señales, procesamiento de datos, procesamiento de entrada/salida, control de potencia y/u otras funciones. Un sistema (412) operativo puede controlar la asignación y el uso de los componentes y proporcionar soporte para uno o más programas (414) de aplicación. Los programas de aplicación pueden incluir aplicaciones informáticas móviles comunes (por ejemplo, incluyen aplicaciones de correo electrónico, calendarios, administradores de contactos, navegadores web, aplicaciones de mensajería) o cualquier otra aplicación informática. En algunos escenarios, un programa de aplicación usa una o más de las claves cuánticas almacenadas en la memoria (472) segura para cifrar y/o descifrar información que se comunica con el dispositivo (400) móvil. O bien, un programa de aplicación utiliza una o más claves de firma digital para firmar un mensaje. O bien, un programa de aplicación usa información de verificación para verificar la identidad del autor de un mensaje.
El dispositivo móvil ilustrado puede incluir memoria (420). La memoria (420) puede incluir memoria (422) no extraíble y/o memoria (424) extraíble. La memoria (422) no extraíble puede incluir RAM, ROM, memoria flash, una unidad de disco u otras tecnologías de almacenamiento de memoria bien conocidas. La memoria (424) extraíble puede incluir una memoria flash o una tarjeta de módulo de identidad del suscriptor, que es muy conocida en los sistemas de comunicación GSM, u otras tecnologías de almacenamiento de memoria muy conocidas. La memoria (420) se puede utilizar para almacenar datos y/o código para ejecutar el sistema (412) operativo y las aplicaciones (414). Los datos de ejemplo pueden incluir páginas web, texto, imágenes, archivos de sonido, datos de video u otros conjuntos de datos para ser enviados y/o recibidos desde uno o más servidores de red u otros dispositivos móviles a través de una o más redes cableadas o inalámbricas.
El dispositivo móvil puede soportar uno o más dispositivos (430) de entrada, como una pantalla (432) táctil, micrófono (434), cámara (436), teclado (438) físico y/o rueda (439) de desplazamiento y uno o más dispositivos (450) de salida, tales como un altavoz (452) y una pantalla (454). La pantalla (432) táctil y/o la cámara (436) pueden proporcionar una funcionalidad rudimentaria para un lector biométrico, o el dispositivo (400) móvil puede incluir un lector (440) biométrico dedicado. Otros dispositivos de salida posibles (no mostrados) pueden incluir un dispositivo de salida piezoeléctrico u otro dispositivo háptico. Algunos dispositivos pueden cumplir más de una función de entrada/salida. Por ejemplo, la pantalla (432) táctil y la pantalla (454) se pueden combinar en un solo dispositivo de entrada/salida.
Un módem (460) inalámbrico se puede acoplar a una antena (no mostrada) y puede admitir comunicaciones bidireccionales entre el procesador (410) y los dispositivos externos. El módem (460) se muestra de forma genérica y puede incluir un módem celular para comunicarse con la red (404) de comunicaciones móviles y/u otros módems con base en radio (por ejemplo, Bluetooth o Wi-Fi). El módem (460) inalámbrico generalmente está configurado para comunicarse con una o más redes celulares, tal como una red GSM para comunicaciones de datos y voz dentro de una sola red celular, entre redes celulares o entre el dispositivo móvil y una red telefónica pública conmutada.
El dispositivo móvil puede incluir además al menos un puerto (480) de entrada/salida , una fuente (482) de alimentación, un receptor (484) del sistema de navegación por satélite como un receptor del sistema de posicionamiento global, un acelerómetro (486), un transceptor (488 ) (para transmitir señales analógicas o digitales de forma inalámbrica) y/o un conector (490) físico, que puede ser un puerto USB, un puerto IEEE 1394 (firewall) y/o un puerto RS-232. Los componentes ilustrados no son obligatorios ni incluyen todo, ya que los componentes se pueden eliminar y se pueden agregar otros. Una clave cuántica almacenada en la memoria (472) segura se puede usar para cifrar y/o descifrar información transmitida o recibida en comunicaciones no cuánticas a través de un canal público utilizando el módem (460), puerto (480), transceptor (488) o conector (490) físico.
III. Ejemplos de Sistemas Computacionales.
La Figura 5 ilustra un ejemplo generalizado de un sistema (500) informático adecuado en el que se pueden implementar varias de las innovaciones descritas. El sistema (500) informático no pretende sugerir ninguna limitación en cuanto al alcance del uso o la funcionalidad, ya que las innovaciones pueden implementarse en diversos sistemas informáticos de propósito general o de propósito especial. El sistema (500) informático puede implementar una autoridad confiable que proporciona una característica de las innovaciones del protocolo de autenticación multifactor descritas en el presente documento. O bien, el sistema (500) informático puede implementar una característica de las innovaciones del protocolo de autenticación multifactor descritas en el presente documento en el papel de un dispositivo de usuario.
Con referencia a la Figura 5, el sistema (500) informático incluye una o más unidades (510, 515) de procesamiento y memoria (520, 525). En la Figura 5, esta configuración (530) más básica se incluye dentro de una línea discontinua. Las unidades (510, 515) de procesamiento ejecutan instrucciones ejecutables por ordenador. Una unidad de procesamiento puede ser una unidad central de procesamiento ("CPU") de uso general, un procesador en un circuito integrado de aplicación específica ("ASIC") o cualquier otro tipo de procesador. En un sistema de procesamiento múltiple, múltiples unidades de procesamiento ejecutan instrucciones ejecutables por ordenador para aumentar la potencia de procesamiento. Por ejemplo, la Figura 5 muestra una unidad (510) de procesamiento central, así como una unidad de procesamiento de gráficos o una unidad (515) de coprocesamiento. La memoria (520, 525) tangible puede ser memoria volátil (por ejemplo, registros, caché, RAM), memoria no volátil (por ejemplo, ROM, EEPROM, memoria flash, etc.), o alguna combinación de los dos, accesible por las unidades de procesamiento. La memoria (520, 525) almacena software (580) que implementa una o más innovaciones para el protocolo de autenticación multifactor utilizando QC, en forma de instrucciones ejecutables por ordenador adecuadas para ser ejecutadas por las unidades de procesamiento.
Un sistema informático puede tener características adicionales. Por ejemplo, el sistema (500) informático incluye almacenamiento (540), uno o más dispositivos (550) de entrada, uno o más dispositivos (560) de salida y una o más conexiones (570) de comunicación. Un mecanismo de interconexión (no mostrado) tal como un bus, controlador o red interconecta los componentes del sistema (500) informático. Normalmente, el software del sistema operativo (no mostrado) proporciona un entorno operativo para otro software que se ejecuta en el sistema (500) informático y coordina las actividades de los componentes del sistema (500) informático.
El almacenamiento (540) tangible puede ser removible o no removible, e incluye discos magnéticos, cintas o casetes magnéticos, CD-ROM, DVD o cualquier otro medio que pueda usarse para almacenar información de manera no transitoria y que pueda ser accedido dentro del sistema (500) informático. El almacenamiento (540) almacena instrucciones para el software (580) que implementa una o más innovaciones para un protocolo de autenticación multifactor usando QC.
Los dispositivos (550) de entrada pueden ser un dispositivo de entrada táctil, tal como un teclado, un mouse, un bolígrafo o una bola de desplazamiento, un dispositivo de entrada de voz, un dispositivo de escaneo, una cámara u otro dispositivo que proporcione entrada al sistema (500) informático. Los dispositivos (560) de salida pueden ser una pantalla, una impresora, un altavoz, una grabadora de CD u otro dispositivo que proporcione una salida desde el sistema (500) informático.
Las conexiones (570) de comunicación permiten la comunicación a través de un medio de comunicación a otra entidad informática. El medio de comunicación transmite información, tal como instrucciones ejecutables por ordenador, entrada o salida de audio o video, u otros datos en una señal de datos modulados. Una señal de datos modulados es una señal que tiene una o más de sus características configuradas o cambiadas de tal manera que codifican información en la señal. A modo de ejemplo, y sin limitación, los medios de comunicación pueden utilizar un portador eléctrico, óptico, RF u otro.
Las innovaciones se pueden describir en el contexto general de los medios legibles por ordenador. Los medios legibles por ordenador son cualquier medio tangible disponible al que se pueda acceder dentro de un entorno informático. A modo de ejemplo, y sin limitación, con el sistema (500) informático, los medios legibles por ordenador incluyen memoria (520, 525), almacenamiento (540) y combinaciones de cualquiera de los anteriores.
Las innovaciones se pueden describir en el contexto general de las instrucciones ejecutables por ordenador, tal como las incluidas en los módulos de programa, que se ejecutan en un sistema informático en un procesador real o virtual de destino. Generalmente, los módulos de programa incluyen rutinas, programas, bibliotecas, objetos, clases, componentes, estructuras de datos, etc. que realizan tareas particulares o implementan tipos de datos abstractos particulares. La funcionalidad de los módulos de programa puede combinarse o dividirse entre módulos de programa según se desee en diversas realizaciones. Las instrucciones ejecutables por ordenador para módulos de programa pueden ejecutarse dentro de un sistema informático local o distribuido.
En aras de la presentación, la descripción detallada utiliza términos como "determinar" y "utilizar" para describir las operaciones informáticas en un sistema informático. Estos términos son abstracciones de alto nivel para operaciones realizadas por un ordenador y no deben confundirse con actos realizados por un ser humano. Las operaciones informáticas reales correspondientes a estos términos varían según la implementación.
IV. Distribución de Claves Cuánticas que Facilita la Comunicación Segura de Múltiples Partes.
Establecer claves de sesión secretas compartidas es un objetivo principal de las comunicaciones seguras. El uso de claves de sesión secretas compartidas permite a los usuarios lograr la confidencialidad y verificar la autenticidad de sus mensajes. Múltiples protocolos (por ejemplo, Needham-Schroeder y Shoup-Rubin; transporte de claves con base en cifrado simétrico; acuerdo de claves con base en técnicas simétricas) brindan formas de establecer claves de sesión secretas compartidas para una red de comunicaciones segura de N usuarios. En dichos protocolos, cada usuario tiene una clave secreta a largo plazo preestablecida que se comparte con una autoridad de confianza. Los pares de usuarios obtienen claves de cifrado de claves algorítmicamente a partir de sus claves a largo plazo a través de una comunicación adicional con la autoridad de confianza. Las claves de cifrado de claves se utilizan luego para establecer claves de sesión secretas entre pares de usuarios.
La distribución segura de claves a largo plazo puede ser problemática. En la práctica, las claves a largo plazo se pueden distribuir fuera de banda, por mensajería o haciendo que cada usuario lleve su dispositivo a la proximidad física de la autoridad de confianza para la entrega directa de la clave a largo plazo. Dichos métodos de distribución de claves a largo plazo son engorrosos y susceptibles de compromiso. Alternativamente, la criptografía de clave pública podría usarse para la distribución de claves a largo plazo, pero la criptografía de clave pública es susceptible a ataques de archivo.
Adicionalmente, además de la distribución de claves a largo plazo, debido a que las claves de cifrado de claves se derivan algorítmicamente de las claves a largo plazo, estos protocolos carecen de seguridad directa. Si una clave a largo plazo se ve comprometida, o si el algoritmo criptográfico utilizado para derivar claves de cifrado de claves a partir de claves a largo plazo se rompe, la confidencialidad de las claves posteriores no está garantizada, ya que las claves posteriores se pueden predecir a partir de claves anteriores conocidas.
Los protocolos que se describen a continuación utilizan QKD para proporcionar claves a los usuarios. No se requiere la colocación previa de claves a largo plazo fuera de banda, por mensajería, por criptografía de clave pública o por entrega en proximidad física.
A. Protocolos de Ejemplo para QKD Entre la Autoridad de Confianza y los Usuarios
La Figura 6 ilustra un protocolo (600) de ejemplo generalizado que incluye QKD entre una autoridad de confianza y uno o más dispositivos de usuario para establecer claves para una comunicación multipartita segura. A través del protocolo (600), cada uno de los múltiples usuarios realiza QKD (por ejemplo, QKD de punto a punto u otra QKD) con una autoridad de confianza para establecer claves con confidencialidad directa. La autoridad de confianza también proporciona a cada usuario una tabla de búsqueda no secreta de la que se pueden derivar las claves de otros usuarios. No se requiere QKD de usuario a usuario, pero muchos de los beneficios y ventajas de QKD se conservan en la comunicación de usuario a usuario.
La Figura 6 detalla las operaciones entre un primer dispositivo de usuario ("dispositivo 1 de usuario ") y la autoridad de confianza. Las operaciones de autenticación y QKD se repiten entre la autoridad de confianza y cada uno de N dispositivos i de usuario, por 1 < i < N. Alternativamente, la autoridad de confianza establece las claves con un dispositivo que actúa como una pistola de llenado, eventualmente distribuyendo las claves a un dispositivo de usuario para una comunicación multipartita segura con uno o más dispositivos de usuario. Sin pérdida de generalidad, por motivos de presentación, las operaciones del protocolo (600) se describen con referencia a un dispositivo de usuario.
Autenticación con Clave Precolocada. El primer dispositivo de usuario recibe indicios biométricos. B para el usuario, Por ejemplo, los indicios biométricos son datos de exploración de huellas dactilares. En lugar de o además de las indicaciones biométricas, el dispositivo de usuario puede aceptar y cifrar la entrada de pulsaciones de teclas para un número de identificación personal. El primer dispositivo de usuario encripta los indicios biométricos B usando un algoritmo de encriptación E [ a; b]. Por ejemplo, el primer dispositivo de usuario utiliza una clave de autenticación corta preestablecida AK0(1) para la primera sesión de QKD con la autoridad de confianza. El algoritmo de cifrado E [ a; b] puede ser un algoritmo de cifrado de clave simétrica de información a con clave B, como AES (véase FIPS 197 "The Advanced Encryption Standard (AES)")) u otro algoritmo de cifrado. Generalmente, la información de autenticación cifrada se envía a través de una red no segura, tal como una red pública. La autoridad de confianza recibe la información de autenticación cifrada y la descifra utilizando el algoritmo adecuado (por ejemplo, algoritmo de cifrado de clave simétrica) y la clave de autenticación preestablecida AK0(1) del primer dispositivo de usuario. La autoridad de confianza compara la información de autenticación recibida con la información de identificación previamente proporcionada para el primer usuario y, si corresponde, autentica al usuario.
Autenticación Multifactor. Alternativamente (no se muestra en la Figura 6), el primer dispositivo de usuario y la autoridad de confianza pueden participar en la autenticación de múltiples factores usando q C como se describe en la Sección VI para autenticar al usuario.
QKD Después de la Autenticación con Clave Precolocada. Suponiendo que el usuario se haya autenticado, el primer dispositivo de usuario y la autoridad de confianza realizan QKD para generar una secuencia de bits aleatoria secreta que se analiza en claves. Por ejemplo, el dispositivo de usuario y la autoridad de confianza generan N - 1 claves secretas de cifrado independientes y N- 1 claves secretas de derivación de claves independientes, que son compartidas por el dispositivo de usuario y la autoridad de confianza, y que se almacenan en una memoria segura en la autoridad de confianza y el dispositivo de usuario. En implementaciones de ejemplo, la autoridad de confianza y el dispositivo i de usuario analizan la serie de bits compartidos en las siguientes claves:
N- 1 claves de cifrado k (I, j) por j t I ,
N - 1 clave de derivación de claves L(i, j) por j t i,
una clave de autenticación clave M(i) y
una nueva clave de autenticación AlKx(i).
Las claves de cifrado K(I, j), claves de derivación de claves L(i, j), y clave de autenticación de clave M(i) puede tener 256 bits por clave o alguna otra cantidad de bits por clave. La Figura 6 muestra la distribución de claves de cifrado compartidas K(1, j), claves de derivación L(1, j), una clave de autenticación de clave M(1) y una clave de autenticación nueva AKi(1) para el primer dispositivo de usuario. Las claves de cifrado K(1, j), claves de derivación de claves L(1, j) y clave de autenticación de clave M(1) se utilizan como se describe a continuación. La clave de autenticación inicial AK0(1) del primer dispositivo de usuario ya no necesita mantenerse en secreto. Se reemplaza con una nueva clave de autenticación AK1(1) producida en la q Kd , para su uso en la autenticación del usuario en una futura sesión de QKD con la autoridad de confianza.
A diferencia de los enfoques convencionales que requieren la colocación de claves a largo plazo fuera de banda, por mensajería o por proximidad física, a partir de una clave de autenticación secreta preestablecida corta AK0(I), QKD proporciona una capacidad esencialmente ilimitada para generar nuevas cadenas de bits secretas compartidas por la autoridad de confianza y el usuario I. Además, las nuevas cadenas de bits secretas para K(i, j), L(i, j), M(i) y AKx ( í) no tienen dependencia algorítmica de la clave de autenticación preestablecida AK0(i).
De acuerdo con el protocolo (600) que se muestra en la Figura 6, la autoridad de confianza repite la autenticación y QKD para cada uno o más dispositivos de usuario. Por lo tanto, usar su clave de autenticación preestablecida AKq(í ), cada usuario i, por 1 < i < N, establece una sesión QKD con la autoridad de confianza y establece claves compartidas con la autoridad de confianza.
QKD como parte de la Autenticación Multifactor. Alternativamente (no se muestra en la Figura 6), el primer dispositivo de usuario y la autoridad de confianza pueden realizar QKD como parte de la autenticación multifactor utilizando QC como se describe en la Sección VI. En este caso, el primer dispositivo de usuario y la autoridad de confianza realizan QKD para generar una secuencia de bits aleatoria secreta que se analiza en claves. Por ejemplo, el dispositivo de usuario y la autoridad de confianza generan N - 1 claves secretas de cifrado independientes y N - 1 clave secreta independiente de derivación de claves, que son compartidas por el dispositivo del usuario y la autoridad de confianza, y que se almacenan en una memoria segura en la autoridad de confianza y el dispositivo del usuario. En implementaciones de ejemplo, la autoridad de confianza y el dispositivo de usuario i analizan la serie de bits compartidos en las siguientes claves:
N- 1 claves de cifrado K(i, j) para j t i,
N- 1 clave de derivación de claves L(i, j) para j t i, y
una clave de autenticación clave M(i).
Las claves de cifrado K(i, j), claves de derivación de claves L(i, j), y clave de autenticación de clave M(i) puede tener 256 bits por clave o alguna otra cantidad de bits por clave. Las claves de cifrado K(1, j), claves de derivación de claves L(1, j) y la clave de autenticación de clave M(1) se utilizan como se describe a continuación. La autoridad de confianza puede repetir la autenticación y QKD para cada uno o más dispositivos de usuario.
Generación de Pares de Claves y Claves de Autenticación de Valores. Siguiendo QKD con los N dispositivos de usuario, la autoridad de confianza almacena las claves de cifrado K(i, j), claves de derivación de claves L(i, j), y clave de autenticación de clave M(i) para los N dispositivos de usuario, y cada uno de los N dispositivos i de usuario almacena las claves de cifrado K(i, j), claves de derivación de claves L(i, j), y clave de autenticación de clave M(i) para ese dispositivo i de usuario. Por lo general, las claves se almacenan en una memoria segura. Por ejemplo, si hay cinco dispositivos de usuario, la autoridad de confianza almacena las claves de cifrado y las claves de derivación de claves de la siguiente manera.
Figure imgf000015_0001
Y cada dispositivo i de usuario almacena las claves de cifrado y las claves de derivación de claves de una de las columnas de las tablas.
Volviendo a la Figura 6, la autoridad de confianza determina las claves de par P(i, j) y valores clave de autenticación A(i, j). Cada una de las claves de par y cada uno de los valores de autenticación de clave es específico para la comunicación por pares entre un dispositivo i de usuario y dispositivo j de usuario. En las implementaciones de ejemplo, la autoridad de confianza calcula las claves P(i, j) y valores de autenticación clave A(i, j) de la siguiente manera:
Figure imgf000015_0002
donde © indica una operación XOR bit a bit, y H[ a; B] indica una función de comprobación aleatoria tecleada de entrada a con llave B. Por ejemplo, la función de comprobación aleatoria con clave H[ a; B] es una función de comprobación aleatoria criptográfica con clave tal como HMAC-SHA-256 (ver FIPS 198 "El código de autenticación de mensajes de comprobación aleatoria con clave (HMAC)") u otra función de comprobación aleatoria con clave. Alternativamente, la función de comprobación aleatoria H[] es otro tipo de función de comprobación aleatoria que no es una función de comprobación aleatoria con clave. Las claves de par y los valores de autenticación de clave pueden tener cada uno 256 bits o algún otro número de bits. La autoridad de confianza puede organizar las claves de par y los valores de autenticación de clave como dos tablas de búsqueda o con otras estructuras de datos. Por ejemplo, si hay cinco dispositivos de usuario, la autoridad de confianza determina las claves de par y los valores de autenticación de claves de la siguiente manera a partir de las claves de cifrado y las claves de derivación de claves que se muestran arriba.
Figure imgf000016_0001
Las llaves del par P(i, j) y valores clave de autenticación A(i, j) no es necesario mantenerlo en secreto. Generalmente, la autoridad de confianza hace que las claves del par P(I, j) y valores de autenticación clave A(i, j) disponibles para su distribución a los respectivos dispositivos de usuario a través de una red no segura, como una red pública. Un dispositivo de usuario dado I recupera el par de llaves P(i, j) y valores de autenticación clave A(i,j) que usa. Por ejemplo, el primer dispositivo de usuario de la Figura 6 recupera el par de claves P(1, j) y valores de autenticación clave A(1, j) específicos para el primer dispositivo de usuario. Los dispositivos de los usuarios pueden recuperar y almacenar las claves de par y los valores de autenticación de claves para su uso durante la comunicación posterior entre los dispositivos de los usuarios, incluso si la autoridad de confianza está fuera de línea. O bien, si la autoridad de confianza está en línea durante la comunicación posterior entre dispositivos de usuario, un dispositivo i de usuario puede recuperar las claves de par y los valores de autenticación de clave para el dispositivo i en el momento de la comunicación, o puede recuperar solo la clave y el valor de autenticación específicos para comunicación desde el dispositivo i de usuario al dispositivo j de usuario de la autoridad de confianza en línea.
Como se explica en el documento WO 2012/044855, a partir de su clave de derivación clave L(i, j) y de una clave de par P(i, j) proporcionada por la autoridad de confianza, un dispositivo i de usuario puede derivar la clave de cifrado K(j, i) que otro dispositivo j de usuario usó en la comunicación con el dispositivo ide usuario. De su clave de autenticación, clave M(i), y el valor de autenticación, clave A(i, j), proporcionada por la autoridad de confianza, el dispositivo i de usuario puede verificar que la clave de cifrado K(j, i) es auténtica. El dispositivo j de usuario puede derivar y autenticar de manera similar la clave de cifrado k(i, j) del dispositivo i de usuario. Utilizando una o ambas claves de cifrado, los dos dispositivos de usuario pueden establecer una o más claves de sesión secretas compartidas para las comunicaciones entre ellos.
Debido a que QKD genera las claves de cifrado y las claves de derivación de claves, son independientes y no dependen de ningún secreto preestablecido. Como tal, el protocolo (600) que se muestra en la Figura 6 proporciona una sólida seguridad hacia adelante que es superior a los protocolos convencionales para la comunicación multipartita. Además, se pueden generar nuevas claves de cifrado y claves de derivación de claves en futuras sesiones de QKD entre los dispositivos de los usuarios y la autoridad de confianza. Además, la autoridad de confianza puede agregar usuarios adicionales a la red de comunicación. Para este propósito, la autoridad de confianza puede asignar claves de encriptación y claves de derivación de claves adicionales para un dispositivo i de usuario dado para usar con dispositivos de usuario nuevos por determinar, distribuir claves de encriptación y claves de derivación de claves por QKD con un nuevo dispositivo de usuario cuando se agrega el nuevo dispositivo de usuario y se actualizan las claves de par y los valores de autenticación de clave para su distribución.
Las claves establecidas mediante QKD se pueden utilizar para facilitar la comunicación segura entre múltiples partes. En el documento se detallan implementaciones de ejemplo de comunicación multipartita segura facilitada con claves de derivación de claves, claves de cifrado, claves de autenticación de claves, claves de pares y valores de autenticación de claves. Solicitud de Patente de EE.UU. No. 12/895367, presentada el 30 de septiembre de 2010, y Solicitud de Patente PCT No. PCT/US2011/054070, presentada el 29 de septiembre de 2011, que ha sido publicado como el documento WO 2012/044855. Estas aplicaciones también detallan enfoques para la codificación de grupos.
B. Técnicas Generalizadas para QKD que Facilitan la Comunicación Segura entre Múltiples Partes
La Figura 7 muestra una técnica (700) generalizada para la distribución de claves entre una autoridad de confianza y uno o más dispositivos de usuario para distribuir claves para una comunicación multipartita segura. Un sistema informático que implementa una autoridad de confianza realiza la técnica (700).
La autoridad de confianza establece (710) una relación de confianza entre la autoridad de confianza y un usuario. Por ejemplo, la autoridad de confianza autentica al usuario utilizando indicios biométricos y/o información de identificación personal (por ejemplo, un PIN) proporcionada por el usuario para establecer la relación de confianza. En algunas implementaciones, las indicaciones biométricas y/o la información de identificación personal se cifran antes de la transmisión a la autoridad de confianza a través de un canal público. El cifrado utiliza una clave secreta previamente colocada, que se puede reemplazar con otra clave secreta de los resultados de QKD, para usar en la autenticación antes de una sesión de QKD posterior. Alternativamente, la autoridad de confianza establece la relación de confianza utilizando otro mecanismo.
Una vez establecida la relación de confianza, la autoridad de confianza distribuye (720) una o más claves cuánticas por QKD bajo la relación de confianza entre la autoridad de confianza y el usuario. En este QKD, las claves cuánticas se pueden proporcionar directamente a un dispositivo de usuario del usuario. O bien, las claves cuánticas pueden proporcionarse a un dispositivo de pistola de relleno que posteriormente proporciona las claves cuánticas a un dispositivo de usuario del usuario. Las claves cuánticas distribuidas por QKD se generan aleatoriamente y, por lo tanto, se supone que son diferentes de un usuario a otro. Cada clave cuántica es, en términos literales, una serie de valores binarios. Las definiciones de las claves cuánticas dependen del escenario en el que se utilizan las claves cuánticas. Los escenarios de ejemplo se analizan a continuación.
Alternativamente, la autenticación multifactor que usa QC (como se describe en la Sección VI) se usa en lugar de las etapas (710) y (720) para distribuir claves cuánticas por QKD.
La autoridad (730) de confianza determina si repetir estos actos de QKD para otro usuario y, si es así, continúa estableciendo (710) una relación de confianza con otro usuario. De esta forma, la autoridad de confianza distribuye diferentes claves cuánticas para uso de los usuarios (dispositivos de usuario) en una comunicación segura de múltiples partes.
Posteriormente, la autoridad de confianza determina (740) una o más claves de combinación con base al menos en parte en las claves cuánticas distribuidas por la autoridad de confianza. En particular, la autoridad de confianza determina una clave de combinación a partir de una clave cuántica distribuida para un primer usuario (primer dispositivo de usuario) y una clave cuántica distribuida para un segundo usuario (segundo dispositivo de usuario), donde la clave de combinación está adaptada para la comunicación entre el primer dispositivo de usuario y el segundo dispositivo de usuario. Por ejemplo, el primer dispositivo de usuario puede usar la clave de combinación, en combinación con la clave cuántica distribuida para el primer dispositivo de usuario, para determinar la clave cuántica distribuida para el segundo dispositivo de usuario. Una clave de combinación es, en términos literales, una serie de valores binarios. La definición de la clave de combinación depende del escenario en el que se genera y utiliza la clave de combinación. Los escenarios de ejemplo se analizan a continuación.
La autoridad de confianza pone a disposición (750) las claves de combinación para su distribución a los dispositivos de los usuarios. De esta forma, la autoridad de confianza facilita la comunicación segura entre los respectivos usuarios, incluso en ausencia de QKD directamente entre los dispositivos de los usuarios. Las formas en que se organizan y entregan las claves de combinación dependen de la implementación. Por ejemplo, las claves de combinación están organizadas como una tabla de búsqueda que está disponible para distribución no secreta a través de la Web u otro canal público. O, aunque no es necesario mantener en secreto las claves de combinación, algunas o todas las claves de combinación se proporcionan a los respectivos dispositivos de usuario a través de un canal no público. Alternativamente, las claves de combinación se organizan y/o entregan utilizando otro mecanismo.
En algunos escenarios, una clave cuántica para un primer usuario (primer dispositivo de usuario) es una clave de derivación de clave y una clave cuántica para un segundo usuario (segundo dispositivo de usuario) es una clave de cifrado para el segundo dispositivo de usuario. Por ejemplo, en términos de los protocolos de ejemplo explicados con referencia a la Figura 6, la clave de obtención de claves es una clave L(1,2) para el dispositivo 1 de usuario, y la clave de cifrado es una clave K(2, 1) para el dispositivo 2 de usuario. La clave de combinación es una clave de par P(1, 2) calculada como el XOR bit a bit de L(1,2) y K(2, 1). Alternativamente, la clave de combinación se determina utilizando otro mecanismo. En general, para dos dispositivos de usuario cualquiera, la función del dispositivo de usuario que tiene la clave de cifrado y la del dispositivo de usuario que tiene la clave de derivación de clave se puede cambiar para cambiar qué dispositivo de usuario obtiene la clave de cifrado del otro.
En otros escenarios, las claves cuánticas para un primer usuario (primer dispositivo de usuario) incluyen una primera clave de derivación de claves y una clave de cifrado para el primer dispositivo. Las claves cuánticas para un segundo usuario (segundo dispositivo de usuario) incluyen una segunda clave de derivación de clave y una clave de cifrado para el segundo dispositivo de usuario. La autoridad de confianza determina una primera clave de combinación a partir de la primera clave de derivación de clave y la clave de cifrado para el segundo dispositivo de usuario, y determina una segunda clave de combinación a partir de la segunda clave de derivación de clave y la clave de cifrado para el primer dispositivo. Por ejemplo, en términos de los protocolos de ejemplo explicados con referencia a la Figura 6, las primeras claves cuánticas incluyen L(1, 2) y K(1, 2) para el dispositivo 1 de usuario, y las segundas claves cuánticas incluyen L(2, 1) y K(2, 1) para el dispositivo 2 de usuario. Clave de par P(1, 2) es el Xo R bit a bit de L(1, 2) y K(2, 1), y clave de par P(2, 1) es el XOR bit a bit de L(2, 1) y k(1,2). Alternativamente, las claves de combinación se determinan usando otro mecanismo. Posteriormente, el primer dispositivo de usuario puede determinar la clave de cifrado del segundo dispositivo de usuario a partir de la primera clave de combinación y la primera clave de derivación de clave. De forma similar, el segundo dispositivo de usuario puede determinar la clave de cifrado del primer dispositivo de usuario a partir de la segunda clave de combinación y la segunda clave de derivación de clave.
En cualquiera de estos escenarios, la cantidad de claves cuánticas distribuidas se puede aumentar para adaptarse a la comunicación con más usuarios y dispositivos de usuario. La autoridad de confianza puede actualizar las claves de combinación cuando se agregan más usuarios a la red. La autoridad de confianza puede reabastecer a los usuarios con nuevas claves cuánticas según sea necesario, actualizando las claves de combinación en consecuencia.
Además de determinar y distribuir claves de combinación, la autoridad de confianza puede distribuir claves de autenticación de clave y valores de autenticación de clave para la autenticación de dispositivos de usuario. Por ejemplo, las claves cuánticas distribuidas para un usuario incluyen una clave de autenticación de clave para el usuario (dispositivo de usuario). En términos de los protocolos de ejemplo explicados con referencia a la Figura 6, M(1) es un ejemplo de una clave de autenticación de clave en las claves cuánticas para el dispositivo 1 de usuario, y M(2) es un ejemplo de una clave de autenticación de clave en las claves cuánticas para el dispositivo 2 de usuario. La autoridad de confianza crea uno o más valores de autenticación clave que están disponibles para su distribución. Por ejemplo, la autoridad de confianza determina un valor de autenticación clave utilizando una función de comprobación aleatoria criptográfica de una clave de autenticación clave para un dispositivo de usuario y una clave de cifrado para otro dispositivo de usuario. Como alternativa, el valor de autenticación de la clave se crea utilizando otro mecanismo. Posteriormente, el primer dispositivo de usuario puede usar su clave de autenticación de clave y el valor de autenticación de clave para verificar el valor de una clave de cifrado que ha derivado para el otro dispositivo de usuario.
C. Ejemplo de autenticación con base en contraseña usando un QIP
La autenticación con base en contraseña mediante un protocolo de identificación cuántica ("QIP") se puede realizar entre un dispositivo de usuario determinado y una autoridad de confianza antes de comenzar uno de los protocolos QKD descritos anteriormente. Por ejemplo, la autenticación con base en contraseña mediante un QIP se usa para generar una clave de autenticación inicial (en lugar de usar una clave de autenticación preestablecida), y luego se usa uno de los protocolos QKD descritos anteriormente para realizar QKD entre la autoridad de confianza y dispositivo de usuario para establecer claves para una comunicación multipartita segura u otro propósito.
En la autenticación con base en contraseña que usa un QIP, una contraseña w(i) para un usuario i se comparte con la autoridad de confianza. Diferentes usuarios tienen diferentes contraseñas. La autoridad de confianza almacena las diferentes contraseñas para los respectivos usuarios en una memoria segura en el sistema que implementa la autoridad de confianza. La contraseña w(i) se utiliza para la autenticación entre la autoridad de confianza y un usuario i, pero la contraseña w(i) no se comunica en sí misma entre el usuario i y autoridad de confianza, incluso en forma encriptada. Como tal, la información sobre la contraseña w(i) no se revela de acuerdo con el QIP, y la contraseña se puede usar varias veces sin comprometer la seguridad.
Las partes constituyentes de una contraseña w(i) dependen de la implementación. Por ejemplo, una contraseña w(i) puede incluir: (1) una parte que ingresa el usuario i y es relativamente fácil de memorizar para el usuario (tal como una serie de 8 a 12 caracteres alfanuméricos o caracteres ASCII especiales en un teclado convencional), (2) una parte que se almacena en una memoria segura en el dispositivo del usuario (como una cadena más larga de bits aleatorios que definen una clave de alta entropía), y/o (3) una parte que representa un resumen de indicios biométricos (tales como datos de escaneo de huellas dactilares) proporcionada por el usuario i . Alternativamente, la contraseña w tiene otras partes y/o adicionales.
Para la autenticación entre el usuario I y autoridad de confianza, la contraseña W(i) se utiliza dentro de un QIP para convencer a la autoridad de confianza de que el usuario no es un impostor y para evitar que un usuario honesto establezca claves cuánticas con una autoridad de confianza falsa. Si una autoridad de confianza falsa no puede hacerse pasar por una autoridad de confianza real, la autoridad de confianza falsa no puede convencer a un usuario autorizado para realizar QKD con la autoridad de confianza falsa. Por ejemplo, como parte del QIP:
• un dispositivo de usuario para el usuario I genera una cadena de bits aleatorios, codifica los bits como estados cuánticos de acuerdo con bases asignadas aleatoriamente (por ejemplo, rectilíneo o diagonal), y transmite (a través del canal cuántico) dicha información de estado cuántico a la autoridad de confianza;
• la autoridad de confianza recibe la información del estado cuántico y mide los estados cuánticos de acuerdo con un patrón de bases que depende de la contraseña w(i) (por ejemplo, usando un patrón de bases de medición rectilíneas/diagonales seleccionadas en función de la contraseña w(i);
el dispositivo i de usuario selecciona una primera función de comprobación aleatoria que se aplicará a los bits secretos compartidos del QIP, y el dispositivo de usuario transmite (a través de un canal convencional) una indicación de la primera función de comprobación aleatoria a la autoridad de confianza junto con el patrón de envío de bases que utilizó en la transmisión cuántica;
• el dispositivo i de usuario y la autoridad de confianza determinan los bits secretos compartidos para el QIP como aquellos bits para los cuales la base de envío coincidió con la base de medición (el dispositivo de usuario determina el patrón de bases de medición a partir de la contraseña w(i));
• la autoridad de confianza selecciona una segunda función de comprobación aleatoria para aplicarla a la contraseña w(i), y la autoridad de confianza transmite (a través del canal convencional) una indicación de la segunda función de comprobación aleatoria al dispositivo i del usuario junto con un código de autenticación del mensaje que depende en parte (por ejemplo, clave de alta entropía) de la contraseña w(i);
el dispositivo i de usuario autentica la autoridad de confianza con base en el código de autenticación del mensaje y su versión almacenada de la parte (por ejemplo, clave de alta entropía) de la contraseña w(i);
el dispositivo i de usuario calcula un valor de verificación con base en (a) la aplicación de la primera función de comprobación aleatoria a su versión de los bits secretos compartidos y (b) la aplicación de la segunda función de comprobación aleatoria a la contraseña W(i), y el dispositivo de usuario transmite (a través de un canal convencional) el valor de verificación a la autoridad de confianza; y
• la autoridad de confianza calcula su propia versión del valor de verificación y lo compara con el valor de verificación recibido del dispositivo i del usuario, para autenticar el dispositivo del usuario.
Para obtener detalles adicionales sobre las variaciones de los QIP, véase, por ejemplo, Damgard et al.,"Secure Identification and QKD in the Bounded-Quantum-Storage Model," Crypto 2007, Lecture Notices Computer Science 4622, páginas 342-359 (2007).
En el QIP, la cadena de bits secretos determinada por el dispositivo i del usuario coincidirá con la cadena de bits secretos determinada por la autoridad de confianza solo si la autoridad de confianza tiene la contraseña w(i) y el dispositivo de usuario tiene la contraseña w(i). De lo contrario, el patrón de bases de medición determinado por la autoridad de confianza no coincidirá con el patrón de bases de medición determinado en el dispositivo i de usuario. Además, sin traicionar los detalles de la contraseña. W(i), el QIP permite que la autoridad de confianza verifique la identidad del usuario y convence al usuario de que la autoridad de confianza es legítima.
Los bits aleatorios secretos que resultan de QIP se pueden usar para generar una clave de autenticación inicial AK0 para utilizar la autenticación del usuario al establecer claves cuánticas con la autoridad de confianza. Los bits secretos que resultan del QIP son compartidos por el dispositivo del usuario y la autoridad de confianza. Algunos o todos los bits secretos se pueden usar directamente para formar la clave AK0, o algunos o todos los bits secretos se pueden codificar para formar la clave AK0. El dispositivo de usuario y la autoridad de confianza luego usan la clave AK0 para iniciar QKD para establecer claves para la comunicación segura multipartita u otro propósito de acuerdo con uno de los protocolos QKD descritos anteriormente. Se puede utilizar una de las claves establecidas en QKD para actualizar parte de la contraseña w(i) (por ejemplo., para reemplazar la clave de alta entropía en la memoria segura en el dispositivo del usuario y la autoridad de confianza) en lugar de actualizar la clave AK0. O la misma contraseña w(i)simplemente se puede reutilizar para futuras autenticaciones. Alternativamente, la autenticación con base en contraseña usando un QIP se usa para establecer una relación de confianza entre la autoridad de confianza y el usuario dado (en lugar de una autenticación posterior usando una clave de autenticación inicial AK0).
La autenticación con base en contraseña mediante un QIP puede proporcionar seguridad en caso de pérdida de un dispositivo de usuario. Sin la parte de una contraseña que el usuario proporciona como entrada (o sin los indicios biométricos que el usuario proporciona como entrada), un usuario no autorizado no puede convencer a la autoridad de confianza para que lo acepte como usuario autorizado del dispositivo, y el usuario no autorizado no puede usar el dispositivo para realizar QKD con la autoridad de confianza.
D. Ejemplo de jerarquía de autoridades de confianza
En los protocolos QKD descritos anteriormente, una autoridad de confianza establece claves por QKD con cada uno de los múltiples usuarios. Una autoridad de confianza puede formar parte de una jerarquía de autoridades de confianza, en cuyo caso la autoridad de confianza establece claves con una subred de uno o más usuarios. Los usuarios asociados con distintas autoridades de confianza pueden establecer claves secretas compartidas a través de una autoridad de confianza intermediaria en la jerarquía.
Por ejemplo, una jerarquía incluye dos autoridades de confianza secundarias y una autoridad de confianza principal que actúa como intermediario. La primera autoridad de confianza infantil está asociada con uno o más usuarios en una primera subred. En particular, la primera autoridad de confianza secundaria distribuye claves por QKD bajo una relación de confianza con un primer usuario en la primera subred. La segunda autoridad de confianza secundaria está asociada con uno o más usuarios en una segunda subred. En particular, la segunda autoridad de confianza secundaria distribuye claves por QKD bajo una relación de confianza con un segundo usuario en la segunda subred.
La primera autoridad de confianza secundaria también es operativa para participar en QKD con la autoridad de confianza principal. (Y la segunda autoridad de confianza secundaria es operativa para participar en QKD con la autoridad de confianza principal). La primera autoridad de confianza secundaria recupera claves que resultan de QKD con la autoridad de confianza principal, y la primera autoridad de confianza secundaria usa una de las claves de QKD con la autoridad de confianza principal (y una de las claves de QKD con el primer usuario) para facilitar comunicación segura entre el primer usuario y el segundo usuario.
Por ejemplo, la primera autoridad de confianza secundaria recibe una clave de sesión cifrada de la autoridad de confianza principal y descifra la clave de sesión cifrada utilizando una de sus claves de QKD con la autoridad de confianza principal. La primera autoridad de confianza infantil vuelve a cifrar la clave de sesión utilizando una de sus claves de QKD con el primer usuario y distribuye la clave de sesión cifrada nuevamente al dispositivo del primer usuario. De manera similar, la segunda autoridad de confianza secundaria recibe una versión cifrada de la clave de sesión de la autoridad de confianza principal, descifra la clave de sesión cifrada usando una de sus claves de QKD con la autoridad de confianza principal, vuelve a cifrar la clave de sesión usando una de sus claves de QKD con el segundo usuario y distribuye la clave de sesión encriptada nuevamente al dispositivo del segundo usuario. Cada uno de los dispositivos de usuario primero y segundo descifra la clave de sesión cifrada usando su clave de QKD con su autoridad de confianza, luego usa la clave de sesión para una comunicación segura u otro propósito. Más generalmente, siguiendo uno de los protocolos de codificación de grupo descritos en el documento w O 2012/044855, la autoridad de confianza principal puede operar como líder de grupo, con cada una de las autoridades de confianza secundarias operando como líder de subgrupo. En esta configuración, las autoridades de confianza respectivas son nodos físicos separados que realizan QKD con otros nodos y dispositivos de usuario, no solo nodos lógicos separados.
Alternativamente, en lugar de usar claves establecidas por QKD para compartir claves de sesión, una autoridad de confianza infantil usa claves combinadas junto con claves establecidas por QKD para facilitar la comunicación segura entre usuarios. Por ejemplo, una primera autoridad de confianza secundaria recupera una clave de combinación de autoridad a autoridad que distribuye la autoridad de confianza principal. La clave de combinación de autoridad a autoridad (como una clave de par) se basa en una de las claves de QKD entre la primera autoridad de confianza secundaria y la autoridad de confianza principal, y también se basa en una clave de QKD entre la segunda autoridad de confianza secundaria y la autoridad de confianza principal. La primera autoridad de confianza secundaria utiliza la clave de combinación de autoridad a autoridad (como una clave de par) y su clave de QKD con la autoridad de confianza principal para derivar la clave para la segunda autoridad de confianza secundaria. A continuación, la primera autoridad de confianza secundaria se comunica con la segunda autoridad de confianza secundaria para determinar una clave de combinación de usuario a usuario. La clave de combinación de usuario a usuario (como clave de par) se basa en una de las claves de QKD con el primer usuario y también se basa en una de las claves para el segundo usuario (de QKD entre el segundo usuario y la segunda autoridad de confianza secundaria). La primera autoridad de confianza secundaria hace que la clave de combinación de usuario a usuario esté disponible para su distribución al primer dispositivo de usuario, que puede usar la clave de combinación de usuario a usuario y su clave de QKD con la primera autoridad de confianza secundaria para determinar la clave para el segundo dispositivo de usuario.
En los ejemplos anteriores, una autoridad de confianza principal es un intermediario entre dos autoridades de confianza secundarias en una jerarquía. Alternativamente, la jerarquía incluye más autoridades de confianza en un nivel dado y/o más niveles de autoridades de confianza.
E. Ejemplos de funciones de autoridad de confianza distribuida
Un sistema informático implementa la función de una autoridad de confianza, y el sistema informático puede ubicarse en una única ubicación física o distribuirse entre varias ubicaciones físicas. Los protocolos QKD descritos anteriormente se pueden implementar en una configuración en la que las funciones de una autoridad de confianza se distribuyen entre múltiples nodos físicos. La distribución de funciones de autoridad de confianza en múltiples nodos físicos puede ayudar a proteger contra fallas o compromisos de cualquiera de los nodos.
Si las funciones de una autoridad de confianza están asociadas con un único nodo físico, el único nodo constituye un único punto de posible falla o compromiso. Para mitigar este riesgo, se puede utilizar el uso compartido de secretos cuánticos para distribuir las funciones de una autoridad de confianza en dos o más nodos físicos. En lugar de QKD entre un dispositivo de usuario y un único nodo físico para la autoridad de confianza, el dispositivo de usuario comparte secretos cuánticos con los múltiples nodos físicos que constituyen la autoridad de confianza. Por ejemplo, un primer dispositivo de usuario utiliza el intercambio de secretos cuánticos para facilitar el primer QKD para un primer usuario y los múltiples nodos físicos de la autoridad de confianza; y un segundo dispositivo de usuario utiliza el uso compartido de secretos cuánticos para facilitar un segundo QKD para un segundo usuario y los múltiples nodos físicos de la autoridad de confianza. Para obtener detalles sobre las variaciones del intercambio de secretos cuánticos, véase, por ejemplo, Hillery et al., "Quantum Secret Sharing", Physical Review A, vol. 59, núm. 3, páginas 1829-1834 (1999). De esta forma, la pérdida o el compromiso de cualquier nodo físico único de la autoridad de confianza no impide ni compromete el establecimiento de claves entre usuarios. Además, cuando la contraseña de un usuario se almacena en múltiples nodos físicos de la autoridad de confianza (como en los ejemplos de autenticación multifactor descritos en la sección VI), otra ventaja es que se requeriría el compromiso de todos los nodos físicos de la autoridad de confianza para comprometer el sistema (es decir, para que un adversario obtenga la contraseña del usuario).
V. Claves de Firma e Información de Verificación.
Como parte de la autenticación multifactor usando QC, una autoridad de confianza puede usar claves de firma digital en diversas etapas. En algunos ejemplos de esta sección, las principales partes de interés son la autoridad de confianza, un primer usuario (de un primer dispositivo de usuario) y un segundo usuario (de un segundo dispositivo de usuario). Normalmente, la autoridad de confianza actúa como autoridad de registro y autoridad certificadora. Alternativamente, sin embargo, los roles de autoridad de confianza, autoridad de registro y autoridad de certificación pueden dividirse entre diferentes entidades conectadas a través de relaciones de confianza. La autoridad de confianza puede ser una única autoridad de confianza o una jerarquía de autoridades de confianza.
En estos ejemplos, se hacen ciertas suposiciones sobre la infraestructura. La autoridad de confianza y el primer usuario comparten un canal clásico y un canal cuántico. La autoridad de confianza y el segundo usuario también comparten un canal clásico y un canal cuántico. El primer y segundo usuario comparten solo un canal clásico.
A. Ejemplos de claves de firma e información de verificación
En implementaciones de ejemplo, las claves de firma digital son claves de firma digital de un solo uso de Winternitz (cuya base es un esquema de firma de un solo uso de Lamport-Diffie) y la información de verificación es una clave de verificación de firma en la raíz de un árbol de comprobación aleatoria de Merkle. Los detalles sobre la generación y el uso de claves de firma digital de un solo uso de Winternitz, los árboles de comprobación aleatoria de Merkle y los esquemas de firma de Merkle se pueden encontrar en muchas referencias. Por ejemplo, véase Becker, "Merkle Signature Schemes, Merkle T rees and Their Cryptanalysis" (2008). Un esquema de firma Merkle se puede implementar utilizando un esquema de firma Coronado Merkle ("CMSS"), XMSS u otro enfoque.
La Figura 8a muestra un ejemplo de árbol de comprobación aleatoria de Merkle (800) con 8 nodos de hoja e ilustra aspectos de la generación de claves y la generación de información de verificación. En la práctica, un árbol de Merkle suele tener más nodos (por ejemplo, 512 nodos hoja o 1024 nodos hoja). En la Figura 8a, un nodo está etiquetado aij, donde i indica el nivel del nodo en el árbol de comprobación aleatoria, y j indica la posición del nodo en ese nivel (numerado de izquierda a derecha en la Figura 8a).
Para cada nodo hoja j, una clave de firma digital de un solo uso de Winternitz Xj es generado (por ejemplo, utilizando un generador de números aleatorios) y codificado. En general, la función de comprobación aleatoria H() es una función de comprobación aleatoria unidireccional criptográficamente segura, y no es necesario que sea la misma que la función de comprobación aleatoria utilizada en otras partes en el presente documento. Por lo general, la función de comprobación aleatoria es simple y liviana desde el punto de vista computacional, lo que hace que todo el árbol de comprobación aleatoria de Merkle sea simple y liviano desde el punto de vista computacional.
Los valores en dos nodos de hoja adyacentes, a su vez, se procesan mediante la función de comprobación aleatoria, como se muestra en la Figura 8a. Por ejemplo, los valores en los nodos a0,0 y a0,1 se procesan para producir un valor en el nodo a1,0. En el siguiente nivel, los valores en los nodos adyacentes se vuelven a codificar usando la función de cifrado, como se muestra en la Figura 8a. Por ejemplo, los valores en los nodos a1,0 y a1,1 se codifican para producir un valor en el nodo a2,0. Este proceso continúa hasta que se determina el valor del nodo raíz. El nodo raíz del árbol de comprobación aleatoria de Merkle (800) es la clave de verificación de firma ("SVK"). La SVK es un ejemplo de información de verificación, en el sentido de que se utiliza para comprobar la identificación o certificación de un mensaje firmado con alguna de las claves digitales de un solo uso Xj en el árbol (800). La información de verificación (aquí, la SVK para el árbol de comprobación aleatoria de Merkle) se puede distribuir de manera segura, como se describe a continuación, y de manera que el creador de la información de verificación esté autenticado, como se describe a continuación.
Cuando una de las claves de firma digital Xj se utiliza, la entidad que generó la clave de firma digital (por ejemplo, dispositivo de usuario, autoridad de confianza) firma un mensaje utilizando la clave digital. El mensaje firmado sig se transmite, incluyendo la información que identifica el nodo hoja para esa clave Xj y proporciona valores de autenticación para la ruta del nodo hoja hasta el SVK. Por ejemplo, si la tecla X1 se utiliza, la información de la firma incluye el valor de la firma resultante de la aplicación de la clave X i al mensaje junto con los valores de autenticación para los nodos intermedios a lo largo de la ruta hasta el SVK. En la Figura 8b, los valores de autenticación para los nodos intermedios se muestran como auten0, autem y auten2.
La Figura 8b muestra aspectos de la verificación de claves para el árbol de comprobación aleatoria de Merkle (850), que corresponde al árbol (800) de la Figura 8a. Con el valor de la firma y los valores de autenticación, el destinatario puede reconstruir un valor apropiado H(X) para el nodo hoja y determinar valores de comprobación aleatoria en niveles sucesivamente más altos del árbol. Por ejemplo, el destinatario codifica el valor de la firma sig usando una variación relacionada H"() de la función de comprobación aleatoria H(), para determinar el valor H"(sig). H"(sig) se espera que sea igual a H(Xi) para que la verificación sea exitosa, aunque el destinatario no tenga la clave de firma secreta X. El destinatario luego codifica ese valor H"(sig) con un valor de autenticación para el nodo intermedio para el nivel apropiado, repitiendo el proceso nivel tras nivel con el resultado de la operación de comprobación aleatoria anterior y el valor de autenticación para el siguiente nodo intermedio, para determinar localmente el SVK del nodo raíz. El destinatario puede entonces comparar el SVK determinado localmente en el nodo raíz con el SVK recibido previamente. Si los valores coinciden, se verifica la firma. Por ejemplo, en la Figura 8b, el destinatario reconstruye el valor H(X1) para el nodo a0,1 (en realidad, H"(sig) usando la firma sig y la identidad del nodo 80,1), luego codifica el valor H(X1) con el valor de autenticación auten0 recibido como parte de la firma, generando un valor de comprobación aleatoria para el nodo 81,0. El destinatario codifica este valor con el valor de autenticación del siguiente nivel autem, y así sucesivamente, hasta que el destinatario determine un valor para el SVK en el nodo raíz, que el destinatario compara con el SVK recibido anteriormente.
Alternativamente, las claves de firma digital son un tipo diferente de clave de firma digital única (por ejemplo, claves de firma Lamport), en lugar de claves Winternitz. Como se indicó, la función de comprobación aleatoria que se utiliza puede depender de la implementación y puede ser esencialmente cualquier función de comprobación aleatoria unidireccional criptográficamente segura, aunque una función de comprobación aleatoria que es computacionalmente liviana mejora el rendimiento. En lugar de un árbol de comprobación aleatoria Merkle y SVK como información de verificación, se podría usar otra forma de marco de clave pública/privada para la información de verificación.
B. Distribución de la Información de Verificación
En implementaciones de ejemplo, en una primera etapa, un usuario se registra inicialmente con la autoridad de registro, que es la autoridad de confianza en las implementaciones de ejemplo. Típicamente, esta inscripción inicial se realiza en persona. Alternativamente, el registro podría realizarse de forma remota siempre que se sigan los procedimientos para la identificación y autenticación del usuario. Diferentes usuarios pueden inscribirse por separado con la autoridad de registro (autoridad de confianza).
Por ejemplo, un primer usuario proporciona a la autoridad de confianza una contraseña secreta para que el primer usuario pueda realizar posteriormente una identificación cuántica segura con la autoridad de confianza. Esta contraseña puede ser una contraseña segura y secreta para la autenticación en la configuración posterior de QKD. La contraseña también puede incorporar una identificación con imagen, información de firma biométrica, etc. Para la autenticación de múltiples factores como se describe en la Sección VI, la autoridad de confianza puede proporcionar una versión cifrada de la contraseña al dispositivo del usuario.
Para la información de verificación, la autoridad de confianza genera múltiples claves de firma digital secretas de un solo uso y construye un árbol de comprobación aleatoria de Merkle a partir de ellas. La autoridad de confianza distribuye el SVK del árbol de comprobación aleatoria de Merkle al primer usuario, para usarlo como parte de verificación de firma pública del esquema de firma de Merkle. La autoridad de confianza puede repetir este proceso para un segundo usuario, un tercer usuario, etc. Al hacerlo, la autoridad de confianza puede generar claves de firma digital, un árbol de comprobación aleatoria de Merkle y un SVK específico para la interacción con ese usuario. O bien, la autoridad de confianza puede usar las mismas claves y distribuir el mismo SVK para todos los usuarios, en cuyo caso el SVK necesariamente se difunde más ampliamente.
Como parte de la inscripción inicial o por separado, un usuario determinado también puede generar múltiples claves de firma digital secretas de un solo uso, construir un árbol de comprobación aleatoria de Merkle a partir de ellas y, por lo tanto, determinar un SVK. El usuario proporciona el SVK inicial a la autoridad de confianza. Si este proceso ocurre después de QKD, el usuario puede proporcionar el SVK mediante transferencia segura, utilizando una clave de cifrado de bits secretos compartidos establecidos en QKD (desde la segunda etapa). Este proceso puede ser realizado por el primer usuario, segundo usuario, etc.
La autoridad de confianza y/o cualquier usuario determinado pueden repetir el proceso de generar claves de firma digital secretas, construir un árbol de comprobación aleatoria de Merkle y distribuir un nuevo valor SVK para reponer las claves de firma digital. En este caso, el nuevo SVK se puede distribuir mediante transferencia segura, utilizando una clave de cifrado de bits secretos compartidos establecidos en el QKD (de la segunda etapa). O bien, la autoridad de confianza y el usuario pueden participar en una nueva ronda de inscripción en persona.
Por ejemplo, la autoridad de confianza genera claves de firma digital X)(TA, 1, cuenta) - un primer conjunto de claves privadas X0 generado por la autoridad de confianza (TA) para la interacción con el usuario 1, donde el número de claves generadas se indica mediante "recuento". La autoridad de confianza genera un árbol de comprobación aleatoria 7o(TA, 1) para este juego de llaves, y distribuye la información de verificación Vb(TA, 1), que es un SVK, al primer dispositivo de usuario.
El primer dispositivo de usuario recibe la información de verificación V0(TA, 1). Como una serie de eventos conceptualmente separados, que podrían preceder, seguir u ocurrir simultáneamente con la generación de claves, etc. por parte de la autoridad de confianza, el primer dispositivo de usuario genera claves de firma digital X)(1, TA, cuenta) - un primer conjunto de claves privadas X) generado por el primer dispositivo de usuario para la interacción con la autoridad de confianza (TA), donde el número de claves generadas se indica mediante "recuento". El primer dispositivo de usuario genera un árbol de comprobación aleatoria 70(1, TA) para este juego de llaves, y distribuye la información de verificación V0(1, TA), que es un SVK, a la autoridad de confianza.
La autoridad de confianza puede repetir este proceso de inscripción y QKD con cualquier otro usuario. Al hacerlo, la autoridad de confianza puede generar un conjunto separado de claves de firma digital para que la autoridad de confianza las use al interactuar con cada usuario, o la autoridad de confianza puede usar el mismo conjunto de claves de firma digital para interactuar con múltiples usuarios.
C. Usos de claves de firma digital e información de verificación
La autoridad o usuario de confianza puede firmar un mensaje con una de sus claves de firma digital. En general, el firmante de un mensaje aplica una firma digital única al mensaje. La firma digital única puede utilizar una firma digital Winternitz o Lamport, por ejemplo, o algún otro tipo de firma digital. La función s/g[ mess ; p] representa la clave de firma digital p aplicado al mensaje mess. La función de firma puede ser una función de comprobación aleatoria tal como SHA-256 u otra función de comprobación aleatoria.
El destinatario del mensaje firmado puede verificar la firma. En general, el destinatario de un mensaje puede verificar la firma mediante un SVK público u otra información de verificación. Por ejemplo, el SVK puede ser el valor raíz de un árbol de comprobación aleatoria de Merkle cuando se firman múltiples mensajes. Para verificar la firma, el destinatario utiliza el SVK del firmante. Utilizando la firma, el destinatario determina un valor de comprobación aleatoria para el nodo hoja apropiado del árbol de comprobación aleatoria Merkle del firmante. El destinatario codifica este valor con un valor de autenticación en niveles sucesivos del árbol para determinar un valor en el nodo raíz, que el destinatario compara con el SVK recibido previamente del firmante. La firma vincula el mensaje al firmante. Si el firmante utiliza una firma válida, el firmante no puede negar posteriormente que es la entidad que distribuyó el mensaje.
D. Reposición de Claves de Firma Digital e Información de Verificación
Como se indicó, en escenarios de uso típicos, cada clave de firma digital se usa solo una vez. Eventualmente, la autoridad de confianza o un usuario pueden quedarse sin claves de firma digital desde el registro inicial. La autoridad de confianza y/o el usuario pueden reponer de forma segura las claves de firma digital (y distribuir nueva información de verificación) de la siguiente manera.
La autoridad de confianza genera nuevas claves secretas de firma digital. La autoridad de confianza también genera nueva información de verificación, por ejemplo, formando un nuevo árbol de comprobación aleatoria Merkle y calculando un nuevo valor SVK. Utilizando una clave secreta compartida previamente establecida con el usuario, la autoridad de confianza encripta y autentica la nueva información de verificación y la transmite a un usuario. El usuario descifra la información de verificación y actualiza su información de verificación almacenada para la autoridad de confianza. La autoridad de confianza puede distribuir la nueva información de verificación a otros usuarios o, de manera similar, generar nuevas claves de firma digital y distribuir nueva información de verificación por otro usuario.
Por el contrario, un usuario puede reponer sus claves de firma digital y proporcionar de forma segura a la autoridad de confianza la nueva información de verificación del usuario (encriptada con una clave producida en QKD y compartida con la autoridad de confianza), si el usuario se queda sin claves de firma digital desde la inscripción.
Alternativamente, el usuario y/o la autoridad de confianza (como autoridad de registro) puede reponer las claves de firma digital de otra manera, que no implique la distribución de nueva información de verificación. Por ejemplo, el usuario y la autoridad de confianza, que ya han establecido (en QKD) una serie de bits secretos compartidos para usar como claves, pueden analizar un intervalo de bits secretos compartidos para que uno de ellos (usuario o autoridad de confianza) los use como . claves de firma digitales. A partir de las claves de firma digital, el usuario y la autoridad de confianza pueden construir de forma independiente un árbol de comprobación aleatoria de Merkle e información de verificación (aquí, un SVK como nodo raíz del árbol).
O, para una utilización más económica de los bits secretos compartidos de QKD, el usuario y la autoridad de confianza pueden usar una única clave acordada de los bits secretos compartidos de QKD como la semilla de un generador de números aleatorios u otra función, que genera una serie más larga de bits secretos compartidos para su uso como claves de firma digital por parte del usuario o autoridad de confianza. Una vez más, a partir de tales claves de firma digital, el usuario y la autoridad de confianza pueden construir de forma independiente un árbol de comprobación aleatoria de Merkle e información de verificación. Debido a que el árbol de comprobación aleatoria de Merkle y la información de verificación se determinan de forma independiente en cada lado, no es necesario transmitir información de verificación.
La entidad (usuario o autoridad de confianza) que utilizará las claves de firma digital puede almacenar el árbol de comprobación aleatoria de Merkle y las claves de firma digital. O bien, para reducir el almacenamiento cuando las claves de firma digital se han creado a partir de un valor inicial, la entidad (usuario o autoridad de confianza) que utilizará las claves de firma digital puede almacenar solo el valor inicial y un registro de qué nodo/clave se usó por última vez, en cuyo caso la entidad puede reconstruir las claves de firma digital y el árbol de comprobación aleatoria de Merkle según sea necesario.
VI. Autenticación de multifactores usando comunicación cuántica
La autenticación de usuarios presenta muchos desafíos en los sistemas informáticos modernos. Por ejemplo, muchos usuarios tienen dificultades para generar y recordar contraseñas seguras para los sitios que visitan, lo que puede resultar en una debilidad de seguridad grave cuando los usuarios reutilizan contraseñas o recurren a contraseñas débiles. El uso de fichas de autenticación (tales como CRYTOCard RB-1 o SecureID de RSA) para iniciar sesión en sistemas informáticos con contraseñas de un solo uso puede aliviar la necesidad de que los usuarios recuerden múltiples contraseñas. Sin embargo, eventos recientes han demostrado que estos sistemas algorítmicos tienen serias deficiencias de seguridad.
En esta sección se describen las innovaciones de autenticación de múltiples factores mediante QC. En un nivel alto, la autenticación multifactor usa "algo recordado" y "algo poseído" como primer y segundo factor, respectivamente, para la autenticación. Por ejemplo, el primer factor puede ser una contraseña de usuario y el segundo factor puede ser un dispositivo que posee el usuario o información asociada de forma segura con dicho dispositivo. En implementaciones de ejemplo, un usuario que tiene un dispositivo de usuario (tal como una tarjeta de QC) asignado a ese usuario realiza una QC de fotón único a través de una fibra óptica con una autoridad de confianza. Como parte del protocolo para la QC, el usuario puede demostrar a la autoridad de confianza que el usuario (a) conoce una contraseña secreta y (b) está en posesión del dispositivo asignado al usuario. Al hacerlo, el usuario no necesita revelar la contraseña ni ninguna función de la misma. Si falla la autenticación, el usuario puede intentar la autenticación nuevamente, sin comprometer la seguridad. Por otro lado, si la autenticación tiene éxito y el usuario establece una relación de confianza con la autoridad de confianza, el usuario y la autoridad de confianza pueden continuar derivando bits secretos compartidos, que pueden usarse como contraseña para iniciar sesión en un sistema informático, ingresar en un sitio web seguro, obtener acceso a un edificio, establecer una prueba de la identidad del usuario, realizar una QCadicional para el establecimiento de claves autenticadas con contraseña para comunicaciones seguras con otros usuarios, o para algún otro propósito. Los bits secretos compartidos producidos de esta manera no tienen herencia algorítmica de ninguna contraseña anterior o bits secretos generados en una sesión anterior o de la contraseña secreta del usuario. A diferencia de otras técnicas, la autenticación multifactor mediante QC ofrece la característica deseable de seguridad directa. Además, un dispositivo puede configurarse para producir contraseñas independientes (bits secretos) para diferentes sitios/dominios usando autenticación multifactor con QC, lo que ofrece fuertes garantías de seguridad arraigadas en las leyes de la física y aumenta la comodidad del usuario. Las implementaciones de autenticación multifactor con QC también pueden proporcionar una solución de "inicio de sesión único" en la que la autenticación se realiza como parte de un proceso único de múltiples etapas para el usuario.
En comparación con los enfoques anteriores para la autenticación de usuarios, los enfoques de múltiples factores descritos en el presente documento tienen varias ventajas.
• Eficiencia. Implementaciones de ejemplo utilizan tarjetas de control de calidad portátiles con algoritmos rápidos y eficientes que se pueden ejecutar fácilmente con varios tipos de matrices de puertas programables de campo modernas. Se describen ejemplos específicos de algoritmos para el cifrado, la codificación y la corrección de errores que proporcionan buenas transacciones de rendimiento y seguridad.
• Seguridad. La autenticación multifactor usando QC protege incluso contra futuros adversarios que poseen memoria cuántica. La autenticación multifactor puede proporcionar una forma segura de colocar un nuevo dispositivo en una red o reconstituir la conectividad segura en una red después de una interrupción, los cuales brindan resiliencia, que es un atributo muy deseable.
• Sentido práctico. Las implementaciones de ejemplo de autenticación multifactor con control de calidad utilizan medios específicos (tales como estados de señuelo en QC) para permitir una seguridad sólida incluso con una fuente de láser débil de aproximadamente un solo fotón por pulso. Las implementaciones de ejemplo pueden usar longitudes de onda de telecomunicaciones sobre fibra óptica monomodo ordinaria, logrando intervalos de muchas decenas de kilómetros. Por lo tanto, la autenticación multifactor con QC se puede implementar como una superposición en la infraestructura de fibra instalada existente, dentro de una red de acceso, empresarial o de área metropolitana, y se puede implementar junto con la infraestructura de confianza jerárquica inherente en los ejemplos de las innovaciones de QKM descritas anteriormente.
• Usabilidad. Las implementaciones de ejemplo son asequibles para fabricar e implementar, por lo que pueden proporcionar una solución de seguridad que se puede incorporar en dispositivos portátiles tales como teléfonos inteligentes y tabletas, donde el crecimiento explosivo en el uso ha superado con creces la seguridad que estos dispositivos brindan actualmente. Dichos dispositivos se pueden utilizar en un amplio intervalo de aplicaciones en sectores como el consumidor, la empresa, los registros médicos electrónicos y el gobierno.
• En los ejemplos de esta sección, las principales partes de interés son la autoridad de confianza, un primer usuario (de un primer dispositivo de usuario) y un segundo usuario (de un segundo dispositivo de usuario). Sin embargo, los ejemplos se amplían a un número arbitrario de usuarios.
En estos ejemplos, se hacen ciertas suposiciones sobre la infraestructura. La autoridad de confianza y el primer usuario comparten un canal clásico y un canal cuántico. El canal cuántico puede tener algo de ruido y pérdida. La autoridad de confianza y el segundo usuario también comparten un canal clásico y un canal cuántico. El primer y segundo usuario comparten solo un canal clásico. Los usuarios primero y segundo poseen dispositivos con memoria segura.
A un alto nivel, diversas características de las innovaciones de autenticación de múltiples factores se pueden usar en combinación o por separado.
A. Ejemplos de implementaciones de autenticación multifactor con QC.
Las implementaciones de ejemplo de autenticación multifactor con control de calidad pasan por varias etapas. En las implementaciones de ejemplo, un usuario determinado y una autoridad de confianza comparten una contraseña secreta w, que el usuario puede proporcionar a la autoridad de confianza durante una etapa de inscripción en persona. El usuario también posee un dispositivo (tal como un dispositivo portátil con una tarjeta de QC) cuya memoria segura contiene información para una función de comprobación aleatoria h (por ejemplo, bits que especifican una función de comprobación aleatoria universal secreta elegida al azar, o bits clave para una función de comprobación aleatoria criptográfica), que también se pueden compartir con la autoridad de confianza durante la etapa de registro en persona. Otro usuario compartiría una función de comprobación aleatoria secreta diferente con la autoridad de confianza, que se almacenaría en la memoria del dispositivo del otro usuario. La autenticación multifactor le permite al usuario convencer a la autoridad de confianza de que sabe w y posee el dispositivo que contiene información para la función de comprobación aleatoria h, para probar la identidad del usuario dado a la autoridad de confianza. La autoridad de confianza puede verificar la identidad del usuario dado y aceptar o rechazar los intentos de autenticación del usuario dado.
En caso de que la autoridad de confianza acepte, el usuario dado sabe que comparte nuevos bits secretos con la autoridad de confianza, generados durante el protocolo de autenticación multifactor con QC. Los nuevos bits secretos compartidos tienen seguridad directa, ya que no hay herencia algorítmica en ninguna información secreta anterior. Los bits secretos compartidos pueden ser utilizados por el usuario dado para diversos propósitos, incluyendo iniciar sesión en un sistema informático como una contraseña de un solo uso, obtener acceso a un edificio, proporcionar evidencia de su identidad o autenticar una sesión de QC posterior (por ejemplo, para QKD que permite comunicaciones seguras con otros usuarios a través del establecimiento de claves autenticadas con base en contraseñas).
La autenticación multifactor brinda seguridad en varios aspectos y protege contra varios tipos de adversarios. Un usuario deshonesto puede intentar que la autoridad de confianza acepte a ese usuario, aunque el usuario no sepa la contraseña w. Sin embargo, el usuario deshonesto no puede convencer a la autoridad confiable para que acepte con mayor probabilidad que adivinar la contraseña w correctamente. En el caso de que el usuario deshonesto adivine incorrectamente, el usuario solo aprende que se excluye una contraseña. O bien, una autoridad de confianza deshonesta puede intentar aprender la contraseña w de un usuario (honesto) dado, de modo que la autoridad de confianza deshonesta pueda hacerse pasar por el usuario. La autoridad de confianza deshonesta no puede hacer nada mejor que adivinar la contraseña w, y (cuando la suposición es incorrecta) no aprende nada sobre la contraseña w excepto que se excluye una posible contraseña. El protocolo de implementaciones de ejemplo también es seguro contra un usuario deshonesto que fabrica su propio dispositivo e intenta adivinar la contraseña w e información secreta para la función de comprobación aleatoria h. Tal usuario no puede autenticarse como un usuario particular (dirigido) o como un usuario arbitrario. De igual forma, un usuario deshonesto que sustraiga o adquiera un dispositivo con información secreta para la función de comprobación aleatoria h de un usuario dado (honesto) no puede autenticarse como el usuario dado (honesto) del dispositivo o como un usuario arbitrario. Incluso un usuario que legítimamente tiene un dispositivo no puede usar su propio dispositivo para autenticarse como cualquier otro usuario.
1. Ejemplos de etapas de inscripción
La Figura 9 ilustra las operaciones de inscripción en implementaciones de ejemplo. La Figura 9 muestra las operaciones de un usuario determinado que tiene un dispositivo de usuario y una autoridad de confianza. Específicamente, la Figura 9 muestra un dispositivo de usuario i para el usuario i. Durante la etapa de inscripción, el usuario se reúne con la autoridad de confianza para determinar la información del factor del usuario y la información del factor del dispositivo. Esto podría ser una reunión física o una reunión en línea. El usuario proporciona evidencia de su identidad a la autoridad de confianza (por ejemplo, múltiples identificaciones con foto emitidas por el gobierno para una reunión en persona o alguna otra identificación para una reunión en línea).
Para obtener información sobre el factor de usuario en las implementaciones de ejemplo, el usuario establece una contraseña w(i). Las partes constituyentes de la contraseña w(i) dependen de la implementación. Por ejemplo, una contraseña w(i) puede incluir una parte que ingresa el usuario i y es relativamente fácil de memorizar para el usuario (tal como una serie de 8 a 12 caracteres alfanuméricos o caracteres ASCII especiales en un teclado convencional). La contraseña también puede incluir una parte que representa un resumen de indicios biométricos (tal como datos de escaneo de huellas dactilares) proporcionado por el usuario i. Alternativamente, la contraseña w(i) tiene otras partes y/o adicionales.
En implementaciones de ejemplo, la contraseña w(i) tiene x símbolos ASCII, que en la práctica estarán compuestos por caracteres seleccionados del conjunto de caracteres ISO 94 de los teclados típicos. En implementaciones de ejemplo, x = 8, pero son posibles contraseñas con diferentes longitudes de caracteres. En estos ejemplos, w(i) es la concatenación de la representación binaria de cada carácter ASCII w(i) = wowi w2..wx, donde la representación binaria de cada carácter ASCII tiene 8 bits. Cuando x = 8 y cada carácter tiene 8 bits, la representación binaria de la contraseña tiene una longitud de 64 bits, por lo que hay (en principio) 264 diferentes contraseñas. En la práctica, dado el tamaño del conjunto de símbolos ASCII utilizado y el hecho de que la contraseña debe ser símbolos que el usuario pueda recordar, hay menos contraseñas posibles.
Como parte de la inscripción, el usuario proporciona la contraseña secreta w(i) a la autoridad de confianza. La autoridad de confianza encripta w(i) bajo su clave secreta a largo plazo (por ejemplo, usando un algoritmo de clave simétrica como AES u otro algoritmo de encriptación) y proporciona el valor encriptado al usuario como un certificado S(i). Generalmente, S(i) = E[w(i); key], donde E representa una función de cifrado y key representa la clave secreta de la autoridad de confianza. Esto evita la necesidad de que la autoridad de confianza almacene la contraseña w(i). Alternativamente, la autoridad de confianza puede almacenar la contraseña w(i).en memoria segura.
Como parte de una identificación posterior, la contraseña w(i) se utiliza para la autenticación entre la autoridad de confianza y el usuario i, pero la contraseña w(i) no necesita ser comunicada entre el usuario i y la autoridad de confianza, excepto en forma encriptada como el certificado S(i). Como tal, la contraseña w(i) no se revela durante la identificación, y la contraseña se puede usar varias veces sin comprometer la seguridad.
La autoridad de confianza y el usuario también establecen información sobre el factor del dispositivo. La autoridad de confianza puede proporcionar al usuario un dispositivo (por ejemplo, un dispositivo que tiene una tarjeta de control de calidad) que se identifica de forma única mediante la información del factor del dispositivo (por ejemplo, bits que especifican una función de comprobación aleatoria o proporcionan una clave para usar con una función de comprobación aleatoria, un número de serie registrado para el usuario). O bien, el usuario puede proporcionar un dispositivo, que recibe información del factor de dispositivo. Además, el usuario puede configurar el dispositivo para que se necesite información biométrica (tal como un escaneo de huellas dactilares o un escaneo de voz) o un número de identificación personal ("PIN") para desbloquear el dispositivo.
Para la información del factor del dispositivo, la autoridad de confianza puede determinar la información para una función de comprobación aleatoria h(i) que se utilizará para identificar el dispositivo. Por ejemplo, la autoridad de confianza genera una matriz Toeplitz aleatoria con números aleatorios producidos a partir de un generador de números aleatorios, tal como un generador de números aleatorios deterministas ("DNRG"). Por ejemplo, el DNRG puede ser un DRNG ANSI X9.31 aprobado por NIST con base en triple-DES o AES, utilizando una semilla secreta como entrada. Alternativamente, se utiliza otro tipo de DRNG. Se puede especificar una matriz Toeplitz booleana de 1024x1024 con 2047 números de un solo bit. El uso e implementación de matrices Toeplitz es muy eficiente para dispositivos móviles típicos. Alternativamente, sin embargo, se puede usar otro tipo de función de comprobación aleatoria universal o función de comprobación aleatoria casi universal. O, como se describe a continuación, la autoridad de confianza puede generar información clave para una función de comprobación aleatoria criptográfica que se utiliza como función de comprobación aleatoria h.
Por ejemplo, un tipo de función de comprobación aleatoria "casi universal" se define de la siguiente manera. Sea £ cualquier número real positivo. Un £-casi universal (£-AÜ2) familia Hau2 de funciones de comprobación aleatoria de un conjunto A (de cadenas de un bit) a un conjunto B (de cadenas de bits b) es una familia de funciones de A a B tal que, para cualquier elemento distinto a1, a¡2 de A y elegido al azar h e Hau2, la probabilidad de una colisión (h(a1) = h(a2)) es como mucho £. El caso £ = 2-b se llama función de comprobación aleatoria "universal". El valor más pequeño posible para £ es (2a - 2B)/(2B(2a - 1)).
Una función de comprobación aleatoria Toeplitz es una función de comprobación aleatoria universal. Supóngase que la matriz M es aleatoria B * a Matriz booleana de Toeplitz. La comprobación aleatoria Toeplitz es fm(a) = M.a, y requiere a b - 1 bits aleatorios para especificar f. La probabilidad de colisión es 2-b.
Una familia de comprobación aleatoria que es "casi fuertemente universal, con probabilidad de engaño £" (£-ASU2) es un conjunto múltiple de funciones Hasu2 que satisface las siguientes propiedades: (1) cada función en Hasu2 tiene dominio Ae intervalo B (toma a-cadenas de bits a b-cadenas de bits); (2) para cualquiera de las dos entradas distintas a1 y a2 en A, y dos etiquetas cualesquiera p1 y p2 en B (no necesariamente distintos), (a) una fracción 1/2b de las funciones en Hasu2 mapa1 a p1, y (b) de aquellas funciones en Hasu2 ese mapa a1 a p1, una fracción como máximo £ también mapea a2 a p2. El valor más pequeño de £ es 2'b
Una comprobación aleatoria Toeplitz afín es 2'b-SU2. Matriz Msu2 es aleatoria b * a matriz booleana de Toeplitz, y k es una cadena aleatoria de b bits. La comprobación aleatoria Toeplitz es fM, k(a) = Msu2.a © k; requiere a + b - 1 b = (a 2b - 1) bits aleatorios para especificar F. El número de funciones en el conjunto es 2(a+2b'1), y la probabilidad de una colisión es 2'b. El número de funciones con la propiedad (2)(b) es 2(a 2b - 1)/22b = 2(a - 1).
Volviendo a la Figura 9, la autoridad de confianza almacena información para la función de comprobación aleatoria h(i) en memoria segura del sistema informático que implementa la autoridad de confianza. La autoridad de confianza también proporciona la información para la función de comprobación aleatoria h(I) al dispositivo i de usuario , por ejemplo, transmitiendo la información para la función de comprobación aleatoria al dispositivo del usuario durante la sesión de inscripción en persona o transmitiendo de otro modo la información para la función de comprobación aleatoria al dispositivo del usuario. El dispositivo i de usuario almacena la información para la función de comprobación aleatoria h(i) en la memoria segura del dispositivo de usuario. Se entiende que el usuario y la autoridad de confianza mantienen en secreto la información para la función de comprobación aleatoria.
En las implementaciones de ejemplo, la autoridad de confianza también puede proporcionar al dispositivo de usuario información de verificación para las claves de firma digital de la autoridad de confianza. Por ejemplo, la información de verificación es un SVK públi
confianza genera claves de firma digital X(Ta , i, recuento) - un conjunto de claves privadas X generadas por la autoridad de confianza para la interacción con el usuario i, donde el número de claves generadas se indica mediante "recuento". La autoridad de confianza genera un árbol de comprobación aleatoria T(TA, i) para este conjunto de llaves, y distribuye la información de verificación V(TA, i), que es un SVK, al dispositivo i de usuario. El dispositivo i de usuario recibe la información de verificación V(TA, i). Para obtener una explicación adicional, véase la sección sobre innovaciones de QKM. Alternativamente, la autoridad de confianza proporciona otra forma de información de verificación. El usuario almacena el SVK de la autoridad de confianza (u otra información de verificación) en la memoria segura del dispositivo del usuario.
Múltiples usuarios diferentes pueden inscribirse con la autoridad de confianza. Si es así, diferentes usuarios tienen diferentes contraseñas (u otra información de factor de usuario). La autoridad de confianza proporciona versiones cifradas de las diferentes contraseñas a los respectivos usuarios para almacenarlas en la memoria segura de los dispositivos de los usuarios. O bien, la autoridad de confianza puede almacenar las diferentes contraseñas para los respectivos usuarios en una memoria segura en el sistema que implementa la autoridad de confianza. La autoridad de confianza genera información de función de comprobación aleatoria diferente (u otra información de factor de dispositivo) para cada uno de los dispositivos de los diferentes usuarios. La autoridad de confianza también puede generar información de verificación diferente para diferentes usuarios.
2. Ejemplos de etapas de identificación
Cuando el usuario desea ejecutar la autenticación multifactor, conecta su dispositivo a una red de fibra óptica que tiene conectividad con la autoridad de confianza u otra conexión de red que admita la QC con la autoridad de confianza. La idea básica es que el usuario responderá a un desafío de la autoridad de confianza y solo puede responder correctamente si el usuario tiene la información del factor de usuario (por ejemplo, contraseña de usuario) e información del factor del dispositivo (por ejemplo, información de la función de comprobación aleatoria).
Las Figuras 10a y 10b ilustran operaciones de identificación en implementaciones de ejemplo. Las Figuras 10a y 10b muestran operaciones de un usuario dado i que tiene un dispositivo i de usuario y una autoridad de confianza. En implementaciones de ejemplo, el dispositivo i de usuario recupera el certificado S(i) desde la memoria segura y envía a la autoridad de confianza la copia almacenada del certificado S(i), para indicar la intención del usuario de realizar la autenticación multifactor. La autoridad de confianza extrae la contraseña del usuario w(i) de S(i) mediante el descifrado utilizando su clave privada, key. Por lo tanto, la autoridad de confianza sabe qué contraseña esperar si el usuario es realmente un usuario honesto. Por separado, el usuario ingresa la contraseña w(i) en el dispositivo del usuario i, por ejemplo, usando un teclado y/u otro dispositivo de entrada.
Con referencia a la Figura 10a, tanto el dispositivo i de usuario como la autoridad de confianza ahora hacen lo siguiente usando w(i), que fue extraído por la autoridad de confianza de S(i) en el sistema informático que implementa la autoridad de confianza, pero que fue ingresado por el usuario usando el teclado de su dispositivo y/u otro mecanismo de entrada. El dispositivo i de usuario y la autoridad de confianza aplican la función de comprobación aleatoria secreta h(I) para w(i), obtener una versión codificada D(w) de la contraseña del usuario w(i).
Antes de aplicar la función de comprobación aleatoria, el dispositivo i de usuario y la autoridad de confianza pueden ampliar la contraseña del usuario w(i) para aumentar el número de bits generados por la función de comprobación aleatoria. En general, cada símbolo de n-bits wx de w(i) se codifica como uno de 2n palabras clave c(wx). Por ejemplo, cada símbolo de 8 bits Wx de w(i) está codificado como una de las 256 palabras de código c(wx) del código Hadamard C128, que se construye a partir de las filas de la matriz Hadamard de 128x128 H128. En este caso, cada palabra de código tiene una longitud de 128 bits. Este ejemplo específico proporciona una implementación eficiente. Alternativamente, se usan otros códigos lineales en lugar de Hadamard, o se usan otros códigos Hadamard. La contraseña completa del símbolo x w(i) se codifica como la concatenación de x de estas palabras clave. Por ejemplo, ocho símbolos de 8 bits de una contraseña se reemplazan con ocho palabras de código de 128 bits, que se concatenan para formar una secuencia binaria de 1024 bits: C(w(i)) = c(w0)c(w1)...c(w7). En este ejemplo específico, la distancia mínima entre las palabras clave de C128 es de 64 bits (originalmente había ocho símbolos de 8 bits, para un total de 64 bits que pueden ser diferentes de una palabra clave a otra). El procedimiento de codificación "expande" la contraseña de 64 bits hasta 1024 bits, de modo que una contraseña adivinada dará como resultado desacuerdos de 512 bits, en promedio. Aún quedan solo 264 posibles valores de C(w(i)), sin embargo, no 21024 valores posibles. Tanto el dispositivo i de usuario como la autoridad de confianza aplican la función de comprobación aleatoria secreta h(i) a la contraseña (aquí, la versión ampliada C(w(i)) para obtener la versión codificada D(w).
A continuación, el dispositivo i de usuario y la autoridad de confianza realizan QC. Por ejemplo, en la Figura 10a, el dispositivo i de usuario y la autoridad de confianza realizan QC de tipo BB84 con base en polarización. El dispositivo i de usuario utiliza señales de número medio de fotones, p < 1. Alternativamente, el dispositivo i de usuario utiliza otra forma de QC. Como parte de la QC, el dispositivo del usuario puede usar varios valores medios de fotones diferentes, como señuelo, pero sin revelar a la autoridad de confianza qué valor ha usado el dispositivo i de usuario en una señal específica. Por ejemplo, el dispositivo i de usuario utiliza un estado sin señuelo con una media del orden de un fotón por pulso y dos pulsos de señuelo. Un pulso de señuelo puede no tener fotones por pulso, lo que se puede usar para comprobar si hay ruido, y el otro pulso de señuelo puede tener del orden de 0,1 fotones por pulso en promedio. Aunque el control de calidad no necesita usar estados señuelo, los estados señuelo pueden ser muy beneficiosos en la práctica. Para el ejemplo de la Figura 10a, los valores de bits aleatorios en pulsos no señuelo se representan con bitsusuario e {0, 1}n, con una secuencia de base aleatoria correspondiente tal como 0 e {+, * }n para QC tipo BB84 con base en polarización.
La autoridad de confianza luego firma un mensaje con una de sus claves secretas y transmite el mensaje firmado al dispositivo i de usuario. El contenido del mensaje depende de la implementación. El dispositivo i de usuario recibe el mensaje firmado y verifica la firma en el mensaje utilizando la información de verificación intercambiada durante la inscripción. En la Figura 10a, se han utilizado estados de señuelo y la autoridad de confianza crea un mensaje para informar al dispositivo i de usuario de los índices en la secuencia de señales en las que la autoridad de confianza detectó un fotón. La autoridad de confianza firma el mensaje con una de sus claves secretas de firma X digital. Por ejemplo, la autoridad de confianza usa un 1 para indicar un período en el que se midió un fotón y usa un 0 para indicar un período en el que no se midió ningún fotón, para índices enteros a lo largo del eje de eventos para el dispositivo i de usuario y la autoridad de confianza, que usan la misma hora de inicio y períodos para pulsos en QC.
El dispositivo i de usuario comprueba la firma de la autoridad de confianza en el mensaje utilizando la información de verificación de la autoridad de confianza V (por ejemplo, SVK), y utiliza las detecciones de señuelo de la autoridad de confianza para estimar cuántas señales multifotónicas llegaron a la autoridad de confianza. El dispositivo i de usuario determina entonces los índices para las detecciones que no son de señuelo. Como se muestra en la Figura 10a, el dispositivo i de usuario informa a la autoridad de confianza cuál de los índices de las detecciones de la autoridad de confianza utilizará para la autenticación multifactor. Tanto el dispositivo i de usuario como la autoridad de confianza seleccionan esas señales.
El usuario ahora tiene (si se han utilizado estados de señuelo, después de la selección descendente utilizando índices de detección) una secuencia de n bits de los valores de bits aleatorios que el usuario envió a la autoridad de confianza. Los valores de bits aleatorios se representan con bitsusuario e {0, 1}n, con una secuencia de base aleatoria correspondiente como 0 e {+, * }n cuando se ha utilizado control de calidad tipo BB84 con base en polarización. De manera similar, la autoridad de confianza ha medido valores de bits aleatorios representados con bitsautoridad_de_confianza e {0, 1}n, con una secuencia de base de medición correspondiente tal como 9 e {+, * }n cuando se ha utilizado QCtipo BB84 con base en polarización.
Para QC, la autoridad de confianza transmite información que indica su secuencia de base de medición al dispositivo de usuario. Puede transmitirse directamente una indicación de la secuencia de bases de medición, pero eso podría revelar innecesariamente información de interés para un espía. Para evitar eso, la autoridad de confianza puede ocultar la información sobre la secuencia de base de medición utilizando la versión codificada D(w) de la contraseña de usuario (codificada usando la función de comprobación aleatoria h(i) / información del factor del dispositivo asignada al dispositivo del usuario), luego transmita la versión oculta de la secuencia de base de medición. Por ejemplo, como se muestra en la Figura 10b, la autoridad de confianza puede calcular el OR exclusivo de las bases de medición 9 y la versión codificada de la contraseña: k = 9 © D(w), donde k representa la versión oculta de las bases de medición de la autoridad de confianza. En este cálculo, se asignan valores binarios a las bases. Por ejemplo, "+" se interpreta como el valor 0 y "*" se interpreta como el valor 1. Cuando la versión codificada D(w) de la contraseña y la información que indica la secuencia base de medición tienen cada uno el mismo número de bits (por ejemplo, 1024 bits), la operación XOR es una simple comparación bit a bit. Para que sea más probable que la secuencia base de medición y la versión codificada D(w) de la contraseña tienen el mismo recuento de bits, el dispositivo de usuario puede señalar suficientes fotones durante QC para que la autoridad de confianza, con una probabilidad muy alta, detecte más fotones que el objetivo (o, cuando se usan estados de señuelo, más que el recuento objetivo de fotones en índices que no son de señuelo). Como parte de la selección descendente, el dispositivo del usuario puede elegir un subconjunto de los fotones detectados (o, cuando se usan estados de señuelo, un subconjunto de las detecciones que no son de señuelo) que es igual al recuento de bits en la versión codificada D(w) de la contraseña. A continuación, se utiliza la secuencia base de medición para este subconjunto de fotones detectados. Sin embargo, si la información que indica la secuencia base de medición tiene menos bits, los bits de la versión codificada D (w) de la contraseña pueden eliminarse.
El dispositivo i de usuario recibe la información que indica las bases de medición de la autoridad de confianza. Cuando la autoridad de confianza ha transmitido una versión oculta de las bases de medición, el dispositivo i de usuario recupera la secuencia base de medida. El dispositivo i de usuario puede recuperar la información sobre la secuencia de base de medición usando la versión codificada de la contraseña de usuario (codificada usando la función de comprobación aleatoria h(i) / información del factor de dispositivo asignado al dispositivo del usuario, para una contraseña ingresada por el usuario). Por ejemplo, como se muestra en la Figura 10b, el dispositivo i de usuario puede calcular el OR exclusivo de la información recibida k y la versión codificada de la contraseña: F = k © D(w), donde k representa la versión oculta de las bases de medición de la autoridad de confianza, y F representa la versión del dispositivo de usuario de las bases de medición 9.
A continuación, el dispositivo de usuario determina cada evento / índice para el cual la base de envío (del dispositivo de usuario) coincide con la base medida (de la autoridad de confianza). Para hacer esto, el dispositivo de usuario compara las bases de envío 0 con los valores correspondientes en las bases medidas recuperadas F para obtener I = {i: 0i = Fi}, donde I representa el conjunto de índices de detección / períodos de tiempo "coincidentes" i para usar. El número de elementos en I es B. En promedio, cuando hay 1024 valores en la secuencia de base, B es 512, por ejemplo. El dispositivo de usuario puede determinar las bases coincidentes simultáneamente con la recuperación de las bases de medición de la autoridad de confianza, realizando las operaciones de comparación y operaciones XOR bit a bit o (como se muestra en la Figura 10b) realizar las operaciones secuencialmente.
El dispositivo de usuario envía una indicación de bases coincidentes a la autoridad de confianza. Por ejemplo, el dispositivo del usuario envía la lista de índices/períodos de tiempo I, como se muestra en la Figura 10b. Dichos índices / períodos de tiempo se indexan a lo largo de la secuencia de base de medición conocida por la autoridad de confianza, de modo que la autoridad de confianza pueda recuperar las bases coincidentes. De esta forma, el dispositivo de usuario evita transmitir información sobre las bases de envío y, como se indicó anteriormente, la información sobre las bases de medición puede enviarse solo en forma oculta, lo que evita que un posible espía conozca cualquier información de base real. También reduce drásticamente el alcance de un ataque de memoria cuántica por parte de una autoridad de confianza deshonesta. Alternativamente, el dispositivo de usuario puede transmitir sus bases de envío a la autoridad de confianza, para que la autoridad de confianza determine por sí misma las bases coincidentes en comparación con las bases de medición.
En este punto, tanto el dispositivo del usuario como la autoridad de confianza cuentan con información que les permite filtrar y seleccionar eventos para los cuales se realizó el envío y la medición en las mismas bases. Tanto el dispositivo de usuario como la autoridad de confianza forman sus respectivos conjuntos de bits secretos compartidos. En el dispositivo del usuario, bitSusuano_compartido = { bitsusuano | I }, donde bitSusuario_compartido representa el cálculo del dispositivo de usuario de bits secretos compartidos para los bits transmitidos bitsusuano en los índices coincidentes I. En la autoridad de confianza, bitsautoridad_de_confianza_compartida = { bitsautoridad_de_confianza | I }, donde bitsautoridad_de_confianza_compartida representa el cálculo de la autoridad de confianza de los bits secretos compartidos para los bits medidos bitsautoridad_de_confianza en los índices coincidentes I.
El usuario también puede transmitir (no se muestra en la Figura 10b) información de corrección de errores a la autoridad de confianza, para permitir que la autoridad de confianza corrija errores de bits en su versión de los bits secretos compartidos. La información de corrección de errores puede corresponder al síndrome de un código de verificación de paridad de baja densidad ("LDPC") aplicado a los bits secretos compartidos bitsusuano_compart¡do del dispositivo del usuario. Esta es la corrección de errores de reenvío utilizando códigos LDPC. Los códigos LDPC proporcionan un mecanismo eficaz para la corrección de errores, lo que permite a la autoridad de confianza corregir las ratas de error típicas que se encuentran en QC de fibra óptica hasta el intervalo de varias decenas de kilómetros. Alternativamente, el dispositivo de usuario y la autoridad de confianza usan otro tipo de código de corrección de errores para corregir errores de bits en los bits secretos compartidos. En general, un código de corrección de errores proporciona suficiente información ("margen de maniobra") para que la autoridad de confianza corrija errores de bit, sin revelar tanto que un espía pueda adivinar bits. La autoridad de confianza utiliza la información de corrección de errores para corregir cualquier error en su versión. bitSautoridad_de_conf¡anza_compart¡da de los bits secretos compartidos. En este punto, los bits secretos compartidos en el dispositivo del usuario deberían ser iguales a los bits secretos compartidos en la autoridad de confianza.
Como etapa final de la identificación cuántica, la autoridad de confianza puede iniciar una secuencia de respuesta al desafío. Por ejemplo, el dispositivo de usuario i y la autoridad de confianza intercambian información para funciones de comprobación aleatoria, luego usan las funciones de comprobación aleatoria para calcular valores con base en bits secretos compartidos e información de factor de usuario, para una verificación final del usuario.
En implementaciones de ejemplo, como se muestra en la Figura 10b, el dispositivo i de usuario selecciona información para una función de comprobación aleatoria / tal como una función de comprobación aleatoria aleatoria fuertemente 2-universal y transmite información especificando la función de comprobación aleatoria f a la autoridad de confianza. La función de comprobación aleatoria f Puede ser definida como f: {0, 1}B ^ {0 , 1}m , por m < 64. La funcion de comprobación aleatoria f puede ser universal, porque el dispositivo i del usuario llega a recogerlo. Por ejemplo, la descripción transmitida de la función de comprobación aleatoria f puede ser la descripción de un B * mo función afín de Toeplitz. También como se muestra en la Figura 10b, la autoridad de confianza selecciona información para una función de comprobación aleatoria g, como una función de comprobación aleatoria aleatoria fuertemente 2-universal, y transmite información que especifica la función de comprobación aleatoria g al dispositivo del usuario i. La función de comprobación aleatoria g se puede definir como g: {0, 1}64 ^ {0 , 1}m, y también puede ser una función Toeplitz afín. Alternativamente, se intercambian diferentes tipos de información para funciones de comprobación aleatoria (por ejemplo, bits clave para una función de comprobación aleatoria criptográfica, como se describe a continuación).
Como se muestra en la Figura 10b, el dispositivo i de usuario calcula un valor de verificación zusuaro aplicando las dos funciones de comprobación aleatoria a sus bits secretos compartidos bitsusuano_compartido y la contraseña de usuario (ingresada por el usuario), respectivamente: zusuaro =F[bitSusuario_compartdo] © g[w]. El dispositivo i del usuario envía el valor de verificación zusuario a la autoridad de confianza.
La autoridad de confianza también calcula un valor de comparación Zautoridad_de_confianza aplicando las dos funciones de comprobación aleatoria a sus bits secretos compartidos bitsautondad_de_confíanza_compartida y la contraseña de usuario (recuperada de la versión encriptada), respectivamente: zautoridad_de_confianza = f[bitsautoridad_de_confianza_compartida] © [w]. La autoridad de confianza compara los dos valores para verificar si su valor de comparación zautoridad_de_conf¡anza es igual al valor de verificación zusuario desde el dispositivo del usuario.
Si los dos valores coinciden, el usuario se autentica y la autoridad de confianza lo acepta. Como se muestra en la Figura 10b, la autoridad de confianza envía información al dispositivo de usuario indicando el resultado "aceptado" de la comparación. De lo contrario, si los dos valores no coinciden, el usuario no se autentica y la autoridad de confianza lo rechaza. La autoridad de confianza puede señalar información al dispositivo de usuario indicando el resultado "rechazado" de la comparación. La señal que indica el resultado de la comparación puede ser firmada por la autoridad de confianza con una de sus claves de firma digital, para permitir que el dispositivo del usuario verifique la fuente de la señal.
La autoridad de confianza rechazará a los usuarios deshonestos en diversos casos. Si la autoridad de confianza "rechaza" un usuario auténtico (por ejemplo, debido a una rata de error inusualmente alta en el canal cuántico), el usuario puede volver a realizar el protocolo con la autoridad de confianza. Esto puede repetirse hasta x veces. Después de demasiados intentos, el usuario dado (o dispositivo con información dada para la función de comprobación aleatoria h ) está bloqueado.
3. Etapas de uso de ejemplo
Si la autoridad de confianza acepta y autentica al usuario i, el usuario ha establecido ante la autoridad de confianza que el usuario conoce la contraseña secreta w y está en posesión del dispositivo i único asignado al usuario. El usuario (o el usuario y la autoridad de confianza) puede pasar al uso de los bits secretos compartidos. Por ejemplo, los bits secretos compartidos se pueden usar directamente como una contraseña para iniciar sesión en un sistema informático, ingresar a un sitio web seguro, obtener acceso a un edificio, establecer una prueba de la identidad del usuario, realizar QC adicional para el establecimiento de claves autenticadas por contraseña para comunicaciones seguras con otros usuarios, o para algún otro propósito.
O bien, los bits de secreto compartido se pueden usar para generar bits de secreto compartido adicionales. Por ejemplo, el dispositivo i de usuario determina información para una nueva función de comprobación aleatoria p. La función de comprobación aleatoria p puede ser una función Toeplitz afín, alguna otra función de comprobación aleatoria secreta aleatoria 2-universal, o alguna otra forma de función de comprobación aleatoria. El dispositivo i del usuario envía información para la función de comprobación aleatoria p a la autoridad de confianza. El dispositivo i del usuario y la autoridad de confianza aplica la función de comprobación aleatoria p a los bits secretos compartidos que ya tienen de QC (bitsusuario_compartido para el dispositivo del usuario, y bitsautondad_de_conf¡anza_compartida para la autoridad de confianza) para generar bits secretos compartidos adicionales, que el usuario puede utilizar para cualquiera de los fines mencionados anteriormente. Además, una parte de los bits secretos compartidos adicionales se puede usar para definir información para una nueva función de comprobación aleatoria h para su uso durante la autenticación multifactor posterior con QC.
4. Alternativas.
En los ejemplos anteriores, el dispositivo del usuario dado almacena información para una única función de comprobación aleatoria h para la autenticación multifactor con una autoridad de confianza. Alternativamente, el dispositivo del usuario dado almacena información para múltiples funciones de comprobación aleatoria secretas diferentes h , con cada información de función de comprobación aleatoria asociada con una acción, sitio o dominio deseado en particular. Por ejemplo, se utilizan diferentes funciones de comprobación aleatoria (o diferentes bits de clave para una función de comprobación aleatoria) para generar contraseñas de un solo uso para diferentes sitios. Al mismo tiempo, se puede usar una contraseña de usuario para todas las acciones, sitios o dominios, lo que simplifica el proceso para un usuario al proporcionar una solución de "inicio de sesión único" desde la perspectiva del usuario. O bien, el dispositivo del usuario dado almacena información para múltiples funciones de comprobación aleatoria secretas diferentes h, con cada información de función de comprobación aleatoria asociada con una autoridad de confianza diferente.
En muchos de los ejemplos anteriores, la función de comprobación aleatoria h es una función de comprobación aleatoria universal determinada por la autoridad de confianza (por ejemplo, mediante la generación de una matriz aleatoria), y especificada con información almacenada en la memoria del sistema informático que implementa la autoridad de confianza y almacenada en la memoria del dispositivo del usuario. Del mismo modo, muchos ejemplos de las funciones de comprobación aleatoria f y g son funciones de comprobación aleatoria universales. Alternativamente, el sistema informático que implementa la autoridad de confianza y el dispositivo de usuario pueden usar una función de comprobación aleatoria criptográfica para cualquiera de las funciones de comprobación aleatoria f, g, h y p. Por ejemplo, para cualquier función de comprobación aleatoria f, g, h o p, el sistema o dispositivo que especifica la función de comprobación aleatoria genera una serie de bits aleatorios que se utilizan como clave para una función de comprobación aleatoria criptográfica. La función de comprobación aleatoria criptográfica puede ser SHA-256 u otra función de comprobación aleatoria criptográfica. Los bits clave se almacenan en la memoria del dispositivo del usuario y el sistema informático que implementa la autoridad de confianza (por ejemplo, después de colocarse durante el registro para la función de comprobación aleatoria h, o después de ser intercambiado durante la autenticación para la función de comprobación aleatoria f o g). Para usar la función de comprobación aleatoria criptográfica, los bits clave se concatenan con la entrada adecuada a la función de comprobación aleatoria (por ejemplo, contraseña para la función de comprobación aleatoria h o g, o bits compartidos para la función de comprobación aleatoria f). Cuando se concatenan con la entrada, los bits clave cambian la salida de la función de comprobación aleatoria criptográfica.
Cuando se utiliza una función de comprobación aleatoria criptográfica, la información del factor de dispositivo almacenada son los bits clave que se concatenan a la entrada adecuada. Diferentes valores de bits clave pueden proporcionar información de factor de dispositivo diferente. La misma función de comprobación aleatoria criptográfica (por ejemplo, SHA-256) se puede utilizar para diferentes usuarios, acciones, sitios, dominios, etc., con cambios en los bits de clave que se generan aleatoriamente para los diferentes usuarios, acciones, sitios, dominios, etc. O bien, se pueden utilizar diferentes funciones de comprobación aleatoria criptográficas.
B. Técnicas Generalizadas para la Inscripción para la Autenticación de Multifactores con QC.
La Figura 11 muestra una técnica (1100) generalizada para inscribir a un usuario para la autenticación multifactor con QC. Un dispositivo de usuario realiza la técnica (1100). El dispositivo de usuario puede ser una tarjeta de QC como se describe en la sección I, un dispositivo móvil como se describe en la sección II, una estación de trabajo, un sistema montado en estante(por ejemplo, con un dispositivo de control de supervisión y adquisición de datos (SCADA) o un controlador lógico programable para un sistema de control) u otro dispositivo informático. La Figura 12 muestra una técnica (1200) generalizada correspondiente para gestionar la inscripción de un usuario para autenticación multifactor con QC. Un sistema informático que implementa una autoridad de confianza realiza la técnica (1200). El sistema que implementa la autoridad de confianza es el mismo que el sistema que implementa una autoridad de registro. Alternativamente, la autoridad de registro y la autoridad de confianza pueden implementarse en diferentes sistemas en comunicación segura entre sí, en cuyo caso la autoridad de registro asume el rol de autoridad de confianza para fines de inscripción (por ejemplo, proporcionando información de verificación para verificar la autoridad de confianza durante la autenticación multifactor, determinando una función de comprobación aleatoria para la información del factor del dispositivo).
Para empezar, el sistema informático que implementa la autoridad de confianza determina la información del factor de dispositivo que se utilizará para el dispositivo del usuario. Por ejemplo, el sistema informático determina información para una función de comprobación aleatoria, que puede basarse, al menos en parte, en la salida de un generador de números aleatorios. La función de comprobación aleatoria se puede especificar como una matriz Toeplitz o alguna otra forma de matriz. Alternativamente, la información del factor del dispositivo es información para otro tipo de función de comprobación aleatoria u otra información que puede usarse para identificar (para la autoridad de confianza) el dispositivo del usuario como asociado con un usuario.
Con referencia a la Figura 12, el sistema informático que implementa la autoridad de confianza transmite (1210) la información del factor de dispositivo asociada con el dispositivo del usuario. La información del factor del dispositivo se transmite/recibe directamente desde el sistema informático que implementa la autoridad de confianza, por ejemplo, durante una sesión de inscripción en persona. Alternativamente, la información del factor del dispositivo se transmite/recibe a través de una conexión de red. Con referencia a la Figura 11, un dispositivo de usuario recibe (1110) la información del factor de dispositivo asociada con el dispositivo de usuario.
El sistema informático que implementa la autoridad de confianza también determina la información del factor de usuario. Por ejemplo, el sistema informático que implementa la autoridad de confianza puede recibir una contraseña de usuario de un usuario durante la sesión de inscripción en persona y luego cifrar la contraseña de usuario para producir una versión cifrada de la contraseña de usuario. La contraseña de usuario puede ser una cadena ASCII de 8 a 12 caracteres sugerida por el usuario, por ejemplo. Como alternativa, la contraseña de usuario puede tener una longitud más corta o más larga, o usar un conjunto de caracteres que no sea ASCII. Para cifrar la contraseña del usuario, la autoridad de confianza puede utilizar una clave de cifrado secreta de la autoridad de confianza. Alternativamente, la información del factor usuario es otro tipo de información que se puede utilizar para identificar al usuario ante la autoridad de confianza.
Con referencia a la Figura 12, el sistema informático que implementa la autoridad de confianza transmite (1220) la información del factor de usuario asociada con un usuario. La información del factor de usuario se transmite/recibe directamente desde el sistema informático que implementa la autoridad de confianza, por ejemplo, durante la sesión de inscripción en persona. Alternativamente, la información del factor de usuario se transmite/recibe a través de una conexión de red durante el registro. Con referencia a la Figura 11, el dispositivo de usuario recibe (1120) información del factor de usuario asociada con el usuario.
Para su uso en la autenticación de la autoridad de confianza, el sistema informático que implementa la autoridad de confianza puede determinar la información de verificación asociada con las claves de firma digital de la autoridad de confianza. Por ejemplo, la información de verificación es un valor de clave de verificación de firma ("SVK") para un árbol de comprobación aleatoria de Merkle u otra forma de información de verificación. El sistema informático que implementa la autoridad de confianza transmite la información de verificación. La información de verificación se puede transmitir directamente desde el sistema informático que implementa la autoridad de confianza, por ejemplo, durante la sesión de inscripción en persona. Alternativamente, la información de verificación se puede transmitir a través de una conexión de red. El dispositivo de usuario puede recibir la información de verificación y almacenar la información de verificación en la memoria del dispositivo de usuario, para su uso en la autenticación de la autoridad de confianza.
Con referencia a la Figura 11, el dispositivo de usuario almacena (1130) la información del factor de dispositivo y la información del factor de usuario en la memoria del dispositivo de usuario para su uso en la autenticación multifactor. Por ejemplo, como parte del almacenamiento, se almacena una indicación de una función de comprobación aleatoria (como información que especifica la función de comprobación aleatoria o bits clave para una función de comprobación aleatoria criptográfica) en la memoria del dispositivo del usuario, y la versión cifrada de la contraseña del usuario se almacena en la memoria del dispositivo del usuario. Con referencia a la Figura 12, el sistema informático que implementa la autoridad de confianza almacena (1230) la información del factor del dispositivo en la memoria para su uso en la autenticación multifactor. Por ejemplo, como parte del almacenamiento, se almacena una indicación de la función de comprobación aleatoria (tal como información que especifica la función de comprobación aleatoria o bits clave para una función de comprobación aleatoria criptográfica) en la memoria del sistema informático que implementa la autoridad de confianza.
Para proporcionar una solución de "inicio de sesión único" en la que se utiliza la misma información del factor de usuario para múltiples acciones, sitios a los que se accede o dominios a los que se accede, la información del factor del dispositivo puede incluir información diferente del factor del dispositivo para cada una de las múltiples acciones, sitios o dominios. Por ejemplo, la autoridad de confianza y el dispositivo de usuario almacenan información para múltiples funciones de comprobación aleatoria secretas diferentes h, con cada función de comprobación aleatoria asociada con una acción, sitio o dominio particular deseado (o, la autoridad de confianza y el dispositivo de usuario almacenan diferentes bits clave para una función de comprobación aleatoria criptográfica para diferentes acciones, sitios, dominios, etc.). Al mismo tiempo, la misma información del factor de usuario (porejemplo, contraseña de usuario único) se puede utilizar para todas las acciones, sitios o dominios, lo que simplifica el proceso para el usuario.
C. Técnicas Generalizadas para la Autenticación Multifactor con QC.
La Figura 13 muestra una técnica generalizada (1300) para la autenticación multifactor utilizando QC con un sistema informático que implementa una autoridad de confianza. Un dispositivo de usuario realiza la técnica (1300). El dispositivo de usuario puede ser una tarjeta de QC como se describe en la sección I, un dispositivo móvil como se describe en la sección II, una estación de trabajo, un sistema montado en estante (porejemplo, con dispositivo SCADA o controlador lógico programable para un sistema de control) u otro dispositivo informático. La Figura 14 muestra una técnica generalizada correspondiente (1400) para la autenticación multifactor usando QC con un sistema informático que implementa una autoridad de confianza. Un sistema informático que implementa una autoridad de confianza realiza la técnica (1400).
Con referencia a la Figura 13, para comenzar, el dispositivo de usuario recupera (1310), de la memoria del dispositivo de usuario, información de factor de dispositivo asociada con el dispositivo de usuario e información de factor de usuario asociada con un usuario. Por ejemplo, la información del factor de usuario es una versión cifrada de una contraseña de usuario, y la información del factor de dispositivo es información para una función de comprobación aleatoria, para la cual se recupera una indicación de la memoria del dispositivo de usuario. Si se va a usar información de factor de dispositivo diferente para diferentes acciones, sitios, dominios, etc., la información de factor de dispositivo apropiada se recupera de la memoria del dispositivo de usuario.
Cuando la información del factor de usuario es una versión cifrada de la contraseña del usuario, el dispositivo del usuario también puede recibir la entrada del usuario para la contraseña del usuario, para que la use el dispositivo del usuario en la autenticación multifactor. En cuanto a la versión cifrada de la contraseña de usuario, el dispositivo de usuario también la transmite a la autoridad de confianza, para que la utilice la autoridad de confianza para recuperar la contraseña de usuario.
Con referencia a la Figura 14, el sistema informático que implementa la autoridad de confianza recibe (1410) información del factor de usuario asociada con un usuario. Cuando la información del factor de usuario es una versión cifrada de una contraseña de usuario, el sistema informático también recupera la contraseña de usuario a partir de la versión cifrada de la contraseña de usuario utilizando una clave de cifrado secreta de la autoridad de confianza.
El sistema informático que implementa la autoridad de confianza también recupera (1420), de la memoria del sistema informático, información del factor de dispositivo asociada con el dispositivo del usuario. Por ejemplo, la información del factor de dispositivo es información para una función de comprobación aleatoria, para la cual se recupera una indicación de la memoria del sistema informático. Si se va a usar información de factor de dispositivo diferente para diferentes acciones, sitios, dominios, etc., la información de factor de dispositivo apropiada se recupera de la memoria del sistema informático.
El dispositivo de usuario utiliza (1320) la información del factor de dispositivo y la información del factor de usuario en la autenticación multifactor con el sistema informático que implementa la autoridad de confianza (por ejemplo, transmitiendo la información del factor del usuario al sistema informático que implementa la autoridad de confianza, utilizando la información del factor del dispositivo y una contraseña de usuario para determinar las bases de medición para QC). Por su parte, el sistema informático que implementa la autoridad de confianza utiliza (1430) la información del factor dispositivo y la información del factor usuario en la autenticación multifactor con el dispositivo del usuario (por ejemplo, recuperar una contraseña de usuario de la información del factor de usuario, usar la información del factor del dispositivo y una contraseña de usuario para ocultar las bases de medición para QC).
La autenticación de múltiples factores puede incluir uno o más de los estados de señuelo en QC, amplificación de privacidad y corrección de errores. Por ejemplo, como parte de QC con estados de señuelo, el dispositivo de usuario (a) transmite pulsos de fotones en estados de señuelo y pulsos de fotones en estados de no señuelo. En las operaciones correspondientes, el sistema informático que implementa la autoridad de confianza (b) recibe pulsos de fotones en estados de señuelo y pulsos de fotones en estados de no señuelo, y (c) transmite un conjunto de índices de detección firmados por la autoridad de confianza. El dispositivo de usuario (d) recibe un conjunto de índices de detección firmados por la autoridad de confianza, (e) recupera información de verificación de la memoria del dispositivo de usuario, (f) verifica la autoridad de confianza utilizando la información de verificación y los índices de detección firmados, y (g) transmite una indicación de estados de no señuelo. El sistema informático que implementa la autoridad de confianza (h) recibe una indicación de estados de no señuelo. El dispositivo de usuario y el sistema informático que implementa la autoridad de confianza pueden seleccionar índices que no sean señuelos.
Cuando la información del factor del dispositivo es información para una función de comprobación aleatoria, el sistema informático que implementa la autoridad de confianza puede aplicar la función de comprobación aleatoria a una contraseña de usuario para la información del factor del usuario y luego ocultar las bases de medición para QC usando los resultados de aplicar la función de comprobación aleatoria a la contraseña de usuario. Por ejemplo, el sistema informático calcula el OR exclusivo de (a) información que indica las bases de medición y (b) los resultados de aplicar la función de comprobación aleatoria a la contraseña del usuario. El sistema informático transmite las bases de medición ocultas. El dispositivo de usuario recibe la información oculta que indica las bases de medición para el control de calidad, luego recupera las bases de medición utilizando la función de comprobación aleatoria y una contraseña de usuario para la información del factor de usuario. Por ejemplo, para recuperar las bases de medición, el dispositivo del usuario aplica la función de comprobación aleatoria a la contraseña del usuario, luego calcula el OR exclusivo de (a) la información oculta que indica las bases de medición y (b) los resultados de aplicar la función de comprobación aleatoria a la contraseña del usuario. Como en QC convencional, el dispositivo de usuario compara las bases de medición con las bases de envío para la QC y determina los bits secretos compartidos para la QC. Por su parte, el sistema informático de la autoridad de confianza recibe una indicación de cuál de las bases de medición coincide con las bases de envío para la QC, y determina bits secretos compartidos para la QC.
Para continuar con la autenticación multifactor, el dispositivo del usuario y la autoridad de confianza pueden intercambiar información para dos funciones de comprobación aleatoria. Por ejemplo, el dispositivo de usuario especifica información para una de las funciones de comprobación aleatoria y la autoridad de confianza especifica información para la otra función de comprobación aleatoria. El dispositivo de usuario aplica las dos funciones de comprobación aleatoria, respectivamente, a los bits secretos compartidos resultantes de QC y una contraseña de usuario, para producir un valor de verificación. El dispositivo de usuario transmite el valor de verificación. Por su parte, el sistema informático que implementa la autoridad de confianza aplica las dos funciones de comprobación aleatoria, respectivamente, a los bits secretos compartidos resultantes de QC y la contraseña del usuario, para producir un valor de comparación. El sistema informático de la autoridad de confianza recibe el valor de verificación y compara el valor de verificación con el valor de comparación. Si coinciden, el usuario está autenticado. El sistema informático de la autoridad de confianza transmite una indicación del éxito o fracaso de la autenticación multifactor. El dispositivo de usuario recibe la indicación de éxito o fracaso de la autenticación multifactor.
En vista de las muchas realizaciones posibles a las que se pueden aplicar los principios de la invención descrita, debe reconocerse que las realizaciones ilustradas son solo ejemplos preferidos de la invención y no deben considerarse como limitantes del alcance de la invención. Más bien, el alcance de la invención está definido por las siguientes reivindicaciones. Por lo tanto, se reivindica como invención todo lo que entra dentro del alcance de estas reivindicaciones.

Claims (9)

REIVINDICACIONES
1. Un método de autenticación multifactor que utiliza comunicación cuántica con un sistema informático que implementa una autoridad de confianza, comprendiendo el método (1000), con un dispositivo de usuario: transmitir, a la autoridad de confianza, pulsos de fotones;
recibir, de la autoridad de confianza, un mensaje firmado por la autoridad de confianza;
recuperar información de verificación de la memoria del dispositivo de usuario;
verificar la autoridad de confianza utilizando la información de verificación y el mensaje firmado;
recibir, de la autoridad de confianza, bases de medición ocultas utilizadas en una sesión de comunicación cuántica entre el dispositivo de usuario y la autoridad de confianza, siendo las bases de medición ocultas generadas por la autoridad de confianza utilizando las bases de medición que utilizó para medir los fotones de los pulsos, información del factor de dispositivo asociada con el dispositivo de usuario e información del factor de usuario asociada con un usuario, en el que la información del factor de dispositivo comprende información para una función de comprobación aleatoria y la información de factor de usuario asociada con un usuario comprende una contraseña de usuario, y en el que las bases de medición están ocultas por el autoridad confiable usando los resultados de aplicar la función de comprobación aleatoria a la contraseña del usuario;
recuperar bases de medición, correspondientes a las bases de medición ocultas, utilizando la función de comprobación aleatoria y la contraseña de usuario; y
derivar bits secretos que se comparten entre el dispositivo del usuario y la autoridad de confianza utilizando las bases de medición.
2. El método de la reivindicación 1, comprendiendo además el método, con el dispositivo de usuario: recuperar, de la memoria del dispositivo de usuario, una versión cifrada de la contraseña del usuario y la información del factor del dispositivo; y
como parte de la autenticación multifactor, transmitir la versión cifrada de la contraseña de usuario para que la utilice la autoridad de confianza para recuperar la contraseña de usuario.
3. El método de la reivindicación 1, en el que la recuperación de las bases de medición comprende, además: aplicar la función de comprobación aleatoria a la contraseña del usuario; y
calcular un OR exclusivo de las bases de medición ocultas y los resultados de aplicar la función de comprobación aleatoria a la contraseña del usuario.
4. El método de cualquier reivindicación anterior, en el que la autenticación comprende, además:
intercambiar información para dos funciones de comprobación aleatoria con la autoridad de confianza;
aplicar una de las dos funciones de comprobación aleatoria a los bits secretos compartidos resultantes de la comunicación cuántica y la otra de las dos funciones de comprobación aleatoria a la contraseña del usuario para producir un valor de verificación;
transmitir el valor de verificación; y
recibir una indicación de éxito o fracaso de la autenticación multifactor.
5. Un sistema informático que implementa una autoridad de confianza, en el que el sistema informático está adaptado para realizar un método de autenticación multifactor que utiliza comunicación cuántica, comprendiendo el sistema informático:
al menos una conexión de comunicación configurada para recibir, desde un dispositivo de usuario, información de factor de usuario asociada con un usuario;
al menos una memoria; y
al menos una unidad de procesamiento configurada para:
recuperar información de factor de usuario de una versión cifrada de la información de factor de usuario utilizando una clave de cifrado secreta de la autoridad de confianza, en el que la información de factor de usuario comprende una contraseña de usuario;
recuperar, de la memoria del sistema informático, información de factor de dispositivo asociada con el dispositivo de usuario, en el que la información de factor de dispositivo comprende información para una función de comprobación aleatoria;
aplicar la función de comprobación aleatoria a la contraseña del usuario;
ocultar, con base en los resultados de aplicar la función de comprobación aleatoria a la contraseña del usuario, bases de medición utilizadas por el sistema informático para medir fotones de pulsos en una sesión de comunicación cuántica con el dispositivo del usuario;
enviar, al dispositivo del usuario, las bases de medición ocultas; y
derivar bits secretos que se comparten entre el sistema informático y el dispositivo de usuario, en el que los bits secretos se derivan con base en una indicación recibida de qué bases de medición coinciden con las bases de envío para la comunicación cuántica;
en el que al menos una unidad de procesamiento está configurada además para:
recibir, desde el dispositivo del usuario pulsos de fotones; y
enviar al dispositivo del usuario un mensaje firmado por la autoridad de confianza.
6. El sistema informático de la reivindicación 5, en el que al menos una unidad de procesamiento está configurada además para recuperar la contraseña de usuario de la versión cifrada de la información del factor de usuario utilizando una clave de cifrado secreta de la autoridad de confianza.
7. El sistema informático de la reivindicación 5, en el que al menos una unidad de procesamiento está configurada para ocultar las bases de medición con base en un OR exclusivo de información que indica las bases de medición y los resultados de aplicar la función de comprobación aleatoria a la contraseña de usuario.
8. El sistema informático de acuerdo con una cualquiera de las reivindicaciones 5 a 7, en el que al menos una unidad de procesamiento está configurada además para:
intercambiar información para dos funciones de comprobación aleatoria con el dispositivo de usuario;
aplicar una de las dos funciones de comprobación aleatoria a los bits secretos y aplicar la otra de las dos funciones de comprobación aleatoria a la información del factor de usuario para producir un valor de comparación;
recibir un valor de verificación;
comparar el valor de verificación con el valor de comparación; y
transmitir una indicación de éxito o fracaso de la autenticación multifactor.
9. El sistema informático de la reivindicación 5, en el que las funciones de la autoridad de confianza se distribuyen entre dos o más nodos físicos mediante el uso compartido de secretos cuánticos, y en el que la comunicación cuántica con el dispositivo de usuario incluye el intercambio de secretos cuánticos entre el dispositivo de usuario y los dos o más nodos físicos que constituyen la autoridad de confianza.
ES13833805T 2012-08-30 2013-08-16 Autenticación multifactor utilizando comunicación cuántica Active ES2912265T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201261695190P 2012-08-30 2012-08-30
PCT/US2013/055410 WO2014035696A2 (en) 2012-08-30 2013-08-16 Multi-factor authentication using quantum communication

Publications (1)

Publication Number Publication Date
ES2912265T3 true ES2912265T3 (es) 2022-05-25

Family

ID=50184580

Family Applications (1)

Application Number Title Priority Date Filing Date
ES13833805T Active ES2912265T3 (es) 2012-08-30 2013-08-16 Autenticación multifactor utilizando comunicación cuántica

Country Status (5)

Country Link
US (1) US9887976B2 (es)
EP (1) EP2891267B1 (es)
CA (1) CA2883313C (es)
ES (1) ES2912265T3 (es)
WO (1) WO2014035696A2 (es)

Families Citing this family (100)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9002792B2 (en) * 2012-11-19 2015-04-07 Compellent Technologies Confirming data consistency in a data storage environment
US9213812B1 (en) * 2012-12-28 2015-12-15 Allscripts Software, Llc Systems and methods related to security credentials
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
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
US10700856B2 (en) 2013-11-19 2020-06-30 Network-1 Technologies, Inc. Key derivation for a module using an embedded universal integrated circuit card
JP6165646B2 (ja) * 2014-01-30 2017-07-19 株式会社東芝 量子鍵配送装置、量子鍵配送システムおよび量子鍵配送方法
JP6359285B2 (ja) * 2014-02-17 2018-07-18 株式会社東芝 量子鍵配送装置、量子鍵配送システムおよび量子鍵配送方法
CN105450403B (zh) 2014-07-02 2019-09-17 阿里巴巴集团控股有限公司 身份认证方法、装置及服务器
EP3202103B1 (en) 2014-09-30 2021-06-16 Telefonaktiebolaget LM Ericsson (publ) Technique for handling data in a data network
CN105553648B (zh) * 2014-10-30 2019-10-29 阿里巴巴集团控股有限公司 量子密钥分发、隐私放大及数据传输方法、装置及系统
KR101718782B1 (ko) * 2015-01-23 2017-03-22 서울시립대학교 산학협력단 양자암호를 이용하여 보안 기능을 강화한 안전 결제 및 안전 인증 시스템
KR101705244B1 (ko) * 2015-01-23 2017-02-09 서울시립대학교 산학협력단 양자암호에 의한 보안 향상성을 갖는 모바일 커머스 및 인증 방법
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
CN105991285B (zh) 2015-02-16 2019-06-11 阿里巴巴集团控股有限公司 用于量子密钥分发过程的身份认证方法、装置及系统
PT3259871T (pt) 2015-02-20 2020-11-10 Ericsson Telefon Ab L M Método para proporcionar um valor de dispersão para uma parte de dados, dispositivo eletrónico e programa de computador
US10396995B2 (en) 2015-02-20 2019-08-27 Telefonaktiebolaget Lm Ericsson (Publ) Method of providing a hash value for a piece of data, electronic device and computer program
JP6478749B2 (ja) * 2015-03-24 2019-03-06 株式会社東芝 量子鍵配送装置、量子鍵配送システムおよび量子鍵配送方法
EP3281145B1 (en) * 2015-04-10 2019-11-06 Telefonaktiebolaget LM Ericsson (publ) Verification paths of leaves of a tree
CN106161402B (zh) * 2015-04-22 2019-07-16 阿里巴巴集团控股有限公司 基于云环境的加密机密钥注入系统、方法及装置
WO2016199507A1 (ja) * 2015-06-09 2016-12-15 日本電信電話株式会社 鍵交換方法、鍵交換システム、鍵配送装置、通信装置、およびプログラム
US10423776B1 (en) * 2015-06-14 2019-09-24 Pepperword Inc. Systems and methods for password-based authentication
GB2542751B (en) * 2015-07-02 2021-08-18 Kent Adrian Future position commitment
CN106411521B (zh) 2015-07-31 2020-02-18 阿里巴巴集团控股有限公司 用于量子密钥分发过程的身份认证方法、装置及系统
CN106470101B (zh) 2015-08-18 2020-03-10 阿里巴巴集团控股有限公司 用于量子密钥分发过程的身份认证方法、装置及系统
CN105071933B (zh) * 2015-09-07 2018-02-06 安徽问天量子科技股份有限公司 应用于pstn公网的量子数据终端
US11398915B2 (en) * 2016-08-26 2022-07-26 Samsung Electronics Co., Ltd. Apparatus and method for two-way authentication
US20170111364A1 (en) * 2015-10-14 2017-04-20 Uber Technologies, Inc. Determining fraudulent user accounts using contact information
CN106656349B (zh) * 2015-10-28 2019-10-25 深圳光启智能光子技术有限公司 光子ca认证方法及系统
CN106656907B (zh) * 2015-10-28 2021-03-02 阿里巴巴集团控股有限公司 用于认证的方法、装置、终端设备及系统
KR101977109B1 (ko) * 2015-11-17 2019-08-28 (주)마크애니 해시함수 기반의 대규모 동시 전자서명 서비스 시스템 및 그 방법
CN107086907B (zh) 2016-02-15 2020-07-07 阿里巴巴集团控股有限公司 用于量子密钥分发过程的密钥同步、封装传递方法及装置
CN107086908B (zh) 2016-02-15 2021-07-06 阿里巴巴集团控股有限公司 一种量子密钥分发方法及装置
US9860064B2 (en) * 2016-03-07 2018-01-02 Citrix Systems, Inc. Encrypted password transport across untrusted cloud network
EP3226461A1 (en) 2016-03-30 2017-10-04 Universität Wien Secure probabilistic one-time program by quantum state distribution
CN107347058B (zh) 2016-05-06 2021-07-23 阿里巴巴集团控股有限公司 数据加密方法、数据解密方法、装置及系统
CN107370546B (zh) 2016-05-11 2020-06-26 阿里巴巴集团控股有限公司 窃听检测方法、数据发送方法、装置及系统
CN107404461B (zh) 2016-05-19 2021-01-26 阿里巴巴集团控股有限公司 数据安全传输方法、客户端及服务端方法、装置及系统
KR101830339B1 (ko) * 2016-05-20 2018-03-29 한국전자통신연구원 양자 네트워크상에서의 양자키 분배 장치 및 방법
CN107769913B (zh) * 2016-08-16 2020-12-29 广东国盾量子科技有限公司 一种基于量子UKey的通信方法及系统
JP2018050122A (ja) * 2016-09-20 2018-03-29 株式会社東芝 送信装置、量子通信システム及び量子通信方法
US10547612B2 (en) 2016-09-21 2020-01-28 International Business Machines Corporation System to resolve multiple identity crisis in indentity-as-a-service application environment
CN107959567B (zh) 2016-10-14 2021-07-27 阿里巴巴集团控股有限公司 数据存储方法、数据获取方法、装置及系统
CN107959656B (zh) * 2016-10-14 2021-08-31 阿里巴巴集团控股有限公司 数据安全保障系统及方法、装置
US10164778B2 (en) 2016-12-15 2018-12-25 Alibaba Group Holding Limited Method and system for distributing attestation key and certificate in trusted computing
US10693659B2 (en) 2017-01-20 2020-06-23 International Business Machines Corporation Generating pseudo random numbers for quantum computing secure authentication
CN108667608B (zh) 2017-03-28 2021-07-27 阿里巴巴集团控股有限公司 数据密钥的保护方法、装置和系统
CN108667773B (zh) 2017-03-30 2021-03-12 阿里巴巴集团控股有限公司 网络防护系统、方法、装置及服务器
CN108736981A (zh) 2017-04-19 2018-11-02 阿里巴巴集团控股有限公司 一种无线投屏方法、装置及系统
CN108259180B (zh) * 2017-09-20 2021-01-01 北京工业大学 一种量子指定验证者签名的方法
WO2019070227A1 (en) * 2017-10-02 2019-04-11 Hewlett-Packard Development Company, L.P. DEVICE AUTHENTICATION
US10855454B1 (en) 2018-03-09 2020-12-01 Wells Fargo Bank, N.A. Systems and methods for quantum session authentication
US11343087B1 (en) 2018-03-09 2022-05-24 Wells Fargo Bank, N.A. Systems and methods for server-side quantum session authentication
US10728029B1 (en) 2018-03-09 2020-07-28 Wells Fargo Bank, N.A. Systems and methods for multi-server quantum session authentication
US11025416B1 (en) * 2018-03-09 2021-06-01 Wells Fargo Bank, N.A. Systems and methods for quantum session authentication
US10812258B1 (en) * 2018-03-09 2020-10-20 Wells Fargo Bank, N.A. Systems and methods for quantum session authentication
CN108494550B (zh) * 2018-03-12 2021-08-06 长春大学 一种基于量子密钥的移动端安全解锁方法
CN108777614B (zh) * 2018-07-05 2023-08-18 清华大学 一种加解密装置和基于通用散列函数的加解密方法
CN109040082B (zh) * 2018-08-10 2020-04-21 阿里巴巴集团控股有限公司 用户的身份内容信息的认证、验证方法和装置
CN109359470B (zh) 2018-08-14 2020-09-01 阿里巴巴集团控股有限公司 多方安全计算方法及装置、电子设备
US10552120B1 (en) 2018-08-20 2020-02-04 Wells Fargo Bank, N.A. Systems and methods for single chip quantum random number generation
US11095439B1 (en) 2018-08-20 2021-08-17 Wells Fargo Bank, N.A. Systems and methods for centralized quantum session authentication
US11190349B1 (en) 2018-08-20 2021-11-30 Wells Fargo Bank, N.A. Systems and methods for providing randomness-as-a-service
US11240013B1 (en) 2018-08-20 2022-02-01 Wells Fargo Bank, N.A. Systems and methods for passive quantum session authentication
US10540146B1 (en) 2018-08-20 2020-01-21 Wells Fargo Bank, N.A. Systems and methods for single chip quantum random number generation
US10855453B1 (en) 2018-08-20 2020-12-01 Wells Fargo Bank, N.A. Systems and methods for time-bin quantum session authentication
US10855457B1 (en) 2018-08-20 2020-12-01 Wells Fargo Bank, N.A. Systems and methods for single chip quantum random number generation
US10733473B2 (en) 2018-09-20 2020-08-04 Uber Technologies Inc. Object verification for a network-based service
US10999299B2 (en) 2018-10-09 2021-05-04 Uber Technologies, Inc. Location-spoofing detection system for a network service
CN109450620B (zh) 2018-10-12 2020-11-10 创新先进技术有限公司 一种移动终端中共享安全应用的方法及移动终端
CN109327308B (zh) * 2018-10-30 2020-08-04 成都信息工程大学 一种具有双向身份认证功能的量子密钥分发方法及系统
US11144334B2 (en) 2018-12-20 2021-10-12 Red Hat, Inc. Quantum computer task manager
US10630467B1 (en) * 2019-01-04 2020-04-21 Blue Ridge Networks, Inc. Methods and apparatus for quantum-resistant network communication
DE102019108049A1 (de) * 2019-03-28 2020-10-01 Pilz Gmbh & Co. Kg Zugriffssteuerungssystem zur Steuerung eines Zugriffs eines Nutzers auf eine oder mehrere Betriebsfunktionen einer technischen Anlage
CN110138550B (zh) * 2019-05-06 2022-09-30 国网甘肃省电力公司信息通信公司 一种qkd网络体系模型构建方法
US11228446B2 (en) 2019-05-10 2022-01-18 Advanced New Technologies Co., Ltd. Blockchain-based reconciliation method and apparatus and electronic device
US11128454B2 (en) * 2019-05-30 2021-09-21 Bong Mann Kim Quantum safe cryptography and advanced encryption and key exchange (AEKE) method for symmetric key encryption/exchange
US11218472B2 (en) * 2019-07-01 2022-01-04 Steve Rosenblatt Methods and systems to facilitate establishing a connection between an access-seeking device and an access granting device
ZA202004225B (en) * 2019-07-11 2023-07-26 Entersekt International Ltd System and method for secure input at a remote service
US11411724B2 (en) * 2019-08-01 2022-08-09 Ut-Battelle, Llc Continuous variable quantum secret sharing
US11483140B2 (en) * 2019-08-02 2022-10-25 Quantumxchange, Inc. Secure out-of-band symmetric encryption key delivery
CN110401493B (zh) * 2019-08-22 2020-11-03 苏州赛安电子技术有限公司 一种基于量子加密的智能自组网通信系统
US11271747B2 (en) * 2019-09-16 2022-03-08 Lawrence Livermore National Security, Llc Optical authentication of images
US20210083865A1 (en) * 2019-09-16 2021-03-18 Quantum Technologies Laboratories, Inc. Quantum Communication System
US11343088B1 (en) 2019-10-01 2022-05-24 National Technology & Engineering Solutions Of Sandia, Llc Systems and methods for quantum optical device authentication
GB2590064B (en) * 2019-11-08 2022-02-23 Arqit Ltd Quantum key distribution protocol
US11429519B2 (en) 2019-12-23 2022-08-30 Alibaba Group Holding Limited System and method for facilitating reduction of latency and mitigation of write amplification in a multi-tenancy storage drive
US11601266B1 (en) * 2020-02-11 2023-03-07 Wells Fargo Bank, N.A. Systems and methods for quantum consensus
US11218471B1 (en) 2020-02-11 2022-01-04 Wells Fargo Bank, N.A. Systems and methods for quantum consensus
US11886380B2 (en) 2020-04-27 2024-01-30 Red Hat, Inc. Quantum file management system
US11416221B2 (en) 2020-05-12 2022-08-16 Red Hat, Inc. Quantum entanglement protection
US11676059B2 (en) 2020-06-23 2023-06-13 Red Hat, Inc. Performing quantum file pattern searching
US11580247B2 (en) 2020-06-25 2023-02-14 Red Hat, Inc. Systems and methods for quantum file permissions
US11562283B2 (en) 2020-06-25 2023-01-24 Red Hat, Inc. Performing quantum file copying
US11556833B2 (en) 2020-06-25 2023-01-17 Red Hat, Inc. Performing quantum file concatenation
US11570007B2 (en) * 2021-02-16 2023-01-31 Bank Of America Corporation Quantum-level cryptography for delegated digital signatures
CN113569223B (zh) * 2021-06-30 2024-02-09 珠海晶通科技有限公司 一种离线设备的安全认证方法
CN113904833B (zh) * 2021-09-30 2022-07-22 北京大学 一种基于门限的动态多因素身份认证方法和通信方法
US11405189B1 (en) * 2021-11-18 2022-08-02 James E. Bennison Systems and methods for trustworthy electronic authentication using a computing device
WO2024034699A1 (ko) * 2022-08-08 2024-02-15 엘지전자 주식회사 양자 통신 시스템에서 사용자 인증을 수행하기 위한 방법 및 이를 위한 장치

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8271336B2 (en) * 1999-11-22 2012-09-18 Accenture Global Services Gmbh Increased visibility during order management in a network-based supply chain environment
US7069234B1 (en) * 1999-12-22 2006-06-27 Accenture Llp Initiating an agreement in an e-commerce environment
US7610233B1 (en) * 1999-12-22 2009-10-27 Accenture, Llp System, method and article of manufacture for initiation of bidding in a virtual trade financial environment
US7364923B2 (en) * 2003-03-03 2008-04-29 The Governing Council Of The University Of Toronto Dressed qubits
US7620182B2 (en) 2003-11-13 2009-11-17 Magiq Technologies, Inc. QKD with classical bit encryption
WO2007123869A2 (en) 2006-04-18 2007-11-01 Magiq Technologies, Inc. Key management and user authentication for quantum cryptography networks
US8655939B2 (en) * 2007-01-05 2014-02-18 Digital Doors, Inc. Electromagnetic pulse (EMP) hardened information infrastructure with extractor, cloud dispersal, secure storage, content analysis and classification and method therefor
US20080263363A1 (en) * 2007-01-22 2008-10-23 Spyrus, Inc. Portable Data Encryption Device with Configurable Security Functionality and Method for File Encryption
US8990583B1 (en) * 2007-09-20 2015-03-24 United Services Automobile Association (Usaa) Forensic investigation tool
GB0809045D0 (en) 2008-05-19 2008-06-25 Qinetiq Ltd Quantum key distribution involving moveable key device
GB0819665D0 (en) * 2008-10-27 2008-12-03 Qinetiq Ltd Quantum key dsitribution
GB0917060D0 (en) * 2009-09-29 2009-11-11 Qinetiq Ltd Methods and apparatus for use in quantum key distribution
US9002009B2 (en) 2010-06-15 2015-04-07 Los Alamos National Security, Llc Quantum key distribution using card, base station and trusted authority
US8483394B2 (en) 2010-06-15 2013-07-09 Los Alamos National Security, Llc Secure multi-party communication with quantum key distribution managed by trusted authority
KR101959738B1 (ko) * 2012-05-24 2019-03-19 삼성전자 주식회사 장치 식별자와 사용자 인증 정보에 기반한 보안 키 생성 장치
US8693691B2 (en) * 2012-05-25 2014-04-08 The Johns Hopkins University Embedded authentication protocol for quantum key distribution systems

Also Published As

Publication number Publication date
WO2014035696A2 (en) 2014-03-06
US20150222619A1 (en) 2015-08-06
CA2883313A1 (en) 2014-03-06
EP2891267B1 (en) 2022-04-06
CA2883313C (en) 2020-06-16
EP2891267A2 (en) 2015-07-08
EP2891267A4 (en) 2016-05-18
WO2014035696A3 (en) 2014-04-24
US9887976B2 (en) 2018-02-06

Similar Documents

Publication Publication Date Title
ES2912265T3 (es) Autenticación multifactor utilizando comunicación cuántica
US9509506B2 (en) Quantum key management
ES2687182T3 (es) Determinar un secreto común para el intercambio seguro de información y claves criptográficas jerárquicas y deterministas
US11057204B2 (en) Methods for encrypted data communications
ES2875888T3 (es) Comunicación multipartita segura con distribución de claves cuánticas gestionada por una autoridad de confianza
US11233637B2 (en) System and method for validating an entity
ES2509816T3 (es) Sistema para la distribución de claves criptográficas
US6151676A (en) Administration and utilization of secret fresh random numbers in a networked environment
Farb et al. Safeslinger: easy-to-use and secure public-key exchange
US9118661B1 (en) Methods and apparatus for authenticating a user using multi-server one-time passcode verification
US20170142082A1 (en) System and method for secure deposit and recovery of secret data
US9294473B1 (en) Server methods and apparatus for processing passcodes generated by configurable one-time authentication tokens
US11303462B2 (en) Unequally powered cryptography using physical unclonable functions
US20230032099A1 (en) Physical unclonable function based mutual authentication and key exchange
US20230163980A1 (en) Individual digital access with ternary states and one-way unclonable functions to protect digital files
KR102656403B1 (ko) 보안 통신에 사용하기 위한 키 생성
US20230045288A1 (en) Puf-protected pseudo-homomorphic methods to generate session keys
KR20210063378A (ko) 공통 비밀을 공유하는 컴퓨터 구현 시스템 및 방법
US20210144002A1 (en) Secondary Channel Authentication of Public Keys
Buchovecká et al. Lightweight Authentication and Secure Communication Suitable for IoT Devices.
US20230096860A1 (en) Associative puf arrays to generate session keys with pseudo-homomorphic methods
Lee et al. Improvement of the EIGamal based remote authentication scheme using smart cards
Tahir et al. A scheme for the generation of strong cryptographic key pairs based on ICMetrics
Hughes et al. Multi-factor authentication using quantum communication
CN113259091A (zh) 基于椭圆曲线密码的空间信息网络时钟异步安全认证方法