Autenticazione WIFiCx WPA3-SAE

WiFiCx supporta WPA3-SAE, noto anche come WPA3-Personal. La generazione e l'analisi del contenuto dei frame per l'autenticazione SAE (autenticazione sicura di equals) viene eseguita in Windows, ma il sistema operativo richiede il supporto del driver per l'invio e la ricezione di frame di autenticazione WPA3-SAE.

Funzionalità WPA3-SAE

I driver WiFiCx indicano il supporto SAE eseguendo le operazioni seguenti:

  1. Impostare la funzionalità supportata da SAE.
    Il driver imposta la funzionalità SAEAuthenticationSupported in WIFI_DEVICE_CAPABILITIES durante la chiamata a WifiDeviceSetDeviceCapabilities.

  2. Impostare la funzionalità MFP.
    Il driver imposta la funzionalità MFPCapable in WIFI_STATION_CAPABILITIES durante la chiamata a WifiDeviceSetStationCapabilities.

  3. Aggiungere la crittografia WDI_AUTH_ALGO_WPA3_SAE .
    Il driver include la coppia WDI_AUTH_ALGO_WPA3_SAE + DOT11_CIPHER_ALGO_CCMP nell'elenco delle combinazioni di crittografia di autenticazione restituite nella chiamata a WifiDeviceSetStationCapabilities. Questa operazione deve essere aggiunta nella struttura seguente:

    Il driver include anche la coppia WDI_AUTH_ALGO_WPA3_SAE + WDI_CIPHER_ALGO_BI nell'elenco delle combinazioni di crittografia di autenticazione restituite nella chiamata a WifiDeviceSetStationCapabilities. Deve essere aggiunto nello struct seguente:

Flusso di autenticazione WPA3-SAE

avvio Connessione ion

Le connessioni SAE vengono avviate con OID_WDI_TASK_CONNECT o OID_WDI_TASK_ROAM. WDI specifica WDI_AUTH_ALGO_WPA3_SAE come metodo di autenticazione quando il driver è necessario per eseguire l'autenticazione SAE. Se WDI fornisce PMKID nell'elenco BSS nell'attività Connessione/Roam, il driver ignora l'autenticazione SAE ed esegue invece l'autenticazione Open Authentication, seguita da una richiesta di riassociazione con PMKID.

Flusso di autenticazione

Diagramma che mostra il flusso di autenticazione WPA3-SAE.

Richiesta iniziale per i parametri SAE

Il driver seleziona prima un BSS a cui connettersi o eseguire il roaming e, se WDI non ha fornito PMKID per tale BSS, il driver richiede i parametri Commit da WDI con NDIS_STATUS_WDI_INDICATION_SAE_AUTH_PARAMS_N edizione Enterprise DED. In questa indicazione iniziale, il driver imposta il tipo di indicazione su WDI_SAE_INDICATION_TYPE_COMMIT_REQUEST_PARAMS_N edizione Enterprise DED. In risposta, WDI invia OID_WDI_edizione Standard T_SAE_AUTH_PARAMS al driver con una delle opzioni seguenti.

  • Invia richiesta di commit (WDI_SAE_REQUEST_TYPE_COMMIT_PARAMS)
  • Autenticazione SAE non riuscita (WDI_SAE_REQUEST_TYPE_FAILURE)

Al momento della ricezione di una risposta commit

Quando si riceve una risposta commit, il driver invia NDIS_STATUS_WDI_INDICATION_SAE_AUTH_PARAMS_N edizione Enterprise DED con il tipo impostato su WDI_SAE_INDICATION_TYPE_COMMIT_FRAME. In risposta, WDI invia OID_WDI_edizione Standard T_SAE_AUTH_PARAMS con una delle richieste seguenti:

  • Invia richiesta di commit (WDI_SAE_REQUEST_TYPE_COMMIT_PARAMS)
  • Invia richiesta conferma (WDI_SAE_REQUEST_TYPE_CONFIRM_PARAMS)
  • Autenticazione SAE non riuscita (WDI_SAE_REQUEST_TYPE_FAILURE)

Al momento della ricezione di una risposta confirm

Quando si riceve una risposta Confirm, il driver invia NDIS_STATUS_WDI_INDICATION_SAE_AUTH_PARAMS_N edizione Enterprise DED con il tipo impostato su WDI_SAE_INDICATION_TYPE_CONFIRM_FRAME. WdI invia quindi OID_WDI_edizione Standard T_SAE_AUTH_PARAMS con il campo stato SAE impostato su esito positivo o negativo. Se l'autenticazione SAE non riesce nel driver a causa di timeout o altri motivi, il driver invia un'indicazione NDIS_STATUS_WDI_INDICATION_SAE_AUTH_PARAMS_N edizione Enterprise DED con il tipo impostato su WDI_SAE_INDICATION_TYPE_ERROR e il motivo dell'errore specificato in WDI_TLV_SAE_STATUS.

Timeout e ritrasmissioni

Questi vengono gestiti dal driver.

Associazione WPA3-SAE

Il dispositivo si connette a una rete SAE usando una delle opzioni seguenti.

(Re) Associazione dopo lo scambio SAE

Si tratta in genere del primo tentativo di associazione a una rete SAE. Il driver imposta SAE AKM nell'IE RSN nel frame della richiesta di associazione.

(Re) Associazione tramite PMKID

Se WDI ha fornito un PMKID per la voce BSS nell'attività connect/roam, il driver esegue le operazioni seguenti:

  1. Il driver esegue un'autenticazione Open seguita dall'inclusione di PMKID nella richiesta di associazione (Riesegua).
  2. Se il dispositivo non riceve una risposta dall'API entro un breve periodo di tempo o se l'API restituisce un errore di associazione nella risposta, il driver ignora l'autenticazione edizione Standard con questa API e passa a un'altra API oppure torna a eseguire l'autenticazione SAE completa con questa API.

La connessione SAE viene completata al termine dell'autenticazione o dell'associazione SAE. Come in precedenza, il driver invia le indicazioni seguenti alla conclusione dell'attività di connessione o roaming:

Gestione degli errori

Invio di nuovo del frame di richiesta di commit SAE

Se il driver deve inviare nuovamente un frame di commit a causa di un timeout, può inviare nuovamente i valori scalari/element originali forniti da WDI oppure richiedere un nuovo set di valori Scalar/Element da WDI con un'indicazione NDIS_STATUS_WDI_INDICATION_SAE_AUTH_PARAMS_N edizione Enterprise DED.

Invio di nuovo del frame di risposta di conferma sae

Se il driver deve inviare nuovamente un frame Confirm a causa di un timeout, deve richiedere un nuovo set di valori SendConfirm e Confirm da WDI con un'indicazione NDIS_STATUS_WDI_INDICATION_SAE_AUTH_PARAMS_N edizione Enterprise DED, impostando il tipo su WDI_SAE_INDICATION_TYPE_CONFIRM_REQUEST_RE edizione Standard ND_REQUEST.

Modifiche all'autenticazione SAE Wi-Fi 7

Per gli aggiornamenti dell'autenticazione SAE Wi-Fi 7, vedere Requisiti delle funzionalità Wi-Fi 7 wi-fi.