Әділдік
Негізгі Dice & Диафазалық Dice Әділдігі
Біз қауіпсіздік туралы сөзімізге ғана сенуіңізді қаламаймыз. Оның орнына, біз әр ойынның әділдігін қалай қамтамасыз ететінімізді түсіндіреміз.
Кездейсоқтықтың қысқаша мазмұны
Біздің мүшелер кез келген уақытта өз ставкаларын тексере алады. Ол үшін олар ойын нөмірін анықтауы керек.
Егер сіз Клиенттің тұқымына және Сервердің тұқымына екінші элемент – Nonce – қоссаңыз, ставканың нәтижесін анықтай аласыз. Әрине, егер сіз нәтижелеріңізді алдын ала жарияласаңыз, бұл процесс бәрін бұзады. Сондықтан біз SHA-256 хэшін пайдаланып, Сервердің тұқымын уақытша жасырамыз. Әр Тұқым соңғы кездейсоқтық өткізілгеннен кейін ашылады. Бұл біздің пайдаланушыларға ойындарын ашық түрде тексеру мүмкіндігін береді.
Ролл нөмірлері қалай есептеледі
Ойынның ережелері ролл нөмірін білуіміз керек деп көрсетеді. Оны алу үшін біз кейбір есептеулер жүргізуіміз керек. Ставка нөміріңізді, Сервер мен Клиент Семін біріктіріңіз. Нәтижесінде 0 мен 9,999 арасында бір сан аламыз.
Бұл қалай жұмыс істейді:
біріктіру = Сервер Семі + Клиент Семе + NonceКейін, біз SHA-512 хэшін пайдаланып 128 таңбалы оналтылық тізбегін аламыз:
хэш = SHA512(біріктіру)Бұл сәтте, біз сол хэштің 5 таңбасын «ондық санға» айналдырдық. Содан кейін үш сценарий мүмкін. Егер ол миллионға тең немесе одан жоғары болса, біз келесі 5 таңбаны пайдаланып солай жалғастырамыз. Бұл 25 ретке дейін болады. Егер осы сынақтардың ешқайсысы миллионнан аз нәтиже бермесе, соңғы 3 таңба сіздің ролл нөміріңізге айналады. Керісінше жағдайда, біз оны 10K-ға бөлеміз және сіздің ролл нәтижесін қарастырамыз.
Код қалай көрінеді
Біздің онлайн тексерушіні пайдаланыңыз немесе ставкаларымызды қалай тексеретімізді көру үшін код мысалына қараңыз:
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;
}