BC.Game Crash कैसे वेरिफाई होता है: हैश चेन, सॉल्ट और फॉर्मूला
BC.Game Crash उन गिने-चुने गेम्स में से है जिनमें हर राउंड किसी के दांव लगाने से पहले ही तय हो जाता है, और BC.Game इतनी जानकारी प्रकाशित करता है कि आप इसे खुद जांच सकें। यह गाइड बताती है कि BC.Game के अपने डॉक्यूमेंटेशन में क्या लिखा है: हैश चेन, सॉल्ट, हैश को मल्टीप्लायर में बदलने का फॉर्मूला, और हमारे हैश चेन चेक और BC.Game के अपने वेरिफायर से राउंड खुद कैसे जांचें।
Crash के बारे में BC.Game क्या प्रकाशित करता है
BC.Game अपने हेल्प सेंटर में "Crash: ensuring fair play" लेख और अपने प्रोवेबली फेयर पेज पर Crash की निष्पक्षता समझाता है। वह GitHub पर bc-game-project अकाउंट के तहत होस्ट की गई एक वेरिफिकेशन स्क्रिप्ट का लिंक भी देता है, और उसने 2020 में Bitcointalk पर एक पोस्ट में Crash एल्गोरिदम में बदलाव की घोषणा की थी। नीचे लिखी हर बात इन्हीं पेजों से है। जहां ये आपस में मेल नहीं खाते या कुछ छूट जाता है, वहां हम साफ बताते हैं।
हैश चेन
BC.Game के हेल्प सेंटर के मुताबिक, गेम शुरू होने से पहले कुल 1 करोड़ (10 मिलियन) हैश बनाए गए। हर हैश अपने से पहले बने हैश का SHA-256 है, इसलिए सब मिलकर एक चेन बनाते हैं।
चेन उल्टे क्रम में इस्तेमाल होती है:
- BC.Game एक गुप्त शुरुआती वैल्यू से चेन बनाता है, उसे बार-बार SHA-256 से हैश करके।
- सबसे आखिर में बना हैश पहले राउंड में इस्तेमाल होता है, उससे पहले वाला दूसरे राउंड में, और इसी तरह आगे।
- राउंड खत्म होने पर उसका हैश गेम हिस्ट्री में दिखाया जाता है।
- उस राउंड के हैश को एक बार हैश करने पर उससे पिछले राउंड का हैश मिलता है।
क्योंकि SHA-256 सिर्फ एक दिशा में काम करता है, कोई भी मौजूदा राउंड से अगले राउंड का हैश नहीं निकाल सकता। लेकिन कोई भी पीछे की ओर जाकर पक्का कर सकता है कि हर राउंड का हैश पिछले राउंड के हैश तक ले जाता है। अगर हर कड़ी सही है, तो राउंड ऐसी चेन से आए जो दांव लगने से पहले मौजूद थी, और BC.Game दांव देखने के बाद कोई नतीजा नहीं बदल सकता था।
सॉल्ट
सिर्फ हैश चेन में एक कमज़ोरी है: उसे कैसीनो खुद बनाता है, इसलिए सैद्धांतिक रूप से वह कई चेन बनाकर अपने फायदे वाली रख सकता है। सॉल्ट यह कमी दूर करता है, क्योंकि वह ऐसी वैल्यू मिलाता है जो चेन बनाते समय किसी को पता नहीं थी।
GitHub पर BC.Game का वेरिफिकेशन पेज कहता है कि खिलाड़ियों की मांग पर Crash को सॉल्ट किए गए हैश पर बदला गया, बेट नंबर 2,561,902 से, और यह जून 2020 की BC.Game की Bitcointalk घोषणा का हवाला देता है। उस पोस्ट में BC.Game बताता है कि हर गेम हैश को HMAC-SHA256 से एक सॉल्ट के साथ मिलाया जाता है: पहले से चुने गए Bitcoin ब्लॉक नंबर 635,380 का हैश, जो घोषणा के समय माइन नहीं हुआ था। इसी वजह से GitHub वाले वेरिफायर में सॉल्ट के लिए अलग फील्ड है।
हेल्प सेंटर के लेख में सॉल्ट का ज़िक्र नहीं है। उसका उदाहरण फॉर्मूला सीधे राउंड हैश पर लगाता है। हम BC.Game के मौजूदा हेल्प पेजों से यह पक्का नहीं कर पाए कि 2020 के बाद सॉल्ट बदला है या नहीं, इसलिए मल्टीप्लायर जांचते समय BC.Game के अपने वेरिफायर या फेयरनेस पैनल में दिखाया गया सॉल्ट इस्तेमाल करें।
हैश से मल्टीप्लायर तक
BC.Game का हेल्प सेंटर यह बदलाव कदम दर कदम बताता है:
- हैश के पहले 13 हेक्साडेसिमल अक्षर लें। यह 52 बिट है।
- उस संख्या को 2^52 से भाग दें, जिससे 0 और 1 के बीच एक संख्या X मिलती है।
- 99 को (1 घटा X) से भाग दें। 100 की जगह 99 ही 1% हाउस एज है।
- अगर नतीजा 100 से कम है, तो उसे 100 कर दें।
- नीचे की ओर राउंड करें और 100 से भाग दें। यही Crash मल्टीप्लायर है।
Bitcointalk पर घोषित सॉल्ट वाले वर्ज़न में ये 13 अक्षर राउंड हैश से नहीं, बल्कि सॉल्ट के साथ राउंड हैश के HMAC-SHA256 से लिए जाते हैं। उसके बाद का हिसाब वही रहता है।
हेल्प सेंटर एक उदाहरण देता है: 6b5124897c3c4 से शुरू होने वाला हैश करीब 0.4192 का X देता है, फिर 99 को 0.5808 से भाग देने पर करीब 170.46 आता है, जो नीचे राउंड होकर 170 बनता है और 1.70x का Crash बनता है।
आपके ऑड्स के लिए फॉर्मूले का मतलब
क्योंकि X 0 और 1 के बीच बराबर फैला होता है, फॉर्मूला साफ ऑड्स देता है:
- 1.00x पर तुरंत Crash। यह तब होता है जब X 0.01 से कम हो, यानी करीब 1% राउंड में।
- किसी मल्टीप्लायर M तक पहुंचना। किसी राउंड के M या उससे ऊपर पहुंचने की संभावना करीब 99% भाग M है।
| कैश आउट | राउंड के वहां पहुंचने की संभावना |
|---|---|
| 1.5x | करीब 66% |
| 2x | करीब 49.5% |
| 3x | करीब 33% |
| 10x | करीब 9.9% |
| 100x | करीब 0.99% |
आप जो भी टारगेट रखें, अपेक्षित रिटर्न आपके दांव का करीब 99% है। कोई ऑटो कैश आउट सेटिंग इसे नहीं बदलती। पिछले राउंड भी मदद नहीं करते: हर हैश व्यवहार में रैंडम है, इसलिए कम Crash का सिलसिला अगले राउंड के बारे में कुछ नहीं बताता। हमारी Crash प्रेडिक्टर गाइड बताती है कि अगले राउंड का अनुमान लगाने का दावा करने वाले ऐप क्यों काम नहीं कर सकते।
हमारे हैश चेन चेक से राउंड जांचें
इससे पक्का होता है कि राउंड एक ही पहले से तय चेन से आए:
- BC.Game Crash में राउंड हिस्ट्री खोलें और लगातार दो या ज़्यादा राउंड के हैश कॉपी करें।
- हमारा हैश चेन चेक खोलें।
- हैश हर लाइन में एक, हिस्ट्री वाले क्रम में ही पेस्ट करें। नए से पुराने या पुराने से नए, दोनों चलते हैं, बस कोई राउंड छूटना नहीं चाहिए।
- चेक चलाएं। बाद वाले राउंड के हैश को एक बार हैश करने पर उससे पहले वाले राउंड का हैश मिलना चाहिए।
अगर हर कड़ी मेल खाती है, तो वे राउंड खेल से पहले तय थे। अगर कोई कड़ी टूटती है, तो पहले पक्का करें कि आपने राउंड क्रम से और बिना छोड़े कॉपी किए। लगातार राउंड में असली टूट एक गंभीर बात होगी।
BC.Game के वेरिफायर से मल्टीप्लायर जांचें
हमारा चेन चेक साबित करता है कि राउंड आपस में जुड़े हैं। किसी राउंड का मल्टीप्लायर पक्का करने के लिए BC.Game की अपनी वेरिफिकेशन स्क्रिप्ट इस्तेमाल करें:
- राउंड का गेम हैश पेस्ट करें।
- सॉल्ट डालें।
- उस हैश से कितने गेम कैलकुलेट करने हैं, वह संख्या डालें।
- हर बस्ट वैल्यू की तुलना BC.Game की राउंड हिस्ट्री के मल्टीप्लायर से करें।
अगर बस्ट वैल्यू हिस्ट्री से मेल खाती हैं और चेन की कड़ियां सही हैं, तो राउंड पहले से तय भी था और प्रकाशित फॉर्मूले से ही निकाला गया था।
यह क्या साबित करता है और क्या नहीं
- यह साबित करता है कि नतीजा दांव से पहले तय था। न BC.Game और न कोई खिलाड़ी राउंड शुरू होने के बाद उसे बदल सकता था।
- यह हाउस एज खत्म नहीं करता। लंबे समय में लगाए गए कुल पैसे का करीब 1% हाउस को जाता है।
- यह सिर्फ Crash को कवर करता है। BC.Game के दूसरे ओरिजिनल, जैसे डाइस, सर्वर सीड, क्लाइंट सीड और नॉन्स इस्तेमाल करते हैं; उन्हें हमारे वेरिफायर में BC.Game चुनकर जांचें।
- यह पेआउट के बारे में कुछ नहीं बताता। लाइसेंस की जानकारी और हमारे विदड्रॉअल टेस्ट के लिए हमारा BC.Game ऑडिट देखें।
स्रोत
मुख्य शर्तें
- Crash गेम
- एक गेम जिसमें multiplier 1x से तब तक बढ़ता है जब तक crash न हो जाए, और जीतने के लिए आपको crash से पहले कैश आउट करना होता है।
- Provably fair
- एक सिस्टम जो खिलाड़ियों को cryptographically जांचने देता है कि गेम का नतीजा दांव से पहले तय था और बाद में बदला नहीं गया।
- SHA-256
- एक cryptographic हैश फंक्शन जो किसी भी इनपुट को तय 256-bit आउटपुट में बदलता है; सर्वर सीड के लिए प्रतिबद्धता देने में इस्तेमाल होता है।
- HMAC
- एक keyed हैश फंक्शन; provably fair गेम्स में HMAC-SHA256 सर्वर सीड को क्लाइंट सीड और nonce के साथ जोड़ता है।
- हाउस एज
- किसी दांव पर casino का अंतर्निहित औसत फायदा, जो दांव राशि के प्रतिशत के रूप में बताया जाता है।
- Target multiplier
- The multiplier a player chooses in limbo or auto cash-out crash; the bet wins if the result reaches it.