رابط المقال الرئيسي

https://blog.hartleybrody.com/https-certificates/

عند استخدامك لبروتوكول https فأنت تضمن التشفير والمصادقة على هوية الوجهة

لماذا نحتاج إلى التشفير؟

يمرّ اتصالك بالانترنت بالكثير من الشبكات قبل وصوله إلى وجهته، ويمكن لأي منها أن تتنصت على اتصالك بسهولة.

في اتصالٍ يستخدم بروتوكول Http يتم إرسال نص الطلب ونص الإجابة (صفحة الويب مثلًا) كنصٍّ بسيط عاديّ (صفحة HTML كما هي بترميز ASCII) وطبعًا هذا أسرع وأقل كمية بيانات، إلّا أنّ أي شخصٍ يمرّ السلك عنده يُمكنه الاطلاع على المعلومات (تخيل كلمة السر الخاصة بك وبيانات بطاقتك الائتمانيّة معرّضةً للوصول من قبل جميع الشبكات الوسيطة بينك وبين الموقع)

أمن طبقة النقل Transport Layer

لمقدمة سريعة عن الطبقات، https://io.hsoub.com/fast_info/33454

يُطلق على التشفير في هذه الطبقة Transport Layer Security اختصارًا TLS

وهو تشفير هجين (لأنه يستخدم أكثر من نوع من التشفير معًا) هما:

1-Public Key Cryptography: لإنتاج مفاتيح التشفير التي ستُستخدم لاحقُا، (تابع مقطع الفيديو هذا للمزيد https://www.youtube.com/watch?v=3QnD2c4Xovk)

يتم استخدام هذه الطريقة في التشفير مرة و احدة في بداية جلسة الاتصال

2-Symmetric Key Cryptography: لتشفير الرسائل المتبادلة بين الطرفين خلال الجلسة باستخدام طقم تشفير محدد (https://en.wikipedia.org/wiki/Cipher_suite)

المصادقة

أن تتأكّد من أنّ الوجهة هي ما تريد فعلًا وليست أحدًا آخر منتحلًا للشخصية منذ البداية !

فلن يُفيدك التشفير والتحقق من أنّه لا أحد يتنصت على مكالمتك إن كُنت تحادث الجهات المختصة وهي تدّعي بأنها والدتك ;)

الشهادات

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

ملاحظة: يجب أن يكون عنوان الـ IP للموقع ثابتًا static حتى يستفيد من الـشهادة التي تُمنح له، فالهوية تُحدد حسب الـIP وليس حسب اسم الموقع.

والله ولي التوفيق