Análisis e implementación de un criptosistema con FPGA: integración de ECDH y AES-128

Brotton Ruiz, Sofía Covadonga and Badillo Gómez, Diego Andrés (2024). Análisis e implementación de un criptosistema con FPGA: integración de ECDH y AES-128. Trabajo Fin de Grado / Proyecto Fin de Carrera, E.T.S.I. de Sistemas Informáticos (UPM), Madrid.

Descripción

Título: Análisis e implementación de un criptosistema con FPGA: integración de ECDH y AES-128
Autor/es:
  • Brotton Ruiz, Sofía Covadonga
  • Badillo Gómez, Diego Andrés
Director/es:
Tipo de Documento: Trabajo Fin de Grado o Proyecto Fin de Carrera
Grado: Grado en Ingeniería del Software
Fecha: Noviembre 2024
Materias:
Palabras Clave Informales: Criptografía; Advanced Encryption Standard (AES); FPGA; Curvas elípticas; Seguridad informática
Escuela: E.T.S.I. de Sistemas Informáticos (UPM)
Departamento: Sistemas Informáticos
Licencias Creative Commons: Reconocimiento - Sin obra derivada - No comercial

Texto completo

[thumbnail of TFG_SOFIA_COVADONGA_BROTTON_RUIZ.pdf] PDF (Portable Document Format) - Se necesita un visor de ficheros PDF, como GSview, Xpdf o Adobe Acrobat Reader
Descargar (2MB)

Resumen

Este proyecto pretende abordar la implementación de un criptosistema utilizando algoritmos de criptografía modernos altamente empleados en la industria para garantizar la integridad y seguridad de la información. En particular, se ha desarrollado un sistema que combina el algoritmo de Diffie-Hellman con curvas elípticas (Elliptic Curve Diffie-Hellman, ECDH), para el intercambio de claves, y el algoritmo AES-128 en su modo CTR para el cifrado de datos.

El objetivo principal es explorar y comprobar la viabilidad de aplicar estos algoritmos en dispositivos hardware programables (Programmable Logic Devices, PLDs), aunque para ello se realizará un estudio previo de los distintos modos que posee AES. El abordamiento de este problema se llevará a cabo a través de una implementación desde cero de los algoritmos en el lenguaje de programación Python, para su posterior migración al lenguaje de descripción de hardware elegido (Very High Speed Integrated Circuits Hardware Description Language, VHDL).

A través de una serie de pruebas, se comparará el rendimiento obtenido de la implementación de los algoritmos en tres etapas: la implementación realizada y librerías criptográficas vs hardware dedicado.

Al final del proyecto se demostrará que los resultados obtenidos demuestran que la combinación de ECDH y AES-128 es efectiva para garantizar una comunicación segura, y que la implementación en FPGA proporciona un rendimiento superior comparado con soluciones basadas únicamente en software.

Abstract:

The following project aims to implement a cryptosystem using modern cryptographic algorithms that are widely used in the industry to ensure information integrity and security. Specifically, we have developed a system that combines the Diffie-Hellman algorithm with elliptic curves (ECDH) for the key exchange, and the AES-128 algorithm in CTR mode for data encryption.

Our primary objective is to explore and evaluate the feasibility of applying these algorithms to programmable hardware devices. To accomplish this, we will first conduct a preliminary study of the different AES modes available. The approach to solving this problem involves a ground-up implementation of the algorithms in Python, followed by their subsequent migration to the selected hardware description language (VHDL).

Through a series of tests, the performance of the algorithm implementations will be compared across three stages: custom implementations, cryptographic libraries, and dedicated hardware.

By the end of the project, we expect the results to show that the combination of ECDH and AES-128 effectively ensures secure communication, and that the FPGA implementation delivers superior performance compared to software-only solutions.

Más información

ID de Registro: 84994
Identificador DC: https://oa.upm.es/84994/
Identificador OAI: oai:oa.upm.es:84994
Depositado por: Biblioteca Universitaria Campus Sur
Depositado el: 23 Nov 2024 15:58
Ultima Modificación: 23 Ene 2025 01:45