'Certificado' significa que pasó una prueba una vez. No significa que sea seguro hoy.
Una revisión de seguridad aprobó el sistema. Luego, investigadores externos encontraron la falla—mientras 280.000 personas ya estaban votando. La palabra 'certificado' no evitó que esto sucediera.
Es la tercera semana de marzo de 2015, y las elecciones estatales de Nueva Gales del Sur están en marcha. Cientos de miles de votantes ya han emitido sus votos en línea a través de un sistema llamado iVote. La autoridad electoral ha realizado sus controles de seguridad. El sistema ha sido revisado. Nadie ha levantado una alarma.
Entonces dos investigadores — J. Alex Halderman de la Universidad de Michigan y Vanessa Teague en Australia — apuntan un navegador al sistema en vivo y en funcionamiento.
No son funcionarios electorales. No tienen acceso interno. Están trabajando desde afuera, examinando lo que cualquier adversario capaz de acceder a la red podría alcanzar.
Lo que encuentran no es una vulnerabilidad teórica enterrada en un protocolo oscuro. Es una ruta de ataque funcional. El sistema iVote estaba cargando código desde un servidor de análisis externo a través de una conexión vulnerable a debilidades TLS entonces conocidas — la clase de ataque conocida como FREAK y Logjam. Un atacante posicionado en la red podría haber usado ese canal para manipular votos y comprometer la privacidad de las papeletas. ¿Y el servicio de verificación telefónica integrado específicamente para que los votantes confirmaran que su voto había sido registrado correctamente? También era susceptible de manipulación, lo que significaba que la verificación no verificaba nada.
La revisión de seguridad previa a las elecciones no había encontrado nada de esto.
Para cuando los investigadores reportaron sus hallazgos, aproximadamente 280.000 votos ya habían sido emitidos.
La palabra 'certificado' está haciendo un trabajo enorme aquí — y no lo está ganando
Esto es lo que 'certificado' realmente significa en contextos de tecnología electoral.
Significa que en un punto definido en el tiempo — antes del despliegue, en un entorno de laboratorio controlado — un sistema fue probado contra una especificación escrita, pasó esas pruebas, y recibió un documento que lo confirmaba.
Ese documento no se actualiza a sí mismo. No vuelve a ejecutar las pruebas cuando una dependencia cambia. No sabe que un script de análisis de terceros fue añadido a la pila web después de la auditoría. No sabe que la versión de la biblioteca TLS en producción difiere de la que examinaron los revisores. No sabe nada de lo que sucedió después del momento en que se aplicó el sello.
La certificación es una instantánea. El sistema continúa funcionando en un mundo que no se queda quieto.
Esto no es un fallo peculiar de Nueva Gales del Sur. Es estructural en cada régimen de certificación que funciona revisando un sistema una vez y luego confiando en el resultado. La instantánea está congelada. El entorno de amenaza no lo está.
Lo que Halderman y Teague encontraron no fue el resultado de una revisión previa a las elecciones apresurada o incompetente. Fue el resultado de revisar un sistema que luego continuó existiendo y cambiando. El servidor de análisis externo desde el cual el código se cargaba — esa dependencia era parte de la superficie de ataque, y las superficies de ataque no son estáticas.
La lección no es 'ejecutar una auditoría previa a las elecciones mejor'. La lección es que una verificación única no puede sustituir la verificabilidad continua, independiente y externa. Y el punto crítico específico de iVote es que el mecanismo de verificación — la confirmación por teléfono — estaba él mismo comprometido. La prueba de corrección propia del sistema podría haber sido manipulada.
Un candado que no puedes verificar no es un candado. Es una utilería.
Un tribunal federal hizo el mismo descubrimiento — sobre una papeleta de papel que puedes sostener en tu mano
Cinco años después, en un contexto muy diferente, un tribunal federal de EE.UU. en Atlanta estaba leyendo testimonios de expertos sobre un sistema que sí produce un artefacto físico. Los dispositivos de marcación de papeletas Dominion de Georgia imprimen una papeleta de papel. Puedes sostenerla. Puedes llevarla a un funcionario electoral. Puedes, en teoría, inspeccionarla.
Excepto que hay un problema.
El dispositivo de marcación de papeleta imprime dos cosas: texto legible por humanos mostrando tus selecciones, y un código QR. Es el código QR el que el escáner lee cuando tabula los votos. Y un código QR no es legible por humanos. No puedes mirarlo y confirmar que dice lo que dice el texto.
En su opinión de octubre de 2020 en Curling v. Raffensperger, la Corte de Distrito de EE.UU. para el Distrito Norte de Georgia revisó testimonios de expertos incluyendo al Dr. Halderman — el mismo investigador que había examinado iVote — sobre lo que un ataque cibernético podría hacer. El tribunal encontró que el sistema 'no proporciona un registro de papeleta verificable y auditable porque depende del código QR para la tabulación de votos y ese código en sí no puede ser leído y verificado por el votante.'
El tribunal también citó directamente la conclusión de 2018 de las Academias Nacionales: ningún mecanismo técnico existe actualmente para garantizar que una aplicación de conteo de votos produzca resultados precisos, y las pruebas únicamente no pueden garantizar que los sistemas no hayan sido comprometidos.
Lee esa oración nuevamente. Las pruebas únicamente no pueden garantizar que los sistemas no hayan sido comprometidos.
Eso no es una afirmación de investigación marginal. Es un tribunal federal citando las Academias Nacionales, en una opinión legal publicada. Las pruebas — que es lo que fundamentalmente es la certificación — no pueden garantizar la integridad de lo que realmente se está ejecutando.
El tribunal de Georgia, enfrentándose a una elección real semanas después, se negó a ordenar un cambio de último minuto a papeletas marcadas a mano. Sopesó la disrupción contra el riesgo y eligió la continuidad. Esa es una decisión pragmática defendible. Pero no resuelve el problema subyacente: el artefacto que los votantes podían inspeccionar no era el artefacto que se estaba contando.
La certificación había aprobado el sistema. La brecha de verificabilidad del sistema persistía.
El patrón detrás de ambos casos: el problema de la instantánea versus el directo
iVote de Nueva Gales del Sur y Curling se ven superficialmente diferentes. Uno involucra un sistema de votación por internet funcionando en servidores en red. El otro involucra una papeleta de papel producida en una casilla electoral.
Pero comparten el mismo fallo estructural.
En ambos casos, lo que fue certificado y lo que realmente se estaba ejecutando no eran demostrablemente lo mismo — y no había ningún mecanismo disponible para el público, o para los votantes individualmente, para cerrar esa brecha en tiempo real.
En el caso de iVote, la brecha estaba entre el sistema tal como fue revisado y el sistema tal como fue desplegado, que tenía una dependencia en vivo de un servidor externo que ningún revisor había evaluado. La característica de verificación destinada a detectar problemas había sido comprometida ella misma.
En el caso de Georgia, la brecha estaba entre lo que el votante podía ver (texto legible por humanos) y lo que la máquina realmente contaba (un código de barras que el votante no puede decodificar). La papeleta de papel que se suponía que permitiría la auditoría estaba codificando información que el auditor — el votante — no puede leer. Un recuento manual de esas papeletas de papel audita el resultado del código de barras, no la intención del votante. Como señaló el tribunal, si el código de barras codifica algo diferente de lo que dice el texto, el recuento manual del papel confirma la manipulación, no la elección del votante.
La certificación aprobó ambos sistemas.
Ninguna brecha era detectable mirando un documento de certificación.
¿Qué cerraría realmente esta brecha?
La certificación no es inútil. Un sistema que nunca ha sido probado por nadie es peor que uno que ha sido probado una vez. El problema es tratarla como suficiente — como la conclusión en lugar del comienzo de un proceso de verificación.
¿Qué la haría suficiente?
Tres cosas que son técnicamente alcanzables y actualmente raras.
Primero: atestación de lo que realmente se está ejecutando, no solo lo que fue revisado. Un sistema que puede criptográficamente probar a un observador externo que el código que ejecuta votos hoy es el mismo código que fue probado — no una versión posterior, no una dependencia parcheada, no un módulo intercambiado — cierra la brecha de instantánea. Esto no es ciencia ficción. Es un problema resuelto en ingeniería de software. Simplemente no es requerido en la mayoría de regímenes de certificación de tecnología electoral.
Segundo: verificabilidad externa independiente que no dependa del proveedor ni de la autoridad. La lección de iVote es que el mecanismo de verificación del sistema puede ser atacado. Una verificación que el sistema mismo administra no es verificación independiente. Verificabilidad significa que alguien afuera — un investigador, un partido político, un ciudadano con una computadora portátil — puede confirmar el comportamiento del sistema contra un registro a prueba de manipulaciones que no recibió del sistema siendo verificado. El Tribunal Constitucional Federal de Alemania entendió esto en 2009 cuando sostuvo que los votantes deben poder verificar los pasos esenciales de una elección 'sin ningún conocimiento especializado'. El estándar no es 'los expertos pueden revisarlo.' Es 'la gente ordinaria puede verificarlo.'
Tercero: el artefacto que se está contando debe ser el artefacto que el votante puede inspeccionar. Un código QR que ningún votante puede leer falla en esto. Una papeleta de papel que el votante marca a mano, que un escáner lee ópticamente, se acerca mucho más — porque un ser humano mirando el mismo papel puede evaluar la misma marca que la máquina evaluó. La comisión holandesa que recomendó regresar al papel en 2007 llamó a este principio controleerbaarheid — verificabilidad — y lo trató como no negociable: 'no hay secretos en el proceso electoral y las preguntas deben ser respondibles y las respuestas verificables y comprobables.' Eso no es una descripción de una papeleta de código QR.
Las auditorías aún pueden dejar la pregunta abierta
La objeción que probablemente ya estés formando: ¿qué hay sobre auditorías post-electorales? ¿Qué hay sobre recuentos manuales?
Ayudan. Una auditoría limitada por riesgo que muestrea papeletas de papel contra totales de máquinas, como Colorado pionero en 2017, proporciona prueba estadística real de que el recuento de máquinas refleja el registro de papel. El recuento manual completo de Georgia de casi 5 millones de papeletas presidenciales en noviembre de 2020 confirmó el resultado de la máquina a poco más de una décima de porcentaje.
Pero auditorías de salida de dispositivos de marcación de papeleta de código QR auditan la interpretación del código QR, no la intención del votante — a menos que el auditor verifique por separado que el texto legible por humanos y el código de barras coincidan. Ese paso no es estándar.
Y las auditorías suceden después del hecho. En el caso de iVote, la elección estaba en vivo antes de que se encontrara la falla. Una auditoría post-electoral de un sistema de votación en línea no puede recuperar votos que fueron silenciosamente alterados en tránsito, porque no hay copia independiente de lo que fue emitido para auditar en su contra. Toda la arquitectura de la votación por internet hace que el modelo 'papel como verdad de base' no esté disponible.
También está la pregunta irreducible sobre los propios recuentos manuales. El Condado Antrim, Michigan, ejecutó un recuento manual completo de aproximadamente 15.700 papeletas presidenciales en diciembre de 2020 — y el recuento manual aún diferió de la tabulación de la máquina en aproximadamente una docena de votos. En una carrera decidida por cientos de votos, una docena de discrepancias inexplicadas entre el recuento del 'estándar de oro' y el recuento de la máquina no resuelven la pregunta; la extienden. La auditoría confirmó que el método es imperfecto. 'La auditoría lo confirmó' es una tranquilidad, no una prueba, cuando el método de auditoría en sí mismo conlleva error irreducible.
La respuesta no es abandonar las auditorías. La respuesta es construir sistemas donde la verdad de base está protegida criptográficamente, es públicamente visible, e independientemente verificable — de modo que 'la auditoría lo confirmó' significa algo falsable.
Lo que todavía no puedes verificar — y lo que lo haría verificable
Aquí está lo que permanece opaco en este momento en la mayoría de jurisdicciones que ejecutan sistemas de votación certificados.
No puedes verificar que el código que se ejecuta el día de las elecciones es el código que fue certificado. No existe mecanismo de atestación pública para la mayoría de sistemas desplegados.
No puedes verificar, como votante, que una papeleta de código QR codifica tus opciones correctamente. Ninguna herramienta de decodificación independiente se proporciona en la casilla electoral.
No puedes verificar que las dependencias en vivo de un sistema de votación por internet coincidan con el sistema que fue revisado. La dependencia del servidor de análisis de iVote no estaba en el alcance de la auditoría.
No puedes verificar que una revisión de seguridad previa a las elecciones cubrió la superficie de ataque tal como existía el día de las elecciones, porque esa superficie cambia.
¿Qué haría estas cosas verificables — independientemente, sin confiar en el proveedor o en el organismo certificador?
Compilaciones de software publicadas y versionadas con hashes criptográficos, verificadas por partes independientes en el punto de despliegue. Registros de papeleta verificables por votantes donde lo que el votante marca es lo que el escáner lee y lo que cualquier auditor puede evaluar. Publicación de resultados de precinto en tiempo real, legible por máquina, que cualquiera puede descargar y verificación cruzada. Y pruebas públicas adversariales — no una revisión de una sola vez previa a las elecciones, sino una invitación abierta y continua para que investigadores externos encuentren problemas, como ha institucionalizado la corte electoral de Brasil con su programa de pruebas de seguridad pública.
'Certificado' es una declaración sobre el pasado. Lo que las elecciones necesitan es una declaración sobre ahora mismo — una que cualquier miembro del público pueda confirmar independientemente, sin tomar la palabra de nadie.
Los investigadores de Nueva Gales del Sur encontraron la falla de iVote desde afuera, sin acceso especial, durante una elección en vivo. Eso es tanto la advertencia como el modelo. La advertencia: la revisión cerrada y de una sola vez deja brechas. El modelo: los investigadores externos con acceso a un sistema en funcionamiento pueden encontrar lo que los internos pierden.
La diferencia entre un desastre y un casi desastre es si la arquitectura del sistema permite que los externos lo verifiquen — antes de que los votos se emitan, mientras se están emitiendo, y después de que se cuenten.
La certificación dice que el sistema fue verificado.
La verificabilidad dice que puede serlo.
Esas no son la misma cosa, y ninguna garantía de autoridad electoral, sin importar cuán sincera, puede cerrar la brecha entre ellas.
Ver cuán común es esta brecha de verificación en todo el mundo →
Lee la versión de dos minutos →
Explora la base de datos de casos completos →
Fuentes
- Halderman, Teague — The New South Wales iVote System: Security Failures and Verification Flaws in a Live Online Election (arXiv:1504.05646)
- Curling v. Raffensperger, No. 1:17-cv-2989-AT, Opinion and Order (N.D. Ga. Oct. 11, 2020) (Justia)
- Bundesverfassungsgericht, Judgment of 3 March 2009, 2 BvC 3/07 and 2 BvC 4/07 (English translation)
- Adviescommissie inrichting verkiezingsproces (Commissie Korthals Altes), 'Stemmen met vertrouwen', 27 September 2007
- Colorado Secretary of State — A new kind of election audit: Colorado is first to complete it
- Michigan Department of State — Final numbers from Antrim County audit affirm accuracy of election results
- Tribunal Superior Eleitoral (Brazil) — Teste Público de Segurança dos Sistemas Eleitorais