در این قسمت از مقاله می خواهیم بررسی نماییم که بلاک ها چگونه ایجاد می شوند و با هم مراحل ایجاد و شکل گیری بلاک ها را بررسی می نماییم.
بلاک ها توسط ماینرها ایجاد می شوند. در واقع زمانی که تراکنشی صورت می گیرد، این تراکنش انجام شده مستقیما به بلاکچین اضافه نمی شود بلکه این تراکنش وارد استخر تراکنش ها می شود.
هر بلاک را میتوان مانند صفحهای از یک دفتر کل در نظر گرفت. بلاکهای تکی از چند مولفه تشکیل شدهاند. این بلاکها توسط هدر یا راس بلاک (header) و بدنه (body) از یکدیگر متمایز میشوند.
ماینرها وظیفه دارند که تراکنش ها را از استخر تراکنش جمع آوری نمایند و به یک بلاک هدر که مختص هر بلاک است، وارد کنند و سپس در آخر این بلاک هدر را به بلاکچین اضافه نمایند.
هدر بلاک به 6 جزء تقسیم میشود:
- شماره نسخه نرم افزار
- هش بلاک قبلی
- هش ریشه درخت مرکل
- برچسب زمانی (timestamp)
- تارگت سختی شبکه
- نانس
شماره نسخه نرم افزار
شماره نسخه نرم افزار در اکثر موارد مهم نیست. اگرچه ، ماینر با یک شماره نسخه خاص میتواند پشتیبانی از تصمیمات پروتکل را اعلام کند.
هش بلاک قبلی
از آنجا که هش بلاک قبلی در هش بلاک جدید موجود است، بلاک های بلاکچین همه به یکدیگر متصل میشوند. بدون این بخش، ارتباطی بین بلاک ها وجود نخواهد داشت.
هش ریشه درخت مرکل
تمام معاملات موجود در یک بلاک را می توان در یک هش جمع کرد. این هش ریشه درخت مرکل است.
برچسب زمانی
یک برچسب زمانی در بلاک ، نشان دهنده زمان ایجاد بلاک است.
تارگت سختی شبکه
تارگت نشان میدهد که هش جدید برای تایید شدن چقدر باید کوچک باشد. به عبارت دیگر هر هش باید چند بیت باشد. یک هش با تعداد زیادی صفر در ابتدای آن کوچکتر از هش بدون صفر است.
نانس
نانس (Nonce) همان عددی است که استخراج کنندگان بلاک چین باید به منظور حل رمزنگاری بلاک ها آن را پیدا کنند. نانس مخفف عبارت “عددی که تنها یک بار به کار میرود” (Number only used once) است و به عددی گفته میشود که به یک بلاک هش شده (Hashed) – یا درهم نگاری شده – در بلاک چین اضافه شده و هنگامی که این عدد به همراه هش بلاک مجدداً هش شوند (Rehash)، با آزمون و خطا های متعدد قادر خواهند بود که شرایط و محدودیتهای تعریف شده توسط پارامتر سختی شبکه (Network Difficulty) را برآورده نماید.
بدنه بلاک
بدنه بلاک تمام تراکنش های تایید شده را در اختیار دارد. هنگامی که استخراجکننده یک بلاک را میسازد، در واقع تراکنشها را تایید میکند. به این خاطر، او بررسی میکند که آیا فرستنده، پول کافی برای خرج کردن دارد یا خیر. او به سادگی این اطلاعات را از بلاک چین میخواند.
تراکنشهای درون یک بلاک، در یک سیستم درختی معروف به درخت مرکل قرار میگیرند.
درخت مرکل چیست؟
درخت مرکل (Merkle Root) نام خود را از ریاضیدان مشهور، رالف مرکل گرفته است. درخت مرکل در پی این یافته به وجود آمد که میتوان اطلاعات زیادی را در یک هش تکی ارائه کرد. داده در ابتدا هش میشود. سپس هشها بار دیگر هش میشوند و سپس ادغام صورت میگیرد. در نهایت، درخت مرکل به یک هش تکی ترکیب میشود. این هش آخر با عنوان هش ریشهای یا ریشه درخت شناخته میشود. این ریشه بیانگر تمام اطلاعات برگهای خود (تراکنشهای تکی) و انشعابات (هشهای برگها) خواهد بود.