Jogo justo
Visão geralVerificar jogo
RNG
Todos os nossos jogos foram auditados pela iTech Labs e possuem certificação RNG.
Click here to view the original iTech Labs Certificate.

Visão geral do sistema

O Gerador de Números Aleatórios (RNG) gera números aleatórios comprovadamente justos, usados para determinar o resultado de cada jogo no site.

Qualquer usuário pode verificar o resultado de um jogo de forma totalmente determinística. Ao fornecer o Client Seed como entrada, o Play2x não pode manipular os resultados em seu próprio favor.

O RNG do Play2x permite que cada jogo gere quantos números aleatórios forem necessários a partir de uma única combinação de client seed, server seed e nonce.


Cada jogo usa esses números para determinar o resultado, convertendo-os em:
- cartas ou pedras (hilo, escadas, triplo)
- embaralhamento de listas de resultados possíveis (keno, minas, torre)
- números (crash, dados)
- caminhos (plinko)


Entradas:

Cada usuário possui um client seed, server seed e nonce ativo, sendo o nonce incrementado a cada jogo jogado.


Seed do cliente:

String aleatória definida pelo usuário. Por padrão, é uma string gerada pelo servidor.


Seed do servidor:

O server seed é uma string aleatória de 64 caracteres hexadecimais gerada pelo servidor. O Play2x publica o hash SHA256 dessa string (Wikipedia)

O usuário pode alterar seu server seed a qualquer momento. Ao fazer isso, um novo seed é gerado e o nonce é reiniciado para 0. O seed anterior se torna público e pode ser verificado via SHA256.


Número único (nonce):

O nonce é um número que é incrementado a cada jogo, garantindo entradas únicas para cada rodada. É o único valor que muda entre uma rodada e outra.


Conversão de entradas em bytes:

O client seed, server seed e nonce são usados como entradas para gerar os números aleatórios.

Os bytes são gerados usando a função HMAC_SHA512 (K, m) (wikipedia). Essa função retorna 64 bytes aleatórios (0-255) com base no server seed (K) e uma mensagem (m).
A mensagem é composta pelo client seed, o nonce e um número incremental.

Este número incremental começa em 0 e é aumentado a cada vez que se usam os 64 bytes retornados pela HMAC_SHA512. A mensagem final segue o padrão:
HMAC_SHA512(server_seed, client_seed:nonce:round)