Provably Fair CS2
Her sonuç kriptografik olarak doğrulanabilir. Ne sen ne de ev sonucu manipüle edebilir — bunu kendin kanıtlayabilirsin.
Nasıl çalışır
Taahhüt
Oynamadan önce rastgele bir server seed üretir ve SHA-256 hash değerini gösteririz. Taahhüdümüz kilitlenir — değiştiremeyiz.
SHA256(server_seed) → a3f8c1d…Oyna
Senin client seed’in ve artan nonce, server seed ile birleşerek HMAC-SHA256 üzerinden sonucu üretir.
HMAC(server, client:nonce:0) → resultDoğrula
Seed’leri döndürdüğünde önceki server seed açığa çıkar. Orijinal taahhüde hash ettiğini doğrula, sonra kendin sonucu yeniden üret.
✓ Hash matches → outcome is authenticOyun doğrulama
Her kasa açılışında HMAC-SHA256, server seed (anahtar) ve mesajından rastgele bir float üretir.
Float, 1 ile 100.000 arasında bir ticket’e dönüşür. Kasadaki her öğenin bitişik bir ticket aralığı vardır — hepsi tam 100.000 eder. Ticket’in hangi aralığa düşerse, o öğe sonuçtur.
1const crypto = require('crypto');
2
3function verifyCaseRoll(serverSeed, clientSeed, nonce) {
4 const hmac = crypto.createHmac('sha256', serverSeed);
5 hmac.update(`${clientSeed}:${nonce}:0`);
6 const buf = hmac.digest();
7
8 const float =
9 buf[0] / 256 +
10 buf[1] / 65536 +
11 buf[2] / 16777216 +
12 buf[3] / 4294967296;
13
14 const ticket = Math.floor(float * 100000) + 1;
15 return { ticket, float };
16}
17
18// Verify the server seed commitment
19function verifyHash(serverSeed, expectedHash) {
20 const hash = crypto.createHash('sha256')
21 .update(serverSeed).digest('hex');
22 return hash === expectedHash;
23}
24
25// Each case item owns a ticket range.
26// All ranges sum to 100,000.
27// The item whose range contains your ticket wins.
Kasa roll doğrula
Seed’lerin
Aktif seed çiftini gör, client seed’ini değiştir veya mevcut server seed’i açığa çıkarmak için döndür.
Seed geçmişi
Açığa çıkarılmış server seed’li geçmiş seed çiftleri. Önceki herhangi bir oyunu doğrulamak için kullan.
About this page
Ev sonuçları manipüle edebilir mi?
Hayır. Her turdan önce aktif server seed'in SHA-256 hash'ini yayınlarız. Seed gizli kalır, hash sabit — farklı sonuç için seed değişimi = döndürmede farklı hash. Client seed ve nonce ile her çekim önceden sabit ve sonra yeniden üretilebilir — sunucu "yeniden çalıştırma" yok.
Server seed, client seed ve nonce nedir?
Server seed: backend rastgele değeri, kullanımda gizli; yalnızca SHA-256 hash herkese açık. Client seed: senin değerin — varsayılan veya ayarlardan. Nonce: aktif seed çiftinde oyun başına +1. Birlikte HMAC-SHA256: aynı girdi = aynı sonuç, bayt düzeyinde yeniden üretilebilir.
Doğrulamak için seed neden döndürülür?
Doğrulama açık server seed ister; oyun sırasında açıklamak tahmin sağlar. Döndürme: mevcut seed açılır ve yenilenir, yeni hash, nonce sıfır. Eski oyunlar eski seed'de, yeniler yeni seed'de.
Kendi client seed'imi ayarlamak mantıklı mı?
Evet Ayarlar → Provably Fair veya "Seed'lerin": istediğin değer, döndür. Ev önceden bilemezdi. Boş = güçlü rastgele seed. İkisi de Provably Fair; özel seed güven ve denetim içindir.
Seed'leri nasıl döndürürüm?
Ayarlar → Provably Fair veya "Seed'lerin" paneli, "Seed'leri döndür". Mevcut server seed'i açar, yeni seed + hash, seçilen veya yeni client seed, nonce 0. Bekleme yok.
Nonce nedir ve neden önemli?
Seed çiftinde tur başına sayaç — ardışık oyunları benzersiz yapar. Doğrulayıcıda yanlış nonce = yanlış sonuç. Her zaman tam tur nonce'unu ver.
Kasa savaşlarında adillik?
Tüm lobi için bir server seed; koltuk başına aynı kasada bağımsız çekim. HMAC: paylaşılan server seed, tur nonce, koltuğun kullanıcı ID'si. Savaş bitince seed tüm çeviriler için tekrar.
Rulet, mayın, blackjack veya kasa turunu doğrulama?
Buradaki doğrulayıcı, uygun oyun: açılmış server seed, o anki client seed, nonce — artı oyun girdisi (mayın sayısı, kasa ID, savaşlarda kullanıcı ID). Ekrandan sapma: seed'leri kaydet, destek.
Client seed veya nonce kaybettim?
Aktif çift ve her sonuçlanan turun nonce'u hesapta — Ayarlar → Provably Fair ve oyun geçmişleri. Not almadan döndürme: eski çift arşivlenir, istediğin zaman doğrula.
Provably Fair düzenleyici denetimiyle aynı mı?
Hayır. Provably Fair: her tur önceden taahhütlü girdilerden — sonradan sonuç seçme yok. Uzun vadeli ev avantajı, ödeme bütünlüğü veya yargı yetkisini tek başına sertifika etmez. CSRAGE Provably Fair'i iç kontroller ve isteğe bağlı üçüncü taraf denetimiyle birleştirir — tamamlayıcı, değiştirilemez.
Kendi doğrulayıcımı programlayabilir miyim?
Evet — algoritmalar burada açık JavaScript'te. Taahhüt için SHA-256, çekimler için HMAC-SHA256 — tüm dillerde standart. Sapma: girdileri kaydet, bize ulaş.
Daha fazla oynamak oranları yukarı/aşağı çeker mi?
Hayır. Yalnızca o turun seed çifti ve nonce'u — geçmiş, seviye, seri veya bakiye değil. Uzun oturumlar varyans yüzünden farklı hissedilir. Doğrulayıcı her turun izolasyonunu kanıtlar.
