Sistemas de voto telemático: Posibilidad de verificación de resultados
Enviado por Jesús Moreno Blázquez
- 1. Introducción
- 2. Problemática inherente a los sistemas de votación telemática
- 3. Descripción genérica del sistema VOTESCRIPT
- 4. Descripción detallada
- 5. Revisión de los resultados de la votación
- 6. Aportaciones del proyecto VOTESCRIPT a los sistemas tradicionales de voto
- 7. Conclusiones
- 8. Referencias
ABSTRACT
Este documento recoge una descripción general del escenario de votación telemática diseñado por el grupo de investigación al que pertenecen los autores, haciendo hincapié en la verificación de los resultados de la votación. Se justifica el uso de mecanismos criptográficos que faciliten esta verificación además del cumplimiento de las características propias de cualquier sistema de votación.
Hoy en día existen diversos productos en el mercado que permiten a cualquier organización realizar consultas o votaciones, de manera que los votantes emitan sus votos a través de un dispositivo remoto (ordenador personal, teléfono móvil, PDA, etc.) conectado a una urna o conjunto de urnas mediante una red telemática.
La gran mayoría de los sistemas de voto telemático que actualmente se comercializan implementan las garantías de seguridad adecuadas para proporcionar las funciones más elementales de cualquier sistema de votación: garantizar el anonimato del votante, que no se produzca suplantación de identidad e impedir que un mismo votante pueda votar más de una vez. Además, puesto que el votante está emitiendo su voto a través de redes telemáticas, los sistemas de votación incluyen procedimientos criptográficos que evitan que el voto emitido por el votante pueda ser alterado o examinado durante su transmisión a la urna. Llegada la fase de recuento, se eliminan las protecciones que han garantizado que el voto no ha sido modificado y se procede al escrutinio y publicación de resultados.
Sin embargo, existe otra seria amenaza a los sistemas de voto telemático, que con frecuencia es descuidada o su riesgo menospreciado. Se trata de la alteración de los resultados de la votación desde dentro del sistema, es decir, que los resultados que se publiquen no se correspondan con los votos emitidos. Esta amenaza se hace más real cuantos más críticos sean los resultados de la votación. Es importante destacar que esta amenaza no es específica de los sistemas de votación telemática y que, por tanto, no es un nuevo requisito que deben satisfacer estos sistemas, sino que es inherente a cualquier sistema de votación (se trata del famoso pucherazo).
Este artículo presenta las soluciones que se han implementado dentro del sistema VOTESCRIPT (1) (desarrollado de forma conjunta por el grupo de investigación del Departamento de Ingeniería Telemática de la Universidad Politécnica de Madrid, al que pertenecen los autores, y otro grupo del Departamento de Ciencia Política y de la Administración III de la Universidad Complutense de Madrid) que permiten demostrar ante votantes e interventores que los resultados publicados por el sistema corresponden efectivamente a los votos emitidos.
2. Problemática inherente a los sistemas de votación telemática
2.1. Soluciones comunes a problemas básicos
La primera dificultad que plantea el desarrollo de estos sistemas es la de conseguir la adecuada identificación de los votantes en el momento en el que emiten sus votos, es decir, que no se produzca suplantación de personalidad, puesto que aquí no existe ninguna persona que acredite la identidad de los votantes, tal y como ocurre en la votación convencional con los miembros de la Mesa Electoral. La manera de resolver esta situación consiste, en todos los casos, en la existencia de un procedimiento previo off-line donde se haya distribuido a los votantes unas credenciales específicas de votación, de forma que el hecho de poseer una determinada credencial identifica a su poseedor. Estas credenciales se presentan de muy diversas formas abarcando desde la más simple como es el caso de una contraseña secreta a las más sofisticada como pudiera ser un certificado.
El segundo reto que deben resolver los sistemas de votación telemática es el de garantizar el anonimato de los votantes, de manera que no pueda asociarse la credencial a partir de la cual el votante emitió su voto (y por tanto su identidad) con el voto emitido. La solución más comúnmente empleada para resolver este problema consiste en dividir el proceso de emisión del voto en dos fases: autenticación del votante y el propio proceso de votación, de modo que sean entidades distintas y no relacionadas entre sí las que se encarguen de controlar estos dos procesos. Habitualmente, la primera entidad se encarga de verificar la credencial del votante y concederle permiso para votar, mientras que la segunda reconoce este permiso y acepta el voto del votante. Deben tenerse a su vez las oportunas precauciones para evitar que la confabulación entre ambas entidades pueda permitir establecer la relación entre voto y votante.
Además, cualquier sistema de votación debe impedir que un votante pueda votar más de una vez. La solución a este problema se consigue a partir de la entidad encargada de verificar la credencial del votante, con el simple hecho de marcar la credencial como ya utilizada y comprobar esta condición antes de conceder permiso para votar.
2.2. Amenazas que surgen por el uso de redes y sistemas informáticos
Aparte de las condiciones anteriores que debe satisfacer cualquier sistema de votación [1][2][3][4], los sistemas de votación telemática deben enfrentarse a amenazas específicas originadas, por una parte, por el hecho de emplear redes de comunicación para conectar los dispositivos de los votantes con la urna remota y, por otra, por la utilización de sistemas informáticos para emitir el voto o realizar los procedimientos de recuento. Tanto unas como otras hacen posible ataques a la confidencialidad de la información y a su integridad, haciendo factible que un atacante pudiera modificar o eliminar los votos legítimamente emitidos por los votantes o averiguar su contenido (una forma de atacar un sistema de votación telemático puede ser mediante la introducción de programas maliciosos en los ordenadores personales de los votantes o de los lugares públicos donde se pudiera votar, consiguiendo cambiar el voto emitido por el votante o impedirle votar).
Para contrarrestar los citados ataques a las redes telemáticas, los sistemas de votación más avanzados incluyen procedimientos de encriptado del voto, usualmente mediante la aplicación de algoritmos de cifrado de clave pública, que permiten garantizar la confidencialidad e integridad de la información, así como proporcionar una prueba sobre el origen efectivo de la misma.
A estas amenazas hay que sumar la posibilidad real de que la infraestructura de comunicaciones sufra un ataque de denegación de servicio el día de la votación, de manera que se impidiera a los votantes el legítimo derecho a ejercer su voto. Una de las maneras habituales en que se presenta este tipo de ataques consiste en que, previamente a la celebración del evento señalado, se hayan introducido troyanos en un número elevado de ordenadores, y que el día en que éste tiene lugar, el troyano se active y los ordenadores generen tráfico suficiente para inutilizar la infraestructura de comunicaciones.
Este problema es de muy difícil solución si la votación se realiza desde casa a través de Internet, dado el carácter abierto y universal de esta red, por lo que las contramedidas usuales para evitar esta amenaza se basan en constreñir el ámbito de actuación de los votantes: votación sólo desde lugares específicos y empleo de redes privadas virtuales.
2.2.1. Votación telemática y alteración de resultados
Además de los riesgos y amenazas citados, los sistemas de votación telemática presentan, a priori, un riesgo mayor que la votación convencional de que se produzca una alteración de los resultados desde dentro del sistema, dada la facilidad con que pueden modificarse o eliminarse datos en formato electrónico, sin que quede ninguna constancia de ello.
Esta amenaza es ignorada en la mayoría de los sistemas de voto telemático actuales, donde la publicación de resultados no conlleva ninguna prueba que acredite su validez ni, por tanto, se proporciona ningún elemento a partir del cual pueda hacerse una reclamación (a diferencia de la votación convencional en la que existen las papeletas). Este planteamiento quizás pueda mantenerse cuando los sistemas de votación se emplean para realizar consultas menores, pero desde luego es arriesgado en votaciones cuyo resultado pudiera ser considerado crítico.
Por tanto, un sistema de voto telemático que aspire a sustituir algún día al voto convencional debe incluir mecanismos robustos de verificación que proporcionen pruebas fehacientes de que los resultados publicados corresponden a los votos emitidos.
3. Descripción genérica del sistema VOTESCRIPT
Como se ha comentado, el sistema de votación VOTESCRIPT desarrollado por este grupo de investigación, además de solucionar los problemas comunes asociados con la votación telemática, aborda el problema de la verificación. En este apartado y en el siguiente se incluye una descripción de este sistema, indicando el porqué de las soluciones adoptadas y los beneficios que conllevan.
Analizadas las consideraciones expuestas en el apartado anterior, se constató que la votación desde casa a través de Internet, hoy día presenta riesgos derivados, principalmente, de la dificultad de determinar la libertad de acción de la persona que está utilizando la credencial de identificación. Esto unido a las serias amenazas al sistema que pudieran derivarse de un ataque de denegación de servicio, originado por hackers, que impidieran la celebración de la votación, llevó a considerar que el sistema con más expectativas de éxito a medio plazo era aquel en el que se empleasen Puntos de Votación que se comunicaran con una urna central mediante una red privada virtual.
En este diseño, se optó por un sistema en el que el votante debe emplear una tarjeta inteligente en una cabina de votación para emitir su voto, desplazándose a un Colegio Electoral, en lugar de hacerlo desde casa por Internet. De esta forma, se ha pretendido satisfacer de forma más adecuada los requisitos de seguridad necesarios, así como minimizar la problemática de la compra de votos, la coacción en el momento de la emisión del voto y la posibilidad de relacionar el voto con la ubicación física del votante. También se ha tenido en consideración el aporte negativo a la conocida como brecha digital que se produciría al facilitar el acceso al proceso electoral a las personas que cuenten con los recursos y conocimientos necesarios en detrimento de aquellas personas que no posean ese nivel económico, social o cultural.
3.1. Arquitectura del sistema
El escenario propuesto en VOTESCRIPT se compone de un conjunto de sistemas automáticos (agentes telemáticos). Estos son (fig. 1):
Cabinas de Autenticación o Puntos de Autenticación a los que acude el votante a identificarse.
Cabinas de Votación o Puntos de Votación, donde el votante emite el voto.
Un sistema Administrador de autenticación que identifica y autentica al votante.
Un Sistema de Intervención de autenticación por cada una de las distintas candidaturas que se determine deban participar supervisando la fase de votación.
Una Urna que va recibiendo los votos emitidos. El contenido de la urna no es conocido hasta que no termina la jornada electoral.
Un Contador que contabilizará los votos una vez finalizado el período de recepción de los mismos y publicará los resultados.
Puntos de Verificación a los que puede acudir el votante a verificar el tratamiento dado a su voto.
Fig. 1. Arquitectura del Sistema VOTESCRIPT
Todos estos agentes telemáticos disponen de una pareja de claves asimétricas para los distintos procesos de firma y encriptado-desencriptado de datos necesarios.
El sistema contempla, además, la existencia de personas que intervienen de forma directa en el proceso de votación y recuento:
- Votante, dotado de una Tarjeta de Votación.
- Autoridad de Elección: máximo responsable del buen funcionamiento de todo el sistema.
- Interventores responsables de cada uno de los Sistemas de Intervención.
- Un gestor del sistema Administrador que, junto con los interventores, inicia las diferentes fases del proceso.
Todas estas personas disponen de una tarjeta inteligente que les identifica ante el sistema y contiene además las claves públicas y privadas necesarias en las distintas fases de la votación en las que participan.
3.2. Proceso genérico de votación
A continuación, se resumen los pasos más relevantes del proceso propuesto para llevar a cabo una votación telemática (No se hace una descripción detallada de los protocolos criptográficos y mecanismos de seguridad implementados en cada paso ya que requeriría de una explicación muy extensa [5]):
Como paso previo al comienzo de la votación, se habrá hecho llegar a los votantes una tarjeta inteligente y un identificador de votante que deberá ser conocido por algunos de los agentes automáticos que participan en la elección.
La tarjeta inteligente, diseñada especialmente para este proyecto, es capaz tanto de generar claves como de realizar gran parte de los procesos criptográficos necesarios para la seguridad del sistema. Implementa para ello diversos algoritmos adicionales, además de los ya habituales en las tarjetas criptográficas.
En una primera fase, que podríamos llamar fase de identificación, el votante interactúa, por medio del Punto de Autenticación, con el sistema Administrador y éste con los Sistemas de Intervención para comprobar la identidad del votante y proceder a su autenticación (comprobar que está autorizado para votar).
Cabe resaltar aquí, que el software de este Punto de Autenticación no posee ningún tipo de capacidad criptográfica y que todas las que se necesitan en esta fase y en el resto de fases (generación de claves, cifrado y descifrado de datos, firmas y comprobación de firmas, etc.), las realiza la tarjeta inteligente.
La segunda fase sería la fase de votación propiamente dicha, en la que el votante envía desde el Punto de Votación, con las garantías de seguridad necesarias, el voto a la Urna, donde se almacena hasta el final del proceso de votación. En esta fase, la Urna devuelve una pieza criptográfica (comprobante), que es almacenada en la tarjeta del votante, y que servirá para que la Autoridad de Elección pueda resolver futuras reclamaciones.
Una vez terminado el periodo previsto para votar, se inicia la fase de recuento y publicación de los resultados por parte del proceso Contador. Las listas que se publican incluyen las piezas criptográficas necesarias para la verificación del correcto funcionamiento del proceso.
Con posterioridad a la publicación de los resultados, tanto los votantes como los sistemas de intervención podrán hacer una verificación de la corrección del proceso, es lo que llamaríamos la fase de verificación. Si, como consecuencia de esta verificación, se produce alguna reclamación, la Autoridad de Elección podrá, con las pruebas criptográficas almacenadas en el sistema y en la tarjeta del votante, comprobar si existe alguna discordancia e identificar al componente responsable de ella.
Se describen a continuación de forma más detalladas algunos de los componentes del sistema así como los mecanismos de seguridad que implementan y las garantías que aportan.
Es obvio decir que, previo a cualquier proceso electoral, todos los recursos, tanto software como hardware deben haber pasado inspecciones técnicas y pruebas de homologación por parte tanto de la administración encargada de organizar el proceso como por parte de las candidaturas.
4.1. Puntos de Autenticación y Puntos de Votación
Los Puntos de Autenticación (PAs) son un tipo de kiosco o cabina, equipado con un lector de tarjetas, a través de los cuales los votantes se autentican ante el sistema, como primer paso del proceso de votación.
Los Puntos de Votación son, igualmente, cabinas equipadas con un lector de tarjetas, que permiten al votante emitir su voto y le protegen de cualquier observador que pudiera verlo.
En el sistema VOTESCRIPT, el votante puede elegir durante el proceso de autenticación cualquiera de los múltiples PAs existentes y puede emitir su voto en cualquiera de los PVs disponibles.
4.2. Sistema Administrador y Sistemas de Intervención
El Administrador y los Sistemas de Intervención tendrán acceso a la base de datos de votantes que incluye sus claves públicas y su identificador. Esta información es la que necesitan para poder determinar la validez de una credencial para permitir o denegar el derecho al voto.
Los recursos informáticos del Administrador y de los Sistemas de Intervención se encontrarán en un entorno de red de área local, en la cual solamente el Administrador tendrá conexión con los Puntos de Autenticación. Los Sistemas de Intervención se comunicarán con los Puntos de Autenticación mediante la intermediación del Administrador que les remitirá todas las peticiones de autenticación de votantes que reciba. Asimismo, se prevé que sus programas puedan ser auditados por peritos de confianza de las candidaturas antes del proceso de votación.
La mayor parte del proceso confiado al Administrador, es supervisado por los interventores de las candidaturas por medio de la ejecución de procesos paralelos que deberían conducir a idénticos resultados. Cualquier evento discordante, aunque sea mínimo, debe ser registrado. El Administrador y los Sistemas de Intervención firmarán la autorización que el votante deberá adjuntar al voto que envía a la urna.
En concreto, el Administrador recibe del votante un paquete, que está cifrado con la clave pública del Administrador para que sólo éste pueda conocer su contenido: la identificación del votante junto a una pieza de información. Esta pieza de información consiste en la clave que posteriormente deberá ser usada por el Contador para abrir (descifrar) el voto. Si esta clave fuese conocida por el Administrador, o por los sistemas de intervención, se rompería el anonimato del voto, por lo que el votante envía la clave de votación opacada para cada una de las entidades que la deben autorizar. Antes de cifrar con la clave pública del Administrador, la totalidad de la información es firmada por el votante para dar fe ante el Administrador y ante los Sistemas de Intervención, de que es él, y no otro, quien solicita la autorización.
Nada más recibir el paquete de información, es descifrado por el Administrador haciendo uso de su clave privada para entregárselo íntegramente a cada uno de los Sistemas de Intervención. Gracias a la identificación del votante, tanto el Administrador como los Sistemas de Intervención verifican que el votante identificado es el mismo que firma y que no se le ha firmado aún la autorización para votar. Tras lo cual el Administrador firma la clave de votación opacada que le corresponde con la clave secreta de Administrador para devolvérsela posteriormente al votante en calidad de "autorización".
El mismo proceso, es realizado por todos y cada uno de los Sistemas de Intervención. Los Sistemas de Intervención devuelven sus respectivas firmas hacia el Administrador. Éste forma un paquete de respuesta con todas las firmas recibidas añadidas a su propia firma. Finalmente el Administrador firma todo el paquete de información que acaba de formar, con el objetivo de servir de prueba de origen. La información firmada, es posteriormente cifrada con la clave pública del votante a fin de garantizar la confidencialidad de la información que fluye por la red.
Cuando esta información llega al votante, éste, mediante su tarjeta de votación y una vez comprobada la correcta procedencia de la información y de las diferentes firmas, procede a desopacar la información, con lo que queda en posesión de la clave de descifrado firmada por todos y cada uno de los Sistemas de Intervención y por el Sistema Administrador. Esta clave firmada servirá de autorización para votar y se enviará a la urna junto con el voto.
Corresponde a los interventores, por tanto, la tarea de supervisar, en nombre de las candidaturas, la limpieza del proceso. Unos de los puntos débiles fundamentales de la mayoría de los sistemas de votación electrónica propuestos es el peligro de que algún elemento del sistema tenga la posibilidad de agregar votos o denegar el derecho a voto de forma arbitraria. Si la autorización para votar que emite el Administrador es supervisada por los interventores, ya no habrá posibilidad de denegar arbitrariamente el derecho a voto, ni de agregar votos de votantes inexistentes, sin que fuese inmediatamente detectado por los Sistemas de Intervención.
El sistema Administrador y los Sistemas de Intervención, como se ha dicho anteriormente, no tienen en ningún momento el voto en su poder, por lo tanto no es un riesgo el que se puedan romper las claves a largo plazo, ya que la única información que se obtendría sería el conocimiento de dichas claves, pero no de los votos. El riesgo de poder desvelar, en un futuro próximo o lejano, el voto de un votante es una de las críticas más fuertes que se hacen a los sistemas de votación electrónica [6].
4.3. La Urna
Las autorizaciones recibidas por el votante desde el Administrador y los Sistemas de Intervención junto con el voto convenientemente cifrado con la clave de cifrado son entregados por la tarjeta a la urna. La información que el votante entrega a la urna lleva protecciones para evitar que el contenido de su voto pueda ser desvelado mientras permanezcan abiertos los colegios electorales para la recepción de votos. Esto se consigue incluyendo dicha información en un sobre seguro que sólo el Contador puede abrir. La urna devuelve un comprobante (que contiene toda la información recibida del votante) que podría ser usado, a posteriori, por parte de un votante en caso de reclamación para verificar el buen o mal funcionamiento de la urna. La confidencialidad se completa cifrando el comprobante con la clave pública de la Autoridad de Elección, así el votante no puede demostrar su voto a terceros.
Hay que decir en este punto, que la clave de descifrado junto con la clave de cifrado, forman una pareja de claves asimétricas que se han generado dentro de la tarjeta. La clave de cifrado no sale nunca de la tarjeta con lo que se evita el riesgo de que terceros pudieran conocerla y firmar votos con ella.
La confabulación entre el Administrador y la urna no consigue introducir votos, ya que deberá publicarse información suficiente que demuestre que los votos proceden de votantes legítimos y la labor del Administrador está supervisada por los interventores. Tanto los registros de funcionamiento del Administrador y de la Urna deberán estar accesibles durante un cierto periodo de tiempo para poder realizar una auditoría del proceso si fuera necesario.
Si se obliga al Administrador a hacer pública la cantidad de votantes que le han solicitado autorización para votar, la suma total de autorizaciones debe ser igual o mayor que la cantidad total de votos válidos que aparecen a la hora del escrutinio. Esta comprobación actúa como elemento disuasorio ante la tentación, que pudiesen tener la urna o el contador, de añadir votos sin que medie la solicitud de un votante (hecho este ya de por si bastante difícil si se analiza la composición y formato de la información que reciben la urna y el contador procedente del votante).
Además, la posesión del comprobante por parte del votante debería de disuadir a la urna de la tentación de destruir votos, puesto que esta situación podría ser fácilmente detectable tras el proceso de verificación individual.
4.4. El Contador
Una vez finalizado el periodo de recogida de votos se procede, mediante un proceso de secreto compartido en el que participan las tarjetas inteligentes del Administrador y todos los interventores, a la apertura de la urna y la obtención por parte del Contador de la clave necesaria para obtener los votos.
El Contador recibe el contenido de la Urna, lo descifra con la clave recién adquirida, obteniendo una lista de piezas de información relacionadas con cada voto. Para cada uno de ellos comprueba que la clave de descifrado está correctamente firmada por el Administrador y los Sistemas de Intervención y que sirve para abrir el voto cifrado. Esta clave de descifrado firmada por todos ellos constituye una garantía para el Contador de que ninguna de las entidades participantes en la elección, excepto un votante autorizado, es el origen del voto que está procesando. Una vez realizado el recuento, el Contador publica una lista de resultados que incluye, además del voto propiamente dicho, otras informaciones necesarias para la verificación.
4.5. La Tarjeta de votante
Los algoritmos criptográficos básicos necesarios que la tarjeta debe implementar son aquellos que permitan cifrar, descifrar, opacar o desopacar mensajes, verificar firmas y realizar almacenamiento seguro de información. Las órdenes de ejecutar uno u otro algoritmo con determinados parámetros son recibidas desde el periférico adecuado. Además deberá ser capaz de generar las distintas claves simétricas y asimétricas que durante las distintas fases del proceso se necesiten.
La tarjeta se autoprotegerá ante cualquier periférico que intente conocer el valor de la clave privada o que intente grabar información en ella, protegiendo así a las personas frente a la posibilidad de que sean obligadas a aportar y presentar ante terceros una información tan crítica.
Se podría programar que antes de que el periférico del Punto de Autenticación o del Punto de Votación devuelva al votante su tarjeta, bloqueara en ella toda posibilidad de volver a realizar estas operaciones a fin de que el votante no pueda, ni por equivocación ni por mala intención, usar una misma autorización para enviar más de un voto.
5. Revisión de los resultados de la votación
En todo este proceso es importante la forma en que se realiza la verificación de los resultados de la votación. Los esquemas de votación clásicos analizados suponen que todos los agentes telemáticos del sistema operan honestamente por lo que no se presta casi ninguna atención a la verificación, siendo por tanto relativamente sencillo manipular los resultados de la votación, sin que exista ningún método de detección de este tipo de acciones.
Elementos fundamentales para esa verificación son las claves, el comprobante que se almacenan en la tarjeta y la información que se hace pública por los diferentes agentes automáticos. La información debe hacerse pública junto con los resultados del escrutinio, antes de que se abra el período de comprobación y reclamación, como instrumento que garantice que ninguna entidad tiene posibilidad de modificar las pruebas como consecuencia de una petición de verificación.
El proceso de verificación de resultados del escrutinio es especialmente delicado ya que, por una parte, debe ofrecer al votante una prueba convincente acerca del tratamiento sufrido por su voto y, por otra, se deben tomar todas las precauciones (tanto criptográficas como de procedimiento) para que el votante no pueda usar esa verificación con el fin de probar ante terceros cuál ha sido el contenido de su voto. Esta imposibilidad de obtención de una relación fehaciente entre votante y voto debe ser absoluta. Es decir, la obtención de esta información ni tan siquiera puede ser potestad del votante ya que éste podría actuar bajo coacción de cualquier índole para demostrar ante terceros cuál ha sido su comportamiento en las elecciones.
En la tarjeta se encuentran almacenadas ciertas piezas de información necesarias para la verificación posterior: la clave de descifrado de voto, esta misma clave firmada por el Administrador y los Sistemas de Intervención y el comprobante entregado por la urna. En estas dos últimas piezas de información, la firma del Administrador y Sistemas de Intervención (en un caso) y de la urna (en el otro) es la prueba criptográfica irrefutable y verificable del origen.
El comprobante firmado por la urna, a su vez está cifrado para que tan solo la Autoridad de Elección pueda desvelar su contenido. La única prueba de que el comprobante de la urna pertenece al votante es que está presente en su propia tarjeta, puesto que el comprobante no contiene ninguna identificación del votante.
Finalizada la fase de recepción de votos, la urna hace pública una lista en la que figura toda la información que pasará a escrutarse en el Contador. Esta lista estará ordenada de acuerdo a algún criterio que facilite la búsqueda de piezas de información, y que no permita hacer deducciones sobre la orientación del voto de los votantes por la posición que ocupan en la lista y la hora o lugar desde donde votaron, etc., cuando se compare con la lista publicada por el Administrador.
Esta publicación tendrá como objetivo posibilitar la delimitación de responsabilidades en caso de que algún votante presentase reclamación por no encontrar su voto incluido en el escrutinio. El votante podrá presentar como prueba el comprobante que la urna ha enviado a su tarjeta, el cual está firmado por la urna y en su interior debe contener la misma información que contiene uno de los campos publicados.
5.1. Verificación individual
Una vez haya finalizado la votación, cada Votante puede comprobar de forma independiente que su voto ha sido correctamente tenido en cuenta. Para ello basta con que el Votante se dirija a un Punto de Verificación y, siempre de forma individual, utilice su tarjeta y pida que se le muestre el voto asociado.
El sistema ubicado en el Punto de Verificación está habilitado para leer la clave de descifrado almacenada en la tarjeta del Votante, de manera que, una vez obtenida dicha clave de la tarjeta, accede vía telemática a la lista de parejas clave en claro-voto generada por el Contador y le muestra el voto asociado, de forma que el Votante y sólo éste pueda leerlo.
En el caso de que el Votante no esté conforme con la opción visualizada, puede iniciar un proceso de reclamación ante la Autoridad de Elección, la cual descubrirá y comparará todas las pruebas criptográficas presentes en el sistema así como el comprobante almacenado en la tarjeta, para comprobar la validez del recuento. De esta manera se proporciona al votante herramientas que contrarresten la crítica de que no hay forma de ofrecer al votante la seguridad de que el voto se ha registrado tal cual ha sido emitido, o que el recuento es el correcto [6].
La Autoridad de Elección, tras recibir la tarjeta del Votante, puede demostrar sin ninguna ambigüedad un tratamiento correcto o incorrecto del voto, pues tiene acceso a:
- La clave de descifrado del voto del Votante almacenada en su tarjeta.
- El comprobante enviado por la Urna al Votante (firmado por la Urna y garantizada su inviolabilidad por la clave pública de la Autoridad de Elección) donde se contiene el voto emitido.
- Los registros del Contador que relacionan la clave de descifrado del voto firmada por el Administrador y los Sistemas de Intervención, la clave de descifrado del voto en claro y el voto cifrado con ella.
Con todo ello la Autoridad de Elección, apoyándose en pruebas criptográficas robustas, dictaminará si el Votante no tiene razón o si ha existido una falsificación por parte del sistema.
5.2. Verificación global
En cuanto a la verificación global, una vez publicados los resultados de la votación, y con la intención de que las distintas candidaturas obtengan una prueba del correcto funcionamiento del Contador a la hora de abrir y contar votos, se permite que cada una de ellas verifique el procedimiento. Cada candidatura tiene la posibilidad, mediante una serie de procedimientos concretos que se han diseñado, de comparar la información que posee con la que se ha obtenido como resultado final del proceso de recuento. Caso de que ambas informaciones no se correspondieran, podrían proceder a impugnar la votación, presentando para ello pruebas criptográficas robustas. Mediante estas pruebas criptográficas se introducen elementos de auditoría en el sistema que permiten garantizar la validez de todo el proceso, respondiendo así a una de las críticas que se suele hacer a los sistemas de votación electrónica.
El procedimiento propuesto en VOTESCRIPT consiste en que una vez realizado el recuento de votos y publicado el resultado, con la intención de que las distintos Interventores obtengan una prueba del correcto funcionamiento del Contador, se le entrega a cada uno de ellos una copia de algunas de las piezas de información obtenidas por el Contador tras abrir los distintos sobres seguros recibidos de la Urna.
Cada Interventor dispondrá de su propia máquina donde se cargará dicha copia. Esta máquina será previamente auditada por peritos de confianza para conseguir total seguridad de que solamente podrá realizar el recuento de votos. Haciendo uso de esta copia, cada uno de los Interventores podrá verificar si el procedimiento de recuento en el Contador se ha realizado o no de forma correcta, y si los resultados que ha obtenido en su recuento coinciden con los publicados.
Tanto para las listas de registros recibidos por el Contador como para las listas de información entregadas a cada candidatura se establecerá un periodo de validez de manera que, una vez transcurrido el tiempo estipulado y considerada válida la elección, deberán ser destruidas.
6. Aportaciones del proyecto VOTESCRIPT a los sistemas tradicionales de voto
En este apartado se destacan las principales aportaciones del proyecto VOTESCRIPT a la votación electrónica, comparando las soluciones propuestas con las recogidas en los principales esquemas de votación que hoy día sirven de referencia en esta área.
En este proyecto se ha abordado el desarrollo del sistema desde un punto de vista interdisciplinar, tanto sociológico como telemático, lo que ha propiciado que el sistema de votación se haya diseñado en sus diferentes fases en base a requisitos demandados por los ciudadanos y determinados por la investigación sociológica. Cabe señalar que algunos de estos requisitos fueron en principio detectados más bien como procedimentales, pero a la luz de la investigación social, aparecen como garantes del sistema de votación al satisfacer demandas que surgen con fuerza en los trabajos de campo realizados. Entre estos requisitos demandados por los votantes cabe destacar la necesidad de disponer de herramientas para poder verificar el correcto funcionamiento del sistema, no sólo a nivel global, sino también a nivel particular.
En la mayoría de los sistemas se observa que no existe la posibilidad de verificar que el sistema opera correctamente, es decir, que como consecuencia del comportamiento malicioso de algún agente telemático del sistema (Mesa Electoral, Urna o Contador) o la confabulación de varios agentes dentro del sistema, no se está produciendo una alteración de los resultados de la votación. El sistema diseñado se ha concebido para permitir la verificación tanto a nivel global como a nivel individual.
El sistema VOTESCRIPT proporciona un sistema de verificación individual que permite a cada votante comprobar en lugares precisos y durante un tiempo determinado si su voto se ha tenido en cuenta y ha sido correctamente contabilizado. La novedad respecto a otras soluciones radica en que el proceso de verificación es privado, de manera que en ningún momento el votante puede demostrar ante terceros no autorizados qué es lo que ha votado, lo que impide la compra-venta de votos o la extorsión. Esto representa una significativa mejora incluso con respecto a los sistemas de votación convencionales, en los que, mediante opciones como el voto delegado o el voto por correo, se hace posible este tipo de agresiones masivas a la soberanía popular.
La existencia de los Sistemas de Intervención es una de las principales aportaciones de este sistema, puesto que permite el control de todo el proceso electoral por parte de las de agrupaciones de ciudadanos o candidaturas autorizadas para ello. Además, se les dota de la posibilidad de realizar de forma sencilla una auditoría no sólo del resultado final sino de todo el proceso. La verificación global, puesta a disposición de los interventores, proporciona pruebas criptográficas robustas, que permiten demostrar sin ningún tipo de ambigüedad si el sistema ha operado o no de forma fraudulenta.
Cada interventor tiene la posibilidad, mediante una serie de procedimientos concretos que se han diseñado, de comparar la información que posee su Sistema de Intervención con la que se ha obtenido como resultado final del proceso de recuento. Caso de que ambas informaciones no se correspondieran, podrían proceder a impugnar la votación, presentando para ello pruebas criptográficas robustas. Mediante estas pruebas criptográficas se introducen elementos de auditoría en el sistema que permiten garantizar la validez de todo el proceso.
En el desarrollo del proyecto VOTESCRIPT se decidió emplear tarjetas criptográficas específicamente diseñadas para este proyecto, que no sólo permitieran garantizar la identidad del votante sino que realizaran todas las funciones de cifrado/descifrado, generación de claves de sesión y comprobación de firmas dentro de la propia tarjeta, con objeto de impedir el acceso a información crítica por parte de usuarios maliciosos. Asimismo, la tarjeta almacena cierta información asociada al proceso de emisión del voto, el comprobante, con vistas a una posible verificación posterior.
Existe una Autoridad de Elección encargada del control general del sistema, de velar por su correcto funcionamiento, ocupándose de atender todas las posibles reclamaciones que realicen los votantes. En el caso de que se produzca una reclamación por parte de un votante sobre el tratamiento dado a su voto, ésta descubrirá y comparará todas las pruebas criptográficas presentes en el sistema para comprobar la validez del recuento.
El sistema diseñado dificulta también que el voto emitido pueda ser conocido en el futuro. Los esquemas de votación clásicos analizados se basan en la presentación del voto debidamente ocultado al Administrador (y Sistemas de Intervención, si los hubiera) para que una vez que verifique que el votante tiene derecho a votar y que no lo ha hecho todavía, devuelva el voto firmado como mecanismo de autorización. El hecho de presentar el voto oculto mediante algoritmos criptográficos garantiza que en la actualidad éstos no puedan conocer su contenido, pero no garantiza que con el avance de las técnicas de criptoanálisis éste no pueda ser conocido en el futuro. El sistema desarrollado en el proyecto VOTESCRIPT aporta como novedad que en la fase de autenticación del votante lo que se presenta oculto por algoritmos criptográficos al Administrador y a los Sistemas de Intervención no es el voto sino la clave que se va a utilizar después para descifrarlo, evitándose que el Administrador (o los Sistemas de Intervención) lo pueda almacenar para el futuro (el voto únicamente se envía a la urna).
Las soluciones técnicas que se adopten a la hora de diseñar un sistema de votación tienen un impacto social muy relevante en lo tocante al mantenimiento y mejora de los derechos y libertades de los ciudadanos y, consecuentemente, en el desarrollo de la democracia en la Sociedad de la Información.
El diseño de sistemas de Democracia Digital debe partir de un análisis crítico y exhaustivo de las experiencias y propuestas formuladas con anterioridad e incorporar metodologías multidisciplinares (tecnológica, sociopolítica y jurídica) tanto para la determinación de los requisitos y condicionantes como para la evaluación del sistema final que se desarrolle.
El sistema VOTESCRIPT, aplicando esta metodología multidisciplinar, ha conseguido soluciones más eficaces que propuestas anteriores, aportando procedimientos válidos para la resolución de objeciones que descalificaban globalmente la viabilidad de las votaciones electrónicas (Informe Mercury [6], por ejemplo).
A juicio de los autores del presente artículo, todo el esfuerzo intelectual y material volcado en este área tiene sentido si da como resultado una mejora cualitativa de la democracia que refuerce su legitimidad. Entendemos que esta mejora radica fundamentalmente en estudiar la potencialidad de la redes telemáticas para facilitar y desarrollar la participación ciudadana. Es decir, profundizar en dinámicas de democracia participativa, que eduquen, permitan y agilicen la participación de los ciudadanos a través de la discusión y solución de las cuestiones que les son comunes.
Hoy día prolifera la realización de experiencias de voto telemático en las que como conclusión siempre se destacan los beneficios que supone para el votante el hecho de poder emitir su voto desde cualquier ordenador conectado a Internet. Sin embargo, la euforia que suele acompañar a este tipo de experiencias, a menudo hace olvidar, tanto a los organizadores como a los votantes, la incapacidad que tienen estos sistemas de demostrar que los resultados que se publican no han sido manipulados antes de su divulgación.
El sistema VOTESCRIPT presentado en este artículo, se concibió, desde el primer momento, como un sistema que debía ser totalmente verificable: por los votantes que debían tener la certeza de que su voto se había contabilizado adecuadamente y por los interventores que debían poder auditar el correcto funcionamiento del sistema, tal y hacen actualmente con la votación convencional.
El resultado del desarrollo es un sistema totalmente verificable, destacando que la fortaleza del sistema se basa en la obtención, por parte de los distintos actores (entre los que principalmente se encuentran los votantes y los interventores), de piezas de información criptográficamente robustas y seguras que podrán presentar como prueba ante terceros en caso de litigio o disconformidad con los resultados del proceso.
Todo lo expuesto lleva a la conclusión de que únicamente aquellos sistemas de voto que incluyan capacidades de verificación tendrán garantías de éxito en un futuro.
- Fujioka, T. Okamoto, K. Otha. A Practical Secret Voting Scheme for Large Scale Elections, Advances in Cryptology, AUSCRYPT´92, Lecture Notes in Computer Science 718. Springer-Verlang, Berlin, pp.244-251 (1993).
- M.Ohkubo, F. Miura, M. Abe, A. Fujioka, T. Okamoto. An Improvement on a Practical Secret Voting Scheme. Lecture Notes in Computer Science 1729, Springer-Verlag, Berlin, pp. 225-234 (1999).
- Cranor, Lorrie F. y Cytron, Ronald K. Design and Implementation of a Practical Security-Conscious Electronic Polling System, WUCS-96-02, Departamento de Informática, Universidad de Washington, St. Louis (1996).
- Riera i Jorba, Andreu. Design of Implementable Solutions for Large Scale Implementable Voting Schemes, Tesis doctoral Universidad Autónoma de Barcelona, 1999.
- Carracedo J., Gómez A. and Carracedo J.D., (2003). Sistema VOTESCRIPT: Una propuesta innovadora desarrollada para resolver los problemas clásicos de votación electrónica. 2º Congreso Iberoamericano de Seguridad Informática (CIBSI’03). México D.F.
- Mercuri R. Testimonio presentado en U.S. House of Representatives Committee on Science, Mayo 2001. http://www.house.gov/science/full/may22/mercuri.htm
[1] – El proyecto VOTESCRIPT (TIC2000-1630, TIC2002-4223 and TIC2003-2141) ha sido subvencionado por el Ministerio de Ciencia y Tecnología dentro del Plan Nacional de I+D+I (2000-2003).
El contenido del presente trabajo está gobernado por la siguiente Licencia de Creative Commons: ver http://creativecommons.org/licenses/by-nc/2.0
Jesús Moreno Blázquez // Sergio Sánchez García // Jose David Carracedo Verde