Provably Fair چیست؟

آخرین بروزرسانی :

مطالعه: 13 دقیقه

برای اطلاعات بیشتر، راهنمای ما را ببینید راهنمای تحریریه

به‌روزرسانی: مهر ۱۴۰۵ پاسخ کوتاه Provably Fair یا «سیستم قابل راستی‌آزمایی» روشی است که به شما اجازه می‌دهد بررسی کنید نتیجه یک دور بازی، مطابق اطلاعات و فرمول اعلام‌شده تولید شده است یا نه. در این روش معمولاً سایت پیش از بازی، هشِ یک مقدار مخفی را منتشر می‌کند و بعداً با آشکار کردن آن […]

به‌روزرسانی: مهر ۱۴۰۵

پاسخ کوتاه

Provably Fair یا «سیستم قابل راستی‌آزمایی» روشی است که به شما اجازه می‌دهد بررسی کنید نتیجه یک دور بازی، مطابق اطلاعات و فرمول اعلام‌شده تولید شده است یا نه. در این روش معمولاً سایت پیش از بازی، هشِ یک مقدار مخفی را منتشر می‌کند و بعداً با آشکار کردن آن مقدار، امکان محاسبه دوباره نتیجه را فراهم می‌سازد. قابل راستی‌آزمایی بودن به معنی برد بیشتر، پیش‌بینی ضریب یا اعتبار قطعی سایت نیست.

وقتی در بازی انفجار ضریب ناگهان متوقف می‌شود، طبیعی است بخواهید بدانید این عدد چگونه به دست آمده و آیا بعد از ثبت شرط تغییر کرده است. سیستم قابل راستی‌آزمایی برای پاسخ دادن به همین پرسش طراحی شده؛ نه برای پیدا کردن فرمول برد. در این راهنما توضیح می‌دهیم Provably Fair چیست، چه اطلاعاتی در محاسبه نتیجه نقش دارند، چگونه یک دور را بررسی کنید و این بررسی چه محدودیت‌هایی دارد.

سیستم قابل راستی‌آزمایی چگونه کار می‌کند؟

اصل ماجرا این است: سایت باید پیش از مشخص شدن نتیجه، به یک داده اولیه متعهد شود و بعد از پایان بازی، اطلاعات کافی بدهد تا بتوان محاسبه را تکرار کرد. در یک پیاده‌سازی درست، تغییر دادن آن داده اولیه بعد از انتشار هش، هنگام بررسی مشخص می‌شود. این کار بر پایه تابع هش رمزنگاری انجام می‌شود؛ روشی که از هر ورودی، یک خروجی با طول مشخص می‌سازد.

پیش از بازی

ثبت هش اولیه

سایت اثر انگشت دیجیتال داده مخفی خود را منتشر می‌کند؛ خود آن داده هنوز نمایش داده نمی‌شود.

هنگام بازی

محاسبه نتیجه

بازی با استفاده از داده‌های تعریف‌شده و فرمول همان ارائه‌دهنده، نتیجه آن دور را محاسبه می‌کند.

پس از آشکار شدن داده

بررسی دوباره

می‌توانید هش اولیه و نتیجه بازی را جداگانه با محاسبه مستقل تطبیق دهید.

در اینجا هش با رمزگذاری یکسان نیست. رمزگذاری معمولاً با کلید مناسب قابل بازگشت است؛ اما تابع هش برای بازگرداندن مستقیم متن اصلی طراحی نشده است. به همین دلیل، هش به‌عنوان نشانه‌ای از داده اولیه به کار می‌رود، نه «کلید باز کردن» آن. توضیح فنی این ویژگی را می‌توانید در تعریف تابع هش در مؤسسه ملی استاندارد و فناوری آمریکا بخوانید.

بذر سرور، بذر کاربر و شماره دور چیست؟

در بسیاری از بازی‌های قابل راستی‌آزمایی، سه داده به تولید نتیجه کمک می‌کنند. نام انگلیسی آن‌ها در بخش تنظیمات بعضی سایت‌ها دیده می‌شود؛ برای جلوگیری از سردرگمی، معادل رایج و کاربرد هرکدام را در جدول آورده‌ایم.

برای دیدن تمام ستون‌ها روی موبایل، جدول را به چپ بکشید.

در همه بازی‌ها از یک ساختار یکسان استفاده نمی‌شود؛ ممکن است داده‌ها یا روش محاسبه متفاوت باشند.
نام رایجنام فنینقش در نتیجهنکته مهم
بذر سرورServer Seedمقدار اولیه‌ای که سایت تولید می‌کند و در زمان استفاده مخفی می‌ماند.معمولاً ابتدا هش آن نمایش داده می‌شود و بعداً خود بذر آشکار می‌شود.
بذر کاربرClient Seedمقداری که کاربر تعیین می‌کند یا نرم‌افزار برای او می‌سازد.در بعضی سایت‌ها قابل تغییر است؛ تغییر آن شانس برد را بیشتر نمی‌کند.
شمارنده بازیNonceعددی برای متمایز کردن دورها یا شرط‌های ثبت‌شده با یک مجموعه بذر.اغلب با هر شرط افزایش پیدا می‌کند و هنگام تغییر مجموعه بذر از نو شروع می‌شود.
هش اولیه سرورServer Seed Hashاثر انگشت دیجیتال بذر سرور که پیش از آشکار شدن آن منتشر می‌شود.باید با هش محاسبه‌شده از بذر آشکارشده یکسان باشد.

سایت ممکن است برای محاسبه نتیجه از روش‌هایی مانند HMAC-SHA256 استفاده کند و خروجی را با فرمول اختصاصی همان بازی به ضریب انفجار تبدیل کند. نه همه بازی‌ها از یک فرمول استفاده می‌کنند و نه هر بازی انفجاری الزاماً این سه داده را دارد. نمونه توضیح قدم‌به‌قدم و فرایند انتشار و بررسی داده‌ها را در مستندات فنی تولید نتیجه قابل راستی‌آزمایی ببینید.

نمونه ساده‌شده روند محاسبه (نه فرمول همه بازی‌ها)SHA256(serverSeed) → serverHashHMAC-SHA256(serverSeed, clientSeed + nonce) → gameResult

نخستین محاسبه برای ثبت تعهد به بذر سرور است. محاسبه دوم، نمونه‌ای از ساخت نتیجه با ترکیب داده‌هاست. روش نوشتن داده‌ها و تبدیل خروجی به ضریب در هر بازی می‌تواند متفاوت باشد.

آموزش گام‌به‌گام بررسی نتیجه بازی انفجار

برای بررسی نتیجه یک دور، بهتر است اطلاعات همان دور را نگه دارید. صرف دیدن یک هش یا عبارت «نتیجه تأیید شد» کافی نیست؛ باید مطمئن شوید همان داده‌های ثبت‌شده و فرمول اعلام‌شده دوباره به همان خروجی می‌رسند.

هش اولیه را ثبت کنید. در بخش اطلاعات بازی، هش بذر سرور را که پیش از انجام شرط نمایش داده شده نگه دارید. اگر چنین سابقه‌ای در دسترس نیست، اثبات زمان تعهد دشوار می‌شود.

اطلاعات دور را بردارید. ضریب ثبت‌شده، بذر کاربر، شماره دور و در صورت وجود شناسه بازی را یادداشت کنید؛ حروف بزرگ و کوچک ممکن است در محاسبه اثر داشته باشند.

منتظر آشکار شدن بذر سرور بمانید. در بعضی سامانه‌ها این اتفاق پس از پایان همان دور رخ می‌دهد و در بعضی دیگر پس از تغییر بذر یا پایان دوره استفاده از آن. تا پیش از آشکار شدن بذر، بازسازی کامل نتیجه ممکن نیست.

هش بذر سرور را بررسی کنید. با تابع مشخص‌شده توسط بازی، از بذر آشکارشده هش بگیرید. خروجی باید دقیقاً با هش اولیه‌ای که ثبت کرده‌اید یکسان باشد.

نتیجه همان دور را دوباره محاسبه کنید. بذرها، شماره دور و فرمول همان نسخه از بازی را در ابزار مستقل یا محاسبه‌گر معتبر وارد کنید. خروجی را با ضریب ثبت‌شده مقایسه کنید؛ در صورت اختلاف، ابتدا ترتیب داده‌ها و روش گرد کردن را بررسی کنید.

نتیجه بررسی چه چیزی را ثابت می‌کند؟ اگر هش اولیه و محاسبه ضریب هر دو تطبیق داشته باشند، شواهد محکمی دارید که نتیجه ثبت‌شده با داده‌ها و قواعد منتشرشده سازگار بوده است. این بررسی به‌تنهایی درست بودن همه قواعد بازی، احتمال‌های اعلام‌شده یا رفتار مالی سایت را ثابت نمی‌کند.

چرا هش اولیه و هش نتیجه یکسان نیستند؟

یکی از خطاهای رایج این است که کاربران دو هش با کاربرد متفاوت را با هم مقایسه می‌کنند. در یک روش متداول، هش اولیه فقط از بذر سرور ساخته می‌شود، اما خروجی محاسبه بازی با ترکیب بذر سرور، بذر کاربر و شمارنده به دست می‌آید؛ بنابراین قرار نیست این دو رشته یکسان باشند.

هش اولیه بذر سرور

این مقدار باید با هش محاسبه‌شده از همان بذر سرورِ آشکارشده مطابقت داشته باشد. هدف آن بررسی تغییر نکردن داده اولیه است.

خروجی محاسبه نتیجه

این مقدار به روش محاسبه بازی مربوط است و باید در نهایت به همان ضریب یا نتیجه دور برسد. ممکن است خودش اصلاً به شکل هش نمایش داده نشود.

اگر سایت الگوریتم دقیق، مقادیر لازم یا سابقه هش اولیه را ارائه ندهد، عبارت «قابل راستی‌آزمایی» به‌تنهایی برای بررسی مستقل کافی نیست. برای آشنایی بیشتر با مفهوم الگوریتم ضریب، صفحه بازی انفجار و توضیحات فنی ارائه‌دهنده همان بازی را کنار هم مطالعه کنید.

آیا تغییر بذر کاربر شانس برد را افزایش می‌دهد؟

خیر. تغییر بذر کاربر در یک پیاده‌سازی درست، ورودی محاسبه را عوض می‌کند و ممکن است دنباله نتایج آینده را تغییر دهد؛ اما «دنباله متفاوت» لزوماً «دنباله سودآورتر» نیست. اگر احتمال‌های بازی درست طراحی شده باشند، انتخاب یک بذر خاص مزیت قابل اتکایی برای پیش‌بینی نتیجه نمی‌دهد.

آنچه تغییر بذر انجام می‌دهد

در صورت پشتیبانی بازی، ورودی تحت اختیار کاربر را تغییر می‌دهد و امکان مشارکت او در تولید نتیجه را فراهم می‌کند؛ به‌ویژه وقتی سایت پیش از انتخاب بذر کاربر، به بذر سرور متعهد شده باشد.

آنچه تغییر بذر انجام نمی‌دهد

برد را تضمین نمی‌کند، درصد بازگشت بازی را افزایش نمی‌دهد و راهی برای پیدا کردن ضریب بعدی نیست. تبلیغ «بذر طلایی» یا «تنظیم مخفی برد» پشتوانه قابل اتکایی ندارد.

تفاوت Provably Fair با تولید اعداد تصادفی معمولی

دو موضوع را نباید با هم اشتباه گرفت: چگونه نتیجه ساخته می‌شود و چگونه می‌توان آن را بررسی کرد. تولیدکننده اعداد تصادفی روش ساخت نتیجه است. سیستم قابل راستی‌آزمایی، سازوکاری برای بازسازی و کنترل نتیجه با داده‌های منتشرشده فراهم می‌کند. این دو می‌توانند در یک بازی کنار هم وجود داشته باشند.

روی موبایل برای مشاهده کامل جدول، آن را به چپ بکشید.

مقایسه شیوه رایج نمایش و بررسی نتایج؛ کیفیت هر سامانه به اجرای واقعی آن بستگی دارد.
موضوعبازی با تولید اعداد تصادفیبازی با نتیجه قابل راستی‌آزمایی
ساخت نتیجهبا مولد اعداد تصادفی یا شبه‌تصادفیبا داده‌های مشخص و یک روش محاسبه قابل بازسازی؛ ممکن است خودش از ابزارهای تولید داده تصادفی استفاده کند
اطلاعات در دسترس کاربرمعمولاً نتیجه و گزارش‌های کلی آزمونهش اولیه، داده‌های لازم و روش محاسبه هر دور یا مجموعه‌ای از دورها
بررسی مستقل یک دورمعمولاً بدون دسترسی به داده‌ها و روش داخلی ممکن نیستدر صورت آشکار شدن داده‌ها و انتشار روش محاسبه، امکان‌پذیر است
تضمین بردنداردندارد
بررسی سلامت بازیآزمون فنی و ارزیابی مستقل اهمیت داردعلاوه بر بازسازی نتایج، ارزیابی روش تولید داده‌ها، احتمال‌ها و پیاده‌سازی لازم است

در بعضی بازی‌های کازینو زنده نتیجه با چرخ، کارت یا تجهیزات واقعی مشخص می‌شود؛ بنابراین نمی‌توان روش بررسی یک بازی انفجار را بدون تغییر برای تمام بازی‌های کازینو به کار برد. برای شناخت شرکت‌های مختلف نیز راهنمای شرکت‌های سازنده بازی را ببینید.

محدودیت‌های مهم سیستم قابل راستی‌آزمایی

این سیستم ابزار مفیدی برای بررسی نتیجه است، اما دامنه آن محدود است. حتی اگر محاسبات یک بازی دقیقاً تکرار شوند، چند موضوع مهم همچنان نیازمند بررسی مستقل‌اند.

محدودیت ۱

برتری ریاضی کازینو

قابل بررسی بودن نتیجه، برتری آماری سایت را حذف نمی‌کند. ممکن است بازی کاملاً طبق فرمول اعلام‌شده اجرا شود، اما درصد بازگشت آن همچنان کمتر از ۱۰۰ درصد باشد.

محدودیت ۲

رفتار سایت با حساب کاربر

این بررسی درباره شرایط برداشت، مسدود شدن حساب، حفظ اطلاعات شخصی یا کیفیت پشتیبانی چیزی ثابت نمی‌کند.

محدودیت ۳

درست بودن خود فرمول

بازسازی یک خروجی ثابت نمی‌کند که فرمول از نظر توزیع احتمال، انتخاب بذرها یا امنیت برنامه بدون اشکال است. این موارد به بررسی فنی جداگانه نیاز دارند.

نکته فنی: سایتِ اجراکننده معمولاً به بذر مخفی خود دسترسی دارد. پس جمله «حتی سرور هم نتیجه را نمی‌داند» همیشه درست نیست. آنچه اهمیت دارد، زمان ثبت تعهد به بذر، نحوه انتخاب بذر کاربر، فرمول شفاف و توانایی بررسی مستقل نتایج است.

بررسی شفافیت در سایت‌های فارسی‌زبان

در سایت‌هایی مانند بتفا، بری‌بت، بت‌فوروارد، روبیکس‌بت، بکس‌بت و سوت‌بت ممکن است چند بازی از سازندگان متفاوت ارائه شود. وجود بازی انفجار در یک سایت، به معنی قابل راستی‌آزمایی بودن همان بازی نیست. وضعیت هر بازی را باید از اطلاعات فنی همان نسخه بررسی کرد. در محتوای اولیه مقاله، قابلیت راستی‌آزمایی این برندها به‌صورت مستقل اثبات نشده بود؛ بنابراین در اینجا آن را ویژگی تأییدشده هیچ‌کدام معرفی نمی‌کنیم.

پیش از انتخاب بازی

نام شرکت سازنده بازی و روش تعیین ضریب را پیدا کنید. نبود نام سازنده یا توضیح روشن، بررسی مستقل را دشوار می‌کند.

در بخش تاریخچه بازی

ببینید آیا هش ثبت‌شده، بذرها، شماره دور و شناسه نتیجه در دسترس‌اند یا فقط عبارت «بازی منصفانه است» نمایش داده می‌شود.

در بخش راهنمای فنی

بررسی کنید فرمول تبدیل داده‌ها به ضریب منتشر شده و ابزار بررسی مستقل وجود دارد یا نه.

در قوانین حساب و پرداخت

شرایط برداشت، رسیدگی به اعتراض‌ها و حفاظت از اطلاعات شخصی را جدا از ادعای منصفانه بودن بازی ارزیابی کنید.

برای مقایسه معیارهای اعتبار سایت، راهنمای امتیازدهی سایت و مقایسه سایت‌های شرط‌بندی فارسی‌زبان را مطالعه کنید. این صفحه‌ها جای بررسی فنی خود بازی را نمی‌گیرند.

اشتباهات رایج در بررسی نتیجه بازی

اشتباه اول

مقایسه دو هش متفاوت

هش اولیه بذر سرور را با خروجی ترکیبی بازی یکی ندانید. هرکدام نقش جداگانه‌ای دارند و باید با داده متناظرشان مقایسه شوند.

اشتباه دوم

استفاده از شماره دور اشتباه

شماره دور فعال ممکن است با شماره بازی موردنظر شما تفاوت داشته باشد. داده همان دور را از تاریخچه بردارید.

اشتباه سوم

اعتماد کامل به ابزار ناشناس

محاسبه‌گر تأیید نتیجه باید با فرمول منتشرشده سازگار باشد. فایل و افزونه ناشناس را برای بررسی هش نصب نکنید.

پیش از اعتماد به یک نتیجه تأییدشده چه چیزهایی را ببینیم؟

  • هش اولیه پیش از بازی ثبت شده و سابقه آن در دسترس باشد.
  • بذر سرور در زمان مناسب آشکار شود و با هش اولیه مطابقت داشته باشد.
  • فرمول دقیق بازی، از جمله شیوه محاسبه و گرد کردن ضریب، مشخص باشد.
  • بتوان با همان ورودی‌ها و بدون اتکا به ادعای سایت، نتیجه را دوباره ساخت.
  • اعتبار سایت و شرایط مالی آن جداگانه بررسی شوند؛ راهنمای بازی مسئولانه نیز می‌تواند در شناخت خطرهای مالی کمک کند.

جمع‌بندی: Provably Fair چه چیزی را ثابت می‌کند؟

سیستم قابل راستی‌آزمایی، راهی برای بررسی رابطه میان داده‌های اولیه، فرمول محاسبه و نتیجه ثبت‌شده بازی است. اگر اطلاعات کافی منتشر شود و پیاده‌سازی درست باشد، می‌توان درباره دست‌نخوردن داده متعهدشده و تطابق خروجی با فرمول ارائه‌شده به نتیجه رسید. اما هیچ‌کدام از این موارد به معنای حذف شانس باخت، افزایش احتمال برد یا تضمین اعتبار مالی سایت نیست.

چه چیزی بررسی می‌شود؟

تطبیق داده و نتیجه؛ یعنی امکان بازسازی خروجی از ورودی‌ها و روش منتشرشده.

چه چیزی ثابت نمی‌شود؟

برد قطعی یا امنیت مالی؛ الگوریتمِ قابل بررسی، ضمانت پرداخت یا سود نیست.

مهم‌ترین کار کاربر

بررسی مستقل؛ ثبت هش اولیه، کنترل بذر آشکارشده و مقایسه نتیجه همان دور.