طريقة عمل التوقيعات الرقمية

اقرأ في هذا المقال


ما هي طريقة عمل التوقيعات الرقمية؟

في مجال التقنيات المالية وأهمها العملات الرقمية المشفرة غالبًا ما يتكون نظام التوقيع الرقمي من ثلاث خطوات أساسية: التجزئة (Hashing) والتوقيع (Signing) والتحقق (Verifying).

تجزئة البيانات Hashing:

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

التوقيع Signing:

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

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

التحقق Verifying:

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

لذلك من أهم النقاط أن تقوم (Alice) بالاحتفاض بالمفتاح الخاص في مكان سري، حيث لو قام شخص ثالث بوضع يده على مفتاح (Alice) الخاص فيمكنه إنشاء توقيعات رقمية، والتظاهر بأنه (Alice) لخداع (Bob)، وهذا يعتبر انتحال لشخصيتها. وفي سياق البيتكوين يعني هذا أنه يمكن لأي شخص استخدام المفتاح الخاص بـ (Alice) لنقل أو إنفاق البيتكويين الخاص بها دون إذنها.

المصدر: What’s a digital signature?Understanding digital signaturesdigital signatureWhat is a Digital Signature?


شارك المقالة: