Provably fair بدفهمیدهترین عبارت در قمار کریپتویی است. بازیکنها با این نشان طوری برخورد میکنند که انگار تضمین میکند کازینو صادق است.... اما نیست... این فقط یک تضمین درباره یک چیز خیلی مشخص است، و یک کازینو با پیادهسازی بینقص provably fair هنوز هم میتواند موجودیتان را سریعتر از چیزی که فکر میکنید به خاکستر تبدیل کند، برداشتتان را با تعلل جلو ببرد، بردتان را بهخاطر یک نکته فنی باطل کند، و حتی یک وعده رمزنگاری را هم زیر پا نگذارد... ترفند این است که دقیقاً بدانید این مهر دقیقاً چه چیزی را پوشش میدهد و دقیقاً چه چیزی را نه، چون جواب از چیزی که مارکتینگ القا میکند محدودتر است.
Provably Fair در یک پاراگراف
یک بازی provably fair قبل از اینکه شما شرط ببندید، به نتیجه متعهد میشود؛ به شکلی که بعد از مشخص شدن نتیجه بتوانید آن را راستیآزمایی کنید. کازینو یک اثرانگشتِ رمزنگاریشده از یک راز را که از قبل انتخاب کرده منتشر میکند. شما هم یک تکه تصادفیبودن از سمت خودتان اضافه میکنید... بازی هر دو را با یک فرمول عمومی ترکیب میکند. بعد از پایان راند، کازینو آن راز را افشا میکند، شما خودتان دوباره فرمول را اجرا میکنید، و جواب باید دقیقاً همان چیزی باشد که بازی نشان داده. اگر همین باشد، کازینو بعداً نتیجه را تصمیم نگرفته است. همین تمامِ وعده است. هر چیزی که درباره provably fair میخوانید و فراتر از این وعده میرود یا غلط است یا صرفاً فروشمحور.
Now read that again slowly and tell me Iam wrong :)سه ورودی که یک راند را میسازند
Every provably fair round is built from three values... سیدِ سرور (server seed) یک رشته تصادفی است که کازینو تولید میکند و پنهان نگه میدارد.... قبل از شروع هر شرطبندی، کازینو هشِ آن سید را منتشر میکند، معمولاً SHA 256. هش یک اثرانگشت یکطرفه است.... اگر کازینو بعداً تلاش کند سید را عوض کند، اثرانگشت جدید با چیزی که قبلاً به شما نشان داده یکی نمیشود و دروغ از نظر ریاضی قابل مشاهده است. Actually, سیدِ کلاینت (client seed) مال شماست. بیشتر پلتفرمها اجازه میدهند خودتان واردش کنید یا سمت کلاینت تصادفیاش کنید... این همان ورودیای است که توانایی کازینو برای پیشمحاسبه نتیجه را میشکند، چون کازینو وقتی سید خودش را قفل کرده، نمیتواند سید شما را بداند.برای اینکه منصف باشیم، نانس (nonce) یک شمارنده است. از صفر شروع میشود، با هر شرط یکی زیاد میشود و تضمین میکند حتی با همان سید سرور و سید کلاینت، هر راند نتیجه متفاوتی تولید کند.... دو تا از این سه مقدار تمام مدت عمومی هستند. سومی بعد از بسته شدن راند عمومی میشود.
Often unnoticed but not here :)اینجا HMAC SHA256 واقعاً چه کار میکند
جدی، این سه ورودی وارد HMAC SHA256 میشوند و خروجیاش یک رشته هگزادسیمال 64 کاراکتری است. با آن رشته مثل یک دنباله بلند از رقمهای هگز برخورد میشود و تابع نگاشت نتیجه بازی از بین آن رقمها عبور میکند تا چیزی قابل استفاده بسازد یک ضریب کرش، یک رول تاس، یک کارتکشی، یک باکت Plinko. نگاشت دقیق به بازی بستگی دارد، اما همیشه قطعی (deterministic) است. ورودیهای یکسان، خروجی یکسان، هر بار، روی هر ماشینی که الگوریتم را بداند.

به همین خاطر است که provably fair در بازیهایی مثل تاس، کرش، Plinko، های-لو، ماینز، و بازیهای مشابه زندگی میکند. اینها فضای نتیجه کوچک و از نظر مکانیکی ساده دارند. نگاشت یک رشته هگز به یک عدد بین یک تا صد کار سادهای است. نگاشت یک رشته هگز به یک راند Megaways پنجاه اسپینی با ریلهای آبشاری، مولتیپلایرها، ریتریگرها، تریگرهای اسکَتر، و یک سایدگیم buy bonsu ساده نیست. از نظر فنی ممکن است.... اما از نظر تجاری وجود ندارد، چون هیچ ارائهدهنده بزرگ اسلاتی آن را عرضه نکرده است.
Now read that again slowly and tell me Iam wrong :)چطور واقعاً یک شرط را راستیآزمایی کنیم
فرآیند وریفای همان بخشی است که بازیکنها تقریباً هیچوقت انجام نمیدهند، و این برای هر کازینویی که وسوسه تقلب داشته باشد راحت است. مراحل کوتاهاند.
در عمل، اول، قبل از اینکه شرط ببندید، هشِ سید سرورِ منتشرشده را کپی کنید. , ذخیرهاش کنید... کازینو حالا قفل شده است. دوم، سید کلاینت خودتان را تنظیم کنید... هر چیزی را که پلتفرم بهصورت خودکار پر کرده قبول نکنید. تله «سید کلاینت پیشفرض» واقعی است، و کازینویی که هر دو نیمه معادله را انتخاب کند، نصفِ محافظت را پاک کرده.. سوم، چند راند بازی کنید. بالا رفتن نانس را نگاه کنید. چهارم، وقتی خواستید وریفای کنید، کازینو اجازه میدهد سید را بچرخانید (rotate). وقتی rotate میکنید، کازینو سید سرور قبلی را افشا میکند.. پنجم، شما خودتان آن سید سرورِ افشاشده را هش میکنید، تأیید میکنید اثرانگشت با چیزی که کازینو قبلاً وعده داده بود یکی است، بعد سید + سید کلاینت شما + نانس را داخل الگوریتم عمومی میگذارید و چک میکنید نتیجه یکی باشد.... اگر یکی بود، راند صادقانه بوده.. اگر هش یکی نبود، کازینو وسط مسیر سید را عوض کرده که جدیترین نوع تقلبی است که provably fair برای گرفتنش طراحی شده.
Experience changes perspectiveبرای این کار ابزار وجود دارد. بیشتر پلتفرمهای provably fair یک وریفایر منتشر میکنند.... وریفایرهای مستقلِ اوپنسورس هم وجود دارند، که همان نسخهای است که واقعاً میخواهید، چون اعتماد کردن به وریفایرِ خودِ کازینو برای تأیید نتیجه خودِ کازینو یک دور باطل است.
Provably Fair واقعاً چه چیزی را ثابت میکند
فهرستش کوتاه و دقیق است. ثابت میکند کازینو بعد از اینکه شما شرط بستید نتیجه را تصمیم نگرفته. ثابت میکند کازینو بین «تعهد» و «افشا» سید سرور را عوض نکرده. ثابت میکند بازی الگوریتم منتشرشده را با ورودیهای منتشرشده اجرا کرده..... همین.... سه چیز. همه مکانیکی. همه رمزنگاری. همه واقعی.
This is bigger then it looks.این مجموعه کوچکی نیست. بدون provably fair، یک کازینوی متمرکز کنترل یکطرفه روی مولد نتیجه دارد. شما دارید به حرف خودشان، حرف لَبها، و حرف رگولاتور اعتماد میکنید، و هیچ راه شخصی برای وریفای حتی یک اسپین ندارید. provably fair یک لایه از اعتماد را حذف میکند و جایش ریاضی میگذارد. مفید. مهم... اما هممعنیِ صداقت نیست.
چه چیزی را ثابت نمیکند
اینجاست که بیشتر صفحات مارکتینگ بیسروصدا قطع میشوند. provably fair ثابت نمیکند بازی همان house edgeای را دارد که کازینو ادعا میکند. edge داخل تابع نگاشت نتیجه است، نه داخل هش. یک کازینو میتواند یک بازی تاس provably fair با edge اعلامی یک درصد اجرا کند، در حالی که نگاشت بهصورت پنهانی edge شش درصدی بدهد، و هر راند هم همچنان وریفای شود.. , رمزنگاری درباره نگاشتی صادق است که خودش ناصادق است.
Moving on..!همچنین ثابت نمیکند توزیع RNG از نظر آماری تمیز است. خروجی هش در ظاهر تصادفی است و در تئوری توزیع یکنواخت دارد. در عمل، برای تأیید اینکه توزیع واقعی نتایج با چیزی که الگوریتم وعده میدهد یکی است، به میلیونها راند و یک تست کای-دو نیاز دارید. تقریباً هیچ بازیکنی این تست را انجام نمیدهد.
ثابت نمیکند برداشتها پرداخت میشوند. ثابت نمیکند شرایط استفاده رعایت میشود. ثابت نمیکند بعد از یک برد بزرگ، حسابتان به دلایل سلیقهای بسته نمیشود و بردتان مصادره نمیشود. ثابت نمیکند بونوسی که دارید وِیجرش را خالی میکنید طوری نوشته نشده که از نظر آماری تکمیل وِیجر با سایز شرطهایی که توانش را دارید غیرممکن باشد.... هر کدام از این مشکلات از مشکل «نتیجه دستکاریشده» که provably fair حل میکند بزرگترند.
Often unnoticed but not here :)همچنین برای بیشتر بازیهای کازینو کاربرد ندارد. اسلاتهای ارائهدهندههای لایسنسدار، بازیهای لایو دیلر، و بیشتر جکپاتهای استودیوهای بزرگ provably fair نیستند..... آنها RNG certified هستند یا بهصورت فیزیکی دیل میشوند........ نشان provably fair روی صفحه اصلی معمولاً فقط به بازیهای in-house اشاره دارد.
Provably Fair در برابر Certified RNG، کنار هم
| ویژگی | Provably Fair | Certified RNG |
|---|---|---|
| بازیکن میتواند یک راند را وریفای کند | بله | خیر |
| House edge قابل وریفای است | خیر (نگاشت راندبهراند قابل ممیزی نیست) | خیر (ممیزی آماری است، نه راندبهراند) |
| میزان اعتماد لازم به اپراتور | کم برای سلامت نتیجه | زیاد |
| میزان اعتماد لازم به شخص ثالث | هیچ (ریاضی عمومی است) | لابراتوار ممیزی و رگولاتور |
| پوشش | Crash, dice, Plinko, hi lo, mines | Slots, live, jackpots, table games |
| گواهی آماری | بهصورت پیشفرض ندارد | بله (eCOGRA, iTech Labs, GLI, BMM) |
| مقاومت در برابر دستکاری بعد از شرط | قوی (رمزنگاری) | فقط رویهای |
| کاربرد علیه تقلب بونوس | خیر | خیر |
| کاربرد علیه تعلل در برداشت | خیر | خیر |
خوانش صادقانه این است که این دو رویکرد مشکلات متفاوتی را حل میکنند.... certified RNG برای راضی کردن رگولاتورها در بازارهای Tier 1 طراحی شده. Provably fair برای حذف اختیار اپراتور در بازیهای کریپتو-نیتیو طراحی شده؛ جایی که بازیکن و کازینو لازم نیست یک رگولاتور وسط باشد. اینکه با آنها مثل رقیب برخورد کنید باعث میشود هیچکدام منطقی نباشند.. یک کازینوی کریپتویی جدی برای بازیهایی که لازم دارند certified RNG اجرا میکند و برای بازیهایی که از آن سود میبرند provably fair. کازینویی که فقط یکی را اجرا میکند دارد گوشهبُری میکند؛ چیزی که بازیکن باید در قیمتگذاری ریسک لحاظ کند.
Short term noise long term signal.تله «سید کلاینت پیشفرض»
صادقانه، قابلسوءاستفادهترین ضعف در یک پیادهسازی واقعی provably fair همان سید کلاینت است... ریاضی فقط وقتی کار میکند که کازینو هنگام commit کردن به هشِ سید سرور، سید شما را نداند. اگر کازینو سید کلاینت را برای شما تعیین کند، آن محافظت از بین میرود. کازینو میتواند هر دو نیمه معادله را انتخاب کند، نتیجه را از قبل حساب کند، و بعد ادعا کند نتیجه provably fair بوده.
همیشه سید کلاینت خودتان را تنظیم کنید. یک چیز دلخواه تایپ کنید. روی کیبورد بکوبید. خودِ رشته مهم نیست، فقط مهم است که کازینو آن را تولید نکرده باشد. اگر یک پلتفرم تنظیم سید خودتان را سخت یا نامشخص میکند، حداقل یک پرچم زرد است.
You may not always agree and thats fine.کجا کار میکند و کجا نمیتواند
واقعیت این است که provably fair به بازیهایی میخورد که فضای نتیجه کوچک و قطعی دارند.. کرش یک هش را به یک ضریب نگاشت میکند..... تاس یک هش را به یک عدد نگاشت میکند. Plinko یک هش را به یک دنباله تصمیم چپ/راست نگاشت میکند.. ماینز یک هش را به چیدمان برد نگاشت میکند. اینها نگاشتهای تمیز و یکمرحلهای هستند.
اسلاتهای ارائهدهندههای واقعی موجودات متفاوتیاند. , یک اسلات Pragmatic Play یا NetEnt یک بازی کاملاً انیمیشنی است با جدولهای وزندهی ریل، تریگرهای بونوس، ریتریگر فریاسپین، وایلدهای چسبنده، وایلدهای گسترشی، مولتیپلایرها، و یک بازار جانبی buy bonsu، که همهشان داخل نرمافزاری هستند که استودیو به اپراتورها لایسنس میدهد. هیچکدام از این اسلاتها provably fair نیستند، فرقی هم ندارد کجا بازیشان کنید. نشان روی صفحه اصلی یک کازینوی کریپتو تقریباً همیشه فقط بازیهای in-house تاس و کرش را پوشش میدهد.. اینکه مهم است یا نه کاملاً بستگی دارد شما واقعاً چه بازی میکنید.