0Pricing
Cryptology Academy · درس

مصافحة TLS 1.3 خطوة بخطوة

تتبّع ClientHello وServerHello واشتقاق المفاتيح وFinished

مصافحة TLS 1.3 خطوة بخطوة درس مجاني في Cryptology Academy على CoddyKit. هذا هو الدرس 1 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Cryptology Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Cryptology Academy 4 دروس في المجموع.

لماذا TLS؟

يحمي TLS (أمان طبقة النقل) البيانات أثناء انتقالها عبر الإنترنت. ويستخدم كل اتصال HTTPS بروتوكول TLS. وقد ألغى TLS 1.3، المعياري في RFC 8446 (2018)، الخوارزميات القديمة وخفّض عدد جولات تبادل المصافحة من جولتين إلى جولة واحدة.

ClientHello

يرسل العميل: إصدار TLS ‏(1.3)، وnonce عشوائيًا بطول 32 بايتًا، وقائمة بمجموعات الشفرات المدعومة (مثل TLS_AES_256_GCM_SHA384)، وامتدادات مشاركة المفاتيح التي تحتوي على مفاتيح ECDH العامة للمجموعات المدعومة (X25519 وP-256).

ServerHello

يختار الخادم مجموعة شفرات ومجموعة مشاركة مفاتيح، وينشئ زوج مفاتيح ECDH مؤقتًا خاصًا به، ثم يرد بمفتاحه العام. وفي هذه المرحلة يستطيع الطرفان حساب السر المشترك باستخدام ECDH.

اشتقاق المفاتيح عبر HKDF

يستخدم TLS 1.3 ‏HKDF (دالة اشتقاق المفاتيح المعتمدة على HMAC) وفق جدول اشتقاق: السر المبكر ← سر المصافحة ← السر الرئيسي. وتشتق كل مرحلة مفاتيح منفصلة لحركة مصافحة العميل/الخادم وبيانات التطبيق.

رسالة Server Finished

يرسل الخادم Certificate وCertificateVerify (توقيعًا على سجل المصافحة باستخدام مفتاحه الخاص) وFinished (قيمة HMAC على سجل المصافحة). وتكون جميعها مشفّرة باستخدام مفتاح حركة المصافحة.

رسالة Client Finished

يتحقق العميل من سلسلة الشهادة، ويفحص توقيع CertificateVerify، ويتحقق من MAC الخاص بـ Finished، ثم يرسل رسالة Finished الخاصة به. وتكتمل المصافحة الآن في جولة واحدة لتبادل البيانات (1-RTT).

الاستئناف عبر 0-RTT

يدعم TLS 1.3 الاستئناف عبر 0-RTT (صفر من جولات تبادل البيانات) باستخدام مفتاح مشترك مسبقًا (PSK) من جلسة سابقة. ويمكن للعميل إرسال بيانات التطبيق فورًا، لكن بيانات 0-RTT تفتقر إلى الحماية من إعادة الإرسال، ولذلك ينبغي أن تكون قابلة للتنفيذ المتكرر بأمان.

مجموعات شفرات TLS 1.3

يفرض TLS 1.3 استخدام شفرات AEAD فقط: AES-128-GCM-SHA256 وAES-256-GCM-SHA384 وChaCha20-Poly1305-SHA256. وتستخدم جميعها ECDHE أو DHE لتبادل المفاتيح. أما مجموعات الشفرات الضعيفة (RC4 و3DES وCBC) فقد أُزيلت.

طبقة السجل

بعد المصافحة، تُغلّف جميع البيانات في سجلات TLS: ترويسة بطول 5 بايتات (نوع المحتوى والإصدار والطول) + حمولة مشفّرة باستخدام AEAD. ويكون رقم التسلسل ضمنيًا، ويُستخدم جزءًا من nonce الخاص بـ AEAD لمنع إعادة الإرسال.

السرية الأمامية

بما أن TLS 1.3 يستخدم دائمًا تبادل مفاتيح مؤقتًا (ECDHE)، فإن اختراق المفتاح الخاص طويل الأمد للخادم لا يتيح فك تشفير الجلسات السابقة. ولكل جلسة زوج مفاتيح مؤقت فريد يُتلف بعد المصافحة.

العرض في Wireshark

في Wireshark: يعرض ClientHello القيمة العشوائية وkey_share، ويعرض ServerHello المجموعة المختارة، بينما تظهر السجلات اللاحقة على أنها "Application Data" (مشفّرة). اضبطوا SSLKEYLOGFILE لفك التشفير باستخدام مفاتيح الجلسة.

تحقق سريع

كم جولة لتبادل البيانات تتطلبها مصافحة TLS 1.3 الكاملة؟

مراجعة

يجمع TLS 1.3 بين ECDHE وHKDF وشفرات AEAD والمصادقة المعتمدة على الشهادات في مصافحة من جولة واحدة لتبادل البيانات، مع فرض السرية الأمامية. التالي: طبقة سجل TLS ومجموعات الشفرات بالتفصيل.

الأسئلة الشائعة

هل درس «مصافحة TLS 1.3 خطوة بخطوة» مجاني؟

نعم — نص درس «مصافحة TLS 1.3 خطوة بخطوة» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Cryptology Academy، انتقل إلى CoddyKit PRO. تتضمن دورة Cryptology Academy 4 دروس في المجموع.

ماذا ستتعلم في «مصافحة TLS 1.3 خطوة بخطوة»؟

تتبّع ClientHello وServerHello واشتقاق المفاتيح وFinished تتمرن على Cryptology Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

هل أحتاج إلى خبرة سابقة لأبدأ Cryptology Academy؟

لا تُشترط خبرة سابقة. Cryptology Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 1 من أصل 4.

كم من الوقت يستغرق درس «مصافحة TLS 1.3 خطوة بخطوة»؟

معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.

هل يمكنني كتابة وتشغيل أكواد في درس Cryptology Academy هذا؟

نعم. كل درس في Cryptology Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.

جميع الدروس في هذه الدورة

  1. مصافحة TLS 1.3 خطوة بخطوة
  2. طبقة سجلات TLS ومجموعات الشيفرات
  3. التحقق من الشهادات في TLS
  4. هجمات TLS: BEAST وPOODLE وخفض الإصدار
← العودة إلى Cryptology Academy