Kriptovalyutada smart müqavilələr necə işləyir
Smart müqavilələr kazinoları şəffaf proqramlar toplusuna çevirir: qaydalar, bank, dərəcələr, qəza və ödənişlər kodla təsvir olunur, avtomatik olaraq həyata keçirilir və blokçeyndə görünür. Aşağıda praktiki «ərazi xəritəsi» var: belə bir sistem nədən ibarətdir, necə «provably fair» təmin edir, harada risklər yaranır və necə bağlanır.
1) Bloklara görə memarlıq
1. Oyun məntiqi (Game Core):- Müqavilə dərəcəni qəbul edir, limitləri yoxlayır, raundun parametrlərini təyin edir, qəza alır və ödənişi hesablayır.
- Casino likvidliyini saxlayır, uduşları ödəyir, ekspozisiya limitlərini tətbiq edir (max-win, max-payout-per-block, daily cap).
- Mənbələr - on-chain VRF, commit-reveal, multi-oracle. Cari blokun blockhash güvənmək qadağandır.
- Depozitlər/nəticələr, cross-chain körpülər, tokenlərə və stablokoinlərə dəstək, şəbəkə komissiyalarının uçotu.
- Limitlərin dəyişdirilməsi, təcili rejim fasiləsi (circuit breaker), proxy-model vasitəsilə yeniləmə, rol modelləri (owner, risk-manager, treasurer).
- Frontend, indeksatorlar, analitika. Dürüstlük və hesablama məntiqi - zəncirlidir; vizuallaşdırma - zəncirdən kənarda.
2) Bahis həyat dövrü
1. Depozit: Oyunçu tokenləri müqaviləyə köçürür və ya approve + transferFrom istifadə edir.
2. Raundun yaradılması: müqavilə dərəcəsi (limitlər, whitelists, mövcud xəzinə likvidliyi) validasiya edir.
3. Parametrlərin fiksasiyası: bahis ölçüsü, əmsal/qaydalar, oyunçu seed (varsa), təsadüfi son tarix.
4. Qəza əldə etmək: müqavilə RNG (VRF/commit-reveal) tələb edir və cavab gözləyir.
5. Nəticənin hesablanması: 'settle ()' funksiyası təsadüfi alır, nəticəni hesablayır, əmsalla vurur, komissiyanı saxlayır (house edge).
6. Ödəniş: uduşlar oyunçuya göndərilir; uduzduqda məbləğ xəzinədarlıqda qalır.
7. Nəticə: oyunçu başlatır 'withdraw ()'. Müqavilə balansları/markaları yoxlayır, anti-frod limitlərini tətbiq edir.
3) «Provably fair»: dürüst qəza haradan gəlir
A) VRF (Verifiable Random Function):- Müqavilə sorğu edir, oracle sayı + kriptovalyutası qaytarır. Müqavilə sübut özü yoxlayır - operatora etimad olmadan.
- Oyunçu 'commit = hash (playerSeed, salt)' göndərir.
- Casino və ya mərkəzləşdirilməmiş iştirakçı bahis sonra onun 'revealSeed' açıqlayır.
- Son qəza = H (commit, revealSeed, blok data).
- Vacib: bir tərəfin imtina etməsindən qorunma (müvəqqəti pəncərələr, cərimələr, fallback).
- 2 + provayderlərdən VRF və ya VRF + commit-reveal-dan vahid «etimad nöqtəsini» silmək üçün qarışdırılır.
- istifadə edin 'blockhash (blok. number) 'cari blok. Mədən/validator blok seçə bilər.
- Proqnozlaşdırıla bilən mənbələrə güvənmək (timestamp, balans, nonce).
4) Uduşların hesablanması və house edge
House edge oyun formulasına tikilir (məsələn, 1-3%).
Əmsallar (odds) və ödəniş cədvəlləri təsadüfdən və bahis parametrlərindən asılı olmalıdır: eyni giriş → eyni çıxış.
Qazanc limitləri: max payout per bet/tx/day, bir bahis bankı sıfırlamaz.
Sadələşdirilmiş ideya nümunəsi (psevdo):
random = VRF() % 10_000; // 0..9999 win = (random < threshold)? stake multiplier: 0;
payout = min(win, bank. maxPayout());
5) Casino Bank: likvidlik və risklərin idarə edilməsi
Likvidlik buferi: müqavilə worst-case ödənişləri üçün ehtiyatları saxlayır.
Oyunlar üzrə ekspozisiya: oyun limiti/bahis növü/oyunçu.
Anti-MEV və anti-sniping: eyni blokda settle qadağan, settle üçün random-delay, commit-faza.
Jackpots: Hər bir dərəcənin faizi ilə doldurulmuş ayrı bir hovuz (escrow); trigger - RNG-də nadir hadisə.
6) Təhlükəsizlik: əsas zəifliklər və müdafiə
Reentrancy:- checks-effects-interactions modifikatorları/nümunələri istifadə edin.
- Hesablama daxilində «transfer» deyil, pull-model vasitəsilə ödənişlər (oyunçu özü alır).
- Yalnız yoxlanılan mənbələr (VRF), vaxt və cərimələrlə commit-reveal.
- Mənbə əlçatmazsa Fallback məntiqi.
- Təhlükəsiz riyaziyyat kitabxanaları və əmsallar üçün sabit dəqiqlik.
- Arıza halında fasilə (circuit breaker).
- Mürəkkəb settle batches üçün qaz məhdudlaşdırılması.
- Ucuz bahislər üçün L2/rollap; L1 üzrə dövri likvidlik brijləri.
- «Gözlənilməzliyi» artırın; həssas əməliyyatlar üçün xüsusi mempules/relay istifadə edin.
- Proxy-pattern + timelock + multisig; yeniləmədən əvvəl ictimai elanlar və «lock period».
7) Komissiyalar və UX
Qaz və şəbəkələr: L2 (Arbitrum/Optimism/Base) və ya aşağı komissiyalı alternativ şəbəkələr üçün daha sərfəlidir; ödənişlər markalara yığıla bilər.
Stablecoins: oyunçunun valyuta riskini azaldır və bankı sabitləşdirir.
Cross-chain: körpülər - ayrı risk; daha yaxşı yerli relslər per şəbəkəsi + off-ramp provayderləri.
8) Audit və şəffaflıq
Açıq kod: anbar, dəyişməz oyun parametrləri ilə xüsusi bölmələr.
Hesablamaların snapşotları: giriş təsadüfi nəticələrini yenidən sayan skriptlər.
Onchain monitorinqi: bahis/ödəniş/edge/dispersiya daşbordları.
Bug-bounty və üçüncü tərəf auditləri: ərzaq satışından əvvəl ən azı iki müstəqil audit.
9) Tələblərə uyğunluq (o cümlədən «hibrid» model)
Geo-məhdudiyyətlər və yaş: adətən frontenddə, lakin müqavilə funksiyalarına giriş siyahılarla məhdudlaşdırıla bilər (registry/allowlist).
Böyük məbləğlər və tərəfdaşlıq ödənişləri üçün KYC/AML: off-ramp və xəzinədən ödənişlər səviyyəsində həyata keçirilir.
Vergilər və Hesabatlar: Oyunçular üçün əmanət/ödəniş jurnallarının onların ünvanı üzrə ixracı.
10) Çek vərəqləri
Texniki:- RNG = VRF/commit-reveal
- No istifadə 'blockhash' cari blok
- Reentrancy-guard, checks-effects-interactions
- Ekspozisiya limitləri + circuit breaker
- Proxy + timelock + yeniləmə multisig
- Ekstremal testlər (max-win, kütləvi markalar)
- İctimai formul odds/edge
- Log/Dashboard onchain metrik
- Cüt audit + bug-bounty
- Hadisə-respond proseduru (fasilə, yeniləmə planı)
- Kiçik bahislər üçün ucuz şəbəkə (L2)
- Stablecoins və başa düşülən komissiyalar
- Kütləvi ödənişlər üçün marka modeli
- Şəbəkə/tag təlimatları, test tərcüməsi
11) Tez-tez səhvlər
RNG на blockhash/timestamp. Manipulyasiya üçün asan hədəf.
Qorunmadan ödənişlər. Reentrancy riski.
Ekspozisiya limitlərinin olmaması. Bir böyük qazanc bankı «sındıra» bilər.
Düşünülməmiş yeniləmələr. Timelock və elansız məntiqin yenilənməsi reputasiya riskidir.
MEV-ə məhəl qoymamaq. «Çılpaq» ictimai mempulda/settle.
12) Mini-FAQ
VRF hər şeyi həll edir?
Yox. VRF yoxlanılan bir təsadüf verir, lakin MEV, likvidlik limitləri, məntiq səhvləri və yeniləmə riskləri qalır.
Oracle olmadan tam edə bilərəmmi?
Commit-reveal və çox partiyalı sxemlər üçüncü tərəflərə inamı azaldır, lakin UX-də daha çətin və anti-iflas məntiqi tələb edir.
Bir oyunçuya «provably fair» necə sübut etmək olar?
Hər kəsin nəticəni yenidən sayması üçün giriş parametrlərini və son zəng linkini göstərin: 'random → outcome → payout'.
Smart müqavilələrdəki kriptovalyutalar bir qayda olaraq koddur: şəffaf ödənişlər, təkrarlanan təsadüflər, rəsmiləşdirilmiş risk limitləri. Etibarlı satış üç balina üzərində saxlanılır: yoxlanılan təsadüf (VRF/commit-reveal), ciddi təhlükəsizlik (reentrancy/MEV/limitlər) və idarə olunan yeniləmə (proxy + timelock + audit). Bütün bunlara riayət olunarsa, oyunçu ədalətli oyun və proqnozlaşdırıla bilən ödənişlər alır, operator isə davamlı bank və etimad qazanır.