<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<html>
<head>

        <title>KRIPTOPOLIS: Informes y reportajes</title>
        
        <STYLE type="text/css">
        A:link {color: #000000; font-family: Verdana, Arial, Helvetica; text-decoration:none; font-size:9pt; font-weight:bold}
        A:visited {color: #000000; font-family: Verdana, Arial, Helvetica; text-decoration:none; font-size:9pt; font-weight:bold}
        A:hover        {color:white; font-family: Verdana, Arial, Helvetica; background-color: #4B4B4B; font-size:9pt; font-weight:bold}
        TD {color: #000000; font-family: Verdana, Arial, Helvetica; text-decoration:none; font-size:9pt}
        
        </STYLE>

<SCRIPT LANGUAGE="JavaScript">

<!--
  conBrowser=0;
  function display(stuff) { window.status = stuff; }
//-->

</SCRIPT>

<SCRIPT LANGUAGE="JavaScript1.1">

<!--
  conBrowser=1;
  switch1on  = new Image(111,38);  switch1on.src  = '../pic/menu1_on.gif';
  switch1off = new Image(111,38);  switch1off.src = '../pic/menu1.gif';
  switch2on  = new Image(111,38);  switch2on.src = '../pic/menu2_on.gif';
  switch2off = new Image(111,38);  switch2off.src = '../pic/menu2.gif';
  switch3on  = new Image(111,38);  switch3on.src = '../pic/menu3_on.gif';
  switch3off = new Image(111,38);  switch3off.src = '../pic/menu3.gif';
  switch4on  = new Image(111,38);  switch4on.src = '../pic/menu4_on.gif';
  switch4off = new Image(111,38);  switch4off.src = '../pic/menu4.gif';
  
//-->

</SCRIPT>
<SCRIPT LANGUAGE="JavaScript">

<!--
  function HighLight(musswitch) {
        if (conBrowser) {
                switchnavn = eval(musswitch + "on");
                document [musswitch].src = switchnavn.src;
                }
        }

function UndoHighLight(musswitch) {
        if (conBrowser) {
                switchnavn = eval(musswitch + "off");
                document [musswitch].src = switchnavn.src;
                }
        }
//-->

</SCRIPT>

<SCRIPT LANGUAGE=JavaScript>
<!--
function makeArray() {
     for (i = 0; i<makeArray.arguments.length; i++)
         this[i] = makeArray.arguments[i];
 }
 
function getFullYear(d) {
    var y = d.getYear();
    if (y < 1000) {y += 1900};
    return y;
}

var days = new makeArray("Domingo","Lunes","Martes","Mi&eacute;rcoles","Jueves","Viernes","S&aacute;bado");
var months = new makeArray("Enero","Febrero","Marzo","Abril","Mayo","Junio","Julio","Agosto","Septiembre","Octubre","Noviembre","Diciembre");


function format_time(t) {
    var Day = t.getDay();
    var Date = t.getDate();
    var Month = t.getMonth();
    var Year = getFullYear(t);

    timeString = "";
    timeString += days[Day];
    timeString += ", ";
    timeString += Date;
    timeString += " de ";
        timeString += months[Month];
    timeString += " de ";
    timeString += Year;
   
    return timeString;
  
}
// -->
</SCRIPT>

<script language="JavaScript">
 <!--  
   function imprimir(URL) {
   window.open (URL, 'window', 'toolbar=yes, location=no, directories=no, menubar=no, scrollbars=yes, status=no, resizable=yes, width=640, height=480');
   }
   // -->
   </script>

</head>

<body topmargin="0" marginheight="0" marginwidth="10" background="../pic/fondo.gif" BGCOLOR="#FFFFFF">


                                        <!-- COMIENZO TABLA ENCABEZADO -->

<TABLE WIDTH="750" BORDER="0" CELLPADDING="0" CELLSPACING="0">
<TR>
    <TD BGCOLOR="#000000" COLSPAN="2" HEIGHT="5"></TD>
</TR>
<TR>
    <TD BGCOLOR="#000000" WIDTH="300" ALIGN="center">
<img src="../pic/logo.gif" width=300 height=100 border=0 alt="">
        </TD>
    <TD BGCOLOR="#000000" WIDTH="450" ALIGN="center" ROWSPAN="2"><IMG SRC="../pic/negro.gif" WIDTH=10 HEIGHT=100 BORDER=0 ALT=""><IMG SRC="../pic/ciudad.jpg" WIDTH=425 HEIGHT=100 BORDER=0><IMG SRC="../pic/negro.gif" WIDTH=10 HEIGHT=100 BORDER=0 ALT=""><BR>


</TD>
</TR>

<TR>
        <TD BGCOLOR="#000000" HEIGHT="25" ALIGN="CENTER"><FONT STYLE="font-size: 9pt; font-family: Verdana, Arial, Helvetica; font-weight: bold; font-style: normal; color: Gray">Revista independiente sobre criptograf&iacute;a, seguridad y privacidad en Internet</FONT></TD>
</TR>
<TR>
    <TD BGCOLOR="#000000" COLSPAN="2" HEIGHT="5" ALIGN="right" VALIGN="middle">
<FONT STYLE="font-size: 8pt; font-family: Verdana,Helvetica; font-weight: bold; font-style: normal; color: Gray;">

<SCRIPT LANGUAGE=JavaScript>
<!--
d = new Date();
document.write(format_time(d));
// -->
</SCRIPT>
     
</font>
<IMG SRC="../pic/negro.gif" WIDTH=10 HEIGHT=8 BORDER=0 ALT=""><BR>
<IMG SRC="../pic/negro.gif" WIDTH=10 HEIGHT=8 BORDER=0 ALT="">
</TR>

        
</TABLE>

                                        <!-- fin TABLA ENCABEZADO -->

                
<table width="750" cellspacing="0" cellpadding="0" border="0">
<tr>
    <td width="130" rowspan="3" valign="top"><img src="../pic/trans.gif" width=130 height=2 border=0 alt="">

                <A HREF="../index.html" onMouseover="HighLight('switch1'); display('Volver al inicio'); return true;" onMouseout ="UndoHighLight('switch1'); display('');">
                <img src="../pic/menu1.gif" width=111 height=38 border=0 NAME=switch1></a>
                
                <A HREF="../colabora.html" onMouseover="HighLight('switch2'); display('Colaborar con la revista'); return true;" onMouseout ="UndoHighLight('switch2'); display('');">
                <img src="../pic/menu2.gif" width=111 height=38 border=0 NAME=switch2></a>
                
                <A HREF="../wwwboard/opinion.html" onMouseover="HighLight('switch3'); display('Participar en nuestro debate'); return true;" onMouseout ="UndoHighLight('switch3'); display('');">
                <img src="../pic/menu3.gif" width=111 height=38 border=0 NAME=switch3></a>

                <A HREF="../subs.html" onMouseover="HighLight('switch4'); display('Suscribirse gratis'); return true;" onMouseout ="UndoHighLight('switch4'); display('');">
                <img src="../pic/menu4.gif" width=111 height=38 border=0 NAME=switch4></a>

</td>
    <td colspan="3" align="center" height="90">
<IFRAME SRC="http://ads1.t-kom.com/hserver/area=KRIPTOPOLIS.INFORMATICA.INTERNET.SEGURIDAD/adsize=468x60/pos=arriba/site=KRIPTOPOLIS" NORESIZE SCROLLING=NO HSPACE=0 VSPACE=0 FRAMEBORDER=0 MARGINHEIGHT=0 MARGINWIDTH=0 WIDTH=468 HEIGHT=60>
<SCRIPT SRC="http://ads1.t-kom.com/jserver/area=KRIPTOPOLIS.INFORMATICA.INTERNET.SEGURIDAD/adsize=468x60/pos=arriba/site=KRIPTOPOLIS"></SCRIPT>
<NOSCRIPT>
<A HREF="http://ads1.t-kom.com/adclick.exe/area=KRIPTOPOLIS.INFORMATICA.INTERNET.SEGURIDAD/adsize=468x60/pos=arriba/site=KRIPTOPOLIS" TARGET=_blank>
<IMG SRC="http://ads1.t-kom.com/adserver.exe/area=KRIPTOPOLIS.INFORMATICA.INTERNET.SEGURIDAD/adsize=468x60/pos=arriba/site=KRIPTOPOLIS" BORDER=0>
</A>
</NOSCRIPT>
</IFRAME>

</td>
    <td width="90"><img src="../pic/trans.gif" width=90 height=2 border=0 alt=""></td>
</tr>
<tr>
    <td rowspan="2" width="25"><img src="../pic/trans.gif" width=25 height=10 border=0 alt=""></td>
    <td rowspan="2">
        
        <TABLE BGCOLOR="#FFFFFF" WIDTH="610" CELLSPACING="3" CELLPADDING="3" BORDER="0">
                        <TR>
                            <TD WIDTH="15" ROWSPAN="2">&nbsp;</TD>
                                
                            <TD WIDTH="400" BGCOLOR="#FFFFFF" VALIGN="top">
                                <TABLE CELLSPACING="5" CELLPADDING="15" BORDER="0">
                                <TR>
                                           <TD WIDTH="80"></TD>
                                    <TD WIDTH="200"></TD>
                                    <TD WIDTH="100"></TD>
                                </TR>
                                <TR>
                                    <TD BGCOLOR="#000000" COLSPAN="3" ALIGN="center">
                                        <FONT STYLE="font-size: 11pt; font-family: Verdana, Helvetica; font-weight: bold; color: #FFFFFF">VOTO ELECTR&Oacute;NICO:<br>Entrevista a Andreu Riera</font></TD>
                            </TR>
                                <TR>
                                           <TD COLSPAN="3" ALIGN="LEFT" VALIGN="TOP">
<a href="javascript:imprimir('20010104PXZ.html');"><img src="../pic/impv.gif" width=126 height=35 border=0 alt="" align="right"></a>
                        
<br><br><b>Por David Casacuberta</b><br>
4 de Enero 2001<hr><br>
<blockquote><p>¿Podemos fiarnos de un sistema electrónico de votación? ¿Cómo se garantiza el anonimato en un sistema de votación con firma electrónica? Estas -y otras- preguntas y observaciones me plantearon algunos lectores después de un <a href="20001211.html">artículo</a> mío en Kript&oacute;polis donde comentaba un informe del <a href="http://www.cpsr.org" target="_blank">CPSR</a> en relación a las recientes elecciones norteamericanas.</p>

<p>Para solucionar estas y otras dudas similares me puse en contacto con <b>Andreu Riera</b>, sin duda una de las personas que más sabe de estos asuntos en nuestro país, y mantuvimos un interesante 'e-carteo' que cristalizó en la entrevista que ahora ofrecemos en exclusiva para los lectores de Kript&oacute;polis.</p>

<p><b>Andreu Riera Jorba</b> es un experto y consultor en voto electrónico, y actualmente está a punto de lanzar una iniciativa comercial centrada en estas cuestiones. El proyecto se encuentra actualmente en fase de búsqueda de socios capitalistas, estudiando también futuras alianzas estratégicas. Nuestro entrevistado es también pionero en la introducción de la inteligencia artificial en seguridad informática, y en breve esperamos ofrecer en Kript&oacute;polis otra entrevista con &eacute;l centrada en tan apasionante tema.</p><hr></blockquote><p>

<font color="Green"><p align="justify"><b><u>David Casacuberta</u>: La votación electrónica implica conseguir a la vez dos objetivos que, a primera vista, parecen antitéticos: garantizar que el voto es legítimo (una persona, un voto) y garantizar a la vez el secreto de la votación. ¿Qué técnicas criptográficas se pueden utilizar para solucionar ese problema?</b></font></p>

<b>Andreu Riera:</b> De hecho, la votación electrónica implica un mayor número de requisitos de seguridad. Además, hay más  parejas de requisitos antitéticos como la que apuntas. Por ejemplo, el votante debe obtener un recibo de votación en el proceso de emisión del voto. Dicho recibo le permitirá verificar la presencia de su voto en el recuento final, así como demostrar posibles fraudes que se hayan cometido. No obstante, este objetivo se contradice con el requisito de la no coerción: la imposibilidad por parte del votante de demostrar cuál era su voto, con la finalidad de prevenir la compra de votos o la extorsión.<p>

El voto electrónico es un caso paradigmático de aquellas situaciones, con complejos requisitos de seguridad, que surgen cuando un grupo de partes con desconfianza mutua tienen que cooperar sobre una red de ordenadores insegura.<p>

Un protocolo seguro de votación electrónica requiere hacer uso de un número de mecanismos y técnicas criptográficas. Las soluciones no son triviales y muchas veces, en la práctica, se debe recurrir a depositar un punto de confianza en algunos de los elementos del sistema (módulos  hardware 'tamper-proof', por ejemplo).<p>

<font color="Green"><p align="justify"><b><u>DC</u>: Desde el punto de vista criptográfico, ¿de cuántos sistemas de voto electrónico podemos hablar?</b></font><p>

<b>AR:</b> En general, podr&iacute;amos clasificar los esquemas criptográficos de voto electrónico en dos grandes grupos: aquellos basados  en el concepto de 'mixing' introducido por David Chaum en 1981 (o en alguna de sus siguientes variantes), y aquellos basados en funciones homomórficas de cifrado. Tanto unos como otros, no obstante, requieren muchas otras técnicas criptográficas, como firmas digitales o protocolos de conocimiento nulo, por ejemplo.<p>

<font color="Green"><p align="justify"><b><u>DC</u>: Bruce Schneier afirma en su último <a href="../criptograma/0032_1.html">Criptograma</a> que nada puede sustituir a las papeletas físicas para garantizar que los recuentos se han hecho correctamente, y habla de imprimir una papeleta al mismo tiempo que se realiza la votación. ¿Estás de acuerdo, o hay métodos puramente electrónicos para garantizar que no existan pucherazos virtuales?</b></font><p>

<b>AR:</b> En la misma línea del propio cambio de orientación que ha seguido Schneier en los últimos años, creo que se debe distinguir claramente el concepto de <i>protocolo</i> criptográfico de voto electrónico, del concepto de <i>sistema</i> de voto electrónico. El primero se expresa en un papel, especificando un número de pasos y de operaciones que el votante y el centro receptor de votos realizan conjuntamente. El segundo es un sistema implementado, instalado, y que opera en el mundo real para llevar a cabo votaciones. En el núcleo de un sistema de voto electrónico existirá por supuesto un protocolo criptográfico que determinará las características más íntimas del sistema, pero no obstante no hay que olvidar todas las demás capas que existen por encima de este núcleo. El propio software que implementa el protocolo criptográfico, por ejemplo, puede contener bugs (¿es que alguien lo duda?) que en un momento dado ocasionen alg&uacute;n problema en los resultados o en los votos que se aceptan.<p> 

Además, el problema con cualquier sistema de voto electrónico es que existe una nueva interfaz entre el votante y la urna. Esta nueva interfaz es opaca para el votante medio y una simple inspección ocular externa no sirve para verificar el comportamiento correcto del sistema.<p>

La respuesta a la pregunta es que si pensamos exclusivamente en términos de protocolo criptográfico, te puedo asegurar que determinados protocolos aseguran sobre el papel la  mayoría de requisitos de seguridad de un sistema de voto ideal. No obstante, si pensamos en un sistema de voto electrónico implementado y operando en un contexto real, los posibles errores, accidentes, y ataques a la seguridad se agudizan lo suficiente como para que sea prudente  contar con el respaldo de una copia de los votos en papel. Este respaldo no perjudicaría muchas de las ventajas del sistema de voto electrónico (velocidad de recuento, por  ejemplo). Además hay que pensar también en términos socio-legales y no s&oacute;lo tecnológicos. El respaldo físico sería un elemento generador de confianza que permitiría una mayor penetración legislativa y social del voto electrónico.<p>

<font color="Green"><p align="justify"><b><u>DC</u>: &iquest;C&oacute;mo se controla el elemento humano en un sistema de voto electrónico? Pensemos en un hacker malicioso que entre y modifique las votaciones, o que la propia administración haga un pucherazo y cree votos falsos o anule votos legítimos...</b></font><p>

<b>AR:</b> Quien afirme que un sistema informático (del tipo que sea) es 100% seguro es que no sabe de lo que está hablando. De hecho, el propio mundo en el que vivimos no es ideal. Los sistemas de voto convencionales tampoco est&aacute;n exentos de problemas.<p>

En las pasadas elecciones presidenciales norteamericanas este hecho ha quedado claramente evidenciado. En Florida, 19.000 votos se perdieron por las dificultades de uso de las papeletas basadas en tarjetas perforadas. Dos votos por correo aparecieron en Dinamarca. Si lo llevamos a un extremo, uno puede ir al colegio electoral y votar en nombre de su hermano gemelo si ha logrado hacerse con su DNI. Hasta podr&aacute;amos argumentar que el voto convencional no garantiza 100% el anonimato de los votantes: las papeletas electorales que depositamos en la urna están llenas de nuestras propias huellas digitales.<p>

Por otro lado, al hablar de atacantes a un sistema de voto electrónico, no debe pensarse exclusivamente en la figura del hacker que penetra en los sistemas servidores encargados de la recepción de los votos. Existen multitud de vías de ataque alternativas que deben ser analizadas. Los atacantes internos (como el suministrador de la tecnología de votación, por ejemplo) suponen una amenaza en mi opinión mucho más seria que los ataques de cracking externos. También atacantes privilegiados, como las autoridades electorales que mencionas, deben ser considerados. El eslabón probablemente más débil (en caso de permitir el voto remoto desde ordenadores personales), es la seguridad de las plataformas clientes de votación. Todos sabemos que los ordenadores personales y los sistemas operativos más ampliamente utilizados hoy en día son totalmente inseguros. El usuario medio es un administrador de la seguridad muy malo. Esto abre las puertas a ataques basados en virus o caballos de Troya que descansen entre el votante y el software de votación.<p>

La cuestión es saber gestionar adecuadamente los riesgos existentes, justo como se ha hecho desde siempre. La seguridad en un sistema de voto electrónico debe considerarse muy seriamente. En el diseño e implantación de este tipo de sistemas, deben participar expertos que asistan durante todo el proceso.<p> 

<font color="Green"><p align="justify"><b><u>DC</u>: ¿Ves razonable en un futuro cercano la sustitución progresiva del voto en papel por el voto electrónico?</b></font><p>

<b>AR:</b> Por voto electrónico se pueden entender varios tipos de sistemas. Hoy en día, de hecho, aunque el votante no vea ninguna electrónica, el recuento de votos ya implica en ciertos puntos algún tipo de transmisión o proceso informático. También podríamos hablar de sistemas  electrónicos de captación de los votos (similares a los cajeros automáticos), o de votación remota a través de Internet mediante un navegador web. La variedad es amplia.<p>

En todo caso, la "sustitución" no va a producirse en un futuro previsible. Creo que estamos ante una evolución de las prácticas democráticas y no ante una revolución. No se trata de sustituir, sino de complementar.<p>

Lo que sí veo muy razonable es la palabra "progresivo". De hecho, en California (probablemente el punto del planeta donde más se ha estudiado la viabilidad del voto por Internet) la <i>California Internet Voting Task Force</i> recomendó la introducción del voto por Internet mediante cuatro fases. La primera implicará votar desde el propio colegio electoral mediante dispositivos especiales conectados a la Red. La segunda será esencialmente lo mismo, pero permitiendo el voto desde cualquier colegio electoral. La tercera permitirá el voto remoto desde terminales distribuidos en quioscos electorales en las calles o en bibliotecas públicas, por ejemplo. La cuarta fase implicará el voto remoto desde cualquier conexión a Internet.<p>

Lo de "futuro cercano" creo que es irrefutable en cuanto a la fecha de inicio. En mi opinión, se debería empezar cuanto antes, para así poder ganar experiencia en el ámbito técnico y poder ganar aceptación social (¿qué opinaba la  gran mayoría de la gente acerca de las tarjetas de crédito cuando éstas hicieron su aparición?, ¿y cuánta gente las  utiliza hoy?). Empezar hoy, no obstante, no significa haber terminado mañana. Tal y como hemos argumentado, se trata de una implantación gradual. Se debe empezar por pruebas no vinculantes que permitan observar de cerca el comportamiento de este tipo de sistemas en un contexto real. Por ejemplo, pruebas paralelas a elecciones reales.<p>

El debate en todo caso no es sobre si las nuevas tecnologías se van a incorporar en los procesos electorales, sino sobre cómo y a qué velocidad. 

                        
                                        
                                        </TD>
                                </TR>
                                
                                </TABLE>

        
        
        </td>
    <td rowspan="2" width="25"><img src="../pic/trans.gif" width=25 height=10 border=0 alt=""></td>
 <td rowspan="2" height="100%" bgcolor="#cdcdcd" valign="top"><img src="../pic/topcol.gif" width=90 height=200 border=0 alt=""><br></td>
</tr>
<tr>
</tr>
<tr>
    <td colspan="3"><DIV ALIGN="center"><HR>&copy; KRIPTOPOLIS, 1996-2001</DIV></td>
    <td></td>
</tr>
</table>
</tr>
</table>
<br><br>        
</body>
</html>