تنوع کلاینت در بلاک چین | چرا برای امنیت شبکه‌ رمزارزها حیاتی است؟

تنوع کلاینت در بلاک چین چیست و چرا برای امنیت شبکه‌ رمزارزها حیاتی است؟

تاریخ انتشار:
مقالاتمحمدعلی عبیدی
46
زمان مطالعه:
41 دقیقه

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

تنوع کلاینت در بلاک چین چیست و چرا برای امنیت شبکه‌ رمزارزها حیاتی است؟

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

تنوع کلاینت در بلاک چین چیست؟

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

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

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

مفهوم Client در شبکه‌های غیرمتمرکز

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

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

بررسی تفاوت نود و کلاینت به زبان ساده

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

  • نود - Node: نود دقیقا نقش همان سخت‌افزار یا دستگاه فیزیکی را بازی می‌کند. نود در واقع همان کامپیوتر یا سروری است که دارای حافظه، پردازنده و اتصال دائم به اینترنت است و در گوشه‌ای از دنیا روشن مانده تا به پایداری شبکه‌ی بلاک چین کمک کند.
  • کلاینت - Client : کلاینت نقش سیستم عامل گوشی شما را دارد. کلاینت همان برنامه‌ای است که روی نود نصب می‌شود تا آن دستگاه بی‌جان بتواند با شبکه‌ی بلاک چین ارتباط برقرار کند، پیام بفرستد و وظایفش را انجام دهد.

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

بررسی تفاوت نود و کلاینت به زبان ساده | صرافی کیف پول من

نحوه‌ی اجرای یک بلاک چین توسط کلاینت‌های مستقل

شاید برای شما هم این سوال پیش آمده باشد که وقتی برنامه‌نویسان مختلف از سراسر جهان نرم‌افزارهای متفاوتی را می‌سازند، چگونه همه‌ی این برنامه‌ها می‌توانند در کنار هم یک شبکه‌ی یکپارچه و واحد را مدیریت کنند؟

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

چگونگی همگام‌سازی نرم‌افزارهای مختلف با یک پروتکل واحد

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

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

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

آشنایی با نقش کلاینت‌های لایه‌ی اجرا و لایه‌ی اجماع

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

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

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

چرا تسلط یک کلاینت خاص برای شبکه خطرناک است؟

وقتی درباره‌ی فناوری بلاک چین صحبت می‌کنیم، همواره روی کلمه‌ی غیرمتمرکز بودن تاکید می‌شود؛ یعنی هیچ فرد یا شرکت واحدی نباید کنترل سیستم را در دست داشته باشد. اما اگر بیشتر کامپیوترهای شبکه تصمیم بگیرند فقط از یک نرم‌افزار خاص برای اتصال استفاده کنند، چه اتفاقی می‌افتد؟

فرض کنید در یک شهر بزرگ، تمام ماشین‌ها فقط از یک مدل خاص از یک کارخانه‌ی مشخص باشند. اگر روزی کارخانه اعلام کند که موتور این مدل نقص فنی دارد، تمام شهر در یک لحظه فلج می‌شود و حمل‌ونقل از کار می‌افتد. در دنیای رمزارزها نیز تسلط یک کلاینت بر اکثریت شبکه، دقیقا همین حالت خطرناک را ایجاد می‌کند. وقتی یک نرم‌افزار سهم بزرگی از بازار را در اختیار می‌گیرد، خواسته یا ناخواسته به یک نقطه‌ی شکست منفرد (Single Point of Failure) تبدیل خواهد شد؛ یعنی بخشی حساس از سیستم که در صورت خرابی، باعث توقف کل مجموعه می‌شود.

باگ‌های نرم‌افزاری و خطر توقف پردازش تراکنش‌ها

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

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

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

متمرکز شدن قدرت و تضعیف امنیت ساختاری بلاک چین

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

  • تحمیل خطای انسانی: اگر تیم سازنده‌ی کلاینت مسلط، یک اشتباه کوچک در کدهای به‌روزرسانی جدید خود داشته باشند، این اشتباه مستقیما به کل شبکه تحمیل می‌شود و ممکن است باعث ایجاد یک فورک (Fork) یا دو شاخه شدن ناخواسته و تقسیم یک شبکه‌ی بلاک چین به دو مسیر کاملا مجزا و متفاوت شود؛ که در اینجا، بسیار مخرب است.
  • تبدیل شدن به هدفی جذاب برای هکرها: هکرها همیشه به دنبال راحت‌ترین راه برای ضربه زدن به سیستم هستند. وقتی آن‌ها بدانند با نفوذ به یک نرم‌افزار خاص می‌توانند کنترل بخش عظیمی از شبکه‌ی بلاک چین را مختل کنند، تمام تمرکز و حملات خود را روی همان کلاینت قرار می‌دهند.

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

متمرکز شدن قدرت و تضعیف امنیت ساختاری بلاک چین | صرافی کیف پول من

بررسی آستانه‌ی خطر در سهم بازار کلاینت‌ها

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

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

عبور از مرز ۳۳ درصد و خطر توقف نهایی‌سازی یا Finality

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

حالا فرض کنید یک کلاینت، ۳۵ درصد از سهم کل شبکه را در اختیار دارد و ناگهان به دلیل یک باگ نرم‌افزاری از کار می‌افتد. اتفاقاتی که در این شرایط رخ می‌دهد به این شرح است:

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

عبور از مرز ۶۶ درصد و فاجعه‌ی فورک ناخواسته‌ی شبکه

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

از آنجایی که این کلاینت اکثریت آرا را در اختیار دارد، می‌تواند تصمیم اشتباه خود را به عنوان حقیقت مطلق به کل شبکه تحمیل کند. این اتفاق منجر به ایجاد یک فورک (Fork) یا دو شاخه شدن شبکه و ایجاد یک مسیر یا تاریخچه‌ی جدید و نامعتبر از تراکنش‌ها می‌شود. در این حالت بحرانی:

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

مقایسه سطوح مختلف آسیب‌پذیری بر اساس درصد سهم کلاینت‌ها

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

درصد سهم کلاینت از شبکه

سطح خطر برای شبکه

نتیجه در صورت بروز باگ نرم‌افزاری در کلاینت

کمتر از ۳۳ درصد

کم‌خطر (محدوده‌ی امن)

شبکه بدون هیچ توقف یا مشکلی به کار خود ادامه می‌دهد و تراکنش‌ها به صورت عادی قطعی می‌شوند.

بین ۳۳ تا ۶۶ درصد

خطر متوسط

روند نهایی‌سازی متوقف می‌شود؛ تراکنش‌ها موقتا ثبت می‌شوند اما تا زمان رفع مشکل قطعی نخواهند بود.

بیشتر از ۶۶ درصد

خطر بحرانی (فاجعه)

فورک اشتباه رخ می‌دهد؛ اطلاعات نادرست نهایی می‌شوند و برای اصلاح نیازمند مداخله‌ی انسانی هستیم.

تاثیر Client Diversity در مهار بحران‌های گذشته‌ی شبکه

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

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

درس‌هایی از اختلالات تاریخی و نحوه‌ی نجات شبکه توسط تنوع نرم‌افزاری

نگاهی به گذشته‌ی شبکه‌ی اتریوم نشان می‌دهد که هرگاه یک کلاینت دچار نقطه‌ ضعف شده است، کلاینت‌های دیگر بار شبکه را به دوش کشیده‌اند. بیایید دو نمونه‌ی تاریخی و آموزنده را با هم مرور کنیم تا اهمیت این موضوع برایتان روشن‌تر شود:

  • حملات سال ۲۰۱۶ و تغییر سریع کلاینت: در اواخر سال ۲۰۱۶ میلادی، هکرها با ارسال پیام‌های بیهوده و پشت سر هم، یک حمله‌ی اسپم (Spam) یا ارسال حجم عظیمی از داده‌های بی‌ارزش و تکراری برای کند کردن یا از کار انداختن شبکه‌ی اتریوم انجام دادند. در آن زمان، بیشتر افراد از یک کلاینت خاص استفاده می‌کردند. این نرم‌افزار در برابر حجم عظیم این پیام‌های بیهوده کم آورد و پردازش شبکه به شدت کند شد. اما خوشبختانه یک نرم‌افزار جایگزین با ساختار کدهای کاملا متفاوت در شبکه وجود داشت که در برابر این حمله مقاوم بود. اعضای شبکه به سرعت نرم‌افزار خود را به این کلاینت دوم تغییر دادند و شبکه‌ی اتریوم توانست این بحران را بدون توقف پشت سر بگذارد.
  • بحران شبکه‌ی آزمایشی مدالا در سال ۲۰۲۰: برنامه‌نویسان همیشه قبل از اعمال تغییرات بزرگ، آن‌ها را در یک شبکه‌ی آزمایشی (Testnet) بررسی می‌کنند؛ یعنی محیط شبیه‌سازی شده و رایگانی که برای تست کدهای جدید قبل از اجرای آن‌ها در شبکه‌ی اصلی و واقعی استفاده می‌شود. در یکی از این تست‌های مهم به نام مدالا، یک کلاینت بسیار محبوب که سهمی بیش از ۶۶ درصد داشت، صرفا به دلیل یک خطای ساده در تنظیم ساعت داخلی خود از کار افتاد! همان‌طور که در بخش قبل یاد گرفتیم، این اتفاق باعث شد تایید نهایی تراکنش‌ها متوقف شود. اگر آن کلاینت آسیب‌دیده تنها نرم‌افزار موجود بود، کل شبکه برای همیشه قفل می‌شد و از بین می‌رفت. اما وجود کلاینت‌های اقلیت که همچنان سالم بودند و بدون مشکل کار می‌کردند، به شبکه کمک کردند تا زنده بماند و پس از انتشار نسخه‌ی اصلاح‌شده، دوباره به حالت عادی برگردد.

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

راهکارهای ایجاد و تشویق تنوع کلاینت در شبکه‌های واقعی

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

نقش توسعه‌دهندگان، مشوق‌های مالی و فرهنگ جامعه‌ی کاربری

برای این که برنامه‌های مختلف بتوانند در شبکه‌ی رمزارزها رشد کنند و سهم بازار را از برنامه‌های مسلط و محبوب پس بگیرند، به یک همکاری سه‌جانبه و قوی نیاز داریم:

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

چالش‌های اندازه‌گیری سهم بازار کلاینت‌ها و محدودیت‌های آماری

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

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

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

تنوع زیرساخت: چالشی مهم‌تر از تنوع نرم‌افزاری

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

تصور کنید در یک شهر، ماشین‌های متنوعی از برندهای مختلف وجود دارد (تنوع نرم‌افزاری)، اما برای خروج از شهر تنها یک پل ارتباطی نصب شده است. اگر این پل خراب شود، دیگر تفاوتی نمی‌کند که ماشین شما چقدر پیشرفته یا متفاوت است؛ هیچ‌کس نمی‌تواند از شهر خارج شود!

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

خطرات وابستگی نودها به سرورهای ابری متمرکز

بسیاری از افرادی که می‌خواهند به عنوان نود در شبکه‌ی بلاک چین فعالیت کنند، به جای خرید تجهیزات گران‌قیمت خانگی، از سرور ابری (Cloud Server) استفاده می‌کنند؛ یعنی کامپیوترهای قدرتمندی که توسط شرکت‌های بزرگ در مراکزی امن نگهداری می‌شوند و شما می‌توانید آن‌ها را از طریق اینترنت اجاره و کنترل کنید.

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

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

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

اهمیت توزیع جغرافیایی سخت‌افزارها برای حفظ پایداری شبکه

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

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

توزیع جغرافیایی سخت‌افزارها برای حفظ پایداری شبکه | صرافی کیف پول من

راهنمای امن برای تغییر کلاینت ویژه‌ی اعتبارسنج‌ها

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

مراحل فنی و کلیدی برای مهاجرت ولیدیتورها بین کلاینت‌های مختلف

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

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

معرفی ابزارها و کلاینت‌های معتبر جایگزین

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

  • در لایه‌ی اجرا: به جای استفاده از نرم‌افزارهای بسیار شلوغ و مسلط، می‌توانید از کلاینت‌های معتبری مانند ندرمایند (Nethermind) یا بسو (Besu) استفاده کنید. این برنامه‌ها توسط تیم‌های حرفه‌ای پشتیبانی می‌شوند و عملکرد بسیار پایداری دارند.
  • در لایه‌ی اجماع: برای این بخش نیز کلاینت‌هایی مانند نیمبوس (Nimbus) که برای سیستم‌های ضعیف‌تر بهینه‌سازی شده است، یا کلاینت تکو (Teku) که برای کاربران حرفه‌ای و امنیتی طراحی شده، انتخاب‌های فوق‌العاده‌ای محسوب می‌شوند.

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

اهمیت تنوع کلاینت در سایر شبکه‌ها فراتر از اتریوم

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

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

وضعیت تمرکز یا تنوع نرم‌افزاری در بیت کوین و سایر بلاک چین‌ها

برای درک بهتر این موضوع در سایر بازارها، بیایید نگاهی به پادشاه ارزهای دیجیتال، یعنی بیت کوین بیندازیم. وضعیت در شبکه‌ی بیت کوین کاملا متفاوت از اتریوم است. در این شبکه، یک نرم‌افزار بسیار قدرتمند و قدیمی به نام بیت کوین کور (Bitcoin Core) وجود دارد؛ یعنی نرم‌افزار اصلی و مرجع شبکه‌ی بیت کوین که بیش از ۹۰ درصد کاربران در سراسر جهان از آن استفاده می‌کنند، و تقریبا تمام سهم بازار را در قبضه‌ی خود گرفته است.

این تسلط مطلق، شبکه‌ی بیت کوین را در وضعیتی به نام تک‌کشتی (Monoculture) قرار داده است؛ اصطلاحی در کشاورزی که به کاشت فقط یک نوع محصول در یک زمین وسیع اشاره دارد و در دنیای فناوری به معنای استفاده‌ی همگانی از یک نرم‌افزار واحد است. اما آیا این وضعیت برای بیت کوین خطرناک است؟ در این باره دو دیدگاه متفاوت وجود دارد:

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

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

وضعیت تمرکز یا تنوع نرم‌افزاری در بیت کوین و سایر بلاک چین‌ها | صرافی کیف پول من

محدودیت‌های Client Diversity و دلایل شکست احتمالی آن

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

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

چرا توسعه و نگهداری کلاینت‌های متعدد کار دشواری است؟

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

  • هزینه‌ی بالای توسعه و کمبود متخصص: برای ساخت یک نرم‌افزار جدید که بتواند میلیاردها دلار سرمایه‌ی کاربران را با امنیت کامل و بدون وقفه مدیریت کند، به تیم‌های برنامه‌نویسی بسیار حرفه‌ای و نخبه نیاز است. تامین حقوق این افراد و پرداخت هزینه‌های مداوم برای پشتیبانی نرم‌افزار، بار مالی سنگینی برای بنیادهای حامی شبکه به همراه دارد.
  • خطر تفسیر متفاوت از قوانین مشترک: همان‌طور که در بخش‌های قبل اشاره کردیم، تمام کلاینت‌ها باید از یک پروتکل یا دفترچه‌ی راهنمای واحد پیروی کنند. اما از آنجایی که زبان برنامه‌نویسی هر کلاینت متفاوت است، گاهی اوقات ممکن است دو تیم مختلف، یک قانون بسیار پیچیده را به دو شکل کمی متفاوت در کدهای خود پیاده‌سازی کنند. این تفاوت‌های جزئی در درک قوانین، می‌تواند باعث بروز خطای اجماع (Consensus Failure) شود؛ وضعیتی که در آن نرم‌افزارهای مختلف در مورد درستی یک تراکنش به توافق نمی‌رسند و شبکه دچار سردرگمی یا دوپارگی می‌شود.
  • چالش هماهنگی در به‌روزرسانی‌ها: شبکه‌های بلاک چین برای پیشرفت و رفع ایرادات خود، دائما به هارد فورک (Hard Fork) نیاز دارند؛ یعنی به‌روزرسانی‎های بزرگ و اساسی در قوانین شبکه که تمام کاربران مجبورند نرم‌افزار خود را با آن تطبیق دهند. وقتی شبکه دارای چندین کلاینت مختلف باشد، تمام تیم‌های سازنده باید کدهای جدید را دقیقا در یک زمان مشخص و بدون کوچک‌ترین خطایی روی نرم‌افزارهای خود اعمال کنند. هرگونه تاخیر یا اشتباه از سوی تنها یکی از این تیم‌ها، می‌تواند نظم کل شبکه را به هم بریزد.

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

تاثیر تنوع نرم‌افزاری و زیرساختی بر تجربه‌ی کاربران نهایی

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

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

چگونه امنیت دارایی و سرعت تراکنش شما به وضعیت کلاینت‌ها گره خورده است؟

وضعیت سلامت کلاینت‌ها و زیرساخت‌های شبکه، به طور مستقیم روی سه فاکتور بسیار مهم زمان، پول و آرامش خاطر، برای شما به عنوان کاربر نهایی تاثیر می‌گذارد. بیایید ببینیم این ارتباط چگونه شکل می‌گیرد:

  • تایید سریع و بدون وقفه‌ی تراکنش‌ها: زمانی که شبکه از تنوع بالایی برخوردار باشد، حتی اگر یک نرم‌افزار خاص دچار داون‌تایم (Downtime) یا قطعی و از کار افتادن موقت سیستم یا سرور کامپیوتری شود، سایر کلاینت‌ها بلافاصله جای خالی آن را پر می‌کنند. در نتیجه، شما هنگام انتقال دارایی به کیف پول خود، با تاخیرهای کلافه‌کننده یا خطای شبکه روبه‌رو نمی‌شوید و تراکنش شما در همان زمان معمول و با سرعت بالا پردازش می‌شود.
  • حفظ ارزش و امنیت دارایی‌ها: در بخش‌های قبل یاد گرفتیم که اگر یک کلاینت مسلط دچار باگ شود، ممکن است شبکه دو شاخه شده و اطلاعات اشتباه ثبت شود. در این شرایط بحرانی، معمولا صرافی‌ها برای جلوگیری از ضرر، موقتا برداشت و واریز را متوقف می‌کنند. همچنین اگر در حال استفاده از دیفای (DeFi) یا سیستم‌های مالی غیرمتمرکز و بدون واسطه بانکی مانند صرافی و خدمات وام‌دهی باشید، ممکن است دارایی شما به دلیل این اختلالات به خطر بیفتد. تنوع کلاینت، سپر دفاعی نامرئی شما در برابر این خطرات است.
  • جلوگیری از افزایش ناگهانی کارمزدها: وقتی بخشی از کامپیوترهای شبکه به دلیل خرابی یک کلاینت محبوب از مدار خارج می‌شوند، ظرفیت کلی شبکه برای تایید تراکنش‌ها کاهش می‌یابد. در این حالت شلوغ و پرترافیک، کاربران مجبورند برای تایید شدن تراکنش خود، گس فی (Gas Fee) یا کارمزد شبکه بسیار بیشتری بپردازند. شبکه‌ای که تنوع نرم‌افزاری خوبی داشته باشد، ظرفیت خود را همواره حفظ کرده و از تحمیل هزینه‌های نجومی و ناگهانی به کاربران جلوگیری می‌کند.

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

منابع و مراجع
1 مرجع
1
Spark.Money
آیا محتوا مفید بود؟

سوالات متداول

دیدگاه‌های کاربران

تاکنون هیچ کسی نظری ثبت نکرده، شما اولین نفر باشید

افزودن دیدگاه

با ثبت‌نام در صرافی کیف پول من و ارسال نظر در سایت ارز دیجیتال رایگان هدیه بگیرید.
به این مطلب چند امتیاز می‌دهید؟
انتخاب کنید

دنبال آخرین اخبار بازار هستید؟

قیمت لحظه‌ای، رویدادها و تحلیل‌های روزانه را در اتاق خبر کیف پول مدیا دنبال کنید.

بریم به اتاق خبر

ویدئو رسانه

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