ماهو المفتاح العام والمفتاح الخاص – Public key and private key – دليل مفصل

المفتاح العام والمفتاح الخاص - Public key and private keys 

المفتاح العام والمفتاح الخاص – Public key and private keys

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

 

يتكون مفهوم الملكية على نظام العملة المشفرة بشكل أساسي من ثلاثة عناصر مترابطة:

– المفاتيح الرقمية (المفتاح العام والمفتاح الخاص) “Public key and private keys”.

– عنوان محفظة العملة مشفرة

– التوقيعات الرقمية (Digital signatures)

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

 

المفتاح العام (Public key) :مرتبط بشكل تشفيري بعنوان العملة المشفرة بمعنى أن العنوان يمثل المفتاح العام. غالبًا ما يتم استخدام المفتاح العمومي لإنشاء عنوان تشفير فعلي. يعمل هذا العنوان كمعرف حساب مستخدم يمكن دفع الأموال إليه.

عنوان العملة المشفرة(address wallet) : هو مجرد سلسلة من الأحرف الأبجدية التي يمكن للمستخدم مشاركتها مع أي شخص يريد إرسال أموال لهم. كما ذكرنا من قبل ، فإن عنوان العملة المشفرة يمثل فعليا المفتاح العام. يتم اشتقاق عنوان من المفتاح العمومي من خلال استخدام دالة تجزئة تشفير أحادية الاتجاه.
الخوارزميات المستخدمة في إنشاء عنوان البيتكوين من المفتاح العمومي هي خوارزمية التجزئة الآمن (SHA-256) .
بدءًا من المفتاح العمومي ، يتم تشغيل سلسلة القيم هذه أولاً من خلال خوارزمية تجزئة SHA-256 لإنتاج تجزئة ، ثم يتم حساب ذلك التجزئة باستخدام ” RIPEMD160″ لإنتاج عنوان بيتكوين. إن عنوان البيتكوين ، والعناوين في أنظمة العملات المشفرة الأخرى ، هي ما يظهر غالبًا في معاملة بين طرفين ، حيث يشير العنوان إلى مستلم الأموال.

 “RIPE Message Digest)=” RIPEMD160) == هي مجموعة من وظائف تجزئة التشفير.

المفتاح الخاص (private keys): يتكون المفتاح الخاص من أحرف أبجدية تمنح المستخدم حق الوصول والتحكم في أمواله . يُستخدم المفتاح الخاص لتوقيع المعاملات التي تسمح للمستخدم بإنفاق أمواله. بمعنى آخر ، يُنشئ المفتاح الخاص تواقيع رقمية فريدة لكل معاملة تُمكّن المستخدم من إنفاق أمواله ، من خلال إثبات أن المستخدم يمتلك بالفعل هذه الأموال.

التوقيعات الرقمية (Digital signatures): هي تقنية أساسية لعملة البتكوين (bitcoin) و تلعب التوقيعات الرقمية دور الترخيص والبرهنة ،مثال: التوقيع المكتوب بخط اليد على شيك  على ترخيصٍ بنقل الأموال.
والتوقيع الرقمي عبارة عن مخطط رياضي يستخدم لإظهار صحة رسالة أو مستند رقمي.
تلعب التواقيع الرقمية دورًا مهمًا في أنظمة العملة المشفرة ، لأنها تثبت ملكية الأموال وتسمح للفرد الذي يتحكم في هذه الأموال بإنفاقها. على سبيل المثال ، تُعرف خوارزمية التوقيع الرقمي المستخدمة في Bitcoin باسم خوارزمية التوقيع الرقمي للناحية الاهتزازية ، والتي تُعرف أيضًا باسم ECDSA. ECDSA هي الخوارزمية التي تدعم نظام التوقيع في Bitcoin ، وتستند إلى تشفير المنحنى الإهليلجي. هذا هو نفس نهج التشفير المستخدم في إنتاج أزواج المفاتيح الخاصة والعامة.

 

 في Bitcoin ، يهدف التوقيع الرقمي فعليًا إلى خدمة ثلاثة أغراض مميزة:

– أولاً ، يعمل التوقيع الرقمي كدليل على أن مالك المفتاح الخاص ، الذي سيحصل على امتلاك أمواله  ، قد أذن بالفعل بإمكانية إنفاق أو إرسال هذه الأموال.

– ثانياً ، يعمل التوقيع الرقمي كدليل على أن الترخيص لا يمكن إنكاره.

– ثالثًا ، يثبت التوقيع الرقمي أن المعاملة التي أذن بها  لا يمكن تعديلها من قبل أي شخص بعد توقيعها.

التوقيعات الرقمية في البيتكوين: كيف تعمل؟

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

يمكن تمثيل الجزء الأول من إنتاج توقيع رقمي في Bitcoin رياضيا بالطريقة التالية:

(Sig = Fsig (Fhash (m) ، dA

dA = هو المفتاح الخاص للتوقيع
m = هي الصفقة
Fhash = هي وظيفة التجزئة
Fsig = هو خوارزمية التوقيع
Sig = هو التوقيع الناتج

تنتج وظيفة التوقيع (Fsig) توقيعًا (Sig) يتكون من قيمتين: R و S:

(Sig = (R, S

بمجرد حساب R و S ، يتم إجراء تسلسل في دفق بايت (byte)مشفر باستخدام نظام تشفير قياسي دولي يعرف باسم قواعد الترميز المتميزة (أو DER). من أجل التحقق من صحة التوقيع ، يتم استخدام خوارزمية التحقق من التوقيع. يتطلب التحقق من التوقيع الرقمي ما يلي:

– التوقيع (R و S)
– تجزئة المعاملات (Transaction hash)
– المفتاح العمومي الذي يتوافق مع المفتاح الخاص الذي تم استخدامه لإنشاء التوقيع.

التحقق من صحة التوقيع يعني أن مالك المفتاح الخاص (الذي أنشأ المفتاح العام) هو الوحيد الذي كان يمكن أن ينتج التوقيع على المعاملة. ستُرجع خوارزمية التحقق من التوقيع “TRUE” إذا كان التوقيع صالحًا بالفعل.

 

إقرأ أيضا : ما هي تقنية البلوكشين Blockchain؟