Проверка подлинности WiFiCx WPA3-SAE
WiFiCx поддерживает WPA3-SAE, также известный как WPA3-Personal. Создание и анализ содержимого кадра для проверки подлинности SAE (secure Authentication of Equals) выполняется в Windows, но ОС требует поддержки драйверов для отправки и получения кадров проверки подлинности WPA3-SAE.
Возможности WPA3-SAE
Драйверы WiFiCx указывают на поддержку SAE следующим образом:
Задайте поддерживаемые возможности SAE.
Драйвер задает возможность SAEAuthenticationSupported в WIFI_DEVICE_CAPABILITIES во время вызова WifiDeviceSetDeviceCapabilities.Настройка возможности MFP.
Драйвер задает возможность MFP Capabilit в WIFI_STATION_CAPABILITIES во время вызова WifiDeviceSetStationCapabilities.Добавьте шифр WDI_AUTH_ALGO_WPA3_SAE .
Драйвер включает пару WDI_AUTH_ALGO_WPA3_SAE + DOT11_CIPHER_ALGO_CCMP в список сочетаний проверки подлинности и шифра, возвращаемых при вызове WifiDeviceSetStationCapabilities. Он должен быть добавлен в следующую структуру:- WIFI_STATION_CAPABILITIES ->NumSupportedUnicastAlgorithms + UnicastAlgorithmsList
Драйвер также включает пару WDI_AUTH_ALGO_WPA3_SAE + WDI_CIPHER_ALGO_BI в список сочетаний проверки подлинности и шифра, возвращаемых при вызове WifiDeviceSetStationCapabilities. Его следует добавить в следующую структуру:
- WIFI_STATION_CAPABILITIES ->NumSupportedMulticastMgmtAlgorithms + MulticastMgmtAlgorithmsList
Поток проверки подлинности WPA3-SAE
Запуск подключения
Подключения SAE инициируются с помощью OID_WDI_TASK_CONNECT или OID_WDI_TASK_ROAM. WDI указывает WDI_AUTH_ALGO_WPA3_SAE в качестве метода проверки подлинности, если драйвер требуется для проверки подлинности SAE. Если WDI предоставляет PMKID в списке BSS задачи Connect/Roam, то драйвер пропускает проверку подлинности SAE и выполняет открытую проверку подлинности, а затем запрос повторной связи с PMKID.
Поток проверки подлинности
Первоначальный запрос параметров 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_REQUEST)
- Сбой проверки подлинности SAE (WDI_SAE_REQUEST_TYPE_FAILURE)
При получении ответа о фиксации
Получив ответ Commit, драйвер отправляет NDIS_STATUS_WDI_INDICATION_SAE_AUTH_PARAMS_NEEDED с типом WDI_SAE_INDICATION_TYPE_COMMIT_RESPONSE. В ответ WDI отправляет OID_WDI_SET_SAE_AUTH_PARAMS с одним из следующих запросов:
- Запрос на отправку фиксации (WDI_SAE_REQUEST_TYPE_COMMIT_REQUEST)
- Отправить запрос подтверждения (WDI_SAE_REQUEST_TYPE_CONFIRM_REQUEST)
- Сбой проверки подлинности SAE (WDI_SAE_REQUEST_TYPE_FAILURE)
При получении ответа подтверждения
Получив ответ Confirm, драйвер отправляет NDIS_STATUS_WDI_INDICATION_SAE_AUTH_PARAMS_NEEDED с типом WDI_SAE_INDICATION_TYPE_CONFIRM_RESPONSE. Затем WDI отправляет OID_WDI_SET_SAE_AUTH_PARAMS с полем состояния SAE, установленным как success или failure. Если проверка подлинности SAE в драйвере завершается сбоем из-за превышения времени ожидания или по другим причинам, драйвер отправляет NDIS_STATUS_WDI_INDICATION_SAE_AUTH_PARAMS_NEEDED указание типа se в WDI_SAE_INDICATION_TYPE_ERROR и причину сбоя, указанную в WDI_TLV_SAE_STATUS.
Время ожидания и повторные передачи
Они обрабатываются драйвером.
Связь WPA3-SAE
Устройство подключается к сети SAE с помощью одного из следующих вариантов.
(Re) Связь после обмена SAE
Обычно это первая попытка связывания с сетью SAE. Драйвер задает AKM SAE в RSN IE в кадре запроса связи.
(Re) Сопоставление с помощью PMKID
Если WDI предоставил PMKID для записи BSS в задаче connect/roam, драйвер выполняет следующие действия:
- Драйвер выполняет открытую проверку подлинности с последующим включением PMKID в запрос на сопоставление (Re).
- Если устройство не получает ответ от AP в течение короткого времени или если AP возвращает ошибку связи в ответе, драйвер пропускает проверку подлинности SE с помощью этого AP и либо переходит на другую точку доступа, либо возвращается к выполнению полной проверки подлинности SAE с помощью этого AP.
Подключение SAE завершается после завершения проверки подлинности или сопоставления SAE. Как и ранее, драйвер отправляет следующие сведения о завершении задачи подключения или перемещения:
Обработка ошибок
Повторная отправка кадра запроса фиксации SAE
Если драйверу необходимо повторно отправить кадр Фиксации из-за истечения времени ожидания, он может либо повторно отправить исходные значения Scalar/Element, предоставленные WDI, либо запросить новый набор значений Scalar/Element из WDI с указанием NDIS_STATUS_WDI_INDICATION_SAE_AUTH_PARAMS_NEEDED .
Повторная отправка кадра ответа ПОДТВЕРЖДЕНИЯ SAE
Если драйверу необходимо повторно отправить кадр Подтверждения из-за истечения времени ожидания, он должен запросить новый набор значений SendConfirm и Confirm из WDI с указанием NDIS_STATUS_WDI_INDICATION_SAE_AUTH_PARAMS_NEEDED , задав тип WDI_SAE_INDICATION_TYPE_CONFIRM_REQUEST_RESEND_REQUEST.
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по