فضای بلاک Block در واقع فضایی است که دیتابیس همه شبکههای ارزهای دیجیتال را تقویت میکند. در فضای بلاک، ماینرها، تولیدکنندگان، استخرهای ماینینگ و کاربران پیشنهاد دهندگان هستند. تأثیرات بازار blockspace آنقدر فراگیر است که تقریباً تمام جنبههای اکوسیستم ارزهای دیجیتال را تحت تأثیر قرار میدهد. پس از اینکه کاربر یک تراکنش را آغاز کرد، در ممپول هر گره به صورت همتا به همتا منتشر می شود. هر تراکنش دارای کارمزدی که نشان دهنده تمایل به خرید فضای بلوک است که اجازه می دهد تا تراکنش پردازش شده و در یک بلوک گنجانده شود.
هر لحظه بلوکهای پیشنهادی متعددی در فضای بلاک، بین حالت تایید نشده و تایید شده وجود دارد که برای یافتن اولین خروجی هش که هدف دشواری را برآورده میکند، رقابت میکنند. هر بلوک احتمال تبدیل شدن به بلوک بعدی را دارد. ماینرها با انجام میلیاردها محاسبات در ثانیه، موج احتمال را از بین می برد.
از آنجایی که اندازه یک بلوک محدود است، تعداد محدودی از تراکنشها وجود دارد که میتوانند در یک زمان معین انجام شوند، در نتیجه به فضای بلوک یک مقدار زمانی میدهند. معامله ای که برای مدت طولانی تایید نشده باشد ممکن است در معرض نوسانات بازار باشد یا توسط ربات های آربیتراژ پیشتاز شود. هزینه ای که کاربران برای خرید فضای بلاک می پردازند، نشان دهنده تمایل آنها به پیشنهاد برای blockspace آن است. بازار بلاک اسپیس، ماینرها و کاربران را به هم متصل می کند.
بلاکچینها بستر اصلی فعالیت ارزهای دیجیتال مانند بیت کوین، اتریوم، ریپل و ارزهای مشابه دیگر هستند. فناوری بلاکچین است که امنیت این ارزها را فراهم میکند و سبب شده که امکان جعل آنها و تقلب در تراکنشهای ارزهای دیجیتال وجود نداشته باشد. بلاکچین زنجیرهای از بلاکهاست و Block رکن اصلی این شبکه است. پس برای آشنایی کامل با بلاکچین، باید بدانیم که Block چیست؟ در این مقاله میخواهیم بلاک در بلاکچین را به زبان بسیار ساده توضیح دهیم.
فهرست محتوا
بلاک چیست؟
بلاک بخش اصلی فناوری بلاکچین است. آنها را میتوان صفحات دفتر کل توزیع شده بلاکچین دانست. هر Block حاوی اطلاعاتی مانند تراکنشهای صورتگرفته در بستر بلاکچین است که عبارتاند از: زمان انجام تراکنش، آدرس عمومی فرستنده و آدرس عمومی گیرنده، هش اختصاصی خود و هش Block قبلی.
تمام این اطلاعات روی بلاک بهصورت دائمی ذخیره میشود و بههیچعنوان قابل تغییر یا حذف نیستند. این ویژگی را سیستم رمزنگاری شبکه در بلاکها ایجاد میکند. بلاک در بلاکچین دارای بخشهای مختلفی است که یک هدف واحد را دنبال میکنند. هر یک از بخشهای آن وظایف مخصوص به خود دارند.
درخت مرکل یا Merkle tree چیست؟
درخت مرکل یکی از اصطلاحات ارز دیجیتال است. این درخت که بخشی از بلاک در بلاکچین است، نام خود را از ریاضیدان معروف، رالف مرکل گرفته است. با استفاده از این فناوری میتوان اطلاعات بسیاری را توسط یک هش ارائه کرد. بهاینترتیب که دادهها هش میشوند، سپس مقدارهای هش با یکدیگر ادغام شده و تبدیل به یک هش واحد میشوند. این هش واحد، ریشه درخت مرکل نام دارد. برگهای این درخت تراکنشهای صورتگرفته در شبکه هستند و شاخههای درخت، هش برگها هستند.
تا زمانی که شاخهها و برگهای درخت مشخص باشند، ساخت ریشه هش بسیار آسان و سریع صورت میگیرد. اما طبق قانون توابع هش که بهدستآوردن ورودی از خروجی هش تقریباً غیرممکن است (یکطرفه بودن تابع هش)؛ درصورتیکه هش ریشه درخت مرکل یا درخت درهم ساز مشخص باشد اما برگها (تراکنشها) و شاخهها (هش تراکنشها) نامشخص باشند، حدس زدن تراکنشها کار دشواری است.
ساختار بلاک در بلاکچین
بهطورکلی، بلاک را میتوان یک فایل ذخیرهسازی داده بهصورت دائمی دانست. هر Block از دو بخش هدر بلاک (Block Header) و بدنه بلاک (Block Body) تشکیل شده است. هدر Block خود شامل چندین بخش با وظایف مختلف است و بدنه Block محل بارگیری یا ذخیره اطلاعات Block بهحساب میآید.
هدر بلاک (Header Block)
هدر بلاک نقش اساسی در فرایندهای شبکه بلاکچین دارد. بلاکها از طریق هدر به یکدیگر متصل میشوند و از طریق هش هدر در شبکه شناسایی میشوند. هدر به ۶ بخش که عبارتاند از: نسخه برنامه، هش Block قبلی، هش ریشه درخت مرکل، برچسب زمانی، هدف و عدد نانس، تقسیم میشود. هر یک از این بخشها وظایفی از عملیات کلی Block را برعهده دارند.
نسخه برنامه (Version)
شماره نرمافزار یا نسخه برنامه بهمنظور توصیف ساختار دادههای داخل Block استفاده میشود. از طریق این شماره سریال، رایانهها میتوانند محتوای Block را بهراحتی بخوانند. همچنین ماینرها از طریق این شماره میتوانند مشخص کنند برای فعالیت درون شبکه از چه پروتکلی پیروی میکنند.
برچسب زمانی (Timestamp)
برچسب زمانی ترتیب زمانی بلاکها در بلاکچین را نشان میدهد یا به عبارت سادهتر این پارامتر زمان ایجاد هر Block را مشخص میکند. یکی دیگر از کاربردهای مهم Timestamp نشان دادن تغییرات هش ریت و محافظت از بلاکچین در برابر عوامل مخرب است. در واقع میتوان گفت برچسب زمانی نقش امنیتی در زنجیره بلوک ایفا میکند.
هش بلاک قبلی (Last Block)
هش block قبلی برای جلوگیری از سانسور و تقلب در بستر بلاکچین در کنار دادههای موجود در Block قرار میگیرد. این بخش از بلاک بهنوعی تضمینکنندهٔ غیرقابلتغییر و حذف بودن اطلاعات داخل بلاکچین است.
اگر کسی قصد تغییر دادههای موجود در یک Block از سیستم کلی را داشته باشد، باید هش Block قبلی را نیز تغییر دهد. بهعبارتدیگر، باید هش تمام بلاکهای قبلی را تا نخستین Block ایجاد شده در زنجیره تغییر دهد که این روند غیرممکن است و هیچگاه اطلاعات داخل بلاکچین تغییر نخواهد کرد.
هش درخت مرکل (Merkle Root)
میتوان تمام اطلاعات موجود Block که شامل اطلاعات تراکنشها (زمان انجام، آدرس فرستنده و گیرنده)، هش اختصاصی و هش Block قبلی است را در یک هش واحد جمعآوری کرد. به این مقدار هش، هش درخت مرکل یا درخت درهم ساز میگویند.
هدف (Target)
اندازه هش در بلاکچین با بیت اندازهگیری میشود. هش فعلی Block باید کوچکتر یا مساوی هش هدف باشد. هرچه تعداد صفرهای اول مقدار هش بیشتر باشد؛ کوچکتر است. هدف سختی بلاک در بلاکچین مشخصکنندهٔ میزان کوچکی مقدار هش است. یعنی تعیین میکند هش چقدر کوچک باشد تا ماینرهای شبکه اعتبار آن را برای ثبت در سیستم تأیید کنند.
عدد نانس (Nonce)
نانس به عددی گفته میشود که تنها یکبار استفاده میشود (Number Only Used Once) و از طریق آن ماینرها میتوانند هش کمتر از هدف سختی شبکه را حدس بزنند. این عدد از طریق الگوریتم اثبات کار (PoW) به هش Block اضافه میشود. بلاک بهتنهایی هش نمیشوند و به یک عدد دیگر برای فرایند رمزنگاری نیاز دارند. نانس همان عدد است.
بدنه بلاک (Block Body)
بدنه بلاک محل ذخیرهٔ تاریخچهٔ تراکنشهای تأیید شده است. هنگامی که ماینرها یک Block را ایجاد میکنند، در واقع یک تراکنش را اعتبارسنجی و تأیید کردهاند. آنها برای تأیید این تراکنشها، بررسی میکنند که فرستنده به میزان تراکنش موردنظر، ارز در حساب خود دارد یا خیر. این سوابق برای بررسی راحتتر در بدنه Block ذخیره میشود.
بلاک در بلاکچین چگونه ساخته میشود؟
بلاکها توسط استخراجکنندگان یا همان ماینرها ایجاد میشوند. تراکنشها در بلاکچین بهسرعت و در همان زمان انتشار در شبکه انجام نمیشوند. آنها در استخر حافظه (Memory Pool) ذخیره میشوند و در انتظار تأیید گرهها (کاربران شبکه بلاکچین) میمانند.
در این مرحله، ماینرها تراکنشها را برای تأیید کردن انتخاب میکنند و در Block کاندید قرار میدهند. سپس برای افزودن این Block به شبکه بلاکچین تلاش میکنند.
بلاکها چطور به بلاکچین اضافه میشوند؟
ماینر Block کاندید را با بلاک هدر و بهترین عدد نانس بر اساس هدف سختی استخراج به زنجیره بلاکها یا همان بلاکچین اضافه میکند. بهاینترتیب که بلاک Block ک جدید را بهطوریکه هش آن کمتر از هدف سختی شبکه باشد، هش میکنند. سختی شبکه میزان دشواری استخراج Block جدید است و در بلاکچینهای مختلف متفاوت است. برای بلاکچین بیت کوین از سال ۲۰۱۶ به بعد این میزان در بازههای زمانی مختلف تغییر کرده است تا زمان استخراج هر Block به طور میانگین ۱۰ دقیقه باقی بماند.
طراحی فضای بلاک چگونه است؟
فضای بلاک در بلاک چین ها وجود داشته و بلاک چین ها را می توان به روش های مختلفی طراحی کرد. مهمترین ویژگی یک بلاک چین، ویژگی های امنیتی آن است. تعهداتی که می دهد چقدر قابل اعتماد است؟ آیا می توانید به آنها اعتماد کنید؟ آیا می توانید اعتماد کنید که سیستم نمی تواند خراب شود یا هک شود؟ این مهمترین ویژگی است.
یکی دیگر از ویژگی های مهم عملکرد است. این مربوط به کارمزدی است که هنگام تراکنش در یک بلاک چین می پردازید. اگر بتوانید سیستم هایی بسازید که کارایی بیشتری دارند، می توانید این هزینه ها را کاهش دهید. به عنوان مثال، در بلاک چین مانند Solana، یکی از ویژگی های خوب این است که هزینه ها به دلیل نحوه طراحی آن پایین است. اکنون، برخی افراد استدلال میکنند که برای رسیدن به آن عملکرد، در بخش امنیتی معاوضه خواهید داشت اما واضح است که امنیت و عملکرد هر دو اولویت اصلی هستند.
نکته دیگر، محیط پیرامون بلاک چین است. برخی از بلاک چینها خانه جوامعی هستند که بر توسعه نرمافزار، ساخت برنامههای کاربردی جدید و ایجاد خدمات جدید اینترنتی ارزشمند متمرکز هستند. اتریوم به عنوان نمونه ای از یک جامعه توسعه دهندگان سالم به ذهن می رسد. بلاک چین های دیگر بیشتر بر روی حدس و گمان تمرکز می کنند و از سلامت کمتری برخوردار هستند. بنابراین، بلاک چین ها از یک طرف کامپیوتر هستند، بنابراین ویژگی های امنیتی و عملکرد آنها اهمیت دارد؛ اما آنها همچنین شبکه های اجتماعی هستند و باید جوامع سالمی داشته باشند که بر ساختن متمرکز شده اند.
وقتی صحبت از مبحث فضای بلاک می شود، بسیاری از بحث ها حول مسئله مقیاس پذیری متمرکز می شوند. همه ما دیدهایم که وقتی تقاضا زیاد است چه اتفاقی برای اتریوم میافتد: ازدحام و هزینههای سنگین گس میکنیم. به نظر شما جالبترین و امیدوارکنندهترین راهها برای مقیاسبندی بلاک چین و فضایی که ارائه میدهند چیست؟
شما درست می گویید که به اصطلاح مشکل مقیاس پذیری در بلاک چین یک موضوع چالش برانگیز است. برخی از بلاکچینها، مانند اتریوم، بر این عقیده هستند که بهترین راه برای رشد blockspace، از طریق آنچه L2 یا «لایه دو» نامیده میشود، است. L2 ها سیستم هایی هستند که مانند اتریوم در بالای یک لایه یک قرار می گیرند.
اگر به درستی طراحی شده باشند، L2 ها ویژگی های امنیتی لایه پایین را به ارث می برند، بنابراین شما همچنان ضمانت های امنیتی قوی اتریوم را دارید. اما آن ها ظرفیت فضای بلاک اضافی را در بالای آن فراهم می کنند که در آن برنامه ها می توانند با هزینه های گس کمتر اجرا شوند. در حال حاضر چند L2 برجسته وجود دارد: Optimism, Arbitrum, Aztec, zkSync و Starkware همه آنها رویکردهای مختلفی دارند و همه آنها در مراحل مختلف توسعه هستند.
عملکرد فضای بلاک چگونه است؟
Blockspace فضایی در بلاک چین است که می توانید کد را اجرا کرده و داده ها را ذخیره کنید. فضای بلاک با فضای محاسباتی سنتی از این جهت متفاوت است که تا زمان ظهور بلاک چین، نرم افزار همیشه تابع سخت افزار و در نهایت، صاحب آن سخت افزار خواهد بود.
اگر برای رایانه های سنتی نرم افزار می نویسید، این صاحبان سخت افزار هستند که کنترل را در دست دارند. اگر فیسبوک مقداری کد بنویسد و بگوید هر توسعهدهندهای میتواند بیاید و به یک API خاص دسترسی داشته باشد، مدیریت فیسبوک میتواند نظر خود را تغییر دهد و بعداً دسترسی را لغو کند. از آنجا که فیس بوک سخت افزاری را که نرم افزار روی آن اجرا می شود کنترل می کند، در نهایت نرم افزار را کنترل می کند.
بلاک چین ها از نظر ساختاری با یکدیگر اختلاف دارند: نرم افزار مسئول سخت افزار است. اگر نرمافزاری برای بلاکچین مینویسید، میتوانید کدی بنویسید که تعهدات قوی ایجاد کند. می توانید به کاربران و توسعه دهندگان اطمینان دهید که نرم افزار همانطور که طراحی شده است به کار خود ادامه خواهد داد.
به طور خاص، بلاک چین ها از چیزی که مکانیسم اجماع نامیده می شود برای انجام این تعهدات استفاده می کنند. اپراتورهای سخت افزاری مختلفی که شبکه را اجرا می کنند هر چند وقت یکبار گرد هم می آیند و در مورد وضعیت رایانه مجازی بلاک چین رای می دهند. تئوری بازی در اطراف آن وجود دارد که تضمین می کند که در اکثر شرایط که نرم افزار همانطور که طراحی شده است به کار خود ادامه می دهد و یکپارچگی داده ها حفظ می شود.
رابطه ماینرها با Block
استخراج به معنای حل عدد نانس، تنها عدد متغیر در Block است. حل این عدد و بهدستآوردن هش آن، مستلزم حل کردن مسائل پیچیده ریاضی در شبکه است. بهعنوانمثال بیت کوین از هش رمزنگاری شده با نام SHA256 در الگوریتم خود استفاده میکند. یک ماینر بیت کوین باید این عدد را در برنامه ماینینگ خود استفاده کند تا بتواند مسئله موجود در شبکه را حل کرده و پاداش استخراج را دریافت کند.
مشکل اصلی در این است که تمام هدرهای بلاک قبلی به صورت تصادفی رمزگذاری می شوند. از این رو، هدر block فعلی یک عدد رمزگذاری شده تصادفی است که بر اساس اعداد رمزگذاری شده تصادفی بلاکهای قبلی و اطلاعات Block فعلی تولید میشود؛ بنابراین هر Block جدیدی که در بلاکچین بیت کوین ثبت میشود، فرایند استخراج را برای ماینرها دشوار میکند. این امر به سختی شبکه نیز معروف است.
بررسی عملکرد فضای بلاک در ارز دیجیتال بیت کوین
این سناریو را با نحوه عملکرد بیت کوین مقایسه کنید. بیت کوین وعده می دهد که تنها ۲۱ میلیون بیت کوین وجود خواهد داشت که کمبود یکی از عواملی است که بیت کوین را قادر می سازد ارزش داشته باشد. میتوانید اعتماد کنید که بیتکوین تنها ۲۱ میلیون بیتکوین خواهد داشت زیرا این قانون در بلاک چین بیتکوین نوشته شده است که این قانون در معماری آن گنجانده شده است.
حتی اگر تعداد زیادی از افرادی که کد بیتکوین را اجرا میکنند. به اصطلاح ماینرهای بیتکوین در تلاشند تا این قوانین را زیر پا بگذارند، انجام این کار برای آنها بسیار دشوار است. در تاریخ بیتکوین و اتریوم و دیگر بلاک چینهای بزرگ، هیچکس نتوانسته است این تضمینهای تئوری بازی را زیر پا بگذارد.
این چیزی است که Blockspace را متفاوت می کند. توسعه دهندگان و کارآفرینانی که می خواهند در بالای اکوسیستم، بلاک چین بسازند، می دانند قوانین چیست. آنطور که توسط شرکتهای فناوری سنتی تغییر میکنند، قوانین آنها تغییر نمیکنند. وقتی صحبت از بلاک چین به میان میآید، قوانین سیستم در کد قرار می گیرند. بنابراین، blockspace واحدی از محاسبات و ذخیرهسازی است که بر روی زنجیرههای بلوکی زندگی میکند و در نتیجه از کنترل صاحبان سختافزار خارج است.
سایر کاربردهای بلاک
از آنجایی که بیت کوین اولین رمزارز شناخته شده در بازار کریپتوکارنسی است، اغلب افراد به اشتباه فکر میکنند که مفهوم بلاک فقط مختص بلاکچین بیت کوین است. اما باید بدانید که بسیاری از رمزارزها از مفهوم بلاک در بلاکچین خود استفاده میکنند. بلاک در بلاکچین باعث میشود تا هک کردن یا دستکاری ارزهای دیجیتال برای مهاجمان بسیار دشوار شود. به همین دلیل است که بسیاری از بانکهای سراسر جهان به دنبال استفاده از مزایای بلاک و بلاکچین برای حفظ اطلاعات خود هستند.
امروزه بلاک در بلاکچین علاوه بر ارزهای دیجیتال برای ایجاد برنامههای مالی غیرمتمرکز، توکن غیر قابل معاوضه (NFT) استفاده میشود. با توجه به اینکه میتوان گفت بلاکچین یک فناوری نوظهور است هنوز تمام کاربردهای آن مورد استفاده قرار نگرفته است. دور از انتظار نیست که به زودی بلاک و بلاکچین به زندگی روزمره انسان نیز ورود کند و همه چیز را متحول کند.