شوكة (بلوك تشين)

في البلوك تشين، الشوكة fork، تُعرف كما يلي::

  • "ماذا يحدث عندما تتحول قاعدة البيانات إلى مسارين محتملين للأمام"
  • "تغيير في البروتوكول" أو
  • موقف "يحدث عندما يكون لكتلتين أو أكثر نفس ارتفاع الكتلة"[1][أ]



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

تمت مناقشة شوكات قاعدة البيانات على نطاق واسع في سياق مشكلة قابلية تطوير البيتكوين.[3][4][5]



. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

أنواع الشوك

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


الشوكة الصلبة

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

إذا استمرت مجموعة من العقد في استخدام البرنامج القديم بينما تستخدم العقد الأخرى البرنامج الجديد ، فقد يحدث انقسام. على سبيل المثال ، Ethereum متشعب "لجعل الكل" المستثمرين في DAO ، الذي تم اختراقه عن طريق استغلال الثغرة الأمنية في التعليمات البرمجية الخاصة به. في هذه الحالة ، أدت الشوكة إلى إنشاء سلاسل Ethereum و Ethereum Classic. في عام 2014 ، طُلب من مجتمع Nxt التفكير في شوكة صلبة من شأنها أن تؤدي إلى تراجع سجلات قاعدة بيانات للتخفيف من آثار سرقة 50 مليون NXT من صرف العملات الرقمية. تم رفض اقتراح الشوكة الصعب ، وتم استرداد بعض الأموال بعد المفاوضات ودفع الفدية. بدلاً من ذلك ، لمنع الانقسام الدائم ، قد تعود غالبية العقد التي تستخدم البرنامج الجديد إلى القواعد القديمة ، كما كان الحال مع تقسيم البيتكوين في 12 مارس 2013.[6]


الشوكة اللينة

على عكس الشوكة الصلبة ، فإن "الشوكة الطرية" هي تغيير في القواعد التي لا تزال تنشئ كتل جديدة معترف بها على أنها صالحة من قبل البرنامج القديم ، أي متوافق مع الإصدارات السابقة. بالنسبة للشوكة الصلبة ، يمكن للشوكة الناعمة أيضًا تقسيم قاعدة بيانات عندما ينشئ برنامج غير مطوَّر كتلًا لا تعتبر صالحة بموجب القواعد الجديدة.[7]

انظر أيضاً

الهوامش

  1. ^ Alternatively, this situation is called a blockchain split[2] or a blockchain divergence. If permanent, it is also referred to as a cryptocurrency split.

المصادر

  1. ^ Antonopoulos, Andreas (2017). Mastering Bitcoin: Programming the Open Blockchain (2 ed.). USA: O' Reilly media, inc. p. Glossary. ISBN 978-1491954386.
  2. ^ Thieme, Nick (4 August 2017). "Bitcoin Has Split Into Two Cryptocurrencies. What, Exactly, Does That Mean?". Slate. Retrieved 8 March 2018.
  3. ^ Croman, Kyle; Eyal, Ittay (2016). "On Scaling Decentralized Blockchains" (PDF). doi:10.1007/978-3-662-53357-4_8. Retrieved 28 March 2019. {{cite journal}}: Cite journal requires |journal= (help)
  4. ^ Jordan Pearson (14 October 2016). "'Bitcoin Unlimited' Hopes to Save Bitcoin from Itself". Motherboard. Vice Media LLC. Retrieved 17 January 2017.
  5. ^ Oscar Williams-Grut and Rob Price (26 March 2017). "A Bitcoin civil war is threatening to tear the digital currency in 2 — here's what you need to know". Business Insider. Retrieved 2 July 2017.
  6. ^ Lee, Timothy (12 March 2013). "Major glitch in Bitcoin network sparks sell-off; price temporarily falls 23%". Arstechnica. Archived from the original on 2013-04-22. {{cite web}}: Unknown parameter |deadurl= ignored (|url-status= suggested) (help)
  7. ^ قالب:Cite website
الكلمات الدالة: