Taproot طريقة لتحديد حق إنفاق البيتكوين وإثباته. تتيح الإنفاق المعتاد بتوقيع واحد، إلى جانب شروط بديلة اختيارية تُحضّر مسبقًا. وعند استخدام مسار التوقيع، لا تحتاج الشبكة إلى معرفة ما إذا كان شخص واحد أو عدة أشخاص متعاونين قد وافقوا على الدفع، أو ما إذا كانت هناك قواعد أخرى لم تُستخدم.
تخيّل أن أليس وبوب يديران أموالًا مشتركة. ما داما متفقين، يريدان الموافقة على المدفوعات معًا. ويمكنهما أيضًا الاتفاق مسبقًا على بديل: بعد بلوغ ارتفاع كتلة معين، يحق لأليس الإنفاق وحدها. يستطيع Taproot تمثيل هذا الترتيب دون نشر الخطة البديلة كاملة أثناء الدفع المشترك المعتاد. هذه ليست وظيفة تلقائية في كل محفظة. يجب أن يدعم البرنامج الشروط المختارة، وأن يُعدّها المشاركون بصورة صحيحة قبل استلام الأموال؛ وتحصل أليس فعلًا على حق الإنفاق المستقل المتفق عليه. [1] [3]
يسمى الخيار الأبسط key path: تتحقق الشبكة من توقيع Schnorr صحيح واحد للمفتاح المحدد في شروط المخرج. والمخرج مبلغ محدد أنشأته معاملة سابقة وتريد إنفاقه الآن. لا يكشف التوقيع وحده عدد الأشخاص الذين تعاونوا ولا وجود سكربت بديل. أما الخيار الآخر، script path، فيقدم السكربت المستخدم، أي القواعد المحددة، والبيانات التي تستوفيها. ويضيف دليلًا يسمى control block يثبت أن هذه القواعد كانت جزءًا من الترتيب الأصلي. يمكن إبقاء السكربتات الأخرى مخفية، لكن السكربت المستخدم ودليله يكشفان معلومات رغم ذلك. [1]
Schnorr Signature نوع من التوقيع الرقمي: دليل رياضي على موافقة المفتاح المعني على الدفع. يسمح بروتوكول مناسب، مثل MuSig2، لعدة حاملي مفاتيح بإنشاء مفتاح مشترك ثم توقيع مشترك. لا تحتاج أليس وبوب إلى تسليم مفاتيحهما الخاصة لبعضهما. لكن يجب أن تدعم محفظتاهما البروتوكول وأن تتعاونا أثناء التوقيع. لا يدمج Taproot تلقائيًا توقيعات جميع مدخلات المعاملة، ولا يحوّل أي محفظة Multisig إلى توقيع واحد. التنفيذ مهم: إعادة استخدام قيم سرية تسمى nonce بصورة خاطئة في بروتوكول التوقيع قد تكشف المفتاح الخاص. [2] [5]
في شبكة Bitcoin الرئيسية، تبدأ عناوين Taproot عادة بـ bc1p وتستخدم ترميز Bech32m. قبل الإرسال، تحقق من دعم الخدمة أو المحفظة لهذا التنسيق ومن العنوان كاملًا. قد يقلل Taproot القواعد المكشوفة والبيانات اللازمة للإنفاق، لكنه لا يخفي المبالغ ولا يقطع الروابط العلنية بين المخرجات التي تُنفق. ويؤثر المسار المختار وحجم دليله في الرسوم أيضًا؛ لذا لا يعني التنسيق الأحدث تلقائيًا أرخص دفعة. وإذا كانت محفظتك تستخدم Taproot لدفع عادي بمفتاح واحد، فلا يلزمك ابتكار سكربت بديل. [1] [4]
P2TR اختصار Pay to Taproot. ووفق القواعد، هو SegWit أصلي من الإصدار 1 مع برنامج witness من 32 بايت يمثل المفتاح العام للمخرج. تنتظم السكربتات الاختيارية في شجرة تُدمج بصمتها التشفيرية في ذلك المفتاح. وعند استخدام فرع، يمكن إثبات انتمائه دون كشف الشجرة كاملة. يصف BIP 340 توقيعات Schnorr، ويصف BIP 341 قواعد Taproot، ويحدد BIP 342 لغة Tapscript لمسار السكربت. يتكون توقيع Schnorr العادي من 64 بايت؛ ويضاف بايت عند اختيار وضع آخر صراحةً لتحديد أجزاء المعاملة التي يشملها التوقيع. تعالج المحفظة هذه التفاصيل، وليس التعديل اليدوي للعنوان. [1] [2] [3]
للحصول على صورة أوضح، اقرأ هذا المدخل مع SegWit, Private Key, معاملة, Lightning Network. تشير إلى هذا المدخل أيضًا SegWit, Lightning Network, Hash, SHA-256.