بیشک تا به حال حین مطالعه در رابطه با ارزهای دیجیتال مانند بیت کوین یا خواندن مقالاتی در رابطه با بلاکچینها، با عبارت نود (Node) یا گره مواجه شدهاید. در مفهوم کلی، نود در بلاکچین یک مشارکت کننده در شبکه محسوب میشود. همانطور که میدانید، بلاکچین یک تکنولوژی غیر متمرکز است و هیچ نهادی آن را کنترل نمیکند. نودها در این تکنولوژی به نوعی حافظ امنیت و ضامن غیرمتمرکز بودن شبکه هستند. در این مقاله میخواهیم به این سوال پاسخ دهیم که نود چیست؟
فهرست محتوا
نود در بلاکچین چیست؟
شاید پاسخ به این سوال که نود چیست کمی پیچیده به نظر بیاید اما به زبان ساده هر سیستم کامپیوتری که به شبکه بلاکچین متصل شود یک نود (Node) است. قبلتر هم اشاره کردیم که بلاکچینها سیستمهای غیرمتمرکز هستند که سرور محرمانهی مرکزی و یک کنترل کنندهی واحد ندارند. این فقدان نهاد مرکزی را مشارکتکنندگان یا همان گرهها جبران میکنند. گرهها همچنین انجام تراکنشهای همتا به همتا (P2P) را در بستر شبکه ممکن میسازند.
نود را میتوان به زبان دیگری نیز معنی کرد؛ یک کامپیوتر که نرمافزار شبکه را روی سیستم خود پیاده میکند و از طریق اینترنت به سایر کامپیوترهای مانند خود متصل میشود. هرچه تعداد این کامپیوترها بیشتر باشد؛ زیرساخت شبکه بلاکچین قویتر میشود و میزان مقیاسپذیری آن افزایش مییابد.
علی رغم نقش اساسی Node یا گرهها در دنیای کریپتو، کاربرد این اصطلاح به دنیای رمز ارزها محدود نمیشود.
به طور کلی، node یا گره به نقطه تقاطع یا اتصال میان دو عضو در یک شبکه یا سیستم اشاره دارد. به عبارتی، یک نود میتواند وظایف مختلفی اعم از ایجاد، ارسال یا دریافت اطلاعات را عهدهدار باشد.
یک دفتر کار را در نظر بگیرید که در آن، از یک دستگاه فکس، ۴ لپتاپ و یک سرور کلی استفاده میشود. این سه عامل نام برده، بازیگران اصلی آن شبکه هستند و هرکدام را میتوان یک node به حساب آورد. بنابراین این شبکه از ۶ گره به وجود آمده است.
در دنیای کریپتو، هر گره یک کامپیوتر است که به شبکه بلاک چین متصل شده و اقداماتی مانند تایید فعالیتهای شبکه و انتقال اطلاعات را صورت میدهد.
این کامپیوترها، در واقع در تصمیم گیریهای هر شبکه نقش دارند و علاوه بر برقراری ارتباطات، وظیفه ردیابی و پیگیری فعالیتهای بلاک چین را بر عهده میگیرند.
وظایف اصلی Node در بلاک چین
به طور کلی، نُودهای در به سرانجام رساندن دیتابیسهای مختلف (به خصوص سیستمهایی با معماری غیرمتمرکز)، نقشی اساسی را ایفا میکنند. پروژههای بلاک چینی هم برای ادامه کار خود به این گرهها نیاز دارند. شاید بتوان موارد زیر را مهمترین اهمیتهای Node در بلاک چین دانست:
کمک به استمرار بلاک چین
از آنجایی که بلاک چینها نوعی دفتر کل غیرمتمرکز (DLT) به حساب میآیند، اغلب آنها به گونهای طراحی شدهاند که هیچ نهاد یا سازمان متمرکزی دادههای این دفاتر را در خود ذخیره نمیکند. همچنین از طرفی با افزایش کاربران بلاک چین، دادههای شبکهها هم افزایش مییابند و کار پلتفرم برای ادامه فعالیت خود دشوار تر میشود.
به عبارتی، بلاک چین نیاز دارد تا علاوه بر پردازش حجم بیشتری از اطلاعات، مقیاسپذیری و تمرکززدایی خود را هم حفظ کند. در چنین شرایطی، Node به کمک شبکه میآید. در مثلث بلاک چین (Blockchain Trilemma) پروژهها بر سر این ۳ راهی،به مقیاسپذیری، غیرمتمرکزسازی و دیگر ضلع این مثلث یعنی امنیت پرداختهایم.
در واقع هر بلاک چین از چندین هزار گره در سراسر جهان تشکیل میشود که به تقسیم کار کمک میکند. به همین خاطر، تمرکززدایی و مقیاسپذیری شبکه هم ارتقا پیدا خواهد کرد.
اعتبارسنجی تراکنشها
همانطور که پیشتر اشاره کردیم، بلاک چین یک پایگاه داده غیرمتمرکز محسوب میشود و مرکزیتی بر دادههای آن حاکم نیست. به همین خاطر، فعالیتهایی چون سنجش اعتبار تراکنشها (Validation)، توسط Nodeها صورت میپذیرد.
گاهی اوقات هم فعالیتها میان نودها توزیع میشود و برخی تنها به روی یک کار متمرکز میشوند. ضبط اطلاعات تراکنشها روی هر بلاک و صرف بررسی دادهها، از جمله این فعالیتها به شمار میآیند.
شفافیت در بلاک چین
بدون شک شفافیت (Transparency)، یکی از مهمترین ارکان هر پلتفرم غیرمتمرکز به حساب میآید. بنابراین اگر فردی بخواهد به اطلاعات تراکنشها دسترسی داشته باشد، نیاز دارد تا با Nodeها در تعامل قرار گیرد و یا خود به یک گره تبدیل شود.
در واقع هنگامی که از رابطهایی چون بلاک اکسپلوررها استفاده میکنیم، درحال برقراری ارتباط با نودهای شبکه هستیم و میتوانیم به اطلاعاتی چون میزان تراکنشها و آدرسهای فعال دست یابیم.
طبقهبندی نود در بلاکچین
نود را میتوان کلاینتهایی دانست که عملکرد کیف پولهای دیجیتالی را ارائه میدهند. در شبکه بلاکچین دو دسته نود داریم؛ نود کامل (Full nodes)، نودهای سبک (SPV)، نود استخراجکننده (Miner Node) و سوپرنود (SUPER NODE)
نود کامل
نود کامل یا Full Node از اجزای اصلی زنجیره است. میتوان گفت در غیاب این عضو بلاکچین عملاً از کار میافتد. این گره در شبکه مسئول تایید تراکنشها و حفظ امنیت سیستم است. گره کامل یک نسخهی کلی از شبکه را دانلود و شبیه به یک سرور مرکزی عمل میکند.
همچنین برای ایجاد تغییرات در شبکه، نود کامل باید در رأیگیریها شرکت کند. برای ایجاد هر تغییر در بستر بلاکچین باید بیش از ۵۰ درصد نودهای کامل با آن تغییر موافقت کنند. در صورتی که ۵۱ درصد آنها مخالف تغییر موردنظر باشند؛ این تغییر رخ نخواهد داد.
در این حالت، Blaockchain برای ایجاد تغییرات جدید باید انشعاب پیدا کند که اصطلاحاً به آن “هارد فورک” گفته میشود. در نتیجه، عامل ایجاد هارد فورکها نیز نودهای کامل هستند. این دسته از نودهای بلاکچینی خود به چند زیر مجموعه تبدیل میشوند:
- تعدیل یافته
- آرشیوی
- سرمایهگذار
- مرجع
- مسترنود
نود سبک
یکی دیگر از انواع نود، نود سبک است. این نود به جای دانلود یک نسخهی کامل از بلاکچین، بررسی میکند که در لحظه فعلی کدام بلاک، آخرین بلاک زنجیره و مناسب انجام یک تراکنش است. نود سبک یا SPV که به آن Lightweight node نیز گفته میشود؛ در فرایند روزمرهی رمزارزها مورد استفاده قرار میگیرد و متکی به نودهای کامل است. نود سبک به معنای نود تایید پرداخت ساده، منابع زیادی نیاز ندارد و سهولت کار را جایگزین امنیت کرده است.
نکته: نوع دیگری از نودها هم در بلاکچین فعالیت دارند که به آنها نود ماینر یا استخراج کننده میگویند. نودهای ماینر با استفاده از سختافزارهای قدرتمند و به کار گرفتن قدرت پردازش سیستم خود یا از طریق دستگاههای ماینینگ، به استخراج بلاکهای جدید در شبکه میپردازند و از طرف شبکه پاداش دریافت میکنند.
نود استخراجکننده
نودهای استخراج کننده یکی دیگر از انواع گره در ارز دیجیتال هستند که وظیفه تایید تراکنشهای شناور را بر عهده دارند. یکی از مهمترین ویژگیهای این نودها این است که برای تایید تراکنش و استخراج بلاک جدید تنها نیاز به دریافت اطلاعات بلاک قبلی دارند. نودهای استخراج کننده برای استخراج بلاکهای جدید از دستگاههای ماینینگ قوی استفاده میکنند و در قبال این کار از شبکه، پاداش دریافت میکنند.
ماینرها میتوانند به صورت انفرادی یا گروهی، عملیات استخراج را انجام دهند. ماینرهایی که به صورت انفرادی قصد استخراج دارند باید نود کامل را فعال کنند اما ماینرهایی که به استخر استخراج متصل میشوند، نیازی به انجام اینکار ندارند و فقط فردی که مسئول استخر ماینینگ است، میبایست باید فول نود را فعالسازی کند.
سوپرنود
یکی دیگر از انواع گره در ارز دیجیتال، سوپر نود است. سوپر نودها، نودهایی هستند که تمام اعضا میتوانند آنها را ببینند. مهمترین وظیفه سوپر نودها ایجاد ارتباط بین دو نود است. به عبارت دیگر میتوان گفت سوپر نودها یک کانال ارتباطی هستند. سوپر نودها به صورت ۲۴ ساعته فعال هستند و به همین دلیل بهتوان مصرفی و اینترنت با سرعت بالاتری نیاز دارند.
وظایف اصلی نود در بلاکچین چیست؟
گره در ارز دیجیتال، دو وظیفه مهم را برعهده دارند که در ادامه در مورد آنها توضیح میدهیم.
انجام الگوریتم اجماع در بلاکچین
فرض کنید قصد دارید مقداری بیت کوین به کیف پول دیجیتال یکی از دوستان خود انتقال دهید. در این حالت شما با انجام مراحل انتقال یک تراکنش را در بستر شبکه منتشر میکنید. ضمانت انجام این تراکنش گرفتن تایید از سوی گرههای شبکه است. یعنی باید منتظر بمانید تا Nodeها تراکنش شما را تایید کنند.
فرایند گرفتن تایید از نود در بلاکچین را الگوریتم اجماع میگویند. این الگوریتم مراحل اعتبارسنجی و تایید تراکنشها را شامل میشود و انجام آن بر عهدهی Nodeهاست. ساز و کار اجماع یکی از اصلیترین ارکان امنیت شبکه است.
الگوریتم اجماع به دو صورت گواه اثبات کار و گواه اثبات سهام صورت میگیرد که در هر دو روش Nodeها نقش اصلی را ایفا میکنند.
گواه اثبات کار (PoW): در این روش نودها با دانلود یک نسخهی کلی از شبکه وارد آن میشوند و میتوانند در اعتبارسنجی و تایید تراکنشها شرکت داشته باشند.
گواه اثبات سهام (PoS): این شیوه با توجه به میزان ارز ذخیره شده در کیف پول نودها انجام میشود. هر گره بسته به میزان ارزی که در کیف پول خود استیک میکند، میتواند تراکنشها را تایید کند.
امنیت و حریم خصوصی در Nodeها
علیرغم قابلیتهای فراوان، نباید فراموش کنیم که همانند هر شبکه دیگری، شبکههای بلاک چینی هم به صورت مستمر در معرض خطراتی چون حملات سایبری هستند و حفظ امنیت Nodeهای بلاک چین، یکی از مهم ترین اولویتهای تیم توسعهدهنده هر بلاک چین محسوب میشود.
حمله توقف عملکرد (DDOS) که موجب غیرفعال شدن یک نود میشود، یکی از رایج ترین معضلات امنیتی شبکههای غیرمتمرکز و حتی متمرکز به شمار میآید. علاوه بر این به سبب طبیعت متنباز (Open-Source) و عمومی بلاک چین، ممکن است یک Node در داخل و یا یک اپراتور از خارج شبکه، تراکنشهای جعلیای را در پلفترم ایجاد کند و موجب آسیبپذیری نرمافزارها شود.
میتوان مواردی که در ادامه از آنها یاد میکنیم را مهم ترین اقدامات موثر در بهبود سطح امنیت یک Node در بلاک چین دانست:
- کدهای قراردادهای هوشمند میبایست به طور مستمر بازبینی (Audit) و بروزرسانی شوند.
- نودها نیاز دارند تا پیش از ورود به زنجیره اصلی، تستهای امنیتی را بگذرانند.
- توزیع اختیارات نودها با گسترش تعداد آنها و جلوگیری از مشکلاتی چون حمله ۵۱ درصد در بلاک چین
- ذخیرهسازی کلیدهای خصوصی
- پیگیری استخر ماینینگ یا استخر نقدینگی؛ در صورتی که سهم یک گره از بازه ۴۰درصد عبور کرد، میبایست هشداری فعال شود و یا پیش از آن محدودیتی برای قدرت محاسباتی و یا میزان دارایی پلتفرم در نظر گرفته شود.
حفظ بلاکچین از حملات ۵۱٪
نودها بعد از الگوریتم اجماع کار مهم دیگری نیز در بلاکچین انجام میدهند. همانطور که در ابتدای مقاله اشاره کردیم؛ حضور Node ضامن امنیت شبکه است.
حملات ۵۱٪ که خطرناکترین و رایجترین حمله به بلاکچینها هستند، به این ترتیب رخ میدهد که مهاجم یا مهاجمین میتوانند بیش از ۵۰ درصد قدرت پردازش شبکه را در اختیار بگیرند و در روند طبیعی فعالیت آن اختلال ایجاد کنند.
به دلیل آنکه شبکه سرور مرکزی ندارد؛ مهاجم باید به سیستمهای شخصی گرهها دسترسی پیدا کند. هرچه تعداد گرهها در بلاکچین افزایش پیدا کند، احتمال حمله ۵۱٪ کاهش پیدا میکند. زیرا در این شرایط مهاجمین باید هزینه، زمان و انرژی بیشتری برای دسترسی به سیستمها صرف کنند.
در حال حاضر، میتوان گفت شبکه بیت کوین بهدلیل تعداد بالای کاربرانش یا همان گره ها، از حملات ۵۱ درصد در امان است.
اهمیت Node در بلاک چین
هرچه بیشتر دنیای غیرمتمرکز و Web3 را میشناسیم، متوجه میشویم که موضوعاتی مانند فروشگاههای متاورسی و یا رشد روزافزون ارزهای دیجیتال، تنها نوک یک کوه یخ را تشکیل میدهند و اصل موضوع، به زیرساختهای این سیستمها باز میگردد.
یکی از مهم ترین زیرساختهای هر شبکه بلاک چینی Node بوده که توسعهدهنده بلاک چین پلتفرم Topl یعنی نیکولاس ادموندز، از آنها را “اعتبار هر بلاک چین” یاد میکند.
در نظر او، نودها رکن اصلی سازماندهی هر شبکه بلاک چینی به حساب میآیند و بدون آنها، هر شبکه زیرساختهای خود را از دست خواهد داد. چرا که دیگر هیچ گونه اعتبارسنجی و نظارتی روی فعالیتهای پلتفرم نخواهد بود.
جالب است بدانید که طبق دادههای پلتفرم Etherscan، بالغ بر ۷۰درصد نودهای اتریوم در کشورهای ایالات متحده و آلمان مستقر هستند.
ایجاد تغییرات توسط گره در بلاکچین
تغییر در شبکه بلاکچین به آسانی صورت نمیگیرد. تغییرات این سیستم بهطور معمول مربوط به پارامترهای اجماع مانند پاداش استخراج بلاک جدید، زمان استخراج بلاک، انتقال از الگوریتم PoW به PoS، اجرای برنامههای جدید و سایر موارد اینچنینی است.
طبق الگوریتم اجماع، کوچکترین تغییرات باید به تایید همه یا بخش بزرگی از کاربران آن برسد. این روند سبب میشود که گاهی تغییرات موردنظر که مورد قبول اکثریت شبکه قرار نمیگیرد؛ به ایجاد یک انشعاب جدید در سیستم مجر شود. این انشعابها فورک نام دارند و در دو حالت هارد فورک و سافت فورک صورت میگیرند. در ادامه، به بررسی نقش نود در این فرایندها میپردازیم.
گرهها در هارد فورک (Hard Fork)
هارد فورکها زمانی اتفاق میافتند که همهی نودهای کامل (بیش از ۵۱ درصد) با یک تغییر موافقت نکنند. پس از ایجاد هاردفورک، تمام گرهها باید آپدیت جدید را بر روی سیستم خود بهروزرسانی کنند و آنهایی که این آپدیت را دریافت نکنند، از طرف شبکه و از طریق الگوریتم اجماع رد خواهند شد.
هاردفورکها معمولاً به کاهش تعداد زیادی نود در شبکه منجر میشوند. این روند و کاهش تعداد گرهها که ضامن امنیت شبکههای بلاکچین هستند؛ سیستم را دچار اختلالهای امنیتی میکند. بههمین خاطر عموماً توسعهدهندگان و نودهای کامل از ایجاد تغییرات گسترده و کلی در بستر شبکه اجتناب میکنند.
گرهها در سافت فورک (Soft Fork)
یکی دیگر از روشهای ایجاد تغییر در بلاکچین، سافت فورکها هستند. سافت فورک نرمتر از هارد فورک برخورد میکند و گرهها را مجبور به آپدیت فوری نرمافزار نمیکند.
در این حالت اگر بیش از ۹۵ درصد نودها بهروزرسانی جدید را دریافت کنند، الگوریتم اجماع بهصورت خودکار تغییر خواهد کرد و پس از آن، نودها و تراکنشهایی که از قوانین جدید پیروی نکنند، توسط شبکه رد میشوند.
تفاوت میان Node و ماینر چیست؟
این دو نقش در بلاک چین، تا حد زیادی به یکدیگر شباهت دارند. امّا هر ماینری نمیتواند یک گره باشد. تفاوت اصلی این دو، به شیوه تایید تراکنشها، ذخیره اطلاعات و ایجاد بلاک جدید باز میگردد.
گفتیم که هر Node، به تاریخچه تراکنشها دسترسی دارد. انگار که یک کپی از فعالیتهای شبکه را در اختیار داشته باشد. امّا تمام ماینرها به اطلاعات کامل شبکه دسترسی ندارند و تنها در تایید تراکنشها یا گسترش زنجیرهها سهیم هستند.
به منظور انتخاب تراکنشهای قانونی و تایید بلاک جدید، ماینر میبایست اطلاعات یک Node کامل را بررسی کند. امّا به سبب عدم دسترسی به تمامی اطلاعات، ممکن است در پذیرش آن تراکنش موفق نباشد.
در برخی موارد، این احتمال وجود دارد که ماینرها از اطلاعات مربوط به شبکه به طور کامل مطلع نباشند. گاهی اوقات این موضوع میتواند به عدم موفقیت آنها در اعتبارسنجی بلاکها منجر شود. زیرا ممکن است از معیارهای مورد نیاز برای تایید یک تراکنش آگاهی نداشته باشند.
با توجه به مطالب ذکر شده، متوجه شدیم که برای تایید کامل تراکنش و دریافت پاداش، هر ماینر نیاز دارد تا نسخهای کامل از تاریخچه شبکه را در اختیار داشته باشد و به عبارتی، به یک گره کامل تبدیل شود.
در مقابل، ضرورتی برای ماینر بودن یک Node یا گره وجود ندارد. زیرا هر دستگاهی میتواند با دریافت، ذخیره و انتقال دادهها، یک Node کامل را اجرا کند. بدون این که نیازی به ساخت یا استخراج یک بلاک کامل باشد. در چنین شرایطی، ساز و کاری مشابه یک سرور را شاهد هستیم.
در این سناریو، هر گره به مانند یک راه ارتباطی عمل میکند. ماینرها هم چنین فعالیتی را انجام میدهند؛ با این تفاوت که هر ماینر، بلاک جدیدی را ایجاد میکند. پس هر ماینری نُود است امّا هر گرهای ماینر نیست!
اهمیت گره در بلاک چین
در این مقاله به سوال گره چیست پاسخ دادیم و بررسی کردیم که گره در ارز دیجیتال از اهمیت بسیار بالایی برخوردار است. بدون حضور آنها امنیت شبکه متزلزل خواهد شد و مقیاسپذیری از بین میرود. هرچه تعداد سیسستمهایی که نرم افزار بلاکچین را اجرا میکنند که در لغت به آنها گره یا Node میگوییم بیشتر باشد، این شبکه به اهداف خود که عدم تمرکز اطلاعات و انجام فرایندهای مختلف بدون نیاز به حضور شخص سوم است؛ نزدیکتر خواهد شد.
تقریبا تمامی موارد را خاطرنشان کردیم امّا پرداختن به موضوعات پیشین و مطالبی دیگر خالی از لطف نیست!
مزایای نود در بلاک چین | معایب نود در بلاک چین |
---|---|
افزایش امنیت شبکه | امکان دستکاری اطلاعات توسط نودها |
اعتبارسنجی تراکنشها | ریسک ارائه تراکنشها و دادههای جعلی |
شفافیت دادهها | آسیبپذیری در برابر حملات محرومسازی از سرور (DDOS) در صورت وجود مرکزیت یا اطلاعات نامعتبر |
تسریع روند پردازش فعالیتهای شبکه | |
کمک به تمرکززدایی |
در جدول بالا، مهمترین مزایا و معایب Node در بلاک چین را آوردهایم:
جمع بندی:
گرهها برای عملکرد یک شبکه بلاک چین بسیار مهم هستند زیرا همانطور که خواندیم، به یکپارچه سازی و تامین امنیت شبکه کمک میکنند.
اکثریت شبکهها امکان ماینینگ یا استیکینگ را برای کاربران فراهم میکنند تا انگیزه دریافت سود را در آنها ایجاد کنند. با این حال، بسیاری به واسه تمایل به فعالیت بهتر شبکه، به nodeهای بلاک چین تبدیل میشوند تا بسیاری از اهداف هر پلتفرم را محقق سازند.