رفتن به محتوای اصلی
کوهستان
توضیح کوهستانپروتکل‌های اجماعگزارش تحلیلی· 4 دقیقه مطالعه· در دیدگاه‌ها

الزام 3f+1: چرا اجماع توزیع‌شده از نظر ریاضی به بیش از دو سوم نودهای صادق نیاز دارد

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

به قلم بابک ناصری

به‌طور خلاصه

  1. سیستم‌های توزیع‌شده‌ای که به قطعیت قطعی نیاز دارند، نمی‌توانند رفتار مخرب یک‌سوم یا بیشتر از نودهای خود را تحمل کنند.
  2. فرمول 3f+1 تضمین می‌کند که در طول رای‌گیری حد نصاب، تعداد نودهای صادق همیشه از نودهای مخرب بیشتر خواهد بود، حتی اگر سایر نودهای صادق آفلاین باشند.
  3. الگوریتم تحمل خطای بیزانسی عملی (PBFT) که در سال ۱۹۹۹ منتشر شد، این مرز ریاضی را در شبکه‌های ناهمگام ثابت کرد.

وقتی معمار یک شبکه توزیع‌شده تصمیم می‌گیرد سیستمش در برابر چه تعداد نود مخرب تاب بیاورد، با یک محدودیت ریاضیاتی سخت‌گیرانه روبه‌روست: شبکه تنها زمانی می‌تواند در برابر خرابی‌ها مقاومت کند که بیش از دو سوم مشارکت‌کنندگانش صادق بمانند. این مرز که به عنوان الزام 3f+1 شناخته می‌شود، حکم می‌کند که برای بقا در برابر تعداد مشخصی از نودهای معیوب (f)، اندازه کل شبکه باید حداقل 3f+1 باشد.

هر بار که یک پروتکل غیرمتمرکز تراکنشی را تایید می‌کند، دقیقاً همین آستانه را به آزمون می‌گذارد. اگر سیستمی به قطعیت قطعی نیاز داشته باشد - به این معنی که تراکنش به محض تایید، برای همیشه غیرقابل بازگشت باشد - راه فراری از این محدودیت ۳۳٫۳ درصدی ندارد.[1][3]

ضرورت این نسبت ریشه در «مسئله ژنرال‌های بیزانسی» دارد؛ یک معمای منطقی که در سال ۱۹۸۲ توسط دانشمندان علوم کامپیوتر، لزلی لمپورت، رابرت شوستاک و مارشال پیس فرمول‌بندی شد. همان‌طور که River Financial توضیح می‌دهد، این سناریو ژنرال‌های متحدی را تصور می‌کند که شهری را محاصره کرده‌اند و باید بر سر حمله یا عقب‌نشینی به توافق برسند.

مستندات اشاره می‌کنند: «اگر آن‌ها به اجماع نرسند، حمله شکست خواهد خورد» و تاکید می‌کنند که ژنرال‌های خائن ممکن است پیام‌های متناقضی بفرستند تا وفاداران را گیج کنند. در علوم کامپیوتر مدرن، این ژنرال‌ها همان سرورها هستند و خائنان، نودهای در معرض خطری هستند که داده‌های متناقضی را به بخش‌های مختلف شبکه ارسال می‌کنند.[5][6]

اثبات ریاضی مرز 3f+1 بر اشتراک حد نصاب‌های رای‌گیری استوار است. اگر شبکه‌ای در مجموع N نود داشته باشد و f تعداد از آن‌ها معیوب باشند، یک نود صادق که منتظر دریافت پیام است، تنها می‌تواند با اطمینان منتظر N منهای f پاسخ بماند، زیرا f نود معیوب ممکن است به سادگی آفلاین شوند و هرگز پاسخی ندهند.

با این حال، در میان همان N منهای f پاسخ، هنوز هم ممکن است تا f پاسخ متعلق به نودهای مخربی باشد که فعالانه دروغ می‌گویند. برای اطمینان از اینکه در این بدترین سناریوی ممکن، تعداد نودهای صادق از دروغ‌گوها بیشتر است، تعداد پاسخ‌های صادقانه (N منهای 2f) باید اکیداً بیشتر از تعداد پاسخ‌های مخرب (f) باشد. حل نامعادله N - 2f > f نتیجه N > 3f را به دست می‌دهد؛ به این معنی که حداقل اندازه شبکه باید 3f+1 باشد.[3][5]

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

این مرز نظری در سال ۱۹۹۹ به مهندسی کاربردی تبدیل شد؛ زمانی که محققان دانشگاه MIT، میگل کاسترو و باربارا لیسکوف، الگوریتم تحمل خطای بیزانسی عملی (PBFT) را منتشر کردند. مقاله آن‌ها نشان داد که چگونه یک سیستم می‌تواند هزاران درخواست در ثانیه را پردازش کند و در عین حال در برابر نودهای در معرض خطر دوام بیاورد، به شرطی که قانون 3f+1 رعایت شود.

کاسترو و لیسکوف نوشتند: «ما یک سیستم توزیع‌شده ناهمگام را فرض می‌کنیم که در آن نودها ممکن است با سرعت‌های کاملاً متفاوتی کار کنند» و ثابت کردند که اگر سهم نودهای مخرب به یک‌سوم برسد، توافق قطعی از نظر ریاضی غیرممکن است.[1]

معماری‌های مدرن بلاک‌چین اغلب تلاش می‌کنند این محدودیت را دور بزنند، اما ریاضیات همچنان سرسخت و غیرقابل تغییر است. بر اساس بررسی جامع پروتکل‌های اجماع که در arXiv منتشر شده است، سیستم‌هایی که ادعای تحمل خطای بالاتری دارند - مانند آستانه ۵۰ درصدی که اغلب به اجماع ناکاموتو در بیت‌کوین نسبت داده می‌شود - باید مفروضات شبکه همگام را وارد کنند یا قید قطعیت قطعی را بزنند.

در این مدل‌های احتمالی، توافق در لحظه ایجاد هرگز مطلق نیست؛ بلکه تنها با گذشت زمان و اضافه شدن بلاک‌های بیشتر، احتمال آن افزایش می‌یابد.[2]

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

تنش میان این مدل‌ها، مهندسی غیرمتمرکز امروزی را تعریف می‌کند. تحلیل Hacken از مکانیسم‌های اجماع خاطرنشان می‌کند که اگرچه اثبات کار و اثبات سهام جریمه‌های اقتصادی برای رفتارهای مخرب در نظر می‌گیرند، اما پروتکل‌های ارتباطی زیربنایی همچنان هنگام نهایی کردن تغییرات وضعیت، با آستانه بیزانسی دست و پنجه نرم می‌کنند. اگر شبکه‌ای در لحظه نوشته شدن یک بلاک به اطمینان مطلق و غیرقابل بازگشت نیاز داشته باشد، انگیزه‌های اقتصادی کافی نیستند؛ سیستم باید در چارچوب محدودیت 3f+1 عمل کند.[4]

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

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

نتیجه‌گیری اساسی برای طراحان پروتکل این است که همگامی شبکه و قطعیت، به طور جدایی‌ناپذیری با تحمل خطا در ارتباط هستند. تا زمانی که یک سیستم باید در بستر اینترنت غیرقابل پیش‌بینی کار کند که در آن تاخیر پیام‌ها هیچ حد و مرزی ندارد، قانون 3f+1 به عنوان سقف مطلق برای توافق بدون نیاز به اعتماد عمل می‌کند.[1][7]

اصطلاحات کلیدی

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

پرسش‌های متداول

چه اتفاقی می‌افتد اگر ۳۳ درصد از نودها مخرب شوند؟

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

چرا این محدودیت 3f+1 است و یک اکثریت ساده ۵۱ درصدی نیست؟

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

آیا بیت‌کوین از قانون 3f+1 استفاده می‌کند؟

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

بررسی عمیق دیدگاه‌ها

مدافعان قطعیت قطعی

استدلال می‌کنند که سیستم‌ها باید قطعیت مطلق ریاضی و تغییرات وضعیت غیرقابل بازگشت را در اولویت قرار دهند.

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

طرفداران اجماع احتمالی

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

مدافعان اجماع به سبک ناکاموتو استدلال می‌کنند که الزامات سخت‌گیرانه قطعیت قطعی، به طور غیرضروری مقیاس‌پذیری و مشارکت در شبکه را محدود می‌کند. با فرض یک شبکه تا حدی همگام و تکیه بر انگیزه‌های اقتصادی (مانند اثبات کار یا اثبات سهام)، این سیستم‌ها از نظر تئوری می‌توانند تا ۵۰ درصد بازیگران مخرب را تحمل کنند. آن‌ها می‌پذیرند که قطعیت تنها ماهیتی احتمالی دارد - به این معنی که یک تراکنش هرگز کاملاً قطعی نیست، بلکه فقط با گذشت زمان بازگرداندن آن به طور تصاعدی دشوارتر می‌شود - اما استدلال می‌کنند که این مصالحه برای شبکه‌های جهانی و بدون نیاز به مجوز که در آن‌ها به حداکثر رساندن مشارکت هدف اصلی است، قابل قبول است.

مدافعان قطعیت قطعی 45%طرفداران اجماع احتمالی 35%حسابرسان امنیت پروتکل 20%
مدافعان قطعیت قطعی
استدلال می‌کنند که سیستم‌ها باید قطعیت مطلق ریاضی و تغییرات وضعیت غیرقابل بازگشت را در اولویت قرار دهند و محدودیت خطای ۳۳ درصدی را به عنوان یک الزام بپذیرند.
طرفداران اجماع احتمالی
برای تحمل خطای بالاتر (تا ۵۰ درصد) و مقیاس‌پذیری ارزش قائل هستند و می‌پذیرند که قطعیت ماهیتی احتمالی دارد و به مفروضات شبکه همگام متکی است.
حسابرسان امنیت پروتکل
بر پیاده‌سازی عملی این محدودیت‌های ریاضی تمرکز دارند و تحلیل می‌کنند که چگونه انگیزه‌های اقتصادی و شرایط شبکه بر آستانه‌های نظری تأثیر می‌گذارند.

دیدگاه‌هایی که این گزارش پوشش نداده

  • ارائه‌دهندگان زیرساخت‌های سخت‌افزاری که نودهای فیزیکی را مدیریت می‌کنند
  • پذیرندگان سازمانی بلاک‌چین که به تضمین‌های سخت‌گیرانه قطعیت نیاز دارند

منابع

پوشش منابع

7 منبع

3 دیدگاه شناسایی‌شده

مدافعان قطعیت قطعی 45%طرفداران اجماع احتمالی 35%حسابرسان امنیت پروتکل 20%
  1. [1]MIT CSAIL Computer Systems Security Groupمدافعان قطعیت قطعی

    Practical Byzantine Fault Tolerance

    مطالعه در MIT CSAIL Computer Systems Security Group →
  2. [2]arXivطرفداران اجماع احتمالی

    Why No Consensus on Consensus? A Deep Dive into Blockchain Consensus Protocols

    مطالعه در arXiv →
  3. [3]GeeksforGeeksمدافعان قطعیت قطعی

    Minimum number of nodes to achieve Byzantine Fault Tolerance

    مطالعه در GeeksforGeeks →
  4. [4]Hacken.ioحسابرسان امنیت پروتکل

    Consensus Mechanisms In Blockchain: A Deep Dive Into The Different Types

    مطالعه در Hacken.io →
  5. [5]Wikipediaمدافعان قطعیت قطعی

    Byzantine fault

    مطالعه در Wikipedia →
  6. [6]River Financialطرفداران اجماع احتمالی

    What Is the Byzantine Generals Problem?

    مطالعه در River Financial →
  7. [7]تیم سردبیری کوهستانحسابرسان امنیت پروتکل

    تحلیل تیم سردبیری کوهستان

    مطالعه در تیم سردبیری کوهستان →

نظرات

همیشه در جریان باشید

هر زاویه. هر روز.

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