Justiça
Justiça dos Dados Originais & Dados de Intervalo
Não queremos que você apenas acredite em nossa palavra quando se trata de segurança. Em vez disso, vamos explicar como garantimos a justiça de cada rolagem.
Randomização em resumo
Nossos membros podem verificar suas apostas a qualquer momento que desejarem. Para isso, eles devem deduzir um número de rolagem.
Se você adicionar um terceiro elemento – Nonce – ao par de Client Seed e Server Seed, poderá deduzir o resultado da aposta. Certamente, se você revelar seus resultados antecipadamente, isso arruinaria todo o processo. Portanto, usamos SHA-256 para ocultar temporariamente seu Server Seed. Cada Seed é revelado após a última randomização ter ocorrido. Isso proporciona aos nossos usuários a possibilidade de verificar suas rolagens de forma transparente.
Como os números das jogadas são calculados
As regras do jogo estipulam que precisamos saber o número da jogada. Para recebê-lo, devemos fazer alguns cálculos. Combine seu número de aposta, o Server Seed e o Client Seed. Como resultado, obtemos um número entre 0 e 9.999.
É assim que funciona:
combinação = Server Seed + Client Seed + NonceEm seguida, precisamos de uma string hexadecinal de 128 caracteres usando o SHA-512:
hash = SHA512(combinação)Neste ponto, convertemos 5 caracteres desse hash em um chamado número decimal. Então, três cenários são possíveis. Se for igual a um milhão ou mais, continuamos usando os próximos 5 caracteres. Isso acontece até 25 vezes. Se nenhuma dessas tentativas deu um resultado inferior a um milhão, os últimos 3 caracteres serão convertidos no seu número da jogada. Caso contrário, dividimos isso por 10K e consideramos seu resultado da jogada.
Como o código se parece
Use nosso verificador online ou dê uma olhada no exemplo de código para ver como verificamos nossa aposta:
function getRoll(serverSeed, clientSeed, nonce) {
var hash = sha512(serverSeed + clientSeed + nonce);
var index = 0;
do {
var lucky = parseInt(hash.substr(index, 5), 16);
index += 5;
} while (lucky >= 1000000);
return lucky % 10000;
}