بازی ها برای عادلانه بودن نیاز به تصادفی غیرمتمرکز دارند

مکانیک کوانتومی به ما می گوید که چیزی شبیه به یک جهان بسیار قابل پیش بینی و منظم است که بر روی جهانی از غیرقابل پیش بینی بودن و احتمال صرف ساخته شده است. در حالی که دنیای کوانتومی عجیب به نظر می رسد، می توان آن را درک کرد و حتی برای فناوری هایی مانند نیمه هادی ها، LED ها و رمزنگاری کوانتومی استفاده کرد. چیزی مشابه را می توان در مورد تصادفی بودن در متاورس گفت. آنچه شبیه سیستمی است که بر اساس مقادیر تصادفی تولید شده توسط مولدهای اعداد تصادفی (RNG) ساخته شده است، در واقع مبتنی بر برنامه‌هایی است که روشی پشت آن‌ها وجود دارد که می‌توان آن را درک کرد - خوب یا بد.

نقش محوری اعداد تصادفی

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

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

بسیاری از RNG ها در واقع شبه RNG (PRNG) هستند. آنها به جای تولید خروجی های تصادفی، نتایج یک معادله ثابت را ارائه می کنند. مقدار خروجی از اجرای یک مقدار شروع که اغلب "seed" نامیده می شود از طریق این معادله حاصل می شود. سپس خروجی به عنوان دانه جدید استفاده می شود و فرآیند دوباره شروع می شود. در حالی که نتیجه تصادفی نیست، مطمئناً می تواند برای یک ناظر خارجی تصادفی به نظر برسد.

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

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

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

علاوه بر این، هر PRNG برای هر برنامه ممکن مناسب نیست. برخی برای توابع خاص Web3 طراحی شده اند. اینها به طور کلی قابل اجرا نیستند.

مولدهای اعداد تصادفی واقعی (TRNG) در مقایسه با شبه RNG (PRNG). منبع: Level Up Coding

تلاش برای تصادفی واقعی

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

تمرکززدایی و ضرورت قابلیت اطمینان

استفاده از RNG که نیازهای غیرمتمرکز، تأیید یا امنیت برنامه شما را برآورده نمی کند، می تواند فاجعه آمیز باشد. همانطور که فروپاشی Axie Infinity به دلیل نقض امنیتی نشان داد، یک نقص فنی می‌تواند عواقب بزرگی را حتی برای بهترین برنامه‌ها با قوی‌ترین پایگاه کاربر داشته باشد. با توجه به اهمیت RNG ها برای برنامه هایی که از آنها استفاده می کنند، باید از بهترین آنها برای کار در دست استفاده شود.

RNG کامل غیرقابل پیش بینی، مقاوم در برابر دستکاری، قابل تایید، غیرمتمرکز و به طور مداوم در دسترس خواهد بود. اگر RNG را انتخاب می کنید، بپرسید:

  • آیا تصادفی بودن کافی را فراهم می کند؟
  • آیا خروجی ها قابل تایید هستند؟
  • آیا در برابر دستکاری ایمن است؟
  • آیا برای جلوگیری از شکست های تک نقطه ای غیرمتمرکز است؟

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

فلیکس خو کریپتو گیک، پذیرنده اولیه و جمع‌آورنده NFT. فلیکس از دانشگاه NYU Stern فارغ التحصیل شد و دو پروژه رمزنگاری ARPA و Bella Protocol را در میان 500 پروژه برتر جهان از نظر ارزش بازار تاسیس کرد. فلیکس قبلا در Fosun Investment، دفتر خانواده Sackler و Vertical Research در نیویورک و پکن کار می کرد. فلیکس عاشق قایقرانی، کایت سواری است و در وال استریت ژورنال و نیویورک تایمز برای مجموعه NFT خود به نمایش درآمد.

این مقاله برای اهداف اطلاعاتی عمومی است و در نظر گرفته نشده است و نباید به عنوان مشاوره حقوقی یا سرمایه گذاری در نظر گرفته شود. دیدگاه ها، افکار و نظرات بیان شده در اینجا به تنهایی متعلق به نویسنده است و لزوماً منعکس کننده یا نماینده دیدگاه ها و نظرات Cointelegraph نیست.

منبع: https://cointelegraph.com/news/games-need-decentralized-randomness