طَبِّقْهاتعلّم المبدأ، وطبّقه بيدكمقرر 243 · أمن الويب
الدرس 23 · الوحدة 10: تقنيات التشفير

التشفير المتماثل وغير المتماثل

مفتاح واحد أم زوج؟ ولماذا يجمع TLS بينهما؟ ⏱ نحو 40 دقيقة.

بعد هذا الدرس ستستطيع أن:
  • تميّز التشفير المتماثل من غير المتماثل.
  • تشرح مشكلة تبادل المفاتيح وحلّها.
  • تصف التشفير الهجين في TLS.
  • تختار النوع المناسب لكل حالة ولا تخترع تشفيرك.

١المتماثل: مفتاح واحد

التشفير المتماثل Symmetric يستخدم مفتاحًا واحدًا للتشفير والفكّ. سريع وقوي، مناسب لتشفير كميات كبيرة من البيانات. أشهر خوارزمياته AES:

مفتاح واحد

المفتاح نفسه

نص صريح

تشفير

نص مشفّر

فكّ

نص صريح

المفتاح نفسه يشفّر ويفكّ.
const crypto = require('crypto');const key = crypto.randomBytes(32);           // 256 بتconst iv = crypto.randomBytes(12);const c = crypto.createCipheriv('aes-256-gcm', key, iv);const enc = Buffer.concat([c.update('بيانات حسّاسة', 'utf8'), c.final()]);const tag = c.getAuthTag();                    // GCM يضيف سلامة أيضًا// الفكّ يحتاج المفتاح نفسه و iv و tag

مشكلته الوحيدة: كيف يتفق الطرفان على المفتاح سرًّا دون أن يعترضه أحد؟ هذه مشكلة تبادل المفاتيح.

٢غير المتماثل: زوج مفاتيح

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

المفتاح العام

المفتاح الخاص

نص صريح

تشفير

نص مشفّر

فكّ

نص صريح

المفتاح العام يشفّر، والخاص وحده يفكّ.
المتماثلغير المتماثل
المفاتيحمفتاح واحد مشتركزوج: عام وخاص
السرعةسريع (للبيانات الكبيرة)بطيء (للبيانات الصغيرة)
المشكلة المحلولةالتشفير السريعتبادل المفاتيح والتوقيع
مثالAESRSA، ECC

وله استخدام ثانٍ مهم معكوس: ما يشفّره الخاص يتحقق منه العام — وهذا أساس التوقيع الرقمي (الدرس القادم).

٣الأفضل: التشفير الهجين

المتماثل سريع لكن تبادل مفتاحه صعب؛ وغير المتماثل يحلّ التبادل لكنه بطيء. الحل الذي يستخدمه TLS (ومعظم الأنظمة) هو الهجين: نجمع قوّتيهما:

الخطوةالنوع
1. تبادل مفتاح جلسة عشوائيغير متماثل (أو تبادل مفاتيح)
2. تشفير كل البيانات بمفتاح الجلسةمتماثل (سريع)

القاعدة العملية: لا تخترع تشفيرك. استخدم مكتبات ومعايير مجرَّبة (AES-GCM، TLS حديث)، فأخطاء التشفير اليدوي دقيقة وكارثية.

توقّع وتحقّق

التشفير المتماثل يستخدم:

يحلّ غير المتماثل مشكلة:

TLS يستخدم:

القاعدة الذهبية في التشفير:

الخلاصة

تحدٍّ تصميمي: اختر التشفير المناسب

متوسط

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

المطلوب:
  • (أ) تشفير قاعدة بيانات كبيرة من ملفات العملاء على القرص.
  • (ب) تأمين الاتصال بين متصفح العميل والمتجر.
  • (ج) السماح لأي شريك بإرسال بيانات مشفّرة لا يفكّها إلا المتجر.
  • لكل حالة: النوع ثم السبب في سطر.
✓ التحقق الآلي: يفحص المختبر بنية مستندك وصياغته (لا يحكم على جودة الفكرة؛ هذا دور معلمك)
  • (أ) متماثل
  • (ب) هجين أو TLS
  • (ج) غير متماثل
  • (ج) السبب: المفتاح العام

💡 تلميح 1
البيانات الكبيرة على القرص: متماثل (AES) سريع.
💡 تلميح 2
اتصال المتصفح: هجين (TLS) يجمع الاثنين.
💡 تلميح 3
استقبال من شركاء بلا سرّ مشترك: غير متماثل بنشر المفتاح العام.

نموذج واحد من إجابات كثيرة صحيحة.

(أ) تشفير قرص كبير
متماثل (AES): سريع وقوي للبيانات الكبيرة، والمفتاح يبقى في الخادم دون حاجة لتبادله.
(ب) اتصال المتصفح بالمتجر
هجين (TLS): غير متماثل للاتفاق على مفتاح جلسة، ثم متماثل سريع لتشفير كل التصفّح.
(ج) شركاء يرسلون بلا سرّ مشترك
غير متماثل: ينشر المتجر مفتاحه العام للشركاء ليشفّروا به، ولا يفكّ إلا بمفتاحه الخاص، دون سرّ مشترك مسبق.
انتقل إلى تقييم الدرساختيار من متعدد، وصح وخطأ، وأكمل الفراغ، وتتبّع الناتج.ابدأ التقييم ←

📝 معلم؟ أرسل ملاحظة للمؤلف عن هذا الدرس