Pular para o conteúdo

Dados comprovadamente justos

Confira cada rolagem

Como funciona

  1. 1

    O servidor trava uma semente

    Antes da primeira rolagem, o servidor escolhe uma semente aleatória secreta e publica sua impressão digital SHA-256 (o compromisso). Depois de publicada, a semente não pode mudar sem que a impressão digital mude também.

  2. 2

    Os dois jogadores adicionam a sua

    O app de cada jogador envia sua própria semente aleatória quando a partida começa. Assim, o servidor sozinho não poderia ter planejado os dados, nem se quisesse.

  3. 3

    Cada rolagem vem das sementes

    A rolagem número k é o HMAC-SHA256 do id da partida, das sementes dos dois jogadores e de k, com a semente do servidor como chave. Bytes enviesados são descartados, então cada face tem exatamente a mesma chance.

  4. 4

    A semente é revelada no fim

    Quando a partida termina, a semente do servidor é publicada. Qualquer pessoa pode calcular o hash dela, compará-lo com o compromisso e recalcular cada rolagem, como esta página faz no seu navegador.

roll(k) = HMAC-SHA256(key = serverSeed, "matchId|seedA|seedB|k|c"); byte b < 252 → die = b mod 6 + 1

Verifique qualquer conjunto de sementes

Cole os valores de qualquer partida. Os dados são calculados aqui no seu navegador; nada é enviado para lugar nenhum.

Jogar online