زمانی که ساتوشی ناکاموتو، خالق ناشناس بیت کوین، این پدیده انقلابی را معرفی کرد، از کارمزدهای بالای تراکنش بهعنوان یکی از مشکلات سیستمهای مالی سنتی یاد کرده بود. امروز با گسترش شبکه بیت کوین میتوانید چند میلیون دلار پول را با کارمزد چند دلاری و در عرض یک ساعت یا کمتر به نقطهای دیگر از سراسر جهان منتقل کنید. با این حال، اگر بخواهید با شبکه بیت کوین یک کالای ارزانقیمت مانند یک فنجان قهوه را خریداری کنید، کارمزدی که باید پرداخت کنید احتمالاً از هزینه قهوه بیشتر خواهد بود. آیا میتوان این موضوع را نقطه ضعف شبکه بیت کوین دانست؟
کارمزد تراکنش بیت کوین (Transaction Fee) که گاهی کارمزد استخراج هم نامیده میشود، هزینهای است که کاربران بیت کوین باید برای ارسال یک تراکنش پرداخت کنند. این کارمزد به ماینرها یا استخرهای استخراج بیت کوین تعلق میگیرد.
نکته بسیار مهم درباره کارمزد بیت کوین این است که کارمزد تراکنشها با روشی بسیار نوین و بهطور کاملاً آزاد و رقابتی تعیین میشود؛ به این معنی که لزوماً بالابودن مبلغ تراکنش، کارمزد را هم بالا نمیبرد.
تعیین کارمزد کافی به کاربران اجازه میدهد تا تراکنش خود را نسبت به سایر تراکنشها در اولویت قرار دهند و آن را سریعتر وارد بلاک چین بیت کوین کنند. در هنگام انتخاب تراکنشها برای ساخت بلاکها، ماینرها بهدنبال تراکنشی هستند که بیشترین کارمزد را میپردازد. بنابراین اگر کارمزدی که برای تراکنش خود تعیین میکنید بهاندازه کافی نباشد، ممکن است این تراکنش برای مدتزمان طولانی در انتظار تأیید باقی بماند.
پیش از مطالعه این مقاله، بهتر است بدانید که برای انجام تراکنشهای بیت کوین، لازم نیست حتماً کارمزد را بهصورت دستی تعیین کنید. تمامی کیف پولهای امروزی بیت کوین، میتوانند مبلغ کارمزد استاندارد برای هر تراکنش را بهطور خودکار و بر اساس میانگین کارمزدهای شبکه تعیین کرده و از موجودی شما کسر کنند.
در این مطلب که با کمک مقالهای از وبسایت آموزشی 99Bitcoins گردآوری شده است، اصول و مبانی اولیه کارمزد بیت کوین را بررسی کرده و تلاش میکنیم توضیح جامعی در مورد کارمزد تراکنشهای بیت کوین ارائه دهیم.
با مطالعه این مقاله یاد میگیرید:
- کارمزد بیت کوین چیست و بر چه اساسی محاسبه میشود؟
- تغییر کارمزد تراکنشهای بیت کوین، چه تأثیری بر سرعت تأیید تراکنشها دارد؟
- حداقل کارمزدی که باید برای تأیید یک تراکنش بپردازیم چقدر است؟
- چگونه کارمزد تراکنش را در کیف پولهای بیت کوین تغییر دهیم؟
- برای تشخیص نرخ کارمزد و زمان مناسب انجام تراکنش، به چه منابعی مراجعه کنیم؟
- چه راهکارهایی برای کاهش کارمزد تراکنشهای بیت کوین وجود دارد؟
برای پاسخ به این سؤالات، تا انتهای مقاله با ما همراه باشید.
کارمزد تراکنشهای بیت کوین چیست؟
کارمزد تراکنش، هزینهای است که مالک بیت کوین به ماینرها پرداخت میکند تا بتواند دارایی بیت کوین خود را به یک آدرس بیت کوین دیگر منتقل کند. کیف پولهای بیت کوین، کارمزد هر تراکنش را بهصورت خودکار و بر اساس ترافیک شبکه تعیین میکنند؛ اما همچنین بسیاری از کیف پولها این امکان را به کاربران میدهند که کارمزد تراکنش خود را بهصورت دستی و مطابق اولویت تراکنش تنظیم کنند.
اما برای درک بهتر جزئیات کارمزد تراکنشها، ابتدا باید بدانیم که بههنگام انتقال بیت کوین به آدرسی دیگر، چه اتفاقی میافتد؟ انتقال بیت کوین از آدرسی به آدرس دیگر، فرایندی است که مراحل زیر را شامل میشود:
۱. اعلام تراکنش به شبکه و اعتبارسنجی آن
بعد از اینکه تراکنشی را در کیف پول خود امضا کردید و نرمافزار کیف پولتان آن را به شبکه ارسال کرد، همه رایانههایی که نسخهای از بلاک چین بیت کوین را در اختیار دارند، اعتبار این تراکنش را بررسی میکنند. در دنیای بیت کوین و ارزهای دیجیتال، این رایانهها تحتعنوان نود (node) و این فرایند تحتعنوان اعتبارسنجی شناخته میشود. در این مرحله، نودها تاریخچه تراکنشهای بیت کوین را بررسی میکنند تا مطمئن شوند که بیت کوینهایی که قصد خرجکردن آنها را دارید، واقعاً متعلق به شما هستند و پیشتر خرج نشدهاند.
۲. ارسال تراکنش به استخر حافظه (مِمپول)
پس از تأیید اعتبار، تراکنش به استخر حافظه یا مِمپول (Mempool) فرستاده میشود. ممپول نوعی «اتاق انتظار» است که تراکنشها برای انتخاب شدن توسط ماینرها و ثبت شدن در یک بلاک (بستههای حاوی تراکنش)، در آن منتظر میمانند. در این مرحله، تراکنش «تأییدنشده» (unconfirmed) یا «بدون تأیید» (۰confirmation) ارزیابی میشود. در حقیقت بهبیان ساده میتوان گفت در این مرحله هنوز تراکنشها (در بلاکها) بستهبندی نشدهاند.
۳. ثبت در بلاک و تأیید تراکنش
هرگاه ماینری تراکنشی را انتخاب و آن را با موفقیت در بلاک استخراجشده جایگذاری کند، تراکنش تأییدشده محسوب میشود. هر بلاک میتواند تنها تعداد محدودی از تراکنشها را در خود جای دهد که در حال حاضر، این تعداد بهطور متوسط ۲,۵۰۰ تراکنش است. در مواقعی که ترافیک شبکه بالاست و تراکنشهای بسیاری منتظر تأییدشدن هستند، اولویت ماینرها با تراکنشی است که کارمزد بالاتری برای آن در نظر گرفته شده باشد.
کارمزد میتواند میزان فوریت تراکنش شما را مشخص کند. در حقیقت، اگر دوست دارید تراکنش شما در اول صف تأیید باشد، باید کارمزد بیشتری به ماینرها پرداخت کنید. اگر زمان برای شما اهمیت چندانی ندارد، میتوانید از میزان کارمزد کمتری استفاده کنید. همچنین به این نکته نیز توجه داشته باشید که همیشه فرستندهٔ تراکنش، کارمزدها را پرداخت میکند.
حال درباره این سؤال که چگونه کارمزد متعارف تراکنشهای بیت کوین را تشخیص دهیم، در ادامه مقاله بیشتر توضیح خواهیم داد.
نحوه تعیین کارمزدها در تراکنش بیت کوین
برای درک بهتر نحوه تعیین کارمزدها در تراکنشهای بیت کوین، بهتر است ابتدا چند مفهوم ساده را با هم مرور کنیم.
یوتیایکساو (UTXO)
سیستم بیت کوین برخلاف بانکها کار میکند. در بانکها برای اینکه مشخص شود هرکس چه مقدار موجودی دارد، یک فهرست از موجودی کاربران در اختیار بانک است که در زمان تراکنش از موجودی یک نفر کم میکند و به موجودی فرد دیگری اضافه میکند. اما در بیت کوین چنین سازوکاری وجود ندارد و هیچ فهرستی از موجودی کاربران در کار نیست. در بیت کوین بهجای آن که نیاز باشد موجودی هر کاربر بهشکل مستقیم ذخیره شود از مدل UTXO استفاده میشود.
در مدلهای UTXO، شبکه بر اساس تمام تراکنشهایی که شما در کیف پول خود دریافت یا ارسال کردهاید، متوجه میشود که آیا دارایی کافی برای انجام تراکنش دارید یا خیر.
برای اینکه این مفهوم را بهتر درک کنید، به این مثال توجه کنید:
فرض کنیم که در کیف پول جیبی خود ۷۵ هزار تومان پول نقد دارید. از آنجا که اسکناس ۷۵ هزار تومانی نداریم، پس در کیف پولتان ترکیبی از اسکناسهای مختلف وجود دارد که جمع آنها در کل ۷۵ هزار تومان میشود.
هر اسکناس را بهعنوان یک خروجی خرجنشده در نظر بگیرید. هر اسکناس دارای ارزشی است که شما میتوانید در تبادلات بعدی خود از آن استفاده کنید.
حالا این مثال را یک قدم جلوتر ببریم. فرض کنید که میخواهید با ۲۸ هزار تومان از ۷۵ هزار تومان خود ناهار بخرید. برای خرید ناهار باید به رستوران چند اسکناس (خروجی خرجنشده تراکنش) بدهید تا مبلغ ناهار را پرداخت کنید. فرض کنیم که ۷۵ هزار تومان شما شامل هفت اسکناس ۱۰ هزار تومانی و یک اسکناس ۵ هزار تومانی میشود. پس بهطور کلی شما ۸ خروجی خرجنشده تراکنش (UTXO) دارید. حالا برای خرید یک ناهار ۲۸ هزار تومانی به فرض سه UTXO (سه اسکناس ۱۰ هزار تومانی) پرداخت میکنید و رستوران به شما دو هزار تومان برمیگرداند.
بنابراین آن سه اسکناس ۱۰ هزار تومانی که شما پرداخت کردید را بهعنوان UTXO در نظر بگیرید که خرج میشود و دیگر خرجنشده به حساب نمیآید. آن دو هزار تومان بقیه را هم یک UTXO در نظر بگیرید که به شما برمیگردد.
حالا از مثال تخیلی خارج شویم و یک مثال واقعی را بررسی کنیم:
زمانی که کسی بخواهد برای شما ۱.۲ بیت کوین ارسال کند، باید در کیف پولش (کاربر نیاز نیست کاری انجام دهد) به اندازه ارزش مبلغ ارسالی، UTXO داشته باشد. فرض کنیم فرد موردنظر دو خروجی خرجنشده در کیف پولش دارد که یکی از آنها یک بیت کوین و دیگری ۰.۵ بیت کوین ارزش دارد. پس فرد موردنظر ما در کیف پولش به اندازه ۱.۵ بیت کوین UTXO دارد، اما او فقط میخواهد برای شما ۱.۲ ارسال کند. پس زمانی که او تراکنش را ارسال میکند، در حقیقت دارد به شبکه میگوید که من در کل ۱.۵ بیت کوین میفرستم و تو باید ۱.۲ بیت کوین را به گیرنده بدهی و ۰.۳ بیت کوین دیگر را به آدرس خودم برگردانی.
به عبارت دیگر و زبان سادهتر، وقتی قصد ارسال مبلغی را دارید، به شبکه که شامل گروهی از ماینرها و نودها است، تراکنشهای دریافتی قبلی خود را نشان میدهید و میگویید اینها مدارک داشتن بیت کوین هستند. سپس تراکنش شما معتبر شناخته شده و وارد بلاک میشود.
برای جمعبندی میتوان گفت:
اصطلاح UTXO بهمعنای «خروجی خرجنشده تراکنش» است. به بیان ساده، هر UTXO مانند یک اسکناس نقدی عمل میکند که ارزشی را (بهصورت بیت کوین) در خود ذخیره کرده و فقط یک بار میتوان آن را خرج کرد. بنابراین هر تراکنش بیت کوین، (حداقل) یک UTXO را مصرف کرده و یک یا چند UTXO جدید را ایجاد میکند.
ورودی تراکنش
در هر تراکنش شبکه بیت کوین، از یک یا چند UTXO (خروجی خرجنشده تراکنشهای قبلی) بهعنوان ورودی تراکنش استفاده میشود. شخص فرستنده با توجه به مبلغ تراکنش، ورودی مناسب را از میان UTXOهای موجود در کیف پول خود انتخاب میکند.
خروجی تراکنش
خروجیهای تراکنش، مقصد بیت کوینهای ورودی را تعیین میکنند. هر خروجی مشخص میکند که چه مقدار از بیت کوینهای ورودی به چه آدرسی منتقل شوند. خروجیهای تراکنش، در نهایت UTXOهای مستقلی را ایجاد میکنند که میتوان هریک را بهصورت جداگانه خرج کرد.
برای درک بهتر چگونگی عملکرد اجزای بالا، به مثال زیر توجه کنید.
در مثال بالا، نحوه استفاده از UTXOها و تنظیم ورودیها و خروجیهای تراکنش نشان داده شده است. اما اگر این ۲ تراکنش را واقعی درنظر بگیریم، احتمالاً هیچ ماینری آنها را تأیید نخواهد کرد؛ چراکه در این تراکنشها هیچ سهمی بهعنوان کارمزد درنظر گرفته نشده است.
حالا با شناخت عناصر تشکیلدهنده تراکنش بیت کوین، میتوانیم تعریف دقیقتری از کارمزد ارائه دهیم:
کارمزد تراکنشهای بیت کوین، در واقع نوعی خروجی است که تعیین میکند بخشی از مبلغ تراکنش، بهعنوان کارمزد به آدرس کیف پول ماینر تأییدکننده تراکنش انتقال داده شود. بنابراین فرستنده تراکنش، مبلغ کارمزد را از طریق کیف پول خود تعیین کرده و جای آدرس خروجی کارمزد را خالی میگذارد. حالا هر یک از ماینرهایی که برای تأیید این تراکنش و ثبت آن در بلاک تلاش میکنند، میتوانند آدرس کیف پول خود را در این جای خالی قرار دهند. اما در نهایت فقط ماینری موفق به دریافت کارمزد تراکنش میشود که بتواند این تراکنش را در یک بلاک ثبت کند.
حالا سؤال این است که در یک تراکنش واقعی چگونه باید کارمزد را تعیین کنیم؟
همه چیزهایی که تا به اینجا گفتیم، مکانیسمی است که در پشت صحنه تراکنشهای بیت کوین انجام میشود. اما در واقعیت برای ارسال یک تراکنش از کیف پول، نیازی به این همه دردسر نیست. برای ارسال یک تراکنش کافی است که مبلغ و آدرس گیرنده را در کیف پولتان وارد کنید. کیف پولهای امروزی بهصورت خودکار ورودیهای مناسب را برای تراکنش انتخاب کرده و کارمزد تراکنش را نیز بر اساس میانگین کارمزدهای فعلی شبکه تعیین میکنند. اما با استفاده از روشهایی که در ادامه خواهیم گفت، میتوانید کارمزد تراکنشهای خود را مدیریت کرده و آنها را کاهش دهید.
کارمزد تراکنشهای بیت کوین، یک تفاوت اساسی با کارمزد تراکنشهای پول فیات دارد. وقتی با پول فیات کار میکنید، کارمزد تراکنش مستقیماً به مبلغ تراکنش بستگی دارد؛ یعنی با افزایش مبلغ تراکنش، کارمزد هم افزایش خواهد یافت؛ اما در شبکه بیت کوین، مبلغ تراکنش هیچ ارتباطی با کارمزد نداشته و تنها عامل تأثیرگذار بر روی کارمزد، سایز تراکنش است. زیرا هرچقدر سایز تراکنش (یعنی مجموع تعداد ورودیها و خروجیها) بیشتر باشد، اعتبارسنجی و تأیید آن پیچیدهتر و سختتر خواهد بود.
بنابراین ماینرها، تراکنشهای موجود در ممپول را بر اساس نرخ کارمزد (Fee Rate) در اولویت قرار میدهند.
نرخ کارمزد تراکنشهای بیت کوین، با واحد ساتوشی بر بایت (sat/byte) بیان میشود. بهعبارت دیگر، نرخ کارمزد نشان میدهد که شما مایلید چند ساتوشی در ازای هر بایت از تراکنش خود بپردازید.
انتخاب کارمزد مناسب برای تراکنش
برای انتخاب بهترین نرخ کارمزد، میتوانید به وبسایت bitcoinfees.earn.com مراجعه کنید. در این وبسایت تراکنشهای در انتظار در ممپول، بههمراه نرخ کارمزد و زمان تخمینی تأیید آنها مشخص شده و بهصورت لحظهای بهروزرسانی میشود.
بنابراین با توجه به اولویت و اهمیت تراکنشتان، میتوانید نرخ کارمزد مناسب را تشخیص دهید. دقت داشته باشید که نرخ کارمزد میتواند بسته به میزان ترافیک شبکه در هر زمان، متغیر باشد. طبق تصویر زیر، در زمانهایی که شبکه شلوغ نیست، میتوانید با پرداخت ۱ ساتوشی برای هر بایت، تراکنش خود را به تأیید برسانید.
ساتوشی کوچکترین واحدی است که در بلاک چین بیت کوین ثبت شده است: یک ساتوشی یعنی یک ممیز، هفت صفر و بعد یک. به عبارت دیگر یک ساتوشی برابر است با: ۰.۰۰۰۰۰۰۰۱ بیت کوین یا ۸–۱۰*۱.۰ BTC.
تغییر نرخ کارمزد در کیف پول
عملکرد کیف پولهای بیت کوین بهاین شکل است که بر اساس فعالیتهای فعلی و اخیر شبکه، کارمزدی منطقی را به کاربران خود پیشنهاد میکنند. با این حال، برخی از این کیف پولها و سرویسها در محاسبه کارمزد بهدرستی عمل نمیکنند و کارمزد بیشتری را از کاربران خود طلب میکنند. تأثیر این مسئله تنها محدود به کاربران این کیف پولها نیست و روی نرخ کارمزد کلی شبکه نیز تأثیرگذار است.
بیشتر کیف پولها به شما اجازه میدهند کارمزد تراکنشهای خود را بهصورت دستی تنظیم کنید و یا حداقل یک اولویت کلی (کم، متوسط یا زیاد) برای کارمزد پرداختی خود در نظر بگیرید. بنابراین بعد از اینکه کارمزد مناسب را برای تراکنش انتخاب کردید، باید آن را در کیف پول خود وارد کنید.
در تصویر زیر نحوه تغییر کارمزد در کیف پول اتمیک را مشاهده میکنید.
کارمزدها در بلاک چین چگونه نمایش داده میشوند؟
بهطور کلی برای دسترسی به اطلاعات بلاک چین بیت کوین، باید از کاوشگرهای بلاک چین مانند blockchair.com یا blockchain.com استفاده کنیم. این پلتفرمها اطلاعاتی همچون هش تراکنش، ورودیها و خروجیهای تراکنش و همچنین جزئیاتی همچون سایز تراکنش، کارمزد و زمان تأیید تراکنش را مشخص میکنند.
اما بلاک چین بیت کوین، کارمزد پرداختشده برای هر تراکنش را بهصورت جداگانه فهرست نمیکند. تنها راه برای مشخصشدن میزان کارمزدی که فرستنده پرداخت کرده، محاسبهٔ تفاوت بین تعداد بیت کوینهای ارسالشده (یعنی مجموع ورودیهای تراکنش)، تعداد بیت کوینهای دریافتی و تعداد بیت کوینهایی است که (بهعنوان باقیمانده تراکنش) به فرستنده بازگردانده شدهاند.
چند روش برای کاهش کارمزد تراکنشهای بیت کوین
روشهای مختلفی وجود دارند که از طریق آنها، میتوانید کارمزد تراکنش خود را کاهش دهید. در این بخش، چند مورد از از بهترین روشها برای کاهش کارمزد تراکنشهای بیت کوین را بررسی خواهیم کرد:
۱. وقتی ترافیک شبکه بالاست، تراکنش انجام ندهید
هنگامی که شبکه بیت کوین بیش از حد شلوغ است (بهعنوان مثال هنگامی که قیمت افزایش مییابد و بسیاری از افراد بهدنبال خرید بیت کوین هستند)، کاربران اغلب کارمزد تراکنش خود را افزایش میدهند تا تراکنشهای آنها در اولویت قرار بگیرد.
این مسئله میتواند کارمزد تراکنشها را بهشکلی غیرمنطقی افزایش دهد. بنابراین اگر بتوانید تراکنش خود را تا زمانی که شبکه خلوتتر میشود به تعویق بیندازید، مجبور به پرداخت کارمزدهای نجومی نخواهید بود.
۲. از کیف پولهای سگویتی استفاده کنید
سگویت (SegWit) که کوتاهشدهٔ عبارت Segregated Witness بهمعنای «امضای تفکیکشده» است، یکی از بهروزرسانیهای شبکه بیت کوین است که با استفاده از طراحی منحصربهفرد خود برای چینش اطلاعات تراکنشها، سایز آنها را تا حد زیادی کاهش میدهد. در حال حاضر، بسیاری از کیف پولهای بیت کوین از این ویژگی پشتیبانی میکنند و همین باعث کاهش نسبی کارمزد تراکنشها میشود.
۳. وروودیها را ادغام کنید
هرچقدر که ورودی بیشتری برای ایجاد تراکنش شما موردنیاز باشد، اندازه تراکنش بزرگتر خواهد بود و درنتیجه، باید کارمزد بیشتری برای انجام آن بپردازید. برای کاهش هزینهها، هر از گاهی میتوانید ورودیهای خود را ادغام کنید.
منظور از ادغام ورودیها این است که در زمانهایی که شبکه خلوت (و کارمزدها پایین) است، میتوانید ورودیهای مختلف خود را به آدرسی که متعلق به خودتان است ارسال کنید که به آن «تراکنش ادغام» یا «Consolidation» میگویند. به این ترتیب، شما فقط یک ورودی خواهید داشت و کارمزد تراکنش شما در آینده بهشکل چشمگیری کمتر خواهد شد. یکی از کیف پولهایی که قابلیت مشاهده و مدیریت تمامی utxo ها را به کاربران میدهد، کیف پول الکتروم است.
۴. خروجیها را گروهبندی کنید
علاوه بر ادغام ورودیها، میتوانید چندین خروجی (یا پرداخت) مختلف را هم در یک تراکنش جای دهید. البته همه کیف پولها از این ویژگی پشتیبانی نمیکنند؛ اما اگر کیف پول شما این قابلیت را دارد، میتوانید پرداختهای خود را در قالب یک تراکنش گروهبندیشده به چندین آدرس مختلف ارسال کنید تا کارمزد موردنیاز هم کمتر باشد. یکی از کیف پولهای مناسب برای این کار، کیف پول الکتروم است.
۵. از قابلیت لایتنینگ استفاده کنید
شبکه لایتنینگ، نوعی راهکار لایه دوم برای شبکه بیت کوین است که امکان انجام تراکنشهای روزمره بهصورت برونزنجیرهای (Offchain) را فراهم میکند. در شبکه لایتنینگ، افراد با ایجاد «کانال پرداختی» با دیگران و واردکردن مقدار مشخصی بیت کوین به کانالها، به صورت دونفره (P2P)، میتوانند مبادلات خود را به صورت آنی و نامحدود انجام دهند. برای استفاده از قابلیت لایتنینگ، باید از کیف پولهای مخصوصی مانند بلو والت (Blue wallet) یا بیت کوین لایتنینگ والت (Bitcoin lightning wallet) استفاده کنید.
پرسشهای متداول
در ادامه برخی از متداولترین سؤالات کاربران در خصوص کارمزدهای بیت کوین را مرور کرده و به آنها پاسخ میدهیم.
چرا تراکنش بیت کوین من برای مدت طولانی تأیید نمیشود؟
اگرچه مطالعه این راهنما (و مطالبی از این قبیل) برخی از موضوعات مربوط به کارمزد را روشن میکند، اما اغلب کاربران بیت کوین همچنان در این حوزه متخصص نیستند. از این رو بسیاری از اوقات (خصوصاً در زمانهایی که قیمت در مسیر صعودی قرار گرفته و ترافیک شبکه بالاست)، شکایتهایی را از کاربران این شبکه مبنی بر «تأییدنشدن» یا «معلقماندن» تراکنشها میشنویم.
اما، چه عاملی باعث تأییدنشدن یا معلقماندن تراکنشها میشود؟ تأییدنشدن تراکنشها برای مدتزمان طولانی، احتمالاً به یکی از این دو دلیل است:
۱. کارمزدی که پرداخت کردید بهاندازه کافی بالا نبوده است؛ بنابراین، ماینرها پردازش سایر تراکنشها را به تراکنش شما ترجیح دادهاند.
۲. شما در حال ارسال کوینهایی هستید که بهتازگی دریافت کردهاید؛ در حالی که تراکنش ارسال این کوینها به شما، هنوز تأییدیههای کافی را در بلاک چین به دست نیاورده و نهایی نشده است (برخی کیف پولها تراکنشهایی که به شما ارسال شدهاند، اما هنوز به تأیید اعضای شبکه نرسیدهاند را نیز نمایش میدهند).
در این شرایط چه کاری از شما ساخته است؟
روش اول: صبر کردن
گاهی صبرکردن بهترین کار ممکن است. اگر تراکنشتان فوری نیست و برای انجام آن عجله ندارید، بهتر است حداقل تا ۷۲ ساعت آن را فراموش کنید. پس از گذشت این زمان، بالاخره تکلیف این تراکنش مشخص خواهد شد؛ یعنی یا تأیید میشود و یا لغو شده و به کیف پول خودتان باز میگردد.
روش دوم: استفاده از ویژگی «جایگزینی کارمزد»
جایگزینی کارمزد یا RBF (Replace by Fee) ویژگی منحصربهفردی است که به کیف پول اجازه میدهد همان تراکنش را با کارمزدی بالاتر مجدداً به شبکه ارسال کند. به این ترتیب تراکنش با کارمزد بالاتر تأیید خواهد شد و تراکنشی که کارمزد کمتری دارد، نامعتبر شناخته میشود. در نظر داشته باشید که فقط تعداد اندکی از کیف پولها از ویژگی جایگزینی کارمزد پشتیبانی میکنند و در برخی کیف پولها، جایگزینی کارمزد یک ویژگی اختیاری است.
اگر کیف پول شما از این ویژگی پشتیبانی میکند، بهراحتی از بسیاری از دردسرهای مرتبط با کارمزد تراکنش رهایی خواهید یافت. لازم به ذکر است که جایگزینکردن کارمزد (با مقدار بالاتر) هیچ مشکل یا خطری را برای تراکنش شما ایجاد نمیکند. کیف پولهای الکتروم (Electrum) و سامورایی والت (Samourai Wallet)، دو مورد از بهترین کیف پولهایی هستند که۸۹و۸وئز از قابلیت RBF پشتیبانی میکنند.
همچنین بخوانید: چگونه میتوان تراکنش تاییدنشده بیت کوین را لغو کرد؟
روش سوم: شتابدهندههای تراکنش
شتابدهندههای تراکنش مختلفی وجود دارند که استخرهای استخراج آنها را اجرا میکنند. این شتابدهندهها باعث میشوند که (تحت شرایط مشخص)، تراکنش شما در بلاک بعدی جای بگیرد.
برخی از آنها رایگان هستند؛ در حالی که برخی دیگر محدودیتهای مشخصی برای اندازه تراکنش دارند.
همچنین برخی استخرها برای انجام این کار، هزینه مشخصی را پیش از استخراج دریافت میکنند؛ در حالی که برخی دیگر این هزینه را در قالب پاداش و در طی انجام تراکنش دریافت میکنند.
برای اینکه تراکنش خود را در یک شتابدهنده جای دهید، به شناسه تراکنش (tx id) خود احتیاج دارید. این شناسه منحصربهفرد، معرف و نمایانگر تراکنش شماست و معمولاً در فهرست تراکنشها در کیف پولتان یافت میشود.
از بهترین شتابدهندههای تراکنش موجود، میتوان به موارد زیر اشاره کرد:
- شتابدهنده Coolwave که برای تراکنشهای تأییدنشده و معلق گزینه مناسبی است. برای استفاده از این شتابدهنده، باید ابتدا حسابی را در انجمن بیتکوینتاک (BitcoinTalk) ایجاد کنید.
- شتابدهنده ViaBTC که رایگان است، اما اغلب در دسترس نیست؛ چراکه در هر ساعت فقط ۱۰۰ تراکنش تأییدنشده را میپذیرد. بنابراین اگر قصد دارید تراکنش خود را در این شتابدهنده جای دهید، باید درخواست پذیرش شناسه تراکنش خود را رأس هر ساعت و بهطور مکرر ارسال کنید. البته ViaBTC نسخه دیگری هم دارد که با دریافت هزینه به پردازش تراکنش کمک میکند؛ اما هزینه این گزینه ویژه را فقط در قالب بیت کوین کش میپذیرد. در تصویر زیر، صفحه مربوط به شتابدهنده ViaBTC را مشاهده میکنید.
روش چهارم: دو بار خرج کردن (آخرین راهحل)
دو بار خرج کردن (Double-spending) روشی است که در آن، یک تراکنش تأیید نشده را (با ورودیهای یکسان و خروجی متفاوت) تکرار کرده و دوباره به شبکه میفرستیم. در واقع در روش خرج مجدد، سعی میکنیم انگیزهای برای ماینرها ایجاد کنیم که تراکنش دوم را زودتر از تراکنش اولیه تأیید کنند و به این ترتیب، تراکنش اولیه (بهدلیل اینکه ورودیهایش یک بار در بلاک چین خرج شدهاند)، دیگر تأیید نخواهد شد.
در واقع این راهکار بسیار شبیه به جایگزینی کارمزد است؛ اما با یک تفاوت اساسی: روش جایگزینی کارمزد مطابق با قوانین تعیینشده در پروتکل بیت کوین است و بههمین علت، در برخی از کیف پولهای بیت کوین میتوانید به آن دسترسی داشته باشید؛ اما روش دو بار خرج کردن مخالف قوانین پروتکل بیت کوین است و ازاینرو، این قابلیت در کیف پولهای عادی موجود نیست. دو بار خرجکردن یکی از مشکلات مهمی است که بیت کوین برای حلکردن آن ایجاد شد و تمام کیف پولهای رسمی بیت کوین بهشکلی طراحی شدهاند که از آن جلوگیری کنند.
روش پنجم: پرداخت کارمزد بهروش CPFP (آخرین راهحل)
CPFP مخفف عبارت Child Pays for Parent و بهصورت تحتالفظی، به معنی «پرداخت فرزند برای والد» است. درواقع در این روش، «تراکنش فرزند» (تراکنش دوم) که پس از «تراکنش والد» (تراکنش اول) ایجاد شده است، میتواند کارمزد لازم برای تأیید تراکنش اولیه را بپردازد. در روش CPFP، شما کوینهایی را خرج میکنید که ورودی هستند، اما هنوز تأیید نشدهاند؛ یعنی دقیقاً چیزی که پیشتر انجام آن را نهی کردیم. اساساً، ایده روش CPFP این است که کارمزد تراکنشهای خروجی جدید بهاندازهای بالا خواهد بود که بتواند هم برای خود کافی باشد و هم برای تراکنشهای ورودی تأییدنشدهای که به آنها وابسته است.
از آنجا که پردازش تراکنش جدید پیش از تأیید تراکنش قدیمی ممکن نیست، ماینرها تشویق میشوند ابتدا تراکنش والد (اولیه) را پردازش کنند، تا کارمزد تراکنش فرزند (که بیشتر است و میتواند برای هر دو تراکنش کافی باشد) را به دست آورند.
انجام هر دو روش بالا (دوبار خرج کردن و CPFP) بسیار دشوار است و ممکن است داراییهای شما را در معرض خطر قرار دهد. درواقع، این روشها برای کاربران عادی توصیه نمیشوند و بنابراین ما نیز در این راهنما، توضیح بیشتری در مورد آنها ارائه نمیکنیم.
آیا ممکن است تراکنش بیت کوین من برای همیشه معلق باقی بماند؟
- پاسخ کوتاه: خیر.
- پاسخ صحیح: احتمالاً خیر، اما بستگی دارد. در قسمتهای ابتدایی این مقاله در مورد صف انتظار تراکنشها در استخر حافظه برای انتخاب شدن توسط ماینرها صحبت کردیم.
نکته اینجاست که استخر حافظه فقط محدود به یک مکان نیست. هر رایانه (یا نودی) که تراکنشها را تأیید میکند، بخشی در هارددیسک خود دارد که به ذخیره تراکنشهای درحالانتظار (Pending) اختصاص یافته است. بنابراین، نودهای مختلف بسته به اینکه چه تراکنشهایی را میشناسند یا به خاطر میآورند، نسخههای متفاوتی از استخر حافظه را در اختیار دارند.
اگر تراکنشی برای مدتزمانی طولانی تأیید نشود، درنهایت از استخر حافظه نودها حذف خواهد شد. در حال حاضر، مدتزمان پیشفرض برای حذف تراکنشهای تأییدنشده ۷۲ ساعت است؛ اما نودها ممکن است به دلخواه خود این زمان را تغییر دهند.
همچنین با ورود تراکنشهای با کارمزد بالاتر و بهدلیل ظرفیت محدود استخرهای حافظه، ممکن است تراکنشهای کمارزشتر از این استخرها حذف شوند.
به همین دلیل، انتظاری ۷۲ ساعته احتمالاً یکی از این دو نتیجه را به همراه خواهد داشت: تراکنش شما یا تأیید میشود و یا از تمامی استخرهای حافظه شبکه حذف میشود و داراییها به کیف پول شما بازگردانده خواهند شد.
با این حال، احتمال دارد که یک نود هرگز تراکنش شما را فراموش نکند و حتی هر از گاهی آن را مجدداً در شبکه پخش و به سایر نودها یادآوری کند. در این صورت، تراکنش شما ممکن است برای همیشه معلق باقی بماند.
آیا ارسال بیت کوین رایگان است؟
خیر. قوانین کارمزدها در گذشته نسبت به امروز متفاوت بود. اگر تراکنش شما بهاندازه کافی کوچک بود و یا اولویت داشت، حتی میتوانستید تراکنشهای خود را بهصورت رایگان ارسال کنید. اما امروزه هر تراکنش بیت کوین برای تأیید شدن، به یک مقدار حداقلی از کارمزد احتیاج دارد.
چه کسی کارمزد تراکنش بیت کوین را دریافت میکند؟
کارمزد تراکنش بیت کوین به ماینری پرداخت میشود که با موفقیت، تراکنش تأییدشده را در بلاک استخراجشده جدید جای داده باشد.
چرا کارمزد بیت کوین تا این حد زیاد است؟
در مواقعی که افراد بسیاری در حال ارسال بیت کوین هستند، صفی از تراکنشهای تأییدنشده شکل میگیرد. افرادی که مایل هستند تراکنش خود را سریعتر وارد روند پردازش کنند، کارمزد بالاتری را برای تراکنش خود در نظر میگیرند. این مسئله رقابتی تحتعنوان «جنگ کارمزد» را بین شرکتکنندگانی به راه میاندازد که تمایل دارند در اسرع وقت تراکنش خود را به تأیید برسانند.
با این حال، در مواقعی که شبکه نسبتاً خلوت است، ارسال بیت کوین بهمراتب ارزانتر میشود.
بیت کوین در ازای هر تراکنش، چه مقدار کارمزد طلب میکند؟
برای محاسبه کارمزد مناسب هر تراکنش، باید اندازه تراکنش خود را (که در اغلب کیف پولهای بیت کوین نمایش داده میشود) در نرخ کارمزد تعیینشده ضرب کنید. البته پیداکردن نرخ کارمزد فعلی شبکه کار دشواری نیست و پیشتر وبسایتهایی را معرفی کردیم که میتوانند در این کار به شما کمک کنند.
آیا میتوان کارمزد برداشت از صرافی را کاهش داد؟
وقتی از حساب خود در صرافیهای ارز دیجیتال بیت کوین برداشت میکنید، درواقع این صرافی است که از کیف پول داخلی خود تراکنش انجام میدهد. به بیان دیگر، اگرچه شما صاحب بیت کوینها هستید، اما در اینجا صرافی نقش فرستنده و شما نقش گیرنده را دارید.
بنابراین در چنین مواردی، نمیتوانید کارمزد برداشت از صرافی را تغییر دهید. معمولاً صرافیها کارمزد برداشت را بهگونهای تنظیم میکنند که تراکنش با سرعت استانداردی انجام شود. به همین دلیل است که اغلب میبینید کارمزد برداشت از صرافیها، بیشتر از کارمزد تراکنش در کیف پول شخصی شماست. حتی ممکن است برخی از صرافیها کارمزدی بیش از کارمزد شبکه از شما طلب کنند و کار خاصی هم از کاربر ساخته نیست.
جمعبندی
همان طور که خواندید، مسئله کارمزدها بسیار پیچیده است و میتواند چالشهای زیادی را برانگیزد. درواقع دلیل اصلی ایجاد فورک بیت کوین کش از شبکه بیت کوین، افزایش ظرفیت و اندازه بلاکهای بیت کوین بود. اندازه بلاکهای بیت کوین، تعداد تراکنشهایی که این شبکه میتواند در هر بلاک پردازش و تأیید کند را محدود میکند. این مسئله تعداد تراکنشهای در حال انتظار و بهتبع آن، کارمزدهای این تراکنشها را افزایش خواهد داد.
پایینبودن کارمزدها در شبکه بیت کوین از اهمیت بالایی برخوردار است؛ چراکه ایجاد سیستم پرداختی ارزان و همتابههمتا، یکی از مهمترین اهدافی بود که بیت کوین بر مبنای آن به وجود آمد. اما با این حال و مطابق معمول، در کنار کارمزد پایین ملاحظات دیگری همچون امنیت شبکه نیز وجود دارند که باید در نظر گرفته شوند.
با افزایش محبوبیت بیت کوین، روزبهروز افراد بیشتری به آن روی خواهند آورد و شبکه بیت کوین باید راهحلهای جدیدی برای رسیدگی به این افزایش تقاضا پیدا کند. یکی از راهحلهای امیدوارکننده فعلی، شبکه لایتنینگ (Lightning Network) است.
اگرچه شبکه لایتنینگ هنوز برای استفاده گسترده کاملاً آماده نیست، اما استفاده از آن (در آینده نزدیک) میتواند تراکنشهای آنی و رایگان را به کاربران بیت کوین هدیه دهد.