وقتی بیتکوین ارسال میکنید، دیدن پیام «تراکنش ارسال شد» لزوماً به این معنی نیست که تراکنش داخل بلاکچین ثبت شده یا گیرنده میتواند آن را با سطح اطمینان موردنیاز خرج کند. در بیتکوین، ارسال تراکنش، تأییدشدن و نهاییشدن مطلق یکسان نیستند.
تعداد تأییدها یکی از معیارهایی است که کیف پولها، صرافیها و سرویسهای پرداخت برای ارزیابی وضعیت تراکنش استفاده میکنند. اما عدد مناسب برای همه پرداختها و همه سرویسها یکسان نیست.
تأیید تراکنش یعنی چه؟
تراکنش پس از ساختهشدن و امضا، به شبکه فرستاده میشود. نودها آن را بررسی میکنند و ممکن است در ممپول خود نگه دارند؛ ممپول مجموعه تراکنشهای تأییدنشدهای است که هر نود برای انتشار و احتمال قرارگرفتن در بلاک در اختیار دارد. وجود تراکنش در ممپول بهتنهایی به معنای تأییدشدن آن نیست.
وقتی یک ماینر تراکنش را در بلاکی قرار میدهد و آن بلاک بهعنوان بخشی از زنجیره پذیرفته میشود، تراکنش یک تأیید دارد. با اضافهشدن هر بلاک بعدی روی آن بلاک، تعداد تأییدها بیشتر میشود.
به زبان ساده:
- هنوز در بلاک قرار نگرفته است: صفر تأیید.
- در یک بلاک پذیرفتهشده قرار گرفته است: یک تأیید.
- یک بلاک دیگر روی آن ساخته شده است: دو تأیید.
- با اضافهشدن بلاکهای بعدی، شمار تأییدها بهترتیب افزایش مییابد.
این توضیح سادهشده است؛ وضعیت واقعی را باید با دادههای معتبر شبکه و شناسه تراکنش بررسی کرد.
چرا تأییدهای بیشتر اهمیت دارند؟
بلاکچین بیتکوین بر اساس زنجیرهای از بلاکها پیش میرود. در شرایط استثنایی ممکن است زنجیره بازسازماندهی شود؛ یعنی گرهها در نهایت شاخه دیگری را بهعنوان زنجیره معتبرتر بپذیرند. اگر بلاکی که تراکنش در آن قرار دارد از زنجیره پذیرفتهشده کنار برود، تراکنش ممکن است دیگر همان تعداد تأیید قبلی را نداشته باشد و در برخی شرایط دوباره برای تأیید رقابت کند.
هرچه بلاکهای بیشتری روی بلاک حاوی تراکنش ساخته شوند، بازنویسی تاریخچه آن بخش از زنجیره دشوارتر میشود. به همین دلیل، تأییدهای بیشتر معمولاً اطمینان بیشتری فراهم میکنند؛ اما هیچ تعداد ثابتی تضمین ریاضی و مطلق برای هر سناریویی نیست.
پس تأیید را بهتر است معیاری برای افزایش اطمینان بدانیم، نه یک کلید جادویی که بعد از رسیدن به عددی خاص تمام ریسکها را حذف کند.
برای دریافت بیتکوین چند تأیید لازم است؟
پاسخ به نوع پرداخت، ارزش و ریسک تراکنش، سیاست گیرنده و مدل امنیتی سرویس بستگی دارد. برخی سرویسها ممکن است تراکنشهای کمارزش را با تأییدهای کمتر بپذیرند؛ برخی دیگر برای واریز، برداشت یا پرداختهای باارزشتر تعداد بیشتری مطالبه میکنند. این سیاستها میتوانند با یکدیگر تفاوت داشته باشند و تغییر کنند.
عدد شش تأیید گاهی بهعنوان یک قاعده سرانگشتی تاریخی مطرح میشود، اما قانون اجباری پروتکل بیتکوین نیست و نباید آن را پاسخ جهانی برای تمام پرداختها دانست. معیار معتبر برای واریز به یک صرافی یا سرویس، سیاست فعلی همان سرویس است.
برای تصمیمگیری، این موارد را بررسی کنید:
- آیا سرویس مقصد تعداد تأییدهای لازم را اعلام کرده است؟
- آیا وضعیت تراکنش در یک اکسپلورر معتبر با همان TXID قابل مشاهده است؟
- آیا تعداد تأییدها به حد موردنیاز سرویس رسیده است؟
- آیا شبکه و آدرس مقصد با اطلاعات پرداخت مطابقت دارند؟
اگر پرداخت مهمی انجام میدهید، صرفاً به تصویر صفحه یا پیام فرستنده اکتفا نکنید؛ وضعیت تراکنش را مستقل بررسی کنید.
آیا هر تأیید تقریباً ده دقیقه طول میکشد؟
بیتکوین برای فاصله میان بلاکها بهطور متوسط هدفی نزدیک به ده دقیقه دارد، اما این زمانسنج دقیق نیست. ممکن است بلاک بعدی زودتر تولید شود یا فاصله آن بیشتر از ده دقیقه باشد. بنابراین نمیتوان نتیجه گرفت که یک تأیید دقیقاً ده دقیقه و شش تأیید دقیقاً یک ساعت زمان میبرد.
زمان انتظار تا نخستین تأیید میتواند تحت تأثیر وضعیت شبکه، تراکنشهای در انتظار و نرخ کارمزد انتخابشده قرار بگیرد. کارمزد بالاتر ممکن است رقابت برای قرارگرفتن در بلاک را به نفع تراکنش تغییر دهد، اما زمان تأیید را تضمین نمیکند. وضعیت ممپول نیز بین نودها ممکن است متفاوت باشد؛ ممپول یک صف جهانی و یکپارچه نیست.
برای جزئیات بیشتر، مقالههای تراکنش بیتکوین چگونه انجام میشود؟، ممپول بیتکوین چیست؟ و کارمزد بیتکوین چگونه تعیین میشود؟ را بخوانید.
تراکنش صفر تأیید یعنی نامعتبر است؟
خیر. صفر تأیید یعنی تراکنش هنوز در بلاکی تأیید نشده است؛ بهتنهایی به معنی نامعتبر بودن آن نیست. تراکنش ممکن است معتبر باشد و در انتظار قرارگرفتن در بلاک بماند. در مقابل، دیدهشدن تراکنش در یک سرویس یا ممپول نیز بهتنهایی اثبات نمیکند که پرداخت طبق نیاز شما نهایی یا پذیرفته شده است.
تفاوت مهم این است که «تراکنش مشاهده شده»، «تراکنش معتبر»، «تراکنش تأییدشده» و «پرداخت پذیرفتهشده از سوی سرویس مقصد» الزاماً وضعیتهای یکسانی نیستند.
جمعبندی
تأییدها نشان میدهند چند بلاک روی بلاک حاوی تراکنش ساخته شده است. بیشترشدن تعداد آنها معمولاً اطمینان را افزایش میدهد، اما نهاییشدن مطلق را تضمین نمیکند. عدد مناسب به سیاست سرویس مقصد و ریسک پرداخت بستگی دارد؛ شش تأیید یک قاعده عمومی و اجباری در پروتکل نیست. برای بررسی وضعیت، TXID را در منبع معتبر شبکه جستوجو کنید و معیار اعلامشده توسط گیرنده را ملاک قرار دهید.
منابع
- Bitcoin Developer Guide — Payment Processing
- Bitcoin Developer Guide — Block Chain
- Bitcoin Core — Validation
این مطلب با هدف آموزش و تحلیل تهیه شده است و نباید بهعنوان توصیه قطعی برای خرید، فروش یا شرطبندی تلقی شود.