بالنسبة إلى الأجهزة التي تعمل بالإصدار 13 من نظام التشغيل Android أو الإصدارات الأحدث، يتوافق Android مع نهج المصادقة "الثقة عند الاستخدام الأول" (TOFU) (RFC7435)، الذي يتيح للمستخدمين الوثوق بشبكة مؤسسة (EAP) من خلال تثبيت هيئة إصدار الشهادات الجذر التي يستخدمها الخادم وضبط اسم نطاقها في شبكة محفوظة. تسمح تقنية TOFU للجهاز بالحصول على مفتاح عام غير موثَّق عندما يتصل مستخدم لأول مرة بشبكة مؤسسة والاحتفاظ بالمفتاح للاتصالات اللاحقة.
خلفية
مقارنةً بالشبكات الشخصية التي تتطلّب إدخال كلمة مرور فقط، تستخدم شبكات المؤسسات مصادقة البنية الأساسية للمفتاح العام (PKI)، ما يتطلّب من العميل تثبيت الشهادات مسبقًا. في Android 11 أو الإصدارات الأقدم، يمكن للمستخدمين اختيار الخيار عدم التحقّق من الصحة لشهادة مرجع تصديق الخادم في إعدادات الشبكة، متجاوزين عملية التحقّق من صحة الشهادة من جهة الخادم. ومع ذلك، لتعزيز الأمان والامتثال لمواصفات WPA R2، أدخل نظام التشغيل Android 12 متطلبًا لشبكات المؤسسات يقضي بإجراء عملية التحقّق من شهادة الخادم. وقد شكّل هذا المتطلّب الإضافي عائقًا أمام المستخدمين لأنّهم يحتاجون إلى تثبيت شهادة CA لهذه الشبكات. توفّر تقنية TOFU طريقة للمستخدمين للاتصال بشبكة تابعة لمؤسسة تستند إلى PKI من خلال قبول هيئة إصدار الشهادات الجذرية لها.
سلوك الميزة
تعرض الأجهزة المتوافقة مع ميزة TOFU السلوك التالي عندما يتصل مستخدم بشبكة مؤسسة لا تتضمّن مفتاحًا عامًا تم تثبيته مصادق عليه.
الاتصال بشبكة جديدة من خلال أداة اختيار Wi-Fi
اختَر شبكة مؤسسة جديدة في أداة اختيار Wi-Fi.
يعرض الجهاز مربّع حوار (الشكل 1) لتأكيد ما إذا كانت الشبكة موثوقة.
انقر على نعم، اتّصل لقبول الاتصال بالشبكة، أو انقر على لا، لا اتّصل لرفض الاتصال.
إذا نقرت على نعم، الاتصال، سيضبط الجهاز تلقائيًا مَعلمات الأمان ويتصل بالشبكة ويفعِّل ميزة "الاتصال تلقائيًا" للشبكة.
في حال النقر على لا، لا أريد الاتصال، سيتم قطع اتصال الجهاز بالشبكة ويُوقف الاتصال التلقائي بالشبكة.
الشكل 1: مربّع حوار لميزة TOFU
الاتصال بالشبكة الحالية مع تفعيل ميزة "الاتصال التلقائي"
عند الاتصال بشبكة مؤسسة تم تفعيل ميزة "الاتصال التلقائي" فيها ولكن لا تتضمّن شهادة هيئة إصدار مصدق صالحة، يتصل الجهاز تلقائيًا ثم يعرض إشعارًا ثابتًا (لا يمكن إغلاقه).
انقر على الإشعار.
يعرض الجهاز مربّع حوار (الشكل 1) لتأكيد ما إذا كانت الشبكة موثوقة.
انقر على نعم، اتّصل لقبول الاتصال بالشبكة، أو انقر على لا، لا اتّصل لرفض الاتصال.
إذا نقرت على نعم، الاتصال، سيضبط الجهاز تلقائيًا مَعلمات الأمان ويتصل بالشبكة ويفعِّل ميزة "الاتصال تلقائيًا" للشبكة.
في حال النقر على لا، لا أريد الاتصال، سيتم قطع اتصال الجهاز بالشبكة ويُوقف الاتصال التلقائي بالشبكة.
التنفيذ
لتفعيل ميزة TOFU، يجب تنفيذ واجهات برمجة التطبيقات لنظام HAL الخاصة بطلب البيانات المقدَّمة في
"المشروع المفتوح المصدر لنظام Android" (AOSP) على الرابط
/hardware/interfaces/wifi/supplicant/aidl/android/hardware/wifi/supplicant
.
تتوفّر واجهات برمجة التطبيقات العامة التالية في Android 13 لاستخدامها من قِبل التطبيقات:
-
WifiManager#isTrustOnFirstUseSupported()
: يشير إلى ما إذا كان الجهاز متوافقًا مع ميزة TOFU. -
WifiEnterpriseConfig#enableTrustOnFirstUse(boolean)
: تفعيل ميزة TOFU -
WifiEnterpriseConfig#isTrustOnFirstUseEnabled()
: يشير إلى ما إذا كان وضع TOFU مفعّلاً.
التحقُّق
للتحقّق من صحة تنفيذ TOFU على جهازك، استخدِم الاختبارات التالية:
- CTS:
CtsWifiTestCases
- VTS:
VtsHalWifiSupplicantStaNetworkTargetTest