Transparencia y método
Cómo se verifica un sorteo
El sorteo no depende de que confíes en una captura de pantalla. SorteosRT fija primero las reglas y las entradas elegibles; solo después obtiene una aleatoriedad pública que determina ganadores y suplentes.
El proceso, paso a paso
-
1
Se publican las reglas
La ficha indica el premio, el cierre, el número de ganadores y el método de participación. Al cerrar, esas bases quedan representadas en el manifiesto mediante una huella SHA-256.
-
2
Se fija la lista elegible
SorteosRT guarda una entrada por participante admitido y crea identificadores seudónimos. El manifiesto público enumera esos identificadores; no publica correos ni nombres de participantes. En sorteos sociales, la lista depende de las respuestas que la API de la red devuelve durante la ventana de captura indicada.
-
3
Se elige por adelantado una ronda futura
Al sellar la lista, el sistema deja publicado el manifiesto y fija una ronda futura de drand. Como su valor aleatorio todavía no existe, el cálculo usa una semilla que el organizador no puede elegir después de ver la lista.
-
4
Se calcula el orden
Cuando llega la ronda, el sistema verifica la respuesta de drand y puntúa cada identificador con HMAC-SHA-256 usando esa aleatoriedad. El orden de las puntuaciones determina ganadores y suplentes. El acta conserva la ronda, el resultado, la huella del manifiesto y una firma digital.
-
5
Cualquiera puede repetir la comprobación
La ficha de un sorteo sellado muestra el manifiesto. Cuando se publica el resultado, también ofrece el acta JSON. El verificador disponible en el proyecto vuelve a consultar y validar drand, comprueba la firma y recalcula el orden completo.
Qué puedes comprobar
- Que el acta corresponde exactamente al manifiesto publicado antes de conocerse la ronda.
- Que se ha usado la ronda drand indicada y que su valor aleatorio es válido.
- Que, aplicando el algoritmo publicado a las entradas del manifiesto, se obtienen los mismos ganadores y suplentes.
- Que los cambios de ganador y las entregas registradas aparecen como eventos separados y no reescriben el orden original.
Verificación técnica
Descarga acta.json desde la ficha del sorteo y guarda junto a ella los dos archivos de verificación: verificar-acta.mjs y beacon.mjs. Con Node.js 24, instala la dependencia en esa carpeta y ejecuta:
npm init -y && npm install drand-client@^1.4.2
Desde esa carpeta, el comando de verificación es:
node verificar-acta.mjs acta.json
Para contrastar además la identidad de la clave firmante, añade como segundo argumento la clave pública esperada que hayas obtenido por un canal de confianza.
Alcance y límites
La verificación demuestra que el resultado publicado se reproduce con las entradas registradas en ese manifiesto y la ronda drand indicada. No demuestra por sí sola que una API de terceros haya devuelto todas las participaciones, que cada cuenta pertenezca a una persona diferente, que las bases cumplan la normativa o que el premio se haya entregado.
Este método se aplica a los nuevos sorteos de SorteosRT que publican manifiesto y acta. El archivo histórico conserva sorteos anteriores y sus datos disponibles; esos sorteos antiguos no cuentan con el manifiesto ni el acta del método actual.
La fecha de sellado se registra en SorteosRT y el manifiesto queda accesible antes de la ronda. A día de hoy no añadimos un sello de tiempo externo independiente. La firma del acta se puede contrastar con una clave pública de confianza; la clave incluida en el propio JSON, por sí sola, no acredita quién es su titular.
Por eso describimos el proceso como reproducible y verificable, no como una certificación legal ni como una garantía absoluta contra cualquier incidencia. Si hay una captura incompleta o una ronda que no se puede validar, el sorteo pasa a revisión en lugar de publicar un resultado normal.
SorteosRT