Skip to content
KitploitKITPLOIT
HerramientasExploitsBlog
Enviar
HerramientasExploitsBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
PQCrypto-LWEKE — Biblioteca en C que implementa FrodoKEM, un mecanismo de encapsulamiento de claves post-cuántico basado en el problema de Learning with Errors, con variantes para AES y SHAKE, incluyendo modos efímeros y estándar. | Kitploit
Herramientas/GitHubGitHub/microsoft/pqcrypto-lweke
Herramientas de Cifrado/DescifradoVirtualización de SeguridadCriptografía
GitHubmicrosoft/pqcrypto-lweke

PQCrypto-LWEKE

Biblioteca en C que implementa FrodoKEM, un mecanismo de encapsulamiento de claves post-cuántico basado en el problema de Learning with Errors, con variantes para AES y SHAKE, incluyendo modos efímeros y estándar.

Ver RepositorioSitio web
1635332hace 8 díasRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

FrodoKEM: Encapsulación de Claves basada en Learning with Errors

Esta biblioteca en C implementa FrodoKEM, un protocolo de encapsulación de claves (KEM) seguro bajo IND-CCA basado en el bien estudiado problema Learning with Errors (LWE) [1,3], que a su vez tiene estrechas conexiones con problemas conjeturados como difíciles en retículos genéricos y "algebraicamente no estructurados". Este paquete también incluye implementaciones de referencia en Python. Se conjetura que FrodoKEM es seguro contra ataques de computadoras cuánticas.

FrodoKEM consta de dos variantes principales:

  • Una variante estándar (simplemente llamada FrodoKEM) que no impone ninguna restricción sobre la reutilización de pares de claves (es decir, es adecuada para aplicaciones en las que un gran número de textos cifrados pueden cifrarse con una única clave pública), y
  • Una variante efímera (llamada eFrodoKEM) que es adecuada para aplicaciones en las que no se cifran muchos textos cifrados con una única clave pública.

En contraste con eFrodoKEM, el FrodoKEM estándar utiliza una semilla ampliada para generar la semilla de muestreo de las matrices secreta y de error, e incluye una sal adicional en uno de los cálculos hash durante la encapsulación y la desencapsulación. Estas contramedidas protegen al FrodoKEM estándar contra algunos ataques de múltiples textos cifrados. Consulte [3] para más detalles sobre estas dos variantes.

Concretamente, esta biblioteca incluye los siguientes esquemas KEM que utilizan AES128 para la generación de la matriz pública "A":

  • FrodoKEM-640-AES y eFrodoKEM-640-AES: que igualan la seguridad post-cuántica de AES128.
  • FrodoKEM-976-AES y eFrodoKEM-976-AES: que igualan la seguridad post-cuántica de AES192.
  • FrodoKEM-1344-AES y eFrodoKEM-1344-AES: que igualan la seguridad post-cuántica de AES256.

Y los siguientes esquemas KEM que utilizan SHAKE128 para la generación de la matriz pública "A":

  • FrodoKEM-640-SHAKE y eFrodoKEM-640-SHAKE: que igualan la seguridad post-cuántica de AES128.
  • FrodoKEM-976-SHAKE y eFrodoKEM-976-SHAKE: que igualan la seguridad post-cuántica de AES192.
  • FrodoKEM-1344-SHAKE y eFrodoKEM-1344-SHAKE: que igualan la seguridad post-cuántica de AES256.

La etiqueta "eFrodoKEM" corresponde a las variantes efímeras.

La biblioteca fue desarrollada por el equipo FrodoKEM y Microsoft Research con fines de experimentación.

Contenido

  • carpeta common: funciones aleatorias, implementaciones de AES y SHA-3.
  • carpeta eFrodoKEM: implementaciones en C y Python3 de eFrodoKEM.
  • carpeta estimates: estimaciones de criptoanálisis de FrodoKEM reportadas en [3].
  • carpeta FrodoKEM: implementaciones en C y Python3 del FrodoKEM estándar.
  • LICENSE: archivo de licencia MIT.
  • README.md: este archivo readme.

Plataformas Soportadas

La biblioteca FrodoKEM es compatible con una amplia gama de plataformas, incluidos procesadores x64, x86, ARM, PowerPC y s390x que ejecutan Windows, Linux o macOS, y admite formatos tanto little-endian como big-endian. Hemos probado la biblioteca con Microsoft Visual Studio, GNU GCC y clang.

Licencia

Este software está licenciado bajo la Licencia MIT; consulte el archivo LICENSE para más detalles. La implementación en Python3 está licenciada bajo la licencia Creative Commons Zero v1.0 Universal. Incluye algunos módulos de terceros que están licenciados de manera diferente. En particular:

  • common/aes/aes_c.c: dominio público
  • common/aes/aes_ni.c: dominio público
  • common/sha3/fips202.c: dominio público
  • common/sha3/fips202x4.c: dominio público
  • common/sha3/keccak4x: todos los archivos en esta carpeta son de dominio público (CC0), excepto
  • common/sha3/keccak4x/brg_endian.h que tiene derechos de autor de Brian Gladman y viene con una licencia BSD de 3 cláusulas.
  • <FrodoKEM_variant>/tests/ds_benchmark.h: dominio público
  • <FrodoKEM_variant>/tests/PQCtestKAT_kem<#>.c: con derechos de autor de Lawrence E. Bassham
  • <FrodoKEM_variant>/tests/PQCtestKAT_kem<#>_shake.c: con derechos de autor de Lawrence E. Bassham
  • <FrodoKEM_variant>/tests/rng.c: con derechos de autor de Lawrence E. Bassham

Referencias

[1] Erdem Alkim, Joppe W. Bos, Léo Ducas, Karen Easterbrook, Brian LaMacchia, Patrick Longa, Ilya Mironov, Michael Naehrig, Valeria Nikolaenko, Chris Peikert, Ananth Raghunathan y Douglas Stebila, "FrodoKEM: Learning With Errors Key Encapsulation". Envío al proyecto de Estandarización Post-Cuántica del NIST, 2021-2023. La especificación de la ronda 3 de FrodoKEM está disponible aquí.

[2] Joppe W. Bos, Craig Costello, Léo Ducas, Ilya Mironov, Michael Naehrig, Valeria Nikolaenko, Ananth Raghunathan y Douglas Stebila, "Frodo: Take off the ring! Practical, quantum-secure key exchange from LWE". ACM CCS 2016, 2016. La versión preliminar está disponible aquí.

[3] Lewis Glabush, Patrick Longa, Michael Naehrig, Chris Peikert, Douglas Stebila y Fernando Virdia, "FrodoKEM: A CCA-Secure Learning With Errors Key Encapsulation Mechanism". IACR Communications in Cryptology (próximamente), 2025.

Contribuciones

Este proyecto ha adoptado el Código de Conducta de Código Abierto de Microsoft. Para más información, consulte las Preguntas Frecuentes sobre el Código de Conducta o contacte a [email protected] con cualquier pregunta o comentario adicional.

Descargar herramienta