O Keno usa um sistema comprovadamente justo para garantir que cada sorteio seja transparente, verificável de forma independente e não possa ser alterado após o início das apostas.
Cada sorteio de Keno é gerado usando três valores:
Server seed-gerado pelo servidor e confirmado antes do sorteio, exibindo seu hash SHA-256.
Semente de cliente - sua semente de cliente exclusiva.
Nonce - um valor incremental que garante que cada sorteio gere um resultado único.
Como você recebe a semente do servidor com hash antes de fazer sua aposta, o servidor não pode alterar o resultado depois sem invalidar o hash exibido anteriormente.
O resultado do Keno é gerado usando Saídas HMAC-SHA256 para realizar uma seleção Fisher-Yates. O processo funciona da seguinte forma:
Para cada um dos 10 números sorteados, o sistema gera um valor HMAC usando:
HMAC_SHA256(serverSeed, clientSeed:nonce: i)
Os primeiros 8 caracteres da saída HMAC são convertidos em um número:
raw = parseInt(hmac[0..8], 16)
O valor gerado é usado para selecionar um índice do pool de números restantes:
idx = raw % remaining_pool_size
O número selecionado é removido do pool e adicionado ao resultado do sorteio.
Este processo é repetido 10 vezes para gerar 10 números únicos de 1 a 40 usando um método aleatório de Fisher-Yates.
Depois que a semente do servidor é revelada (quando o par de sementes é girado), você pode verificar os sorteios de Keno anteriores comparando a semente do servidor revelada com o hash exibido anteriormente e repetindo o cálculo usando sua semente do cliente e nonce.
Este sistema garante que cada sorteio de Keno seja aleatório, transparente e não possa ser manipulado pelo jogador ou pelo cassino após a semente do servidor ter sido confirmada.
