كيف تعمل خوارزمية Bitcoin SHA-256؟ - عملات مجانية

اخر الأخبار

اعلان

اعلان

الأربعاء، 20 مايو 2020

كيف تعمل خوارزمية Bitcoin SHA-256؟

كيف تحمي التوقيعات الرقمية و خوارزمية”Hash” معاملاتك بالعملات الرقمية المشفرة

 

مدونة عملات مجانية

ماذا يعني هاش، كيف يعمل، أين يتم استخدامه؟ كيف تعمل وظيفة تجزئة SHA-256 المستخدمة في البيتكوين؟

تستخدم خوارزميات التجزئة في العديد من مجالات التكنولوجيا، وخاصة العملات المشفرة مثل بيتكوين (BTC). في هذه المقالة، قمنا بفحص هياكل التجزئة المستخدمة للتشفير وأحياناً للتحكم في سلامة البيانات. سوف نشرح مصطلحات مثل خوارزمية التجزئة، SHA-256، MD5

ما هو هاش؟


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

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

تتميز التوقيعات الرقمية و وظائف التجزئة المشفرة Hashبميزة  السرية التي تحمي المعاملات العملات الرقمية المشفرة . حيث يثبت توقيعك الرقمي أن لديك المفتاح الخاص الذي يضمن ملكية الأصول في معاملاتك التي تقوم بها. وظيفة هاش “hash function “تحدد وتضمن المعاملة.

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

تشفير المفتاح العام

إن التشفير غير المتماثل، المعروف أيضًا باسم المفتاح العام / تشفير المفتاح الخاص يسود حاليًا. المفاتيح العامة والمفاتيح الخاصة هي ببساطة أرقام.

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

يحل تشفير المفتاح العمومي هذه المشكلة عن طريق نشر مفتاح عام يمكن لأي شخص استخدامه لتشفير رسالة، ويحتفظ المستخدمين بمفتاح خاص لأنفسهم ليتم استخدامه لفك تشفير الرسالة. هذا يعمل من خلال دوال رياضية أحادية الاتجاه. هذه الدوال تحسب ببساطة وسهولة، ولكنها تقاوم الهندسة العكسية.

أثناء إنشاء خوارزميات التجزئة، يتم إعطاء العناصر الأربعة التالية أهمية:

في حين  أنة يكون من
السهل  حساب ملخص الإدخال ينبغي أن يكون
من الصعب جدا العثور
على المدخلات من البيانات

 البيانات المخرجة ينبغي أن تتغير إذا تغيرت بيانات الإدخال وينبغي أن يكون احتمال تكرار البيانات المخرجة من مدخلات مختلفة منخفضة جدا

ما هي خوارزمية SHA-256 المستخدمة في بيتكوين؟

  SHA هي عبارة عن خوارزمية تجزئة آمنة) ؛ وهو اسم خوارزمية التجزئة التي وضعتها وكالة الأمن القومي الأمريكية (NSA).

بدأ استخدام هذا المعيار مع SHA-0 في عام 1993، وتم زيادة أدائه مع تطوير SHA-1 في عام 1995. وقد وُضع معيار SHA-2 في عام 2004 بعد اكتشاف العديد من نقاط الضعف. معيار SHA-2؛ لديها مجموعات فرعية مثل SHA-224، SHA-256، SHA-384 وSHA-512.

يتم استخدام خوارزمية التجزئة التي تسمى SHA-256 في شبكة Bitcoin. معيار SHA-256؛ حتى لو كانت بيانات الإدخال تتكون من حرف او مئات الصفحات فأنها توفر دائمًا 64 حرفًا من الإخراج في نظام الأرقام الست عشرية.

التجزئة المشفرة أو Hash:
 

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

مثال بسيط لعملية الفرز
للتوضيح ، افترض أننا نريد تجزئة السلسلة البسيطة “ABCDE” كبيانات الإدخال.

دعونا ننشئ خوارزمية بسيطة للتجزئة. أولاً، نترجم الحروف إلى أرقام: A = 1 ، B = 2 ، C = 3 ، D = 4 ، E = 5. يجب أن تكون قيمة تجزئة الناتج رقم واحد. الطريقة الأساسية ببساطة نضيف جميع الأرقام معا: 1 + 2 + 3 + 4 + 5 = 15. هذا ينتج عددًا من رقمين، لذلك تستمر خوارزميتنا بشكل متكرر لإضافة كل رقم من هذا الرقم: 1 + 5 = 6. وهذا يجعل 6 قيمة تجزئة لدينا، و6  يمثل “ABCDE” كتجزئة.

إذا تلقيت “ABCDE” كرسالة ممثلة بـ 6 كتجزئة، فأنت تثق في صحة الرسالة. ولكن إذا تلقيت رسالة “ABCXE” ممثلة في علامة التجزئة 6، يوجد عدم تطابق ، وبوضوح تعرف أن هناك تلاعب بالرسائل.

فشل خوارزمية التجزئة بسيطة لدينا على العديد من المستويات، بطبيعة الحال. لأول مرة، فإن سلسلة “EDCBA” أو أي مزيج منها يخلق نفس التجزئة مثل “ABCDE” ، وبالتالي خلق تصادمات. الرياضيات المعقدة تتغلب على هذه القضايا. تجدر الإشارة إلى أن خوارزمية التجزئة الأكثر استخدامًا حاليًا في تشفير العملات الرقمية المشفرة هي SHA-256 (اختصار يشير إلى خوارزمية التجزئة الآمنة). في خوارزمية SHA-256، يصل الحجم الثابت لقيمة التجزئة إلى 256 بت.

التوقيعات الرقمية والتجزئة “Hash” في العملات الرقمية المشفرة

كيف نستخدم في الواقع التوقيعات الرقمية والتجزئة في الحسابات المشفرة؟

لنلق نظرة على معاملة البيتكوين BTC  لمشاهدة التقنية قيد التنفيذ.

تفصل المعاملة بيتكوين إلى جزئين1) قسم الإدخال،  و2) قسم الإخراج.

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

يحتوي قسم الإخراج على عنوان محفظة المستلم، وفهرس لأن هناك أكثر من ناتج واحد (ستذهب المخرجات المختلفة إلى المستلم والمرسل وعامل التعدين).

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

إشكالية  “transaction malleabilityفي معاملات البيتكوين و حلها

ظهرت مشكلة معروفة في معاملات البيتكوين Bitcoin تسمى transaction malleability .

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

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

تقنية SegWit كحل:

لقد نجحت تقنية (SegWit) في إصلاح هذه المشكلة. SegWit يخلق بنية منفصلة عن كتلة (فصل). يحتوي هذا الهيكل المنفصل على المعلومات المطلوبة لتحديد صلاحية المعاملة (يشهد على صحة المعاملة) ولكنه لا يحتوي على بيانات المعاملة نفسها. فصل بيانات المعاملات بهذه الطريقة يحل مشكلة  transaction malleability.

ختاما

إن عالم التشفير يتطور مع تطور التكنولوجيا، حيث ان تطور أجهزة الكمبيوتر في المستقبل سوف تكسر بالتأكيد خوارزميات التشفير اليوم. ولكن بالنسبة للعالم الحالي الذي نعيش فيه، توفر التوقيعات الرقمية وشفرات التجزئة “Hash” ضمانات كافية لضمان أمن وسلامة المعاملات.

 

 

 


ليست هناك تعليقات:

إرسال تعليق

اعلان