Comprobar la equidad por su cuenta
Todo lo que el sitio dice sobre el contrato puede contrastarse con los datos abiertos de la red. A continuación, las comprobaciones van de la más sencilla (dos minutos) a la más profunda (compilar el código). La mayoría de la gente no necesita saber programar.
Cómo funciona la comprobación
Un sitio puede falsificarse o equivocarse, pero un registro en la blockchain no. Por eso no compruebe en el sitio del proyecto, sino en un explorador de la red: un sitio independiente que muestra el contenido de la blockchain (Solscan, Solana Explorer, SolanaFM y similares). Ábralo usted mismo, no desde enlaces de mensajes ajenos.
Para las comprobaciones hacen falta dos direcciones: la del programa (contrato) y la del token. Las muestra la página «Seguridad». Contrástelas al menos en otros dos lugares independientes (el repositorio, los canales oficiales): si las direcciones no coinciden, alguien intenta engañarle.
Comprobaciones rápidas (2–10 minutos)
| Qué comprobar | Dónde mirarlo | Cómo debe ser | Si es distinto |
|---|---|---|---|
| 1. ¿Pueden emitirse nuevos tokens? | Página del token en el explorador, campo Mint Authority | Vacío (revocada) | Quien figure en esa dirección puede emitir tantos tokens como quiera y depreciar los suyos. |
| 2. ¿Pueden congelarse los tokens? | La misma página, campo Freeze Authority | Vacío | El titular puede congelar cualquier billetera, incluida la suya. |
| 3. ¿Quién puede cambiar el código? | Página del programa, campo Upgrade Authority | Vacío (código congelado) o la dirección de un multisig con retardo en las actualizaciones | Una sola dirección normal significa que el titular puede subir otras reglas en cualquier momento. |
| 4. Emisión total del token | Página del token: Supply | No más de 100.000.000.000, y solo disminuye por la quema | Si es mayor, la emisión se ha aumentado. |
| 5. ¿Coincide el token? | La dirección del token en su billetera frente a la de la página «Seguridad» | Las direcciones son idénticas carácter por carácter | No es el FAIRDRUM auténtico. No lo compre ni lo deposite. |
| 6. ¿Hay suficientes tokens en la bóveda? | La dirección de la bóveda de la página «Seguridad», saldo del token; las sumas de los pozos en «Economía» | El saldo de la bóveda no es menor que la suma de los pozos (más los saldos de juego de los jugadores) | El contrato debe estar siempre respaldado por tokens. Una discrepancia es una señal grave. |
La tabla superior de la página «Seguridad» lee los mismos campos directamente de la red y marca ✔ o ⚠, pero no se fíe solo de ella: compruébelo usted mismo al menos una vez.
Comprobar su propio giro
Cada giro deja un registro en la red, y el resultado que ve en pantalla puede contrastarse con él.
Encuentre la transacción
Después de un giro, bajo el botón aparece el enlace «Transacción». Abre el registro en el explorador. O bien abra en el explorador el historial de su billetera y elija la transacción con el programa FAIRDRUM.
Debe haber: estado Success y una lista de instrucciones.
Encuentre dos pares de llamadas
En la primera transacción hay una llamada a Switchboard (solicitud de aleatoriedad, commit) y la llamada al programa FAIRDRUM
spin_commit(la apuesta). En la segunda: una llamada a Switchboard (revelación, reveal) yspin_settle(el cálculo). El nombre se ve algo distinto según el explorador (SpinCommit, spinCommit).Compare el orden
La apuesta se registró antes de que se revelara el número: la primera transacción tiene un número de bloque (Slot) menor que la segunda. Esto significa que ni usted ni el proyecto conocían el resultado en el momento de la apuesta.
Mire el registro (Logs) de la segunda transacción
Ahí figura el evento
SpinSettledcon el número de giros, los premios y los aciertos de minijackpot, jackpot y superjackpot. Son los mismos números que mostró la rueda.Compruebe el propietario de la aleatoriedad
La cuenta de aleatoriedad indicada en la transacción debe pertenecer al programa Switchboard. El propio contrato rechaza cualquier otra, pero conviene comprobarlo: abra la cuenta y mire el campo Owner.
Comprobaciones profundas
Compilar el código y comparar el hash
Tome el repositorio del proyecto en GitHub (el enlace aparecerá tras la publicación), compile el programa en modo reproducible (anchor build --verifiable) y compare el hash con el que hay en la red (solana-verify). Si coinciden, en la red está exactamente este código abierto.
Leer las constantes
Todos los números del juego están reunidos en un solo archivo, consts.rs: partes, probabilidades, escala de premios, comisiones y plazos. El sitio dibuja sus tablas precisamente a partir de él, y no debería haber discrepancias entre el sitio y el contrato.
Ejecutar las pruebas
El repositorio incluye pruebas de las reglas y los cálculos (cargo test) y del cliente (npm test). Comprueban, por ejemplo, que la suma de todos los pozos y saldos no supera los tokens de la bóveda.
Analizar cómo se elige el resultado
De los 32 bytes de aleatoriedad revelada, el contrato obtiene números mediante SHA-256. Para la rueda principal son bloques SHA-256("FDRM-M" + aleatoriedad + número de bloque), de los cuales se toman 4 bytes (little-endian) por cada número, uno por cada giro ejecutado. Para la rueda dorada: SHA-256("FDRM-G" + aleatoriedad + número del giro ejecutado). El número se compara con umbrales expresados en fracciones de 232; los propios umbrales dependen del volumen semanal y del tamaño de los pozos en el momento del cálculo, por lo que un giro antiguo solo puede recalcularse por completo junto con el estado del programa en ese slot. Las fórmulas están en math.rs y engine.rs.
Leer el registro de un período
Cualquiera puede descargar de la red todos los eventos SpinSettled de un período y calcular por sí mismo la frecuencia del oro y el tamaño de los pozos. Compare con las «Probabilidades». Con pocos giros la dispersión es enorme: para ver una probabilidad del 1% hacen falta miles de giros.
Lo que no se puede comprobar
- La honestidad del oráculo. La aleatoriedad viene de la red Switchboard. El contrato comprueba que el número procede de la cuenta correcta y se reveló después de la apuesta, pero no puede comprobar que los nodos del oráculo no se hayan puesto de acuerdo. Es una dependencia externa.
- La ausencia de errores en el código. Las pruebas y el código abierto aumentan la confianza, pero no pueden sustituir a una auditoría independiente. Mientras no se indique un enlace a la auditoría, es que no la hay.
- El futuro. Mientras la autoridad de actualización no esté revocada, las reglas pueden cambiar con una nueva versión. Vigile las transacciones de actualización del programa.
- Lo que hace el administrador fuera del contrato. Las ventas de sus tokens, el marketing y las decisiones sobre listados quedan fuera del control del contrato. Los pagos del fondo de promoción son públicos, pero el contrato no comprueba en qué se gastan.