fair diceprovably fairbackgammon apps
تقریبا همیشه، نه. پرتابهایی که دستکاریشده بهنظر میرسند معمولا تصادفِ درستکارند که از صافی حافظه انسان گذشتهاند: جفتها یک بار در هر شش پرتاب میآیند، رگهها طبیعیاند، و باختها میمانند در حالی که بردها محو میشوند. حقیقت سختتر زیر همین است. با یک اپ بسته هیچکدام از اینها را نمیتوانی راستیآزمایی کنی، پس پرسش واقعی این نیست که آیا اپ تقلب میکند. این است که آیا اپ میتواند ثابت کند تقلب نمیکند.
هر اپ تختهنردی همان دو شکایت را میشنود، و بازیکنها از وقتی تاس میغلتد آن را گفتهاند. حریف جفت زیادی میآورد. حریف همیشه عددی را که لازم دارد پیدا میکند. بازنده همین را در قهوهخانههای استانبول میگفت، وقتی تاسها استخوانی بودند و میز چوبی. این شایسته پاسخی جدی است، نه بالا انداختن شانه. این هم یک پاسخ.
چرا اپ اینقدر جفت میآورد؟
چون جفتها رایجاند و آنهایی که تو را میبرند به یاد میمانند. دو تاس به ۳۶ حالت میافتند. شش تای آنها جفت است. یک پرتاب از هر شش، جفت درمیآید و همین یک کسر تقریبا تمام شکایت را تغذیه میکند.
- یک بازی معمول ۵۰ تا ۶۰ پرتاب برای هر دو بازیکن دارد. هشت تا ده جفت روی میز رگه داغ نیست. بازی متوسط است.
- دو جفت پشت سر هم، یک زوج در هر ۳۶ میافتد. یک شب چند بازی کن، باید بیش از یک بار ببینیاش.
- سه جفت پیاپی یک زنجیره در ۲۱۶ است. اگر منظم بازی کنی به آن برمیخوری. حساب است، نه خرابی.
- هر عددی که حریفت لازم دارد، دستکم روی یک تاس ۱۱ بار در ۳۶ ظاهر میشود؛ یعنی نزدیک یک شانس از سه.
بار هم همین را میگوید. دو خانه از خانه خودت را ببند، حریف باز هم حدود هشت بار از نه بار وارد میشود. مهره بازی در برد مستقیم بگذار، عددی که آن را میزند حدود یک بار از سه میآید، پیش از آنکه پرتابهای ترکیبی بیشتر هم اضافه کنند. وقتی عددهای موردنیازشان اینقدر در دسترساند، جمله «همیشه همان چیزی را میآورند که لازم دارند» فقط شکلی است که تاس عادلانه از سمت بازنده تخته به خود میگیرد.
چرا تاسها فقط وقتی میبازی ناعادلانه حس میشوند؟
چون حافظه دفتری کج نگه میدارد. روانشناسان دهههاست این را اندازه میگیرند: یک باخت تقریبا دو برابر یک برد هماندازه سنگینی میکند. پس آن ۶-۶ که دیوارت را فروریخت یک هفته با تو میماند، در حالی که ۶-۶ خودت مثل عدالت حس شد و تا شام فراموش شده بود. هیچکس شبی را که تاسها متوسط بودند به یاد نمیآورد، و کسی هم دربارهاش چیزی نمینویسد. برای همین همه رشتههای «تاس دستکاریشده» شبیه هم خوانده میشوند و تقریبا هیچکدام با جدول شمارش نمیآیند.
این عیب تو نیست. توجه، پرتابی را که بازی را عوض کرد ذخیره میکند و پنجاه پرتابی را که عوض نکرد دور میریزد. وقتی تاسها را از استخوان میتراشیدند هم بازیکنها آنها را به خیانت متهم میکردند. اپ این سوءظن را همان روزی به ارث برد که اولین مهرهاش را کشید.
آیا یک اپ تختهنرد واقعا میتواند تقلب کند؟
بله، و صداقت حکم میکند این را روشن بگوییم. مکعبهایی که روی صفحهات میغلتند انیمیشناند. اعداد از کدی روی سروری میآیند که نمیبینی، و هیچ چیز فیزیکی محدودشان نمیکند. بیشتر استودیوها انگیزهای ندارند، چون بازی دستکاریشده آبروی مردهای است که منتظر رو شدن است، و وقتی بازیکنها روی اپهای بزرگ آزمون شمارش میگیرند، مجموعها معمولا معمولی برمیگردند. اما «احتمالا نه» اعتماد است، نه برهان. با یک اپ بسته هیچ آزمایشی نمیتوانی اجرا کنی که مسئله را فیصله دهد، چون معماری تاسها را دور از دسترس نگه میدارد. پس تقسیم صادقانه، اپهای متقلب در برابر اپهای درستکار نیست. تاسهایی که میتوانی بررسی کنی در برابر تاسهایی که باید باور کنی است.
یک حس را نمیشود ممیزی کرد. یک رسید را میشود.
چطور خودت تاسها را آزمایش کنی؟
پیش از آنکه کسی سراغ رمزنگاری برود، آزمون کاغذی را انجام بده. بیشتر سوءظنها را در یک شب حل میکند.
اول انتظار را تعیین کن. پیش از بازی بنویس عادلانه چه شکلی است: یک پرتاب از هر شش جفت است، برای هر دو طرف. اینکه بعد از باخت تصمیم بگیری چه چیزی مشکوک است، همان راهی است که سوگیری از آن میبرد.
بهجای بهیادآوردن، بشمار. در یک نشست کامل، هر پرتاب و هر جفت را بشمار، هم مال خودت هم مال حریف. کاغذ حافظه را میبرد، چون از اول همان حافظه بود که گزارش نادرست میداد.
نتیجه را مثل یک آماردان بخوان. در ۱۲۰ پرتاب، حدود ۲۰ جفت انتظار داشته باش. هر عددی از حدود پانزده تا حدود بیستوهشت نوسان عادی است. فقط فاصلهای بزرگ که از نشستهای متعدد جان سالم به در ببرد معنایی دارد.
وقتی بازیکنها واقعا این آزمون را اجرا میکنند دو چیز رخ میدهد. اول، جفتهای حریف تقریبا همیشه نزدیک نرخ پایه میافتند و این شمارش خودشان است که غافلگیرشان میکند. دوم، آزمون سقف خودش را نشان میدهد. مجموعها میتوانند تمیز باشند در حالی که زمانبندی کثیف است: یک متقلب مصمم میتواند سهم کاملا عادلانهای از جفت بدهد و باز هم جفت درست را در بدترین لحظه برای تو بفرستد. شمارش این را نمیگیرد. رسیدها میگیرند.
اوریون برای هر بازی چه منتشر میکند؟
یک رسید، در سه بخش. پیش از اولین پرتاب، سرور ما به تاسهایش متعهد میشود: وقتی بازی هنوز انجام نشده، اثر انگشت SHA-256 یک بذر محرمانه را منتشر میکند. در حین بازی، هر پرتاب از همان بذر با HMAC-SHA256 مشتق میشود، یکییکی و به ترتیب. پس از آخرین حرکت، خود بذر فاش میشود.
این ساختار تاسها را قابل بررسی میکند. بذر فاششده را هش کن؛ باید همان اثر انگشتی را بازتولید کند که پیش از هر پرتابی منتشر شده بود، و این ثابت میکند تاسها پیش از حرکت هر دو بازیکن قطعی شده بودند. پرتابها را دوباره مشتق کن؛ باید با بازیای که واقعا انجام دادی بخوانند، و این ثابت میکند در مسیر چیزی جابهجا نشده است. هر جا یک تاس را عوض کن، زنجیره بسته نمیشود. بررسیگر روی orion.arthea.ai/verify همه اینها را با Web Crypto در مرورگر تو دوباره حساب میکند، بدون حساب کاربری و بدون نصب چیزی. و چون سرور هر حرکت زنده را در مبدا اعتبارسنجی میکند، حریف نمیتواند وقتی حواست به تاسهاست حرکتی خلاف قاعده را از زیر دستت رد کند.
آن را اینطور ساختیم چون «به ما اعتماد کن» پاسخی نیست که خودمان از هیچکس دیگری بپذیریم. دروازه orion.arthea.ai/go پیوندهای App Store و Google Play را در خود دارد و همیشه نشان میدهد هماکنون چه چیزی در دسترس است. بررسیگر عمدا اول منتشر شد. برهان باید پیش از رسیدن بازیکنها منتظر باشد.