توقيع رقمي
Digital signature -

الانترنت

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

مروان الزبيبي

الفرق بين التوقيع اليدوي والتوقيع الرقمي التحقق من صحة التوقيع الرقمي
المراحل الرئيسية في عملية التوقيع الرقمي الشهادة الرقمية – مركز التصديق الإلكتروني
 توليد مفاتيح التوقيع الرقمي توليد مختصر الرسالة – خوارزمية التهشير
توليد التوقيع الرقمي خوارزمية التشفير بالمفتاح العمومي
 

التوقيع الرقمي  digital signature - أو التوقيع الإلكتروني - توقيع يُضاف إلى الوثيقة الرقمية، مثلما يوضع التوقيع اليدوي على الوثيقة الورقية، ويستخدم للمصادقة على صحة الرسالة الرقمية الموقعة لدى حفظها أو نقلها وربطها بهوية الموقع (الشخص أو الجهة التي قامت بالتوقيع) وبمحتوى الرسالة. يمكن أن تكون الرسالة ملفاً رقمياً أو بريداً إلكترونياً أو عقداً إلكترونياً أو رسالة مرسلة ببروتوكول معين لأغراض التجارة الإلكترونية. يضاف التوقيع الرقمي تلقائياً إلى الوثيقة على شكل نص قصير مكون من حروف وأرقام (تمثل سلسلة محدودة الطول من الأرقام الثنائية).

الفرق بين التوقيع اليدوي والتوقيع الرقمي

يستخدم التوقيع اليدوي لشخص ما على وثيقة ما للمصادقة على صحة محتواها وارتباطها بموقعها، غير أنه قابل للتزييف والتقليد، ويمكن أن يُصور من وثيقة ما ويوضع على وثيقة أخرى. وتعتمد عملية التحقق من صحة التوقيع اليدوي اعتماداً كبيراً على مهارة من يقوم بمطابقة التوقيع. وإن سَلِمت الوثيقة الموقعة يدوياً من تزييف التوقيع فإن محتواها قد يكون معرضاً للتغيير والعبث، كما يحدث عندما يأتي التوقيع في نهاية وثيقة مكونة من عدة صفحات، حيث يقوم العابث بتغيير بعض الصفحات أو إضافة بعض الفقرات أو حذفها.

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

يمكن أن يكون التوقيع الرقمي لشخص بعينه، أو لجهة معينة (شركة أو شخصية اعتبارية).

المراحل الرئيسية في عملية التوقيع الرقمي

تتألف عملية التوقيع الرقمي من ثلاث مراحل رئيسية، هي:

·         توليد زوج مفاتيح التوقيع الرقمي key generation، وتتم مرة واحدة.

·         توليد التوقيع الرقمي signature generation في طرف الإرسال ولكل رسالة.

·         التحقق من التوقيع الرقمي signature verification في طرف الاستقبال، ولكل رسالة موقعة.

توليد مفاتيح التوقيع الرقمي

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

يستخدم في توليد المفاتيح برنامج خاص يتضمن خوارزمية لتوليد زوج مفاتيح التوقيع الرقمي، وهي:

·         المفتاح العمومي public key.

·         المفتاح الخاص private key، ويسمى أحياناً المفتاح السري.

يتم إيداع المفتاح العمومي لدى سلطة إصدار الشهادة الرقمية  Certificate Authority  (CA)، أو ما يسمى أحياناً مركز التصديق الإلكتروني  authentication centerالذي يصدر شهادة رقمية digital certificate مهمتها الربط بين المفتاح العمومي وهوية صاحب التوقيع الرقمي بهدف إثبات التوقيع الرقمي. تتضمن الشهادة بيانات طالب التوقيع ومفتاحه العمومي وأسماء الخوارزميات المستخدمة في التوقيع الرقمي، إضافة إلى توقيعها رقمياً من مركز التصديق كما يتبين لاحقاً. ويحتفظ صاحب التوقيع بالمفتاح الخاص به إما في حاسوبه الشخصي وإما على حامل إلكتروني (مثلاً ذاكرة قابلة للبرمجة تشبه الذاكرة الوميضة "الفلاشة") يزوده به مركز التصديق الإلكتروني.

توليد التوقيع الرقمي

يبين الشكل (1) منهجية توليد التوقيع الرقمي، حيث تجري العملية وفق مايلي:

·         استخدام خوارزمية تهشير hash function لضغط بيانات الوثيقة الرقمية المراد توقيعها رقمياً، وإيجاد مختصر الرسالة message digest أو ما يسمى أحياناً بصمة الرسالة message fingerprint  (مثلاً سلسلة بحجم 128 بت).

·         استخدام خوارزمية تعمية (تشفير) بالمفتاح العمومي  public key encryption algorithmلتعمية مختصر الرسالة باستخدام المفتاح الخاص للمرسل لينتج التوقيع الرقمي (مثلاً سلسلة بحجم 128   بت).

وفيما يلي مثال لتوقيع رقمي ممثل بالترميز الستة عشري 16 بايت:

31 d6 cf e0 d1 6a e9 31 b7 3c 59 d7 e0 c0 89 c0 

        والترميز الثنائي 128بت:

0011 0001 1101 0110 1100 1111 1110 0000 1101 0001 0110 1010 1110 1001 0011 0001 1011 0111  0011 1100 0101 1001 1101 0111 1110 0000 1100 0000 1000 1001 1100 0000

·         يُضاف التوقيع الرقمي (أو الملف الذي يشتمل عليه) إلى ملف الرسالة ويرسل معها، وترسل معه أيضاً الشهادة الرقمية التي تتضمن المفتاح العمومي اللازم للتحقق من التوقيع الرقمي.

·         التوقيع الرقمي الناتج مرتبط بمحتوى الرسالة أو الوثيقة، ومرتبط بالمفتاح الخاص للشخص الموقع على الوثيقة. ولكل رسالة توقيع رقمي مختلف للشخص نفسه؛ لأن تغيير حرف واحد في محتوى الرسالة أو الوثيقة يؤدي إلى تغيير مختصر الرسالة، وبالتالي تغيير التوقيع الرقمي.

الشكل (1) توليد التوقيع الإلكتروني

·         تمكن برمجيات المكتب من شركة مايكروسوفت من تفعيل إمكان التوقيع الرقمي على المستندات من نوع Word, Excel, Powerpoint المبنية ضمن هذه البرمجيات. ويتم تفعيلها عند توفر حامل إلكتروني يتضمن المفتاح الخاص وشهادة رقمية وكل ما يلزم من برمجيات متممة.

التحقق من صحة التوقيع الرقمي

يبين الشكل (2) عملية التحقق من صحة التوقيع الإلكتروني. فعند تسلم رسالة موقعة رقمياً (ملف الرسالة مع ملف التوقيع الرقمي) يجري التحقق من صحة التوقيع الرقمي، ومن سلامة معلومات الرسالة message authentication وفق ما يلي:

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

* استخدام خوارزمية التشفير بالمفتاح العمومي لفك تشفير التوقيع الرقمي المتسلم مع الرسالة باستخدام المفتاح العمومي (الوارد مع التوقيع ضمن الشهادة الرقمية) للمرسل، لينتج مختصر الرسالة المتوقع.

* تجري مقارنة مختصر الرسالة المحتسب بالمختصر المتوقع، وعند التطابق بينهما ينتج مايلي:

- الرسالة المتسلمة سليمة ولم يطرأ عليها أي تعديل خلال النقل.

- الرسالة المتسلمة صادرة فعلاً عن الشخص صاحب المفتاح العمومي والتوقيع.

- لايستطيع موقِّع الرسالة إنكارها non-repudiation لكونها موقعة رقمياً منه، ولأنه الوحيد الذي يمتلك المفتاح الخاص به، شريطة وجود شهادة رقمية صالحة مع الرسالة تربط بين موقع الرسالة ومفتاحه العمومي (الشكل 2).

 

الشكل (2)

الشهادة الرقمية – مركز التصديق الإلكتروني

لاكتمال منهجية التحقق من التوقيع الإلكتروني لابد من الربط بين المفتاح العمومي وهوية موقع الرسالة (صاحب التوقيع الإلكتروني) عن طريق جهة حيادية، كما هي الحال في الوثائق الورقية التي يصادق على صحتها كاتبٌ بالعدل. ويتم ذلك عن طريق شهادة رقمية (ملف رقمي) يصدرها طرف ثالث هي سلطة إصدار الشهادة (CA)، تتضمن المفتاح العمومي نفسه وفق المعيار ITX-TX-509 الصادر عن الاتحاد الدولي للاتصالات، إضافة إلى كل من بيانات صاحب المفتاح العمومي، وخوارزمية التهشير وخوارزمية التشفير بالمفتاح العمومي المستخدمتين لتوليد التوقيع، وتاريخ إصدار الشهادة ومدة صلاحيتها، والتوقيع الإلكتروني للجهة التي أنشأتها CA، والخوارزميات المستخدمة في إنشاء التوقيع، بهدف التحقق من صحة الشهادة وعدم إنكارها. ويطلق في القانون السوري اسم "مزود خدمات التصديق الإلكتروني" على سلطة إصدار الشهادة CA، وتأخذ تراخيصها من هيئة خدمات الشبكة التابعة لوزارة الاتصالات والتقانة.

عند وجود توقيع إلكتروني مع ملف رسالة منشأ ببرمجيات مايكروسوفت المكتبية (Word, Excel, Powerpoint)، وعند فتح الرسالة يمكن التحقق تلقائياً من صحة الشهادة الرقمية المرتبطة  بالتوقيع الرقمي من خلال مركز التصديق الإلكتروني.

توليد مختصر الرسالة – خوارزمية التهشير

يتم توليد مختصر الرسالة باستخدام خوارزميات تهشير معيارية مختلفة. تقوم خوارزمية التهشير  بضغط محتوى الرسالة مهما كان حجمها إلى مختصر رسالة أو هاش محدود الحجم مثلاً 128 بت . تستخدم لهذه الغاية خوارزميات تهشير مختلفة، تسعى جميعها إلى تعقيد عمليات الضغط بهدف تجنب التصادم في قيمة الهاش لرسالتين مختلفتين. فإذا كان هناك رسالتان مختلفتان Y≠X فإن خوارزمية التهشير تُصمم بحيث يكون هاشا الرسالتين غير متطابقين) h (X)≠ h(Y)  .

في خوارزمية الهاش يتم تقسيم الرسالة إلى مقاطع (بلوكات) متساوية الطول (مثلاً1024  بت). يُشفَّر البلوك الأول بإحدى طرائق التشفير المعتمدة، أو باستخدام تابع غير خطي بحيث تستخدم قيمة بدائية بحجم الهاش المطلوب. وتكرر العملية لجميع البلوكات باستخدام ناتج المرحلة السابقة كدخل للمرحلة التالية، ويكون الهاش الأخير المحتسب لآخر بلوك في الرسالة هو مختصر الرسالة. 

هناك خوارزميات تهشير معيارية، مثل مختصر الرسالة 5 (Message Digest  (MD5، وخوارزمية هاش الآمنة Secure Hash Algorithm (SHA)  (SHA-1 و SHA-256 وSHA-384  و512(SHA- بأطوال هاش  160 بت و256  بت و384  بت و 512  بت على الترتيب.

خوارزمية التشفير بالمفتاح العمومي

يستخدم في خوارزمية التشفير بالمفتاح العمومي زوج من المفاتيح؛ أحدهما عمومي معلن، ويستخدم للتشفير ويسمى e، والآخر سري أو خاص، ويستخدم لفك التشفير ويسمى d. وهذان المفتاحان مترابطان رياضياً بحيث لا يمكن فك الرسالة المشفرة بطريقة التشفير بخوارزمية المفتاح العمومي إلا باستخدام المفتاح d. فإذا كان هناك طرفا اتصال A  وB  يرغبان بالاتصال المشفر فإن الطرف A يولد زوج مفاتيح ea  وda والطرف B يولد زوج مفاتيح eb  وdb، وقبل بدء الاتصال يتبادلان مفاتيح التشفير العمومية لكل منهما، أو تكون مفاتيح التشفير العمومية ea  وeb  معلنة ضمن دليل مفاتيح عام على شبكة الإنترنت.

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

من أشهر خوارزميات التشفير بالمفتاح العمومي خوارزمية RSA المنشورة عام 1978. فمثلاً لرسالة M توصف الخوارزمية بالعلاقات (1 و2):

في التشفير        C  =  Me mode N Where M <N    (1)                    

في فك التشفير    M  =  Cdmode N =  Med mode N   (2)         

ويتحقق الفك عندما يكون جداء المفتاحين يساوي 1 وفق العلاقة (3):

ed  =  1 modeΦ(n)    (3)

حيث التابع (n)Φ هو  Euler totient function(نظرية الأعداد). يُعرّف التابع (n)Φ بأنه عدد الأعداد k التي هي  أصغر أو تساوي n، ولايوجد بينها وبين n أي قاسم مشترك، كما في العلاقة (4):

يمكن البرهان على أنه من أجل عددين أوليين p و q  يكونΦ(n) =  (p-1) (q-1)، ويكونN = p . q.

يتم انتقاء المفتاح e كعدد أولي بحيث يحقق العلاقة (5):

gcd(Φ(n), e)1; where    1  e  < Φ(n)       (5)

حيث يمثل gcd القاسم المشترك الأعظمي، ومن ثم يكون المفتاح العمومي مكوناً من { e , N }، والمفتاح الخاص { d }. وتبقى المتحولات التالية سرية غير معلنة p, q, d, Φ (n). في الحالات العملية تكون الأرقام الأولية p وq من رتبة 155 رقماً عشرياً، أي  512 بت، وعليه فإن معرفة N يجعل من الصعب تحليلها إلى أرقامها الأولية p وq. وغالباً ماتكون هذه الأرقام ضمن المجال 512-2048 بت،  أي مابين 155 و617 رقماً عشرياً على الترتيب.

يقدر أنه يلزم MIPS-year 1017  لتحليل رقم مكون من 2048 بت إلى عوامله الأولية. والمقياس Million Instructions Per  Second-Year (MIPS-year) يمثل معالجاً حاسوبياً يقوم بمليون تعليمة في الثانية ولمدة سنة (أي تقريباً 1013 عملية).

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

مراجع للاستزادة:

        -          R. Johnson, Elliptic Curve Digital Signature Algorithm in Theory and Practice: Definitive Reference for Developers and Engineers, HiTeX Press 2025.

        -          J. Mancini, Executive Guide to Digital Signatures (Executive Guides to Innovative Technology), Content Results, LLC 2023.

        -          M. Stamp, Information Security: Principles and Practice,Wiley 2021.

 


- التصنيف : كهرباء وحاسوب - المجلد : المجلد العاشر، طبعة 2025، دمشق مشاركة :

بحث ضمن الموسوعة

من نحن ؟

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