این روزها اسم بلاکچین را زیاد میشنویم؛ از بیتکوین گرفته تا قراردادهای هوشمند. اما واقعاً بلاکچین چیست و در پشت صحنه چه اتفاقی میافتد؟
بلاکچین یک دفتر کل توزیعشده (Distributed Ledger) است که اطلاعات را به صورت بلاکهایی به هم متصل ذخیره میکند.
هر بلاک به بلاک قبلی خودش متصل است و این اتصال از طریق یک مفهوم به نام هش (Hash) انجام میشود. همین اتصال زنجیرهای باعث میشود دادهها تقریباً غیرقابل تغییر باشند.
هر بلاک به طور کلی شامل سه بخش اصلی است:
داده (Data)
اطلاعات تراکنشها در این قسمت قرار میگیرد.
هش بلاک (Block Hash)
یک شناسه منحصربهفرد که مثل اثر انگشت برای آن بلاک عمل میکند.
هش بلاک قبلی (Previous Hash)
این قسمت بلاک فعلی را به بلاک قبلی متصل میکند و زنجیره را میسازد.
اگر حتی یک کاراکتر از دادهها تغییر کند، هش عوض میشود و کل زنجیره به هم میریزد.
اولین بلاک در هر بلاکچین را Genesis Block مینامند.
این بلاک، تنها بلاکی است که هش بلاک قبلی ندارد، چون قبل از آن چیزی وجود نداشته است.
در فرآیند استخراج، عددی به نام Nonce استفاده میشود.
نانس یک عدد ۳۲ بیتی است.
ماینرها این عدد را بارها تغییر میدهند.
هدف این است که هش نهایی بلاک به مقدار مشخصی برسد.
این کار همان چیزی است که به آن Proof of Work میگویند.
در شبکههایی مثل بیتکوین، هش باید شرایط خاصی داشته باشد؛ مثلاً با تعداد مشخصی صفر شروع شود.
مقدار سختی شبکه بین ۰ تا ۲۵۵ قابل تنظیم است.
هرچه سختی بیشتر باشد، پیدا کردن هش معتبر سختتر میشود.
ماینرها:
تراکنشها را جمعآوری میکنند.
آنها را داخل یک بلاک قرار میدهند.
با تغییر نانس، سعی میکنند هشی پیدا کنند که با تارگت شبکه مطابقت داشته باشد.
این کار نیاز به قدرت پردازشی بالا دارد.
✅ اولین ماینری که هش معتبر پیدا کند، بلاک را به شبکه اضافه میکند.
ماینری که بلاک معتبر را پیدا کند:
مقداری ارز دیجیتال (مثلاً بیتکوین)
بهعلاوه کارمزد تراکنشها
را به عنوان پاداش دریافت میکند.
این انگیزه اقتصادی باعث امنیت شبکه میشود.
هر بلاک یک بخش مهم به نام Block Header دارد که شامل اطلاعات زیر است:
هش بلاک قبلی
ریشه مرکل
نانس
زمان ایجاد بلاک
نسخه بلاک
تارگت سختی
ماینرها در واقع روی هش کردن همین Block Header کار میکنند.
در یک بلاک ممکن است هزاران تراکنش وجود داشته باشد.
برای اینکه همه این تراکنشها به شکل بهینه خلاصه شوند، از ساختاری به نام Merkle Tree استفاده میشود.
در این ساختار:
هش تراکنشها دوبهدو ترکیب میشوند
تا در نهایت به یک هش نهایی برسیم
که به آن Merkle Root میگویند
این روش باعث میشود بررسی صحت تراکنشها سریع و امن باشد.
بلاکچین یک سیستم غیرمتمرکز است و توسط گرهها (Nodes) اداره میشود.
گرهها:
نسخهای از بلاکچین را نگهداری میکنند
تراکنشها را بررسی میکنند
بلاکهای جدید را تأیید میکنند
در بسیاری از شبکهها اگر حداقل ۵۱٪ از گرهها یک بلاک را معتبر بدانند، آن بلاک پذیرفته میشود.
به همین دلیل حمله ۵۱ درصدی میتواند خطرناک باشد.
مسترنودها نوع خاصی از گرهها هستند که:
وظایف پیشرفتهتری دارند
معمولاً باید مقدار مشخصی از ارز شبکه را قفل (Stake) کنند
در ازای ارائه خدمات، پاداش دریافت میکنند
در شبکههایی که از Proof of Stake استفاده میکنند:
به جای ماینر، استیکر داریم
کاربران با قفل کردن دارایی خود، در تأیید بلاکها مشارکت میکنند
و در ازای آن پاداش میگیرند
این روش مصرف انرژی بسیار کمتری نسبت به استخراج دارد.
بلاکچین ترکیبی از:
رمزنگاری (Hash)
ساختار داده (Merkle Tree)
اقتصاد انگیزشی (پاداش)
و شبکه غیرمتمرکز (Nodes)
است که در کنار هم سیستمی شفاف، امن و مقاوم در برابر دستکاری ایجاد میکنند.
اگر این مفاهیم پایه را خوب درک کنید، فهم موضوعات پیشرفتهتر مثل قراردادهای هوشمند، دیفای و NFT بسیار سادهتر خواهد شد.
💲💲در جلسه بعدی در مورد امنیت بلاک چین صحبت می کنیم