Arquitectura basada en la fluctuación del retardo (jitter) para la generación de verdaderos números aleatorios en FPGA

Alonso Sánchez, Raquel (2019). Arquitectura basada en la fluctuación del retardo (jitter) para la generación de verdaderos números aleatorios en FPGA. Proyecto Fin de Carrera / Trabajo Fin de Grado, E.T.S.I. y Sistemas de Telecomunicación (UPM), Madrid.

Description

Title: Arquitectura basada en la fluctuación del retardo (jitter) para la generación de verdaderos números aleatorios en FPGA
Author/s:
  • Alonso Sánchez, Raquel
Contributor/s:
  • Rodríguez Lacruz, Manuel César
Item Type: Final Project
Degree: Grado en Ingeniería Electrónica de Comunicaciones
Date: 8 July 2019
Subjects:
Freetext Keywords: Criptografía; Seguridad informática; Diseño síncrono
Faculty: E.T.S.I. y Sistemas de Telecomunicación (UPM)
Department: Ingeniería Telemática y Electrónica
Creative Commons Licenses: Recognition - No derivative works - Non commercial

Full text

[img]
Preview
PDF - Requires a PDF viewer, such as GSview, Xpdf or Adobe Acrobat Reader
Download (1MB) | Preview
[img] Archive (ZIP) - Users in campus UPM only
Download (30MB)

Abstract

El propósito general de este proyecto ha sido la creación de un TRNG (True Random Number Generator) implementado en una FPGA (Field Programmable Gate Array). Se ha modelado un código en el lenguaje de descripción hardware VHDL (Very High Speed Integrated Circuit Hardware Description Language) que genera números aleatorios cuya fuente de entropía se basa en el jitter (fluctuación del retardo de la señal de reloj). Se ha implementado en una FPGA de bajo coste del fabricante Xilinx, utilizando como entorno de desarrollo el software de Xilinx Vivado. Como la fuente de entropía es el jitter, el diseño no seguirá exactamente las reglas del diseño síncrono, ya que se aprovechará el retardo en la señal de reloj que es un fenómeno aleatorio e impredecible. Este sistema se comunicará con el ordenador a través del USB (Universal Serial Bus) y un puerto COM de comunicación. Se guardará la salida del generador en un fichero txt con el cual se llevarán a cabo las pruebas de aleatoriedad. Estas pruebas serán el banco de test del NIST (National Institute of Standards and Technology). Este banco de pruebas tiene que ser compilado y ejecutado en Linux, por lo que se trabajará en una máquina virtual de Ubuntu. Abstract: The main purpose of this project has been the development of a TRNG (True Random Number Generator) based on a FPGA (Field Programmable Gate Array). It has been modelled a code in the description hardware language VHDL (Very High Speed Integrated Circuit Hardware Description Language) and it will generate random numbers whose entropy source it is based on jitter (delay fluctuation of clock signal) The design has been implemented into a low-cost FPGA of Xilinx manufacturer using the development environment of Xilinx, Vivado. Due to jitter as entropy source, the design will not follow rules of synchronous design, since the delay in the clock signal will be used and this phenom is random and unpredictable. This system will communicate with the computer through USB (Universal Serial Bus) and a COM port of communication. The output of the generator will be saved into a text file which will be used as input of randomness tests. Those tests are the gather of tests from NIST (National Institute of Standards and Technology). This test set must be compiled and executed in Linux so it will be necessary to use a virtual machine of Ubuntu.

More information

Item ID: 59079
DC Identifier: http://oa.upm.es/59079/
OAI Identifier: oai:oa.upm.es:59079
Deposited by: Biblioteca Universitaria Campus Sur
Deposited on: 09 Mar 2020 17:25
Last Modified: 09 Mar 2020 17:26
  • Logo InvestigaM (UPM)
  • Logo GEOUP4
  • Logo Open Access
  • Open Access
  • Logo Sherpa/Romeo
    Check whether the anglo-saxon journal in which you have published an article allows you to also publish it under open access.
  • Logo Dulcinea
    Check whether the spanish journal in which you have published an article allows you to also publish it under open access.
  • Logo de Recolecta
  • Logo del Observatorio I+D+i UPM
  • Logo de OpenCourseWare UPM