Dürüstlüğü kendiniz doğrulayın
Sitenin sözleşme hakkında söylediği her şey, ağın açık verileriyle karşılaştırılabilir. Aşağıda en basitinden (iki dakika) en derinine (kodun derlenmesi) kadar doğrulamalar var. Çoğu için programlama bilmek gerekmez.
Doğrulama nasıl işler
Site sahte olabilir ya da yanılabilir; blokzincirdeki kayıt ise olamaz. Bu yüzden doğrulamayı projenin sitesinde değil, blok gezgininde yapın: blokzincirin içeriğini gösteren bağımsız bir sitede (Solscan, Solana Explorer, SolanaFM ve benzerleri). Bunlardan birini, başkalarının mesajlarındaki bağlantılardan değil, kendiniz açın.
Doğrulamalar için iki adres gerekir: program (sözleşme) ve token. Bunları “Güvenlik” sayfası gösterir. Ayrıca en az iki bağımsız yerde (depo, resmî kanallar) karşılaştırın: adresler uyuşmuyorsa sizi kandırmaya çalışıyorlar demektir.
Hızlı doğrulamalar (2–10 dakika)
| Ne doğrulanır | Nereye bakılır | Nasıl olmalı | Farklıysa |
|---|---|---|---|
| 1. Yeni token basılabilir mi | Blok gezgininde token sayfası, Mint Authority alanı | Boş (iptal edilmiş) | Adresi yazılı olan kişi istediği kadar token basıp sizinkileri değersizleştirebilir. |
| 2. Tokenlar dondurulabilir mi | Aynı sayfa, Freeze Authority alanı | Boş | Sahibi, sizinki dahil herhangi bir cüzdanı dondurabilir. |
| 3. Kodu kim değiştirebilir | Program sayfası, Upgrade Authority alanı | Boş (kod dondurulmuş) ya da güncellemeleri geciktiren bir multisig adresi | Tek bir sıradan adres, sahibinin istediği an başka kurallar yükleyebileceği anlamına gelir. |
| 4. Tokenın toplam arzı | Token sayfası: Supply | En çok 100.000.000.000; yakma nedeniyle yalnızca azalır | Daha fazlası, arzın artırıldığı anlamına gelir. |
| 5. Token aynı mı | Cüzdanınızdaki token adresi, “Güvenlik” sayfasındakiyle karşılaştırılır | Adresler karakteri karakterine aynı | Bu gerçek FAIRDRUM değil. Satın almayın ve yatırmayın. |
| 6. Kasada yeterli token var mı | “Güvenlik” sayfasındaki kasa adresi, token bakiyesi; havuz tutarları “Ekonomi” sayfasında | Kasa bakiyesi, havuzların toplamından (artı oyuncuların oyun bakiyelerinden) az değil | Sözleşme her zaman tokenlarla karşılanmış olmalıdır. Uyuşmazlık ciddi bir işarettir. |
“Güvenlik” sayfasının üst tablosu aynı alanları doğrudan ağdan okur ve ✔ ya da ⚠ ile işaretler; ancak yalnızca ona güvenmeyin: bir kez kendiniz karşılaştırın.
Kendi çevirmenizi doğrulayın
Her çevirme ağda bir kayıt bırakır ve ekrandaki sonuç onunla karşılaştırılabilir.
İşlemi bulun
Çevirmeden sonra düğmenin altında “İşlem” bağlantısı belirir ve blok gezginindeki kaydı açar. Ya da cüzdanınızın geçmişini blok gezgininde açın ve FAIRDRUM programının geçtiği işlemi seçin.
Olması gereken: Success durumu ve talimat listesi.
İki çağrı çiftini bulun
İlk işlemde bir Switchboard çağrısı (rastgelelik talebi, commit) ve FAIRDRUM programının
spin_commitçağrısı (bahis) vardır. İkincisinde: Switchboard çağrısı (açıklama, reveal) vespin_settle(hesaplama). Ad, gezginden gezgine biraz farklı görünür (SpinCommit, spinCommit).Sırayı karşılaştırın
Bahis, sayı açıklanmadan önce kaydedildi: ilk işlemin blok numarası (Slot) ikincisinden küçüktür. Bu, bahis anında sonucu ne sizin ne de projenin bildiği anlamına gelir.
İkinci işlemin günlüğüne (Logs) bakın
Orada; çevirme sayısı, ödüller, mini jackpot, jackpot ve süper jackpot isabetleriyle birlikte
SpinSettledolayı kayıtlıdır. Bunlar çarkın gösterdiği sayıların aynısıdır.Rastgeleliğin sahibini kontrol edin
İşlemde belirtilen rastgelelik hesabı Switchboard programına ait olmalıdır. Sözleşme başka her hesabı zaten reddeder, ama emin olmakta yarar var: hesabı açın ve Owner alanına bakın.
Derin doğrulamalar
Kodu derleyip hash'i karşılaştırın
projenin GitHub'daki deposunu (bağlantı yayımlandıktan sonra görünür) alın, programı yeniden üretilebilir modda derleyin (anchor build --verifiable) ve hash'i ağdakiyle karşılaştırın (solana-verify). Eşleşme, ağda tam olarak bu açık kodun durduğu anlamına gelir.
Sabitleri okuyun
Oyunun tüm sayıları tek bir dosyada, consts.rs içinde toplanmıştır: paylar, şanslar, ödül merdiveni, komisyonlar, süreler. Site kendi tablolarını tam olarak ondan çizer; site ile sözleşme arasında uyuşmazlık olmamalıdır.
Testleri çalıştırın
Depoda kuralların ve hesapların testleri (cargo test) ile istemcinin testleri (npm test) vardır. Örneğin tüm havuzların ve bakiyelerin toplamının kasadaki tokenları aşmadığını doğrularlar.
Sonucun nasıl seçildiğini inceleyin
Sözleşme, açıklanan 32 baytlık rastgelelikten sayıları SHA-256 ile türetir. Ana çark için bunlar SHA-256("FDRM-M" + rastgelelik + blok numarası) bloklarıdır; yerine getirilen her çevirme için 4'er bayt (little-endian) alınarak birer sayı elde edilir. Altın çark için: SHA-256("FDRM-G" + rastgelelik + yerine getirilen çevirmenin numarası). Sayı, 232 payları cinsinden eşiklerle karşılaştırılır; eşikler hesap anındaki haftalık hacme ve havuz boyutlarına bağlıdır, bu yüzden eski bir çevirmeyi bütünüyle yeniden hesaplamak ancak programın o slottaki durumuyla birlikte mümkündür. Formüller math.rs ve engine.rs dosyalarındadır.
Bir dönemin günlüğünü okuyun
İsteyen herkes bir dönemin tüm SpinSettled olaylarını ağdan indirip altının sıklığını ve havuz boyutlarını kendisi sayabilir. “Şanslar” ile karşılaştırın. Az sayıda çevirmede dalgalanma çok büyüktür: %1'lik bir şansı görmek için binlerce çevirme gerekir.
Doğrulanamayanlar
- Oracle'ın dürüstlüğü. Rastgelelik Switchboard ağından gelir. Sözleşme, sayının doğru hesaptan geldiğini ve bahisten sonra açıklandığını doğrular, ancak oracle düğümlerinin aralarında anlaşmadığını doğrulayamaz. Bu bir dış bağımlılıktır.
- Kodda hata olmadığı. Testler ve açık kod güveni artırır ama bağımsız denetimin yerini tutamaz. Denetim bağlantısı belirtilmediği sürece denetim yoktur.
- Gelecek. Güncelleme yetkisi iptal edilmediği sürece kurallar yeni bir sürümle değişebilir. Program güncelleme işlemlerini takip edin.
- Yöneticinin sözleşme dışında yaptıkları. Kendi tokenlarının satışını, pazarlamayı ve listeleme kararlarını sözleşme denetlemez. Tanıtım fonundan yapılan ödemeler herkese açıktır, ama sözleşme “ne için” yapıldığını denetlemez.