Поделиться через


Проверка подлинности WIFiCx WPA3-SAE

WiFiCx поддерживает WPA3-SAE, также известный как WPA3-Personal. Создание содержимого кадра и синтаксический анализ для проверки подлинности SAE (безопасная проверка подлинности равных) выполняется в Windows, но ос требует поддержки драйверов для отправки и получения кадров проверки подлинности WPA3-SAE.

Возможности WPA3-SAE

Драйверы WiFiCx указывают на поддержку SAE, выполнив следующие действия:

  1. Задайте поддерживаемую функцию SAE.
    Драйвер задает возможность SAEAuthenticationSupported в WIFI_DEVICE_CAPABILITIES во время вызова WifiDeviceSetDeviceCapabilities.

  2. Задайте возможность MFP.
    Драйвер задает возможность MFPCapable в WIFI_STATION_CAPABILITIES во время вызова WifiDeviceSetStationCapabilities.

  3. Добавьте шифр WDI_AUTH_ALGO_WPA3_SAE.
    Драйвер включает пару WDI_AUTH_ALGO_WPA3_SAE + DOT11_CIPHER_ALGO_CCMP в списке сочетаний auth-шифров, возвращенных в вызове WifiDeviceSetStationCapabilities. Это должно быть добавлено в следующую структуру:

    Драйвер также включает пару WDI_AUTH_ALGO_WPA3_SAE + WDI_CIPHER_ALGO_BI в списке сочетаний аутентификации и шифров, возвращаемых в вызове WifiDeviceSetStationCapabilities. Его следует добавить в следующую структуру:

Поток проверки подлинности WPA3-SAE

запуск Подключение

Подключения SAE инициируются с помощью OID_WDI_TASK_CONNECT или OID_WDI_TASK_ROAM. WDI указывает WDI_AUTH_ALGO_WPA3_SAE в качестве метода проверки подлинности, если драйверу требуется выполнить проверку подлинности SAE. Если WDI предоставляет PMKID в списке BSS в задаче Подключение/Roam, драйвер пропускает проверку подлинности SAE и выполняет открытую проверку подлинности, а затем запрос на повторное связывание с PMKID.

Поток аутентификации

Схема, показывающая поток проверки подлинности WPA3-SAE.

Первоначальный запрос параметров SAE

Драйвер сначала выбирает BSS, к которому необходимо подключиться или перемещаться, и, если WDI не предоставил PMKID для этого BSS, драйвер запрашивает параметры фиксации из WDI с NDIS_STATUS_WDI_INDICATION_SAE_AUTH_PARAMS_NEEDED. В этом начальном указании драйвер задает тип указания для WDI_SAE_INDICATION_TYPE_COMMIT_REQUEST_PARAMS_NEEDED. В ответ WDI отправляет OID_WDI_SET_SAE_AUTH_PARAMS драйверу с одним из следующих параметров.

  • Отправка запроса фиксации (WDI_SAE_REQUEST_TYPE_COMMIT_PARAMS)
  • Сбой проверки подлинности SAE (WDI_SAE_REQUEST_TYPE_FAILURE)

После получения ответа "Фиксация"

При получении ответа "Фиксация" драйвер отправляет NDIS_STATUS_WDI_INDICATION_SAE_AUTH_PARAMS_NEEDED с заданным типом WDI_SAE_INDICATION_TYPE_COMMIT_FRAME. В ответ WDI отправляет OID_WDI_SET_SAE_AUTH_PARAMS с одним из следующих запросов:

  • Отправка запроса фиксации (WDI_SAE_REQUEST_TYPE_COMMIT_PARAMS)
  • Отправка запроса подтверждения (WDI_SAE_REQUEST_TYPE_CONFIRM_PARAMS)
  • Сбой проверки подлинности SAE (WDI_SAE_REQUEST_TYPE_FAILURE)

После получения ответа "Подтверждение"

При получении ответа "Подтверждение" драйвер отправляет NDIS_STATUS_WDI_INDICATION_SAE_AUTH_PARAMS_NEEDED с заданным типом WDI_SAE_INDICATION_TYPE_CONFIRM_FRAME. Затем WDI отправляет OID_WDI_SET_SAE_AUTH_PARAMS с полем состояния SAE, установленным для успешного выполнения или сбоя. Если проверка подлинности SAE завершается ошибкой в драйвере из-за времени ожидания или других причин, драйвер отправляет NDIS_STATUS_WDI_INDICATION_SAE_AUTH_PARAMS_NEEDED указание с типом, заданным для WDI_SAE_INDICATION_TYPE_ERROR , и причиной сбоя, указанной в WDI_TLV_SAE_STATUS.

Время ожидания и повторная передача

Они обрабатываются драйвером.

Связь WPA3-SAE

Устройство подключается к сети SAE с помощью одного из следующих параметров.

(Re) Ассоциация после обмена SAE

Обычно это первая попытка ассоциации к сети SAE. Драйвер задает AKM SAE в RSN IE в кадре запроса ассоциации.

(Re) Сопоставление с помощью PMKID

Если WDI предоставил PMKID для записи BSS в задаче подключения или роуминга, драйвер выполняет следующее:

  1. Драйвер выполняет открытую проверку подлинности, за которой следует включить PMKID в запрос на связь (Re).
  2. Если устройство не получает ответ от AP в течение короткого времени или если AP возвращает ошибку сопоставления в ответе, драйвер пропускает проверку подлинности SE с помощью этого AP и либо переходит к другому API, либо возвращается к выполнению полной проверки подлинности SAE с помощью этого AP.

Подключение SAE завершается после завершения проверки подлинности или связи SAE. Как и раньше, драйвер отправляет следующие указания по выводу задачи подключения или роуминга:

Обработка ошибок

Повторная отправка кадра запроса фиксации SAE

Если драйверу необходимо повторно отправить кадр фиксации из-за времени ожидания, он может повторно отправить исходные значения Scalar/Element, предоставляемые WDI, или запросить новый набор значений Scalar/Element из WDI с указанием NDIS_STATUS_WDI_INDICATION_SAE_AUTH_PARAMS_NEEDED .

Повторная отправка кадра ответа SAE Confirm

Если драйверу необходимо повторно отправить кадр подтверждения из-за времени ожидания, он должен запросить новый набор значений SendConfirm и Подтвердить значения из WDI с указанием NDIS_STATUS_WDI_INDICATION_SAE_AUTH_PARAMS_NEEDED, указав тип WDI_SAE_INDICATION_TYPE_CONFIRM_REQUEST_RESEND_REQUEST.

Изменения проверки подлинности SAE Wi-Fi 7

Сведения о обновлениях проверки подлинности SAE Wi-Fi 7 см. в статье о требованиях к функциям Wi-Fi 7.