Não tenho certeza de quão confiável isso é:
https://libratybet.com/provably-fair
diz: Provavelmente justo
Rolar números
Para criar um número de lançamento, Libratybet usa um processo de várias etapas para criar um número de lançamento de 0 a 99,99. As sementes do cliente e do servidor e um nonce são combinados com HMAC_SHA512 que irá gerar uma string hexadecimal. O nonce é o número de apostas que você fez com o par inicial atual. Os primeiros cinco caracteres são retirados da string hexadecimal para criar um número de lançamento que vai de 0 a 1.048.575. Se o número do lançamento for superior a 999.999, o processo é repetido com os próximos cinco caracteres ignorando o conjunto anterior. Isso é feito até que um número inferior a 1.000.000 seja alcançado. No caso astronomicamente improvável de todas as combinações possíveis de 5 caracteres serem maiores, 99,99 é usado como o número do lançamento. O número resultante 0-999.999 é aplicado um módulo de 10 ^ 4, para obter um número de rolo 0-9999, e dividido por 10 ^ 2 para resultar em um número 0-99,99.
const roll = ({ serverSeed, clientSeed, nonce }) => {
const nonceClientSeed = `${clientSeed}-${nonce}`;
const hex = createHmac('sha512', serverSeed)
.update(nonceClientSeed)
.digest('hex');
deixe índice = 0;
deixe sorte = parseInt(hex.substring(index * 5, index * 5 + 5), 16);
enquanto (sorte >= 1e6) {
índice += 1;
sorte = parseInt(hex.substring(índice * 5, índice * 5 + 5), 16);
// chegamos ao fim do hash e todos devem ter sido ffffff
if (índice * 5 + 5 > 129) {
sorte = 9999;
quebrar;
}
}
retornar [sortudo% 1e4] * 1e-2;
}
Not sure how reliable this is:
https://libratybet.com/provably-fair
it says: Provably fair
Roll Numbers
To create a roll number, Libratybet uses a multi-step process to create a roll number 0-99.99. Both client and server seeds and a nonce are combined with HMAC_SHA512 which will generate a hex string. The nonce is the # of bets you made with the current seed pair. First five characters are taken from the hex string to create a roll number that is 0-1,048,575. If the roll number is over 999,999, the process is repeated with the next five characters skipping the previous set. This is done until a number less than 1,000,000 is achieved. In the astronomically unlikely event that all possible 5 character combinations are greater, 99.99 is used as the roll number. The resulting number 0-999,999 is applied a modulus of 10^4, to obtain a roll number 0-9999, and divided by 10^2 to result a 0-99.99 number.
const roll = ({ serverSeed, clientSeed, nonce }) => {
const nonceClientSeed = `${clientSeed}-${nonce}`;
const hex = createHmac('sha512', serverSeed)
.update(nonceClientSeed)
.digest('hex');
let index = 0;
let lucky = parseInt(hex.substring(index * 5, index * 5 + 5), 16);
while (lucky >= 1e6) {
index += 1;
lucky = parseInt(hex.substring(index * 5, index * 5 + 5), 16);
// we have reached the end of the hash and they all must have been ffffff
if (index * 5 + 5 > 129) {
lucky = 9999;
break;
}
}
return [lucky % 1e4] * 1e-2;
}
Traduzido automaticamente: