अप्रत्याशित पासे: क्या गड़बड़ थी और हमने क्या बदला
हमने पाया कि ऑनलाइन खेलों में पासों का नतीजा, सिद्धांत रूप में, रोल से पहले ही निकाला जा सकता था: उनका सीड ऐसी जानकारी से बनता था जिसे हर खिलाड़ी देख सकता है। हमें इसका कोई संकेत नहीं मिला कि किसी ने ऐसा किया। 1 अक्टूबर से हर रोल का सीड एक ऐसी गुप्त कुंजी से बनता है जो सिर्फ़ सर्वर के पास है, और पुराना अनुमान अब 36 में से सिर्फ़ एक बार सही बैठता है — शुद्ध संयोग।

आसान शब्दों में
हमने यह पाया। ऑनलाइन खेल में जो कुछ भी रैंडम है — दोनों पासे, चांस कार्ड निकालना, जैकपॉट का पासा — वह एक रैंडम-नंबर जनरेटर से आता है, और जनरेटर को किसी सीड से शुरुआत करनी पड़ती है। हमारा सीड दो ऐसी चीज़ों से बनता था जिन्हें हर खिलाड़ी देख सकता है: खेल की आईडी, जो आपके एड्रेस बार में होती है, और चाल का नंबर, जो खेल हर कार्रवाई के बाद लौटाता है। जनरेटर अपने आप में साधारण, प्रकाशित कोड है। इन सबको जोड़ दें, तो तरीका जानने वाला कोई व्यक्ति रोल करने से पहले ही उसका नतीजा निकाल सकता था — और सिद्धांत रूप में यह भी चुन सकता था कि अगले कुछ रोल में से उसे कौन-सा मिले।
हमने इसे सिद्धांत में नहीं, असली खेलों पर जाँचा। फ़िक्स से पहले के आख़िरी 2,000 रोल में से 1,985 — यानी 99.3% — ठीक वही निकले जिसका अनुमान उस सार्वजनिक जानकारी से लगता था।
क्या किसी ने इसका फ़ायदा उठाया?
फिर हमने ऐसे किसी व्यक्ति की तलाश की जो इसका फ़ायदा उठा रहा हो, और कोई नहीं मिला। जिस दांव में रोल पहले से जानना सबसे सीधे फ़ायदा देता है, वह जैकपॉट है। फ़िक्स से पहले के सात दिनों में 2,354 जैकपॉट दांवों में से 31.4% जीते, जबकि अकेले संयोग से 31.1% की उम्मीद थी, और किसी भी खिलाड़ी का रिकॉर्ड अलग से नहीं दिखा।
अक्सर पूछे जाने वाले सवाल
क्या opolyx के पासे निष्पक्ष हैं?
हाँ। 2 से 6 अक्टूबर 2026 के बीच हुए 247,968 रोल में हर पासे का हर अंक 16.54% से 16.77% रोल में आया — एक आदर्श पासा 16.67% देता है — और डबल 16.67% रोल में आए।
क्या opolyx में पासों का अनुमान पहले से लगाया जा सकता है?
नहीं — 1 अक्टूबर 2026 से नहीं। हर रोल का सीड एक ऐसी गुप्त कुंजी से बनता है जो सिर्फ़ सर्वर पर मौजूद है, और पुराना अनुमान अब सिर्फ़ 2.76% रोल से मेल खाता है: वही 2.78% जो दो पासों का आँख मूँदकर अनुमान लगाने पर मिलता है।
क्या किसी ने पासों की पुरानी कमज़ोरी का फ़ायदा उठाया?
हमें इसका कोई संकेत नहीं मिला। फ़िक्स से पहले के सात दिनों में 2,354 जैकपॉट दांवों में से 31.4% जीते, जबकि अकेले संयोग से 31.1% की उम्मीद थी, और किसी भी खिलाड़ी के नतीजे अलग से नहीं दिखे।
पासे का नतीजा कहाँ तय होता है?
गेम सर्वर पर, ठीक उसी पल जब आप रोल करते हैं, एक रैंडम-नंबर जनरेटर द्वारा, जिसका सीड एक ऐसी गुप्त कुंजी से बनता है जो किसी और के पास नहीं है। नतीजा खेल के लॉग में दर्ज होता है, और रीप्ले और आँकड़े दोबारा रोल करने के बजाय उसी लॉग को पढ़ते हैं।
तकनीकी जानकारी
सीड एक लेबल था, <खेल की आईडी>:<चाल का नंबर>, जिसे FNV-1a से हैश करके mulberry32 को दिया जाता था। यह डिज़ाइन जानबूझकर था — इससे हर खेल को उसके अपने लॉग से हूबहू दोहराया जा सकता था — लेकिन दोहराने के लिए सीड का सार्वजनिक होना कभी ज़रूरी नहीं था। हर नतीजा उसी इवेंट में दर्ज होता है जिसने उसे पैदा किया, और रीप्ले और आँकड़े दोबारा रोल करने के बजाय उन्हीं इवेंट को पढ़ते हैं।
// before: anyone who knew the game id and the move number could do this
rng = mulberry32(fnv1a(`${gameId}:${seq}`))
// after: the same label, signed with a key that never leaves the server
rng = mulberry32(uint32(hmacSha256(serverSecret, `${gameId}:${seq}`)))अब लेबल पहले HMAC-SHA256 से गुज़रता है, जिसकी कुंजी 32-बाइट का एक गुप्त मान है जो सिर्फ़ सर्वर के अंदर मौजूद रहता है। डिफ़ॉल्ट रूप से यह गुप्त मान हर बार सर्वर शुरू होने पर नए सिरे से बनाया जाता है। रीस्टार्ट के बाद इसके बचे रहने की किसी चीज़ को ज़रूरत नहीं, क्योंकि किसी पुराने रोल की गणना कभी दोबारा नहीं होती — और जो रहस्य कहीं लिखा ही न जाए, वह लीक भी नहीं हो सकता।
खेल में कुछ भी तय करने वाला हर रैंडम ड्रॉ इसी तरह साइन किया जाता है: पासे, चांस कार्ड का ड्रॉ, जैकपॉट का पासा और यह चुनाव कि पहली चाल कौन चलेगा।
और पासे उतने ही निष्पक्ष हैं जितने पासों को होना चाहिए। 2 अक्टूबर से अब तक के सभी रोल में — कुल 247,968 — हर पासे का हर अंक 16.54% से 16.77% रोल में आया, जबकि एक आदर्श पासे के लिए यह 16.67% है, और डबल 16.67% रोल में आए:
| अंक | पहला पासा | दूसरा पासा |
|---|---|---|
| अंक 1 | 16.75% | 16.72% |
| अंक 2 | 16.77% | 16.65% |
| अंक 3 | 16.56% | 16.61% |
| अंक 4 | 16.54% | 16.70% |
| अंक 5 | 16.67% | 16.70% |
| अंक 6 | 16.72% | 16.62% |
फ़िक्स को उन्हीं शर्तों पर जाँचा गया जिन पर समस्या को जाँचा गया था। जो अनुमान पहले 99.3% रोल से मेल खाता था, उसे बाद में पूरे एक दिन पर फिर से चलाया गया: वह 50,212 में से 1,388 रोल से मेल खाया, यानी 2.76% — वही 2.78% जो दो पासों का आँख मूँदकर अनुमान लगाने पर मिलना चाहिए।
