Siguiente: Conclusiones Superior: Voto Electr�nico y Software Anterior: Igual y Secreto |
Lo primero que hay que hacer constar es que no existe en la actualidad ning�n software, tanto libre como propietario, que cumpla con todos los requerimientos explicitados en este ensayo para ser considerado como un sistema completo de voto electr�nico. Podemos clasificar los sistemas existentes en diversas categor�as:
Existen multitud de soluciones propietarias para el problema de la toma de decisiones. En general, estas soluciones, son m�dulos adicionales a programas de videoconferencia, trabajo cooperativo, etc
Del mismo modo existen sistemas electr�nicos para el proceso de conteo de resultados. Detallaremos por su "fama" dos de ellos:
Es muy corriente en el Software Libre la existencia de programas de consulta. Portales, como Slashdot, BarraPunto, Technocrat, etc son foros de discusi�n donde se proponen diversos temas de actualidad, noticias, etc. Incluyen adem�s sistemas de encuestas, donde los participantes en los foros manifiestan su opinion sobre un tema propuesto por los editores
Una nueva categor�a constituyen los programas de voto propiamente dicho
El primer caso son aquellos sistemas simples, sin posibilidad de reconfiguraci�n: un ejemplo lo tenemos en MyPools desarrollado por Josh Levine ([email protected]), basado en PHP y MySQL. En este programa, el administrador edita un fichero de configuraci�n, donde se define la consulta y las opciones. Mediante cookies, se guardan las votaciones y sus resultados.
En general este y otros programas similares est�n orientados a una �nica votaci�n sobre un tema concreto. El administrador es quien define los datos de la encuesta, teniendo que proceder manualmente a la mayor parte de las operaciones. El usuario no tiene ning�n sistema de realimentaci�n para recepci�n de claves
Una empresa alemana, E-Vote, ofrece diversos servicios de toma de decisiones distribu�da. Para ello alquila una aplicaci�n que act�a como cliente de sistemas Windows, y que permite conectarse a un servidor de toma de decisiones.
Dicha aplicaci�n tiene todas las caracter�sticas que se esperan de un sistema de voto:
La empresa alquila el servidor a las diversas organizaciones que quieren utilizar sus herramientas de decisi�n. El servidor en s� mismo no se vende: solo la aplicaci�n cliente
Se utilizan mecanismos especiales para identificar un�vocamente a los usuarios, y garantizar la unicidad y secreto del voto, as� como para cumplir la reglamentaci�n europea sobre tratamiento de datos personales.
Realmente, m�s que un sistema de voto es un sistema de toma de decisiones, orientado a entornos de telereuni�n y teletrabajo.
En vista de la carencia en el mundo del software libre de este tipo de programas, el autor ha desarrollado uno que, sin tener una validez plena a efectos legales, cubre la mayor parte de los requisitos de los sistemas de voto electr�nico. se trata de Free-Vote
Free-Vote ha sido dise�ado para servir y dar soporte a sistemas de votaci�n electr�nica con un nivel razonable de seguridad y fiabilidad. Las caracter�sticas principales de Free-Vote son:
Se pueden realizar y monitorizar simult�neamente varias consultas
Cada consulta tiene diversos par�metros, definibles por el organizador de la consulta:
Cada votante recibe al realizar la acreditaci�n una tarjeta de voto, v�lida una �nica vez
El sistema s�lo registra si el usuario ha votado o no, nunca el valor de su voto
En consultas privadas s�lo tienen derecho a voto aquellos votantes definidos por el organizador.
El papel del administrador, aunque importante, es secundario: existen diversas categor�as de usuarios, cada uno con un nivel de privilegios definible, que permiten una administraci�n distribu�da del sistema: alta y baja de usuarios, de consultas, acceso al sistema, etc. Adem�s, punto funtamental en cuanto a seguridad: no hacen falta privilegios de root para su instalaci�n y ejecuci�n
Se proporciona una documentaci�n completa en formato SGML, as� como diversos scripts de instalaci�n y configuraci�n. Dicha documentaci�n y scripts, han sido escritos de manera que sean conformes a los reglamentos de aplicaci�n de la LORTAD
El usuario empieza por registrarse en el sistema, obteniendo una clave de acceso. Posteriormente, puede seleccionar las diversas consultas disponibles, y en funci�n de su autorizaci�n o no puede emitir voto en aquellas en las que est� autorizado. Para ello debe solicitar una tarjeta de voto, que a�ade a sus datos de registro una clave adicional para proceder al voto en una votaci�n concreta. La tarjeta de voto es �nica por cada usuario y cada consulta
Si su nivel de privilegio lo permite, un usuario puede crear y definir consultas, e insertarlas en el sistema. En funci�n del privilegio asignado podr� dar de alta usuarios, autorizar consultas, etc. El m�ximo nivel de privilegio otorga acceso v�a Web a la consola SQL de la base de datos, lo que permite actuar de Administrador
Free-Vote Est� basado en PHP-3.0 y PostgreSQL-7.0. Para la elaboraci�n de las p�ginas web se utiliza en aras de la compatibilidad HTML-3.0 sin extensiones adicionales. Una copia de la �ltima versi�n del c�digo fuente est� disponible v�a web en http://drake.dit.upm.es/~jantonio/e-vote/evote.tgz . Se distribuye bajo Licencia GPL.
El mundo del Software Libre ofrece muchas m�s posibilidades que el web a la hora de poder realizar aplicaciones de voto electr�nico. Vamos a estudiar ahora un sistema de voto basado en el uso del correo: Vote-Debian
Vote Debian es un sistema enteramente basado en el correo elect�nico, y enteramente integrado en la filosof�a de desarrollo de debian. El proceso de toma de decisi�n consta de las siguientes fases:
Debian Vote es un sistema de toma de decisiones orientado a decidir el funcionamiento interno del grupo de desarrolladores de Debian. Desde este punto de vista es completamente funcional, si bien, desde los aspectos tratados en este art�culo tiene estas particularidades:
Las p�ginas web de Debian Vote se encuentran en http://vote.debian.org
En general, podemos observar que cualquier sistema elect�nico que sirva para la comunicaci�n multipunto puede ser empleado para realizar tareas de toma de decisi�n. Vamos a describir someramente un posible ejemplo de realizaci�n a trav�s del Internet Relay Chat (IRC o Chat)
La idea b�sica del voto a trav�s de IRC consiste en la existencia de un bot, un usuario autom�tico que supervisa todas las actividades relacionadas con el proceso de votaci�n. Los bots son ampliamente utilizados en los sistemas de IRC para muchas aplicaciones. El voto electr�nico no es es sino otra aplicaci�n m�s
La organizaci�n es como sigue:
Por lo general, este bot est� asociado a una base de datos, al estilo de un sistema v�a web
El principal problema de este sistema es el de la autentificaci�n del usuario: IRC est� basado en aliases y "nicks", de manera que son necesarios mecanismos adicionales de identificaci�n
Como hemos comentado el mundo del voto elect�nico no acaba aqu� cualquier sistema que permita comunicaci�n multipunto podr�a ser utilizado para consultas y votaciones. Citemos algunos ejemplos:
En general cualquier sistema que tenga una estructura cliente-servidor puede servir. No estamos restringidos en absoluto a los sistemas basados en equipos inform�ticos. No obstante hay que tener en cuenta una serie de consideraciones:
Con la tecnolog�a actual el principal problema reside en la autentificaci�n del votante. Un ejemplo sencillo: en un sistema de voto basado en mensajes de m�viles, no hay garantia de que quien env�e el mensaje sea el propietario del tel�fono...
No obstante, y debido a la necesidad que en �ste y otros aspectos existe sobre el tema identificaci�n, se est�n desarrollando diversas t�cnicas de autentificaci�n: reconocimiento de voz, identificaci�n de huellas, etc. Si bien el principal objetivo es el econ�nico ( pi�nsese en la telecompra por tel�fono m�vil ) el �mbito de actuaci�n de estas t�cnicas incluye -por supuesto- el voto
Otro problema asociado a la tecnolog�a es el de la universalidad: Cualquiera que sea el sistema de voto escogido, se debe poder garantizar el que todo aquel que est� interesado tenga posibilidades de participar. Es preciso un acceso universal a las tecnolog�as asociadas a la toma de decisiones. No puede tolerarse el que existan "no-ciudadanos" por causa de analfabetismo tecnol�gico, o carencia de medios o recursos econ�micos
El Software Libre ofrece a nuestra sociedad una v�a para la universalizaci�n de las tecnolog�as de la informaci�n: Por sus caracter�sticas y licencias de uso, es accesible para todo el mundo a un coste casi nulo.
Las diversas ilustraciones que acompa�an a este ensayo muestran ejemplos de los sistemas citados, y de alguna de las herramientas utilizadas
B�sicamente, podemos descomponer el programa en diversas subestructuras:
Cualquier sistema de voto deber� tener al menos las siguientes tablas de datos:
Dichas tablas se organizan seg�n un sistema de dependencias. La figura ilustra las dependencias entre tablas que utiliza Free-Vote
Deberemos tener programas para realizar las siguientes tareas:
Es muy com�n la existencia de foros de debate asociados a cada consulta. En ellos, los usuarios manifiestan las diversas opiniones sobre las consultas y sus resultados:
No s�lo sistemas de foros son posibles. Algunos entornos incluyen sistemas de chat o de videoconferencia. Dependiendo del grado de interactividad que se pretenda, y de la complejidad del servidor, estos sistemas estar�n o no presentes
Hemos tratado anteriormente, c�mo el correo electr�nico deber�a ser el medio principal de comunicaci�n entre el servidor y el usuario. Lo utilizaremos para:
Dependiendo del sistema, el grado de verbosidad ser� mayor o menor: Algunos sistemas env�n informaci�n sobre consultas de manera autom�tica; en otros es responsabilidad del organizador notificar a los interesados la existencia o incidencias relacionadas con alguna consulta.
Dependiendo de la complejidad del sistema, las tareas de administraci�n ser�n m�s o menos compleja. Lo normal es que el o los administradores tengan acceso directo al servidor, y puedan realizar directamente sobre el sistema las tareas de administraci�n
En ocasiones esto puede ser o no conveniente, por lo que algunos sistemas incorporan mecanismos de administraci�n remota. Esto permite adem�s definir niveles de privilegios. Podemos identificar diversas tareas de administraci�n:
Por supuesto, al margen de estos sistemas, siempre existen los sistemas de gesti�n local, tanto autom�ticos como manuales.
Es necesario controlar estrictamente los recursos de administraci�n: el responsable del sistema tiene acceso directo a las bases de datos y a su integridad y contenido. Al responsable del sistema se le asume integridad, pero nunca est� de m�s una ayudita electr�nica... chequeos, controles de integridad, registros autom�ticos de eventos, etc
El recurso b�sico de un sistema libre de voto elect�nico es el Web: Recordemos que el principio de libertad, nos obliga a hu�r de soluciones que liguen a un determinado software o sistema operativo. Si bien en el servidor no es tanto problema, es una raz�n sine qua non en el cliente de voto. El uso del web y del lenguaje html es una garant�a de portabilidad
Por el mismo motivo huiremos de soluciones web propietarias o no extendidas: plug-ins, javascript, applets java. No podemos olvidar que cualquiera, con independencia de su sistema y recursos debe poder participar En resumen, el cliente ser� cualquier navegador web que soporte HTML-3.2, sin extensiones
Aunque en el lado del servidor se dispone de m�s libertad, vamos a evaluar las herramientas necesarias y su disponibilidad como software libre
El lector puede analizar los ejemplos de software libre sobre voto electr�nico que se ofrecen.
En resumen: para realizar un servidor de voto electr�nico de calidad no es preciso recurrir a ning�n tipo de soluci�n propietaria: El software libre ofrece recursos m�s que suficientes