Transparencia y trazabilidad electoral
Resultados agregados en tiempo real. La identidad del elector y su voto están completamente separados: el sistema jamás muestra quién votó por quién.
Plataforma de trazabilidad independiente. No reemplaza al organismo electoral oficial ni es un sistema oficial de votación.
Panel administrativo privado: /admin.html (Cloudflare Access).
Resultados en tiempo real
… · Simulador de voto secreto (demo)
Cada voto usa un token anónimo de un solo uso. En producción el token se entrega en mesa tras verificar elegibilidad, sin guardar RUT ni nombre junto al voto.
sin token
Mesas
Verificación: sistema vs acta vs oficial
Compara registros del sistema con actas y resultados oficiales. Diferencia = posible inconsistencia, nunca fraude confirmado automáticamente.
Anomalías
Actas
Historial verificable
Últimos registros (hash, sin identidad)
Metodología
- Elegibilidad separada: la mesa verifica padrón y entrega token aleatorio. Solo se guarda
sha256(token), sin RUT. - Voto secreto: el elector presenta el token; el backend lo marca usado (anti-replay) e inserta
{mesa, candidato, prev_hash, hash}. - Cadena criptográfica:
hash = SHA-256(prev|mesa|candidato|fecha|nonce). Alterar un voto antiguo rompe todos los siguientes. - Tiempo real: SSE
/api/events+ polling de respaldo cada 8 s. - Verificación: se compara sistema vs acta (hash de archivo en R2) vs resultado oficial por mesa.
Criptografía: solo SHA-256 vía WebCrypto, librerías estándar. Blind signatures / ZK-proofs documentadas como evolución (ver docs/), no implementadas superficialmente.
Seguridad
- Turnstile verificado en backend + rate limiting + validación de token de un solo uso + anti-replay.
- Panel admin tras Cloudflare Access; toda acción sensible en
audit_log. Los votos nunca se editan silenciosamente. - Secretos solo en variables de entorno del Worker. Ninguna credencial en frontend ni repo.
- Limitaciones: no sustituye al organismo oficial; datos externos pueden errar; una inconsistencia no implica fraude.