نود (Node) چیست؟
رپرتاژ آگهی: بنابراین اگر در حوزه ارزهای دیجیتال و بیت کوین فعال هستید، خوب است که علاوه بر معامله و اطلاع از قیمت رمزارزها، از خود این فناوری نیز شناخت کافی داشته باشید. یکی از مفاهیم مهم حوزه بلاکچین، نودها (Node) یا گرههای ارز دیجیتال هستند که انواع مختلفی دارند و هریک وظیفه خاصی را در شبکه ایفا میکنند. اگر دوست دارید بیشتر با انواع نود در بلاکچین و نقشهای مختلف آنها آشنا شوید، ادامه این مطلب را از دست ندهید.
بلاکچین چیست؟
بلاکچین یکی از فناوریهای دیجیتال جدید است که به گروهها یا افراد مختلف اجازه میدهد دادههای خود را کاملاً امن و شفاف، به صورت غیرمتمرکز و غیرقابل تغییر یا دستکاری ذخیره کرده و با هم به اشتراک بگذارند. در واقع هسته اصلی بلاکچین یک دفتر کل (ledger) توزیعشده است که سوابق تراکنشها را به ترتیب زمانی و به شیوهای غیرقابل بازگشت ثبت میکند. در یک زنجیره بلاکچین، هر بلاک حاوی مجموعهای از تراکنشها است که مشارکتکنندگان شبکه آنها را صحتسنجی کردهاند، و وقتی به زنجیره اضافه میشوند دیگر امکان تغییر دادن یا حذف آنها وجود ندارد.
یکی از ویژگیهای اصلی فناوری بلاکچین، معماری غیرمتمرکز (decentralized) آن است که باعث میشود دیگر برای مدیریت تراکنشها نیازی به یک نهاد ناظر مرکزی یا واسط نباشد. در عوض، شبکهای از نودها با استفاده از یک الگوریتم اجماع (consensus) در کنار هم کار میکنند و صحتسنجی و پردازش تراکنشها را انجام میدهند. با این کار، سیستم شفافی ایجاد میشود که در آن سهم تمام مشارکتکنندگان در صحتسنجی و پردازش تراکنشها با هم برابر خواهد بود.
اولین و مشهورترین محصولی که به کمک فناوری بلاکچین پیادهسازی شد بلاکچین بیت کوین است که سال ۲۰۰۹ فرد یا گروهی ناشناس با نام مستعار ساتوشی ناکاموتو آن را معرفی کرد. از آن زمان تا کنون پلتفرمهای بلاکچینی مختلفی پدید آمدهاند که هر یک از آنها ویژگیها، کاربردها و مکانیزمهای اجماع خاص خود را دارند.
نود بلاکچینی چیست؟
نود بلاکچینی (BlockChain Node) در واقع کامپیوتر یا دستگاهی است که به شبکه بلاکچین متصل میشود و در حفظ یکپارچگی سیستم مشارکت میکند. هر نود یک کپی از دفتر کل بلاکچین را نگه میدارد، تراکنشهای جدید را صحتسنجی میکند، و در مکانیزم اجماع که امنیت شبکه را تأمین میکند مشارکت دارد. به عبارت دیگر، نود یکی از اجزای بنیادین سازنده شبکه بلاکچین است و بدون آن، بلاکچین نمیتواند درست کار کند.
هر کسی که اینترنت مناسب و منابع پردازشی کافی داشته باشد میتواند یک نود راهاندازی کند. نودها را میتوان روی کامپیوترهای دسکتاپ، سرورها یا حتی دستگاههای خاصی مثل کیف پولهای سختافزاری اجرا کرد. همچنین میتوانید نودها را به شیوههای مختلفی تنظیم یا بهاصطلاح کانفیگ کنید که برای مقاصد مختلفی مثل صحتسنجی تراکنشها، ماین کردن بلاکهای جدید، یا مشارکت در یک الگوریتم اجماع خاص قابل استفاده باشد.
نودهای بلاکچین برای اینکه مطمئن شوند نسخه یکسانی از دفتر کل بلاکچین را نگه داشتهاند با هم در ارتباط هستند. این ارتباط از طریق فرآیندی تحت عنوان شبکهسازی همتا به همتا (peer-to-peer) انجام میشود که در آن، هر نود فهرستی از سایر نودهایی که به آنها متصل است نگه میدارد و اطلاعات را با آنها مبادله میکند. وقتی تراکنش جدیدی شروع میشود، به کل شبکه مخابره میشود و هر نودی که آن را دریافت میکند، پیش از اضافه کردن آن به نسخه بلاکچین خود، آن را صحتسنجی میکند.
همچنین وقتی بلاک جدیدی استخراج و به زنجیره اضافه میشود، تمام نودها نسخه دفتر کل خود را بهروز میکنند تا وضعیت جدید شبکه را به نمایش بگذارند. نودها به این شیوه در کنار هم کار میکنند تا امنیت، یکپارچگی و درستی سیستم بلاکچین را تضمین کنند.
نحوه کار نود ارز دیجیتال
نودهای ارز دیجیتال نوعی از نودهای بلاکچینی هستند که به طور خاص در اعتبارسنجی تراکنشها و نگهداری دفتر کل یک ارز دیجیتال خاص مشارکت دارند. هر یک از این نودها به کمک یک نرمافزار تخصصی کار میکنند. این نرمافزار با استفاده از یک پروتکل همتا به همتا با سایر نودهای روی شبکه ارتباط برقرار میکند. این نرمافزار برای انجام کارهای مختلفی مثل اعتبارسنجی تراکنشها، نگهداری یک نسخه از دفتر کل بلاکچین و مشارکت در مکانیزم اجماع برای امن کردن شبکه طراحی شده است.
وقتی تراکنش جدیدی شروع میشود، به کل شبکه مخابره شده و هر نودی که آن را دریافت کند، بر اساس مجموعهای از قواعد از پیش تعریفشده آن را اعتبارسنجی میکند. از جمله موارد اعتبارسنجی این است که بررسی میکند تراکنش به درستی امضا شده باشد، فرستنده بودجه کافی برای اجرای تراکنش داشته باشد، و اینکه تراکنش برای دو بار خرج کردن (double spending) اجرا نشده باشد. وقتی تراکنش اعتبارسنجی شد، به استخر تراکنشهای تأییدنشدهای که در انتظار ورود به بلاک بعدی هستند اضافه میشود.
نودهای ارز دیجیتال در مکانیزم اجماع هم مشارکت دارند که مشخص میکند کدام بلاکها به بلاکچین اضافه میشوند. بسته به اینکه ارز دیجیتال مورد نظر از چه الگوریتمی برای اجماع استفاده کند، نودهای آن وظایف مختلفی مثل ماینینگ، استیکینگ یا رأی دادن برای رسیدن به اجماع درباره اعتبار بلاکهای جدید را بر عهده خواهند داشت. برای مثال در مکانیزم اجماع اثبات کار (proof-of-work) نودها برای حل مسائل پیچیده ریاضی با هم رقابت میکنند تا حق افزودن بلاک بعدی به زنجیره را به دست بیاورند.
اهمیت نود در شبکه بلاکچین
همانطور که پیش از این هم اشاره کردیم، نودهای بلاکچینی وظایف مختلفی بر عهده دارند و یکی از اجزای اصلی سیستم بلاکچین محسوب میشوند. انجام این وظایف است که باعث میشود شبکه بلاکچین بتواند به شکلی غیرمتمرکز و پایدار به عملکرد خود ادامه دهد. بدون نودها شبکه بلاکچین در برابر حملات آسیبپذیر خواهد بود و امکان عملکرد غیرمتمرکز و شفاف را که از ویژگیهای کلیدی آن است، نخواهد داشت.
نودهای بلاکچین وظیفه اعتبارسنجی تراکنشها و مشارکت در مکانیزم اجماع را بر عهده دارند که به امن شدن شبکه بلاکچین کمک میکند. همچنین نودها نقش مهمی در حفظ معماری غیرمتمرکز شبکههای بلاکچینی ایفا میکنند و اجازه میدهند تا هرکسی بتواند با اتصال به اینترنت در اعتبارسنجی و پردازش تراکنشها نقش داشته باشد. نودها با نگهداری یک نسخه کامل و بینقص از بلاکچین، شفافیت و غیرقابل تغییر بودن آن را تضمین میکنند.
نحوه راهاندازی یک نود ارز دیجیتال
راهاندازی یک نود ارز دیجیتال فرآیند چندان پیچیدهای ندارد اما مراحل دقیق آن به ارز دیجیتالی که انتخاب میکنید بستگی دارد. به طور کلی برای راه اندازی نود باید چند مرحله را طی کنید که این مراحل عبارتند از:
-
انتخاب ارز دیجیتال
-
نصب نرمافزار نود
-
انجام تنظیمات نود
-
همگامسازی با بلاکچین
-
پیوستن به شبکه
-
نگهداری نود (maintenance)
بعد از اینکه ارز دیجیتال مورد نظرتان را انتخاب کردید، بررسی کنید که راهاندازی نود روی شبکه آن چه نیازمندیهایی دارد و ریسکها و مزایای احتمالی آن چیست. سپس نرمافزاری را که تیم توسعه آن ارائه کرده است نصب کنید تا بتوانید به شبکه متصل شوید. سپس بر اساس دستورالعملهای ارائه شده کانفیگهای لازم را انجام دهید. بعد از انجام کانفیگها نود شما باید یک نسخه از دفتر کل بلاکچین را از نودهای دیگر دانلود کند و با شبکه همگام (synchronize) شود.
در نهایت نود شما به شبکه میپیوندد و از آن به بعد میتوانید تراکنشها را اعتبارسنجی کنید و در مکانیزمهای اجماع مشارکت داشته باشید. بعد از راهاندازی نود ارز دیجیتال خودتان باید نرمافزار را بهروز نگه دارید و در صورت انتشار پچهای امنیتی، بهروزرسانیهای لازم را انجام دهید تا در عملکرد شبکه اختلالی ایجاد نشود.
انواع نودهای بلاکچینی و قابلیتهای آنها
نودهای بلاکچینی انواع مختلفی دارند که هر یک از آنها برای انجام وظایف مشخصی در شبکه راهاندازی میشوند. در این قسمت به طور مختصر با هر یک از آنها آشنا خواهیم شد.
فول نود (Full Node) یا گره کامل
فول نود یا نود کامل در شبکه بلاکچین به نودهایی گفته میشود که یک نسخه کامل از دفتر کل بلاکچین را نگهداری میکنند و مسئولیت اعتبارسنجی و تأیید تراکنشها را روی شبکه بر عهده دارند. فول نودها میتوانند تراکنشها و بلاکهای جدید را به سایر نودهای روی شبکه مخابره (broadcast) کنند. فول نودها به منابع سختافزاری قوی و فضای ذخیرهسازی زیادی نیاز دارند و برای حفظ یکپارچگی و امنیت شبکه ضروری هستند.
لایت نود (Light Node) یا نود SPV
لایت نود یا نود سبک (که به آن نود SPV یا Simplified Payment Verification هم میگویند) یک نسخه سبک از فول نود است که نسخه کامل بلاکچین را نگهداری نمیکند. در عوض، نودهای سبک برای تأیید تراکنشها به سایر نودها وابستهاند و فقط بخشی از اطلاعات بلاکچین را نگه میدارند. این ویژگی باعث شده تا منابع کمتری مصرف کنند اما به همین علت در مقایسه با فول نودها امنیت کمتری دارند.
ماینینگ نود یا گرههای ماینر
ماینینگ نود (Mining Node) از جمله نودهای تخصصی است که از آن برای حل معادلات پیچیده ریاضی و اضافه کردن بلاکهای جدید به شبکه بلاکچین استفاده میشود. نودهای ماینر به توان محاسباتی زیادی احتیاج دارند و مصرف انرژی آنها نیز بسیار زیاد است. این نودها معمولاً با سختافزارهای خاصی تحت عنوان ASIC ها یا مدارهای مجتمع با کاربرد خاص (Application-Specific Integrated Circuits) کار میکنند.
مستر نود (Master Node)
مستر نود به نوعی از نودها میگویند که سرویسهای اضافی مثل تراکنشهای آنی، قابلیتهای حفظ حریم خصوصی، مقیاسپذیری و مدیریت غیرمتمرکز را برای شبکه فراهم میسازد. معمولاً در مستر نودها باید مقدار زیادی ارز دیجیتال به عنوان وثیقه نگه داشته شود. این وثیقه به اپراتورهای نودها انگیزه میدهد تا نگهداری از نود و پشتیبانی از شبکه را به بهترین شکل انجام دهند. معمولاً به اپراتورهای نودهای مستر به خاطر مشارکت در نگهداری شبکه، پاداشهایی هم پرداخت میشود.
لیسنینگ نود یا گرههای لیسنینگ
لیسنینگ نود (Listening Node) به نودی میگویند که دادههای بلاکچین را در خود ذخیره میکند و وظیفه اصلی آن دریافت و انتقال دادهها به سایر نودهای روی شبکه است. وقتی تراکنش یا بلاک جدیدی به شبکه مخابره میشود، نودهای لیسنینگ اطلاعات را دریافت میکنند و با انتقال آن به بقیه نودها، امکان تأیید و اعتبارسنجی را برای آنها هم فراهم میسازند. لیسنینگ نودها شبکه را تحت نظر دارند تا در صورت وجود تغییرات یا بهروزرسانیهای جدید، نسخه بلاکچین خودشان را بهروز کنند.
لیسنینگ نودها یکی از اجزای اصلی شبکه بلاکچین محسوب میشوند، چرا که توزیع اطلاعات و صحتسنجی آنها در سراسر شبکه را تضمین میکنند تا شبکه بتواند غیرمتمرکز و امن باقی بماند. نودهای لیسنینگ با انتقال اطلاعات بین نودها اجازه نمیدهند تا یک نود خاص بتواند کنترل یا تأثیر زیادی روی شبکه پیدا کند.
نود استیکینگ (Staking Node)
نودهای استیکینگ در شبکه بلاکچین اثبات سهام (PoS) کاربرد دارند. این نودها در اعتبارسنجی و تأیید تراکنشهای روی شبکه مشارکت میکنند و به خاطر این کار به آنها پاداشهایی پرداخت میشود. در واقع اپراتورهای این نودها با مشارکت در امنیت شبکه و مکانیزم اجماع، پاداشهایی را در قالب ارز دیجیتال دریافت میکنند. هرچه شبکههای بلاکچینی بیشتری به سمت مکانیزمهای اجماع PoS میروند محبوبیت نودهای استیکینگ هم بیشتر میشود. البته راهاندازی یک نود استیکینگ به دانش فنی و منابع زیادی نیاز دارد و اپراتورهای آن باید به خوبی از آن نگهداری کنند تا جلوی بروز مشکلات امنیتی یا از کار افتادن شبکه گرفته شود.
نود لایتنینگ (Lightning Node)
در شبکه لایتنینگ که یک راهکار لایه دو برای شبکههای بلاکچینی از جمله بیت کوین است، امکان اجرای سریع و کمهزینه تراکنشها وجود دارد و نودهای لایتنینگ، وظیفه مسیریابی تراکنشها بین کانالهای پرداخت مختلف را در این شبکه بر عهده دارند. نودهای لایتنینگ به انجام تراکنشهای سریع و بهینه کمک میکنند و به خاطر سرویسهایی که ارائه میدهند، مقدار کمی کارمزد هم دریافت میکنند. معمولاً نودهای لایتنینگ باید مقدار کمی بیت کوین به عنوان وثیقه داشته باشند تا بتوانند در شبکه مشارکت کنند. راهاندازی و نگهداری این نوع از نودها علاوه بر دانش فنی، به اینترنت پایدار و پرسرعت و توان پردازشی کافی هم نیاز دارد.
مکانیزمهای اجماع در بلاکچین
نودهای بلاکچین از مکانیزمهای اجماع برای توافق بر سر وضعیت فعلی شبکه و پیشگیری از تراکنشهای جعلی یا دو بار خرج کردن استفاده میکنند. مکانیزمهای اجماع به تأمین امنیت و اعتبارسنجی تراکنشها کمک میکنند و از همین رو نقش مهمی در شبکه بلاکچین ایفا میکنند. این مکانیزمها انواع مختلفی دارند که در ادامه، دو مورد از رایجترین آنها یعنی مکانیزم اجماع اثبات کار (PoW) و مکانیزم اجماع اثبات سهام (PoS) را بررسی میکنیم.
مکانیزم اجماع اثبات کار (PoW)
مکانیزم اجماع Proof of Work یا اثبات کار یکی از مکانیزمهای اجماع بلاکچین است که در آن نودها مسائل یا الگوریتمهای پیچیده ریاضیاتی را حل میکنند. اولین نودی که مسئله را حل کند حق ایجاد بلاک جدید را به دست میآورد و مقداری ارز دیجیتال به عنوان پاداش به آن پرداخت میشود. این فرآیند که به آن ماینینگ هم میگویند معمولاً توان محاسباتی زیادی لازم دارد و مصرف انرژی آن نیز بسیار زیاد است.
مکانیزم اجماع اثبات کار مکانیزم اصلی استفادهشده در بیت کوین و بسیاری از ارزهای دیجیتال است. در این روش معمولاً سختی مسائل به نحوی تنظیم میشود که سرعت ایجاد بلاکهای جدید از کنترل خارج نشود. طبیعتاً هر چقدر سختی مسائل بیشتر باشد حل کردن آنها به توان پردازشی بیشتری نیاز دارد. این مکانیزم اجماع به خاطر صرف توان محاسباتی بالای خود، امنیت زیادی دارد. اگر کسی بخواهد به شبکه حمله کند، باید کنترل حداقل ۵۱ درصد از توان محاسباتی شبکه را در اختیار بگیرد که کاری بسیار دشوار و هزینهبر خواهد بود.
هارد فورک و سافت فورک چیست؟
گاهی لازم است تغییراتی روی شبکههای بلاکچین اعمال شود تا عملکرد یا امنیت آنها افزایش پیدا کند. معمولاً دو راه رایج برای ایجاد تغییرات روی شبکه بلاکچین وجود دارد که آنها را با عنوان هارد فورک و سافت فورک میشناسیم. در ادامه، ویژگیهای این دو روش و تغییرات نودها بعد از فورک را بررسی میکنیم.
هارد فورک (Hard Fork)
وقتی تغییرات اعمالشده روی شبکه بلاکچین به قدری بنیادین باشد که با شبکه فعلی ناسازگار شود، هارد فورک اتفاق میافتد. این تغییرات میتواند شامل اضافه کردن قابلیتهای جدید، تغییر دادن مکانیزمهای اجماع، یا اصطلاح فرمت تراکنشها باشد. در واقع هارد فورک باعث ایجاد دو شبکه مجزا میشود که هر یک از آنها قواعد و پروتکلهای خاص خود را دارند. در این حالت، نودها یا بر اساس شبکه جدید ارتقا مییابند و به شبکه جدید منتقل میشوند، یا بهروز نمیشوند و روی شبکه قدیمی خود باقی میمانند.
سافت فورک (Soft Fork)
بر خلاف هارد فورک، تغییراتی که در سافت فورک ایجاد میشود بهاصطلاح backward-compatible است، یعنی با شبکه قبلی سازگاری دارد و شبکه بلاکچینی جدیدی ایجاد نمیکند. در این روش، نودهایی که روی نرمافزار قدیمی کار میکنند ممکن است از بعضی قابلیتها یا بهبودهای جدید محروم باشند، اما همچنان میتوانند تراکنشها و بلاکهایی را که به وسیله نرمافزار جدید ساخته میشوند اعتبارسنجی و تأیید کنند.
تغییرات نودها بعد از هارد فورک یا سافت فورک
وقتی هارد فورک یا سافت فورک اتفاق میافتد نودها انتخاب میکنند که بر اساس تغییرات جدید بهروز شوند یا به همان روال سابق به کار خود ادامه دهند. در هارد فورک، از آنجایی که تغییرات ایجاد شده بسیار اساسی هستند شبکه جدیدی ایجاد میشود. در نتیجه، نودهایی که بر اساس آن بهروز نشوند نمیتوانند روی شبکه جدید کار کنند و باید به فعالیت روی شبکه قدیمی ادامه دهند. این تقسیمبندی باعث میشود جوامع، تیمهای توسعه و بهطور کلی اکوسیستمهای مجزایی برای هر یک از شبکهها ایجاد شود.
در سافت فورک نیز بهروز شدن نودها اختیاری است، با این تفاوت که هر دو گروه از نودها میتوانند به فعالیت خود روی همان شبکه ادامه دهند. نودهایی که بهروز نمیشوند قابلیتهای محدودتری دارند و نمیتوانند از قابلیتهای جدید بهرهمند شوند، اما امکان مشارکت در فرآیند اعتبارسنجی تراکنشها و بلاکهای جدید را خواهند داشت. دریافت یا عدم دریافت بهروز رسانی در این روش، اختلالی در عملکرد شبکه ایجاد نمیکند و شبکه بلاکچینی طبق روال سابق به فعالیت خود ادامه میدهد.
جمعبندی
نودها یکی از اجزای اصلی شبکههای غیرمتمرکز هستند و امکان اعتبارسنجی، ذخیرهسازی و انتقال اطلاعات را روی بلاکچین فراهم میسازند. وجود نودها برای یکپارچگی، امنیت و اجماع شبکه ضروری است. مکانیزمهای اجماع نیز به نودهای بلاکچین اجازه میدهند تا بر سر وضعیت بلاکچین به توافق برسند، و هر یک از آنها نقاط قوت و ضعف خاص خود را دارند.
شناخت انواع نودها یا گرههای ارز دیجیتال و آشنایی با مکانیزمهای اجماع به ما کمک میکند تا درک بهتری از بلاکچین و بهطور کلی اکوسیستم شبکههای غیرمتمرکز پیدا کنیم و قابلیتها و امکانات آنها را بهتر بشناسیم.
تولید محتوای بخش «وب گردی» توسط این مجموعه صورت نگرفته و انتشار این مطلب به معنی تایید محتوای آن نیست.