SSL (Secure Sockets Layer) هو البروتوكول الأصلي الذي طورته Netscape في التسعينيات لتأمين الاتصال على الويب، وقد حلّ محله TLS (Transport Layer Security). كل إصدارات SSL وكذلك TLS 1.0 و 1.1 أصبحت قديمة وغير آمنة، والإصدارات المعتمدة اليوم هي TLS 1.2 وTLS 1.3 (RFC 8446 الصادر عام 2018). ومع ذلك ما زال الناس يقولون “شهادة SSL” بحكم العادة.
ماذا يوفر TLS؟
- التشفير: لا يستطيع أحد في الطريق قراءة البيانات.
- المصادقة: التأكد من أنك تتحدث فعلاً مع الموقع الصحيح عبر شهادته الرقمية الموقّعة من جهة موثوقة (CA).
- السلامة: اكتشاف أي تعديل على البيانات أثناء النقل.
كيف يتم الاتصال (Handshake)؟
- يرسل المتصفح رسالة
ClientHelloبالإصدارات والخوارزميات التي يدعمها. - يرد السيرفر بـ
ServerHelloويرسل شهادته الرقمية. - يتحقق المتصفح من الشهادة: هل هي صادرة لهذا النطاق؟ هل هي سارية؟ هل سلسلة التوقيع تنتهي بجهة جذر موثوقة؟
- يتفق الطرفان على مفتاح جلسة عبر تبادل (EC)DHE، ثم تُشفّر البيانات بخوارزمية متماثلة سريعة مثل AES-GCM أو ChaCha20.
في TLS 1.3 اختُصرت هذه العملية إلى رحلة ذهاب وعودة واحدة، وأُزيلت الخوارزميات الضعيفة، وأصبحت ميزة Forward Secrecy إلزامية، بحيث لا يكفي سرقة مفتاح السيرفر لاحقاً لفك الجلسات القديمة المسجلة.
مثال واقعي: Heartbleed
في 2014 اكتُشفت ثغرة Heartbleed (CVE-2014-0160) في مكتبة OpenSSL، وكانت تسمح لأي مهاجم بقراءة أجزاء من ذاكرة السيرفر قد تحتوي مفاتيح خاصة وكلمات مرور. الدرس: البروتوكول قد يكون سليماً بينما التطبيق (Implementation) مصاب، لذا تحديث المكتبات لا يقل أهمية عن اختيار الإصدار.
نصائح عملية
- عطّل SSLv3 و TLS 1.0/1.1 على السيرفرات وأجهزة الشبكة وواجهات الإدارة.
- جدّد الشهادات تلقائياً (مثلاً عبر Let’s Encrypt و ACME).
- للفحص السريع من سطر الأوامر:
openssl s_client -connect example.com:443
الفرق بين TLS و HTTPS
TLS هو طبقة التأمين، و HTTPS هو ببساطة HTTP يعمل فوق TLS. ونفس TLS يؤمّن أيضاً بروتوكولات أخرى مثل SMTPS و IMAPS و SSL VPN.

