بلاکتوپیا
چگونه الگوریتم SHA256 و ماینینگ امنیت شبکه بیت کوین را تامین می کنند؟
این الگوریتم در حقیقت مجموعه ای از دستورالعمل هایی در راستای به هم ریختن داده ها به روشی بسیار پیچیده، اما کاملا مشخص را شامل می شود. این دستورالعمل ها به صورت مرتب و سازمان یافته اجرا می شوند تا به دقت و صحیحیت بالا، داده ها را مرتب کرده و به نتیجه مورد نظر دست یابیم. این الگوریتم ها میتوانند در حوزه های مختلفی از جمله علوم کامپیوتر، ریاضیات، علوم اجتماعی و … استفاده شوند.

منتشر شده
2 سال پیشدر
توسط
روکو (Rocco)
نحوه کار ماینینگ بسیار جذاب است. وقتی برای مردم توضیح می دهم، از دیدن چهره آن ها در لحظه ای که ذهنشان منفجر می شود لذت می برم. من در اینجا توضیح خواهم داد، اما فقط بدانید، من تمام چهره های شما را در حالی تصور می کنم که ذهن شما منفجر می شود!
باید با عملکرد توابع هش شروع کنم. بدون توابع هش، بیت کوین (Bitcoin) وجود نخواهد داشت. اجازه دهید ابتدا توضیح می دهیم که آن ها چه هستند، زیرا نه تنها به نظرتان جذاب خواهد بود، بلکه درک کردن شیوه کارکرد شبکه بیت کوین امری بنیادین نیز محسوب می شود.
در صورت تمایل به منفعت بردن و بهره مند شدن از مزایای بیت کوین لازم نیست تا شیوه کارکرد شاه رمزارزها را بدانید، درست شبیه به اینکه نیازی نیست تا شیوه عملکرد TCP/IP را برای استفاده از اینترنت کسب کنید.
چگونه بیت کوین به واسطه انرژی محافظت می شود؟ مفهوم مقادیر بی معنی یا نانس (Nonce) برای این شبکه چیست؟ تابع SHA256 و مفهوم هش ریت چیست؟ آیا استخراج بیت کوین و تابع SHA-256، امنیت شبکه بیت کوین را تامین می کنند یا ذخایر عرضه را به اتمام می رسانند؟ با اینوستورنت همراه باشید تا در این مقاله به این سوالات پاسخ دهیم.
تابع هش (HASH FUNCTIONS) چیست؟
بیایید از یک الگوی نموداری آغاز کنیم که در شکل زیر قابل مشاهده است.

در قسمت چپ این عکس می توانید بخش ورودی داده را مشاهده کنید، در بخش میانی نیز تابع مورد نظر ما قرار دارد و در سمت راست، مقدار خروجی ما دریافت می شود.
مقادیر ورودی می توانند هر مقدار دیجیتالی را شامل شوند. مقدار اندازه این ورودی دیجیتال نیز بدون محدودیت بوده و به حد توان پردازش کامپیوتر شما بستگی دارد. داده وارد شده در ادامه این روند به تابع SHA256 منتقل می شود. این تابع داده ورودی را دریافت کرده و یک عدد به ظاهر تصادفی (Random) با خصوصیت های معینی که در ادامه این مطلب توضیح می دهیم را محاسبه می کند.
اولین الگوریتم ایمن هش (Secure Hash Algorithm) یا به اختصار SHA، توسط سازمان امنیت ملی آمریکا (NSA) توسعه یافت و امروزه نسخه های گوناگون بسیاری از این الگوریتم عرضه شده اند (بیت کوین از الگوریتم SHA-256) استفاده می کند. این الگوریتم در حقیقت مجموعه ای از دستورالعمل هایی در راستای به هم ریختن داده ها به روشی بسیار پیچیده، اما کاملا مشخص را شامل می شود. این دستورالعمل ها به هیچ عنوان محرمانه نیستند و حتی امکان انجام آن ها به صورت دستی نیز وجود دارد؛ اما این روند بسیار خسته کننده است.
خروجی SHA256 یک عدد ۲۵۶ بیتی است و این یک رویداد تصادفی نیست.
یک عدد ۲۵۶ بیتی به معنای یک عدد باینری (دودویی) با طول ۲۵۶ رقم است. عدد باینری بدین معناست که ارزش عدد مورد نظر با دو نماد ۱ یا ۰ نشان داده می شود. اعداد باینری را می توان به هر قالب دیگری، مثل اعداد اعشاری مبنای ده که با آن ها آشنا هستیم، تبدیل کرد.
با وجود اینکه این تابع یک عدد باینری ۲۵۶ رقمی را در اختیار ما قرار می دهد، میزان ارزش مورد نظر معمولا به صورت هگزادسیمال ۶۴ رقمی بیان می شود.
هگزادسیمال بدان معناست که به جای ۱۰ نماد آشنای ما با اعشار (۰ تا ۹)، ۱۶ نماد در اختیار داریم (یعنی ۱۰ رقمی که می شناسیم به علاوه حروف a، b، c، d، e و f که میزان ارزش ۱۱ تا ۱۵ را به نشان می دهند).
به عنوان مثال، برای نشان دادن ارزش اعشاری ۱۵ در هگزادسیمال، تنها کافیست تا «f» را بنویسیم که دارای مقدار یکسانی با این عدد است. در صورت نیاز به توضیحات بیشتر، اطلاعات زیادی به صورت آنلاین در این زمینه وجود دارند و با یک جستجوی سریع در گوگل در دسترس شما قرار می گیرند.
برای نمایش دادن SHA256 در عمل، می توانید عدد ۱ را مورد استفاده قرار دهید و از طریق یکماشین حساب آنلاین هش خروجی که در تصویر زیر می بینید، دریافت کنید.

قسمت بالایی عکس نشان دهنده خروجی و قسمت پایینی نشان دهنده نتیجه خروجی است.
به یاد داشته باشید که تمامی کامپیوترهای دنیا نیز همین خروجی را به شما نشان می دهند، البته این در صورتی است که ورودی یکسانی در کنار تابع SHA256 استفاده شود.
عدد هگزادسیمال خروجی نیز در صورت تبدیل شدن به اعداد ده رقمی اعشاری بدین صورت خواهند بود (توجه داشته باشید که ارقام بیشتری برای نوشتن آن مورد استفاده قرار گرفته اند).
۴۸, ۶۳۵, ۴۶۳, ۹۴۳, ۲۰۹, ۸۳۴, ۷۹۸, ۱۰۹, ۸۱۴, ۱۶۱, ۲۹۴, ۷۵۳, ۹۲۶, ۸۳۹, ۹۷۵, ۲۵۷, ۵۶۹, ۷۹۵, ۳۰۵, ۶۳۷, ۰۹۸, ۵۴۲, ۷۲۰, ۶۵۸, ۹۲۲, ۳۱۵
در صورت تبدیل آن به باینری نیز خروجی زیر به ما نشان داده می شود.
۱ ۱ ۰ ۱ ۰ ۱ ۱ ۱ ۰ ۰ ۰ ۰ ۱ ۱ ۰ ۱ ۰ ۱ ۱ ۰ ۰ ۱ ۰ ۰ ۱ ۱ ۱ ۰ ۰ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۰ ۰ ۱ ۱ ۰ ۱ ۰ ۰ ۱ ۱ ۱ ۱ ۱ ۱ ۰ ۰ ۱ ۱ ۱ ۰ ۰ ۰ ۰ ۱ ۱ ۰ ۰ ۱ ۱ ۱ ۰ ۱ ۰ ۱ ۱ ۰ ۱ ۰ ۱ ۱ ۱ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۱ ۰ ۰ ۱ ۱ ۱ ۰ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۰ ۱ ۰ ۱ ۱ ۰ ۱ ۰ ۰ ۰ ۱ ۱ ۱ ۱ ۱ ۱ ۰ ۱ ۰ ۱ ۰ ۱ ۱ ۱ ۰ ۱ ۰ ۰ ۰ ۱ ۱ ۱ ۱ ۰ ۱ ۰ ۱ ۱ ۰ ۱ ۱ ۰ ۱ ۰ ۰ ۱ ۰ ۰ ۱ ۱ ۱ ۰ ۱ ۰ ۱ ۰ ۱ ۰ ۱ ۰ ۰ ۰ ۱ ۰ ۰ ۰ ۱ ۰ ۱ ۱ ۱ ۱ ۰ ۰ ۰ ۱ ۱ ۱ ۰ ۱ ۰ ۱ ۰ ۰ ۱ ۰ ۰ ۱ ۱ ۱ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۱ ۱ ۱ ۱ ۰ ۰ ۱ ۰ ۱ ۰ ۰ ۱ ۰ ۱ ۱ ۰ ۱ ۱ ۱ ۰ ۱ ۱ ۰ ۱ ۱ ۰ ۱ ۱ ۱ ۱ ۰ ۰ ۰ ۰ ۱ ۱ ۱ ۰ ۱ ۰ ۱ ۱ ۰ ۱ ۱ ۰ ۱ ۰ ۰ ۱ ۰ ۱ ۱ ۱ ۱ ۰ ۱ ۰ ۱ ۱ ۱ ۰ ۰ ۱ ۱ ۰ ۱ ۰ ۱ ۱ ۱ ۰ ۰ ۱ ۱ ۰ ۱ ۰ ۱ ۱ ۱ ۰ ۰ ۱ ۱ ۰ ۱ ۰ ۱ ۱ ۱ ۰ ۰ ۱ ۱ ۰ ۱ ۰ ۱ ۱ ۱ ۰ ۰ ۱ ۱ ۰ ۱ ۰ ۱ ۱ ۱ ۰ ۰ ۱ ۱ ۰ ۱ ۰ ۱ ۱ ۱ ۰ ۰ ۱ ۱ ۰ ۱ ۰ ۱ ۱ ۱ ۰ ۰ ۱ ۱ ۱
در صورت تمایل می توانید در لینک روبرو همین مقدار عددی را در مبنای ۶۴ مشاهده کنید.
1w1k5/5p+cM61wCd/rR+ro9bSdVEXjqTgDylu28OtpY=
توجه داشته باشید که کوچکترین مقدار ارزشی ممکنی که SHA-256 به عنوان خروجی ارائه می کند عدد صفر است، اما طول آن باز هم ۲۵۶ رقم است. در زیر می توانید شیوه نمایش صفر را مشاهده کنید.
۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰
بزرگترین خروجی ممکن نیز مقدار ارزش ۱ است.
۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱ ۱
این مقدار ارزشی در مبنای اعشاری ده بدین صورت است.
۱۱۵, ۷۹۲, ۰۸۹, ۲۳۷, ۳۱۶, ۱۹۵, ۴۲۳, ۵۷۰, ۹۸۵, ۰۰۸, ۶۸۷, ۹۰۷, ۸۵۳, ۲۶۹, ۹۸۴, ۶۶۵, ۶۴۰, ۵۶۴, ۰۳۹, ۴۵۷, ۵۸۴, ۰۰۷, ۹۱۳, ۱۲۹, ۶۳۹, ۹۳۵
همین عدد در مبنای ۱۶ یا هگزادسیمال بدین صورت نمایش داده می شود.
F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F
توجه داشته باشید که در این عکس دقیقا ۶۴ حرف F نوشته شده است.
عدد صفر در مبنای ۱۶ با یک صفر ساده قابل نمایش دادن است، اما در رابطه با خروجی تابع هش، ۶۴ عدد صفر نمایش داده می شود تا نیازمندی نمایش دادن اندازه دقیقی از خروجی این تابع مرتفع شود.
۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰
در ادامه، خلاصه ای از برخی خصوصیات تابع هش که ارزیابی کردن آن ها از اهمیت بالایی برخوردار است را مورد بررسی قرار می دهیم.
- نمی توانیم مقدار ورودی را با توجه به خروجی حاصل شده معین کنیم.
- مقدار ورودی می تواند هر میزان رقم و طول دلخواهی داشته باشد (حتی هزاران رقم).
- خروجی این تابع همواره طول یکسانی دارد.
- در صورت وارد کردن ورودی یکسان، مقدار خروجی دریافتی همواره یکسان خواهد بود.
- اعمال هرگونه تغییری در مقدار ورودی هرچقدر هم ناچیز، به تغییرات غیرقابل پیش بینی و بسیار متفاوتی در میزان خروجی منجر می شود.
- به نظر می رسد که میزان خروجی کاملا تصادفی یا رندوم است، اما در حقیقت این مقدار دریافتی کاملا قطعی است (بدین معنا که کاملا محاسبه شده و قابل تکرار است).
- میزان خروجی دریافتی غیرقابل پیش بینی است. خروجی ما تنها قابل محاسبه بوده و چنین محاسباتی نیازمند انجام کار قابل توجهی توسط کامپیوتر است ( با مداد و کاغذ ساعت ها به طول می انجامد پس این کار را انجام ندهید).
حالا که مفاهیم پایه ماهیت تابع هش را یاد گرفتید، می توانید توضیحات حول محور شیوه کارکرد ماینینگ بیت کوین را نیز درک کنید.
با این حال، پیش از اینکه به ادامه این مقاله بپردازید پیشنهاد می کنیم تا یک ماشین حساب آنلاین هش را امتحان کنید و بر اساس مطالبی که در مورد توابع هش گفتیم کمی با آن کار کنید.
ماینینگ (MINING)
با نشان دادن مفهوم کار در این عرصه آغاز می کنیم، که در حقیقت نشان دهنده منشا گواه اثبات کار (PoW) در بیت کوین است. به یک ماشین حساب آنلاین هش مراجعه کرده و این عبارت را در بخش ورودی آن وارد کنید.
“I am creating 50 bitcoins and paying myself this amount.”
دقیقا همین عبارت را با در نظر داشتن حروف کوچک و بزرگ بنویسید و در پایان جمله نیز نقطه بگذارید. در این صورت، خروجی که در تصویر می بینید را دریافت می کنید.

حالا بیایید یک قانون ایجاد کنیم که بیانگر این باشد که برای معتبر بودن این پیام پرداخت، باید هش را با یک صفر شروع کنیم. برای انجام چنین کاری، لازم است تا ورودی را به نحوی تغییر دهیم؛ با این حال همانطور که پیش از این نیز یاد گرفتید، مقدار خروجی به هیچ عنوان به واسطه ورودی ما قابل پیش بینی نیست. چه اصلاحاتی می توانیم انجام دهیم تا از شروع شدن تابع هش با یک صفر اطمینان حاصل کنیم؟
لازم است برای انجام چنین کاری، داده های خود را با استفاده از آزمون و خطا اضافه کنیم. در عین حال، قصد تغییر مفهوم پیام ورودی را نیز نداریم؛ بنابراین، می توانیم یک زمینه یا فیلد (یک بخش تخصیص داده شده) به نام “Nonce” ایجاد کنیم که دارای یک مقدار بی معنی است.
مبنا بر این است که واژه “Nonce” از «عددی که تنها یک بار استفاده شده است» مشتق شده باشد، اما برای ما قابل مشاهده نیست. به بخش بعدی توجه داشته باشید و دقت کنید که چگونه تنها با افزودن “Nonce:” به عنوان یک فیلد اضافه، خروجی هش تغییر پیدا می کند.

این خروجی هنوز هم با یک “۰” آغاز نمی شود، پس در این بخش باید مقادیر بی معنی را بیافزاییم (به عنوان مثال ما یک “x” را اضافه کردیم).

همچنان عبارت مورد نظر ما با صفر آغاز نمی شود. در ادامه، کاراکترهای بیشتری را مورد استفاده قرار دادیم تا در نهایت، تابع هش با یک صفر آغاز شد.

بالاخره به هدف خود رسیدیم. اکنون بر اساس قوانین دلخواه برای این نسخه شبیه سازی شده بیت کوین، متن ما در پنجره ورودی به صورت یک بلاک معتبر همراه با یک تراکنش واحد است، که ۵۰ بیت کوین به ما پرداخت می کند.
توجه داشته باشید که بلاک های بیت کوین (BTC) به صورت بنیادین صفحاتی از یک دفتر کل توزیع شده (ِDLT) هستند. هر یک از بلاک ها شماره مختص خود را داشته و بیت کوین جدیدی را به همراه لیست کردن تراکنش ها بین کاربران تولید می کنند.
حالا به قانون جدیدی می پردازیم. لازم است تا هش بلاک قبلی در بلاک بعدی درج شود. در این بخش کمی میزان پیچیدگی را بالا برده و چند فیلد دیگر به این قسمت اضافه می کنیم تا به مفهوم یک بلاک واقعی بیت کوین نزدیکتر شویم.

همانطور که مشاهده می کنید، هش با “f” آغاز شده است و نه با “۰”، پس لازم است تا مقادیر بی معنی دیگری را در فیلد نانس وارد کنیم.

این بار خوش شانس تر بودیم و نانس مناسب را پس از ۴ دفعه تلاش کردن پیدا کردیم. برای بلاک مثال اول، ۲۲ دفعه امتحان کردیم. عنصر تصادفی بودن و شانس، اندکی در این بخش دخیل است؛ اما به صورت کلی، پیدا کردن هش معتبر برای دست یافتن به یک صفر ساده کار دشواری نیست. ۱۶ مقدار ارزشی محتمل برای رقم اول هش اول وجود دارد؛ بنابراین یک شانزدهم شانس این را دارم که هرگونه اصلاحاتی که در فیلد ورودی ایجاد می کنم، به این منجر می شود که اولین رقم هش “۰” باشد.
به یاد داشته باشید که فیلدهای بیت کوین به این صورت هستند، اما جزئیات بیشتری نیز وجود دارند که در این بخش استفاده نکردیم. این امر تنها برای نشان دادن نکات مورد نظر ما در این بخش است و هدف ما شبیه سازی دقیق بلاک بیت کوین نیست.
در بلاک بعدی یک فیلد زمانی را اضافه می کنم؛ زیرا برای توضیح دادن تنظیم سختی (difficulty adjustment) در ادامه این مطلب به آن نیاز داریم.

در تصویر بالا بلاک شماره سه را مشاهده می کنید. این بلاک هش بلاک قبلی را شامل می شود و همچنین فیلد زمانی را نیز به آن اضافه می کنیم. Nonce مورد استفاده ما به صورت موفقیت آمیزی موجب آغاز شدن هش با صفر شد (با تایپ کردن “۱” روند کار خود را آغاز کردیم تا به هدف مورد نظر رسیدیم).
تا به اینجا به اندازه کافی در مورد بلاک بیت کوین یاد گرفتیم تا توضیح برخی از ایده های جذاب بلاکچین بیت کوین و ماینینگ را به شما ارائه کنیم.
برنده شدن یک بلاک (WINNING A BLOCK)
فرایند ماینینگ در حقیقت یک رقابت است. کسی که پیش از سایرین یک بلاک معتبر را تولید کند می تواند پاداش تعیین شده برای هر بلاک را دریافت کند. بنابراین چیزی نصیب ماینری که همان بلاک را با کمی تاخیر تولید می کند، نخواهد شد و بلاک تولید شده مورد قبول قرار نمی گیرد.
پس از اینکه بلاک شماره سه پیدا شده و به همگان (تمامی نودهای شبکه بیت کوین) عرضه شود، تمامی ماینرها از کار کردن بر روی یافتن چیزی که قرار بود بلاک شماره ۳ خود باشد دست می کشند. سایر ماینرها بر روی یافتن نانس مناسب برای بلاک چهارم (با قرار دادن هش بلاک ۳ در بلاک جدید) کار می کنند. برنده بلاک نتایج حاصل شده را منتشر کرده و سپس همه ماینرها (نودها) بر روی بلاک پنجم کار می کنند و این روند ادامه پیدا می کند.
با آغاز فرایند کار کردن بر روی هر بلاک، بیت کوین جدید تولید می شود و مجموع کلی ذخایر عرضه را تا به امروز تشکیل می دهند. اگر ماینرهای زیادی در حال فعالیت کردن در این حیطه باشند، از نظر آماری انتظار داریم تا بلاک ها با سرعت بیشتری تولید شوند و در نتیجه این امر، بیت کوین نیز سریع تر عرضه می شود. این روندی مشکل ساز است، اینطور نیست؟
ساتوشی ناکاموتو (Satoshi Nakamoto) با در نظر داشتن ذخایر عرضه محدود بیت کوین و انتشار قابل پیش بینی آن در طول زمان، به این مشکل فکر کرده بود و یک حلقه بازگشتی منفی برای حفظ روند تولید بلاک متوسط، در فاصله زمانی ۱۰ دقیقه ای را معرفی کرد. این چرخه چگونه عرضه شد؟ آیا راهی به ذهنتان می رسد؟
تنظیم سختی (THE DIFFICULTY ADJUSTMENT)
میانگین زمانی تولید بلاک های جدید بیت کوین، توسط همه نودها و در طول تولید هر ۲۰۱۶ بلاک محاسبه می شود (این امر دلیل نیاز ما به فیلد زمانی است). این در حقیقت بخشی از پروتکل و قوانینی است که نودها دنبال می کنند. فرمول خاصی نیز در این بخش مورد استفاده قرار می گیرد، که به تنظیم تعداد صفرهایی که هر هش بلاک برای معتبر بودن باید با آن ها آغاز شود منجر می شود.
اگر بخواهیم به صورت دقیق اشاره کنیم، این تعداد صفرها نیست که تنظیم می شود؛ بلکه مقدار هدفی است که تابع هش باید پوشش دهی کند، اما مثال صفرهای اصلی برای توضیح این بخش بسیار قابل فهم تر است.
اگر بلاک ها با سرعت بسیار بالایی تولید شوند، هدف هش بر اساس قوانین از پیش تعریف شده ای که تمامی نودها به صورت مشابه از آن ها پیروی می کنند (و در کد آن ها تعریف شده است) تنظیم می شود.
برای ساده بیان کردن این موضوع، بیایید در نظر بگیریم که برخی از افراد در حال رقابت کردن با من هستند و بلاک ها نیز با سرعت بالایی در حال تولید شدن هستند و حالا بر اساس محاسبات خیالی، بلاک چهارم به جای یک صفر به دو صفر نیاز دارد.
بدون شک من به زمان بیشتری برای دست یافتن به دو صفر نیاز دارم؛ اما در این مثال فرض کردیم که افراد بسیار دیگری نیز در حال رقابت کردن با من هستند و مدت زمان کلی مورد نیاز برای همه افراد در این فرایند به هدف بلاک ارتباط دارد.
در این تصویر می توانیم بلاک مورد نظر را مشاهده کنیم.

به زمان توجه داشته باشید، بیش از ۱۰ دقیقه از تولید بلاک قبل می گذرد (ما بخش زمان را تنها برای نمایش دادن مورد استفاده قرار دادیم). هدف ۱۰ دقیقه ای برای بلاک ها امری محتمل و پیش فرض است و هیچوقت مشخص نیست که زمان دقیق پیدا شدن بلاک بعدی به چه اندازه است.
مدت زمانی طول کشید تا بتوانیم دو صفر را با کمک گرفتن از کیبورد پیدا کنیم. این روند بسیار دشوارتر از یافتن یک صفر واحد بود. شانس پیدا کردن دو صفر در یک ردیف، به میزان ۱ از ۱۶ به توان ۲ و یا یک دویست و پنجاه و ششم است.
با دخیل شدن افراد بیشتری در روند ماینینگ و رقابت برای تولید بیت کوین جدید، در نهایت به این نقطه می رسیم که صفر سومی نیز مورد نیاز خواهد بود. ما کمی پیش آخرین بلاک حقیقی بیت کوین را مورد بررسی قرار دادیم که هش بلاک قبلی در آن درج شده بود. این هش بدین صورت بود.
۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۰ ۸ ۴ d 3 1 7 7 2 6 1 9 e e 0 8 e 2 1 b 2 3 2 f 7 5 5 a 5 0 6 b c 5 d 0 9 f 3 f 1 a 4 3 a 1
همانطور که مشاهده می کنید، با ۱۶ صفر مواجه هستیم! یعنی یک از شانزده به توان ۱۹ شانس داریم تا چنین بلاکی را در هر بار تلاشمان پیدا کنیم. ماینرهای بیت کوین سراسر جهان در هر ثانیه تلاش های زیادی را پشت سر می گذارند.
تعداد تلاش های ما در هر ثانیه برای یافتن بلاک مورد نظر تحت عنوان هش ریت (Hash Rate) یا نرخ هش شناخته می شود. در حال حاضر، میزان نرخ هش تخمین زده شده در جهان کمی کمتر از ۲۰۰ میلیون تراهش در هر ثانیه (هر تراهش به معنای یک تریلیون هش است) است. با توجه به تعداد دفعات بالای تلاش ما در هر ثانیه، پیدا کردن بلاکی که دارای یک هش آغاز شونده با ۱۹ صفر است در هر ۱۰ دقیقه امکان پذیر است.
در آینده و با پیوستن ماینرهای جدید به شبکه بیت کوین، نرخ هش بالا می رود و بلاک ها سریع تر پیدا می شود و سختی شبکه بیت کوین نیز تا حد نیاز به یافتن ۲۰ صفر افزایش پیدا می کند. چنین امری به پایین آمدن سرعت تولید بلاک و نگه داشتن آن در چهارچوب یک بلاک در هر ده دقیقه منجر می شود.
هاوینگ یا نصف شدن پاداش (THE HALVING)
هنگامی که پادشاه رمزارزها به تازگی روند کاری خود را آغاز کرده بود، به میزان ۵۰ بیت کوین با هر بلاک تولید میشد. قوانین بلاکچین بیت کوین (Bitcoin) نشان می دهند که پس از تولید هر ۲۱۰,۰۰۰ بلاک، پاداش تولید بلاک نصف می شود. چنین رویدادی تحت عنوان هاوینگ (Halving) شناخته می شود و در طول هر ۴ سال اتفاق میافتد.
رویداد هاوینگ در کنار تنظیم سختی تولید بلاک ها در فواصل ۱۰ دقیقه ای، بدین معناست که در حدود سال ۲۱۴۰، پاداش بلاک به میزان ۰.۰۰۰۰۰۰۰۱ یا ۱ ساتوشی که کوچکترین واحد تقسیم بندی بیت کوین است، می رسد و دیگر قادر به نصف کردن آن نیستیم. روند استخراج در این زمان متوقف نمی شود؛ اما پاداش بلاک صفر خواهد بود. در آن هنگام، هیچ بیت کوین جدیدی تولید نمی شود و تعداد بیت کوین از نظر ریاضی قابل محاسبه و نزدیک به ۲۱ میلیون کوین است. بدین ترتیب کل ذخایر عرضه محاسبه می شود و به صورت برنامه ریزی شده تنظیم می شود.

حتی با وجود صفر بودن پاداش بلاک نیز ماینرها به ادامه دادن روند کاری خود برای دریافت فی تراکنش ها تشویق می شوند.
چگونه پاداش بلاک دقیقا نصف می شود؟ این در کد مختص نودها نهفته است. آن ها برنامه ریزی شده اند که هر بلاک جدیدی را پس از تولید بلاک ۲۱۰,۰۰۰ (حدود ۴ سال) رد کنند و این نقطه ای است که ماینر به میزان ۲۵ BTC پاداش را به خود اختصاص داده است. سپس بلاک جدید پس از تولید بلاک ۴۲۰,۰۰۰ رد می شود و ماینرها به میزان ۱۲.۵ بیت کوین پاداش دریافت می کنند و این روند نیز به همین منوال ادامه پیدا می کند.
فی تراکنش ها (TRANSACTION FEES)
تا اینجا تنها به بلاک های خیالی پرداختیم که یک تراکنش واحد را شامل می شدند و این تراکنشی بود که ماینر در ازای آن پاداش دریافت می کرد. چنین فرایند تحت عنوان تراکنش کوین بیس (Coinbase transaction) شناخته می شود. این نام هیچ ارتباطی با صرافی Coinbase ندارد؛ البته جالب است بدانید که این شرکت نام خود را از این تراکنش ها برگرفته است.
علاوه بر تراکنش های کوین بیس، تراکنش هایی نیز وجود دارند که مردم در ازای آن ها به یکدیگر پول پرداخت می کنند. در ادامه یک نمونه مثالی از آن ها را مشاهده می کنیم.

در این نمونه به دنبال یافتن یک هش واقعی نپرداختیم (این در حقیقت هش گزارش شده ای در بلاک ۲۰۰,۰۰۱ است). Nonce درون این تصویر تنها برای شوخی نمایش داده شده است؛ اما به یاد داشته باشید که درج کردن یک پیام در این بخش نیز امری امکان پذیر است.
ساتوشی عبارت مشهور “نخست وزیر در آستانه دریافت دومین کمک مالی از بانک ها” برگرفته از تیتر روزنامه های آن روز را در اولین بلاک بیت کوین (بلاک جنسیس /The Genesis Block) درج کرد.

نکته مورد نظر ما در این تصویر نشان دادن ۱۳۲ تراکنش است که تمامی آن ها به صورت کامل درج نشده اند. به تراکنش شماره ۱۳۲ نگاه کنید، ۲.۳ BTC از آدرس مبدا در حال پرداخت ۲.۱ BTC به آدرس مقصد و در ادامه، به آدرس دوم به میزان ۰.۱ BTC است (از نقطه برای کوتاه کردن آدرس استفاده کرده ایم).
بنابراین، مبدا ۲.۳ بیت کوینی ما در حال پرداخت به میزان ۲.۲ بیت کوین (۲.۲=۰.۱+۲.۱) است. آیا ۰.۱ BTC در این روند از قلم افتاده است؟ خیر، میزان اختلاف ما توسط ماینر دریافت می شود که در ادامه به توضیح آن می پردازیم.
ماینر این اجازه را دارد تا به میزان ۲۵ بیت کوین به عنوان پاداش بلاک به خود اختصاص دهد (زیرا از تولید ۲۱۰,۰۰۰ بلاک گذر کرده ایم و میزان پاداش از ۵۰ به ۲۵ کاهش پیدا کرده است).
اگر دقت کنید متوجه می شوید میزان تراکنش کوین بیس معادل ۲۷.۳۳۸۸۰۰۲۲ است و ۲.۳۳۸۸۰۰۲۲ BTC افزوده از جانب ۱۳۲ تراکنش درون بلاک حاصل شده اند و میزان ورودی ها کمی بیشتر از مجموع خروجی ها خواهند بود؛ بنابراین ماینر این حق را دارد تا این بیت کوین “رها شده” را به عنوان پرداختی به خود اختصاص دهد. این در حقیقت فی تراکنش هایی در نظر گرفته می شوند که به ماینر پرداخت می شوند.
فضای بلاک محدود است. هنگامی که بیت کوین (Bitcoin) مقوله ای نوظهور حساب میشد، کاربران می توانستند تراکنش های خود را به صورت رایگان و بدون نیاز به پرداخت فی ارسال کنند و ماینرها نیز این تراکنش ها را در بلاک درج می کردند. در حال حاضر، کاربران بیشتری در این عرصه حضور دارند و با توجه به اینکه دسترسی به بلاک بعدی به امری رقابتی مبدل شده است، کاربران فی معینی را برای ترغیب ماینرها در راستای انتخاب کردن تراکنش آن فرد در قیاس با سایرین تعیین می کنند.
بنابراین با در نظر داشتن کاهش مداوم میزان پاداش بلاک که در طول هر چهار سال اتفاق میافتد و در نهایت نیز به صفر می رسد، پرداخت به ماینرها از این طریق صورت می گیرد.
به عقیده برخی از افراد، روزی می رسد که پرداختی هایی که به ماینرها اختصاص پیدا می کنند کافی نبوده و اولین رمزارز با شکست مواجه می شود. این نگرانی به صورت کامل رفع شده و از تکرار و پرداختن به آن در این مقاله خودداری می کنیم.
آیا می توان یک بلاک را بازنویسی کرد؟
توانایی انجام چنین کاری بسیار غیرمحتمل بوده و ارزش این را دارد تا به درک دلیل آن بپردازیم. در ادامه، قدردان عدم وجود قابلیت تغییرپذیری تراکنش های بیت کوین خواهید بود.
پیش از این توضیح دادیم که هش بلاک قبلی در بلاک بعدی درج می شود. این بدان معناست که اعمال هرگونه ویرایشی در تراکنش های یک بلاک قدیمی به تغییر پیدا کردن هش آن بلاک منجر می شود. سپس آن هش در بلاک بعدی ثبت می شود؛ بنابراین می توان متوجه شد که چنین اقدامی وجود نیاز بروز رسانی بلاک بعدی را به وجود می آورد. اگر هش ثبت شده در بلاک بعدی را تغییر دهید، لازم است تا بلاک پس از آن نیز بروز رسانی شود و این روند ادامه پیدا می کند.
به یاد داشته باشید در هر زمانی که یک هش تغییر پیدا می کند، تمامی صفرهایی که با زحمت پیدا شده اند، از دست می روند و یک هش تصادفی یا رندوم در اختیار خواهید داشت و لازم است که تمامی فرایند یافتن صفرها را از اول تکرار کنید. اگر چنین اقدامی را در رابطه با بلاکی که قصد ویرایش آن را داشتید به انجام برسانید، باید همین روند را آنقدر برای بلاک های بعدی تکرار کنید تا به بلاک فعلی برسید.
به هیچ عنوان نمی توانید در جایی از این مسیر متوقف شوید؛ زیرا قوانین کارکرد شبکه بیت کوین بدین صورت است که طولانی ترین زنجیره بلاک ها سابقه و پیشینه حقیقی ثبت شده بیت کوین را نشان می دهند. اگر به عقب برگردید و دهمین بلاک تولید شده پیش از بلاک فعلی را ویرایش کنید، دیگر طولانی تری زنجیره از بلاک ها را در اختیار نداریم؛ بنابراین مجبور خواهید بود که تمامی بلاک های پس از آن و حتی کمی بیشتر را نیز ویرایش کنید، زیرا احتمالا در طول زمانی که به تغییر آن بلاک اختصاص دادید، بلاک های جدید دیگری نیز تولید شده اند و زنجیره ما کمی طولانی تر شده است.
در واقع برای دستیابی دوباره به زنجیره حقیقی لازم است تا با روند تولید بلاک مسابقه بدهید. اگر موفق به انجام چنین کاری شوید، زنجیره جدید به نسخه حقیقی تبدیل می شود.
تکرار کردن مجموع تلاش هش کردن حاصل از تمامی ماینرهای دنیا از بلاک ویراست شده تا بلاک آخر، مانع حقیقی بر سر راه ویرایش پیشینه شبکه بیت کوین است. انرژی زیادی برای تولید این هش ها و صفرهای غیر محتمل آن ها صرف شده است و لازم است تا برای ویرایش بیت کوین، این هزینه انرژی تکرار شود. این امر دلیل اصلی عدم هدر رفتن انرژی صرف شده برای ماین کردن یا استخراج بیت کوین است. این انرژی هدر نرفته است و برای دفاع از بیت کوین در برابر تغییر و ویرایش صرف می شود تا دفترکل این شبکه غیرقابل تغییر باقی مانده و نیازه به اعتماد کردن به یک مرجع مرکزی رسیدگی به امور وجود نداشته باشد.
- اگر دو ماینر به صورت همزمان یک بلاک را بیابند چه اتفاقی می افتد؟
این رویداد هرازگاهی اتفاق می افتد و همواره بدین شکل به این امر رسیدگی می شود. هر یک از نودها ابتدا یکی از بلاک های تولید شده به صورت همزمان تقریبی را دریافت می کنند و بلاکی که در ابتدا دریافت کردهاند پذیرفته و بلاکی که کمی بعد دریافت می کنند را رد می کنند. این امر به تقسیم شبکه منجر می شود، اما به صورت موقتی بوده و رفع می شود.
برای تصور کردن این امر، اجازه دهید یکی از بلاک ها را با نام آبی و دیگر را قرمز صدا بزنیم (البته بلاک ها رنگ ندارند و این تنها یک مثال است).
در ادامه مثال قبل، ماینرها به کار کردن بر روی بلاک بعدی ادامه می دهند؛ اما در رابطه با اینکه از کدام بلاک زنجیره را گسترش می دهند یک شکاف و گسستگی به وجود می آید.
بیایید فرض کنیم که ماینر برنده بلاکی را پیدا کرده است که از زنجیره آبی استفاده می کند. این ماینر بلاک جدید را برای تمامی نودها ارسال می کند و طولانی ترین زنجیره مشخص می شود. سپس نودهایی که زنجیره قرمز را مورد پذیرش قرار داده اند آن را رها کرده و زنجیره جدید را می پذیرند.
تمامی ماینرهایی هم که در حال کار کردن بر روی زنجیره قرمز بودند کار خود را متوقف کرده و از این پس بر روی زنجیره طولانی تر کار می کنند که در این مثل زنجیره آبی نام دارد. بنابراین، زنجیره قرمز حذف شده و یا در اصطلاح می میرد.
در انتها
تابع هش و عملکرد آن به تولید بلاک جدید در نتیجه مقدار ورودی داده شده به آن و بر اساس SHA256 منجر می شود. ماینرها همواره در تلاش برای یافتن نانس مورد نظر برای استفاده در خروجی این تابع هستند تا در رقابت تولید بلاک جدید، سریع تر از سایرین بلاک خود را به نودها ارائه کرده و پاداش بلاک را در کنار فی تراکنش دریافتی از کاربران به دست بیاورند.
پاداش بلاک به صورت ۴ سال یک بار نصف می شود و این رویداد تحت عنوان هاوینگ شناخته می شود. با افزایش تعداد روزافزون ماینرها انتظار می رود تا روند تولید بلاک نیز تسریع شود، اما از طرف دیگر رقابت برای پیدا کردن نانس یا عبارت بی معنی مورد نظر در خروجی هش نیز همواره دشوارتر می شود و این امر به باقی ماندن روند تولید بلاک در طول تقریبی هر ۱۰ دقیقه منجر می شود.
انرژی صرف شده برای انجام این فرایند و تولید اولین رمزارز در شبکه بیت کوین (Bitcoin) به امنیت شبکه بیت کوین و عدم تغییرپذیر بودن محتوای درج شده از هر بلاک در بلاک بعدی به واسطه تابع هش منجر می شود و این انرژی هدر نرفته و صرف حفظ تغییرناپذیری این شبکه می شود.
شاید دوست داشته باشید
استارک ور (StarkWare) تأیید کل تاریخچه بلاکچین با ۱ مگابایت حجم ممکن ساخت!
ارتقای آلپنگلو (Alpenglow) در سولانا تأیید شد؛ تراکنشها بزودی با سرعت اینترنت نهایی میشوند
۹ عادت مالی که افراد منظم را به ثبات و آزادی مالی میرساند
کاناری کپیتال برای ETF اینجکتیو (INJ) ثبتنام کرد
کاردینال؛ اولین پروتکل دیفای بیت کوین بر بستر کاردانو
هر اونس چند گرم طلای ۱۸ عیار است؟ تبدیل ساده انس به گرم طلا
اخبار
استارک ور (StarkWare) تأیید کل تاریخچه بلاکچین با ۱ مگابایت حجم ممکن ساخت!
شرکت StarkWare فناوری جدیدی اعلام کرده که «تصدیق بلوکهای بلاکچین بیتکوین از ابتدای پیدایش تا حال» را در قالب یک پرُف (proof) تقریباً ۱ مگابایتی ممکن میکند، البته نه به معنی دانلود کل تاریخچه تراکنشها، بلکه فقط هِدِر بلوکها.

منتشر شده
4 روز پیشدر
شهریور 21, 1404توسط
روکو (Rocco)
شرکت استارکور (StarkWare) که در زمینه فناوری پیشرفته دانش صفر (Zero-Knowledge یا ZK) تخصص دارد، از یک دستاورد بزرگ رونمایی کرده است که میتواند اساس تعامل کاربران با شبکه بیتکوین را دگرگون کند. این شرکت موفق به ساخت یک اثبات تأیید (Verification Proof) مبتنی بر دانش صفر از کل بلاکچین بیتکوین شده است که به طرز شگفتانگیزی سبک بوده و به راحتی بر روی دستگاههای موبایل قابل اجراست. این نوآوری به هر کاربری اجازه میدهد تا به طور مستقل و بدون نیاز به سختافزارهای گرانقیمت، تاریخچه بیتکوین را اعتبارسنجی کند.
این اثبات که توسط استارکور توسعه داده شده، تنها ۱ مگابایت حجم دارد. این در حالی است که حجم کامل بلاکچین بیتکوین (Bitcoin) در حال حاضر از مرز ۶۸۰ گیگابایت فراتر رفته است. به گفته عبدالحمید بختا (Abdelhamid Bakhta)، مدیر اکوسیستم در استارکور، این تکنولوژی به کاربران امکان میدهد تا تراکنشها را در کمتر از ۱۰۰ میلیثانیه تأیید کنند. این پیشرفت، تحقق مدرن ایدهای است که برای اولین بار توسط ساتوشی ناکاموتو در وایتپیپر بیتکوین تحت عنوان تأیید پرداخت ساده شده (SPV) مطرح شد و اکنون موانع فنی و مالی را برای میلیونها کاربر از میان برمیدارد.

چگونه ۶۸۰ گیگابایت داده در ۱ مگابایت فشرده میشود؟
راز این فشردهسازی خارقالعاده در محتوای اثبات نهفته است. این فایل ۱ مگابایتی، تاریخچه کامل و جزئیات تمام تراکنشها را در خود جای نداده است؛ بلکه شامل تمام هدرهای بلاک (Block Headers) از اولین بلاک شبکه (بلاک جنسیس) تا به امروز است. هر هدر بلاک مانند یک شناسنامه برای آن بلاک عمل میکند و حاوی اطلاعات کلیدی زیر است:
- شماره نسخه (Version Number): نسخه نرمافزار بیتکوین که برای استخراج بلاک استفاده شده است.
- ارجاع به بلاک قبلی (Previous Block Reference): پیوندی رمزنگاریشده که زنجیره بلاکها را به هم متصل میکند.
- برچسب زمانی (Timestamp): زمان تقریبی ایجاد بلاک.
- اندازه بلاک (Block Size): حجم بلاک.
- نانس (Nonce): عدد تصادفی که ماینرها برای حل معمای محاسباتی و افزودن بلاک به دفتر کل، آن را پیدا میکنند.
با در اختیار داشتن زنجیرهای از این هدرها، یک کاربر میتواند به طور مستقل و با اطمینان بالا، صحت و اعتبار کل تاریخچه شبکه را بدون نیاز به دانلود صدها گیگابایت داده، بررسی کند.

این دستاورد در زمانی ارائه میشود که جامعه بیتکوین درگیر یکی از مهمترین بحثهای داخلی خود، یعنی چالش حفظ تمرکززدایی (Decentralization) در مقابل رشد روزافزون حجم بلاکچین است. یکی از ارزشهای بنیادین بیتکوین این است که اجرای یک نود کامل (Full Node) برای هر کسی با یک کامپیوتر شخصی معمولی امکانپذیر باشد. این دسترسی آسان، تضمینکننده امنیت و مکانیزم اجماع شبکه است که توسط هزاران اپراتور نود مستقل در سراسر جهان اجرا میشود.
با این حال، ظهور پدیدههایی مانند اُردینالز و اینسکریپشنها که امکان ذخیرهسازی دادههای غیرپولی (مانند تصاویر و متن) را روی بلاکچین (Blockchain) فراهم میکنند، این اصل را به چالش کشیدهاند. منتقدان معتقدند این روند باعث «پفکردن» بلاکچین شده و با افزایش سرسامآور حجم دفتر کل توزیع شده (DLT)، نیازمندیهای سختافزاری برای اجرای نود را بالا میبرد. اگر اجرای نود بیش از حد گران شود، شبکه به سمت تمرکزگرایی پیش خواهد رفت و تنها شرکتهای بزرگ و مراکز داده توانایی مشارکت در آن را خواهند داشت که این امر کاملاً با فلسفه وجودی بیتکوین در تضاد است.

بهروزرسانی Bitcoin Core و طغیان جامعه
این تنش با اعلام برنامههای مربوط به بهروزرسانی آینده نرمافزار Bitcoin Core 30 که برای انتشار در ماه اکتبر برنامهریزی شده، به نقطه جوش خود رسیده است. توسعهدهندگان Bitcoin Core (که نرمافزار مورد استفاده حدود ۸۰٪ از نودهای شبکه است) قصد دارند محدودیت OP_Return را حذف کنند. این قابلیت در حال حاضر حجم دادههای غیرپولی قابل جاسازی در تراکنشها را به ۸۰ بایت محدود میکند که برای ذخیره اکثر محتواهای چندرسانهای امروزی بسیار ناچیز است.
این تصمیم پیشنهادی، موجی از مخالفت را برانگیخته و باعث یک جهش تاریخی در استفاده از Bitcoin Knots شده است. Bitcoin Knots یک نرمافزار جایگزین برای نود بیتکوین است که قابلیتهای شخصیسازی بیشتری را به اپراتورها میدهد؛ از جمله این امکان که خودشان برای میزان دادههای OP_Return که مایل به ذخیره و بازنشر آن هستند، محدودیت تعیین کنند. آمارها نشان میدهد سهم بازار نودهای Knots از حدود ۱٪ در پایان سال ۲۰۲۴، با یک رشد تقریباً عمودی، به نزدیک ۲۰٪ در سال ۲۰۲۵ رسیده است که نشاندهنده واکنش شدید بخشی از جامعه به مسیر پیش روی توسعه بیتکوین است. در این میان، راهکار استارکور میتواند فارغ از این جدالها، قدرت تأیید مستقل را به دست تکتک کاربران بازگرداند.
آموزش
تقویم اقتصادی (Economic Calendar) چیست و چگونه از آن استفاده کنیم؟
تقویم اقتصادی مثل یک “برنامهریزی خبری” برای بازار است. اگر به آن توجه نکنید، ممکن است در لحظه انتشار اخبار مهم با حرکتهای ناگهانی و شدید قیمت غافلگیر شوید. استفاده درست از آن کمک میکند ریسک معاملات را مدیریت کنید و حتی فرصتهای سودآور پیدا کنید.

منتشر شده
4 روز پیشدر
شهریور 21, 1404توسط
روکو (Rocco)
اگر معاملهگر یا فعال بازارهای مالی باشید، حتما تجربه کردهاید که یک خبر اقتصادی میتواند ظرف چند دقیقه بازار را زیر و رو کند. مثلا اعلام نرخ بیکاری آمریکا یا تصمیم فدرال رزرو درباره نرخ بهره کافی است تا قیمت دلار، طلا یا حتی بیت کوین نوسان شدیدی پیدا کند. در چنین شرایطی، دانستن زمان دقیق این رویدادها میتواند مرز میان یک معامله سودآور یا پشیمانکننده باشد.
اینجاست که تقویم اقتصادی به عنوان یک ابزار به کمک شما میآید. ابزاری که تمام اتفاقات مهم اقتصادی و مالی جهان را در یک جدول زمانی مشخص نمایش میدهد و به شما کمک میکند همیشه چند قدم جلوتر از بازار باشید. اگر میخواهید بدانید تقویم اقتصادی دقیقا چیست، چه اجزایی دارد و چطور باید از آن استفاده کنید، این مطلب را از دست ندهید.
تقویم اقتصادی (Economic Calendar) چیست؟
یک لیست زمانبندیشده از اعلامیههای اقتصادی، دادههای کلان، سخنرانیهای مقامات مالی و انتشار شاخصهای اقتصادی مثل نرخ بهره، تورم، بیکاری، تولید ناخالص داخلی و … است. علاوه بر این معمولاً زمان بیانیه های بانک مرکزی، سخنرانی های سیاست گذاران پولی و انتخابات را فهرست می کند.
بیشتر تقویم های اقتصادی منتشر شده شامل نوع داده مثل نرخ بیکاری، نتیجه قبلی که منتشر شده بود و انتظارات اجماع بازار برای نتیجه آتی می شوند. باید توجه داشت که نوع انتشار به طور کلی بسته به اینکه چه تاثیری می تواند داشته باشد؛ بصورت زیاد، متوسط، کم یا بدون تاثیر، کد گذاری می شود.
برای مثال، تصور کنید بانک مرکزی اروپا (ECB) قرار است درباره نرخ بهره (Interest Rate) جلسه برگزار کند. این تصمیم میتواند ارزش یورو را به شدت تحت تاثیر قرار دهد. اگر شما معاملهگر بازار فارکس باشید و این تاریخ را ندانید، ممکن است در میانه یک معامله ناگهان با نوسانی شدید روبهرو شوید و فرصت مدیریت آن را از دست بدهید. اما وقتی به تقویم اقتصادی نگاه میکنید، میبینید که این رویداد دقیقا چه روز و ساعتی اتفاق میافتد و میتوانید از قبل برایش برنامهریزی کنید.
تقویم اقتصادی نه فقط برای معاملهگران حرفهای، بلکه برای هر فردی که در بازارهای مالی فعالیت میکند (از بورس و فارکس گرفته تا ارزهای دیجیتال) یک ابزار ضروری است. حتی سرمایهگذاران بلندمدت هم با نگاه به این تقویم میتوانند تصمیمهای دقیقتری برای مدیریت پرتفوی خود بگیرند.
اگر انتشار داده اقتصادی تأثیر کمی داشته باشد، آنگاه جفت ارز حرکتی نداشته و یا واکنشی جزیی نسبت به نتیجه از خود نشان خواهد داد. اما اگر در رویدادی با تأثیر متوسط، نتیجه نهایی با چیزی که انتظار می رفت خیلی تفاوت داشته باشد، باعث می شود جفت ارز به میزان بیشتری تغییر کند. زمانی که انتشار داده ها به طور قابل توجهی بیشتر یا کمتر از نتیجه مورد انتظار بازار باشند، به خصوص زمانی که صحبت از داده هایی با تأثیر بالا باشد، جفت ارز مرتبط تمایل بیشتری به حرکت دارد و بازار نوسانات قابل توجهی را در این فرآیند تجربه می کند.
چرا تقویم اقتصادی مهم است؟
- تقویم اقتصادی مانند یک نقشه راه است که مسیر حرکت بازارها را روشنتر میکند و شما را از غافلگیریهای ناگهانی نجات میدهد. به این ترتیب شما میتوانید تصمیمات معاملاتی خودتان را بر پایه اطلاعات موثق بگیرید.
- انتشار دادههای اقتصادی میتواند باعث نوسانات شدید در بازارهای مالی شود. برای مثال، اگر نرخ تورم بالاتر از حد انتظار اعلام شود، سرمایهگذاران انتظار افزایش نرخ بهره خواهند داشت و همین موضوع میتواند بازار سهام یا ارزهای دیجیتال را تحت تاثیر قرار دهد.
- بدون تقویم اقتصادی، بسیاری از تصمیمها بر اساس حدس و گمان گرفته میشود. معاملهگرانی که فقط با تحلیل تکنیکال کار میکنند، ممکن است در لحظه انتشار یک خبر بزرگ، گرفتار نوسانات غیرمنتظره بازار شوند. در حالیکه کسی که تقویم اقتصادی را دنبال میکند، میداند چه زمانی باید محتاطتر باشد یا حتی برای شکار فرصتهای جدید آماده شود.
- یکی از مهمترین مزیتهای تقویم اقتصادی، مدیریت ریسک است. اگر قبل از انتشار یک داده مهم پوزیشن باز دارید، میتوانید حجم معاملات خود را کاهش دهید، حد ضرر تنظیم کنید یا حتی معامله را ببندید تا از ضررهای سنگین جلوگیری شود.
- استفاده از تقویم اقتصادی به شما امکان میدهد استراتژیهای کوتاهمدت و بلندمدت خود را بر اساس دادههای واقعی طراحی کنید. به این ترتیب، معاملات شما نظم بیشتری پیدا میکند و احتمال موفقیت بالاتر میرود.
- بسیاری از ضررها به دلیل تصمیمات عجولانه و احساسی اتفاق میافتد. وقتی بدانید چه چیزی در راه است، آرامش بیشتری خواهید داشت و کمتر اسیر ترس یا طمع میشوید.
اجزای اصلی یک تقویم اقتصادی
وقتی وارد یک تقویم اقتصادی مثل Trading Economics یا Investing.com میشوید، در نگاه اول ممکن است جدول شلوغی ببینید که پر از عدد و کلمه است. اما اگر بدانید هر ستون چه معنایی دارد، کار با آن بسیار ساده خواهد شد. در ادامه تکتک اجزای اصلی این جدول که از وبسایت تریدینگ اکونومیکس آورده شده را توضیح میدهیم.

در قسمت بالای جدول بخشی برای فیلتر کردن نتایج آورده شده است. گزینه «Recent» فیلتری برای نشان دادن رویدادهای اخیر است و فقط موارد نزدیک به زمان فعلی را نشان میدهد. اگر میخواهید مثلا رویدادهای اقتصادی چند ماه دیگر را ببینید کافی است این فیلتر را تغییر دهید.
با استفاده از گزینه «Impact» شما میتوانید این رویدادهای اقتصادی را بر اساس سطح اهمیت آن ها دستهبندی کنید. تریدینگ اکونومیکس سه دستهبندی دارد. رویدادهای یک ستاره، دو ستاره و سه ستاره که طبیعتا اهمیت آن ها بر اساس تعداد ستاره افزایش مییابد.
قسمت «Countries» امکان فیلتر کردن بر اساس کشور یا اقتصاد موردنظر را فراهم میکند. مثلا اگر قصد دارید فقط شاخصهای اقصتادی کلان آمریکا را ببینید، کافی است روی این گزینه کلیک کرده و «United States» را انتخاب کنید.
فیلتر «Category» دستهبندی رویدادها را نمایش میدهد. مثلا شما میتوانید در این فیلتر گزینه «Prices & Inflation» را انتخاب کرده و فقط دادههای تورمی را مشاهده کنید.
بخش «UTC +3:30» نیز برای تعیین منطقه زمانی است. شما میتوانید منطقه زمانی خودتان (تهران-ایران) را تنظیم کنید تا ببینید دقیقا رویداد موردنظرتان در چه ساعتی به وقت ایران رخ میدهد.
- تاریخ و ساعت
اولین چیزی که در تقویم اقتصادی به چشم میآید، ستون زمان انتشار است. در این بخش دقیقا مشخص میشود که هر رویداد چه روز و ساعتی منتشر خواهد شد. اهمیت این قسمت بسیار بالاست، چون بازارها معمولا درست در همان لحظه انتشار خبر واکنش نشان میدهند. مثلا اگر در ساعت ۴:۰۰ صبح «شاخص اعتماد مصرفکننده استرالیا» منتشر شود، معاملهگران بازار فارکس در همان دقیقه باید آماده واکنش باشند.
همانطور که گفتیم، ساعت تقویم معمولا بر اساس منطقه زمانی قابل تغییر است. مثلا شما میتوانید آن را روی «تهران (UTC+3:30)» تنظیم کنید تا دقیقاً با ساعت محلی خودتان هماهنگ باشد.
- کشور
در ستون بعدی، پرچم و کد کشور (مثلاً GB = بریتانیا، AU = استرالیا، MX = مکزیک) قرار دارد که نشان میدهد داده متعلق به کدام اقتصاد است. گاهی اوقات هم رویدادها مربوط به یک بلوک منطقهای خاص مثلا اروپا (EA = Euro Area) هستند. در این صورت آن داده را باید به عنوان یک شاخص منطقهای و نه مربوط به یک کشور واحد تفسیر کرد.
- عنوان رویداد
این ستون عنوان خبر یا شاخص اقتصادی را نشان میدهد. گاهی هم کنار این عنوان، مخفف ماه میلادی (مثل AUG، SEP) دیده میشود که نشان میدهد داده مربوط به کدام ماه است. شناخت هر شاخص اهمیت زیادی دارد، چون هرکدام اثر متفاوتی روی بازار میگذارند.
اما نکته مهم اینجاست که همه رویدادها عددی و آماری نیستند. بعضی از آن ها بیشتر کیفی هستند و باید با توجه به ماهیتشان تفسیر شوند. برای درک بهتر، به چند نمونه نگاه کنیم:
- شاخصهای آماری (عددمحور)
مثل نرخ بیکاری (Unemployment Rate)، شاخص قیمت مصرف کننده (CPI)، یا تولید ناخالص داخلی (GDP). اینها همیشه یک عدد مشخص دارند که میتوان آن را با مقدار قبلی و پیشبینی بازار مقایسه کرد.
- سخنرانیها (Speech)
مثلا «سخنرانی رئیس فدرال رزرو». این نوع رویداد عدد ندارد، بلکه مهم محتوای صحبتهاست. اگر لحن سخنران به سمت سیاست انقباضی (افزایش نرخ بهره) باشد، بازار واکنش منفی به داراییهای پرریسک نشان میدهد. اگر لحن انبساطی باشد، میتواند باعث رشد بازار سهام یا ارزهای دیجیتال شود.
- حراج اوراق (Auction)
مثل «حراج اوراق ۱۰ ساله آمریکا» یا «حراج اوراق خزانه ژاپن». اینجا اعداد مربوط به بازده (Yield) یا حجم اوراق فروختهشده اهمیت دارند. بالا رفتن بازده معمولا نشانه افزایش هزینه استقراض دولت و احتمال بالا رفتن نرخ بهره است.
- شاخصهای نظرسنجی و اعتماد (Survey/Confidence Index)
مثل «شاخص اعتماد مصرفکننده» یا «شاخص مدیران خرید (PMI)». اینها با پرسشنامه از فعالان اقتصادی یا مصرفکنندگان تهیه میشوند و بازتابدهنده چشمانداز آینده هستند.
ستون Previous نشاندهنده نتیجه گزارش قبلی است. مثلا اگر شاخص بیکاری ماه گذشته ۸٪ بوده، این عدد در ستون Previous نمایش داده میشود. این بخش برای مقایسه روند بسیار مهم است، چون بازار همیشه تغییرات نسبت به گذشته را در نظر میگیرد.
در قسمت (Consensus / Forecast) دو ستون پیشبینی تحلیلگران و اقتصاددانان درباره آن شاخص یا داده اقتصادی آورده میشود. اما چه تفاوتی با هم دارند؟
Consensus یا اجماع در واقع میانگین پیشبینی جمعی تحلیلگران، اقتصاددانها و موسسات مالی است. یعنی چندین منبع معتبر پیشبینی خود را درباره یک شاخص اعلام میکنند و تقویم اقتصادی میانگین یا اجماع آنها را نمایش میدهد.
Forecast گاهی به همان معنی Consensus به کار میرود، اما در بعضی تقویمها (مثل Trading Economics) یک تفاوت کوچک دارد:
- Forecast معمولاً پیشبینی اختصاصی خود سایت یا موسسه منتشرکننده تقویم است.
- در حالی که Consensus نماینده پیشبینی کلی بازار و تحلیلگران مختلف است.
در ستون (Actual) مقدار واقعی در لحظه انتشار خبر بهروزرسانی میشود و عدد واقعی گزارش را نشان میدهد. در حقیقت، مهمترین بخش برای معاملهگران همین ستون است، چون مستقیما رفتار بازار را شکل میدهد.
بعضی تقویمها مثل Trading Economics در کنار هر شاخص نمودارهای کوچکی نمایش میدهند. این نمودار روند تاریخی آن شاخص را نشان میدهد (مثلا تغییرات نرخ بیکاری در چند ماه گذشته). با نگاه سریع به این بخش میتوانید متوجه شوید وضعیت در حال بهبود یا بدتر شدن است.

طبق ستون اول متوجه میشویم که شاخص قیمت تولیدکننده (PPI) آمریکا ساعت ۴ بعد از ظهر به وقت محلی منتشر میشود. به طور کلی، شاخصهای اقتصادی را میتوان در بازه زمانیهای مختلفی ارزیابی کرد. منظور از MoM بازه زمانی ماهانه است و YoY تغییرات کل یک سال نسبت به سال قبل را نشان میدهد.
در سطر اول که مربوط به شاخص PPI اصلی در بازه ماهانه است، میبینیم که مقدار قبلی ۰.۹٪ ثبت شده است. این یعنی در ماه گذشته قیمت تولیدکنندهها نسبت به ماه ماقبلش ۰.۹٪ افزایش داشته است. در ستون Forecast پیشبینی تریدینگ اکونومیکس برای این ماه ۰.۳٪ است و Consensus که میانگین پیشبینی اقتصاددانان و تحلیلگران مختلف را نشان میدهد ۰.۴٪ ثبت شده است. مقدار Actual یا واقعی هم هنوز منتشر نشده و به همین دلیل این ستون خالی مانده و در لحظه انتشار شاخص پر میشود.
چطور از تقویم اقتصادی استفاده کنیم؟
این بخش مهمترین قسمت مقاله است، چون فقط دانستن اینکه رویدادها چه زمانی هستند کافی نیست؛ باید بدانید چطور از این اطلاعات استفاده کنید.
- برنامهریزی هفتگی: در ابتدای هفته به تقویم اقتصادی نگاه کنید و رویدادهای مهم (مثل NFP یا تصمیم نرخ بهره) را علامت بزنید. این کار به شما کمک میکند از قبل آماده باشید.
- ترکیب با تحلیل تکنیکال: اگر میبینید یک خبر مهم نزدیک است، سطوح حمایت و مقاومت نمودار را بررسی کنید. مثلا اگر خبر منفی بیاید و بازار به حمایت نزدیک باشد، احتمال شکستن حمایت بیشتر میشود.
- استراتژی معاملاتی متناسب با خبر: بعضی معاملهگران قبل از انتشار خبر، از بازار خارج میشوند تا ریسک نکنند. برخی دیگر ترجیح میدهند منتظر بمانند و پس از انتشار داده و مشخص شدن جهت بازار وارد معامله شوند.
- مدیریت حجم و حد ضرر: در زمانهایی که احتمال نوسان شدید وجود دارد، بهتر است حجم معامله کمتر شود یا حد ضرر نزدیکتر قرار بگیرد.
- ثبت تجربهها: بهترین راه برای یادگیری استفاده از تقویم اقتصادی، تجربه شخصی است. بعد از هر رویداد مهم یادداشت کنید بازار چگونه واکنش نشان داد و استراتژی شما چقدر موفق بود.
تقویم اقتصادی را از کجا ببینیم؟
امروزه دهها وبسایت معتبر وجود دارد که تقویم اقتصادی رایگان و بهروزی ارائه میدهند. برخی از بهترین منابع عبارتاند از:
- Trading Economics: همه رویدادها، نرخ بهره، قیمتها و تورم، بازار کار، رشد تولید ناخالص داخلی، تجارت خارجی، دولت، اعتماد تجاری، احساسات مصرفکننده، بازار مسکن.
- Investing.com: تقویم اقتصادی همزمان با اعلام رویدادهای اقتصادی، شاخصها را دریافت کنید و تأثیر فوری آنها بر بازار جهانی را مشاهده کنید – از جمله رویدادهای قبلی، …
- Forex Factory: با تقویم اقتصادی فارکس محور، رویدادهای تأثیرگذار بر بازار را خیلی قبل از وقوع پیشبینی کنید.
- TradingView: تقویم اقتصادی آخرین و رویدادهای اقتصادی آینده را نشان میدهد که میتوانند بر داراییها، مناطق و بازارهای جهانی خاصی تأثیر بگذارند.
- FXStreet: تقویم اقتصادی لحظهای، رویدادها و شاخصهای اقتصادی سراسر جهان را پوشش میدهد.
- MyFxBook: تقویم اقتصادی به صورت آنی که تمام رویدادها و اطلاعیههای اقتصادی را پوشش میدهد. مقادیر تاریخی، قبلی، اجماعی و واقعی هر شاخص را مشاهده کنید.
همچنین بروکرهای فارکس هم معمولاً تقویم اقتصادی روی سایت خود دارند.
در انتها
تقویم اقتصادی مثل یک “برنامهریزی خبری” برای بازار است. اگر به آن توجه نکنید، ممکن است در لحظه انتشار اخبار مهم با حرکتهای ناگهانی و شدید قیمت غافلگیر شوید. استفاده درست از آن کمک میکند ریسک معاملات را مدیریت کنید و حتی فرصتهای سودآور پیدا کنید. در دنیایی که ثانیهها حرف اول را میزنند، اطلاع از آنچه در راه است، برگ برنده شماست. با استفاده منظم از این ابزار، دیگر از نوسانات ناگهانی غافلگیر نخواهید شد و میتوانید با اطمینان بیشتری برای آینده سرمایهگذاری خود برنامهریزی کنید.
به یاد داشته باشید، موفقیت در بازارهای مالی تنها به تحلیل نمودارها محدود نمیشود. تسلط بر اطلاعات و درک وقایع کلان اقتصادی، مکمل تحلیل تکنیکال است و شما را در مسیری قرار میدهد که به جای دنبال کردن بازار، آن را پیشبینی کنید. به همین خاطر توصیه میکنیم که از همین امروز، استفاده از تقویم اقتصادی را به یکی از عادتهای معاملاتی خود تبدیل کنید.
سودآوری و معامله گری بصورت مداوم در بازار می تواند بسیار چالش برانگیز باشد، و واقعیت مسلم این است که اکثر معامله گران خرد معمولا پول خود را در این بازار از دست می دهند. با این وجود، با یک برنامه معاملاتی جامع، ابزارهای مناسب و دانش کافی از بازار ارز، شانس موفقیت شما به عنوان یک معامله گر به میزان قابل توجهی افزایش می یابد.

استارک ور (StarkWare) تأیید کل تاریخچه بلاکچین با ۱ مگابایت حجم ممکن ساخت!

تقویم اقتصادی (Economic Calendar) چیست و چگونه از آن استفاده کنیم؟

ارتقای آلپنگلو (Alpenglow) در سولانا تأیید شد؛ تراکنشها بزودی با سرعت اینترنت نهایی میشوند

تراست ولت امکان معامله سهام های توکنیزه (RWA) را برای کاربران فعال کرد

اندیکاتور ATR چیست و چه کاربردی در تحلیل تکنیکال دارد؟

۹ عادت مالی که افراد منظم را به ثبات و آزادی مالی میرساند

کاناری کپیتال برای ETF اینجکتیو (INJ) ثبتنام کرد

کاردینال؛ اولین پروتکل دیفای بیت کوین بر بستر کاردانو

هر اونس چند گرم طلای ۱۸ عیار است؟ تبدیل ساده انس به گرم طلا

آیا تحلیل تکنیکال بهتنهایی در بازار رمز ارزها سودآور است؟

کوینبیس توکن اتنا (ENA) را به رودمپ خود اضافه کرد

در ۲ ماه اخیر بیش از ۱۰٪ پروژهها ناپدید شدهاند!

ارتقای آلپنگلو (Alpenglow) در سولانا تأیید شد؛ تراکنشها بزودی با سرعت اینترنت نهایی میشوند

اندیکاتور ATR چیست و چه کاربردی در تحلیل تکنیکال دارد؟

تراست ولت امکان معامله سهام های توکنیزه (RWA) را برای کاربران فعال کرد

تقویم اقتصادی (Economic Calendar) چیست و چگونه از آن استفاده کنیم؟

استارک ور (StarkWare) تأیید کل تاریخچه بلاکچین با ۱ مگابایت حجم ممکن ساخت!

سریال پول به زبان ساده (Money, Explained) قسمت پنجم (آخر)

سریال پول به زبان ساده (Money, Explained) قسمت چهارم

سریال پول به زبان ساده (Money, Explained) قسمت سوم

سریال پول به زبان ساده (Money, Explained) قسمت دوم

سریال پول به زبان ساده (Money, Explained) قسمت اول

مستند دیپ وب (Deep Web) 2015

مستند شغل داخلی (Inside Job) بحران مالی

مارجین کال (Margin Call)

فیلم بازیکن شماره یک آماده (Ready Player One)

فیلم مرد آزاد (Free Guy)
![مستند کریپتوپیا [Cryptopia]، بیت کوین، بلاکچین و آینده اینترنت](https://investorent.xyz/wp-content/uploads/مستند-کریپتوپیا-Cryptopia-80x80.webp)
مستند کریپتوپیا (Cryptopia)

برای ارسال نظر باید وارد شوید ورود