Encriptación de votos usando el algoritmo de encryptación de Paillier en el origen
Professor Advisor
dc.contributor.advisor
Barros Arancibia, Tomás
Author
dc.contributor.author
Sepúlveda Silva, Valentina Piedad
Associate professor
dc.contributor.other
Hevia Angulo, Alejandro
Associate professor
dc.contributor.other
Gómez Núñez, Camilo
Admission date
dc.date.accessioned
2024-05-17T14:17:26Z
Available date
dc.date.available
2024-05-17T14:17:26Z
Publication date
dc.date.issued
2023
Identifier
dc.identifier.uri
https://repositorio.uchile.cl/handle/2250/198642
Abstract
dc.description.abstract
Este trabajo se enmarca en el sistema de votación por Internet provisto por la empresa
EVoting. En este sistema, cada vez que un votante marca sus preferencias, el voto es
encriptado usando el algoritmo de encriptación propuesto por Damgård y Jurik como generalización
del algoritmo de Paillier . Una vez finalizada la votación, todos los votos son
sumados homomórficamente y se procede a desencriptar solamente la suma usando desencriptaciones
parciales que se mezclan para obtener el resultado final. Todo el motor criptográfico
de EVoting está implementado en Scala.
Actualmente, los votos son encriptados en un servidor especializado. Este trabajo analiza
e implementa el algoritmo de encriptación de Paillier para poder encriptar votos electrónicos
en el extremo del cliente, es decir, en cualquier navegador moderno e integrarse al resto de la
plataforma. Debido al cambio donde se realiza la encriptación desde un servidor especializado
a cualquier navegador, se pierde el control de esta, por lo que se hace necesario complementarlo
con pruebas de Zero Knowledge que permitan garantizar que el voto encriptado está
correcto (es un voto válido), sin revelar su contenido.
Este trabajo analiza distintas alternativas de implementación y decide implementar el
algoritmo en Javascript usando la biblioteca Scala-Js. Para las pruebas de Zero Knowledge
se implementa una propuesta que permita probar que el voto pertenece al conjunto de todos
los votos válidos.
Una vez implementado, se hicieron varios experimentos con distintos navegadores y parámetros
de la votación (principalmente el número de candidatos y cantidad de preferencias a
marcar) y se concluye sobre la factibilidad de su uso real en votaciones.
Finalmente, se plantean algunas dudas sin resolver para ser analizadas en un trabajo
futuro.
es_ES
Lenguage
dc.language.iso
es
es_ES
Publisher
dc.publisher
Universidad de Chile
es_ES
Type of license
dc.rights
Attribution-NonCommercial-NoDerivs 3.0 United States