آليات معاملات البيتكوين: UTXO، التشفير بمفتاح عام، والسكريبت

لفهم البيتكوين، يجب أولاً التخلي عن فكرة وجود عملات رقمية جالسة في خزنة افتراضية. في عالم البنوك التقليدي، يُعرف المال برصيد الحسابات. إذا كان لديك مال في بنك، فإن قاعدة بيانات مركزية تحتفظ برقم محدد بجانب اسمك. يعمل البيتكوين بشكل مختلف تماماً. لا توجد عملات مادية، ولا توجد ملفات رقمية تمثل عملات فردية. كما لا توجد حسابات في طبقة البروتوكول التي تسرد ببساطة رصيد المستخدم.

بدلاً من ذلك، يعتمد النظام بأكمله على تاريخ المعاملات. ما نسميه "بيتكوين" هو في الأساس سلسلة من التوقيعات الرقمية تعكس تاريخ نقل القيمة. يتم إثبات الملكية ليس بحيازة كائن ثابت، بل بامتلاك القدرة على إنشاء إدخال جديد في هذا السجل. عندما يتحقق المستخدم من رصيد محفظته، فإن البرمجيات تفحص في الواقع سلسلة الكتل بأكملها لحساب مجموع جميع المعاملات غير المنفقة المتاحة بمفاتيحه.

هذا الاختلاف المعماري أساسي لكيفية بقاء الشبكة لامركزية. بدون بنك مركزي لتحديث سجل رئيسي للرصيد، تعتمد الشبكة على سلسلة شفافة وقابلة للتحقق من الحيازة. كل معاملة تشير إلى معاملة سابقة، تربط طوال الطريق إلى اللحظة التي صكّ فيها المعدني العملات لأول مرة. هذا الهيكل يضمن عدم إمكانية إنشاء قيمة من العدم وأن تاريخ كل جزء من البيتكوين قابل للتتبع وغير قابل للتغيير.

أساس الملكية: التشفير بمفتاح عام

فهم أزواج المفاتيح

في قلب آليات معاملات البيتكوين يوجد التشفير بمفتاح عام. هذا الإطار الرياضي يسمح للمستخدمين بإنشاء هوية رقمية آمنة دون التسجيل لدى سلطة مركزية. تُعرف الملكية بحيازة زوج مفتاح: مفتاح خاص ومفتاح عام. المفتاح الخاص هو سر عشوائي مُولّد، مشابه لكلمة مرور، لكنه أكثر تعقيداً بكثير. يمنح السلطة لنقل الأموال.

يُشتق المفتاح العام رياضياً من المفتاح الخاص. يمكن مشاركته علناً دون المساس بالأمان. من هذا المفتاح العام، تولّد الشبكة عنوان بيتكوين، الذي يعمل كوجهة للأموال. هذا الطريق أحادي الاتجاه حاسم. يمكنك بسهولة توليد مفتاح عام من مفتاح خاص، لكن من المستحيل عكس العملية واشتقاق المفتاح الخاص من المفتاح العام.

هذا الاختلاف يسمح للشبكة بالعمل بدون ثقة. عندما يريد المستخدم استلام أموال، يشارك عنوانه. عندما يريد إنفاق أموال، يستخدم مفتاحه الخاص لتوقيع رسالة تشفيرياً. هذا التوقيع يثبت أنه يملك المفتاح الخاص المرتبط بالعنوان الذي يحمل الأموال، دون الكشف عن المفتاح الخاص نفسه للشبكة أو المتلقي.

دور التوقيعات الرقمية

معاملة بيتكوين هي في الواقع رسالة تقول: "أنا أنقل هذه البيتكوينات المحددة إلى هذا العنوان الجديد." لجعل هذه الرسالة صالحة، يجب توقيعها رقمياً. يُنشأ التوقيع الرقمي بتطبيق مفتاح المرسل الخاص على بيانات المعاملة. هذه العملية تولّد سلسلة بيانات فريدة خاصة بتلك المعاملة بالضبط.

إذا تم تغيير أي جزء من تفاصيل المعاملة—مثل المبلغ أو عنوان الوجهة—لن يتطابق التوقيع بعد الآن. هذا يضمن أنه بمجرد توقيع المعاملة وبثها، لا يمكن التلاعب بها من قبل أطراف ثالثة. يمكن لمشاركي الشبكة، أو العقد، استخدام مفتاح المرسل العام للتحقق من التوقيع رياضياً.

إذا تطابقت الرياضيات، تعرف الشبكة أن المعاملة شرعية ومصرح بها من قبل المالك الحقيقي. إذا فشلت، تُرفض المعاملة فوراً. يحدث هذا التحقق تلقائياً عبر آلاف الحواسيب حول العالم، مما يؤمن الشبكة بدون تدخل بشري.

المكون الوظيفة الرؤية
المفتاح الخاص يوقّع المعاملات لإثبات الملكية سري (المالك فقط)
المفتاح العام يُتحقق من التوقيعات مقابل العنوان عام (الشبكة)
العنوان الوجهة لاستلام الأموال عام (أي شخص)

نموذج مخرج معاملة غير منفق (UTXO)

كيفية تعامل البيتكوين مع القيمة

معظم الناس معتادون على نموذج "القائم على الحساب" المستخدم من قبل البنوك وبطاقات الائتمان. في ذلك النظام، إذا كان لديك 100 دولار وأنفقت 20 دولار، يقوم البنك بتحديث إدخال قاعدة البيانات الخاصة بك ليقرأ 80 دولار. يستخدم البيتكوين منطقاً مختلفاً يُعرف بنموذج مخرج معاملة غير منفق (UTXO). في هذا النظام، لا توجد رصيد دائم، فقط قطع من البيتكوين التي تم استلامها لكن لم تُنفق بعد.

تخيّل هذه UTXO كأموال نقدية رقمية أو كتل ذهب بأحجام مختلفة. إذا تلقيت معاملة بـ 0.5 BTC وأخرى بـ 0.3 BTC، فأنت تملك UTXO اثنين متميزين في محفظتك. لا تندمج في "عملة" واحدة بـ 0.8 BTC على سلسلة الكتل، حتى لو عرضت برمجيات المحفظة المجموع الكلي للراحة. تبقى سجلات قيمة منفصلة مميزة في انتظار الاستخدام.

عندما تبدأ معاملة، تختار محفظتك ما يكفي من هذه UTXO لتغطية المبلغ الذي تريد إرساله. لا يمكنك كسر UTXO إلى نصف دون إنفاقه بالكامل. هذا مشابه لكيفية عمل النقد المادي. لا يمكنك تمزيق ورقة 20 دولار لدفع عن عنصر بـ 10 دولارات. يجب تسليم الورقة بالكامل واستلام الباقي كفكة.

المدخلات، المخرجات، والباقي

تتكون كل معاملة بيتكوين من مدخلات ومخرجات. المدخلات هي مراجع لـ UTXO سابقة تقوم الآن بإنفاقها. المخرجات هي الوجهات الجديدة لهذه القيمة. عند بناء معاملة، تستهلك UTXO موجودة كمدخلات وتنشئ UTXO جديدة كمخرجات.

على سبيل المثال، إذا حصل معدني على مكافأة كتلة قدرها 6.25 BTC، فهذا UTXO واحد. إذا أراد المعدني إرسال 1 BTC إلى أليس، لا يمكنه ببساطة إرسال 1 BTC. يجب بناء معاملة تأخذ UTXO الـ 6.25 BTC كمدخل. ستحتوي المعاملة بعد ذلك على مخرجين اثنين.

المخرج الأول يرسل 1 BTC إلى أليس. المخرج الثاني يرسل الـ 5.25 BTC المتبقية إلى عنوان المعدني نفسه. هذا المخرج الثاني يُعرف بـ "مخرج الباقي." على سلسلة الكتل، يُشار إلى UTXO الأصلي الـ 6.25 BTC كمنفق ولم يعد صالحاً للمعاملات المستقبلية. مكانه، يتم إنشاء تسجيل UTXO جديدتين (1 BTC و5.25 BTC). هذه السلسلة من المدخلات والمخرجات تخلق تاريخ العملة غير القابل للكسر.

سكريبت البيتكوين: لغة المعاملات

التنفيذ القائم على الكومة

معاملات البيتكوين ليست مجرد نقل قيم بسيط؛ إنها تعليمات قابلة للبرمجة. هذه التعليمات مكتوبة بلغة تُدعى سكريبت البيتكوين. بخلاف لغات البرمجة المعقدة المستخدمة لتطوير البرمجيات العامة، السكريبت بسيط عمداً. إنه "قائم على الكومة"، مما يعني أنه يعالج البيانات بدفع العناصر إلى قائمة (الكومة) وأداء عمليات على العناصر العلوية.

السكريبت غير كامل تورينغ أيضاً. هذا يعني أنه يفتقر إلى القدرة على إنشاء حلقات أو منطق معقد يمكن أن يعمل إلى أجل غير مسمى. هذا الخيار التصميمي ميزة أمان متعمدة. بتقييد تعقيد اللغة، تمنع الشبكة الحلقات اللانهائية التي يمكن أن تُسقط العقد أو تسمح للمهاجمين بإغلاق النظام بأوامر مكلفة حاسوبياً.

السكريبت يحدد الشروط التي يجب تحقيقها لإنفاق UTXO. عند إنشاء معاملة، يُرفق المرسل "سكريبت القفل" (ScriptPubKey) بالمخرج. هذا السكريبت يقول في الأساس: "لا يمكن نقل هذه الأموال إلا من قبل شخص يمكنه تقديم توقيع يتطابق مع هاش هذا المفتاح العام المحدد."

الإفكاك والتحقق

لإنفاق هذه الأموال لاحقاً، ينشئ المالك معاملة جديدة تحتوي على "سكريبت الإفكاك" (ScriptSig). يحتوي هذا السكريبت على التوقيع الرقمي والمفتاح العام. عندما يتحقق عقدة من معاملة، يشغل السكريبتين معاً. يضع سكريبت الإفكاك على الكومة متبوعاً بسكريبت القفل من المعاملة السابقة.

العقدة تنفذ التعليمات تباعاً. إذا كان النتيجة النهائية "صحيح"، فالمعاملة صالحة، ويمكن نقل الأموال. إذا كانت "خطأ"، فالمعاملة غير صالحة. هذه الآلية تسمح بشروط أكثر تعقيداً من الملكية البسيطة.

على سبيل المثال، يمكن كتابة سكريبتات تتطلب توقيعات متعددة (Multi-Sig)، حيث يجب على اثنين من ثلاث مفاتيح مُعيّنة التوقيع قبل نقل الأموال. يمكن للسكريبتات أيضاً فرض قفل زمني، مما يمنع إنفاق الأموال حتى يتم الوصول إلى ارتفاع كتلة معين. هذه القابلية للبرمجة هي الأساس للميزات المتقدمة مثل شبكة البرق (Lightning Network) وسلسلة جانبية، التي تستخدم سكريبتات معقدة لتمكين تسويات خارج السلسلة أسرع وأرخص.

دورة حياة المعاملة: من المحفظة إلى سلسلة الكتل

الإنشاء والبث

تبدأ رحلة معاملة البيتكوين في برمجيات محفظة المستخدم. تجمع المحفظة المدخلات اللازمة من UTXO المتاحة للمستخدم وتحدد المخرجات. تحسب الفرق بين المدخلات والمخرجات، والذي يصبح رسوم المعاملة. بمجرد تحديد التفاصيل، تستخدم المحفظة المفتاح الخاص لتوليد التوقيع الرقمي.

يتم بث حزمة البيانات الموقّعة بعد ذلك إلى الشبكة. ترسل عقدة المستخدم الرسالة إلى أقرانها، التي بدورها تنقلها عبر العالم. كل عقدة تتلقى المعاملة تقوم بفحص أولي. تتحقق من صحة التوقيع الرقمي، وأن المدخلات لم تُنفق بالفعل، وأن قيم المعاملة غير سالبة.

إذا نجحت المعاملة في هذه الفحوصات، تضيف العقدة إلى منطقة الاحتفاظ المؤقتة الخاصة بها المعروفة بـ "mempool" (حوض الذاكرة). الميمبول ليست قائمة انتظار مركزية واحدة بل مجموعة محلية من المعاملات الصالحة غير المؤكدة المخزنة من قبل كل عقدة فردية. في هذه المرحلة، المعاملة معروفة للشبكة لكنها ليست جزءاً من تاريخ سلسلة الكتل الدائم بعد.

سوق الرسوم والأولوية

بما أن الكتل على سلسلة كتل البيتكوين لها سعة حجم محدودة، لا يمكن لكل معاملة في الميمبول الدخول في الكتلة التالية. هذا النقص يخلق سوق رسوم. المعدنون، الذين يبنون الكتل، مدفوعون مالياً لتضمين المعاملات التي تدفع أعلى الرسوم لكل بايت من البيانات.

الرسوم لا تُحدد بقيمة البيتكوين المرسلة بل بحجم بيانات المعاملة. معاملة تنقل 10 ملايين دولار قد تكون صغيرة جداً في حجم البيانات إذا استخدمت مدخلاً واحداً ومخرجاً واحداً. بالمقابل، معاملة تنقل 100 دولار قد تكون كبيرة في حجم البيانات إذا جمعت غباراً من خمسين مدخلاً صغيراً لإجراء الدفع.

المستخدمون الذين يريدون تأكيد معاملاتهم بسرعة يجب أن يرفقوا رسوماً تنافسية بما يكفي لإغراء المعدنين. خلال فترات ازدحام الشبكة العالي، يمتلئ الميمبول بالمعاملات غير المؤكدة. يختار المعدنون طبيعياً أعلى العروض. قد تبقى المعاملات ذات الرسوم المنخفضة في الميمبول لساعات أو أيام حتى ينخفض الازدحام أو يرفع المرسل الرسوم.

التعدين والإجماع

يلعب المعدنون الدور النهائي في تثبيت آليات المعاملة. يختار معدني دفعة من المعاملات من ميمبوله لتشكيل كتلة مرشحة. ثم يشارك في إثبات العمل (PoW)، عملية مكثفة حاسوبياً حيث يتنافسون لحل لغز رياضي بناءً على البيانات في تلك الكتلة.

تتطلب هذه العملية هاش رأس الكتلة مراراً مع رقم عشوائي يُدعى nonce حتى يسقط الهاش الناتج تحت صعوبة هدف محددة. تتعدل الصعوبة تلقائياً كل 2,016 كتلة لضمان العثور على كتل جديدة تقريباً كل 10 دقائق، بغض النظر عن كمية القوة الحاسوبية التي تنضم إلى الشبكة.

بمجرد أن يجد معدني حلاً صالحاً، يبث الكتلة الجديدة إلى الشبكة. تتلقى العقد الأخرى الكتلة وتتحقق من الحل. كما تعيد التحقق من كل معاملة مشمولة في تلك الكتلة لضمان عدم كسر أي قواعد. بمجرد التحقق، تقوم العقد بتحديث نسخة سلسلة الكتل المحلية، وتزيل المعاملات المشمولة من ميمبولها. المعاملة الآن مؤكدة.

معالجة مشكلة الإنفاق المزدوج

تحدي التكرار الرقمي

في العالم الرقمي، يسهل نسخ المعلومات. إذا أرسلت صورة عبر البريد الإلكتروني، فأنت تحتفظ بالملف الأصلي. بالنسبة للعملة الرقمية، هذا يقدم ثغرة حرجة تُعرف بمشكلة الإنفاق المزدوج. بدون آلية لمنعها، يمكن لممثل ضار توقيع معاملة ترسل 1 BTC إلى تاجر وفي الوقت نفسه توقيع معاملة أخرى ترسل نفس الـ 1 BTC إلى نفسه أو طرف آخر.

في نظام مركزي، يمنع البنك ذلك بحفظ سجل رئيسي. في شبكة لامركزية، لا توجد سلطة مركزية تقول أي معاملة جاءت أولاً. يحل البيتكوين ذلك من خلال مزيج سجل سلسلة الكتل العام وإثبات العمل.

بما أن كل عقدة كاملة تحتفظ بنسخة كاملة من سلسلة الكتل، لدى الشبكة بأكملها إجماع على أي UTXO صالح حالياً. إذا حاول مستخدم بث معاملتين متنافستين، ستقبل العقد الأولى التي تراها وترفض الثانية كمحاولة لإنفاق مدخلات مرجعة بالفعل.

عدم القابلية للعكس من خلال إثبات العمل

ومع ذلك، قد تؤدي فروق التوقيت إلى قبول عقد مختلفة إصدارات مختلفة من الحقيقة مؤقتاً. هنا يصبح التعدين حاسماً. "الحقيقة" في البيتكوين تُعرف بالسلسلة الأطول مع أكبر تراكم إثبات عمل. بمجرد تضمين معاملة في كتلة، تصبح جزءاً من هذا التاريخ الرسمي.

لعكس أو إنفاق معاملة مزدوجة تم تأكيدها بالفعل في كتلة، يحتاج المهاجم إلى إعادة تعدين تلك الكتلة وجميع الكتل اللاحقة أسرع من بقية الشبكة مجتمعة. هذا يُعرف بهجوم 51%. التكلفة الهائلة في الطاقة والأجهزة المطلوبة لتحقيق ذلك تجعل السجل غير قابل للتغيير عملياً.

مع إضافة المزيد من الكتل فوق الكتلة التي تحتوي على معاملة محددة، يزداد الأمان بشكل أسي. معاملة بتأكيد واحد آمنة عموماً، لكن واحدة بستة تأكيدات تُعتبر رياضياً مستحيلة العكس في ظروف الشبكة العادية. هذه الآلية تحول البيانات الرقمية، التي عادة سهلة النسخ، إلى أصل رقمي فريد ومحدود.

دور العقد في سلامة الشبكة

التحقق مقابل التعدين

من الاعتقادات الشائعة الخاطئة أن المعدنين فقط يؤمنون الشبكة. بينما يرتب المعدنون المعاملات وينتجون الكتل، فإن "العقد" هي المراجعون الذين يفرضون القواعد. العقدة هي أي حاسوب يشغل برمجيات البيتكوين التي تخزن سلسلة الكتل وتتحقق من الحركة.

العقد الكاملة تنزل كل كتلة ومعاملة. تتحقق من التوقيعات الرقمية، وتتحقق من أن مبالغ المدخلات تغطي مبالغ المخرجات، وتضمن عدم إنفاق العملات مرتين. مهم أن العقد تتحقق أيضاً من العمل الذي قام به المعدنون. إذا أنتج معدني كتلة تنتهك أي قاعدة بروتوكول—مثل منح نفسه بيتكوين زائد أو تضمين معاملة غير صالحة—سترفض العقد الكتلة فوراً.

يحدث هذا الرفض بغض النظر عن كمية الطاقة التي أنفقها المعدني لإنشاء الكتلة. هذا التوازن في السلطة يضمن أن المعدنين لا يمكنهم تغيير قواعد النظام أو طباعة أموال إضافية. إنهم خدَم للبروتوكول، محافظ عليهم من قبل شبكة العقد اللامركزية التي يديرها أفراد وشركات حول العالم.

اللامركزية والموثوقية

يعتمد متانة آليات معاملات البيتكوين على تنوع وعدد هذه العقد. كلما كانت العقد أكثر توزيعاً، كان من الصعب على أي كيان رقابة المعاملات أو إغلاق الشبكة. تتواصل العقد نقطة إلى نقطة، تنقل بيانات المعاملات مثل شائعة تنتشر في حشد.

لا يوجد خادم مركزي للاختراق. إذا انقطع قسم من الإنترنت، تستمر العقد المتبقية في العمل. عند عودة العقد المقطوعة، تتزامن مع الشبكة لتنزيل التاريخ المفقود. هذا الهيكل يضمن بقاء السجل متسقاً ومتاحاً عالمياً، 24/7، بدون توقف.

يمكن للمستخدمين تشغيل عقدهم الخاصة للحصول على السيادة المالية. بتحقق معاملاتهم الخاصة بدلاً من الاعتماد على خدمة محفظة طرف ثالث، يلغون الحاجة إلى الثقة بأي شخص آخر بشأن حالة أمورهم المالية. هذا يتوافق مع جوهر البيتكوين الأساسي: "لا تثق، تحقق."

رسوم الشبكة ووزن البيانات

حساب التكاليف

غالباً ما يُساء فهم تكلفة معاملة البيتكوين. إنها ليست نسبة مئوية من المبلغ المرسل، مثل رسوم معالجة بطاقة الائتمان. بدلاً من ذلك، إنها دفع صارم لمساحة الكتلة. مساحة الكتلة سلعة نادرة، محدودة بسعة محددة لكل كتلة (مفاهيمياً 1MB، على الرغم من التحسين بوزن SegWit).

بما أن النظام يستخدم نموذج UTXO، يعتمد حجم بيانات المعاملة على تعقيد مدخلاتها ومخرجاتها. معاملة تجمع عشر مدخلات صغيرة في مخرج واحد تحتوي على بيانات توقيع رقمي أكثر من معاملة تستخدم مدخلاً واحداً. وبالتالي، تستهلك بايتات أكثر في الكتلة.

يتقاضى المعدنون لكل وحدة بيانات، عادةً مقاسة بالساتوشي لكل بايت (sat/vB). "ساتوشي" هو أصغر وحدة بيتكوين (0.00000001 BTC). إذا كان سعر السوق الحالي 50 سات/بايت، قد تكلف معاملة بسيطة 2 دولار، بينما قد تكلف معقدة 10 دولارات، حتى لو كانتا تنقلان نفس القيمة.

العامل التأثير على الرسوم السبب
عدد المدخلات يزيد الرسوم كل مدخل يتطلب سكريبت توقيع رقمي
عدد المخرجات يزيد الرسوم كل مخرج يضيف بيانات للعنوان الجديد
الازدحام يزيد السعر الطلب العالي يرفع سعر السوق سات/بايت

إدارة الازدحام

تتقلب رسوم الشبكة بشكل كبير بناءً على الطلب. عندما يكون الميمبول فارغاً، يمكن للمستخدمين دفع الحد الأدنى من الرسوم ولا يزالون يحصلون على التأكيد في الكتلة التالية. عندما تكون الشبكة مزدحمة، يجب على المستخدمين التنافس. تقدر المحافظ عادةً الرسوم المطلوبة بنظرة إلى التراكم الحالي في الميمبول.

بالنسبة للمستخدمين الذين يحددون رسوماً منخفضة جداً، المعاملة لا تُفقد؛ إنها تبقى معلقة في الميمبول فقط. في النهاية، إذا لم يلتقطها معدني أبداً، سيتم إسقاطها من ذاكرة العقد، وستبقى الأموال فعلياً في محفظة المرسل. في الحالات الطارئة، يمكن للمستخدمين استخدام مسرّعات المعاملات أو بروتوكولات "Replace-by-Fee" (RBF) لزيادة رسوم معاملة عالقة، مما يعيد بثها بإغراء أعلى للمعدنين.

الخاتمة

تمثل آليات معاملات البيتكوين تحولاً من الأنظمة المالية القائمة على الثقة إلى الأنظمة التشفيرية القائمة على التحقق. باستبدال رصيد الحسابات بنموذج UTXO، يعامل البيتكوين القيمة كسلسلة من الحيازة الرقمية يمكن تدقيقها من قبل أي شخص. يضمن التشفير بمفتاح عام أن المالك الوحيد للمفتاح الخاص يمكنه بدء هذه النقل، مما يوفر مستوى أمان لا يعتمد على خزائن البنوك أو فحوصات الهوية.

يربط هذا النظام معاً من خلال تفاعل العقد والمعدنين وقواعد سكريبت البيتكوين المحددة. لغة السكريبت، على الرغم من كونها محدودة النطاق عمداً، توفر المنطق اللازم للتحقق من الملكية وتمكين شروط إنفاق معقدة دون المساس باستقرار الشبكة. يضمن سوق الرسوم التنافسي والميمبول تخصيص المورد المحدود لمساحة الكتلة بكفاءة، بينما يوفر إثبات العمل الأمان الديناميكي الحراري الذي يجعل السجل غير قابل للتغيير.

فهم هذه الآليات يكشف لماذا يُوصف البيتكوين بسجل لامركزي. إنه ليس عملة فحسب بل نظام محاسبة صارم آلي يحافظ عليه إجماع عالمي. كل جانب، من رياضيات المفاتيح إلى مدخلات مجموعة UTXO، مصمم للسماح للغرباء بتبادل القيمة بدون وسطاء، محلاً مشكلة الإنفاق المزدوج من خلال الكود بدلاً من السلطة.

يحل البيتكوين محل الثقة في المؤسسات بإثبات تشفيري، مما يضمن أن نقل القيمة مُتحقق، غير قابل للتغيير، ومملوك بحصرية من قبل حامل المفتاح.