رمز ۱۱۱مرحلهٔ پایه، درس ۱۱ از ۲۲ بلاکچین و فناوری
کارمزد شبکه (Gas Fee) چیست و چرا تغییر میکند
گس فی یا کارمزد شبکه چیست، چطور از واحد گس، کارمزد پایه و انعام ساخته میشود، چرا ناگهان بالا میرود و پیش از تأیید تراکنش چه چیزی را باید خواند.
پیشنیاز رمز ۱۰۸ تأیید تراکنش بلاکچین چطور انجام میشود؛ از ممپول تا نهایی شدن
کارمزد شبکه (Gas Fee یا Network Fee) مبلغی است که برای ثبت یک تراکنش روی بلاکچین به خود شبکه پرداخت میشود، نه به صرافی یا سازندهٔ کیف پول. در اتریوم این کارمزد از ضرب «مقدار کار محاسباتی» در «قیمت هر واحد کار» به دست میآید و در بیتکوین بیشتر به حجم تراکنش و شلوغی شبکه بستگی دارد. چون فضای هر بلوک محدود است و کاربران برای آن رقابت میکنند، کارمزد عدد ثابتی نیست و در ساعتهای شلوغ ممکن است چند برابر شود.
کارمزد شبکه با کارمزد صرافی فرق دارد
وقتی دربارهٔ «کارمزد» در کریپتو صحبت میشود، معمولاً دو چیز متفاوت با هم اشتباه گرفته میشوند. کارمزد صرافی مبلغی است که یک شرکت برای خدمات خودش میگیرد؛ مثلاً برای انجام معامله یا پردازش برداشت. این عدد را همان شرکت تعیین میکند و به حساب همان شرکت میرود. موضوع کارمزدهای صرافی و روش مقایسهٔ آنها در بخش صرافی و نخستین معامله جداگانه بررسی شده است.
کارمزد شبکه اما به هیچ شرکتی تعلق ندارد. این مبلغ بخشی از قواعد خود بلاکچین است و به کسانی میرسد که تراکنش شما را در بلوک ثبت میکنند، یا طبق قواعد پروتکل از بین میرود. اگر هنوز با مفهوم بلوک و زنجیره آشنا نیستید، پیش از ادامه بلاکچین به زبان ساده را مرور کنید و برای دیدن تصویر کلی این بخش به صفحهٔ اصلی بلاکچین و فناوری سر بزنید.
این تمایز در عمل مهم است. هنگام برداشت از صرافی، عددی که با عنوان «کارمزد برداشت» میبینید ممکن است کارمزد شبکه بهعلاوهٔ سهم خود صرافی باشد. اما وقتی از کیف پول شخصی خودتان تراکنش میفرستید، معمولاً فقط کارمزد شبکه را میپردازید و خودتان سرعت و مبلغ آن را انتخاب میکنید. برای همین، یاد گرفتن خواندن کارمزد شبکه بخشی از مسئولیت کسی است که کلید دارایی خود را در دست دارد.
گس در اتریوم؛ واحد کار محاسباتی
در اتریوم هر تراکنش، از یک انتقال ساده تا اجرای یک قرارداد هوشمند پیچیده، مقداری کار محاسباتی از شبکه میخواهد. «گس» (Gas) واحدی است که این مقدار کار را اندازه میگیرد. میتوانید گس را مثل «لیتر سوخت» تصور کنید: مسیر کوتاه سوخت کمتری میخواهد و مسیر طولانی سوخت بیشتری، و قیمت هر لیتر هم جداگانه تعیین میشود.
طبق مستندات فنی ethereum.org، یک انتقال سادهٔ اتر به ۲۱٬۰۰۰ واحد گس نیاز دارد [۱]. این کمترین مقدار کار برای یک تراکنش معمولی است. کارهایی مثل معاوضهٔ توکن، ساختن یک توکن جدید یا تعامل با یک برنامهٔ مالی غیرمتمرکز چند مرحلهٔ محاسباتی دارند و به همین نسبت گس بیشتری مصرف میکنند.
دو مفهوم را از هم جدا نگه دارید:
- مقدار گس مصرفی: چه مقدار کار انجام شده است. این عدد به نوع تراکنش بستگی دارد، نه به مبلغ آن.
- قیمت هر واحد گس: برای هر واحد کار چقدر میپردازید. این عدد با شلوغی شبکه بالا و پایین میرود و معمولاً بر حسب «گوئی» (Gwei)، واحد بسیار کوچکی از اتر، نمایش داده میشود.
کیف پولها پیش از ارسال یک «سقف گس» (Gas Limit) هم تعیین میکنند؛ یعنی بیشترین مقدار کاری که اجازه میدهید تراکنش مصرف کند. اگر تراکنش کمتر از این سقف مصرف کند، مازاد از حساب شما کم نمیشود. اما اگر اجرای قرارداد در میانهٔ کار با خطا متوقف شود، گسی که تا آن لحظه مصرف شده معمولاً پرداختشده حساب میشود، چون شبکه آن کار را انجام داده است.
نکته
برای ارسال هر توکنی روی شبکهٔ اتریوم، کارمزد به ارز اصلی همان شبکه، یعنی اتر، پرداخت میشود. اگر در کیف پول خود توکن دارید ولی اتر ندارید، نمیتوانید آن توکن را جابهجا کنید. همین منطق در بسیاری از شبکههای دیگر هم برقرار است.
کارمزد پایه، انعام و سوزاندن
طبق ethereum.org، کارمزد گس برابر است با واحدهای گس مصرفشده ضرب در مجموع «کارمزد پایه» و «کارمزد اولویت» [۱]. هر کدام از این دو جزء نقش جداگانهای دارد:
- کارمزد پایه (Base Fee): این بخش را خود پروتکل بر اساس شلوغی بلوکهای اخیر تعیین میکند و پس از پرداخت سوزانده، یعنی برای همیشه از چرخه خارج، میشود [۱]. شما نمیتوانید آن را کمتر از مقدار تعیینشده بپردازید.
- کارمزد اولویت یا انعام (Priority Fee / Tip): این بخش به اعتبارسنجی میرسد که بلوک حاوی تراکنش شما را پیشنهاد داده است [۱]. انعام بیشتر، انگیزهٔ بیشتری برای انتخاب سریعتر تراکنش ایجاد میکند.
اعتبارسنجها در سازوکار اثبات سهام جای استخراجکنندهها را در اتریوم گرفتهاند و وظیفهٔ پیشنهاد و تأیید بلوکها را بر عهده دارند.
یک مثال فرضی
فرض کنید کارمزد پایه در لحظهٔ ارسال ۱۰ گوئی است و شما ۲ گوئی انعام در نظر گرفتهاید. برای یک انتقال ساده که ۲۱٬۰۰۰ واحد گس مصرف میکند [۱]، قیمت هر واحد ۱۲ گوئی میشود و کل کارمزد ۲۵۲٬۰۰۰ گوئی خواهد بود. از این مقدار، ۲۱۰٬۰۰۰ گوئی (سهم کارمزد پایه) سوزانده میشود و ۴۲٬۰۰۰ گوئی (سهم انعام) به اعتبارسنج میرسد. این عددها فقط برای فهم فرمولاند و به قیمت واقعی شبکه در هیچ روزی اشاره نمیکنند.
نکتهٔ مهم این است که کیف پول معمولاً یک «سقف کارمزد» (Max Fee) هم از شما میگیرد؛ بیشترین مبلغی که برای هر واحد گس حاضرید بپردازید. اگر کارمزد پایه هنگام ثبت تراکنش کمتر از سقف شما باشد، تفاوت از حسابتان کم نمیشود. اما اگر سقف شما از کارمزد پایهٔ فعلی پایینتر باشد، تراکنش در صف میماند تا کارمزد پایه پایین بیاید.
کارمزد بیتکوین و فضای بلوک
بیتکوین مفهومی به نام گس ندارد، چون تراکنشهای آن کار محاسباتی متغیر و پیچیدهای انجام نمیدهند. آنچه در بیتکوین کمیاب است، فضای بلوک است. هر تراکنش بسته به ساختارش چند «بایت مجازی» (vByte) از این فضا را اشغال میکند و کارمزد آن معمولاً بر حسب «ساتوشی بر بایت مجازی» (sat/vB) بیان میشود. ساتوشی کوچکترین واحد بیتکوین است.
استخراجکنندهها هنگام ساختن بلوک، تراکنشهایی را که نرخ بالاتری پیشنهاد دادهاند زودتر انتخاب میکنند، چون درآمدشان از همین کارمزدها و پاداش بلوک تأمین میشود. به همین دلیل، در استخراج بیتکوین کارمزدها بخشی از انگیزهٔ اقتصادی حفظ امنیت شبکهاند.
یک مثال فرضی
فرض کنید تراکنش شما ۱۴۰ بایت مجازی حجم دارد و نرخ پیشنهادی ۵ ساتوشی بر بایت است. کارمزد کل ۷۰۰ ساتوشی میشود. اگر در ساعت شلوغتری نرخ دو برابر شود، همان تراکنش با همان حجم و همان مبلغ، ۱٬۴۰۰ ساتوشی کارمزد میخواهد. این عددها صرفاً آموزشیاند.
نکتهای که مبتدیان را غافلگیر میکند این است که حجم تراکنش بیتکوین به مبلغ انتقال ربطی ندارد. حجم بیشتر به تعداد «ورودیها» بستگی دارد؛ یعنی چند تکهٔ جداگانه از دریافتیهای قبلی را کنار هم میگذارید تا مبلغ مورد نظر ساخته شود. کیف پولی که دهها دریافت کوچک جداگانه دارد، برای ارسال همان مبلغ ممکن است تراکنش حجیمتر و در نتیجه کارمزد بیشتری بسازد.
چرا کارمزد ناگهان بالا میرود
کارمزد شبکه نتیجهٔ یک بازار ساده است: عرضهٔ فضای بلوک تقریباً ثابت است، اما تقاضا برای آن در لحظههای خاص جهش میکند. وقتی تعداد زیادی کاربر همزمان میخواهند تراکنش ثبت کنند، کسانی که عجله دارند نرخ بالاتری پیشنهاد میدهند و سطح کلی کارمزد بالا میرود.
نمونهٔ واقعی: بلوک هاوینگ ۲۰۲۴
کویندسک در ۲۰ آوریل ۲۰۲۴ گزارش داد که پس از هاوینگ و همزمان با رقابت کاربران برای ساخت توکنهای پروتکل Runes، میانهٔ کارمزد بیتکوین به ۱٬۸۰۵ ساتوشی بر بایت مجازی رسید، در حالی که این عدد در ۱۹ آوریل حدود ۱۰۰ ساتوشی بر بایت بود [۲]. طبق همان گزارش، کل کارمزد بلوک هاوینگ در آوریل ۲۰۲۴ برابر ۲٫۴ میلیون دلار بود، در حالی که یک بلوک معمولی پیش از هاوینگ ۴۰٬۰۰۰ تا ۶۰٬۰۰۰ دلار کارمزد داشت [۲].
این نمونه نشان میدهد که جهش کارمزد لزوماً به مشکل فنی شبکه مربوط نیست؛ کافی است یک رویداد پرطرفدار، عرضهٔ یک توکن جدید یا نوسان شدید بازار باعث شود افراد زیادی همزمان تراکنش بفرستند. کسی که در چنین ساعتی با نرخ معمولی تراکنش ثبت کند، ممکن است مدت طولانی در صف انتظار تراکنشهای تأییدنشده بماند تا نوبتش برسد یا کارمزد را افزایش دهد.
در سمت دیگر، شبکهها راههایی برای کاهش فشار کارمزد طراحی کردهاند. یکی از آنها لایهٔ دوم است؛ شبکههایی که تراکنشها را بیرون از شبکهٔ اصلی پردازش میکنند و خلاصهٔ آنها را روی شبکهٔ اصلی ثبت میکنند. طبق ethereum.org، ارتقای «دنکون» در ۱۳ مارس ۲۰۲۴ روی شبکهٔ اصلی اتریوم فعال شد و «بلاب»های موقت داده را معرفی کرد [۳]. بلابها ذخیرهٔ داده را برای رولآپها ارزانتر و در نتیجه کارمزد لایهٔ دوم را کمتر میکنند، و حدود ۱۸ روز در شبکه در دسترس میمانند و بعد حذف میشوند [۳]. با این حال، کارمزد لایهٔ دوم هم با شلوغی تغییر میکند و انتقال دارایی میان لایهها کارمزد و ریسک جداگانهٔ خود را دارد.
هشدار
کارمزدی که امروز در یک شبکه پایین است، فردا ممکن است بالا باشد. هیچ عددی که در یک مقاله، ویدئو یا گروه گفتوگو دیدهاید را «کارمزد همیشگی» یک شبکه فرض نکنید و پیش از هر ارسال، عدد لحظهای را در خود کیف پول بخوانید.
پیش از تأیید تراکنش، کارمزد را چطور بخوانیم
صفحهٔ تأیید کیف پول آخرین جایی است که میتوانید اشتباه را پیش از ثبت دائمی ببینید. تراکنش ثبتشده روی بلاکچین برگشتپذیر نیست، پس چند ثانیه وقت گذاشتن برای خواندن این صفحه ارزشمند است.
پیش از زدن دکمهٔ تأیید
- شبکهٔ انتخابشده را با شبکهٔ مقصد مقایسه کنید؛ فرستنده و گیرنده باید روی یک شبکه باشند.
- مطمئن شوید ارز اصلی همان شبکه را برای پرداخت کارمزد در کیف پول دارید.
- «کارمزد تخمینی» را از «سقف کارمزد» جدا بخوانید؛ عدد اول معمولاً چیزی است که احتمالاً میپردازید و عدد دوم بیشترین مبلغ ممکن است.
- کارمزد را با مبلغ انتقال مقایسه کنید؛ اگر کارمزد بخش بزرگی از مبلغ است، شاید بهتر باشد زمان ارسال را به ساعت خلوتتری موکول کنید.
- گزینههای سرعت (کند، معمولی، سریع) را بشناسید و بدانید انتخاب «کند» یعنی احتمال انتظار طولانیتر.
- اگر صفحهٔ تأیید بهجای یک انتقال ساده، «اجازهٔ دسترسی» یا امضای یک قرارداد را میخواهد، دقیقاً بدانید به چه چیزی اجازه میدهید.
- پس از ارسال، شناسهٔ تراکنش را نگه دارید و وضعیت تأیید آن را در یک مرورگر بلاکچین پیگیری کنید.
هشدار
اگر کسی از شما میخواهد برای «آزاد کردن» دارایی، دریافت جایزه یا فعالسازی حساب ابتدا «کارمزد گس» را به یک آدرس بفرستید، با یک الگوی شناختهشدهٔ کلاهبرداری روبهرو هستید. کارمزد شبکه هیچوقت به آدرس یک شخص واریز نمیشود؛ خود کیف پول آن را هنگام ارسال از تراکنش شما کم میکند. نشانههای این نوع فریب در راهنمای پرهیز از کلاهبرداری ارز دیجیتال و روش شناخت درخواستهای مشکوک امضا در تشخیص کیف پول مشکوک و فیشینگ آمده است.
در نهایت، کارمزد شبکه نه «هزینهٔ اضافه» است و نه نشانهٔ خرابی شبکه؛ قیمتی است که برای جا گرفتن در فضای محدود یک دفتر عمومی و غیرمتمرکز پرداخت میشود. وقتی بدانید این قیمت از چه اجزایی ساخته شده، چه کسی آن را دریافت میکند و چرا تغییر میکند، صفحهٔ تأیید کیف پول دیگر یک عدد مبهم نیست و میتوانید با آگاهی تصمیم بگیرید که الان ارسال کنید یا صبر کنید.
خودتان را بسنجید
چرا کارمزد انتقال گاهی از مبلغ انتقال بیشتر میشود؟
چون کارمزد شبکه به مقدار کار محاسباتی یا حجم دادهای که تراکنش اشغال میکند وابسته است، نه به مبلغی که جابهجا میشود. انتقال یک مبلغ بسیار کوچک همانقدر فضای بلوک میگیرد که انتقال یک مبلغ بزرگ. در ساعتهای شلوغ که نرخ کارمزد بالا میرود، برای مبلغهای کوچک ممکن است کارمزد از خود مبلغ بیشتر شود.
اگر کارمزد کم بگذارم چه میشود؟
تراکنش شما از بین نمیرود، اما ممکن است مدت طولانی در صف انتظار بماند، چون تولیدکنندگان بلوک معمولاً تراکنشهای پرکارمزدتر را زودتر انتخاب میکنند. در اتریوم اگر سقف کارمزد از کارمزد پایهٔ فعلی شبکه کمتر باشد، تراکنش تا پایین آمدن کارمزد پایه وارد بلوک نمیشود. برخی کیف پولها امکان افزایش کارمزد یا جایگزینی تراکنش معطل را دارند.
کارمزد شبکه به چه کسی میرسد؟
در بیتکوین، کارمزد به استخراجکنندهای میرسد که تراکنش را در بلوک قرار میدهد. در اتریوم، بخش کارمزد پایه سوزانده میشود و از چرخه خارج میشود و فقط انعام یا کارمزد اولویت به اعتبارسنجی میرسد که بلوک را پیشنهاد داده است. صرافی یا کیف پول از کارمزد شبکه سهمی ندارند، هرچند ممکن است کارمزد جداگانهای برای خدمات خود بگیرند.
تراکنش ناموفق هم کارمزد دارد؟
در اتریوم بله، معمولاً دارد. اگر اجرای یک قرارداد هوشمند در میانهٔ کار با خطا متوقف شود، گسی که تا آن لحظه مصرف شده پرداخت میشود، چون شبکه آن کار محاسباتی را واقعاً انجام داده است. به همین دلیل خواندن پیام خطای کیف پول پیش از تکرار تراکنش اهمیت دارد.
منابع
- Ethereum gas and fees: technical overview | ethereum.org مشاهدهٔ منبع Ethereum gas and fees: technical overview | ethereum.org
- The Bitcoin Halving Is Here, and With It a Giant Surge in Transaction Fees مشاهدهٔ منبع The Bitcoin Halving Is Here, and With It a Giant Surge in Transaction Fees
- Cancun-Deneb (Dencun) FAQ | ethereum.org مشاهدهٔ منبع Cancun-Deneb (Dencun) FAQ | ethereum.org