بلاک چیست و چه وظیفهای در بلاکچین دارد؟
بلاک (به انگلیسی: Block) دنبالهای از بیتها یا بایتها است که طول ثابتی دارد و به آن طول بلاک میگویند. فرآیند قرار دادن دادهها در بلاکها را بلاکبندی میگویند و دادههایی که از چنین ساختاری برخوردارند، دادههای بلاکبندیشده نام دارند.
بلاک در بلاکچین چیست؟
در فناوری بلاکچین، بلوک ساختار دادهای است که حاوی دادههای تراکنش است که به طور دائم در پایگاه داده بلاکچین ثبت میشود. هر بلوک برخی یا همه آخرین تراکنشهایی را که هنوز توسط شبکه تایید نشدهاند، ثبت میکند. پس از تأیید اعتبار، بلوک بسته میشود و یک بلوک جدید برای ورود و تأیید تراکنشهای جدید ایجاد میشود. بلوک یک ذخیره دائمی از سوابق است که پس از نوشتن، قابل تغییر یا حذف نیستند. یک بلوک از دو بخش اصلی تشکیل شده است: هدر و بدنه.
هدر حاوی اطلاعات مربوط به بلوک و ماینر است، در حالی که بدنه حاوی سوابق تراکنش است. هدر بیشتر به بخشهای فرعی تقسیم میشود که شامل شماره بلوک، مهر زمانی، nonce و هش بلوک قبلی است. هش بلوک قبلی بلوکها را به هم متصل میکند و دادههای بلوکهای قبلی را تغییرناپذیر میکند. اگر دادههای بلوکهای قبلی تغییر کند، هش آن بلوک نیز تغییر میکند و باعث از بین رفتن زنجیره بلوک میشود.
ساختار دقیق بلوکها میتواند بلاکچین به بلاکچین متفاوت باشد؛ اما ساختار کلی یک بلوک مشابه است. بلوکها با اعداد طولانی که شامل اطلاعات تراکنش رمزگذاری شده از بلوکهای قبلی و اطلاعات تراکنشهای جدید است، شناسایی میشوند. قبل از ایجاد بلوکهای جدید، بلوکها و اطلاعات درون آنها باید توسط یک شبکه تأیید شود. بلاکها و بلاکچینها تنها توسط ارزهای دیجیتال استفاده نمیشوند. آنها همچنین کاربردهای بسیار دیگری دارند.
انواع بلاک در بلاکچین
انواع مختلفی از بلوکها در فناوری بلاکچین وجود دارد، از جمله:
بلوک معتبر (Valid Blocks): بلوکهای معتبر بلوکهای منظمی هستند که از بلوک پیدایش پیروی میکنند. این بلوکها شامل مجموعهای از تراکنشها هستند که توسط شرکت کنندگان شبکه تایید شده و معتبر تلقی شده اند. بلوکهای معتبر به ترتیب متوالی به بلاکچین اضافه میشوند و هر بلوک به هش بلوک قبلی اشاره میکند.
- بلوکهای معتبر بلوکهای منظمی هستند که از بلوک پیدایش پیروی میکنند.
- این بلوکها حاوی مجموعهای از تراکنشها هستند که توسط شرکت کنندگان شبکه تایید شده و معتبر تلقی شدهاند.
- بلوکهای معتبر به ترتیب متوالی به بلاکچین اضافه میشوند و هر بلوک به هش بلوک قبلی اشاره میکند.
- بلوکهای معتبر، بلوکهای سازنده بلاکچین هستند و امکان عملکرد بلاکچین و تراکنشهای آن را فراهم میکنند.
بلوک یتیم (Orphan Blocks): بلوکهای یتیم که به بلوکهای قدیمی نیز معروف هستند، بلوکهایی هستند که استخراج شدهاند اما در بلاکچین اصلی گنجانده نشدهاند. این میتواند زمانی اتفاق بیفتد که چندین ماینر به طور همزمان راه حلهای معتبری برای مسئله ریاضی پیدا کنند و در نتیجه بلوکهای رقابتی ایجاد شود. تنها یکی از این بلوکها بخشی از بلاکچین اصلی میشود، در حالی که بقیه به بلوکهای یتیم تبدیل میشوند. اصطلاحات و طبقه بندی خاص بلوکها ممکن است بسته به اجرای بلاکچین متفاوت باشد. با این حال، این سه نوع بلوک معمولاً در شبکههای زنجیره بلوکی مختلف شناخته میشوند.
- بلوکهای یتیم که به بلوکهای قدیمی نیز معروف هستند، بلوکهایی هستند که استخراج شدهاند اما در بلاکچین اصلی گنجانده نشدهاند.
- وقتی رخ میدهد که چندین ماینر به طور همزمان راهحلهای معتبری برای مسئله ریاضی پیدا کنند و در نتیجه بلوکهای رقابتی ایجاد شود.
- فقط یکی از این بلوکها بخشی از بلاکچین اصلی میشود، در حالی که بقیه به بلوکهای یتیم تبدیل میشوند.
- بلوکهای یتیم بخشی از بلاکچین نیستند و به عملیات یا تراکنشهای بلاکچین کمک نمیکنند.
بلوک پیدایش (Genesis Block): بلوک پیدایش یا جنسیس اولین بلوک در یک بلاکچین است. به عنوان پایه و اساس کل شبکه بلاکچین عمل میکند و بلوک اولیه است. بلوک پیدایش اولین بلوک در یک بلاکچین است و به عنوان پایه و اساس کل شبکه بلاکچین عمل میکند. معمولاً در نرمافزار کاربردی بلاکچین کدگذاری میشود و دارای ویژگیهای منحصربهفردی است که آن را از بلوکهای بعدی در بلاکچین متمایز میکند. بلوک پیدایش شالوده شبکه بلاکچین را تشکیل میدهد و نمونه اولیه تمام بلوکهای دیگر در بلاکچین است.
تفاوت بلوک جنسیس با سایر بلوکها
بلوک جنسیس با نام بلوک ۰ نیز که میشود، اولین بلوک در یک بلاکچین است. اهمیت ویژهای دارد؛ زیرا به عنوان پایهای عمل میکند که تمام بلوکهای بعدی در بلاکچین بر روی آن ساخته میشوند. بلوک Genesis بلوک اولیه در بلاکچین است و به هیچ بلوک قبلی اشاره نمیکند؛ زیرا نقطه شروع است. در مقابل، بلوکهای دیگر در بلاکچین به هش بلوک قبلی اشاره میکنند و از بلوکها را تشکیل میدهند. بلوک Genesis ممکن است ویژگیهای خاص به فرد بلوغ باشد که آن را از سایرین متمایز میکند.
ممکن است حاویها یا پیامهای خاصی باشد که دارای نمادین یا تاریخی است. سایر بلوکها حاوی دادههای تراکنش یا سایر اطلاعات مرتبط هستند. بلوک Genesis به طور معمول در نرم افزار کاربردی زنجیره بلوک کدگذاری میشود. به صورت دستی توسط خالق بلاکچین ایجاد یا تعریف میشود و به عنوان نمونه برای تمام بلوکهای بعدی عمل میکند.
بلوک جنسیس نقش مهمی در ایجاد اعتماد و ایجاد نقطه شروع برای بلاکچین ایفا میکند. این تضمین میکند که همه شرکت کنندگان یک نقطه مرجع مشترک دارند و میتوانند یکپارچگی بلوکهای بعدی را بررسی کنند. در برخی از پیادهسازیهای زنجیره بلوکی مانند بیت کوین، بلوک جنسیس یارانه غیر قابل مصرف تولید میکند. این یعنی بلوک جنسیس قابل خرج یا انتقال نیست.
بلاک در بلاکچین چگونه کار میکند؟
بلوک در بلاکچین یک ساختار داده است که اطلاعات را ذخیره میکند. در مورد بلاکچینهای ارز دیجیتال، یک بلوک حاوی دادههای تراکنش است. این بلوکها با افزودن هش بلوک قبلی با هدر بلوک بعدی به هم متصل میشوند، که ترتیب بلوکها را دست نخورده نگه میدارد و دادههای بلوکها را تغییرناپذیر میکند. ساختار کلی یک بلوک به شرح زیر است:
هدر بلوک:
Previous Block Hash: این هش بلوک قبلی در بلاکچین است که بلوکها را به هم متصل میکند و دادههای بلوکهای قبلی را غیرقابل تغییر میکند.
Timestamp: مهر زمانی نشان دهنده زمانی است که بلوک در آن ایجاد شده است.
Nonce: یک nonce یک مقدار تصادفی است که ماینرها یا اعتباردهندهها آن را تغییر میدهند تا یک هش معتبر برای بلوک پیدا کنند.
Merkel Root Hash: این هش است که تمام تراکنشهای داخل بلوک را نشان میدهد و از یکپارچگی دادههای تراکنش اطمینان میدهد.
بدنه بلوک:
سوابق تراکنش: بدنه بلوک حاوی دادههای واقعی تراکنش است که شامل اطلاعاتی مانند فرستنده، گیرنده و مقدار ارز دیجیتال منتقل شده است.
قبل از اینکه یک تراکنش به یک بلوک در بلاکچین اضافه شود، باید توسط گرههای شبکه تایید شود. فرآیند تأیید تراکنشها شامل احراز هویت، مجوز، استخراج و اعتبار سنجی است. این فرآیند یکپارچگی و تغییر ناپذیری بلاکچین را تضمین میکند. هنگامی که یک بلوک به بلاکچین اضافه میشود، به آخرین بلوک در زنجیره تبدیل میشود و هش آن در هدر بلوک بعدی قرار میگیرد. این زنجیره بلوکها یکپارچگی و تغییر ناپذیری بلاکچین را تضمین میکند.
چگونه بلوکها به بلاکچین اضافه میشوند؟
فرآیند دقیق استخراج یک بلوک بسته به اجرای خاص بلاکچین و مکانیسم اجماع مورد استفاده متفاوت است. در ادامه فرآیند استخراج یک بلوک در بلاکچین آورده شده است: نقش ماینرها در افزودن بلاکها به بلاکچین بسیار مهم است. ماینرها وظایف زیر را انجام میدهند:
- تایید تراکنشها: ماینرها مسئول اعتبارسنجی و تایید تراکنشهایی هستند که در یک بلوک گنجانده شدهاند. آنها اطمینان حاصل میکنند که تراکنشها قانونی هستند و قوانین و الزامات پروتکل بلاکچین را برآورده میکنند.
- ایجاد یک بلوک: ماینرها مجموعهای از تراکنشهای معتبر را جمع آوری کرده و یک بلوک ایجاد میکنند. این بلوک شامل تراکنشهایی است که به بلاکچین اضافه میشود.
- ایجاد یک بلوک کاندید: استخراجکنندگان یا اعتبارسنجی مجموعهای از تراکنشها را از مخزن تراکنش جمعآوری کرده و یک بلوک کاندید ایجاد میکنند. این بلوک شامل تراکنشهایی است که به بلاکچین اضافه میشود.
- ایجاد هدر بلوک: به بلوک کاندید یک هدر بلوک داده میشود که شامل ابرداده درباره بلوک است. این ابرداده میتواند شامل هش بلوک قبلی، مهر زمانی و سایر اطلاعات مرتبط باشد.
- حل یک مسئله ریاضی: ماینرها در فرآیندی به نام ماینینگ شرکت میکنند، جایی که سعی میکنند با هش کردن مکرر هدر بلوک با مقادیر غیرانسی مختلف، یک مسئله پیچیده ریاضی را حل کنند. این مشکل به قدرت محاسباتی قابل توجهی نیاز دارد و به گونهای طراحی شده است که حل آن دشوار است اما تأیید آن آسان است.
- یافتن یک nonce معتبر: ماینرها مقدار nonce را در هدر بلوک تغییر میدهند و بهطور مکرر هدر را هش میکنند تا زمانی که یک nonce پیدا کنند که وقتی با سایر دادههای هدر ترکیب میشود، هش ایجاد میکند که معیارهای خاصی را برآورده میکند. این به عنوان یافتن یک غیر معتبر شناخته میشود.
- پخش بلوک: هنگامی که یک ماینر یا اعتباردهنده یک nonce معتبر پیدا میکند، بلوک را به شبکه پخش میکند. گرههای دیگر در شبکه بلوک را دریافت میکنند و به طور مستقل اعتبار آن را تأیید میکنند.
- اجماع و اعتبارسنجی: گرهها در شبکه اعتبار بلوک را با بررسی هش و تراکنشهای درون آن تأیید میکنند. اجماع زمانی حاصل میشود که اکثریت گرهها موافق باشند که بلوک معتبر است. اگر بلوک معتبر تلقی شود، به بلاکچین اضافه میشود.
- بلاکهای زنجیرهای: بلوک تازه اضافه شده به آخرین بلوک در بلاکچین تبدیل میشود و هش آن در هدر بلوک بعدی قرار میگیرد. این زنجیره بلوکها یکپارچگی و تغییر ناپذیری بلاکچین را تضمین میکند.
هدر بلاک (Block Header) چیست؟
هدر بلوک به عنوان یک نمایش فشرده از اطلاعات ضروری بلوک عمل میکند و امکان پردازش و انتقال سریعتر در سراسر شبکه را فراهم میکند. برای حفظ یکپارچگی، امنیت و ترتیب زمانی بلاکچین بسیار مهم است. هدر بلوک در زمینه بلاکچین به ابرداده مرتبط با یک بلوک اشاره دارد. حاوی اطلاعات مهمی در مورد خود بلوک است و به عنوان خلاصهای از محتویات بلوک عمل میکند. جزئیات خاصی که در هدر بلوک گنجانده شده است؛ ممکن است بسته به اجرای بلاکچین متفاوت باشد، اما معمولاً هدر بلوک از اجزای زیر تشکیل شده است:
۱. ارتفاع بلوک: این نشان دهنده موقعیت بلوک در بلاکچین است که نشان دهنده تعداد بلوکهای قبل از آن است.
۲. هش بلوک: هش هدر بلوک به عنوان یک شناسه منحصر به فرد برای بلوک عمل میکند. با اعمال یک تابع هش رمزنگاری به دادههای هدر بلوک ایجاد میشود.
۳. هش بلوک قبلی: این هش هدر بلوک قبلی است. بلوک فعلی را به بلوک قبلی پیوند میدهد و زنجیرهای از بلوکها را در زنجیره بلوک ایجاد میکند.
۴. Timestamp: مهر زمانی نشان دهنده زمانی است که بلوک ایجاد شده یا به بلاکچین اضافه شده است.
۵. ریشه Merkle: ریشه Merkle هش تمام تراکنشهای موجود در بلوک است. این یک نمایش مختصر از دادههای تراکنش ارائه میدهد و امکان تأیید کارآمد یکپارچگی بلوک را فراهم میکند.
۶. عدد Nonce: یک عدد تصادفی است که ماینرها یا اعتباردهندهها در هدر بلوک در طول فرآیند استخراج تنظیم میکنند تا یک هش معتبر برای بلوک پیدا کنند. در مکانیسمهای اجماع اثبات کار استفاده میشود.
۷. دشواری: سطح دشواری نشان دهنده پیچیدگی مسئله ریاضی است که ماینرها برای استخراج یک بلوک باید حل کنند. در طول زمان تنظیم میشود تا نرخ ایجاد بلوک ثابت را حفظ کند.
ارتفاع بلاک چیست؟
ارتفاع بلاک به معیار خاصی اشاره دارد که در فناوری بلاکچین برای تعیین تعداد بلوکهایی که قبل از یک بلوک خاص در زنجیره بلوک استفاده میشود، استفاده میشود. به هر بلوک در بلاکچین یک مقدار ارتفاع بلوک اختصاص داده میشود که نشان دهنده موقعیت آن در ترتیب متوالی بلوکها است. بلوک پیدایش، که اولین بلوک در بلاکچین است، دارای ارتفاع بلوک صفر است زیرا هیچ بلوک قبلی ندارد.
ارتفاع بلوک اهداف مختلفی را در اکوسیستم بلاکچین انجام میدهد. هنگام جستجوی بخش خاصی از بلاکچین میتوان از آن به عنوان یک شناسه استفاده کرد. علاوه بر این، به تعیین نرخ اضافه شدن بلاکهای جدید به زنجیره کمک میکند و بینشهایی در مورد رشد و فعالیت بلاکچین ارائه میدهد. ارتفاع بلوک همچنین میتواند اندازه یا زمان فعلی وجود یک بلاکچین را نشان دهد.
در موارد نادر، اگر چندین طرف معمای رمزنگاری مرتبط با یک بلوک را به طور همزمان حل کنند، ممکن است دو بلوک با ارتفاع بلوک یکسانی به پایان برسند. این وضعیت میتواند منجر به توسعه یک فورک در بلاکچین شود، جایی که زنجیره به چندین شاخه تقسیم میشود. ارتفاع بلوک معیاری است که موقعیت یک بلوک را در بلاکچین نشان میدهد و اطلاعات ارزشمندی در مورد اندازه، رشد و ترتیب زمانی بلاکهای زنجیره بلوک ارائه میکند.
زمان بلاک چیست؟
زمان بلاک به زمانی اشاره دارد که یک سیستم مبتنی بر بلاکچین برای تولید یک بلوک جدید طول میکشد. این معیار زمانی است که برای ماینرها یا اعتبارسنجیها در یک شبکه طول میکشد تا تراکنشهای یک بلاک را تأیید کنند و یک بلوک جدید در بلاکچین ایجاد کنند. زمان بلاک میتواند بسته به اجرای خاص بلاکچین و مکانیسم اجماع متفاوت باشد.
زمان بلاک، سرعت تایید تراکنش را در یک بلاکچین دیکته میکند. زمان بلوک کوتاهتر به معنای تأیید سریعتر تراکنش است، در حالی که زمان بلوک طولانیتر ممکن است منجر به تأیید کندتر شود. شبکههای بلاکچین مختلف زمانهای بلوک متفاوتی دارند. به عنوان مثال، بیت کوین به طور متوسط زمان بلوک حدود ۱۰ دقیقه دارد، در حالی که اتریوم میانگین زمان بلوک حدود ۱۰ تا ۱۹ ثانیه دارد. زمان بلاک عامل مهمی در تعیین کارایی و مقیاسپذیری شبکه بلاکچین است. بر توان عملیاتی و ظرفیت شبکه برای پردازش تراکنشها تأثیر میگذارد.
در بلاکچینهای مبتنی بر اثبات کار مانند بیت کوین، با تنظیم سختی استخراج، زمان بلاک نزدیک به یک مقدار ثابت نگه داشته میشود. دشواری افزایش یا کاهش مییابد تا اطمینان حاصل شود که بلوکها با نرخ ثابت تولید میشوند. زمان بلاک میتواند بر امنیت شبکه بلاکچین تأثیر بگذارد. زمان بلوک کوتاهتر ممکن است شانس فورک یا یتیم شدن بلوکها را افزایش دهد، در حالی که زمان بلاک طولانیتر ممکن است منجر به کندی نهایی تراکنش شود.
محدودیت اندازه یک بلوک در بلاکچین چقدر است؟
محدودیت اندازه یک بلوک در بلاکچین بسته به اجرای خاص بلاکچین و مکانیسم اجماع مورد استفاده متفاوت است. مثلا محدودیت اندازه بلوک بیت کوین از نظر تاریخی به ۱ مگابایت داده محدود شده بود. با این وجود، با اجرای Segregated Witness (SegWit) در سال ۲۰۱۷، محدودیت اندازه بلوک با محدودیت وزن بلوک ۴ میلیون جایگزین شد. اتریوم محدودیت اندازه بلوک خاصی ندارد، اما دارای محدودیت گس است که حداکثر مقدار کار محاسباتی قابل انجام در یک بلوک را تعیین میکند.
جامعه بیت کوین کش نیز قوانین را تغییر داد تا پروژه بتواند بلوکهای ۸ مگابایتی و بعداً ۳۲ مگابایتی داشته باشد. اندازه تک تک بلاکها در یک بلاکچین میتواند تأثیر بالقوه زیادی بر سرعت و ظرفیت شبکه داشته باشد. افزایش اندازه بلوکها میتواند منجر به نرخ تراکنش در ثانیه بالاتر شود، اما ممکن است منجر به تقسیم موقت زنجیره شود. علاوه بر این، افزایش محدودیت اندازه بلوک میتواند منجر به تمرکز و آسیب به ماهیت غیرمتمرکز زنجیره بلوک شود.
چگونگی تایید تراکنشها قبل از اضافه شدن به یک بلوک
فرآیند تأیید تراکنشها قبل از اضافه شدن به یک بلوک شامل احراز هویت، مجوز، استخراج و اعتبارسنجی است. این فرآیند یکپارچگی و تغییر ناپذیری بلاکچین را تضمین میکند.
۱. احراز هویت: تراکنشها با استفاده از کلیدهای رمزنگاری احراز هویت میشوند. هر کاربر یک کلید عمومی و یک کلید خصوصی دارد و تراکنش با استفاده از کلید خصوصی امضا میشود. کلید عمومی برای تأیید امضا و اطمینان از صحت تراکنش استفاده میشود.
۲. مجوز: معاملات با استفاده از یک مکانیسم توافقی مانند اثبات کار (PoW) یا اثبات سهام (PoS) مجاز میشوند. در فرآیند PoW، ماینرها یک مسئله پیچیده ریاضی را حل میکنند تا یک بلوک جدید به زنجیره اضافه کنند. در فرآیند PoS، شرکتکنندگان برای اعتبارسنجی تراکنشها باید سهمی در بلاکچین داشته باشند.
۳. استخراج: هنگامی که یک تراکنش احراز هویت و مجاز شد، همراه با سایر تراکنشها در یک بلوک گروه بندی میشود. سپس ماینرها از رایانههایی با قدرت محاسباتی بالا برای حل ریاضی بلوک استفاده میکنند. اولین ماینری که بلاک را حل میکند و تراکنشها را تایید میکند، با ارز دیجیتال پاداش میگیرد.
۴. اعتبارسنجی: بلوک به شبکه پخش میشود و سایر گرههای شبکه به طور مستقل اعتبار آن را تأیید میکنند. گرهها هش و تراکنشهای درون بلوک را بررسی میکنند تا از معتبر بودن آنها اطمینان حاصل کنند. اگر بلوک معتبر تلقی شود، به بلاکچین اضافه میشود.
چگونگی اعتبارسنجی یک بلوک قبل از اضافه شدن به بلاکچین
قبل از اینکه یک بلوک به زنجیره بلوکی اضافه شود، اعتبار آن از طریق فرآیندی که شامل پروتکلهای اعتبارسنجی خاص و مکانیسمهای اجماع است، تأیید میشود. در اینجا یک نمای کلی از نحوه تأیید اعتبار یک بلوک آورده شده است:
اعتبار سنجی اثبات کار (PoW): در بلاکچینهای PoW، مانند بیت کوین، اعتبارسنجیها که به عنوان ماینرها نیز شناخته میشوند، برای حل یک مسئله پیچیده ریاضی با هم رقابت میکنند. اولین تایید کنندهای که مشکل را با موفقیت حل میکند، بلاک را به بلاکچین اضافه میکند و با ارز دیجیتال پاداش میگیرد. این فرآیند تضمین میکند که بلوک معتبر است و اعتباردهنده توان محاسباتی را برای ایمن سازی شبکه سرمایهگذاری کرده است.
اعتبار سنجی اثبات سهام (PoS): در بلاکچینهای PoS، اعتبارسنجیها بر اساس تعداد کوینهایی که در اختیار دارند انتخاب میشوند و مایلند به عنوان وثیقه «سهم» کنند. اعتبارسنجیها برای ایجاد بلوکهای جدید بر اساس سهام خود انتخاب میشوند و شانس انتخاب شدن آنها متناسب با مقدار ارز دیجیتالی است که در اختیار دارند. اعتبارسنجیها تشویق میشوند صادقانه عمل کنند؛ چون در صورت تأیید اعتبار بلوکهای نامعتبر، خطر از دست دادن کوینهای استیک شده خود را دارند. این مکانیسم اجماع تضمین میکند که تمام گرهها در شبکه میتوانند به طور مستقل اعتبار تراکنشها را تأیید و توافق کنند.
تأیید توسط گرههای اعتبار سنجی: گرههای اعتبار سنجی در فرآیند شبکه و تأیید بلوکهای تراکنش. هنگامی که یک گره اعتبارسنجی یک بلوک را تأیید کرد، به عنوان یک رکورد دائمی به دفتر کل زنجیره بلوکی اضافه میشود. این فرآیند تأیید تضمین میکند که تراکنشهای درون بلوک معتبر هستند و با قوانین پروتکل بلاکچین مطابقت دارند.
اجماع بین گرهها: در یک شبکه بلاکچین غیرمتمرکز، چندین گره به طور مستقل اعتبار یک بلوک را تأیید میکنند. اجماع زمانی حاصل میشود که اکثریت گرهها موافق باشند که بلوک معتبر است. این مکانیسم اجماع یکپارچگی و امنیت بلاکچین را با جلوگیری از اضافه کردن بلوکهای نامعتبر توسط عوامل مخرب تضمین میکند.
نقش ماینرها در تائید تراکنشها
ماینرها با تأیید تراکنشها، ایجاد بلاکها و ایمنسازی شبکه از طریق تلاشهای محاسباتی خود، نقش مهمی در اکوسیستم بلاکچین ایفا میکنند. وقتی یک ماینر یک nonce معتبر پیدا کرد، بلاک را به شبکه پخش میکند. سایر گرهها در شبکه اعتبار بلوک را با بررسی هش و تراکنشهای درون آن تأیید میکنند. اگر بلوک معتبر باشد، به بلاکچین اضافه میشود و فرآیند برای بلوک بعدی دوباره شروع میشود. توجه به این نکته مهم است که فرآیند دقیق افزودن بلاکها به بلاکچین بسته به اجرای خاص بلاکچین و مکانیسم اجماع مورد استفاده میتواند متفاوت باشد.
ماینرها از طریق سیستم پاداش تشویق میشوند تا در فرآیند استخراج شرکت کنند. هنگامی که یک ماینر با موفقیت یک بلوک را به بلاکچین اضافه میکند، مقدار معینی ارز دیجیتال به آنها پاداش داده میشود. این پاداش به عنوان انگیزهای برای ماینرها برای کمک به قدرت محاسباتی خود و حفظ امنیت و تمرکززدایی بلاکچین عمل میکند.
تائید تراکنش در اثبات سهام (PoS)
اثبات سهام (PoS) یک مکانیسم توافقی است که برای اعتبارسنجی تراکنشهای ارزهای دیجیتال استفاده میشود. این یک جایگزین برای اثبات کار (PoW) است، که اولین مکانیزم اجماع ایجاد شده برای ارزهای دیجیتال است. PoS روشی با صرفه جویی در مصرف انرژی برای اعتبارسنجی تراکنشها است و با توجه به اینکه چگونه استخراج کریپتو بر روی سیاره تأثیر میگذارد، محبوبیت بیشتری پیدا کرده است. در اینجا نحوه عملکرد PoS آمده است:
۱. Staking: در PoS، صاحبان ارز دیجیتال میتوانند کوینهای خود را به اشتراک بگذارند، که به آنها این حق را میدهد که بلوکهای جدید تراکنشها را بررسی کرده و آنها را به بلاکچین اضافه کنند. هر چه کاربر کوینهای بیشتری را به اشتراک بگذارد، شانس بیشتری برای انتخاب شدن برای تایید یک تراکنش و دریافت پاداش دارد.
۲. اعتبارسنجی: زمانی که کاربر برای تایید یک تراکنش انتخاب شد، باید تایید کند که تراکنش قانونی است و آن را به زنجیره بلوکی اضافه کند. اگر تراکنش معتبر تلقی شود، به کاربر ارز رمزنگاری شده پاداش داده میشود.
۳. اجماع: سایر گرههای شبکه اعتبار بلوک را با بررسی هش و تراکنشهای درون آن تأیید میکنند. اجماع زمانی حاصل میشود که اکثریت گرهها موافق باشند که بلوک معتبر است. اگر بلوک معتبر تلقی شود، به بلاکچین اضافه میشود.
تائید تراکنش در اثبات کار (PoW)
اثبات کار (PoW) یک مکانیسم توافقی است که توسط بسیاری از ارزهای رمزنگاری شده برای اعتبارسنجی تراکنشها در بلاکچین و اعطای توکنها برای مشارکت در شبکه استفاده میشود. فرآیند PoW شامل رقابت ماینرها برای حل مسائل پیچیده ریاضی برای اعتبارسنجی تراکنشها و افزودن بلاکهای جدید به بلاکچین میشود. در اینجا نحوه عملکرد PoW آمده است:
- ماینرها برای حل یک مسئله پیچیده ریاضی با استفاده از قدرت محاسباتی خود برای هش کردن هدر یک بلوک رقابت میکنند.
- اولین ماینری که مشکل را حل میکند و تراکنشهای موجود در بلوک را تأیید میکند، با ارز دیجیتال پاداش میگیرد.
- سایر گرههای شبکه اعتبار بلوک را با بررسی هش و تراکنشهای درون آن تایید میکنند.
- فرآیند PoW برای هر بلوک جدید اضافه شده به بلاکچین تکرار میشود.
- هنگامی که بلوک معتبر تلقی میشود، به بلاکچین اضافه میشود و استخراج کنندهای که مشکل را حل کرده است با ارز دیجیتال پاداش میگیرد.
درخت مرکل یا Merkle tree چیست؟
درخت مرکل که به نام درخت هش نیز شناخته میشود، یک ساختار دادهای است که در علوم کامپیوتر و رمزنگاری استفاده میشود. این یک ساختار درختی است که در آن هر گره برگ هش یک بلوک داده است و هر گره غیر برگ هش از فرزندان آن است. درختان مرکل در سیستمهای توزیع شده برای تأیید و همگام سازی کارآمد دادهها استفاده میشوند. آنها کارآمد هستند زیرا از هشها به جای فایلهای کامل استفاده میکنند که بسیار کوچکتر از خود فایل واقعی هستند.
درختهای مرکل معمولاً بهعنوان درختهای باینری پیادهسازی میشوند، اما میتوان آنها را بهعنوان درختهای n-nary با n فرزند در هر گره ایجاد کرد. درختان مرکل در کاربردهای مختلفی از جمله شبکههای همتا به همتا مانند Tor، Bitcoin و Git استفاده میشوند. در بلاکچین، از درختان مرکل برای تایید کارآمد یکپارچگی دادههای تراکنش استفاده میشود. درخت مرکل به کاربران اجازه میدهد تا یک تراکنش خاص را بدون دانلود کل بلاکچین تأیید کنند. درخت مرکل به این دلیل مفید است که به کاربران اجازه میدهد یک تراکنش خاص را بدون دانلود کل بلاکچین تأیید کنند. درختان مرکل به افتخار رالف مرکل، که آنها را در مقالهای در سال ۱۹۸۷ پیشنهاد کرد، نامگذاری شدهاند.