تُعرف خاصية تحمل الأخطاء البيزنطية بقدرة النظام على الاستمرار في العمل حتى في حال كذب بعض المشاركين أو تقصيرهم. ويستمد هذا المصطلح اسمه من تجربة فكرية حول جنرالات بيزنطيين يحاولون تنسيق هجوم في ظل احتمال وقوع الرسل في الأسر أو إرسال الخونة أوامر خاطئة. يحتاج الجنرالات إلى خطة فعّالة حتى في حال عدم موثوقية بعضهم. وتواجه تقنية سلسلة الكتل (البلوك تشين) المشكلة نفسها؛ فقد تتعطل بعض العُقد، وقد تُرسل معلومات متضاربة، ومع ذلك، لا تزال الشبكة بحاجة إلى الاتفاق على صحة المعاملات.
تُعدّ خوارزمية تحمل الأخطاء البيزنطية العملية (PBFT) إحدى الخوارزميات التي تُعالج هذه المشكلة. وهي فعّالة عندما يكون عدد العُقد المعيبة صغيرًا نسبيًا مقارنةً بالعدد الإجمالي. تستخدم العديد من سلاسل الكتل المُرخّصة صيغًا مختلفة من خوارزمية PBFT لأنها تعرف هوية المشاركين. أما آلية إثبات العمل في بيتكوين فتتّبع نهجًا مختلفًا، إذ لا تُحدّد العُقد الموثوقة، وتجعل الكذب مُكلفًا من خلال تطلّب جهدًا حسابيًا كبيرًا. يفوز صاحب أطول سلسلة، وإنتاج سلسلة أطول من الشبكة الموثوقة مُكلف للغاية.
عتبات تحمل الأعطال
- تحمل الأعطال - قد تتعطل العقد ولكنها لا تكذب
- تحمل الأخطاء البيزنطية - قد تتعطل العقد وترسل معلومات خاطئة
- PBFT - يتحمل عادةً ما يصل إلى ثلث العقد المعيبة
لا يوجد نظام يتسامح مع عدد غير محدود من العناصر السيئة. السؤال هو: ما مقدار السلوكيات الخاطئة التي يمكن للبروتوكول استيعابها قبل أن ينهار التوافق؟
Comments
No comments yet. Be the first to share a thought.
Leave a comment