هل تتساءل حقًا كيف تبقى تقنية البلوكشين آمنة في الواقع؟ لقد كنت أبحث في الأمر وأدركت أن معظم الناس لا يفهمون حقًا ما الذي يفعله الـ nonce فعلاً. إنه نوع من البطل المجهول في عملية التعدين بأكملها.



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

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

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

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

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

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

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