التشفير باستخدام TLS والتحقق من الشهادات
احمِ البيانات أثناء النقل وتحقّق من موثوقية الخادم.
التشفير باستخدام TLS والتحقق من الشهادات درس مجاني في Arduino & IoT Academy على CoddyKit. هذا هو الدرس 3 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Arduino & IoT Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Arduino & IoT Academy 4 دروس في المجموع.
لماذا نُشفّر أصلاً؟
تمر البيانات التي تعبر WiFi والإنترنت عبر جهات عديدة. تعمل التشفير على تشويشها بحيث لا يستطيع قراءة قراءاتك إلا الخادم المقصود. 🔒
تعرّف إلى TLS
إن TLS هو الطبقة التي تحوّل HTTP إلى HTTPS. وهو يشفّر القناة بين جهازك والخادم، بحيث لا يرى المتنصتون سوى بيانات مشوشة.
المصافحة
قبل تدفق أي بيانات، يتفق الطرفان على المفاتيح أثناء المصافحة. يثبت هذا الإعداد هوية الخادم ويثبت سراً مشتركاً.
ما الذي تثبته الشهادة؟
يقدم الخادم شهادة موقعة من جهة موثوقة. وتثبت أن الخادم هو فعلاً الجهة التي يدّعي أنه يمثلها، وليس جهة منتحلة.
التشفير من دون التحقق
التشفير مع تخطي عمليات التحقق أمر خطير. فمن دون التحقق، يمكن لمهاجم التمركز بين الطرفين وامتلاك المفاتيح وقراءة كل شيء.
الرجل في المنتصف
ينتحل هجوم الرجل في المنتصف شخصية الخادم ويمرر بياناتك. ويُعد التحقق من الشهادة تحديداً ما يوقف هذا الهجوم تماماً.
استخدم WiFiClientSecure
يتولى WiFiClientSecure على ESP32 إدارة اتصالات TLS. وهو النظير الآمن للعميل العادي الذي استخدمته مع HTTP.
#include <WiFiClientSecure.h>
WiFiClientSecure client;ثبّت المرجع CA الجذر
زوّد جهازك بـشهادة الجذر الخاصة بالخادم حتى يتمكن من التحقق من الثقة. وتُعرّف وحدة CA المثبّتة اللوحة بأن الخادم أصلي.
client.setCACert(root_ca); // verify the server against this trusted CAلا تتخطَّ التحقق مطلقاً
يؤدي استدعاء setInsecure إلى إيقاف جميع عمليات التحقق. يناسب setInsecure اختباراً سريعاً، لكن يجب ألا يصل مطلقاً إلى منتج مُشحن.
client.setInsecure(); // DANGER: trusts any server, use only for testingللشهادات مدة صلاحية
لكل شهادة تاريخ انتهاء، ولذلك يحتاج التحقق إلى الوقت الصحيح. وقد يرفض جهاز تضبط ساعته على وقت خاطئ خادماً صالحاً بشكل غير صحيح.
شفّر MQTT أيضاً
لا يقتصر TLS على HTTPS. وجّه عميل MQTT إلى منفذ وسيط TLS مثل 8883 لحماية رسائل النشر/الاشتراك بالطريقة نفسها.
تحقق سريع
التشفير وحده غير كافٍ. ما الأمر الآخر المهم؟
مراجعة
يشفّر TLS حركة البيانات، وتثبت الشهادات الهوية. استخدم WiFiClientSecure، وثبّت CA موثوقاً، واضبط الساعة بشكل صحيح، ولا تشحن المنتج مع setInsecure مطلقاً. 🛡️
تعلم C++ مع معلم ذكاء اصطناعي — مجانًا
اكتب وقم بتشغيل أكوادك الفعلية في المتصفح، واحصل على مساعدة فورية من معلم ذكاء اصطناعي متاح 24/7، واستمر من حيث توقفت على الويب أو في التطبيق.
- الدورات
- 30
- الدروس
- 120
الأسئلة الشائعة
هل درس «التشفير باستخدام TLS والتحقق من الشهادات» مجاني؟
نعم — نص درس «التشفير باستخدام TLS والتحقق من الشهادات» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Arduino & IoT Academy، انتقل إلى CoddyKit PRO. تتضمن دورة Arduino & IoT Academy 4 دروس في المجموع.
ماذا ستتعلم في «التشفير باستخدام TLS والتحقق من الشهادات»؟
احمِ البيانات أثناء النقل وتحقّق من موثوقية الخادم. تتمرن على Arduino & IoT Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ Arduino & IoT Academy؟
لا تُشترط خبرة سابقة. Arduino & IoT Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 3 من أصل 4.
كم من الوقت يستغرق درس «التشفير باستخدام TLS والتحقق من الشهادات»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس Arduino & IoT Academy هذا؟
نعم. كل درس في Arduino & IoT Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- منافذ الهجوم الشائعة في إنترنت الأشياء
- إبعاد الأسرار عن الكود
- التشفير باستخدام TLS والتحقق من الشهادات
- توقيع البرنامج الثابت وتأمينه