المحفظة تطبيق أو جهاز لاستقبال البيتكوين وإرساله. Transaction Labeling هو إضافة أوصاف وملاحظات إلى المعاملات أو العناوين أو سجلات أخرى في المحفظة. يمكنك تسجيل غرض الدفعة أو مصدر الأموال المستلمة. تُسمى هذه المعلومات بيانات وصفية، ويحتفظ بها التطبيق خارج معاملة Bitcoin نفسها؛ وهي لا تثبت وحدها هوية الطرف الآخر.
تفتح سجل المحفظة فتجد دفعة قديمة. هل كانت عربون عمل، أم هدية، أم تحويلًا إلى حساب آخر تملكه؟ قد تجعل تسمية مثل «عربون إصلاح الدراجة» السجل مفهومًا بعد وقت طويل. تغيير الاسم يعدّل ملاحظة في التطبيق، لا المعاملة ولا معرّفها txid. ولا يلزم تسجيل شيء جديد في البلوكشين، السجل العام للمعاملات المؤكدة، بسبب ذلك. ويهم هذا الفرق عند الاستعادة أيضًا: Seed Phrase، وهي كلمات استعادة مفاتيح المحفظة، لا تتضمن ملاحظاتك الشخصية بذاتها. استعادة القدرة على الإنفاق واستعادة سياق المدفوعات مهمتان مختلفتان. [1] [3] [5]
الملاحظة المفيدة تصف ما تعرفه: رقم فاتورة، أو غرض دفعة، أو مصدر الأموال. لكن تدوينك الشخصي يختلف عن ربط يجريه التطبيق تلقائيًا أو ادعاء منقول عن محلل. يستخدم BTCPay Server مثلًا invoice للمدفوعات عبر الفواتير وpayout للصرف أو رد الأموال، ويسمح بتسميات خاصة. يساعد سياق الأموال المستلمة عند استخدام Coin Control، أي الاختيار اليدوي لمخرجات لم تُنفق بعد، وتُسمى UTXO. يسجل كل مخرج مبلغًا والشروط التي يجب استيفاؤها لإنفاقه. لكن عبارة «لا تجمعها» لا تمنع شيئًا وحدها. اختيار المدخلات الفعلي هو الذي يحدد الأموال التي ستربطها الدفعة التالية. [1] [2]
تتيح بعض المحافظ تجميد مخرج كي لا يختاره التطبيق للإنفاق. ينقل BIP 329 هذه الحالة المحلية عبر spendable، لنوع output فقط. يستخدم spendable:false القيمة المنطقية false، وهي تختلف عن السلسلة النصية "false". والفرق العملي بسيط: يمنع التجميد الاختيار غير المقصود في ذلك التطبيق، لا كل إنفاق ممكن. إنه ليس Timelock، أي شرطًا زمنيًا تفرضه قواعد Bitcoin. تستطيع محفظة أخرى تملك المفاتيح الصحيحة إنفاق المخرج إذا استوفت شروطه الفعلية. [1] [3]
عند الانتقال إلى تطبيق آخر، فكّر أيضًا في تصدير الملاحظات على حدة. قد يربط الملف الأسماء والفواتير وسجل المدفوعات بعناوين أو بمفتاح XPUB، وهو مفتاح عام موسّع يمكن منه حساب عناوين إضافية للجزء المعني من المحفظة، لكنه وحده لا يتيح توقيع المدفوعات. إذا احتوى التصدير على سجل من نوع spscan، فإن هذا السجل يتضمن مفتاح مسح خاصًا لاكتشاف مدفوعات Silent Payments الواردة. لا يتيح هذا المفتاح وحده الإنفاق، لكن كشفه يضر بالخصوصية. لذلك يظل الملف بحاجة إلى الحماية حتى لو خلا من مفتاح إنفاق خاص. احمِ النسخ المخزنة والنقل بالتشفير، واختبر الاستعادة في الحساب الصحيح. [1] [4] [5]
يميّز BIP 329 بين الأنواع tx وaddr وpubkey وinput وoutput وxpub وspscan. وهي على الترتيب: معاملة، وعنوان، ومفتاح عام، ومدخل، ومخرج، ومفتاح عام موسّع، وتعبير لمسح Silent Payments. يحدد النوع كيفية قراءة ref. في input يشير إلى معرّف المعاملة وفهرس مدخلها؛ وفي output إلى معرّف المعاملة التي أنشأت المخرج وفهرسه. لذلك لا يكفي txid:1 دون النوع، فقد يشير إلى مدخل أو مخرج، وهما شيئان مختلفان. وليس آمنًا اعتبار كل هذه المراجع «عنوان دفع». [1] [4]
يستخدم BIP 329 صيغة JSON Lines للتبادل: ملفًا نصيًا بترميز UTF-8 يضم سجلًا منظمًا واحدًا في كل سطر. لا يلزم أن تكتبه يدويًا؛ المهم أن يفهمه التطبيقان. يحدد الحقلان الإلزاميان type وref موضوع السجل، بينما label وorigin وspendable اختيارية. ينبغي ألا يؤدي غياب label أو spendable عند الاستيراد إلى استبدال قيمة موجودة. وعلى المستورد المتوافق تجاهل الأنواع غير المعروفة. لذلك لا يعني فتح الملف بنجاح أن المحفظة الجديدة احتفظت بكل الملاحظات والإعدادات. [1]
قد تظهر معاملة واحدة في حسابات أو محافظ مختلفة، ولكل منها تسمية مختلفة. يساعد origin على تمييز هذه المنظورات. يحتوي على Output Descriptor مختصر، وهو وصف للمحفظة يقرأه البرنامج، مع معلومات أصل المفاتيح لكن دون المفاتيح الفعلية أو مسارات الاشتقاق الفرعية أو المجموع الاختباري. يوضح المحفظة التي تخصها التسمية، لكنه ليس توقيعًا للملف ولا إثباتًا لصدق غرض الدفع الذي كتبه صاحبه. تحديد الحساب الصحيح والثقة بمحتوى الملاحظة أمران مختلفان. [1]
قبل ترك التطبيق القديم، جرّب النقل على نسخة اختبار منفصلة. اختر مدفوعات مألوفة وقارن العنصر وref والنص وأي إعداد تجميد عبر spendable. اختبر علامات التشكيل، وتعدد الحسابات، والأنواع غير المعروفة، وحذف الحقول الاختيارية. قد يتجاوز المستورد سجلات غير مدعومة أو يختصر التسميات. حد 255 محرفًا الموصى به هو حد افتراضي، لا ضمان لكل التطبيقات. احتفظ بالنسخة الأصلية حتى تتحقق من السياق المهم. لا تثبت عبارة «اكتمل الاستيراد» ذلك بمفردها. [1]
للحصول على صورة أوضح، اقرأ هذا المدخل مع Coin Control, UTXO, خصوصية Bitcoin, Address Clustering, Seed Phrase, Output Descriptor. تشير إلى هذا المدخل أيضًا Chain Surveillance.