مسیر صفحه
مساله ژنرال های پارسی

مقدمه

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

گره های عملیاتی شما در یک نبرد جدی میبایستی کاملا این اطمینان را حاصل کنند که دستور آغاز حمله یا توقف حمله دریافت شده توسط آنها به هیچ عنوان در معرض دستکاری گره های دشمن و در نتیجه یک جنگ الکترونیکی نبوده اند. از این رو سه سازمان [1] NASA، بخش طراحی موشک های بالستیک در وزارت دفاع ایالات متحده و دفتر تحقیقات ارتش ایالات متحده در طی یک تحقیق مشترک، شکل گیری مفاهیم مربوط به نحوه انتقال پیام یک فرمانده به سایر عوامل تحت فرمان (به نحوی که حتی وجود عوامل دشمن هم نتواند باعث خدشه به محتوی پیام شود) را در سال 1982 پایه ریزی کرده و به آزمایشگاه علوم انفورماتیک دانشگاه برکلی کالیفرنیا سپردند و تیم تحقیقاتی مذکور نتایج به دست آمده را به نام "مساله ژنرال بیزانسی" [2] منتشر کردند. این تحقیق در نهایت اعلام میدارد، در صورتی که پیامهای شفاهی تبادل شده در شبکه ای که حداقل 2/3 عوامل تحت فرمان آن وفادار به فرمانده خود باشند، میتوانند عوامل نفوذی دشمن را از هر نوع ابتکار عمل دور نمایند. هر چند حل مساله ژنرال بیزانسی غیر از برابری تعداد عوامل وفادار و دشمن به شکل گراف مسیر ارتباطی بین آنها نیز بستگی جدی دارد، اما متاسفانه این نکته اساسی در بسیاری از آموزشهای مربوطه نادیده گرفته میشود. همچنین در صفحه 16 این مطالعه با شبیه سازی فرمانده به عنوان منبع ورودی پیام، عوامل تحت فرمان به عنوان پردازنده و وفادار بودن به عنوان در اختیار داشتن پردازنده سالم، اعلام میدارد بهترین راه برای دست پیدا کرد به یک شبکه رایانه ای غیر متمرکز قابل اعتماد، ایجاد تعدد در بخش فرماندهی است (تمرکز زدایی از یک واحد فرماندهی مرکزی) به نحوی که تعداد زیادی منبع ورودی پیام موازی در شبکه موجود باشد. به این ترتیب، یک واحد پردازنده میتواند تعداد بیشتر ورودی جهت پردازش در اختیار داشته باشد و نتایج به دست آمده از هر ورودی را مقایسه کرده و با اعتماد بیشتری اقدام به اجرای دستورات کند.

ناکارآمدی مساله ژنرال های بیزانسی برای رمز ارزها

اما مساله از جایی بحرانی میشود که قرار باشد سیستمی با فرماندهان موازی ناشناس را در دستور کار طراحی قرار دهیم – یعنی دقیقا شرایطی که در ایجاد یک رمز ارز با آن مواجه هستیم [3] . در نتیجه به منظور اثبات (Proof) اینکه نقشه عمومی عملیاتی که از روز اول برای همه تشریح شده و مورد اجماع همگان بوده است (Consensus) توسط یک فرمان صادر شده از سوی یک فرمانده ناشناس به خطر نمیافتد، پای فاکتور تازه ای به میان می آید که انتظار داریم آن فرمانده ناشناس آنرا به انجام رسانده باشد. رمز ارزهای امروزی این برهان را از طریق الزام هر فرمانده به انجام یک محاسبه سخت به دست می آورند به نحوی که هر فرمانده در صورتی که یک نفوذی دشمن باشد، مجبور خواهد شد که برای ارسال هر دستور مغرضانه، حجم زیادی منابع محاسباتی و انرژی مصرف کند و این هزینه و تاخیر زمانی شانس فرماندهان ناشناس وفادار را در شبکه بالا میبرد تا با ارسال پیام های صحیح تعادل صحت دستورات را به نفع اجماع سیستم بالا ببرند. این روش برای اولین بار در سرویس دهنده های پست الکترونیکی به منظور مقابله با ارسال کننده های هرزنامه رواج پیدا کرد و به Proof-of-Work مشهور شد. به این ترتیب با ایجاد یک حاشیه سود منطقی بین تفاوت میزان هزینه برای انرژی مورد نیاز و میزان درآمد ناشی از تولید و ارسال یک دستور جدید (Block) در شبکه، فرماندهان ناشناس وفادار بدون هر نوع ایرادی به کار خود ادامه میدهند، ولی دشمنان نفوذی میبایستی برای انجام خرابکاری دائما هزینه کرده و درآمد ناشی از ارسال پیامهای مغرضانه، پاسخگوی هزینه های آنها نباشد (51% Attack).

هر چند این مدل سازی، رمز ارزهای بر مبنای PoW را ایجاد کرد اما دو مساله جدید را با خود به همراه آورد. اول اینکه هیچ تضمینی وجود ندارد تا فعالیت فرماندهان وفادار همواره با سود دهی همراه باشد، در نتیحه در مواقعی که ارزش یک رمز ارز در حال سقوط است، تردید در ادامه فعالیت فرماندهان ناشناس اوج گرفته و ممکن است از ادامه همراهی در محافظت از مدل اجماع شکل گرفته خودداری کنند. ولی حتی در حالتی که ارزش رمز ارز ثابت یا در حال صعود باشد، میل به دریافت پاداش بیشتر باعث شکل گرفتن نوعی رقابت میان فرماندهان وفادار شده و همین امر پایداری شبکه را با هزینه های سرسام آور مواجه میکند. بنابراین شبکه با سخت تر کردن مساله طرح شده سعی در بالا بردن هزینه دریافت پاداش برای هر مرحله میکند که همین امر تداوم رویکرد PoW به ایجاد رمز ارز ها را با پرسش های گوناگونی همراه میسازد. به عبارت دیگر، مساله ژنرال بیزانسی داشتن تنها یک فرمانده در سیستم را به عنوان یک فرض اساسی قبول کرده است و آنجا که از تعدد منابع برای ورود اطلاعات صحبت میکند به روشنی به تعداد مسیر های دریافت پیام توسط پردازنده اشاره دارد که به نظر میرسد وجود امکان تعدد فرماندهی در یک سیستم غیر متمرکز، موضوع یک تفسیر غلط قرار گرفته است. متن مقاله ژنرال بیزانسی برای روشن شدن این نکته مثال میزند: "پردازنده های پدافند موشکی میتوانند با کمک چندین رادار موازی امکان وقوع یک تجاوز هوایی را دقیقتر شناسایی کرده و بر اساس آن اقدام کنند و باید توجه داشت رادار در این مثال یک منبع و رسانه برای دریافت یک حقیقت واحد به نام تجاوز هوایی است. بنابراین در این مثال عمل تجاوز هوایی یک فرمانده (و تنها حقیقت) واحد برای همه رادار ها و پدافند ها در مدلسازی غیر متمرکز عمل میکند". و این در حالی است که در رمز ارزها، ما واقعا با فرماندهان (و حقایق) متعدد سر و کار داریم و هر فرمانده ای سعی میکند خودش را حقیقت برتر معرفی کند که این نوع از رقابت بعضا به خصومت تبدیل شده (Selfish Mining) و یا مفهوم فرمانده وفادار (تولید، نگهداری و انتقال ارزش بدون دخالت دولت ها) را به طور کلی زیر سوال ببرد.

مساله ژنرال های پارسی برای رمز ارزها

لذا به منظور ارائه راه حل موثر تر برای حالت بخصوصی از مساله ژنرال بیزانسی، تحقیق تازه ای در موسسه فناوری کالیفرنیا آغاز میگردد که در آن فرض شده است که هر فرمانده برداشت خود را از حقیقت واحد مورد اجماع را کسب کرده و با دیگران به اشتراک میگذارد. این تحقیق که طی مقاله ای با نام مساله ژنرال های چینی [4] منتشر شده است، فرض میکند هر فرمانده موجود در شبکه غیر متمرکز فرضی، مجهز به یک سنسور دما است و پس از اندازه گیری دمای محیطی (دما به عنوان حقیقت واحد) مقدار کسب شده را در اختیار دیگر فرماندهان قرار میدهد. این تحقیق نشان میدهد وجود کوچکترین نویز (فرمانده دشمن) در این نوع شبکه میتواند باعث تخریب کل ساختار اجماع گردد (و مطابق آنچه در بخش قبلی تحت عنوان برداشت نادرست از مساله ژنرال بیزانسی مطرح گردید) در انتهای پیاده سازی همه روشها و الگوریتمها، تنها جاذبه و مشوق های مادی (incentive) هستند که همچنان فرماندهان وفادار را به حفظ اجماع سوق میدهند.

اما شاهین نورصالحی [5]، در طی یک مطالعه جدید [6] روش نوآورانه ای برای حل مشکل اجماع در سیستمهای غیر متمرکز ارائه داده است. در این روش که "مساله ژنرال پارسی" نامیده شده است، شرایطی ایجاد میگردد که به هر فرمانده ناشناس فعال در شبکه تنها بخشی از یک حقیقت واحد (طرح حمله، ثبت تراکنشهای رمز ارزها و .. و... ) ارائه میشود و در لحظه ای که نیاز به اقدام باشد، هر فرمانده ناشناس آن بخش از حقیقت را که در اختیار دارد با بقیه فرماندهان در قالب توپولوژی حلقه (Ring Topology) به اشتراک میگذارد. از آنجایی که توپولوژی حلقه در برابر کوچکترین عامل نویز دچار مشکل میشود و محل نویز را به سرعت افشاء میکند، وجود حتی یک فرمانده دشمن کافی است تا فرماندهان وفادار متوجه وجود یک ایراد در برنامه عملیاتی برای رسیدن به اجماع شده و به کشف و خنثی کردن عامل نویز (خارج کردن عامل نویز از حلقه) بپردازند. بنابراین فرماندهان وفادار در مساله ژنرال پارسی دائما با یکدیگر در حال همکاری خواهند بود و رقابت کردن در آن به عنوان نوعی نویز شناخته شده و به سرعت از مدار خارج میگردد.

مدل اجماع Proof-of-Consistency

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

بر همین اساس، مدل جدیدی از برهان برای مدیریت نسل بعدی رمز ارز ها با نام Proof-of-Consistency طراحی و در bitcointalk منتشر شده است [7] که بر مبنای آن دو لایه متفاوت از فرماندهی با شرح وظایف متفاوت در شبکه قرار خواهند داشت که میزان پاداش آنها پس از اعمال یک نویز کنترل شده (اثر دیتر [8] ) بر عملکرد هر یک از آنها تعیین خواهد شد. لذا هر فرمانده (به جهت بالا بردن دقت حساسیت خود نسبت به وجود هر نوع عامل نویز مخرب) ملزم به شناسایی و اعلام میزان نویز اختصاصی خود است و در غیر اینصورت از دریافت پاداش محروم میگردد. همچنین سطح دوم از فرماندهان وظیفه دریافت و ارسال تراکنش های کاربران سیستم به فرماندهان سطح یک را بر عده دارند. این سطح تازه از فرماندهان میبایستی قبل از ارسال تراکنش کاربران به سطح یک فرماندهی، روی آنها محاسبات مربوط به حل یک مساله سخت را انجام دهند (PoW - Mining) و به این ترتیب یک فرمانده دشمن در سطح دوم توانایی مشغول کردن ظرفیت عملیاتی فرماندهان سطح یک با انواع تراکنش های بی معنی را از دست بدهد. اما از آنجایی که این کار را در رقابت با فرماندهان دیگر انجام نمیدهد، مدل کلاسیک PoW را به شدت ارتقاء داده و همه جوانب هدر رفت انرژی را از مجموعه حذف میکند [9]. مطالعه و مذاکره به منظور تولید نخستین رمز ارز بر مبنای مدل اجماع PoCo در جریان است.

References

[1] https://ntrs.nasa.gov/archive/nasa/casi.ntrs.nasa.gov/19870020666.pdf
[2] https://people.eecs.berkeley.edu/~luca/cs174/byzantine.pdf
[3] https://bitcoin.org/bitcoin.pdf
[4] http://goo.gl/Bg9Xn2
[5] https://twitter.com/shn_noursalehi
[6] https://way2pay.ir/131146
[7] https://bitcointalk.org/index.php?topic=5066624
[8] https://en.wikipedia.org/wiki/Dither
[9] https://twitter.com/shn_noursalehi/status/1081848330035097600

دسترسی سریع