يعد معرف معاملة البيتكوين، الذي يُختصر عادةً بـ TXID، بمثابة معرف أساسي داخل منظومة البيتكوين. وهو عبارة عن سلسلة من الأحرف والأرقام تعمل كبصمة رقمية فريدة لكل معاملة يتم تسجيلها على بلوكشين البيتكوين. وكما هو موضح في الخلفية التقنية، يتم إنشاء هذا المعرف من خلال تطبيق دالة هاش تشفيرية، وتحديداً خوارزمية SHA-256 مرتين، على بيانات المعاملة بالكامل. إن TXID هو أكثر من مجرد سلسلة من الأحرف؛ فهو بمثابة إيصال بالغ الأهمية، يتيح للمستخدمين تتبع عمليات نقل البيتكوين (BTC) المحددة والتحقق منها والرجوع إليها بدقة باستخدام أي مستكشف بلوكشين عام.
يوفر وجود TXID سجلاً غير قابل للتغيير يفيد بأن مبلغاً معيناً من BTC قد تم إرساله من عنوان إلى آخر في وقت محدد. وبدون هذا المعرف الفريد، سيكون تتبع تدفق القيمة على دفتر حسابات لا مركزي مستحيلاً تقريباً، مما يقوض الشفافية وقابلية التدقيق اللذين يعدان ركنين أساسيين في تكنولوجيا البلوكشين. فهو يربط بيانات المعاملة – بما في ذلك المدخلات والمخرجات والبيانات الوصفية – في تمثيل واحد مدمج وفريد.
تنبع ضرورة TXIDs مباشرة من مبادئ تصميم نظام دفتر الحسابات اللامركزي الذي لا يتطلب الثقة. في النظام المصرفي التقليدي، تتم إدارة أرقام الحسابات ومعرفات المعاملات وإصدارها مركزياً بواسطة البنوك. أما في شبكة البيتكوين، فلا توجد سلطة مركزية، ولذلك فإن وجود معرف يتم إنشاؤه ذاتياً وقابل للتحقق وفريد لكل معاملة هو أمر بالغ الأهمية.
إليك سبب أهمية TXIDs:
إن إنشاء معرف معاملة البيتكوين (TXID) هو عملية دقيقة وحتمية تتضمن بيانات المعاملة الخام بالكامل وخوارزمية تشفير محددة. إنه ليس رقماً يتم تعيينه عشوائياً، بل هو نتيجة رياضية مباشرة لمحتويات المعاملة.
قبل إنشاء TXID، من الضروري فهم ما تشكله "معاملة البيتكوين". معاملة البيتكوين هي هيكل بيانات يقول في جوهره "يريد الدافع (أ) إرسال مبلغ (س) من البيتكوين إلى المستلم (ب)". يتكون هيكل البيانات هذا من عدة مكونات رئيسية، غالباً ما يتم تسلسلها في تدفق بايتات (Byte Stream):
من المهم ملاحظة أن بيانات الشاهد نفسها (والتي تتضمن التواقيع في معاملات SegWit) يتم استبعادها من البيانات المستخدمة لحساب TXID لمعاملات SegWit. كان هذا خياراً تصميمياً متعمداً لإصلاح مشكلة "قابلية تلاعب المعاملات" (Transaction Malleability)، والتي ستتم مناقشتها لاحقاً. بالنسبة للمعاملات القديمة (غير التابعة لـ SegWit)، يتم عمل هاش لحمولة المعاملة بالكامل، بما في ذلك التواقيع.
لإجراء عملية الهاش لبيانات المعاملة، يجب أولاً تحويلها إلى تنسيق ثنائي موحد ومدمج. تضمن هذه العملية، المعروفة باسم "التسلسل"، أن كل عقدة في الشبكة ستفسر بيانات المعاملة بشكل متطابق، مما يؤدي إلى نفس حساب TXID. تملي قواعد التسلسل ترتيب وتمثيل البايتات لكل مكون (الإصدار، المدخلات، المخرجات، وقت القفل، إلخ).
بالنسبة للمعاملات غير التابعة لـ SegWit، تشمل البيانات التي يتم تسلسلها وعمل هاش لها ما يلي:
بمجرد تسلسل بيانات المعاملة إلى مصفوفة بايتات، فإن الخطوة التالية هي تطبيق دالة الهاش التشفيرية. يستخدم البيتكوين خوارزمية SHA-256 (خوارزمية الهاش الآمنة 256 بت) ليس مرة واحدة، بل مرتين.
تتم العملية على النحو التالي:
H1 = SHA256(serialized_transaction_data)H2 = SHA256(H1)TXID = H2الهاش الناتج المكون من 32 بايت هو الـ TXID الخام. عادةً ما يتم تمثيل هذا الهاش الخام كسلسلة سداسية عشرية (Hexadecimal) مكونة من 64 حرفاً لسهولة القراءة البشرية (يتم تمثيل كل بايت بحرفين سداسي عشريين).
هناك تفصيل دقيق ولكنه مهم لعرض وتفسير معرفات المعاملات وهو "Endianness" أو ترتيب البايتات. عندما يتم عرض هاش TXID الخام المكون من 32 بايت كسلسلة سداسية عشرية، غالباً ما يتم تقديمه بترتيب بايتات عكسي (little-endian) مقارنة بكيفية تخزينه داخلياً (big-endian).
في البيتكوين، يكون التمثيل الداخلي للهاش عادةً هو big-endian. ومع ذلك، عندما ترى TXID على مستكشف البلوكشين، فإنه عادةً ما يتم تقديمه في تمثيله السداسي العشري بترتيب little-endian. على سبيل المثال، إذا كان الهاش الخام المكون من 32 بايت هو 0123456789abcdef... داخلياً، فقد يتم عرضه كـ efcd8967452301.... يتم تطبيق هذا الانعكاس لأغراض العرض فقط ولا يغير قيمة الهاش الفريدة الأساسية. على الرغم من كونه تفصيلاً تقنياً، إلا أن فهم ذلك يمكن أن يمنع الارتباك عند مقارنة مخرجات الهاش الخام بشاشات المستكشف.
يعد اختيار وتطبيق SHA-256 كخوارزمية هاش أمراً مركزياً لأمن ونزاهة معرفات معاملات البيتكوين (TXIDs).
تعد SHA-256 عضواً في عائلة SHA-2 من دوال الهاش التشفيرية. خصائصها حاسمة لدورها في تأمين البيتكوين:
يعد استخدام SHA-256 المزدوج (SHA256d) لـ معرفات TXIDs (وأيضاً لهاش الكتل) خياراً تصميمياً محدداً في البيتكوين. في حين أن تمريرة واحدة من SHA-256 تعتبر آمنة بما يكفي للعديد من التطبيقات، فإن "الهاش المزدوج" يوفر طبقة إضافية من الحماية، خاصة ضد هجوم نظري يعرف باسم "هجوم تمديد الطول" (Length-extension attack).
في هجوم تمديد الطول، إذا عرف المهاجم هاش الرسالة وطول الرسالة الأصلية، فيمكنه إلحاق بيانات بالرسالة الأصلية وحساب هاش الرسالة الجديدة الممتدة دون معرفة محتوى الرسالة الأصلية. في حين أن SHA-256 نفسها مقاومة بشكل عام لهذا الهجوم في معظم السياقات التي يتم فيها التحكم في المدخلات بالكامل، فإن تطبيقها مرتين يخفف بشكل فعال من هذه الثغرة من خلال جعلها غير ذات صلة بحساب الهاش النهائي. يقوم الهاش الأول بخلط البيانات، ويقوم الهاش الثاني بعمل هاش لهذه البيانات المختلطة بالفعل، مما يجعل من الصعب جداً استغلال أي نقاط ضعف محتملة تتعلق بطول الرسالة في عملية الهاش. إنها طبقة إضافية من الأمان المحافظ.
بعيداً عن إنشائها التقني، يتم دمج TXIDs بعمق في الاستخدام العملي للبيتكوين، حيث تخدم وظائف متعددة وحاسمة للمستخدمين والخدمات والشبكة نفسها.
ربما يكون الاستخدام الأكثر شيوعاً لـ TXID للمستخدم العادي هو تتبع المعاملة. عندما ترسل أو تستلم بيتكوين، غالباً ما يتم تزويدك بـ TXID. ومن خلال إدخال هذا المعرف في أي مستكشف بلوكشين عام (مثل Blockstream.info أو Blockchain.com أو Mempool.space)، يمكنك عرض:
هذه القدرة على التحقق بشكل مستقل من تفاصيل المعاملة دون الاعتماد على أي طرف ثالث هي حجر الزاوية في شفافية البيتكوين.
بالنسبة للشركات أو المنصات أو حتى الأفراد، يعمل TXID كإثبات لا يقبل الجدل على الدفع.
إنه يعمل بشكل يشبه رقم المرجع البنكي ولكن مع ميزة إضافية تتمثل في كونه قابلاً للتحقق علناً على دفتر حسابات غير قابل للتغيير.
تعمل شبكة البيتكوين وفق نموذج UTXO، وليس نموذجاً قائماً على الحساب. عندما تتلقى بيتكوين، فإنك لا تحصل على رصيد في حساب؛ بل تتلقى UTXO. وعندما تنفق بيتكوين، فإنك تستهلك واحداً أو أكثر من الـ UTXOs وتنشئ مخرجات جديدة.
يجب أن تشير كل مدخلة في معاملة جديدة إلى UTXO موجود. يتم تشكيل هذا المرجع من خلال:
يضمن هذا النظام سلسلة مستمرة من الملكية والإنفاق. وبالتالي، فإن TXID ليس مجرد معرف ولكنه مكون أساسي في بناء معاملات جديدة، حيث يربط فعلياً التاريخ الكامل لتحويلات البيتكوين.
إذا واجهت مشكلة في معاملة بيتكوين – ربما تكون عالقة، أو لم تصل الأموال كما هو متوقع – فإن تقديم TXID لفرق الدعم (مثل مزودي المحافظ أو المنصات) هو عادةً الخطوة الأولى في تشخيص المشكلة. فهو يضيق نطاق التركيز على الفور إلى حدث واحد محدد على البلوكشين.
تتميز منظومة البيتكوين بعدة أنواع من المعرفات، ومن المهم التمييز بين TXIDs والمفاهيم ذات الصلة ولكن المتميزة.
بينما تعد معرفات TXIDs أساسية، فإن بعض الفروق الدقيقة والتطورات التاريخية قد شكلت كيفية إدراكها واستخدامها.
كان التحدي التاريخي الكبير المتعلق بـ معرفات TXIDs هو "قابلية تلاعب المعاملات" (Transaction Malleability). قبل تفعيل الشاهد المنعزل (SegWit)، كان التوقيع (جزء من ScriptSig) في مدخلات المعاملة مضمناً في البيانات التي يتم عمل هاش لها لإنشاء TXID. ولأن التوقيع يمكن تعديله قليلاً (تلاعبه) بواسطة طرف ثالث دون إبطال المعاملة (على سبيل المثال، عن طريق تغيير المكون "S" من التوقيع إلى مكافئه السلبي، وهو أمر صالح رياضياً)، فإن TXID الخاص بالمعاملة يمكن أن يتغير قبل تأكيده وإضافته إلى كتلة.
وقد أدى ذلك إلى مشاكل للخدمات التي تعتمد على معرفات TXIDs غير المؤكدة، لا سيما في "سلسلة" المعاملات غير المؤكدة (حيث تنفق معاملة واحدة مخرجات معاملة أخرى غير مؤكدة). إذا تغير TXID للمعاملة الأولى، فستصبح المعاملة الثانية غير صالحة لأنها تشير إلى TXID غير موجود.
حل SegWit: عالج SegWit (BIP141, BIP143, BIP144) مشكلة قابلية تلاعب المعاملات عن طريق نقل التوقيع (بيانات الشاهد) خارج البيانات المستخدمة لحساب TXID التقليدي. بالنسبة لمعاملات SegWit، يتم حساب TXID فقط من بيانات المعاملة الأساسية (الإصدار، المدخلات، المخرجات، وقت القفل). يتم عمل هاش لبيانات الشاهد بشكل منفصل في "wTXID" (معرف معاملة الشاهد)، والذي يتضمن بيانات الشاهد. أصبح الـ TXID التقليدي لمعاملات SegWit الآن محصناً ضد التلاعب لأن البيانات التي يقوم بعمل هاش لها لم تعد قابلة للتغيير من قبل أطراف ثالثة. أدى هذا إلى تحسين موثوقية تتبع المعاملات غير المؤكدة بشكل كبير ومكن من ميزات جديدة مثل الشبكة البرقية (Lightning Network).
ظهور TXID على مستكشف البلوكشين لا يعني على الفور أن المعاملة "نهائية". تعتبر المعاملة غير قابلة للإلغاء ونهائية حقاً فقط بعد حصولها على عدد كافٍ من تأكيدات الكتل. بينما يكون TXID نفسه ثابتاً بمجرد بث المعاملة، فإن أمان عملية النقل الأساسية يزداد مع كل كتلة جديدة يتم تعدينها فوق الكتلة التي تحتوي على المعاملة. توصي معايير الصناعة الشائعة بما يلي:
بينما توفر معرفات TXIDs الشفافية، فإنها تساهم أيضاً في الطبيعة المستعارة للبيتكوين. فكل معاملة، يتم تحديدها بواسطة TXID الخاص بها، مرئية علناً، وتربط بين عناوين المرسل والمستلم. وبالرغم من أن هذه العناوين لا تكشف بشكل مباشر عن الهويات في العالم الحقيقي، إلا أن أنماط الإنفاق والتحليلات المتطورة يمكن أن ترفع السرية عن المستخدمين في بعض الأحيان. لذلك، فإن معرفات TXIDs هي سلاح ذو حدين: توفير الشفافية للشبكة ولكنها تتطلب من المستخدمين مراعاة خصوصيتهم المالية.
من غير المرجح أن تتغير الطريقة الأساسية لإنشاء TXID (SHA-256 المزدوج لبيانات المعاملات المتسلسلة) في بروتوكول البيتكوين الأساسي بسبب دورها التأسيسي وتركيز الشبكة على التوافق مع الإصدارات السابقة والاستقرار. ومع ذلك، مع تطور هياكل المعاملات (على سبيل المثال، مع Taproot، و BIPs لأنواع السكربتات الجديدة)، قد تشهد المحتويات الدقيقة للبيانات المتسلسلة التي يتم عمل هاش لها تعديلات أو إضافات طفيفة، دائماً مع مراعاة دقيقة لنزاهة الـ TXID. يظل TXID هو الإيصال الرقمي الفريد والقابل للتحقق وغير القابل للتغيير في قلب كل عملية نقل بيتكوين.



