الـ Encryption: Symmetric و Asymmetric و HTTPS

جارٍ التحميل…

01 / ملخص الدرس

الـ Encryption: Symmetric و Asymmetric و HTTPS

الفرق بين Encoding و Hashing و Encryption، والـ Symmetric والـ Asymmetric، والـ Public و Private Key، و HTTPS بيحمينا إزاي.

02 / شرح الدرس مكتوبًا

نص شرح المعلم والكود الذي كتبه ونتيجة تشغيله، بنفس ترتيب الدرس.

أهلاً بيك. الـ Hashing مابيرجعش. بس ساعات إحنا محتاجين نخبّي البيانات، وبعدين نرجّعها تاني… زي رسالة بتبعتها لصاحبك. وده شغل الـ Encryption.

قبل ما نكمّل، نفرّق بين تلات حاجات بيتلخبطوا دايماً: Encoding، شكل تاني، أي حد يفكّه. Hashing، بصمة، مابترجعش. Encryption، قِفل، مابيفتحش غير بالـ key الصح.

أول نوع: Symmetric Encryption. نفس الـ key بيِقْفِل وبيفتح. زي باب البيت: نفس الـ key اللي قَفَلت بيه، تفتح بيه. وأشهر خوارزمية فيه اسمها AES. نجرب فكرة بسيطة بـ Python اسمها XOR. مش حماية حقيقية، بس بتوريك الفكرة: نفس الـ key بيِقْفِل وبيفتح. نشغّل… السطر الأول متلخبط، والتاني رجع زي ما هو.

main.py
def xor(data, key):
    return bytes(b ^ key for b in data)

secret = xor(b"meet at 5", 42)
print(secret)
print(xor(secret, 42))

المخرجات

b'GOO^\nK^\n\x1f'
b'meet at 5'

تاني نوع: Asymmetric Encryption. هنا فيه اتنين keys. Public Key، تديه لأي حد، وبيِقْفِل بس. Private Key، معاك إنت بس، وهو اللي بيفتح. زي صندوق البوستة: أي حد يحط جواب، بس إنت بس اللي معاك الـ key بتاعه.

و HTTPS بيجمع الاتنين. في الأول، المتصفح والـ server بيستخدموا Asymmetric علشان يتفقوا على key سري. وبعدها كل الكلام بيِتْقِفِل بـ Symmetric لأنه أسرع. والـ Certificate بيتأكد إنك بتكلّم الموقع الحقيقي، مش موقع مزيّف. ولو موقع شغال HTTP من غير S… أي حد على نفس الشبكة، زي واي فاي كافيه، يقدر يقرا الـ password وهو رايح. وده هجوم اسمه Man in the Middle. دورك: غيّر الـ key من اتنين وأربعين لسبعة، وشغّل. وبعدين جرّب تفك بـ key غلط وشوف هيطلع إيه.

تمرين

غيّر الـ key لـ 7، وجرّب xor(secret, 8).

الحل: الـ key الغلط بيطلّع كلام ملهوش معنى. نشغّل…

main.py
def xor(data, key):
    return bytes(b ^ key for b in data)

secret = xor(b"meet at 5", 7)
print(xor(secret, 7))
print(xor(secret, 8))

المخرجات

b'meet at 5'
b'bjj{/n{/:'

كده خلّصنا مفاهيم الحماية. الدرس الجاي نبدأ أهم جزء في الكورس… نتعلم نفكر زي المهاجم. يلا بينا.

03 / دروس المسار (23)
  1. 01أهلاً بيك — يعني إيه أمن سيبراني؟
  2. 02الكمبيوتر بيشتغل إزاي من جُوّه؟
  3. 03نظام التشغيل: المدير اللي بيدير كل حاجة
  4. 04الملفات والـ Users والصلاحيات
  5. 05صفر وواحد: Binary و Hex و Encoding
  6. 06الشبكات والـ IP Address
  7. 07الـ Ports والـ Protocols
  8. 08الـ DNS والـ HTTP: إزاي الموقع بيفتح؟
  9. 09تطبيق الويب: Client و Server و Database
  10. 10مفاهيم الحماية: CIA Triad
  11. 11Vulnerability و Threat و Risk
  12. 12Authentication و Authorization
  13. 13Least Privilege و Defense in Depth
  14. 14الـ Hashing: إزاي نحفَظ الباسورد صح
  15. 15الـ Encryption: Symmetric و Asymmetric و HTTPSانت هنا
  16. 16تفكير المهاجم: الثقة والمدخلات
  17. 17الـ Attack Surface والـ Attack Vectors
  18. 18الـ Social Engineering والـ Phishing
  19. 19أنواع المهاجمين، والأخلاق، والقانون
  20. 20أنواع الاختبار والـ Scope والـ Rules of Engagement
  21. 21مراحل اختبار الاختراق
  22. 22جهّز الـ Lab بتاعك
  23. 23مراجعة نهائية: سيناريو كامل، وإنت رايح فين