이것이 얼마나 신뢰할 수 있는지 잘 모르겠습니다.
https://libratybet.com/provabilly-fair
그것은 말한다: 확실히 공정하다
롤 번호
롤 번호를 생성하기 위해 Libratybet은 다단계 프로세스를 사용하여 롤 번호 0-99.99를 생성합니다. 클라이언트 및 서버 시드와 nonce는 모두 16진수 문자열을 생성하는 HMAC_SHA512와 결합됩니다. nonce는 현재 시드 쌍으로 베팅한 횟수입니다. 처음 5개 문자는 16진수 문자열에서 가져와 0-1,048,575의 롤 번호를 만듭니다. 롤 번호가 999,999를 초과하면 이전 세트를 건너뛰고 다음 5개 문자로 프로세스가 반복됩니다. 이는 1,000,000 미만의 숫자가 달성될 때까지 수행됩니다. 천문학적으로 가능성이 없는 모든 5개 문자 조합이 더 큰 경우에는 99.99가 롤 번호로 사용됩니다. 결과 숫자 0-999,999에 모듈러스 10^4를 적용하여 롤 번호 0-9999를 얻은 다음 10^2로 나누어 0-99.99 숫자를 얻습니다.
const 롤 = ({ serverSeed, clientSeed, nonce }) => {
const nonceClientSeed = `${clientSeed}-${nonce}`;
const hex = createHmac('sha512', serverSeed)
.update(nonceClientSeed)
.digest('16진수');
인덱스 = 0으로 놔두세요;
행운을 빌어요 = parsInt(hex.substring(index * 5, index * 5 + 5), 16);
while (행운 >= 1e6) {
인덱스 += 1;
Lucky = parsInt(hex.substring(index * 5, index * 5 + 5), 16);
// 해시의 끝에 도달했으며 모두 ffffff였을 것입니다.
if (색인 * 5 + 5 > 129) {
행운 = 9999;
부서지다;
}
}
return [행운의 % 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;
}
자동 번역: