مهدی استوی
مهدی استوی
خواندن ۳ دقیقه·۴ سال پیش

دلایل تمرکز زدایی در بلاک‌چین: تحمل‌پذیری خطا در ساختارهای غیر متمرکز



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

در رابطه با تحمل خطا، بحث اصلی ساده است. احتمال چه رخدادی کمتر است: خرابی یک رایانه یا خرابی همزمان پنج رایانه از مجموع ده تا؟ ایجاد ویژگیِ تحمل‌پذیری، قاعده‌ای بحث‌برانگیز است و معمولا در ابزارهای متعددی در زندگی واقعی استفاده می‌شود. ابزارهایی مانند: موتور جت، ژنراتورهای برق اضطراریِ مکان‌هایی مانند بیمارستان‌ها، زیرساخت‌های نظامی، متنوع‌سازی پرتفوی[1] مالی و البته، شبکه‌های رایانه‌ای.

اما نتیجه‌ای که از این نوع تمرکززدایی (تحمل‌پذیریِ خطا) به‌دست می‌آید، همزمان که مؤثر و بسیار مهم است، معمولا از آنچه که توسط مدل ریاضیاتی پیش‌بینی می‌شود، ضعیف‌تر است. دلیل این امر خطای حالت مشترک است. البته که احتمال خرابی همزمان[2] چهار موتور جت از احتمال خرابی یکی از آنها کمتر است، اما اگر هر چهار موتور در کارخانه‌ای یکسان ساخته شده باشند و کارمندی تبهکار، خطایی در هر چهارتای آنها ایجاد کرده باشد، آن‌وقت چه؟

آیا بلاک‌چین‌ها، با همین شکل امروزی‌شان، می‌توانند سیستم‌ها را در برابر خطای حالت مشترک محافظت کنند؟ نه الزاما. این سناریوها را در نظر بگیرید:

  • در بلاک‌چین همه‌ی گره‌ها[3] از نرم‌افزار کاربری[4] یکسانی استفاده می‌کنند و در این نرم‌افزار کاربری، خطایی[5] پیدا می‌شود.
  • همه‌ی گره‌ها در بلاک‌چین از نرم‌افزار کاربری یکسانی استفاده می‌کنند و معلوم می‌شود که تیم توسعه‌دهنده‌ی این نرم‌افزار دچار فساد اجتماعی (برای مثال کلاهبرداری) است.
  • معلوم می‌شود که تیم پژوهشی‌ای که به‌روزرسانی پروتکل‌ها را انجام می‌دهد، دچار فساد اجتماعی است.
  • در بلاک‌چینِ گواهی اثبات کار[6]، ۷۰ درصد از استخراج‌کنندگان[7] در کشور یکسانی زندگی می‌کنند و حکومت این کشور تصمیم می‌گیرد تا، به‌خاطر اهداف امنیت ملی، همه‌ي مزارع استخراج[8] را مصادره کند.
  • اکثر سخت‌افزارهای استخراج توسط شرکتی یکسان ساخته شده‌اند و این شرکت، با رشوه یا تهدید، مجبور به ایجاد راهی پنهان برای خاموش کردن این سخت‌افزار می‌شود.
  • در بلاک‌چینِ گواهی اثبات سهام[9]، ۷۰ درصد از سکه‌های مورد بحث در یک صرافی[10] خاص نگهداری می‌شوند.

در نگاهی همه‌جانبه به موضوع تحمل‌پذیریِ خطا و تمرکززدایی، به همه‌ی این جنبه‌ها نگریسته می‌شود و برای به حداقل رساندن آنها تلاش می‌شود. برخی از نتیجه‌گیری‌های ذاتی (که مسلم هستند) عبارتند از:

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

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


در بخش بعد مورد دوم از سه دلیل اصلی تمرکز زدایی (مقاومت در برابر حمله) را تحلیل می‌کنیم.


پروفایل انگلیسی مهدی استوی


[1] portfolio

[2] common mode failure

[3] Node

[4] client software

[5] Bug

[6] proof of work

[7] miner

[8] mining farm

[9] proof of stake

[10] exchange


بلاک‌چینآموزش بلاکچین
مدیرعامل و عضو هیأت مدیره شرکت دانش بنیان داده‌پرداز پویای شریف
شاید از این پست‌ها خوشتان بیاید