Creación de claves interactivas en criptografía
En criptografía, un método de acuerdo de clave autenticada por contraseña (PAK) es un método interactivo para que dos o más partes establezcan claves criptográficas basadas en el conocimiento de una o más partes de una contraseña.
Una propiedad importante es que un espía o intermediario no puede obtener suficiente información para poder adivinar una contraseña por fuerza bruta sin más interacciones con las partes para cada intento (o algunos intentos). Esto significa que se puede lograr una seguridad sólida utilizando contraseñas débiles. [ cita requerida ]
Tipos
El acuerdo de clave autenticado mediante contraseña generalmente abarca métodos como:
- Intercambio de claves equilibrado y autenticado mediante contraseña
- Intercambio de claves autenticado mediante contraseñas aumentadas
- Recuperación de claves autenticadas mediante contraseña
- Métodos multiservidor
- Métodos multipartidistas
En los modelos de seguridad más estrictos que utilizan solo contraseña, no existe ningún requisito de que el usuario del método recuerde ningún dato secreto o público aparte de la contraseña.
El intercambio de claves autenticadas mediante contraseña (PAKE) es un método en el que dos o más partes, basándose únicamente en su conocimiento de una contraseña compartida, [1] establecen una clave criptográfica mediante un intercambio de mensajes, de modo que una parte no autorizada (aquella que controla el canal de comunicación pero no posee la contraseña) no puede participar en el método y se le impide, en la medida de lo posible, adivinar la contraseña mediante fuerza bruta. (El caso óptimo produce exactamente una conjetura por cada intercambio ejecutado). Dos formas de PAKE son los métodos equilibrados y aumentados. [1]
PAKE equilibrado
El PAKE equilibrado supone que las dos partes, ya sea en una situación cliente-cliente o cliente-servidor, utilizan la misma contraseña secreta para negociar y autenticar una clave compartida. [1] Algunos ejemplos son:
- Intercambio de claves cifradas (EKE)
- PAK y PPK [2]
- SPEKE (Intercambio de claves exponencial de contraseñas simples)
- Protocolo de contraseña remota segura basado en curva elíptica (EC-SRP o SRP5) [3] Existe una implementación de tarjeta Java gratuita. [4]
- Libélula: estándar IEEE 802.11-2012, RFC 5931, RFC 6617
- Cara CP [5]
- SPAKE1 [6] y SPAKE2 [7]
- SESPAKE [8]
- J-PAKE (Intercambio de claves autenticado mediante contraseña mediante malabarismo) – ISO/IEC 11770-4 (2017), RFC 8236
- Recomendación UIT-T X.1035
- "Apretón de manos modular avanzado para acuerdo de claves y autenticación opcional" [9]
PAKE aumentado
El PAKE aumentado es una variante aplicable a escenarios cliente/servidor, en los que el servidor no almacena datos equivalentes a las contraseñas. Esto significa que un atacante que haya robado los datos del servidor no puede hacerse pasar por el cliente a menos que primero realice una búsqueda de fuerza bruta de la contraseña. Algunos sistemas PAKE aumentados utilizan una función pseudoaleatoria inconsciente para mezclar la contraseña secreta del usuario con el valor de sal secreto del servidor, de modo que el usuario nunca conozca el valor de sal secreto del servidor y el servidor nunca conozca la contraseña del usuario (o el valor equivalente a la contraseña) o la clave final. [10]
Algunos ejemplos incluyen:
- AMPERIO
- EKE aumentada
- Habla B
- PAK-X [2]
- SRP [a]
- AgoPAKE [12]
- OPACO [13] [14]
- AuCPace [15]
- HABLÓ2+ [16]
- "Apretón de manos modular avanzado para acuerdo de claves y autenticación opcional" [9]
Recuperación de claves
La recuperación de claves autenticada con contraseña es un proceso en el que un cliente obtiene una clave estática en una negociación basada en contraseña con un servidor que conoce los datos asociados a la contraseña, como los métodos Ford y Kaliski. En la configuración más estricta, una de las partes utiliza solo una contraseña junto con N (dos o más) servidores para recuperar una clave estática. Esto se completa de una manera que protege la contraseña (y la clave) incluso si N − 1 de los servidores están completamente comprometidos.
Breve historia
Los primeros métodos de acuerdo de claves autenticados por contraseña que funcionaron con éxito fueron los métodos de intercambio de claves cifradas descritos por Steven M. Bellovin y Michael Merritt en 1992. Aunque varios de los primeros métodos tenían fallos, las formas supervivientes y mejoradas de EKE amplifican de forma eficaz una contraseña compartida y la convierten en una clave compartida, que puede utilizarse para el cifrado y/o la autenticación de mensajes. Los primeros protocolos PAKE demostrablemente seguros fueron presentados en el trabajo de M. Bellare, D. Pointcheval y P. Rogaway (Eurocrypt 2000) y V. Boyko, P. MacKenzie y S. Patel (Eurocrypt 2000). Estos protocolos demostraron ser seguros en el llamado modelo de oráculo aleatorio (o incluso en variantes más fuertes), y los primeros protocolos que demostraron ser seguros bajo supuestos estándar fueron los de O. Goldreich e Y. Lindell (Crypto 2001), que sirve como prueba de plausibilidad pero no es eficiente, y los de J. Katz, R. Ostrovsky y M. Yung (Eurocrypt 2001), que es práctico.
Los primeros métodos de recuperación de claves autenticadas mediante contraseña fueron descritos por Ford y Kaliski en 2000.
En el trabajo de M. Bellare, D. Pointcheval y P. Rogaway se ha propuesto una cantidad considerable de protocolos PAKE alternativos y seguros, variaciones y pruebas de seguridad en esta clase creciente de métodos de acuerdo de claves autenticadas mediante contraseñas. Los estándares actuales para estos métodos incluyen IETF RFC 2945, RFC 5054, RFC 5931, RFC 5998, RFC 6124, RFC 6617, RFC 6628 y RFC 6631, IEEE Std 1363.2-2008, ITU-T X.1035 e ISO-IEC 11770-4:2006.
Proceso de selección de PAKE para su uso en protocolos de Internet
A petición del grupo de trabajo de ingeniería de Internet IETF, el grupo de investigación del foro de criptografía IRTF (CFRG) llevó a cabo un proceso de selección de PAKE en 2018 y 2019. El proceso de selección se llevó a cabo en varias rondas. [17]
En la ronda final de 2019, prevalecieron cuatro finalistas: AuCPace, OPAQUE (casos aumentados) y CPace, SPAKE2 (PAKE equilibrado). Como resultado del proceso de selección de CFRG, se declararon dos protocolos ganadores como "recomendados por el CFRG para su uso en protocolos IETF": CPace y OPAQUE. [18]
Véase también
Referencias
- ^ Diseñado para no estar sujeto a patentes. [11]
- ^ abc Hao, Feng; Ryan, Peter YA (2011). "Intercambio de claves autenticadas mediante contraseñas mediante malabarismo". En Christianson, Bruce; Malcolm, James A.; Matyas, Vashek; Roe, Michael (eds.). Protocolos de seguridad XVI . Apuntes de clase en informática. Vol. 6615. Berlín, Heidelberg: Springer. págs. 159–171. doi :10.1007/978-3-642-22137-8_23. ISBN 978-3-642-22137-8.
- ^ ab Boyko, V.; P. MacKenzie; S. Patel (2000). "Intercambio de claves autenticado mediante contraseñas demostrablemente seguro utilizando Diffie-Hellman". Avances en criptología — EUROCRYPT 2000 . Apuntes de clase en informática. Vol. 1807. Springer-Verlag. págs. 156–171. doi :10.1007/3-540-45539-6_12. ISBN 978-3-540-67517-4.
- ^ Wang, Yongge (2006). "Análisis de seguridad de un protocolo de autenticación basado en contraseñas propuesto para IEEE 1363" (PDF) . Ciencias de la computación teórica . 352 (1–3): 280–287. arXiv : 1207.5442 . doi :10.1016/j.tcs.2005.11.038. S2CID 11618269.
- ^ "Applet de tarjeta Java EC-SRP". GitHub . Marzo de 2020.
- ^ Haase, Björn; Hesse, Julia; Abdalla, Michel (2021). "OPAQUE: Un protocolo PAKE asimétrico seguro contra ataques de precomputación" (PDF) . Avances en criptología – EUROCRYPT 2018 . Apuntes de clase en informática. Vol. 10822. págs. 456–486. doi :10.1007/978-3-319-78372-7_15. ISBN 978-3-319-78371-0.S2CID 4046378 .
- ^ Abdalla, M.; D. Pointcheval (2005). "Protocolos de intercambio de claves cifradas basados en contraseñas simples". Temas de criptología – CT-RSA 2005 (PDF) . Apuntes de clase en informática. Vol. 3376. Springer Berlin Heidelberg. págs. 191–208. CiteSeerX 10.1.1.59.8930 . doi :10.1007/978-3-540-30574-3_14. ISBN 978-3-540-24399-1.
- ^ Ladd, Watson (septiembre de 2023). Kaduk, Benjamin (ed.). "RFC 9382: SPAKE2, un intercambio de claves autenticado mediante contraseña". IETF.
- ^ Alekseev, Evgeny; Oshkin, Igor; Popov, Vladimir (marzo de 2017). Smyshlyaev, Stanislav (ed.). "RFC 8133: Protocolo de intercambio de claves autenticadas por contraseña estandarizada y evaluada en términos de seguridad (SESPAKE)". IETF.
- ^ ab US11025421B2, Fay, Bjorn, "Apretón de manos modular avanzado para acuerdo de clave y autenticación opcional", publicado el 2021-06-01
- ^
Matthew Green. "Hablemos de PAKE". 2018.
- ^ "¿Qué es SRP?". Universidad de Stanford .
- ^ Shin, SeongHan; Kobara, Kazukuni (junio de 2012). "Autenticación eficiente y aumentada solo con contraseña e intercambio de claves para IKEv2". Grupo de trabajo de ingeniería de Internet. Archivado desde el original el 11 de mayo de 2021.
- ^ Tatiana Bradley (8 de diciembre de 2020). "OPAQUE: Las mejores contraseñas nunca abandonan tu dispositivo". El blog de Cloudflare .
- ^ Bourdrez, Daniel; Krawczyk, Hugo; Lewi, Kevin; Wood, Christopher A. (12 de junio de 2023). "El protocolo OPAQUE Asymmetric PAKE (borrador de Internet)". IETF.
- ^ Haase, Björn; Labrique, Benoît (agosto de 2010). "AuCPace: Protocolo PAKE basado en verificador eficiente adaptado para IIoT" (PDF) . TCHES : 1–48. doi :10.13154/tches.v2019.i2.1-48. S2CID 4603454.
- ^ Taubert, T.; Wood, C. (septiembre de 2023). "SPAKE2+, un protocolo de intercambio de claves autenticado por contraseña (PAKE) aumentado". IETF.
- ^ Repositorio del proceso de selección de paquetes CFRG
- ^ Resultados del proceso de selección del CFRG PAKE
Lectura adicional
- Bellare, M.; D. Pointcheval; P. Rogaway (2000). "Intercambio de claves autenticadas seguro contra ataques de diccionario". Avances en criptología — EUROCRYPT 2000. Apuntes de clase en informática . Vol. 1807. Springer-Verlag. págs. 139–155. doi :10.1007/3-540-45539-6_11. ISBN. 978-3-540-67517-4.
- Bellovin, SM; M. Merritt (mayo de 1992). "Intercambio de claves cifradas: protocolos basados en contraseñas seguros contra ataques de diccionario". Actas del Simposio de 1992 de la IEEE Computer Society sobre investigación en seguridad y privacidad . Oakland. págs. 72–84. doi :10.1109/RISP.1992.213269. ISBN . 978-0-8186-2825-2.S2CID 16063466 .
{{cite book}}
: Mantenimiento de CS1: falta la ubicación del editor ( enlace ) - Ford, W.; B. Kaliski (14–16 de junio de 2000). "Generación asistida por servidor de un secreto fuerte a partir de una contraseña". Actas del 9.º Taller internacional IEEE sobre tecnologías facilitadoras: infraestructura para empresas colaborativas (WET ICE 2000) . Gaithersburg, MD: NIST. pp. 176–180. CiteSeerX 10.1.1.17.9502 . doi :10.1109/ENABL.2000.883724. ISBN . 978-0-7695-0798-9. Número de identificación del sujeto 1977743.
- Goldreich, O.; Y. Lindell (2001). "Generación de claves de sesión utilizando únicamente contraseñas humanas". Avances en criptología — CRYPTO 2001. Apuntes de clase en informática. Vol. 2139. Springer-Verlag. págs. 408–432. doi :10.1007/3-540-44647-8_24. ISBN 978-3-540-42456-7.
- IEEE Std 1363.2-2008: Especificaciones estándar IEEE para técnicas criptográficas de clave pública basadas en contraseñas . IEEE. 2009. ISBN 978-0-7381-5806-8.OCLC 319883358 .
- Katz, J.; R. Ostrovsky; M. Yung (2001). "Intercambio eficiente de claves autenticadas mediante contraseñas que pueden memorizarse por humanos" (PDF) . Asociación Internacional para la Investigación Criptológica . Springer-Vergal.
- Wu, T. (septiembre de 2000). "El sistema de autenticación e intercambio de claves SRP". RFC Editor . doi :10.17487/rfc2945. RFC 2945 .
- Taylor, D.; Wu, T.; Mavrogiannopoulos, N.; Perrin, T. (noviembre de 2007). "Uso del protocolo de contraseña remota segura (SRP) para la autenticación TLS". Editor de RFC . doi : 10.17487/rfc5054 . RFC 5054 .
- Harkins, D.; Zorn, G. (agosto de 2010). "Autenticación mediante protocolo de autenticación extensible (EAP) utilizando solo una contraseña". Editor de RFC . doi :10.17487/rfc5931. RFC 5931 .
- Sheffer, Y.; Zorn, G.; Tschofenig, H.; Fluhrer, S. (febrero de 2011). "Un método de autenticación EAP basado en el protocolo de intercambio de claves cifradas (EKE)". RFC Editor . doi :10.17487/rfc6124. RFC 6124 .
- Harkins, D. (junio de 2012). "Autenticación segura mediante clave precompartida (PSK) para el Protocolo de intercambio de claves por Internet (IKE)". Editor de RFC . doi :10.17487/rfc6617. RFC 6617 .
- ISO/IEC 11770-4:2006 Tecnología de la información—Técnicas de seguridad—Gestión de claves—Parte 4: Mecanismos basados en secretos débiles.
- IEEE Std 802.11-2012: Estándar IEEE para tecnología de la información – Parte 11 Especificación de control de acceso al medio (MAC) y capa física (PHY) para redes LAN inalámbricas . IEEE. 2012. ISBN 978-0-7381-8469-2.OCLC 1017978449 .
- Jarecki, Stanislaw; Krawczyk, Hugo; Xu, Jiayu (2018). "OPAQUE: Un protocolo PAKE asimétrico seguro contra ataques de precomputación". Avances en criptología – EUROCRYPT 2018 (PDF) . Apuntes de clase en informática. Vol. 10822. págs. 456–486. doi :10.1007/978-3-319-78372-7_15. ISBN 978-3-319-78371-0.S2CID 4046378 .
- Smyshlyaev, Stanislav; Oshkin, Igor; Alekseev, Evgeniy; Ahmetzyanova, Liliya (2015). "Sobre la seguridad del protocolo de intercambio de claves autenticado con una sola contraseña" (PDF) . Archivo de Cryptology ePrint (Informe 2015/1237).
Enlaces externos
- Grupo de trabajo IEEE P1363
- IEEE Std 1363.2-2008: Especificaciones estándar IEEE para técnicas criptográficas de clave pública basadas en contraseñas
- Enlaces de David Jablon sobre criptografía basada en contraseñas
- Protocolos de intercambio de claves cifradas basados en contraseñas simples Abdalla et al 2005
- Intercambio manual e interactivo de contraseñas complejas