كيف يعمل HTTPS و TLS حقًا: دليل عملي

Security2026-10-02TryQuickToolBox

لماذا يهم HTTPS (ولماذا يجب أن تفهمه)

في كل مرة تزور فيها موقعًا يحتوي على https:// في شريط العنوان، تحدث رقصة تشفيرية معقدة في أجزاء من الثانية. كمطور، أنت تعتمد على HTTPS يوميًا، ولكن عندما يحدث خطأ—مثل خطأ في الشهادة أو تحذير محتوى مختلط—تحتاج إلى معرفة ما يحدث بالفعل. يشرح هذا الدليل كيف يعمل HTTPS و TLS حقًا، من handshake إلى التشفير، ويوضح كيفية فحص وتصحيح TLS عمليًا.

ما هو HTTPS حقًا

HTTPS هو ببساطة HTTP عبر TLS (أمان طبقة النقل). إنه ليس بروتوكولًا منفصلًا؛ إنه رسائل HTTP ملفوفة في نفق مشفر. يوفر TLS ثلاثة ضمانات:

بدون TLS، يمكن لأي شخص على مسار الشبكة—مزود خدمة الإنترنت، مشغل Wi‑Fi في مقهى، أو جهة خبيثة—قراءة وتعديل حركة المرور الخاصة بك.

TLS Handshake: خطوة بخطوة

قبل أن تتدفق أي بيانات HTTP، يقوم العميل والخادم بإجراء handshake للاتفاق على معلمات التشفير والتحقق من الهويات. إليك ما يحدث في handshake نموذجي لـ TLS 1.3 (المعيار الحديث):

  1. Client Hello: يرسل العميل رسالة تحتوي على إصدارات TLS المدعومة، مجموعات التشفير، ورقم عشوائي.
  2. Server Hello: يختار الخادم إصدار TLS ومجموعة التشفير، ويرسل رقمه العشوائي الخاص.
  3. الشهادة: يرسل الخادم سلسلة شهاداته، بما في ذلك مفتاحه العام وتوقيع رقمي من جهة إصدار الشهادات (CA).
  4. تبادل المفاتيح: باستخدام المفتاح العام للشهادة (أو تبادل Diffie‑Hellman)، يستنتج الطرفان سرًا مشتركًا دون إرساله أبدًا.
  5. انتهى: يرسل الطرفان رمز MAC (رمز مصادقة الرسالة) للتحقق من عدم التلاعب بـ handshake.
  6. بيانات التطبيق: تبدأ طلبات واستجابات HTTP المشفرة.

في TLS 1.3، يكتمل handshake في رحلة ذهاب وإياب واحدة (1‑RTT)، مما يجعله أسرع من رحلتي TLS 1.2. يمكن لبعض الاتصالات حتى استخدام 0‑RTT للجلسات المستأنفة، على الرغم من أن لذلك مقايضات.

الشهادات وسلسلة الثقة

تربط شهادة TLS مفتاحًا عامًا باسم نطاق. تصدرها جهة CA بعد التحقق من التحكم في النطاق. يثق متصفحك بمجموعة من شهادات الجذر المثبتة مسبقًا في نظام التشغيل. عندما يرسل الخادم شهادته، يتحقق المتصفح من:

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

التشفير المتماثل مقابل غير المتماثل في TLS

يستخدم TLS كلا النوعين من التشفير لسبب وجيه:

النوعالغرض في TLSالسرعة
غير متماثل (RSA, ECDSA)المصادقة وتبادل المفاتيحبطيء
متماثل (AES, ChaCha20)تشفير البيانات المجمعةسريع

يُستخدم التشفير غير المتماثل فقط أثناء handshake للاتفاق بأمان على مفتاح جلسة متماثل. بعد ذلك، يتم تشفير جميع بيانات التطبيق باستخدام تشفيرات متماثلة سريعة.

كيفية فحص TLS عمليًا

يمكنك تصحيح TLS باستخدام أدوات سطر الأوامر. على سبيل المثال، باستخدام openssl لعرض سلسلة شهادة:

openssl s_client -connect example.com:443 -showcerts

يطبع هذا سلسلة شهادة الخادم. يمكنك أيضًا التحقق من إصدار TLS والتشفير:

openssl s_client -connect example.com:443 -tls1_3

في متصفحك، افتح أدوات المطور → علامة التبويب الأمان لرؤية تفاصيل الاتصال، ومعلومات الشهادة، وأي مشكلات محتوى مختلط.

مزالق TLS الشائعة وكيفية تجنبها

الأسئلة الشائعة

هل HTTPS هو نفسه TLS؟

HTTPS هو HTTP عبر TLS. TLS هو البروتوكول التشفيري الذي يؤمن الاتصال؛ HTTPS هو تطبيق ذلك البروتوكول على حركة HTTP.

ماذا يحدث إذا انتهت صلاحية الشهادة؟

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

هل HTTPS يبطئ موقعي؟

TLS الحديث (1.3) يضيف زمن وصول ضئيل—غالبًا رحلة ذهاب وإياب واحدة فقط. مع استئناف الجلسة و HTTP/2، تكون التكلفة الإضافية ضئيلة مقارنة بفوائد الأمان.

تصحيح TLS باستخدام TryQuickToolBox

عندما تحتاج إلى تحليل سجلات الخادم لأخطاء TLS أو فشل handshake، يمكن أن يساعدك Nginx Log Analyzer في تحليل وتصفية السجلات بسرعة. إنها أداة مفيدة لاكتشاف أنماط مثل أخطاء SSL المتكررة أو سلوك العميل غير المعتاد.