Güvenlik
Projede kim neyi değiştirebilir, rastgelelik nereden gelir ve hangi riskler kalır. Üstteki tablo elle çizilmez, doğrudan ağdan okunur.
Ağda şu an ne yazılı
Veriler okunuyor…
Açık kod, anonimlik ve gizlilik
Açık kod
Projenin tamamı (sözleşme, site, başlatma betikleri, testler) MIT lisansıyla açıktır. Kodu okuyabilirsiniz. Sözleşmenin anchor build komutuyla derlenmesi henüz doğrulanmadı (bkz. “Proje durumu”); devreye alındıktan sonra programı kendiniz derleyip ağda çalışanla karşılaştırabilirsiniz. Nasıl doğrulanır
Depo bağlantısı yayımlanır yayımlanmaz burada ve sitenin alt bilgisinde görünecek.
Proje anonimdir
İsimler ve tüzel kişilik açıklanmaz; oyuncuların da adı, e-postası, telefonu ya da pasaportu gerekmez. Cüzdan yeterlidir. Kurallar sözleşmeye yazılmıştır, okunabilir. Anonimliğin diğer yüzü
Belgesiz çekme
Sözleşme, tokenları tek bir imzayla doğrudan cüzdanınıza aktarır. Sözleşme koduna göre belge, form, kimlik doğrulama (KYC), başvuru ve elle onay yoktur. Bu, sözleşmenin bir özelliğidir; ülkenizin yasalarını çiğnemek için bir izin değildir: bunlara uymaktan siz sorumlusunuz (koşullar). Nasıl çekilir
Şeffaf ve anonim bir site: giriş ve hesap yok; çerez, analiz, sayaç ve reklam betiği yok. Yazı tipleri ve betikler sitenin kendisinden sunulur, ayarlar (tema, bu cihazdaki çevirme geçmişi) yalnızca tarayıcınızda saklanır ve sitenin kodu açıktır; bunların hepsini doğrulayabilirsiniz. Tarayıcınızın adres çubuğundaki adresi kontrol edin: tek harf bile farklıysa bu resmî site değildir.
Site ne bilir ve eylemlerinizi kim görür
| Ne | Nasıl işliyor |
|---|---|
| Ad, e-posta, telefon, belgeler | Gerekmez ve hiçbir yerde istenmez: ne kayıt sırasında ne de çekme sırasında. |
| Çerez, analiz, sayaçlar, reklam | Hayır. Sitenin kodunda yoktur; dışarıdan betik ya da yazı tipi de yüklemez. |
| Tarayıcınızda neler saklanır | Tema, çark modu, ses ve efektler (açtıysanız), bu cihazdaki çevirme geçmişi, hangi cüzdanı bağladığınız, rastgelelik için kullanılan yardımcı hesabın adresi. Hepsi cihazınızda kalır ve hiçbir yere gönderilmez. |
| Sitenin bağlandığı taraflar | Solana ağ düğümüyle (RPC): oyun verilerini okur ve işlemlerinizi alır. Çevirme sırasında ayrıca Switchboard oracle'ı ile. Bu hizmetler, ağın her düğümü gibi IP adresinizi ve cüzdan adresinizi görür. |
| Blokzincirde nelerin herkese açık olduğu | Adresiniz, oyuncu numaranız, bakiyeniz, çevirmeleriniz, kazançlarınız ve çekmeleriniz: bunlara herkes bakabilir. Adres bir takma ad olarak kalır, tam anonimlik yoktur. Adres kimliğinizle bağlantılıysa (örneğin SOL, kimlik doğrulamasından geçtiğiniz bir borsadan geldiyse), bağlantı izlenebilir. |
Projenin ve oyuncuların anonimliği mutlak değildir ve bir diğer yüzü vardır: projenin, hak iddia edilebilecek bir tüzel kişiliği yoktur. Bu, “Riskler” sayfasında anlatılır.
Anahtarlar ve yapabildikleri
| Anahtar | Ne yapabilir | Ne yapamaz |
|---|---|---|
| Programı güncelleme yetkisi | Sözleşme kodunun yeni bir sürümünü yükleyebilir. | Tokenları doğrudan alamaz; ancak kodun yeni bir sürümü ilke olarak bunu yapabilirdi. Bu yüzden başlatma planına göre anahtar önce gecikmeli bir multisig'e devredilir, sonra iptal edilir; güncel durum bu tabloda gösterilir. |
| Token basımı (mint) | Hiçbir şey: başlatma planına göre basımdan hemen sonra iptal edilir. | Yeni token oluşturmak. |
| Dondurma (freeze) | Hiçbir şey: hiç verilmedi. | Birinin tokenlarını dondurmak. |
Yönetici (dev_authority) | Çevirmelerden biriken %10'ı almak (claim_dev). | Kuralları değiştirmek; oyuncu bakiyelerini, ödülleri, jackpot'u, aktivite fonunu almak. |
Tanıtım (promo_authority) | Tanıtım fonundan ödeme yapmak (promo_pay). | Geri kalan her şey. |
1) başlangıçta dağıtımı yapandadır (deployer); 2) ana ağda başlatmadan önce, oyuncular değişikliği önceden görsün diye her güncellemede gecikme uygulayan bir multisig'e (Squads) devredilir; 3) proje oturduğunda yetki sonsuza dek iptal edilir, kod dondurulur. Geçerli adım yukarıdaki tabloda görünür.
Rastgelelik nereden geliyor
Sözleşme rastgele sayıyı kendisi uydurmaz ve projeden almaz. Switchboard On-Demand kullanılır: bahis tek bir işlemde sabitlenir (sözleşme blok numarasını kaydeder), sayıyı ise oracle daha sonra açıklar ve bahis anında henüz var olmayan bir blokun hash'ine bağlar. Oracle dürüst çalıştığı sürece bu değer önceden seçilemez ve tahmin edilemez. Switchboard'a duyulan güven ise kalır: bu bir dış bağımlılıktır.
Sözleşme, tek bir 32 baytlık değerden sha256 ile gereken sayıda sayı üretir ve oyuncu bunu etkileyemez. Sözleşme yalnızca Switchboard programının sahibi olduğu rastgelelik hesaplarını kabul eder (bu kontrol olmasaydı herkes istediği değeri taşıyan kendi hesabını sokabilirdi).
Oracle çalışmazsa çevirmeler durur; 3.000 blok sonra kapatılan çevirmenin bahsi geri verilmez.
Sözleşmenin hiçbir şekilde yapamadıkları
Şansları değiştirmek
Tüm sayılar kodun sabitleridir. Yeni sayılar ancak programın yeni bir sürümüyle mümkündür; o da güncelleme işleminden görülür.
Oyun bakiyesini almak
“Oyuncudan al” diye bir komut yoktur. Bakiye yalnızca çekmede size, çevirmelerde bahise gider.
Token basmak
Başlatma planına göre basım yetkisi iptal edilir. Bundan sonra toplam arz 100 milyar yalnızca yakmayla azalabilir.
İki kez ödemek
Çevirme bir kez kapatılır. Tokenların korunumu (havuzların ve bakiyelerin toplamının kasadakinden fazla olmaması), çok oyunculu ve 1000 çevirmelik paketli senaryolarda otomatik testlerle doğrulanır.
Kalan riskler
- Koddaki hatalar. Sözleşme testlerle kaplıdır, ancak bağımsız denetim yapılmadı (bkz. “Proje durumu”). Gözden kaçmış bir hata fon kaybına yol açabilir.
- Programın güncellenmesi. Güncelleme yetkisi iptal edilene kadar, yönetici (veya multisig) teorik olarak farklı kurallara sahip bir sürüm yayımlayabilir. Yukarıdaki tabloyu izleyin.
- Oracle ve ağ. Switchboard arızası veya Solana'nın aşırı yüklenmesi çevirmeleri geciktirir; uzun bir arızada (~20 dakikadan fazla) bahis geri verilmeden kaybolur. Geri verilmemesi bilinçlidir: aksi hâlde sonuca önceden bakıp kayıptan vazgeçmek mümkün olurdu.
- Sözleşme dışındaki yönetici tokenları. Pazarlama ve rezerv (birlikte arzın yaklaşık %30'u) sözleşmede kilitli değildir; geliştirici payı (%10) harici bir hizmette vesting'dedir. Vesting: bağlantı belirtilmedi; likidite kilidi: bağlantı belirtilmedi; yönetici multisig'i: bağlantı belirtilmedi. Bağlantı belirtilmemişse, bunun henüz doğrulanamadığını varsayın.
- Tanıtım fonu.
promo_authorityanahtarı, fonda birikeni herhangi bir adrese gönderebilir. Her ödeme herkese açıktır (PromoPaidolayı), ancak sözleşme neye harcandığını denetlemez. - Ücretsiz çevirmeler ve çoklu hesaplar. Oyunda “bu bir insan” kontrolü yoktur ve olamaz: bir kişi birçok cüzdan kaydedip her birinden ücretsiz çevirme alabilir. Harcama aktivite fonunun boyutuyla sınırlıdır, ama fondan hatırı sayılır bir pay çekilebilir.
- Büyük havuzlar. Jackpot havuzu normale göre ne kadar büyükse, çevirme başına beklenen geri dönüş o kadar yüksektir; çok büyükken %100'ü aşabilir. Tüm artan (progresif) jackpotlar böyle çalışır; deneyimli oyuncular büyük havuzlar için gelir.
- Ağ hızı. Tüm çevirmeler sözleşmenin tek bir ortak hesabından geçer; bu yüzden zirvede kuyruk büyüyebilir. Bu oyunu yavaşlatır ama sonuçları değiştirmez.
- Site sözleşme değildir. Sitenin adresi değişebilir veya site kaybolabilir; sözleşme yine de ağda kalır ve onunla herhangi bir uyumlu istemci üzerinden doğrudan çalışılabilir.
- Anonim yönetici. İsim ve tüzel kişilik açıklanmaz: bir şey ters giderse hak iddia etmek, parayı mahkeme veya destek yoluyla geri almak mümkün değildir. Sizi yalnızca sözleşmeye yazılı olan ve kendi başınıza doğrulayabildikleriniz korur.
- Yasa. Kumar birçok ülkede kısıtlı veya yasaktır. Bu sizin sorumluluğunuzdur.
- Bu bir şans oyunudur. Oyuncu ortalamada bahislerinin bir kısmını kaybeder.
Kendiniz nasıl doğrularsınız
- Programın adresini blok gezgininde (Solscan, Solana Explorer) açın ve Upgrade Authority alanını bulun: boşsa kod dondurulmuştur.
- Tokenı açın: Mint Authority ve Freeze Authority alanları boş olmalıdır.
- Programın config hesabını açın ve havuz tutarlarını, çevirme sayısını ve yakılan miktarı “Ekonomi” sayfasıyla karşılaştırın.
- Sözleşmeyi açık koddan derleyin (
anchor build --verifiable) ve hash'i ağdakiyle karşılaştırın (solana-verify).