Skip to main content
आप किसी भी पूरे हो चुके राउंड को सार्वजनिक ऑन-चेन डेटा से ख़ुद सत्यापित कर सकते हैं, बिना किसी अकाउंट या विशेष एक्सेस के। तीन बातें जांचनी होती हैं: कमिट हैश राउंड शुरू होने से पहले प्रकाशित हुआ था, रिवील की गई गुप्त वैल्यू का हैश उसी कमिट से मेल खाता है, और सार्वजनिक फ़ॉर्मूला दोबारा चलाने पर वही परिणाम आता है जिस पर राउंड का पेआउट हुआ था। यह गाइड एक पूरे हो चुके Crash राउंड को लेकर उसे शुरू से अंत तक सत्यापित करती है: कि ऑपरेटर की गुप्त वैल्यू राउंड से पहले कमिट की गई थी, और कि क्रैश पॉइंट ठीक वही है जो सार्वजनिक फ़ॉर्मूला देता है। आपको किसी विशेष एक्सेस की ज़रूरत नहीं: सारा डेटा सार्वजनिक ऑन-चेन जानकारी से आता है। अंत में एक छोटा सेक्शन Dice और Mines के बारे में है, जिनमें से हर एक को एक ही ट्रांज़ैक्शन से सत्यापित किया जाता है।

आप क्या साबित कर रहे हैं

  1. कमिट पहले हुआ था। गुप्त वैल्यू का हैश राउंड शुरू होने से पहले ऑन-चेन था, इसलिए परिणाम आपके दांव के बाद नहीं चुना जा सकता था।
  2. गुप्त वैल्यू कमिट से मेल खाती है। sha256(secret) कमिट किए गए हैश के बराबर है।
  3. मल्टीप्लायर ईमानदार है। गुप्त वैल्यू और ब्लॉक हैश से फ़ॉर्मूला दोबारा चलाने पर ठीक वही क्रैश पॉइंट आता है जिस पर राउंड का पेआउट हुआ था।

चरण 1: ऐप में राउंड का निष्पक्षता डेटा खोलें

अपना दांव इतिहास (या राउंड इतिहास) खोलें और किसी पूरे हो चुके राउंड पर क्लिक करके उसका विवरण खोलें। राउंड के परिणाम के साथ आपको ये मिलेंगे:
  • क्रैश हुआ: सत्यापित किया जाने वाला अंतिम मल्टीप्लायर।
  • गेम सीक्रेट हैश: रिवील की गई 32-बाइट गुप्त वैल्यू। यह Solana एक्सप्लोरर पर कमिट ट्रांज़ैक्शन से लिंक होता है।
  • ब्लॉक हैश: चेन एंट्रॉपी के रूप में इस्तेमाल हुआ Solana स्लॉट हैश। यह राउंड-स्टार्ट ट्रांज़ैक्शन से लिंक होता है।
  • “क्या यह गेम निष्पक्ष है? निष्पक्षता टूल इस्तेमाल करें”: इस राउंड की जानकारी पहले से भरकर निष्पक्षता सत्यापन टूल खोलता है। यह टूल राउंड के तीनों ट्रांज़ैक्शन सिग्नेचर (कमिट, ब्लॉक हैश, रिवील) और नेटवर्क लाता है, और नीचे दी गई हर चीज़ एक क्लिक में आपके लिए दोबारा गणना करता है।
निष्पक्षता टूल आसान रास्ता है। इस पेज का बाकी हिस्सा पूरी तरह स्वतंत्र रास्ता है, जिसमें आप चेन और अपने कंप्यूटर के अलावा किसी पर भरोसा नहीं करते।

चरण 2: एक राउंड के तीन ट्रांज़ैक्शन

चरण 3: Solana एक्सप्लोरर से मान पढ़ें

हर ट्रांज़ैक्शन को अपनी पसंद के एक्सप्लोरर (Solscan, Solana Explorer, SolanaFM…) पर खोलें, उसी नेटवर्क पर जिस पर ऐप चलता है। ट्रांज़ैक्शन पेज पर डिकोड किए गए प्रोग्राम इवेंट देखें (कभी-कभी ये “Logs” या “Instruction data” के अंतर्गत होते हैं; जो एक्सप्लोरर प्रोग्राम का IDL जानते हैं, वे इवेंट फ़ील्ड को नाम से डिकोड करते हैं)। चार मान इकट्ठा करें:
  • commit_hash: 32 बाइट, कमिट ट्रांज़ैक्शन से।
  • blockhash: 32 बाइट, ब्लॉक-हैश ट्रांज़ैक्शन से।
  • local_e: 32-बाइट गुप्त वैल्यू, रिवील ट्रांज़ैक्शन से।
  • crash_point_bps: बेसिस पॉइंट में अंतिम क्रैश पॉइंट, रिवील ट्रांज़ैक्शन से (29948 का मतलब 2.9948x)।
एन्कोडिंगएक्सप्लोरर साइट के अनुसार 32-बाइट मानों को hex, base58 या बाइट ऐरे के रूप में दिखाते हैं। नीचे दी गई स्क्रिप्ट hex की अपेक्षा करती है; अगर आपका एक्सप्लोरर base58 दिखाता है तो उसे बदल लें (कोई भी base58 डिकोडर चलेगा; मायने बाइट मानों के हैं, लिखने के तरीके के नहीं)।

चरण 4: क्रम जांचें

एक्सप्लोरर पर कमिट ट्रांज़ैक्शन और ब्लॉक-हैश ट्रांज़ैक्शन का स्लॉट (या ब्लॉक टाइम) मिलाएं। कमिट पहले होना चाहिए। यही इस योजना का मूल है: गुप्त वैल्यू उस एंट्रॉपी के अस्तित्व में आने से पहले ही सील हो चुकी थी जिसके साथ उसे मिलाया जाता है।

चरण 5: क्रैश पॉइंट दोबारा गणना करें

इसे Node.js से चलाएं (किसी डिपेंडेंसी की ज़रूरत नहीं), चरण 3 से मिली तीनों hex स्ट्रिंग भरकर:
दोनों जांचें पास होनी चाहिए: commitment ok: true, और प्रिंट हुआ क्रैश पॉइंट राउंड के क्रैश हुआ मल्टीप्लायर (और रिवील इवेंट के crash_point_bps) के बराबर होना चाहिए। अगर ऐसा है, तो आपने किसी पर भरोसा किए बिना साबित कर दिया है कि इस राउंड का परिणाम शुरू होने से पहले ही तय हो चुका था और ठीक सार्वजनिक फ़ॉर्मूले से गणना किया गया था।

Dice और Mines

इंस्टेंट गेम्स इसी तरह सत्यापित होते हैं, कम ट्रांज़ैक्शन से:
  • Dice: हर दांव का एक ट्रांज़ैक्शन। इसके DiceBetSettled इवेंट में गणना का हर इनपुट (slothash, user, nonce) के साथ roll और पेआउट होता है। Dice की निष्पक्षता पर दिए फ़ॉर्मूले से दोबारा गणना करें।
  • Mines: हर गेम के दो ट्रांज़ैक्शन। स्टार्ट ट्रांज़ैक्शन बोर्ड का कमिट और स्लॉट हैश प्रकाशित करता है; सेटलमेंट ट्रांज़ैक्शन सीड और पूरा बोर्ड रिवील करता है। Mines की निष्पक्षता पर दिए फ़ॉर्मूले से दोबारा गणना करें।

अगर कुछ मेल न खाए

पहले आम कारणों को जांच लें: जहां hex चाहिए था वहां base58 मान पेस्ट हो गया, ग़लत ट्रांज़ैक्शन (हर राउंड में तीन होते हैं), या राउंड के समय वाले हाउस एज से अलग हाउस एज (एज ऑन-चेन कॉन्फ़िगरेशन में रहता है, और उसका हर बदलाव ख़ुद एक ऑन-चेन ट्रांज़ैक्शन होता है)। अगर फिर भी सचमुच मेल नहीं खाता, तो यही वह चीज़ है जिसे सामने लाने के लिए यह सिस्टम बना है: डेटा सार्वजनिक और स्थायी है, इसलिए कोई भी आपकी जांच दोबारा चला सकता है। राउंड नंबर के साथ सपोर्ट से संपर्क करें। ध्यान रखें कि कमिट या फ़ॉर्मूले के वास्तविक बेमेल की कोई ईमानदार व्याख्या नहीं हो सकती, और ठीक इसी वजह से यह योजना उन्हें छिपाना असंभव बना देती है।