חיבור קל ל-Wi-Fi

ב-Android 10 יש תמיכה בפרוטוקול Wi-Fi Easy Connect, שמכונה גם הפרוטוקול להקצאת מכשירים (DPP). Wi-Fi Easy Connect הושק על ידי Wi-Fi Alliance (WFA) כחלופה להגדרה של Wi-Fi Protected (WPS). WPS הוצא משימוש ב-Android 9.

באמצעות Wi-Fi Easy Connect יש שיטה פשוטה ומאובטחת לביצוע הפעולות הבאות:

  • חיבור של מכשירי Wi-Fi (כולל מכשירים ללא GUI) לרשת בלי להזין סיסמה.
  • להצטרף לרשתות Wi-Fi בלי לדעת או להזין את הסיסמה.

אתחול אתחול ואימות מוגדרים באמצעות URI שנוצר על ידי סריקת קוד QR (באמצעות מצלמה) או מוגדרים מחוץ למסגרת, למשל, באמצעות BLE או NFC.

Wi-Fi Easy Connect משתמש בערוץ מוצפן כדי לשלוח פרטי כניסה ל-Wi-Fi בין מכשירים, ובגלל שנעשה שימוש במסגרות של פעולות ציבוריות, המכשירים יכולים להשתמש בנקודות גישה קיימות.

Android 10 תומך ב-Wi-Fi Easy Connect רק במצב הפעלה (אין תמיכה במצב תגובה). מצבי הפעולה הבאים נתמכים:

  • Initiator-Configurator: שליחת פרטי הכניסה של הרשת למכשיר חדש על ידי סריקת קוד ה-QR שלו.
  • יוזם-רושם: אפשר להצטרף לרשת על ידי סריקת קוד ה-QR של הרשת.

Android 10 תומך בפרוטוקול מפתח משותף מראש (PSK) ל-WPA2 ובאימות סימולטני של פרוטוקול שווה (SAE) ל-WPA3.

יש תמיכה ב-Wi-Fi Easy Connect רק במצב לקוח (אין תמיכה במצב SoftAP).

הטמעה

כדי לתמוך ב-Wi-Fi Easy Connect, צריך להטמיע את ממשק הספק שסופק בפרויקט הקוד הפתוח של Android (AOSP). בהתאם לממשק שהוטמע, הכתובת היא:

הרכיבים הבאים נדרשים כדי לתמוך ב-DPP:

  • תיקונים לליבה (kernel) של Linux לתמיכה ב-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

אימות

כדי לבדוק את ההטמעה, מריצים את הבדיקות הבאות.

בדיקות יחידה (unit testing)

מריצים את הפקודה DppManagerTest כדי לאמת את ההתנהגות של דגלי היכולות ב-DPP.

atest DppManagerTest

בדיקות VTS

אם הטמעתם את ממשק HIDL, מריצים את VtsHalWifiSupplicantV1_2TargetTest כדי לבדוק את ההתנהגות של הספק HAL v1.2.

אם מוטמע ממשק AIDL, מריצים את VtsHalWifiSupplicantStaIfaceTargetTest כדי לבדוק את ההתנהגות של ה-HAL של הספק.