Skip to content

Commit 5a363da

Browse files
committed
net: lib: hostap_crypto: Add support for WPA3-PSA
This implements the PSA variant of WPA3, disables the internal WPA3 in the supplicant and uses the nRF Oberon's WPA3 HKDF APIs. Signed-off-by: Chaitanya Tata <[email protected]>
1 parent 0135fac commit 5a363da

File tree

4 files changed

+1442
-8
lines changed

4 files changed

+1442
-8
lines changed

doc/nrf/app_dev/device_guides/nrf70/wifi_advanced_security_modes.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -220,7 +220,7 @@ This improves the security of the nRF70 device compared to the non-PSA mode.
220220

221221
.. note::
222222

223-
Currently, the PSA crypto support is only applicable to the WPA2™-personal security profile.
223+
Currently, the PSA crypto support is only applicable to the WPA2™ and WPA3™-personal security profiles.
224224

225225
Enable PSA support
226226
==================

subsys/net/lib/hostap_crypto/CMakeLists.txt

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -79,4 +79,14 @@ if(DEFINED CONFIG_HOSTAP_CRYPTO_ALT_PSA)
7979
${HOSTAP_BASE}/port/mbedtls/supp_psa_api.c
8080
${HOSTAP_SRC_BASE}/crypto/tls_none.c
8181
)
82+
83+
if(CONFIG_HOSTAP_CRYPTO_WPA3_PSA)
84+
zephyr_library_sources(
85+
wpa3_psa.c
86+
)
87+
zephyr_library_compile_definitions(
88+
CONFIG_SAE
89+
CONFIG_ECC
90+
)
91+
endif()
8292
endif()

subsys/net/lib/hostap_crypto/Kconfig

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -97,15 +97,21 @@ config HOSTAP_CRYPTO_ENTERPRISE
9797

9898
endif
9999

100-
# PSA crypto is WPA2 only for now
100+
# PSA crypto is personal security only for now
101101
if HOSTAP_CRYPTO_ALT_PSA
102+
# PSA doesn't work with WPA3 builtin (uses bignum)
103+
config WIFI_NM_WPA_SUPPLICANT_WPA3
104+
default n
105+
# PSA doesn't support with enterprise mode yet
106+
config WIFI_NM_WPA_SUPPLICANT_CRYPTO_ENTERPRISE
107+
default n
102108

103-
config WIFI_NM_WPA_SUPPLICANT_WPA3
104-
default n
105-
106-
config WIFI_NM_WPA_SUPPLICANT_CRYPTO_ENTERPRISE
107-
default n
108-
109+
config HOSTAP_CRYPTO_WPA3_PSA
110+
bool "WPA3 PSA support"
111+
select EXPERIMENTAL
112+
select PSA_WANT_ALG_WPA3_SAE
113+
select PSA_WANT_ALG_WPA3_SAE_H2E
114+
select PSA_WANT_KEY_TYPE_WPA3_SAE_PT
109115
endif
110116

111117
endif

0 commit comments

Comments
 (0)