طبقة سجلات TLS ومجموعات الشيفرات
افهم تجزئة السجلات وتشفير AEAD واختيار الشيفرة
طبقة سجلات TLS ومجموعات الشيفرات درس مجاني في Cryptology Academy على CoddyKit. هذا هو الدرس 2 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Cryptology Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Cryptology Academy 4 دروس في المجموع.
نظرة عامة على طبقة السجل
طبقة سجل TLS هي الطبقة الفرعية للنقل في TLS. وهي تقسّم البيانات إلى سجلات يصل حجمها إلى 16 كيلوبايت، وتضغطها اختياريًا (في TLS 1.2 فقط)، وتشفّرها باستخدام AEAD، ثم تضيف ترويسة بطول 5 بايتات.
حقول ترويسة السجل
البايت 0: ContentType (20=ChangeCipherSpec، 21=Alert، 22=Handshake، 23=ApplicationData). البايتان 1-2: الإصدار القديم (0x0303 للتوافق مع TLS 1.2). البايتان 3-4: طول الحمولة التالية.
تشفير AEAD في السجلات
في TLS 1.3، يُشفَّر كل سجل باستخدام AEAD (مثل AES-GCM). ويُشتق nonce عبر إجراء XOR بين رقم التسلسل الضمني وtraffic IV. أما AAD فهي ترويسة السجل ذات 5 بايتات. وتُلحَق علامة المصادقة.
تسمية مجموعة الشفرات
TLS_AES_128_GCM_SHA256 = تبادل المفاتيح (ECDHE ضمني في TLS 1.3) + AES-128-GCM (AEAD) + SHA-256 (من أجل HKDF). أما في TLS 1.2، فتسمّي TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 جميع المكونات صراحةً.
مجموعات الشفرات المهجورة
يحظر TLS 1.3 ما يلي: RC4 (مجرى مفاتيح منحاز)، و3DES (هجوم الالتقاء من المنتصف وSweet32)، ونمط CBC (BEAST وLucky13 وPOODLE)، والتشفير NULL، والشفرات بدرجة التصدير (40 بتًا)، واستخدام MD5/SHA-1 في PRF. ولم تبقَ إلا مجموعات AEAD.
تجزئة السجلات
تُقسَّم سجلات TLS الكبيرة إلى أجزاء لا يتجاوز حجم كل منها ≤16 KB. ويُشفَّر كل جزء بصورة مستقلة. ويعيد الطرف المستقبِل تجميع السجلات قبل تمريرها إلى طبقة التطبيق. ولا تحمل حدود التجزئة أي دلالة معنوية.
بروتوكول التنبيهات
تُرسَل التنبيهات كسجلات TLS مع ContentType=21. وتتكون من بايتين: المستوى (1=warning، 2=fatal) + الوصف (0=close_notify، 40=handshake_failure، 42=bad_certificate، 70=protocol_version). وتُنهي التنبيهات القاتلة الاتصال.
Nonce رقم التسلسل
يبدأ رقم التسلسل الخاص بكل سجل من 0 ويزداد بمقدار 1. ويُمدَّد إلى طول IV (12 بايتًا في GCM)، ثم يُجرى XOR بينه وبين IV لحركة المرور. ويمنع ذلك إعادة استخدام nonce بين السجلات من دون إرسال nonce صراحةً.
اختيار مجموعة التشفير
يُفضَّل استخدام TLS_AES_256_GCM_SHA384 لأمان بمستوى 256 بت. استخدموا TLS_CHACHA20_POLY1305_SHA256 للأجهزة المحمولة أو المضمنة التي لا تتوفر فيها AES-NI. وتجنبوا مجموعات التشفير ذات 128 بت للبيانات شديدة الحساسية وطويلة الأجل.
DTLS: TLS عبر UDP
يكيّف DTLS (RFC 6347) بروتوكول TLS للعمل عبر UDP. ويضيف أرقام تسلسل إلى ترويسات السجلات، ويتعامل مع إعادة الترتيب، ويستخدم مصافحة قائمة على cookie لمنع هجمات DoS. ويُستخدم في WebRTC وشبكات VPN وبروتوكولات IoT.
فحص السجلات باستخدام Python
استخدموا الوحدة ssl أو scapy لالتقاط سجلات TLS. عند ضبط SSLKEYLOGFILE، يفك Wireshark تشفير السجلات تلقائيًا. وتفك Python's ssl.SSLSocket.read() التشفير بشفافية في طبقة التطبيق.
تحقق سريع
ممَّ تحمي قيمة رقم التسلسل في تشفير سجلات TLS 1.3؟
مراجعة
لقد فهمتم بنية سجلات TLS وتشفير AEAD واشتقاق nonce واختيار مجموعة التشفير. والخطوة التالية هي التعرّف إلى كيفية تحقّق TLS من شهادات الخادم أثناء المصافحة.
الأسئلة الشائعة
هل درس «طبقة سجلات TLS ومجموعات الشيفرات» مجاني؟
نعم — نص درس «طبقة سجلات TLS ومجموعات الشيفرات» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Cryptology Academy، انتقل إلى CoddyKit PRO. تتضمن دورة Cryptology Academy 4 دروس في المجموع.
ماذا ستتعلم في «طبقة سجلات TLS ومجموعات الشيفرات»؟
افهم تجزئة السجلات وتشفير AEAD واختيار الشيفرة تتمرن على Cryptology Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ Cryptology Academy؟
لا تُشترط خبرة سابقة. Cryptology Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 2 من أصل 4.
كم من الوقت يستغرق درس «طبقة سجلات TLS ومجموعات الشيفرات»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس Cryptology Academy هذا؟
نعم. كل درس في Cryptology Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- مصافحة TLS 1.3 خطوة بخطوة
- طبقة سجلات TLS ومجموعات الشيفرات
- التحقق من الشهادات في TLS
- هجمات TLS: BEAST وPOODLE وخفض الإصدار