شعار زيفيرنت

الأمن الهندسي من خلال مشاكل التنسيق

التاريخ:

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

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

الحجة الأساسية هي أن القائمين بالتعدين ليس لديهم سوى دور محدود في نظام البيتكوين، لتأمين ترتيب المعاملات، ولا ينبغي أن يكون لديهم القدرة على تحديد أي شيء آخر، بما في ذلك حدود حجم الكتلة وقواعد صلاحية الكتلة الأخرى. يتم فرض هذه القيود من خلال العقد الكاملة التي يديرها المستخدمون - إذا بدأ القائمون بالتعدين في إنتاج الكتل وفقًا لمجموعة من القواعد المختلفة عن القواعد التي تفرضها عقد المستخدمين، فإن عقد المستخدمين سترفض الكتل ببساطة، بغض النظر عما إذا كانت 10٪ أو 60 % أو 99% من قوة التجزئة موجودة خلفهم. على ذلك، غالبًا ما ترد شركة Unlimited بشيء مثل "إذا كانت 90% من قوة التجزئة موجودة خلف سلسلة جديدة تزيد من حد الكتلة، والسلسلة القديمة التي تتمتع بقوة تجزئة تبلغ 10% أصبحت الآن أبطأ بعشر مرات لمدة خمسة أشهر حتى تتم إعادة ضبط الصعوبة، هل ستفعل ذلك؟ في الحقيقة ألا تقوم بتحديث عميلك لقبول السلسلة الجديدة؟"


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

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


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

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

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

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

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

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

لا تعني الحجج المذكورة أعلاه أيضًا أنه من الأفضل دائمًا محاولة وضع كل شيء على blockchain حتى بالنسبة للخدمات التي تتطلب الثقة. بشكل عام، هناك على الأقل بعض المكاسب التي يمكن تحقيقها من خلال تشغيل المزيد من منطق الأعمال على blockchain، لكنها غالبًا ما تكون أقل بكثير من الخسائر التي تلحق بالكفاءة أو الخصوصية. وهذا طيب؛ إن blockchain ليس الأداة الأفضل لكل مهمة. ما الحجج المذكورة أعلاه do ومع ذلك، فإن ما يعنيه هذا ضمنيًا هو أنه إذا كنت تقوم بإنشاء تطبيق قائم على blockchain يحتوي على العديد من المكونات المركزية بدافع الضرورة، فيمكنك تحقيق مكاسب إضافية كبيرة في تقليل الثقة من خلال منح المستخدمين طريقة للوصول إلى التطبيق الخاص بك من خلال عميل blockchain عادي ( على سبيل المثال، في حالة Ethereum، قد يكون هذا Mist أو Parity أو Metamask أو Status)، بدلاً من جعلهم يستخدمون واجهة الويب التي تتحكم فيها شخصيًا.

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

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

ثانيا، يمكننا الاعتماد عليها تكنولوجيا العميل الخفيفة القوية.

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

انظر، إنها شجرة ميركل!

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

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

لاحظ أنه لكي يتمكن العميل الخفيف من التحقق بكفاءة من صحة مجموعة من قواعد التطبيق، يجب تنفيذ هذه القواعد داخل الإجماع - أي أنها يجب أن تكون إما جزءًا من البروتوكول أو جزءًا من آلية يتم تنفيذها داخل البروتوكول ( مثل العقد الذكي). هذه حجة رئيسية لصالح استخدام blockchain لتخزين البيانات وتنفيذ منطق الأعمال، بدلاً من تخزين البيانات فقط.

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

المصدر https://vitalik.eth.limo/general/2017/05/08/coordination_problems.html

بقعة_صورة

أحدث المعلومات الاستخباراتية

بقعة_صورة