SpyDrop usa el algoritmo Provably Fair para que cualquier jugador pueda comprobar la imparcialidad de una partida. El resultado de una caja o de un upgrade lo determinan una seed del servidor fijada de antemano, tu seed del cliente y el número de partida, así que no se puede manipular una vez empezada la partida.
Antes de la partida ves el hash de la seed del servidor, así que el servidor ya no puede cambiar los datos de origen sin que se note.
Tu seed y el número de partida participan en el cálculo, así que el resultado no lo forma solo el servidor.
Introduce los datos de una partida. El cálculo se hace en tu navegador y no se envía nada al servidor.
Introduce los datos de la partida y pulsa «Verificar»: aquí aparecerán el número y el objeto.
Seed del servidor + Tu seed + Número de partida = Resultado justo
El servidor elige una seed del servidor aleatoria y muestra solo su hash SHA-256. Después no se puede cambiar la seed: el hash dejaría de coincidir.
Para cada partida se calcula un HMAC-SHA256. La clave es la seed del servidor como cadena hex de 64 caracteres, tal cual, sin decodificarla a bytes. El mensaje se forma con el tipo de juego, el juego, tu seed del cliente y el número de partida.
Los primeros 8 caracteres hex del hash dan un número de 0 a 4 294 967 295. De él sale el ticket de 1 a 100 000 000: floor(número × 100 000 000 / 2^32) + 1.
En la tabla de probabilidades del momento de la partida, cada objeto tiene su propio rango de tickets. Se obtiene el objeto en cuyo rango cae el ticket.
El umbral es floor(probabilidad × 100 000 000). El upgrade gana si el ticket no supera el umbral.
La seed del servidor se revela cuando cambias las seeds. Después puedes recalcular cualquier partida del par en tu navegador, en esta página, o con tu propio código.
La clave es la cadena hex de la seed del servidor tal cual (64 caracteres), no los bytes decodificados de ella. Aquí es donde fallan la mayoría de las comprobaciones hechas por cuenta propia.
Puedes verificar una partida jugada con el botón «Verificar» del historial de cajas y upgrades.