
Proyecto educativo en Python que implementa criptografía de curva elíptica (ECDSA, ECIES) y simula la explotación de CVE-2022-21449, con visualizaciones y documentación.
Este proyecto permite:
Todos los archivos en esta carpeta son temporales y serán reunidos en un archivo único
Este pdf contiene la teoría en la que se basa este proyecto: criptografía asimétrica, firmas, curvas elípticas, ECIES. Las fuentes utilizadas se citan al final del documento.
Este archivo contiene una breve explicación sobre el funcionamiento de funciones de hash como SHA 1.
README anterior que contiene detalles sobre el funcionamiento del código en src/ y sobre otros conceptos esenciales sobre las curvas elípticas.
El tema de la pasantía.
Esta parte es esencial para el proyecto e implementa la suma de dos puntos sobre una curva elíptica en el cuerpo de los números reales. Aunque esta versión no se utiliza para cifrar o firmar, es muy útil para entender simplemente cómo funciona la suma de dos puntos.
Librerías requeridas: numpy, matplotlib
Gracias a las herramientas en ecc_tools y las funciones en ECIES, se pueden cifrar y descifrar mensajes sobre curvas elípticas en un cuerpo finito. También se puede visualizar una curva elíptica con una clave pública colocada sobre ella mediante la función plot.
Librerías requeridas: numpy, matplotlib, PyCryptodomex
En el archivo main.py se encuentran todas las acciones que se pueden realizar esta vez sobre curvas elípticas en cuerpo finito: cifrar/descifrar, firmar/verificar y simular una explotación de la CVE 2022 21449.
Librerías requeridas: numpy, matplotlib, PyCryptodomex