FameBet

Kanıtlanabilir adil nedir?

Kanıtlanabilir adil, her oyunun sonucunun oyuncuların bağımsız olarak doğrulayabileceği rastgele bir değer tarafından üretildiği anlamına gelir. Bu şeffaflık ve adaleti garanti eder, ne oyuncunun ne de casinonun sonucu manipüle edemeyeceğini sağlar.

Nasıl çalışır?

VRF (doğrulanabilir rastgele fonksiyon) gerçekten rastgele bir değer üretmek için VRF kullanırız. Bu fonksiyon kullanıcı kimliği, oyun adı, oyun nonce'u ve casinonun gizli anahtarı dahil birkaç girdi alır. Kriptografik hesaplamalar yapar ve hem rastgele bir değer hem de bir kanıt çıktısı verir. Bu kanıt, herhangi birinin değerin adil bir şekilde üretildiğini ve kurcalanmadığını doğrulamasını sağlar. Güvenli ve doğrulanabilir rastgelelik için SECP256K1_SHA256_TAI şifre takımını kullanarak RFC6979 VRF uygulamasını takip ediyoruz.

Adaleti doğrulama

Oyuncular aşağıdaki kodu kullanarak rastgele değeri bağımsız olarak doğrulayabilir:

const { verify } = require('@roamin/ecvrf')
const toHex = require('string-hex')

const publicKey = '03c41192ba26b7efafa9c69c941f759690d4fd46761c8424edbad1d5fc2c5c0947'
const request = 'e1bc2c47-9b42-4409-8a21-d4c4f46455be|rollbit:mines|25|1234costam'
const random = 'e2983665217b5aaebf11c886ef31e001c9615362b0aa6c3e49de9057f8979e1d'
const proof = '03008cd333b153dddcffc64abf357222d31cd6e6f85ddbbe9227a60d2d0edcf9e6ab0f088c1f4402e6b4fa0ef430612d3ca86a686fc857ff412a8fe1553c821f47fcc21f4b2ca1d4c3b09b59a7e4fe1b8a'

try {
  const result = verify(publicKey, proof, toHex(request))
  console.log(result === random ? 'Is Verified' : 'Not Verified')
} catch (error) {
  console.log(error)
}

Oyun sonucunu hesaplama

Rastgele değer doğrulandıktan sonra bir sayıya dönüştürülür:

import * as crypto from 'crypto';
function bytesToUniformFloat(xs) {
    const hash = crypto.createHash('blake2b512').update(xs).digest();
    const value = hash.readBigUInt64LE(0);
    return Number(value) / Number(BigInt(2 ** 64 - 1));
  }

Bu dönüştürülmüş sayı daha sonra oyuna özel mantığa dayalı nihai oyun sonucunu üretmek için kullanılır.

function calcMinesIxs({ size, mines, randomValue }) {
  const remainingIxs = Array.from({ length: size }, (_, i) => i);
  const mineIxs = [];
  for (let i = 0; i < mines; i++) {
    const seedI = Buffer.from(randomValue + '-' + i, 'ascii');
    const ixI = Math.floor(bytesToUniformFloat(seedI) * remainingIxs.length);
    mineIxs.push(remainingIxs[ixI]);
    remainingIxs.splice(ixI, 1);
  }
  return mineIxs;
}

const calcMinesWin = ({ size, mines, reveals, bet }) => {
  let mult = 1.0;
  for (let i = 0; i < reveals; i++) {
    const lossProbability = mines / (size - i);
    mult *= 1.0 / (1.0 - lossProbability);
  }
  return Math.floor(100.0 * bet * mult * 0.98) / 100.0;
};

function generateBoard({ size, mines, randomValue }) {
  const mineIxs = calcMinesIxs({ size, mines, randomValue });
  const sizeSqrt = Math.sqrt(size);
  const board = Array.from({ length: sizeSqrt }).map(() => Array(sizeSqrt).fill(0));
  for (const index of mineIxs) {
    const row = Math.floor(index / sizeSqrt);
    const col = index % sizeSqrt;
    if (row < sizeSqrt && col < sizeSqrt) {
      board[row][col] = -1;
    }
  }
  console.log('Board:', board);
  return board;
}

generateBoard({ size: 25, mines: 2, randomValue: 'be87e890f696aad0aad28bef78a3f2322c7687a76ff6f86b6dadb4f2aa00eeb9' });
console.log('Multipliers:');
for (let i = 1; i < 24; i++) {
  console.log(i, ': ', calcMinesWin({ size: 25, mines: 2, reveals: i, bet: 1 }));
}
Famebet

Famebet.com Better Fame LTD'ye aittir ve onun tarafından işletilir. kayıt numarası: 15907, kayıtlı adres: Hamchako, Mutsamudu, Autonomous Island of Anjouan, Union of Comoros. Bize ulaşın support@famebet.com. Famebet.com, Autonomous Island of Anjouan, Union of Comoros Hükümeti tarafından lisanslanmış ve düzenlenmiştir ve ALSI-202509070-FI2 No'lu Lisans altında faaliyet göstermektedir. Famebet.com tüm düzenleyici uyumlulukları geçmiştir ve her türlü şans ve bahis oyunu için oyun operasyonları yürütme yetkisine sahiptir.

DiscordTelegramTikTokYouTubeInstagramX

İletişim

support@famebet.com

Ortaklar

partners@famebet.com

İş Ortağı

18+

© 2025 Famebet. Tüm hakları saklıdır.