المقال الأصلي :https://vitalik.ca/general/2017/03/14/forks_and_markets.html
إحدى الحجج المهمة في فضاء blockchain هي ما إذا كانت التشعب الصلب (Hard Fork) أو التشعب اللين (Soft Fork)هي آلية ترقية البروتوكول المفضلة. يتمثل الاختلاف الأساسي بين الاثنين في أن التشعب اللين تغير قواعد البروتوكول عن طريق تقليل مجموعة المعاملات الصالحة بشكل صارم ، لذلك ستظل العقد التي تتبع القواعد القديمة في السلسلة الجديدة (بشرط أن تنفذ غالبية المعدنين / المدققين التشعب) ، في حين أن التشعب الصلب يسمح للمعاملات والكتل غير الصالحة سابقًا بأن تصبح صالحة ، لذلك يجب على المستخدمين ترقية برنامج العميل من أجل البقاء في السلسلة المتشعبة. يوجد أيضًا نوعان فرعيان من التشعب الصلب: التوسيع الصارم للتشعب الصلب (strictly expanding hard forks) ، والتي توسع بشكل صارم مجموعة المعاملات الصالحة ، وبالتالي فإن القواعد القديمة تعتبر تشعب لين فيما يتعلق بالقواعد الجديدة ، و التشعب الصلب الثنائي (bilateral hard forks) ، حيث مجموعيتي القواعد الجديده و القديمة غير متوافقين في كلا الاتجاهين.
فيما يلي مخطط Venn لتوضيح أنواع التشعبات:
الفوائد التي يتم الاستشهاد بها بشكل شائع للاثنين هي كما يلي.
- تتيح التشعب الصلب (Hard forks ) للمطورين مزيدًا من المرونة في إجراء ترقية البروتوكول ، حيث لا يتعين عليهم الحرص على التأكد من أن القواعد الجديدة “تتلاءم” مع القواعد القديمة
- تعتبر التشعب اللين أكثر ملاءمة للمستخدمين ، حيث لا يحتاج المستخدمون إلى الترقية للبقاء في السلسلة
- تقل احتمالية أن تؤدي التشعب اللين إلى انقسام السلسلة
- تتطلب التشعب اللين فقط موافقة من عمال المناجم / المدققين (حتى لو كان المستخدمون لا يزالون يستخدمون القواعد القديمة ، إذا كانت العقد التي تجعل السلسلة تستخدم القواعد الجديدة ، فإن الأشياء الصالحة بموجب القواعد الجديدة فقط ستدخل السلسلة في أي حال) ؛ بينما يتطلب التشعب الصلب موافقة الاشتراك من المستخدمين
بصرف النظر عن هذا ، فإن أحد الانتقادات الرئيسية التي غالبًا ما يتم توجيهها إلى التشعب الصلب هو أن التشعب الصلب “قهري”. هذا النوع من الإكراه المتضمن هنا ليس القوة الجسدية ؛ بل هو إكراه من خلال تأثير الشبكة. بمعنى ، إذا غيرت الشبكة القواعد من أ إلى ب ، فعندئذٍ حتى إذا كنت تحب شخصياً “أ” ، إذا كان معظم المستخدمين الآخرين يحبون “ب” وا إنتقلوا إلى “ب” ، فعليك الإنتقال إلى “ب” على الرغم من عدم موافقتك الشخصية على التغيير من أجل أن تكون في نفس الشبكة مثل أي شخص آخر.
غالبًا ما يتم السخرية من أنصار التشعب الصلب لأنهم يحاولون إحداث “سيطرة عدائية” على الشبكة ، و “إجبار” المستخدمين على الانضمام إليهم. بالإضافة إلى ذلك ، غالبًا ما يتم استخدام خطر حدوث إنقسام في السلسلة لوصف التشعبات الصلبه باعتبارها “غير آمنة”.
إن وجهة نظري الشخصية هي أن هذه الانتقادات خاطئة ، وهي علاوة على ذلك في كثير من الحالات عكسية تمامًا. وجهة النظر هذه ليست خاصة بـ Ethereum أو Bitcoin أو أي blockchain آخر ؛ ينشأ عن الخصائص العامة لهذه الأنظمة ، وينطبق على أي منها. علاوة على ذلك ، لا تنطبق الحجج الواردة أدناه إلا على التغييرات المثيرة للجدل ، حيث لا يوافق عليها جزء كبير من دائرة انتخابية واحدة على الأقل (عمال المناجم / المدققون والمستخدمون) ؛ إذا كان التغيير غير مثير للجدل ، فيمكن إجراؤه بشكل آمن بغض النظر عن هيئة التشعب.
في البداية ، دعونا نناقش مسألة الإكراه. تقوم كل من التشعب الصلب و التشعب اللين بتغيير البروتوكول بطرق قد لا يحبها بعض المستخدمين ؛ سيؤدي أي تغيير في البروتوكول إلى القيام بذلك إذا كان لديه دعم أقل من 100٪ بالضبط. علاوة على ذلك ، يكاد يكون من الحتمي أن بعض المعارضين على الأقل ، في أي سيناريو ، يقدرون تأثير الشبكة للالتزام بالمجموعة الأكبر أكثر مما يقدرون تفضيلاتهم فيما يتعلق بقواعد البروتوكول. ومن ثم ، فإن كلا النوعين من التشعب قهريين..
ومع ذلك ، هناك فرق جوهري بين التشعبات الصلبه و التشعبات اللينة: ف التشعبات الصلبه قابلة للاشتراك ، في حين أن التشعب اللين لا تسمح للمستخدمين “بالاختيار” على الإطلاق. لكي ينضم المستخدم إلى سلسلة متشعبة ، يجب عليه شخصيًا تثبيت حزمة البرامج التي تنفذ قواعد الانقسام ، ومجموعة المستخدمين الذين لا يوافقون على قاعدة تتغير بقوة أكبر مما يقدرون تأثيرات الشبكة ، من الناحية النظرية ، يمكنهم ببساطة البقاء على السلسلة القديمة – ومن الناحية العملية ، حدث مثل هذا الحدث بالفعل.
هذا صحيح في حالة كل من التوسيع الصارم للتشعب الصلب و التشعب الصلب الثنائي . في حالة التشعب اللين ، ومع ذلك ، إذا نجح التشعب، فلا وجود للسلاسل المتشعبه. و بالتالي ، من الواضح أن التشعب اللين تفضل الإكراه على الانفصال ، في حين أن التشعب الصلب لها تحيز معاكس. تقودني آرائي الأخلاقية إلى تفضيل الانفصال على الإكراه ، على الرغم من أن البعض الآخر قد يختلف (الحجة الأكثر شيوعًا التي أثيرت هي أن تأثيرات الشبكة مهمة حقًا ومن الضروري أن “تحكمهم عملة واحدة جميعًا” ، على الرغم من وجود إصدارات أكثر اعتدالًا من هذا أيضًا يوجد).
إذا اضطررت إلى تخمين لماذا ، على الرغم من هذه الحجج ، غالبًا ما يتم وصف التشعب اللين بأنها “أقل قهريه” من التشعب الصلب ، فسأقول أن السبب في ذلك هو أن الانقسام الكلي “يجبر” المستخدم على تثبيت تحديث البرنامج ، بينما مستخدمو التشعب اللين ليسوا “مضطرين” لفعل أي شيء على الإطلاق. ومع ذلك ، فإن هذا الحدس مضلل: ما يهم ليس ما إذا كان يتعين على المستخدمين الفرديين القيام بالخطوة البيروقراطية البسيطة المتمثلة في النقر فوق زر “تنزيل” ، ولكن بالأحرى ما إذا كان المستخدم مضطرًا لقبول تغيير في قواعد البروتوكول يفضل عدم قبوله أم لا. ووفقًا لهذا المقياس ، كما ذكرنا سابقًا ، فإن كلا النوعين من التشعبات قهريين في النهاية ، ومن الصعب أن تكون الانشقاقات أفضل إلى حد ما في الحفاظ على حرية المستخدم.
الآن ، لنلقِ نظرة على التشعبات المثيرة للجدل بدرجة كبيرة ، لا سيما التشعبات التي تتعارض فيها تفضيلات المُعدِّن / المدقق وتفضيلات المستخدم. هناك ثلاث حالات هنا: (1) التشعب الصلب الثنائي ، (2) التوسيع الصارم للتشعبات الصلبه ، و (3) ما يسمى بـ ” التشعبات اللينة التي ينشطها المستخدم” (UASF). الفئة الرابعة هي المكان الذي يقوم فيه المعدنون بتنشيط تشعب لين دون موافقة المستخدم ؛ سوف نصل إلى هذا لاحقًا.
أولاً ، التشعبات الصلبه الثنائية. في أفضل الأحوال ، الوضع بسيط. يتم تداول العملتين في السوق ، ويقرر المتداولون القيمة النسبية للاثنين. من حالة ETC / ETH ، لدينا أدلة دامغة على أن المعدنين من المرجح بشكل كبير أن يقوموا ببساطة بتعيين معدل التجزئة الخاص بهم إلى عملات معدنية بناءً على نسبة الأسعار من أجل تعظيم أرباحهم ، بغض النظر عن آرائهم الأيديولوجية.
حتى إذا أعلن بعض عمال المناجم عن تفضيلات أيديولوجية تجاه جانب أو آخر ، فمن المرجح بشكل كبير أن يكون هناك عدد كافٍ من عمال المناجم المستعدين لمراجحة أي عدم تطابق بين نسبة السعر ونسبة قوة التجزئة ، وتحقيق التوافق بين الاثنين. إذا حاول كارتل عمال المناجم أن يتشكل من أجل عدم التنقيب في سلسلة واحدة ، فهناك حوافز مفرطة للانشقاق.
هناك حالتان متطرفتان هنا. الأول هو إمكانية أنه ، بسبب خوارزمية تعديل صعوبة غير فعالة ، تنخفض قيمة تعدين العملة لأن السعر ينخفض ولكن الصعوبة لا تنخفض للتعويض ، مما يجعل التعدين غير مربح للغاية ، ولا يوجد عمال مناجم على استعداد للتعدين في الخسارة في الاستمرار في دفع السلسلة للأمام حتى تعود الصعوبة إلى التوازن. لم يكن هذا هو الحال مع Ethereum ، ولكن قد يكون هذا هو الحال مع Bitcoin. ومن ثم ، فإن سلسلة الأقلية قد لا تنطلق أبدًا ، ولذا فإنها ستموت. لاحظ أن السؤال المعياري حول ما إذا كان هذا أمرًا جيدًا أم لا يعتمد على آرائك حول الإكراه مقابل الانفصال ؛ كما يمكنك أن تتخيل مما كتبته أعلاه ، فأنا شخصياً أعتقد أن خوارزميات تعديل صعوبة سلسلة الأقلية المعادية سيئة.
الحالة الثانية هي أنه إذا كان التباين كبيرًا جدًا ، يمكن للسلسلة الكبيرة 51٪ مهاجمة السلسلة الأصغر. حتى في حالة انقسام ETH / ETC بنسبة 10: 1 ، لم يحدث هذا ؛ لذلك فهو بالتأكيد ليس معطى. ومع ذلك ، فمن المحتمل دائمًا أن يفضل عمال المناجم في السلسلة المهيمنة الإكراه على السماح بالانفصال والعمل وفقًا لهذه القيم.
بعد ذلك ، دعنا ننظر إلى التوسيع الصارم للتشعبات الصلبه . في SEHF ، هناك خاصية أن السلسلة غير المتشعبة صالحة بموجب القواعد المتشعبة ، وبالتالي إذا كان سعر التشعب أقل من السلسلة غير المتشعبة ، فسيكون لها قوة تجزئة أقل من السلسلة غير المتشعبة ، و لذا فإن السلسلة غير المتشعبة سيتم قبولها في نهاية المطاف باعتبارها أطول سلسلة من قبل كل من قواعد العميل الأصلي والعميل المتشعب – وبالتالي فإن السلسلة المتشعبة “سيتم إبادةها“.
هناك حجة مفادها أن هناك بالتالي تحيزًا قويًا متأصلًا ضد نجاح مثل هذا التشعب، حيث إن احتمالية إبادة السلسلة المتشعبة ستكون متضمنه في السعر ، مما يؤدي إلى انخفاض السعر ، مما يزيد من احتمالية أن تباد السلسلة متشعبة. … هذه الحجة بالنسبة لي تبدو قوية ، ولذا فهي سبب وجيه للغاية لجعل أي تشعب صلب مستمر ثنائيًا بدلاً من التوسع الصارم.
يقترح مطورو Bitcoin Unlimited التعامل مع هذه المشكلة عن طريق جعل التشعب الصلب ثنائيًا يدويًا بعد حدوثها ، ولكن الخيار الأفضل هو جعل الثنائية مدمجة ؛ على سبيل المثال ، في حالة البيتكوين ، يمكن للمرء إضافة قاعدة لحظر بعض أكواد التشغيل غير المستخدمة ، ثم إجراء معاملة تحتوي على كود التشغيل هذا على السلسلة غير المتشعبة ، بحيث بموجب القواعد المتشعبة ، ستصبح السلسلة غير المتشعبة من ذلك الحين فصاعدًا تعتبر غير صالحة إلى الأبد. في حالة Ethereum ، نظرًا لوجود تفاصيل مختلفة حول كيفية عمل حساب الحالة ، تكون جميع التشعبات الصلبه تقريبًا ثنائي بشكل تلقائي تقريبًا. قد يكون للسلاسل الأخرى خصائص مختلفة اعتمادًا على هندستها المعمارية.
النوع الأخير من التشعبات التي تم ذكرها أعلاه هو التشعب اللين الذي ينشطه المستخدم(user-activated soft fork). في UASF ، يقوم المستخدمون بتشغيل قواعد التشعب اللين دون عناء للحصول على إجماع من عمال المناجم ؛ من المتوقع أن يتماشى عمال المناجم ببساطة مع المصلحة الاقتصادية. إذا لم يوافق العديد من المستخدمين على UASF ، فسيكون هناك تقسيم للعملة الرقميه، وسيؤدي ذلك إلى سيناريو مماثل للتوسع الصارم للتشعب الصلب، باستثناء – وهذا هو الجزء الذكي والمراوغ حقًا من المفهوم – نفس الضغط لـ “خطر الإبادة” الذي لا يفضل بقوة السلسلة المتشعبة في تشعب صلب متوسعة بشكل صارم بدلاً من ذلك يفضل بشدة السلسلة المتشعبة في UASF. على الرغم من اختيار UASF ، فإنه يستخدم عدم التناسق الاقتصادي من أجل التحيز نحو النجاح (على الرغم من أن التحيز ليس مطلقًا ؛ إذا كان UASF غير محبوب بالتأكيد ، فلن ينجح وسيؤدي ببساطة إلى انقسام السلسلة).
ومع ذلك ، فإن UASF هي لعبة خطيرة. على سبيل المثال ، دعنا نفترض أن مطوري مشروع ما يريدون إنشاء تصحيح UASF يحول كود غير مستخدم كان يقبل في السابق جميع المعاملات إلى كود تشغيل لا يقبل إلا المعاملات التي تتوافق مع قواعد بعض الميزات الجديدة الرائعة ، على الرغم من أنها تغيير مثير للجدل سياسياً أو فنياً ويكرهه عمال المناجم. يمتلك عمال المناجم طريقة ذكية ومراوغة للرد: يمكنهم من جانب واحد تنفيذ تشعب لين يتم تنشيطها بواسطة عامل التعدين والتي تجعل جميع المعاملات التي تستخدم الميزة التي تم إنشاؤها بواسطة التشعب اللين تفشل دائمًا.
الآن ، لدينا ثلاث قواعد:
- القواعد الأصلية حيث يكون كود التشغيل X صالحًا دائمًا.
- القواعد التي يكون فيها كود التشغيل X صالحًا فقط إذا كانت بقية المعاملة تتوافق مع القواعد الجديدة
- القواعد التي يكون فيها كود التشغيل X غير صالح دائمًا.
لاحظ أن (2) عبارة عن تشعب لين فيما يتعلق بـ (1) ، و (3) تشعب لين فيما يتعلق بـ (2). الآن ، هناك ضغط اقتصادي قوي لصالح (3) ، وبالتالي فشلت التشعب اللين في تحقيق هدفها.
الاستنتاج هو هذا. تعتبر التشعب اللين لعبة خطيرة ، وتصبح أكثر خطورة إذا كانت مثيرة للجدل وبدأ عمال المناجم في القتال. التوسيع الصارم للتشعبات الصلبه هي أيضًا لعبة خطيرة. التشعب اللين التي يتم تنشيطها بواسطة عامل التعدين هي قهريه؛ التشعب اللين التي ينشطها المستخدم أقل قهريه؛ ، على الرغم من أنها لا تزال قهريه؛ للغاية بسبب الضغط الاقتصادي ، كما أن لها مخاطرها. إذا كنت تريد حقًا إجراء تغيير مثير للجدل ، وقررت أن التكاليف الاجتماعية المرتفعة لفعل ذلك تستحق العناء ، فما عليك سوى إجراء شوكة صلبة ثنائية نظيفة ، وقضاء بعض الوقت لإضافة بعض الحماية المناسبة لإعادة التشغيل ، ودع السوق يتعامل معها .
إضافة تعليق