
La seguridad del voto online en el siglo XXI
Este es el segundo artículo de la serie sobre voto electrónico.
En el capítulo anterior (Elecciones a través de Blockchain, ¿realidad o ficción?) discutimos cómo el uso de la tecnología blockchain puede garantizar la integridad de la urna, asegurando que todos los votos de los votantes estén presentes a la hora del recuento, y que no hayan sufrido ninguna alteración. En este artículo voy a explicar cómo garantizar la privacidad del votante mediante el uso de técnicas modernas de ocultación de la información. Un mundo apasionante.
Empezaré por el principio. La seguridad de la información, sobre todo en internet, se basa desde la década de los 80 en el cifrado de la información mediante el uso de algoritmos criptográficos. Los algoritmos más utilizados (como RSA o ElGamal) basan su seguridad en la complejidad que tiene resolver ciertas operaciones matemáticas para los ordenadores actuales.
Y vivíamos felices. Cifrar un voto con uno de estos algoritmos era algo considerado seguro hasta hace relativamente poco tiempo. Descifrar un voto le costaría a una computadora cientos o miles de años, hasta que la posibilidad de construir un ordenador cuántico pasó de ser una ficción de película intergaláctica a una realidad. Grandes empresas como Google, IBM y Microsoft tienen ya prototipos funcionando. Prototipos que utilizando el algoritmo de Shor pueden, potencialmente, romper los sistemas criptográficos actuales.
No voy a entrar en detalles de lo que es un ordenador cuántico, pero podemos estar seguros de que desde que Schrödinger hizo famoso a su gato en 1935 se han realizado grandes esfuerzos para dominar esta especialidad de la física de partículas para conseguir construir, entre otras cosas, superordenadores capaces de resolver casi cualquier problema en tiempos ínfimos. Los votantes valoran mucho su privacidad, y las autoridades electorales no desean que un voto emitido en 2020 pueda ser descifrado en poco tiempo y sus elecciones se conviertan en públicas. Debemos garantizar la privacidad del votante.
La amenaza de la computación cuántica ha impulsado grandes esfuerzos para buscar nuevos algoritmos criptográficos que los nuevos ordenadores no sean capaces de resolver. La nueva criptografía tiene varias aproximaciones, pero la que está teniendo más adeptos, por las propiedades que explicaremos a continuación, es la criptografía basada en curvas elípticas supersingulares. ¡El nombre promete! A este tipo de criptografía se le llama criptografía homomórfica. El resultado de esta nueva criptografía es tan espectacular que apetece cambiar el nombre de criptografía por criptomagia. Es la criptografía de la era postcuántica.
Veamos cómo se diferencia esta criptografía homomórfica de la criptografía tradicional basada, por ejemplo, en RSA. En ambos casos se desea proteger una información y para ello se generan unas claves criptográficas:
- Una clave pública que se entrega a cada votante y que usa para cifrar su voto.
- Una clave privada que sirve para recuperar la información cifrada.
Ahora bien, la diferencia entre RSA y la criptografía homomórfica se encuentra a la hora de recuperar la información:
- Con RSA se debe descifrar cada voto para ver su contenido y sumar los votos.
- Con criptografía homomórfica no se descifran los votos. Se suman mientras están cifrados, obteniendo el resultado cifrado y se descifra únicamente el resultado.
La diferencia es enorme y también es enorme la repercusión:
- Al no descifrar los votos individuales no hay que temer por la privacidad del votante y no se depende de complejos algoritmos que desordenan los votos (mixing) como los que se necesitan con RSA.
- Al no tener que descifrar cada voto, la obtención de resultados es rapidísima. Los ordenadores realizan sumas a toda velocidad y solo deben descifrar una única información al final.
Estas son las ventajas de la nueva criptografía homomórfica. La criptomagia. Pero también tiene inconvenientes. Lamentablemente siempre que hay una mejora en un aspecto hay algún otro que se ve afectado.
En este caso es la transparencia. ¿Cómo podemos estar seguros de que la suma del resultado es correcta si no hemos descifrado cada uno de los votos? Recordemos que la integridad de la urna nos la garantiza la Blockchain, así que no es algo que nos preocupe en este momento. Esta pregunta es muy importante y se debe poder responder bien. Hay varias respuestas:
- La más trivial. Podemos aplicar un algoritmo de mixing a los votos cifrados y descifrarlos todos durante una auditoría posterior (cuando el tiempo ya no apremia) igual que hacíamos con RSA y comprobar que la suma obtenida inicialmente era correcta. Es sencillo, aunque lleva tiempo y tiene la desventaja de volver a incrementar el riesgo de la privacidad del votante.
- La más criptomágica. Podemos proporcionar una prueba de conocimiento nulo de verificación universal (zero knowledge proof por sus siglas en inglés). Sinceramente, los términos que utiliza la criptografía post-cuántica son tan bonitos que impresionan sólo con oírlos. Vamos a intentar además entenderlos.
Una prueba de conocimiento nulo de verificación universal es algo criptomágico. Es un método para poder verificar que los votos de la urna se han sumado correctamente, sin conocer los votos. Esto es algo asombroso que los algoritmos de criptografía homomórfica permiten realizar. El problema es que es una operación matemática muy compleja, fuera del alcance de este artículo y de la gran mayoría de los votantes. Sin embargo, podéis explorarla a través de tutoriales como el de este enlace.
Así, cuando se implementan sistemas de voto electrónico que quieren disfrutar de las ventajas de la criptografía homomórfica de curvas elípticas supersingulares, si se quiere proporcionar la garantía de la verificación universal, se debe contar con la colaboración de auditores independientes, generalmente expertos matemáticos de universidades, que realicen las pruebas e informen al resto de votantes del resultado.
Espero que la explicación sea de interés. Un buen sistema de voto online actual debe contar con protección de la integridad basada en una Blockchain, tal y como explicamos en el artículo anterior, y de un sistema criptográfico o criptomágico post cuántico que garantice la privacidad de los votantes ahora y en el futuro. Ahora bien, la privacidad dependerá de que conservemos la clave privada de la elección bien custodiada… ¡pero eso es ya tema para otro artículo!
Añadir comentario