Autenticazione WPA3-SAE
WPA3-SAE, noto anche come WPA3-Personal, è supportato in Windows con WDI versione 1.1.8 e versioni successive. La generazione e l'analisi dei contenuti frame per l'autenticazione SAE (Secure Authentication of Equals) viene eseguita all'interno di 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 Miniport indicano il supporto SAE eseguendo le operazioni seguenti:
- Impostare la funzionalità supportata da SAE.
Il driver imposta la funzionalità SAEAuthenticationSupported in WDI_TLV_INTERFACE_ATTRIBUTES durante la chiamata a OID_WDI_GET_ADAPTER_CAPABILITIES. - Impostare la funzionalità MFP.
Il driver imposta la funzionalità MFPCapable in WDI_TLV_STATION_ATTRIBUTES durante la chiamata a OID_WDI_GET_ADAPTER_CAPABILITIES. - Aggiungere il metodo di autenticazione WDI_AUTH_ALGO_WPA3_SAE .
Il driver include WDI_AUTH_ALGO_WPA3_SAE nell'elenco delle combinazioni di crittografia di autenticazione restituite nella chiamata a OID_WDI_GET_ADAPTER_CAPABILITIES. Questa operazione deve essere aggiunta nelle sezioni seguenti:
Flusso di autenticazione WPA3-SAE
Avvio connessione
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à Connect/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
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 parametri Commit da WDI con NDIS_STATUS_WDI_INDICATION_SAE_AUTH_PARAMS_NEEDED. In questa indicazione iniziale il driver imposta il tipo di indicazione su WDI_SAE_INDICATION_TYPE_COMMIT_REQUEST_PARAMS_NEEDED. In risposta, WDI invia OID_WDI_SET_SAE_AUTH_PARAMS al driver con una delle opzioni seguenti.
- Invia richiesta commit (WDI_SAE_REQUEST_TYPE_COMMIT_REQUEST)
- Autenticazione SAE non riuscita (WDI_SAE_REQUEST_TYPE_FAILURE)
Al momento della ricezione di una risposta commit
Durante la ricezione di una risposta commit, il driver invia NDIS_STATUS_WDI_INDICATION_SAE_AUTH_PARAMS_NEEDED con il tipo impostato su WDI_SAE_INDICATION_TYPE_COMMIT_RESPONSE. In risposta, WDI invia OID_WDI_SET_SAE_AUTH_PARAMS con una delle richieste seguenti:
- Invia richiesta commit (WDI_SAE_REQUEST_TYPE_COMMIT_REQUEST)
- Invia richiesta conferma (WDI_SAE_REQUEST_TYPE_CONFIRM_REQUEST)
- Autenticazione SAE non riuscita (WDI_SAE_REQUEST_TYPE_FAILURE)
Al momento della ricezione di una risposta Di conferma
Durante la ricezione di una risposta Conferma, il driver invia NDIS_STATUS_WDI_INDICATION_SAE_AUTH_PARAMS_NEEDED con il tipo impostato su WDI_SAE_INDICATION_TYPE_CONFIRM_RESPONSE. WDI invia quindi OID_WDI_SET_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_NEEDED con il tipo se a WDI_SAE_INDICATION_TYPE_ERROR e il motivo di 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 che segue lo scambio SAE
Questo è normalmente il primo tentativo di associazione a una rete SAE. Il driver imposta saE AKM nell'IE RSN nel frame della richiesta di associazione.
(Re) Associazione con PMKID
Se WDI ha fornito un PMKID per la voce BSS nell'attività connect/roam, il driver esegue le operazioni seguenti:
- Il driver esegue un'autenticazione Open seguita dall'inclusione del PMKID nella richiesta di associazione (Re).
- Se il dispositivo non riceve una risposta dall'AP entro un breve periodo o se l'API restituisce un errore di associazione nella risposta, il driver ignora l'autenticazione SE con questa API e passa a un'altra API oppure torna a eseguire l'autenticazione SAE completa con questa AP.
La connessione SAE viene completata al termine dell'autenticazione/associazione SAE. Come in precedenza, il driver invia le indicazioni seguenti sulla conclusione dell'attività connetti o in roaming:
Gestione degli errori
Inviare nuovamente il frame di richiesta di commit SAE
Se il driver deve eseguire nuovamente il ripristino di un frame di commit a causa di un timeout, può inviare nuovamente i valori scalari/elemento originali forniti da WDI o richiedere un nuovo set di valori Scalar/Element da WDI con un'indicazione NDIS_STATUS_WDI_INDICATION_SAE_AUTH_PARAMS_NEEDED .
Inviare nuovamente il frame di risposta di conferma dell'ambiente di sicurezza del servizio di sicurezza
Se il driver deve inviare nuovamente un frame Di conferma a causa di un timeout, deve richiedere un nuovo set di valori SendConfirm e Conferma da WDI con un'indicazione NDIS_STATUS_WDI_INDICATION_SAE_AUTH_PARAMS_NEEDED, impostando il tipo su WDI_SAE_INDICATION_TYPE_CONFIRM_REQUEST_RESEND_REQUEST.
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: Nel corso del 2024 verranno gradualmente disattivati i problemi di GitHub come meccanismo di feedback per il contenuto e ciò verrà sostituito con un nuovo sistema di feedback. Per altre informazioni, vedereInvia e visualizza il feedback per