حفاظت اور تحویل

RBF اور CPFP میں فرق: پھنسی BTC ٹرانزیکشن کون، کب اور کتنی فیس میں تیز کر سکتا ہے

RBF بھیجنے والا کرتا ہے، CPFP وہ جس کے پاس اس ٹرانزیکشن کا output ہو۔ اصل سائز کے ساتھ دونوں کا فیس حساب، Bitcoin Core v28 کے بعد RBF نشان کی اہمیت، اور ایکسچینج والی صورتوں میں کیا ممکن ہے۔

RBF اور CPFP میں فرق: پھنسی BTC ٹرانزیکشن کون، کب اور کتنی فیس میں تیز کر سکتا ہے

آپ کی BTC ٹرانزیکشن mempool میں پڑی ہے اور کنفرم نہیں ہو رہی۔ والیٹ میں «Bump fee» یا «Speed up» کا بٹن نظر آتا ہے، کہیں CPFP لکھا ہے۔ سوال یہ ہے کہ ان میں سے کون سا طریقہ آپ کے کیس میں چلے گا، کون اسے استعمال کر سکتا ہے، اور اس پر کتنی فیس لگے گی۔

اگر آپ ابھی یہ طے نہیں کر پائے کہ ٹرانزیکشن واقعی کم فیس کی وجہ سے رکی ہے یا کوئی اور مسئلہ ہے، تو پہلے ٹرانزیکشن کنفرم نہ ہونے کی وجہ پہچاننے کا ترتیب وار طریقہ دیکھ لیں۔ یہ مضمون اس کے بعد کا مرحلہ ہے: وجہ کم فیس ہے، اب کیا کریں۔

مختصر جواب

  • RBF (Replace-by-Fee): بھیجنے والا اسی ٹرانزیکشن کی جگہ ایک نئی ٹرانزیکشن نشر کرتا ہے جو وہی input خرچ کرتی ہے اور زیادہ فیس دیتی ہے۔ یہ صرف وہی کر سکتا ہے جس کے پاس input کی private key ہو، یعنی بھیجنے والا۔
  • CPFP (Child Pays For Parent): جس شخص کو اس رکی ہوئی ٹرانزیکشن سے کوئی output ملا ہے، وہ اس output کو خرچ کرتے ہوئے ایک نئی «child» ٹرانزیکشن بھاری فیس کے ساتھ بھیجتا ہے۔ miner دونوں کو ساتھ لے جاتا ہے۔ اسے وصول کنندہ بھی کر سکتا ہے، اور بھیجنے والا بھی اگر اس ٹرانزیکشن میں اس کا change output ہو۔
  • عام طور پر RBF سستا پڑتا ہے، کیونکہ CPFP میں آپ کو ایک اضافی ٹرانزیکشن کا سائز بھی ادا کرنا ہوتا ہے (نیچے حساب دیکھیں)۔
  • کوئی بھی طریقہ رقم واپس نہیں لاتا۔ غلط ایڈریس پر بھیجی گئی رقم RBF یا CPFP سے نہیں بچتی؛ دونوں کا کام صرف کنفرمیشن تیز کرنا ہے۔

کون سا راستہ آپ کے لیے کھلا ہے

آپ کی صورت RBF CPFP
اپنے والیٹ (جس کی seed آپ کے پاس ہے) سے بھیجی ہاں، اگر والیٹ میں Bump fee کی سہولت ہو ہاں، اپنے change output سے — اگر ٹرانزیکشن میں change بنا ہو
کسی نے آپ کے اپنے والیٹ کے ایڈریس پر بھیجی نہیں ہاں، آپ کو ملنے والے output سے
ایکسچینج سے آپ کے اپنے والیٹ میں withdrawal نہیں — input ایکسچینج کا ہے ہاں، اصولاً — آپ کو ملا ہوا output آپ کا ہے
آپ نے ایکسچینج کے deposit ایڈریس پر بھیجی ہاں (آپ بھیجنے والے ہیں) آپ کی طرف سے صرف change output سے؛ deposit والا output ایکسچینج کا ہے
ایکسچینج سے ایکسچینج نہیں نہیں — دونوں طرف کی keys آپ کے پاس نہیں، بس انتظار یا سپورٹ

ایک بات ذہن میں رکھیں: CPFP کے لیے آپ کے والیٹ کو غیر کنفرم output خرچ کرنے کی اجازت دینی ہوگی۔ ہر والیٹ یہ سہولت نہیں دیتا، اس لیے پہلے والیٹ کی سیٹنگز یا ٹرانزیکشن کی تفصیل والے صفحے پر CPFP یا «Accelerate» جیسا آپشن تلاش کریں۔

RBF کے لیے «RBF کا نشان» اب ضروری کیوں نہیں رہا

پرانی رہنمائی میں لکھا ملتا ہے کہ اگر ٹرانزیکشن بھیجتے وقت RBF کا اشارہ (BIP125 signal) نہیں دیا گیا تو اسے بدلا نہیں جا سکتا۔ یہ بات اب مکمل طور پر درست نہیں۔ Bitcoin Core — جس سافٹ ویئر کو نیٹ ورک کے زیادہ تر نوڈ چلاتے ہیں — کے سرکاری دستاویز کے مطابق ورژن v28.0 سے «full replace-by-fee» ڈیفالٹ پالیسی ہے، یعنی نوڈ بغیر نشان والی ٹرانزیکشن کی جگہ بھی زیادہ فیس والی متبادل قبول کر لیتے ہیں۔

Bitcoin Core کی GitHub پر موجود mempool-replacements دستاویز کا History حصہ: فہرست میں درج ہے کہ v24.0 میں full replace-by-fee ایک قابلِ ترتیب پالیسی بنی، v28.0 سے یہ ڈیفالٹ ہے، PR 30592 کے بعد RBF signaling ضروری نہیں، اور incremental relay feerate کا ڈیفالٹ 0.1 sat/vB ہے ماخذ: Bitcoin Core — doc/policy/mempool-replacements.md، History حصہ۔ اسکرین شاٹ 12 اکتوبر 2026 کو لیا گیا؛ اس وقت Bitcoin Core کا تازہ ریلیز v31.1 تھا۔

عملی مطلب دو حصوں میں ہے:

  1. نیٹ ورک کی طرف سے راستہ عموماً کھلا ہے، چاہے explorer کے Features میں RBF کا نشان نہ ہو۔ یہ اس بات پر منحصر ہے کہ نوڈ اور miner کون سا ورژن اور کون سی سیٹنگ چلا رہے ہیں، اس لیے اسے یقینی ضمانت نہ سمجھیں۔
  2. آپ کے والیٹ کی طرف سے راستہ تب ہی کھلا ہے جب والیٹ متبادل ٹرانزیکشن بنانے کی سہولت دے۔ بہت سے موبائل والیٹ Bump fee کا بٹن صرف انہی ٹرانزیکشنز پر دکھاتے ہیں جو RBF نشان کے ساتھ بھیجی گئی ہوں۔ بٹن نہ ہو تو CPFP دیکھیں۔

RBF کی فیس کی دو شرطیں

نئی ٹرانزیکشن کو نوڈ تب قبول کرتے ہیں جب وہ (دیگر شرائط کے علاوہ) یہ دو کام کرے:

Bitcoin Core دستاویز میں RBF کی شرط نمبر 3 اور 4 کا متن: متبادل ٹرانزیکشن کی کل فیس اصل ٹرانزیکشنز کی مجموعی فیس سے کم نہ ہو، اور اضافی فیس متبادل ٹرانزیکشن کے سائز کے حساب سے incremental relay feerate کے برابر یا زیادہ ہو — مثال: 0.1 sat/vB اور 500 vB پر کم از کم 50 sat زیادہ ماخذ: Bitcoin Core — Current Replace-by-Fee Policy، شرط 3 اور 4۔ اسکرین شاٹ 12 اکتوبر 2026۔

  • کل فیس (sat میں) پرانی سے کم نہ ہو۔ صرف sat/vB بڑھانا کافی نہیں؛ اگر نئی ٹرانزیکشن چھوٹی ہے تو بھی کل sat پرانی کے برابر یا زیادہ ہونے چاہییں۔
  • اضافہ کم از کم «سائز × 0.1 sat/vB» ہو۔ یہ 0.1 sat/vB ڈیفالٹ incremental relay feerate ہے۔ 141 vB کی ٹرانزیکشن کے لیے یہ صرف تقریباً 15 sat بنتا ہے — یعنی یہ شرط عملاً رکاوٹ نہیں، اصل سوال یہ ہے کہ نئی شرح اتنی ہو کہ اگلے چند بلاکس میں جگہ مل جائے۔

ایک ہی مثال پر دونوں طریقوں کا خرچ

فرض کریں آپ نے ایک عام bc1q والیٹ سے 1 input اور 2 outputs (وصول کنندہ + change) والی ٹرانزیکشن 1 sat/vB پر بھیجی، اور اب mempool میں اگلے بلاک کے لیے تقریباً 10 sat/vB درکار ہے۔ سائز ہم نے UTXO والے مضمون میں ایک اصل بلاک سے ناپے تھے: 1-in/2-out ≈ 141 vB اور 1-in/1-out ≈ 110 vB۔ فیس کا اصول وہی ہے جو sat/vB والے مضمون میں ہے: کل فیس = شرح × سائز۔

حساب کل فیس
اصل ٹرانزیکشن 141 vB × 1 141 sat
RBF: وہی ٹرانزیکشن 10 sat/vB پر 141 vB × 10 1,410 sat (اضافہ 1,269 sat)
CPFP: child (1-in/1-out) جو parent کو بھی کھینچے (141 + 110) vB × 10 − 141 child پر 2,369 sat

CPFP میں miner دونوں ٹرانزیکشنز کو ایک «پیکج» کے طور پر دیکھتا ہے اور دونوں کی مشترکہ شرح گنتا ہے: (141 + 2,369) ÷ 251 vB = 10 sat/vB۔ اسی لیے child کو parent کی کمی بھی پوری کرنی پڑتی ہے اور اپنا سائز بھی ادا کرنا پڑتا ہے۔ اس مثال میں CPFP کا اضافی خرچ RBF سے تقریباً دوگنا ہے۔ یہ اعداد اندازہ ہیں — آپ کی ٹرانزیکشن کا اصل vB سائز explorer میں دیکھ کر یہی حساب دوبارہ کریں۔

Bitcoin Optech کا Child pays for parent (CPFP) صفحہ: تعریف کہ صارف کم شرح والی غیر کنفرم ٹرانزیکشن کا output ایک زیادہ شرح والی child ٹرانزیکشن میں خرچ کرتا ہے تاکہ miner دونوں کو بلاک میں شامل کرے، اور وضاحت کہ parent کو child سے پہلے بلاک میں آنا لازم ہے ماخذ: Bitcoin Optech — Child pays for parent (CPFP)۔ اسکرین شاٹ 12 اکتوبر 2026۔ Optech بٹ کوائن ڈویلپرز کے لیے تکنیکی خلاصے شائع کرنے والا ادارہ ہے۔

قدم بہ قدم: کیا کریں

  1. explorer پر TxID کھولیں اور تین چیزیں نوٹ کریں: موجودہ فیس (sat/vB)، سائز (vB)، اور outputs میں سے کون سا آپ کا ہے۔
  2. اگلے بلاکس کی شرح دیکھیں (mempool.space کے فیس پینل میں High/Medium)۔ اگر آپ کی شرح اس کے قریب ہے تو اکثر صرف انتظار کافی ہے۔
  3. آپ بھیجنے والے ہیں اور والیٹ میں Bump fee ہے → RBF استعمال کریں، نئی شرح چنیں، اور بھیجنے سے پہلے والیٹ کی دکھائی گئی کل فیس چیک کریں۔
  4. Bump fee نہیں، یا آپ وصول کنندہ ہیں → اپنے output پر CPFP کریں۔ child کی فیس اوپر والے فارمولے سے نکالیں: (parent vB + child vB) × مطلوبہ شرح − parent کی موجودہ فیس۔
  5. بھیجنے کے بعد explorer پر واپس جائیں۔ RBF کے بعد پرانی TxID غائب یا «replaced» دکھے گی اور نئی TxID بنے گی — وصول کنندہ کو نئی TxID بھیجیں۔ CPFP کے بعد parent کی TxID وہی رہتی ہے۔
  6. دوبارہ bump کرنا ہو تو ہر بار پہلے سے زیادہ کل فیس دینی ہوگی۔ چھوٹے چھوٹے اضافوں کے بجائے ایک ہی بار مناسب شرح چنیں۔

جب دونوں راستے بند ہوں

  • رقم ایکسچینج سے ایکسچینج گئی ہے: آپ کے پاس کسی input یا output کی key نہیں۔ TxID اور اسکرین شاٹ کے ساتھ بھیجنے والے پلیٹ فارم کی سپورٹ سے رابطہ کریں اور انتظار کریں۔
  • ٹرانزیکشن mempool سے نکل گئی: Bitcoin Core ڈیفالٹ طور پر 14 دن (336 گھنٹے) بعد غیر کنفرم ٹرانزیکشن کو mempool سے نکال دیتا ہے۔ ایسا ہو تو رقم آپ کے والیٹ میں قابلِ خرچ واپس دکھ سکتی ہے؛ والیٹ کے rebroadcast یا «abandon» آپشن کے بارے میں اپنے والیٹ کی دستاویز دیکھیں۔
  • کوئی «accelerator» سروس پیسے مانگ رہی ہے: کچھ mining pools یا explorers ادا شدہ تیزی کی سروس دیتے ہیں، مگر Telegram/WhatsApp پر «ٹرانزیکشن پھنسی ہے، ہمیں seed یا فیس بھیجیں» کہنے والے لوگ فراڈ ہیں۔ seed phrase کبھی کسی کو نہ دیں۔

اگلی بار پھنسنے سے کیسے بچیں

  • بھیجتے وقت فیس خود چنیں اور mempool کی موجودہ صورت دیکھ کر چنیں، صرف «Low» ڈیفالٹ پر نہ چھوڑیں۔
  • ایسا والیٹ رکھیں جو RBF کے ساتھ بھیجتا ہو اور Bump fee اور CPFP دونوں کی سہولت دیتا ہو۔
  • بہت سے چھوٹے UTXO ٹرانزیکشن کا سائز بڑھاتے ہیں، جس سے bump کرنا بھی مہنگا ہو جاتا ہے۔

ذرائع