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