Estudio e implementación de protocolos descentralizados para la generación de aleatoriedad
Study and implementation of decentralized protocols for the generation of randomness
Ver/ Abrir
Identificadores
URI: https://hdl.handle.net/10902/32329Registro completo
Mostrar el registro completo DCAutoría
Díaz Mediavilla, SergioFecha
2024-02Director/es
Derechos
Attribution-NonCommercial-NoDerivatives 4.0 International
Palabras clave
Aleatoriedad
Pruebas de conocimiento cero
Logaritmo discreto
Randomness
Zero-knowledge proofs
Discrete logarithm
Resumen/Abstract
Las primitivas y protocolos criptográficos dependen de una fuente fiable de aleatoriedad. Los protocolos DRB («Distributed Random Beacons») proponen la generación de esta aleatoriedad de forma pública y distribuida entre varios participantes.
Muchos de estos protocolos presentan una complejidad computacional alta, siendo impracticables para un número grande de participantes. Una nueva propuesta llamada Albatross consigue hacer el coste en operaciones lineal con respecto al número de integrantes mediante el uso de esquemas de compartición de secretos. Este protocolo permite, al mismo tiempo, proveer escalabilidad y asegurar que todos los participantes tengan las mismas oportunidades de generar la salida aleatoria, impidiendo la influencia de grupos de usuarios maliciosos.
Este proyecto presenta un estudio teórico y la implementación del protocolo Albatross, explicando detalladamente los subprotocolos y esquemas que intervienen en el desarrollo y mostrando ejemplos de funcionamiento de estos, además de un programa desarrollado en SageMath para simular una ejecución con datos sencillos.
Cryptographic primitives and protocols depend on a reliable source of randomness. The DRB (Distributed Random Beacons) protocols propose the generation of this randomness in a public and distributed way among several participants.
Many of these protocols have a high computational complexity, making them impractical for a large number of participants. A new proposal called Albatross manage to make the cost of communications linear with respect to the number of members through the use of secret sharing schemes. This protocol allows to provide scalability and ensure that all participants have the same opportunities to generate the random output.
This project presents the study and implementation of the Albatross protocol, explaining in detail the subprotocols and schemes involved in the development and showing examples of their operation, in addition to a program developed in SageMath to simulate an execution with simple data.