تقني7 min read

كيف تتحقّق من توقيع رقمي (الرياضيات، لا مجرّد علامة الصح)

فريق سهل ساين|

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

هذا ما يحسبه المتحقّق فعلياً حين يقرّر أن توقيعاً رقمياً أصلي — ولماذا تنطبق الفحوص الثلاثة نفسها سواء كان الكائن الموقَّع ملف PDF، أو فاتورة XML، أو ملفاً خاماً.

٣ فحوص

أشياء مستقلة يُعيد المتحقّق إنتاجها: هاش المستند، وفحص توقيع المفتاح العام، وسلسلة الثقة للشهادة. يجب أن تنجح الثلاثة جميعاً

فشل أي واحدة يعني «لم يُتحقّق» — وأيّها فشل يخبرك بما حدث

RFC 5652

بنية رسائل التشفير (CMS) — المعيار القياسي من IETF الذي يحمل توقيعاً رقمياً منفصلاً وسماته الموقَّعة

IETF، بنية رسائل التشفير

X.509

صيغة الشهادة التي تربط مفتاحاً عاماً بهوية متحقَّق منها، تُصدرها وتوقّعها سلطة تصديق

ITU-T X.509 / RFC 5280

ما هو التوقيع الرقمي فعلاً

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

يجري التوقيع في خطوتين: يحسب البرنامج هاش المستند بـ SHA-256 للحصول على بصمة قصيرة ثابتة الطول، ثم يشفّر تلك البصمة بالمفتاح الخاص. تلك البصمة المشفَّرة هي التوقيع. والتحقق يعكس ذلك.

Step ١

إعادة حساب الهاش

يشغّل المتحقّق دالة SHA-256 نفسها تماماً على البايتات نفسها التي هشّها الموقّع. ينتج عن ذلك بصمة يجب أن تطابق ما يلتزم به التوقيع. بايت واحد تغيّر، بصمة مختلفة.

Step ٢

فحص توقيع المفتاح العام

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

Step ٣

السير في سلسلة الشهادة

جاء المفتاح العام في شهادة X.509. يتتبّع المتحقّق سلسلة الجهات المُصدِرة صعوداً حتى سلطة تصديق جذرية يثق بها مسبقاً. هذا ما يربط المفتاح بهوية حقيقية مدقَّقة بدل زوج مفاتيح مجهول.

الخطوة التي يتجاوزها الجميع: سلسلة الثقة

تُثبت الخطوتان ١ و٢ أن الملف لم يُعدَّل وأنه وُقِّع بمن يحوز مفتاحاً خاصاً بعينه. لكنهما لا تُثبتان مَن هو. فزوج مفاتيح مولَّد ذاتياً يجتاز الفحصين بإتقان ولا يُثبت شيئاً عن الهوية — يستطيع أي أحد صنع واحد في ثانية.

الهوية تأتي فقط من الخطوة ٣. يجب أن تتّصل شهادة التوقيع صعوداً بسلطة تصديق دقّقها طرف ثالث ويثق بها متحقّقك مسبقاً — قائمة الثقة المعتمدة من أدوبي (AATL) لملفات PDF، أو قائمة الثقة الأوروبية (EUTL) لـ eIDAS، أو جذر خاص بمؤسسة. علامة صح خضراء مع شهادة موقَّعة ذاتياً تعني توقيعاً صحيحاً من موقّع مجهول.

السلامة تقول إن البايتات لم تتغيّر. والأصالة تقول إن مفتاحاً خاصاً بعينه وقّعها. وحدها سلسلة الثقة تقول لمن كان ذلك المفتاح. والمتحقّق الذي يُبلّغ عن الأوّلَين ويتجاوز الثالث إنما يؤكّد توقيعاً من لا أحد بعينه.

الفارق الذي يقرّر ما إذا كان للتوقيع أي معنى

الرياضيات نفسها، أربع حاويات: عائلات AdES

الفحوص الثلاثة أعلاه عامّة. ما يتغيّر بين أنواع الملفات هو المظروف الذي يحزم التوقيع وبياناته الوصفية. توحّد ETSI أربعاً منها، تُسمّى مجتمعةً صيغ AdES (التوقيع الإلكتروني المتقدّم). ومعرفة أيّها تنظر إليه تخبرك بأيّ أداة تتحقّق منه.

عائلات توقيع AdES الأربع من ETSI. النواة التشفيرية نفسها، وحاوية مختلفة لكل نوع بيانات. يُنتج سهل ساين صيغة PAdES لملفات PDF المختومة.

JurisdictionLawCross-border transfer ruleIntensity
CAdESETSI EN 319 122توقيعات CMS الإلكترونية المتقدّمة. توقّع أي بيانات ثنائية باستخدام بنية CMS في RFC 5652. الأساس العام الذي تبني عليه البقية.Moderate
XAdESETSI EN 319 132توقيعات XML الإلكترونية المتقدّمة. توقّع مستندات XML — شائعة للفوترة الإلكترونية والتقديمات الحكومية في الخليج.Moderate
PAdESETSI EN 319 142توقيعات PDF الإلكترونية المتقدّمة. تضمّن التوقيع داخل ملف PDF نفسه ليسافر مع المستند ويتحقّق منه في أي قارئ أكروبات.Restricted
JAdESETSI TS 119 182توقيعات JSON الإلكترونية المتقدّمة. توقّع حمولات JSON (مبنية على JWS) — تُستخدم في واجهات البرمجة الحديثة وتدفقات الخدمات المصرفية المفتوحة.Moderate

كيف تتحقّق من واحد عملياً

نادراً ما تشغّل الفحوص الثلاثة يدوياً. يفعلها المتحقّق نيابةً عنك — والحيلة في معرفة أيّ متحقّق يطابق الحاوية وكيف تقرأ حكمه.

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

  • PDF ‏(PAdES) — افتحه في أدوبي أكروبات ريدر

    تُبلّغ لوحة التوقيع عن الفحوص الثلاثة كلها إضافةً إلى الطابع الزمني وحالة الإلغاء. للعرض التفصيلي على مستوى البايت، انظر دليلنا في التحقق من ملفات PDF الموقَّعة.

  • XML أو أي صيغة — استخدم متحقّق EU DSS

    خدمة التوقيع الرقمي مفتوحة المصدر من المفوضية الأوروبية تتحقق من CAdES وXAdES وPAdES وJAdES مقابل خوارزمية ETSI الكاملة وتُرجع تقريراً منظَّماً يُسمّي الفحص الذي فشل بالضبط.

  • سطر الأوامر — OpenSSL لـ CMS الخام

    لتوقيع CMS منفصل، يشغّل openssl cms -verify -in signature.p7s -content data.bin -CAfile trusted-roots.pem فحص الهاش والمفتاح العام ويُبلّغ عمّا إذا كانت السلسلة تنتهي عند جذر موثوق.

  • اقرأ دائماً ما وراء الحكم المختصر

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

الحكمان اللذان يخلط الناس بينهما

Recommended

صالح تشفيرياً، الهوية مجهولة

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

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

عدم تطابق الهاش

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

  • فشلت سلامة المستند — لا تعتمد على هذه النسخة
  • المحتوى الموقَّع والمحتوى الحالي مختلفان
  • اطلب الملف الموقَّع الأصلي من المُرسِل وأعد التحقق

لماذا تتحقّق توقيعات سهل ساين في أي مكان

يختم سهل ساين كل مستند بصيغة PAdES-B-T: بنية PKCS#7 ‏(CMS) SignedData منفصلة فوق نطاق بايتات PDF، من سلسلة شهادات موثوقة بشكل عام، مع طابع زمني RFC 3161. ولأنه المعيار ولا شيء سواه، تُعيد الفحوص الثلاثة إنتاج نفسها في أي متحقّق مطابق — فلا يُطلب منك قط الوثوق بواجهتنا.

PAdES-B-T

كل ملف PDF من سهل ساين يحمل توقيعاً رقمياً مطابقاً للمعايير: هاش نطاق البايتات بـ SHA-256، وتوقيع RSA، وسلسلة X.509 موثوقة بشكل عام، وطابع زمني من سلطة طوابع مُدرَجة في EUTL. تحقّق منه في أكروبات، أو في EU DSS، أو من سطر الأوامر — النتيجة نفسها.

src/lib/pdf-seal.ts في مصدر سهل ساين

قراءة ذات صلة

المصادر

التحقق من التوقيع الرقميPKIتشفير المفتاح العامCAdESXAdESPAdESJAdESX.509سلسلة الشهاداتRFC 5652eIDASقطرالخليجالسعوديةالإماراتMENA

مستعد لتجربة سهل ساين؟

ابدأ تجربتك المجانية لمدة 14 يوماً. لا حاجة لبطاقة ائتمان.

جرّب مجاناً