Wi-Fi Easy Connect

اندروید 10 از پروتکل Wi-Fi Easy Connect که به عنوان پروتکل تأمین دستگاه (DPP) نیز شناخته می شود، پشتیبانی می کند. Wi-Fi Easy Connect توسط Wi-Fi Alliance (WFA) به عنوان جایگزینی برای Wi-Fi Protected Setup (WPS) معرفی شد. WPS در اندروید 9 منسوخ شد.

Wi-Fi Easy Connect یک روش ساده و ایمن برای موارد زیر ارائه می دهد:

  • دستگاه‌های Wi-Fi داخلی (از جمله دستگاه‌های بدون هد) به شبکه بدون وارد کردن رمز عبور.
  • بدون دانستن یا وارد کردن رمز عبور به شبکه های Wi-Fi بپیوندید.

بوت استرپینگ و احراز هویت با استفاده از یک URI پیکربندی می‌شود که با اسکن یک کد QR (با استفاده از دوربین) به دست می‌آید، یا خارج از باند، برای مثال، با استفاده از BLE یا NFC پیکربندی می‌شود.

Wi-Fi Easy Connect از یک کانال رمزگذاری شده برای ارسال اعتبار وای فای بین دستگاه ها استفاده می کند و از آنجایی که از فریم های عمل عمومی استفاده می شود، دستگاه ها می توانند از نقاط دسترسی موجود استفاده کنند.

اندروید 10 از Wi-Fi Easy Connect فقط در حالت آغازگر پشتیبانی می کند (حالت پاسخگو پشتیبانی نمی شود). این حالت های عملیات پشتیبانی می شوند:

  • Initiator-Configurator: اعتبار شبکه را با اسکن کد QR به یک دستگاه جدید ارسال کنید.
  • Initiator-Enrollee: با اسکن کد QR شبکه به یک شبکه بپیوندید.

اندروید 10 از پروتکل کلید مشترک (PSK) برای WPA2 و احراز هویت همزمان پروتکل برابر (SAE) برای WPA3 پشتیبانی می کند.

Wi-Fi Easy Connect فقط در حالت کلاینت پشتیبانی می شود (حالت SoftAP پشتیبانی نمی شود).

پیاده سازی

برای پشتیبانی از Wi-Fi Easy Connect، رابط درخواستی ارائه شده در پروژه منبع باز Android (AOSP) را پیاده سازی کنید. بسته به رابطی که پیاده سازی شده است، این در:

برای پشتیبانی از DPP موارد زیر مورد نیاز است:

  • وصله های هسته لینوکس برای پشتیبانی از DPP:

    • cfg80211
    • nl80211
  • wpa_supplicant با پشتیبانی از DPP

  • درایور Wi-Fi با پشتیبانی از DPP

  • سیستم عامل Wi-Fi با پشتیبانی از DPP

API های عمومی در Android 10 برای استفاده توسط برنامه ها در دسترس هستند:

Wi-Fi Easy Connect را فعال کنید

برای فعال کردن Wi-Fi Easy Connect در چارچوب Android، گزینه کامپایل CONFIG_DPP را در فایل پیکربندی wpa_supplicant ، android.config قرار دهید:

# Easy Connect (Device Provisioning Protocol - DPP)
CONFIG_DPP=y

اعتبار سنجی

برای تست پیاده سازی خود، تست های زیر را اجرا کنید.

تست های واحد

DppManagerTest را اجرا کنید تا رفتار پرچم‌های قابلیت DPP را بررسی کنید.

atest DppManagerTest

تست های VTS

اگر رابط HIDL پیاده سازی شده است، VtsHalWifiSupplicantV1_2TargetTest را برای آزمایش رفتار درخواست کننده HAL v1.2 اجرا کنید.

اگر رابط AIDL پیاده سازی شده است، VtsHalWifiSupplicantStaIfaceTargetTest را برای آزمایش رفتار HAL درخواست کننده اجرا کنید.