گره یا نودها در شبکههای بلاکچین و انواع آنها
گره یا نود (Node)، نقطهای در شبکه بلاکچینی میباشد که یا دادهها را بین گرههای دیگر شبکه توزیع میکند و یا نقطه پایانی شبکه است. نود در بلاکچین، معمولاً دستگاهی مانند رایانه، لپتاپ یا سرور میباشد که در شبکه بلاکچین معمولی ممکن است به چندین گره دیگر در یک شبکه متصل باشد.
گرههای بلاکچین میتوانند عملکردهای مختلفی مانند اعتبارسنجی یا عدم تایید یک بلوک از تراکنشها را انجام دهند. یک نود همچنین میتواند تاریخچه تراکنش را در یک بلوک ثبت و ذخیره کند و نیز میتواند تاریخچه تراکنشها را برای نگهداری و مراجعات بعدی در سایر گرهها توزیع کند.
در این مقاله سعی شده شما را با مفهوم نود یا گره آشنا کرده و همچنین انواع و شیوه کار آنها نیز بررسی شود، اما قبل از هرچیز لازم است در مورد بلاکچین بیشتر بدانیم.
بلاکچین چگونه کار میکند؟
با توجه به ویژگیهای منحصر بفرد فناوری بلاکچین، اخیرا این تکنولوژی میان عامه مردم بسیار محبوب شده و بر سر زبانها افتاده است. در واقع یک شبکه بلاکچین، علاوه بر ارائه یک محیط امن برای تراکنشهای مالی، خود تنظیم میباشد که از مداخله و دستکاری غیرمجاز جلوگیری میکند. هر زمان که یک تراکنش در یک بلاکچین انجام شود، تراکنش ثبت شده و به تمام گرهها در شبکه توزیع میشود و در نهایت در در یک بلوک ثبت میشود. یک بلوک میتواند حاوی رکوردهای میلیونها تراکنش مالی مختلف باشد.
از آنجایی که یک نسخه از تراکنشهای مالی برای هر نود در شبکه بلاکچین توزیع میشود، دستکاری آنها تقریبا غیرممکن است. این امر به این دلیل است که شخصی که قصد انجام یک دستکاری و ایجاد اختلال را داشته باشد، باید آن کپی را در تمام گرههای دیگر نیز تغییر دهد.
یک تراکنش مالی چگونه در شبکه بلاکچین ثبت میشود؟
به دلیل ماهیت غیرمتمرکز شبکه بلاکچین، سیستم به طور خودکار تراکنش مالی را احراز هویت میکند. در مرحله اول، تراکنش توسط کاربر تایید میشود که از یک کلید خصوصی و عمومی برای دسترسی به شبکه استفاده میکند. در مرحله دوم، یک بلوک ایجاد میشود و دادههای تراکنش در آن بلاک ذخیره میشود. پس از آن، رکورد و ثبت تراکنش به تمام گرههای بلاکچین در شبکه ارسال میشود.
هنگامی که تراکنش مورد توافق واقع شد، گره تراکنش را تأیید میکند و اگر اکثر گرهها تراکنش را تایید کنند، به بلاکچین موجود اضافه میشود. هر گونه به روزرسانی نیز در سراسر شبکه توزیع میشود که چرخه تراکنش را نهایی میکند.
چرا در بلاکچین به گرهها نیاز داریم؟
گره یا نود در شبکه بلاکچینی، دستگاهی است که یک کپی از تراکنش را در شبکه نگه داری میکند و ممکن است عملکردهایی مانند اعتبارسنجی و احراز هویت یک تراکنش را انجام دهد. بر اساس نقش خاص یک گره در بلاکچین، آن گره میتواند موارد زیر را انجام دهد:
- اعتبارسنجی و مدیریت یک تراکنش
- تایید یا رد تراکنش
- ذخیره و رمزگذاری اطلاعات در یک بلوک
- برقراری ارتباط با گرههای دیگر
نقش یک نوع خاص از گره ممکن است با نقش یک گره دیگر متفاوت باشد. به عنوان مثال، گرههای خاصی برای تایید تراکنشها برنامه ریزی شدهاند، در حالی که گرههای دیگر فقط مسئول ثبت تراکنش هستند. گاهی اوقات، یک گره نیز دادهها را با گرههای دیگر به اشتراک میگذارد.
گرهها نیز بر اساس در دسترس بودنشان طبقه بندی میشوند. “گره آنلاین (online node)” یک گره است که به طور مداوم به روزرسانیها و آپدیتها را به شبکه ارسال میکند. در مقابل، یک “گره آفلاین (offline node)” همیشه به شبکه متصل نیست.
همچنین مهم است که به یاد داشته باشید که هر گره یک شناسه منحصر به فرد متصل به دستگاه خود دارد. این ID منحصر به فرد به کاربران اجازه میدهد تا یک گره خاص را در یک شبکه شناسایی کنند. گرهها به عنوان نگهبان سوابق، اطمینان میدهند که همه میتوانند بدون هیچ گونه محدودیتی به رکورد تراکنش دسترسی داشته باشند. همچنین کاربران به راحتی میتوانند تراکنش روی بلاکچین را با استفاده از شناسه آن ردیابی کنند.
گرهها برای یک شبکه بلاکچینی حیاتی هستند؛ زیرا بدون آنها، بلاکچین وجود نخواهد داشت.
گرهها چگونه به امنیت بلاکچین کمک میکنند؟
گرهها با همگام نگه داشتن رکورد با آخرین تراکنشها به ایمن سازی بلاکچین کمک میکنند. با توجه به تعداد زیاد گرهها در شبکه، عملاً غیرممکن است که یک هکر تغییراتی ایجاد کند و شناسایی نشود. بنابراین دادهها امن هستند زیرا یک هکر نمیتواند دادههای کپی شده در هزاران گره مختلف را حذف کند.
قطع برق، هک و خرابی سیستم تهدیدی ایجاد نمیکند، زیرا دادهها به هیچ گره منفردی محدود نمیشوند. در صورت بروز مشکل، در دسترس بودن سایر گرهها تضمین میکند که شبکه به طور معمول به کار خود ادامه میدهد و کاربران میتوانند به منابع مورد نیاز دسترسی داشته باشند.
شبکه بلاکچین همچنین میتواند خود را در یک بحران جهانی حفظ کند. در واقع، فقط به یک گره نیاز است تا کل بلاکچین را عملیاتی نگه دارد. حتی اگر همه گرهها آفلاین شوند، برای بازیابی کل شبکه فقط به یک گره نیاز میباشد. از منظر عملیاتی، گرهها ستون فقرات بلاکچین هستند؛ بدون گره، شبکه دوام نخواهد آورد.
برای بیشتر آشنا شدن با مفهوم بلاکچین، میتوانید این مقاله را مطالعه کنید.
انواع نودها در بلاکچین
شبکههای بلاکچین ممکن است شامل انواع مختلفی از گرهها باشند. اینها شامل نود کامل (full nodes)، لایت نودها (light nodes)، سوپرنودها (supernodes) و گرههای لایتنینگ (lightning nodes) هستند.
در ادامه مروری کوتاه بر برخی از مهم ترین انواع گرهها آورده شده است:
نود کامل (Full Nodes)
گرههای کامل شامل تاریخچه کامل و اطلاعات مربوط به هر بلوک از زمان انجام اولین تراکنش در پلتفرم هستند. این گرهها ستون فقرات یک بلاکچین را تشکیل میدهند، زیرا برای تکمیل تراکنش حیاتی هستند. هر زمان که یک تراکنش آغاز میشود، هر گره منفرد در کل بلاکچین، بلوک را تأیید و احراز هویت میکند. نیازی به گفتن نیست که دادههای زیادی روی این گرهها وجود دارد. برای پردازش مستمر چنین حجم وسیعی از داده، گره به قدرت محاسباتی بسیار زیادی نیاز دارد. در هر زمان معین، یک اکوسیستم بلاکچینی ممکن است هزاران گره کامل داشته باشد که پشت سر هم کار میکنند.
این گرهها وظایف خاصی دارند که آنها را از سایر گرههای شبکه متمایز میکند. یکی از ویژگیهای متمایز آنها اعتبارسنجی امضا در هر تراکنش است و برای احراز هویت یک تراکنش، گره یک امضای دیجیتال را تأیید میکند. امضای دیجیتال معمولا کلید خصوصی است که توسط فرستنده استفاده میشود.
گرهها همچنین اختیار پذیرش یا رد بلوکها و تراکنشهای جدید را دارند و ممکن است بیش از یک دلیل برای رد یک معامله وجود داشته باشد. بلوکهایی که فرمت نادرست داشته باشند رد خواهند شد. به همین ترتیب، ورودیهای تکراری و دستکاری شده در رکوردها نیز از دیگر دلایل تایید نشدن هستند. اجرای این گرهها به کاربران اجازه میدهد تا تراکنشهای دریافتی را بدون منتظر ماندن برای تأیید اعتبار توسط دیگران، تأیید کنند. در برخی موارد، کاربرانی که تراکنشهای دریافتی را تأیید میکنند، برای تلاشهایشان پاداش دریافت میکنند.
نود سبک (Light Nodes)
همانطور که از نام آن پیداست، نودلایتها حاوی اطلاعات سبک یا محدود هستند. یک گره سبک به جای ذخیره کامل اطلاعات، فقط حاوی اطلاعات مربوط به یک بلوک قبلی خاص است که به آن متصل میباشد. اطلاعات در یک هدر بلوک (block header) ذخیره میشود. برخلاف برخی دیگر از گرهها، گرههای سبک نیازی به اجرای مداوم ندارند. آنها معمولاً قطعات نرم افزاری هستند که به گرههای کامل متصل میشوند تا در صورت لزوم به بلاک چین دسترسی پیدا کنند. در واقع گرههای سبک از گرههای کامل به عنوان واسطه برای دسترسی به شبکه استفاده میکنند. همچنین آنها از گرههای کامل برای دریافت اطلاعاتی مانند موجودی حساب و درخواست آخرین هدرها استفاده میکنند.
به دلیل عملکرد سبک، این گرهها برای اجرا به فضای ذخیرهسازی و منابع زیادی نیاز ندارند. میتوانید یک گره سبک را روی موبایل خود اجرا کنید، زیرا این نوع گرهها با فضای ذخیره سازی محدود و با قدرت محاسباتی کم نیز قادر به انجام وطایف خود هستند. اکثر گرههای سبک میتوانند در عرض چند ثانیه با شبکه همگام شوند. این نوع گرهها از نظر اعتبار در شبکه و قدرت پردازشی امتیاز پایینی دارند ولی در مقابل سرعت بالاتری دارند.
سوپرنودها (Supernodes)
سوپرگرهها، گرههای کامل را به هم متصل میکنند و به پخش اطلاعات در سراسر شبکه کمک میکنند تا اطمینان حاصل شود که همه گرهها، دادههای دقیقی دارند. سوپرنودها عملکردهای خارج از زنجیره (off-chain) را کنترل میکنند. آنها علاوه بر عملیات عادی خود، رویدادهای رای گیری، پیروی از قوانین بلاکچین و اجرای رویدادهای پروتکل را نیز تسهیل میکنند.
سوپرنودها معمولا همیشه آنلاین هستند. بر خلاف سایر گرهها، آنها همچنین به قدرت و منابع بسیار بیشتری برای اجرا نیاز دارند. اجرای یک مسترنود (master node) به این معنی است که شما باید با تعمیر و نگهداری، برق، فضای ذخیره سازی و حافظه سر و کار داشته باشید. از آنجا که اجرای سوپرنود نیاز به سرمایه گذاری اولیه در تجهیزات و ارائه وثیقه به شکل ارز دیجیتال دارد، همه نمیتوانند سوپرنود را اجرا کنند. از طرف دیگر اگر قوانین بلاکچین نقض شود، وثیقه ممکن است مصادره شود.
نودهای لایتنینگ (Lightning Nodes)
گرههای لایتنینگ، یک نود در شبکه لایتنینگ میباشد که چند تفاوت اساسی بین گرههای سنتی و گرههای لایتنینگ وجود دارد. این گره به جای تایید هر تراکنش در شبکه، تراکنش را با تعامل مستقیم با آن تایید میکند. گرههای لایتنینگ همچنین میتوانند با گرههای دیگر در شبکه همتا به همتا (P2P) تعامل داشته باشند.
نودهای استخراج (Mining Nodes)
هر تراکنش توسط یک ماینر به بلاکچین اضافه میشود. ماینرها به عنوان گرههای استخراج نیز شناخته میشوند. هر گره در یک بلاکچین این امکان را دارد که یک ماینر شود. با افزودن و تأیید یک تراکنش در یک بلاکچین، انگیزه زیادی برای تبدیل شدن به یک ماینر وجود دارد. به عنوان مثال، در بلاکچین بیتکوین به هر گرهای که یک بلوک را ایجاد کرده و به بلاکچین بیتکوین اضافه کند، ۶.۲۵ بیتکوین به ارزش تقریبی ۱۲۵۰۰۰ دلار بر اساس نرخ بیتکوین ۲۰۰۰۰ دلاری پاداش داده میشود.
با توجه به این فرصت بالقوه پرسود، بسیاری از ماینرها میخواهند بلوکها را به زنجیره اضافه کنند. نرم افزار بلاکچین بیتکوین یک معمای ریاضی ارائه میدهد؛ هرکسی (هر گرهای) که معما را زودتر حل کند این فرصت را پیدا میکند که بلوک را ایجاد کرده و به زنجیره اضافه کند. اگر میخواهید در مورد نحوه استخراج بیتکوین بیشتر بدانید، پیشنهاد میکنم این مقاله را بخوانید.
مقایسه نودهای بیتکوین، اتریوم و کاردانو
گره یا نود بیتکوین بخشی از بلاکچین بیتکوین میباشد. طبق دادههای اخیر، بیش از ۱۱۵۰۰ گره در بلاکچین بیتکوین وجود دارد و این تعداد هر ماه در حال افزایش است. توجه به این نکته مهم است که هیچ روش قطعی برای شمارش تعداد دقیق گرههای بیتکوین وجود ندارد، زیرا بسیاری از گرهها غیرفعال هستند و خیلی از آنها به صورت خصوصی کار میکنند. راه اندازی یک نود بیتکوین میتواند امنیت شبکه را افزایش دهد و میتوان گفت بلاکچینی که تعداد بیشتری گره داشته باشد بلاکچین غیر متمرکزتری به حساب میآید.
گرههای اتریوم بسیار شبیه به گرههای بیتکوین هستند. کارشناسان تخمین میزنند که تعداد گرههای اتریوم از گرههای بیتکوین بیشتر شده است. اما اجرا و راه اندازی یک نود اتریوم به مهارتهای خاصی نیاز دارد. محبوبیت نودهای کاردانو نیز در حال افزایش هستند. اینها گرههای سطح بالایی هستند که زیربنای شبکه کاردانو را تشکیل میدهند. ساختار آنها کمی با اتریوم و بیتکوین متفاوت است زیرا کپی از تراکنشها را در هر گره ذخیره نمیکند. در عوض، سیستم یک رهبر را در میان مجموعهای از گرهها منصوب میکند که در نهایت یک تراکنش را تأیید میکند.
جمعبندی
راه اندازی و اجرای یک نود بلاکچین شاید تنها راه برای اطمینان از کنترل کامل گره خود و پیروی از قوانین بلاکچین باشد. هنگام اجرای یک نود، ایجاد و پخش تراکنشها بدون به خطر انداختن اطلاعات خصوصی، آسان است. کاربران همچنین میتوانند با حفظ کلیدهای خصوصی خود، امنیت را بهبود بخشند. مبتدیان و افرادی که به تازگی یک گره را اجرا میکنند، میتوانند یک ارائه دهنده گره بلاکچین (node provider) را انتخاب کنند تا اطمینان حاصل شود که کل فرآیند، کاربر پسند بوده و وقت کمتری میگیرد.