diff --git a/include/zephyr/net/wifi.h b/include/zephyr/net/wifi.h index 7f6d5711daa75e0..2e3c704c9727cea 100644 --- a/include/zephyr/net/wifi.h +++ b/include/zephyr/net/wifi.h @@ -118,6 +118,10 @@ const char *wifi_band_txt(enum wifi_frequency_bands band); #define WIFI_SAE_PSWD_MAX_LEN 128 /** MAC address length */ #define WIFI_MAC_ADDR_LEN 6 +/** Max enterprise identity length */ +#define WIFI_ENT_IDENTITY_MAX_LEN 64 +/** Max enterprise password length */ +#define WIFI_ENT_PSWD_MAX_LEN 128 /** Minimum channel number */ #define WIFI_CHANNEL_MIN 1 diff --git a/include/zephyr/net/wifi_mgmt.h b/include/zephyr/net/wifi_mgmt.h index bcdf4dc25a5672e..6802009e603600a 100644 --- a/include/zephyr/net/wifi_mgmt.h +++ b/include/zephyr/net/wifi_mgmt.h @@ -95,6 +95,8 @@ enum net_request_wifi_cmd { NET_REQUEST_WIFI_CMD_AP_CONFIG_PARAM, /** Flush PMKSA cache entries */ NET_REQUEST_WIFI_CMD_PMKSA_FLUSH, + /** Set enterprise mode credential */ + NET_REQUEST_WIFI_CMD_ENTERPRISE_CREDS, /** @cond INTERNAL_HIDDEN */ NET_REQUEST_WIFI_CMD_MAX /** @endcond */ @@ -214,6 +216,12 @@ NET_MGMT_DEFINE_REQUEST_HANDLER(NET_REQUEST_WIFI_AP_CONFIG_PARAM); NET_MGMT_DEFINE_REQUEST_HANDLER(NET_REQUEST_WIFI_PMKSA_FLUSH); +/** Set Wi-Fi enterprise mode CA/client Cert and key */ +#define NET_REQUEST_WIFI_ENTERPRISE_CREDS \ + (_NET_WIFI_BASE | NET_REQUEST_WIFI_CMD_ENTERPRISE_CREDS) + +NET_MGMT_DEFINE_REQUEST_HANDLER(NET_REQUEST_WIFI_ENTERPRISE_CREDS); + /** @brief Wi-Fi management events */ enum net_event_wifi_cmd { /** Scan results available */ @@ -418,6 +426,14 @@ struct wifi_connect_req_params { uint8_t bssid[WIFI_MAC_ADDR_LEN]; /** Connect timeout in seconds, SYS_FOREVER_MS for no timeout */ int timeout; + /** anonymous identity */ + const uint8_t *anon_id; + /** anon_id length */ + uint8_t aid_length; /* Max 64 */ + /** Private key passwd for enterprise mode */ + const uint8_t *key_passwd; + /** Private key passwd length */ + uint8_t key_passwd_length; /* Max 128 */ }; /** @brief Wi-Fi connect result codes. To be overlaid on top of \ref wifi_status @@ -639,6 +655,22 @@ struct wifi_twt_flow_info { uint32_t twt_wake_ahead_duration; }; +/** Wi-Fi enterprise mode credentials */ +struct wifi_enterprise_creds_params { + /** CA certification */ + uint8_t *ca_cert; + /** CA certification length */ + uint32_t ca_cert_len; + /** Client certification */ + uint8_t *client_cert; + /** Client certification length */ + uint32_t client_cert_len; + /** Client key */ + uint8_t *client_key; + /** Client key length */ + uint32_t client_key_len; +}; + /** @brief Wi-Fi power save configuration */ struct wifi_ps_config { /** Number of TWT flows */ @@ -980,6 +1012,14 @@ struct wifi_mgmt_ops { * @return 0 if ok, < 0 if error */ int (*pmksa_flush)(const struct device *dev); + /** Set Wi-Fi enterprise mode CA/client Cert and key + * + * @param dev Pointer to the device structure for the driver instance. + * @param creds Pointer to the CA/client Cert and key. + * + * @return 0 if ok, < 0 if error + */ + int (*enterprise_creds)(const struct device *dev, struct wifi_enterprise_creds_params *creds); }; /** Wi-Fi management offload API */ diff --git a/modules/hostap/src/supp_api.c b/modules/hostap/src/supp_api.c index fdd45419c060617..4f7d90a9675d692 100644 --- a/modules/hostap/src/supp_api.c +++ b/modules/hostap/src/supp_api.c @@ -45,6 +45,10 @@ enum status_thread_state { #define DISCONNECT_TIMEOUT_MS 5000 +#ifdef CONFIG_WIFI_NM_WPA_SUPPLICANT_CRYPTO_ENTERPRISE +static struct wifi_enterprise_creds_params enterprise_creds; +#endif + K_MUTEX_DEFINE(wpa_supplicant_mutex); extern struct k_work_q *get_workq(void); @@ -323,6 +327,59 @@ static inline enum wifi_security_type wpas_key_mgmt_to_zephyr(int key_mgmt, int } } +#ifdef CONFIG_WIFI_NM_WPA_SUPPLICANT_CRYPTO_ENTERPRISE +int supplicant_add_enterprise_creds(const struct device *dev, struct wifi_enterprise_creds_params *creds) +{ + int ret = 0; + + if (!creds) { + ret = -1; + wpa_printf(MSG_ERROR, "enterprise creds is NULL"); + goto out; + } + + memcpy((void *)&enterprise_creds, (void *)creds, sizeof(struct wifi_enterprise_creds_params)); + +out: + return ret; +} + +static int wpas_config_process_blob(struct wpa_config *config, char *name, uint8_t *data, + uint32_t data_len) +{ + struct wpa_config_blob *blob; + + if (!data || !data_len) { + return -1; + } + + blob = os_zalloc(sizeof(*blob)); + if (blob == NULL) { + return -1; + } + + blob->data = os_zalloc(data_len); + if (blob->data == NULL) { + os_free(blob); + return -1; + } + + blob->name = os_strdup(name); + + if (blob->name == NULL) { + wpa_config_free_blob(blob); + return -1; + } + + os_memcpy(blob->data, data, data_len); + blob->len = data_len; + + wpa_config_set_blob(config, blob); + + return 0; +} +#endif + static int wpas_add_and_config_network(struct wpa_supplicant *wpa_s, struct wifi_connect_req_params *params, bool mode_ap) @@ -445,6 +502,66 @@ static int wpas_add_and_config_network(struct wpa_supplicant *wpa_s, goto out; } } +#ifdef CONFIG_WIFI_NM_WPA_SUPPLICANT_CRYPTO_ENTERPRISE + } else if (params->security == WIFI_SECURITY_TYPE_EAP_TLS) { + if (!wpa_cli_cmd_v("set_network %d key_mgmt WPA-EAP", + resp.network_id)) { + goto out; + } + + if (!wpa_cli_cmd_v("set_network %d proto RSN", + resp.network_id)) { + goto out; + } + + if (!wpa_cli_cmd_v("set_network %d eap TLS", + resp.network_id)) { + goto out; + } + + if (!wpa_cli_cmd_v("set_network %d anonymous_identity \"%s\"", + resp.network_id, params->anon_id)) { + goto out; + } + + if (wpas_config_process_blob(wpa_s->conf, "ca_cert", + enterprise_creds.ca_cert, + enterprise_creds.ca_cert_len)) { + goto out; + } + + if (!wpa_cli_cmd_v("set_network %d ca_cert \"blob://ca_cert\"", + resp.network_id)) { + goto out; + } + + if (wpas_config_process_blob(wpa_s->conf, "client_cert", + enterprise_creds.client_cert, + enterprise_creds.client_cert_len)) { + goto out; + } + + if (!wpa_cli_cmd_v("set_network %d client_cert \"blob://client_cert\"", + resp.network_id)) { + goto out; + } + + if (wpas_config_process_blob(wpa_s->conf, "private_key", + enterprise_creds.client_key, + enterprise_creds.client_key_len)) { + goto out; + } + + if (!wpa_cli_cmd_v("set_network %d private_key \"blob://private_key\"", + resp.network_id)) { + goto out; + } + + if (!wpa_cli_cmd_v("set_network %d private_key_passwd \"%s\"", + resp.network_id, params->key_passwd)) { + goto out; + } +#endif } else { ret = -1; wpa_printf(MSG_ERROR, "Unsupported security type: %d", diff --git a/modules/hostap/src/supp_api.h b/modules/hostap/src/supp_api.h index 566a73d7bd8b0e0..6406b49b6fd349c 100644 --- a/modules/hostap/src/supp_api.h +++ b/modules/hostap/src/supp_api.h @@ -127,6 +127,17 @@ int supplicant_reg_domain(const struct device *dev, struct wifi_reg_domain *reg_ */ int supplicant_mode(const struct device *dev, struct wifi_mode_info *mode); +#ifdef CONFIG_WIFI_NM_WPA_SUPPLICANT_CRYPTO_ENTERPRISE +/** Set Wi-Fi enterprise mode CA/client Cert and key + * + * @param dev Pointer to the device structure for the driver instance + * @param file Pointer to the CA/client Cert and key. + * + * @return 0 if ok, < 0 if error + */ +int supplicant_add_enterprise_creds(const struct device *dev, struct wifi_enterprise_creds_params *creds); +#endif + /** * @brief Set Wi-Fi packet filter for sniffing operation * diff --git a/modules/hostap/src/supp_main.c b/modules/hostap/src/supp_main.c index 9abd41131a7686f..120a9ea649cb167 100644 --- a/modules/hostap/src/supp_main.c +++ b/modules/hostap/src/supp_main.c @@ -66,6 +66,7 @@ static const struct wifi_mgmt_ops mgmt_ops = { .ap_sta_disconnect = supplicant_ap_sta_disconnect, #endif /* CONFIG_AP */ .pmksa_flush = supplicant_pmksa_flush, + .enterprise_creds = supplicant_add_enterprise_creds, }; DEFINE_WIFI_NM_INSTANCE(wifi_supplicant, &mgmt_ops); diff --git a/subsys/net/l2/wifi/CMakeLists.txt b/subsys/net/l2/wifi/CMakeLists.txt index c834c5bfc2f756c..17c4e0ed8c6209b 100644 --- a/subsys/net/l2/wifi/CMakeLists.txt +++ b/subsys/net/l2/wifi/CMakeLists.txt @@ -8,6 +8,9 @@ zephyr_library_include_directories_ifdef( zephyr_library_compile_definitions_ifdef( CONFIG_NEWLIB_LIBC __LINUX_ERRNO_EXTENSIONS__ ) +zephyr_library_include_directories_ifdef( + CONFIG_WIFI_NM_HOSTAPD_CRYPTO_ENTERPRISE test_certs + ) zephyr_library_sources_ifdef(CONFIG_NET_L2_WIFI_MGMT wifi_mgmt.c) zephyr_library_sources_ifdef(CONFIG_NET_L2_WIFI_SHELL wifi_shell.c) diff --git a/subsys/net/l2/wifi/test_certs/ca-cert.h b/subsys/net/l2/wifi/test_certs/ca-cert.h new file mode 100644 index 000000000000000..46f1c59c04ab0de --- /dev/null +++ b/subsys/net/l2/wifi/test_certs/ca-cert.h @@ -0,0 +1,70 @@ +/** + * Copyright 2024 NXP + * SPDX-License-Identifier: Apache-2.0 + */ + +const unsigned char ca_cert_test[] = { + 0x30, 0x82, 0x04, 0xa1, 0x30, 0x82, 0x03, 0x09, 0xa0, 0x03, 0x02, 0x01, 0x02, 0x02, 0x14, 0x39, 0x27, 0xf3, 0x9b, + 0x20, 0x1e, 0xa5, 0xe3, 0xda, 0xdb, 0x44, 0x64, 0x0d, 0x71, 0x24, 0xb6, 0x8a, 0x94, 0x33, 0x64, 0x30, 0x0d, 0x06, + 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01, 0x0b, 0x05, 0x00, 0x30, 0x5f, 0x31, 0x0b, 0x30, 0x09, 0x06, + 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x49, 0x4e, 0x31, 0x0b, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x08, 0x0c, 0x02, + 0x4d, 0x48, 0x31, 0x0d, 0x30, 0x0b, 0x06, 0x03, 0x55, 0x04, 0x07, 0x0c, 0x04, 0x50, 0x55, 0x4e, 0x45, 0x31, 0x0c, + 0x30, 0x0a, 0x06, 0x03, 0x55, 0x04, 0x0a, 0x0c, 0x03, 0x4e, 0x58, 0x50, 0x31, 0x0b, 0x30, 0x09, 0x06, 0x03, 0x55, + 0x04, 0x03, 0x0c, 0x02, 0x43, 0x41, 0x31, 0x19, 0x30, 0x17, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, + 0x09, 0x01, 0x16, 0x0a, 0x63, 0x61, 0x40, 0x6e, 0x78, 0x70, 0x2e, 0x63, 0x6f, 0x6d, 0x30, 0x20, 0x17, 0x0d, 0x32, + 0x33, 0x30, 0x33, 0x31, 0x35, 0x31, 0x34, 0x32, 0x33, 0x31, 0x33, 0x5a, 0x18, 0x0f, 0x33, 0x30, 0x32, 0x32, 0x30, + 0x37, 0x31, 0x36, 0x31, 0x34, 0x32, 0x33, 0x31, 0x33, 0x5a, 0x30, 0x5f, 0x31, 0x0b, 0x30, 0x09, 0x06, 0x03, 0x55, + 0x04, 0x06, 0x13, 0x02, 0x49, 0x4e, 0x31, 0x0b, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x08, 0x0c, 0x02, 0x4d, 0x48, + 0x31, 0x0d, 0x30, 0x0b, 0x06, 0x03, 0x55, 0x04, 0x07, 0x0c, 0x04, 0x50, 0x55, 0x4e, 0x45, 0x31, 0x0c, 0x30, 0x0a, + 0x06, 0x03, 0x55, 0x04, 0x0a, 0x0c, 0x03, 0x4e, 0x58, 0x50, 0x31, 0x0b, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x03, + 0x0c, 0x02, 0x43, 0x41, 0x31, 0x19, 0x30, 0x17, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x09, 0x01, + 0x16, 0x0a, 0x63, 0x61, 0x40, 0x6e, 0x78, 0x70, 0x2e, 0x63, 0x6f, 0x6d, 0x30, 0x82, 0x01, 0xa2, 0x30, 0x0d, 0x06, + 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01, 0x01, 0x05, 0x00, 0x03, 0x82, 0x01, 0x8f, 0x00, 0x30, 0x82, + 0x01, 0x8a, 0x02, 0x82, 0x01, 0x81, 0x00, 0xdd, 0x70, 0x03, 0x4e, 0xb4, 0x53, 0xdf, 0x45, 0xfb, 0xf2, 0x9f, 0x74, + 0x0b, 0x1e, 0x53, 0x0e, 0x98, 0x30, 0x5b, 0x68, 0x26, 0x8f, 0x59, 0xba, 0xfc, 0x3c, 0xd6, 0x80, 0x33, 0xd4, 0xf1, + 0x16, 0x44, 0x42, 0xc7, 0x7e, 0x77, 0xfe, 0x0b, 0xae, 0x92, 0x50, 0x4c, 0x3b, 0xeb, 0x3f, 0x28, 0x53, 0x4d, 0xa0, + 0x58, 0xad, 0xd9, 0x88, 0x4a, 0xd8, 0xac, 0x52, 0xfb, 0x35, 0x5a, 0x34, 0x07, 0xb9, 0x14, 0xd4, 0x0f, 0x3d, 0xa5, + 0x7a, 0xa8, 0x44, 0x17, 0x9c, 0x97, 0xb6, 0x7f, 0x0e, 0x7a, 0x05, 0x33, 0x65, 0x58, 0x42, 0xf0, 0x61, 0xd8, 0x20, + 0x1f, 0xaa, 0xc6, 0xdc, 0xcf, 0x6b, 0x50, 0xb5, 0x13, 0x55, 0x19, 0x3f, 0x57, 0x6d, 0x15, 0x8f, 0x33, 0xe9, 0x86, + 0x98, 0x85, 0xdf, 0xb3, 0x72, 0x4b, 0x8b, 0xa1, 0xe3, 0xa9, 0xa5, 0x43, 0x84, 0xcd, 0x61, 0x6a, 0x61, 0xbc, 0x1a, + 0xb9, 0xd6, 0x57, 0xaa, 0x53, 0x4e, 0xa3, 0x1c, 0x8a, 0xab, 0x81, 0x40, 0x84, 0xaa, 0x11, 0x55, 0xcf, 0x37, 0xb4, + 0x69, 0xe5, 0x65, 0x59, 0x27, 0x74, 0x78, 0xfb, 0xa3, 0xf0, 0x1a, 0xa1, 0xdd, 0xaf, 0xd7, 0x5e, 0x65, 0x72, 0x99, + 0x1b, 0x40, 0x44, 0x99, 0x9f, 0x67, 0x30, 0x5f, 0x12, 0x3c, 0xb7, 0x6a, 0x03, 0xe3, 0x35, 0x10, 0xc2, 0x02, 0x80, + 0x66, 0x80, 0xc2, 0xa6, 0x50, 0x9a, 0x9a, 0xa1, 0xa1, 0xf3, 0xc4, 0x06, 0x3b, 0x87, 0x3f, 0xb3, 0x0a, 0x52, 0x4d, + 0xb7, 0x3c, 0x8b, 0x8d, 0x17, 0x23, 0x4f, 0x4c, 0x27, 0x7d, 0x1c, 0xb2, 0xb2, 0x6c, 0x19, 0x0c, 0xef, 0x6c, 0xf2, + 0x2a, 0xfc, 0x6a, 0x98, 0xb4, 0x7f, 0x46, 0xa2, 0xf2, 0xf1, 0x36, 0x46, 0xbf, 0x40, 0x06, 0x47, 0xf3, 0xdd, 0xa7, + 0xe7, 0xe4, 0xef, 0xd3, 0x1e, 0xc5, 0x01, 0xb1, 0xb0, 0x1a, 0x8b, 0x86, 0x06, 0x5f, 0x66, 0xc4, 0x3a, 0xa5, 0x49, + 0x09, 0xaa, 0xf6, 0x64, 0x51, 0x41, 0x14, 0x8a, 0x7b, 0x9c, 0x06, 0xfa, 0xff, 0x06, 0xa0, 0xf2, 0x12, 0xa9, 0xef, + 0x14, 0x2d, 0xd3, 0x6e, 0xee, 0x0f, 0x35, 0x10, 0xb0, 0x7a, 0x1b, 0xbb, 0x58, 0x44, 0xe8, 0x18, 0x5c, 0xc0, 0x26, + 0x1c, 0xfb, 0xc3, 0x80, 0x97, 0xc1, 0xae, 0x56, 0x44, 0xd1, 0x5e, 0xd8, 0xe1, 0x66, 0xfd, 0x43, 0xea, 0x3e, 0x1f, + 0x88, 0x00, 0x73, 0xb1, 0x05, 0xd5, 0xbb, 0x70, 0xe6, 0xea, 0xab, 0x6a, 0x63, 0xe7, 0xa2, 0x3b, 0xad, 0x50, 0xe0, + 0xc8, 0x79, 0x22, 0x71, 0x8d, 0x31, 0x5c, 0x7d, 0xf6, 0xea, 0x0b, 0x92, 0x7a, 0x1d, 0x46, 0xde, 0xf7, 0x33, 0x4d, + 0xca, 0xb0, 0xa4, 0x81, 0x1b, 0xd8, 0xd3, 0xf1, 0x8d, 0xa7, 0xc1, 0xe2, 0x84, 0x24, 0x31, 0x19, 0x71, 0x8c, 0xe6, + 0xfe, 0x5d, 0xdb, 0xcd, 0x8b, 0xae, 0xa3, 0x25, 0xdd, 0x2d, 0x07, 0x02, 0x03, 0x01, 0x00, 0x01, 0xa3, 0x53, 0x30, + 0x51, 0x30, 0x1d, 0x06, 0x03, 0x55, 0x1d, 0x0e, 0x04, 0x16, 0x04, 0x14, 0xc5, 0x31, 0x78, 0x1d, 0x4a, 0xde, 0xf0, + 0x95, 0x0c, 0xdd, 0xd2, 0x21, 0x41, 0x2c, 0x8c, 0xfa, 0xc8, 0x20, 0x2d, 0xb1, 0x30, 0x1f, 0x06, 0x03, 0x55, 0x1d, + 0x23, 0x04, 0x18, 0x30, 0x16, 0x80, 0x14, 0xc5, 0x31, 0x78, 0x1d, 0x4a, 0xde, 0xf0, 0x95, 0x0c, 0xdd, 0xd2, 0x21, + 0x41, 0x2c, 0x8c, 0xfa, 0xc8, 0x20, 0x2d, 0xb1, 0x30, 0x0f, 0x06, 0x03, 0x55, 0x1d, 0x13, 0x01, 0x01, 0xff, 0x04, + 0x05, 0x30, 0x03, 0x01, 0x01, 0xff, 0x30, 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01, 0x0b, + 0x05, 0x00, 0x03, 0x82, 0x01, 0x81, 0x00, 0xb1, 0x1b, 0x2b, 0xdc, 0xf0, 0x60, 0x19, 0xa8, 0x83, 0xb9, 0x10, 0xc3, + 0x69, 0x40, 0x52, 0x09, 0x14, 0x41, 0x85, 0x5c, 0x07, 0x73, 0xbc, 0x0f, 0x19, 0xae, 0xcd, 0x40, 0xb2, 0x88, 0x60, + 0x12, 0x15, 0x49, 0x8a, 0x37, 0x82, 0xb5, 0x66, 0xa6, 0xea, 0x3e, 0x94, 0xe0, 0x17, 0x64, 0x1d, 0x9f, 0x40, 0x49, + 0x03, 0x8e, 0x0b, 0x0d, 0x4e, 0x16, 0xdf, 0x3d, 0x0d, 0x1d, 0x79, 0xe5, 0xaf, 0xd0, 0x20, 0x48, 0xe2, 0x4b, 0x07, + 0xc1, 0x3a, 0x23, 0x10, 0x21, 0xc2, 0x72, 0xe1, 0xb4, 0xd6, 0x78, 0xd8, 0xe5, 0xa9, 0xa8, 0x34, 0x2c, 0x74, 0x70, + 0x09, 0x30, 0xb7, 0xbe, 0xde, 0x3e, 0x25, 0x02, 0x74, 0xfc, 0xe4, 0x1c, 0xfa, 0xb9, 0xa7, 0x70, 0x94, 0xfa, 0x52, + 0x5f, 0x32, 0x73, 0x93, 0x1b, 0x1c, 0x11, 0xb4, 0xc6, 0x7a, 0xd9, 0x72, 0x18, 0xf5, 0x74, 0x06, 0xce, 0xb6, 0xb1, + 0x0f, 0x5c, 0x45, 0x21, 0xca, 0x52, 0xda, 0x14, 0x50, 0x8a, 0x1a, 0x30, 0xbd, 0xd3, 0xed, 0x13, 0x10, 0x5c, 0x94, + 0x93, 0xb0, 0x45, 0x46, 0x31, 0xbb, 0xb1, 0x61, 0xc8, 0xa9, 0xad, 0x91, 0xee, 0xe1, 0xea, 0xeb, 0x1f, 0x8e, 0x67, + 0x22, 0xc4, 0x3a, 0x54, 0xd8, 0x52, 0xeb, 0xde, 0xcf, 0x6d, 0x72, 0x31, 0xaf, 0x75, 0x8c, 0xd2, 0x2c, 0xa8, 0x72, + 0x8d, 0x1a, 0x35, 0x53, 0x4b, 0x10, 0x98, 0xc7, 0xd8, 0x3d, 0x59, 0x18, 0x24, 0xdf, 0x57, 0xe6, 0x31, 0x91, 0x55, + 0x17, 0x2e, 0x40, 0x1d, 0x82, 0x34, 0xa6, 0x2d, 0x99, 0x23, 0x73, 0xd6, 0x1c, 0x2b, 0x66, 0xe2, 0x50, 0x18, 0xc2, + 0x9d, 0x85, 0x32, 0x12, 0xac, 0x7e, 0x41, 0x76, 0x33, 0x39, 0x5b, 0x6d, 0x22, 0xd4, 0x0b, 0xb0, 0xc2, 0x26, 0x53, + 0x72, 0x2c, 0x18, 0xbf, 0x45, 0x13, 0x8f, 0xce, 0xc8, 0x28, 0x3c, 0x6d, 0x13, 0x83, 0x02, 0x79, 0xe0, 0x38, 0xb7, + 0x14, 0x74, 0x1e, 0xab, 0xc8, 0x9d, 0xad, 0xe2, 0x64, 0xae, 0x4f, 0x16, 0xd6, 0x60, 0xa1, 0x0d, 0x90, 0x11, 0xce, + 0x9b, 0x9b, 0x51, 0xe0, 0xba, 0x7c, 0xa2, 0xb5, 0xfd, 0xa4, 0x40, 0x7f, 0xee, 0xaa, 0x5f, 0xf1, 0xbd, 0xf8, 0x04, + 0x8f, 0x5a, 0x82, 0x50, 0x80, 0xf5, 0x27, 0x18, 0x8d, 0x37, 0x86, 0x35, 0xb5, 0xf2, 0xfa, 0x18, 0x71, 0x82, 0x24, + 0x9a, 0xdd, 0x37, 0x1e, 0xf1, 0xee, 0xd8, 0xd2, 0x16, 0xf4, 0x93, 0xa7, 0x35, 0x46, 0xa0, 0x54, 0x1c, 0x3b, 0x7d, + 0x77, 0x48, 0x4e, 0x76, 0x46, 0x27, 0x2d, 0x83, 0x40, 0x76, 0x66, 0x1b, 0x3c, 0x7b, 0x57, 0x68, 0x2d, 0x9d, 0x21, + 0xa4, 0x70, 0xf5, 0xff, 0x58, 0xce, 0x3c, 0xf3, 0xc9, 0x67, 0x8c, 0x9d, 0x5a, 0x9c, 0xa0, 0x02, 0xf3, 0x0c, 0x44, + 0x65, 0x1b, 0xe3, 0x51, 0x79, 0xcd, 0xf7, 0xb6, 0x66, 0xb3, 0x9d}; +unsigned int ca_cert_test_len = 1189; diff --git a/subsys/net/l2/wifi/test_certs/client-cert.h b/subsys/net/l2/wifi/test_certs/client-cert.h new file mode 100644 index 000000000000000..7acad765705e3d4 --- /dev/null +++ b/subsys/net/l2/wifi/test_certs/client-cert.h @@ -0,0 +1,65 @@ +/** + * Copyright 2024 NXP + * SPDX-License-Identifier: Apache-2.0 + */ + +const unsigned char client_cert_test[] = { + 0x30, 0x82, 0x04, 0x3c, 0x30, 0x82, 0x02, 0xa4, 0x02, 0x01, 0x01, 0x30, 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, + 0xf7, 0x0d, 0x01, 0x01, 0x0b, 0x05, 0x00, 0x30, 0x5f, 0x31, 0x0b, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, + 0x02, 0x49, 0x4e, 0x31, 0x0b, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x08, 0x0c, 0x02, 0x4d, 0x48, 0x31, 0x0d, 0x30, + 0x0b, 0x06, 0x03, 0x55, 0x04, 0x07, 0x0c, 0x04, 0x50, 0x55, 0x4e, 0x45, 0x31, 0x0c, 0x30, 0x0a, 0x06, 0x03, 0x55, + 0x04, 0x0a, 0x0c, 0x03, 0x4e, 0x58, 0x50, 0x31, 0x0b, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x03, 0x0c, 0x02, 0x43, + 0x41, 0x31, 0x19, 0x30, 0x17, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x09, 0x01, 0x16, 0x0a, 0x63, + 0x61, 0x40, 0x6e, 0x78, 0x70, 0x2e, 0x63, 0x6f, 0x6d, 0x30, 0x20, 0x17, 0x0d, 0x32, 0x33, 0x30, 0x33, 0x31, 0x35, + 0x31, 0x34, 0x32, 0x36, 0x32, 0x31, 0x5a, 0x18, 0x0f, 0x33, 0x30, 0x32, 0x32, 0x30, 0x37, 0x31, 0x36, 0x31, 0x34, + 0x32, 0x36, 0x32, 0x31, 0x5a, 0x30, 0x67, 0x31, 0x0b, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x49, + 0x4e, 0x31, 0x0b, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x08, 0x0c, 0x02, 0x4d, 0x48, 0x31, 0x0d, 0x30, 0x0b, 0x06, + 0x03, 0x55, 0x04, 0x07, 0x0c, 0x04, 0x50, 0x55, 0x4e, 0x45, 0x31, 0x0c, 0x30, 0x0a, 0x06, 0x03, 0x55, 0x04, 0x0a, + 0x0c, 0x03, 0x4e, 0x58, 0x50, 0x31, 0x0f, 0x30, 0x0d, 0x06, 0x03, 0x55, 0x04, 0x03, 0x0c, 0x06, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x31, 0x1d, 0x30, 0x1b, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x09, 0x01, 0x16, + 0x0e, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x40, 0x6e, 0x78, 0x70, 0x2e, 0x63, 0x6f, 0x6d, 0x30, 0x82, 0x01, 0xa2, + 0x30, 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01, 0x01, 0x05, 0x00, 0x03, 0x82, 0x01, 0x8f, + 0x00, 0x30, 0x82, 0x01, 0x8a, 0x02, 0x82, 0x01, 0x81, 0x00, 0xd6, 0xd8, 0x4e, 0x1a, 0xc7, 0x51, 0x89, 0x3c, 0x6e, + 0xd5, 0xf7, 0xc2, 0x44, 0xbd, 0x8d, 0x53, 0x6a, 0x01, 0xc4, 0x6b, 0x1d, 0xe3, 0xae, 0xbd, 0x83, 0x34, 0x92, 0x31, + 0x89, 0xe3, 0x65, 0x63, 0x25, 0xf3, 0xe8, 0x38, 0x37, 0xcd, 0xae, 0x13, 0xac, 0xe3, 0x61, 0xa8, 0x4f, 0x1a, 0xa0, + 0x61, 0xb0, 0x54, 0x19, 0x39, 0x4c, 0xd5, 0xb2, 0x99, 0xaa, 0x2c, 0x15, 0xe5, 0x7e, 0x61, 0xec, 0xe9, 0x2f, 0x1e, + 0xd1, 0x89, 0x91, 0x90, 0x08, 0x08, 0x51, 0xc7, 0x8a, 0x9f, 0xa2, 0xf0, 0xa8, 0x69, 0x8e, 0xf7, 0xda, 0x7e, 0x69, + 0xb4, 0x28, 0xf8, 0x83, 0x81, 0x6d, 0x96, 0x6d, 0xb2, 0x88, 0x98, 0xa3, 0x1f, 0x2f, 0xe3, 0x09, 0x3a, 0x5e, 0xe1, + 0x0a, 0xfc, 0xba, 0xd5, 0x98, 0x0a, 0x1d, 0x66, 0x1f, 0xeb, 0x8d, 0x9b, 0x6a, 0x7a, 0xd9, 0x43, 0x29, 0x8c, 0xd9, + 0xbd, 0x6e, 0x97, 0xde, 0x84, 0x8b, 0xe0, 0x9c, 0x36, 0x21, 0xd8, 0x22, 0xa1, 0xbf, 0xcc, 0x01, 0x53, 0x53, 0x31, + 0x36, 0x97, 0xaa, 0xfe, 0x53, 0x88, 0x14, 0xc9, 0xac, 0xbb, 0x03, 0x4d, 0x74, 0x48, 0x8d, 0x47, 0x5b, 0xbe, 0x41, + 0xc0, 0xd2, 0x70, 0x2a, 0xc0, 0x41, 0x2d, 0xa8, 0x1a, 0xd8, 0xa5, 0x88, 0xd1, 0x5e, 0x07, 0x33, 0x40, 0x00, 0xaa, + 0xe4, 0xc3, 0xd1, 0xb5, 0x57, 0x22, 0x1c, 0xfc, 0xc8, 0x84, 0x23, 0xab, 0xe2, 0x27, 0x2d, 0x40, 0xa8, 0x1e, 0x39, + 0xf3, 0x58, 0xd3, 0x6a, 0x62, 0x55, 0x6d, 0x46, 0x53, 0xf9, 0xad, 0x5a, 0xa4, 0xf5, 0xba, 0x5c, 0xb8, 0x95, 0xc8, + 0x32, 0xef, 0x8e, 0x77, 0x50, 0x58, 0x71, 0xc8, 0xaf, 0x5b, 0xc2, 0x8c, 0x37, 0x46, 0xeb, 0x75, 0xbc, 0x96, 0x89, + 0x12, 0x86, 0xe8, 0x5c, 0x9e, 0x34, 0x42, 0xed, 0xbc, 0xf6, 0x72, 0x69, 0x28, 0xa5, 0xbd, 0x36, 0x9c, 0xe2, 0x67, + 0xf1, 0x09, 0x4f, 0xcb, 0x49, 0x96, 0x45, 0x16, 0xe4, 0xe8, 0x6a, 0x03, 0x91, 0xab, 0x77, 0x5a, 0x52, 0x49, 0x9c, + 0xa6, 0x6a, 0x84, 0xc1, 0x7c, 0x7b, 0x68, 0x71, 0x23, 0x3d, 0x82, 0x13, 0x58, 0x1c, 0xd7, 0x75, 0x37, 0x81, 0x86, + 0x2e, 0xfb, 0x74, 0x66, 0xfb, 0xcf, 0xfe, 0xab, 0x57, 0x1c, 0xe0, 0x02, 0x95, 0x4c, 0x54, 0x7d, 0x31, 0xf7, 0xb7, + 0x3f, 0xe2, 0xb8, 0xf0, 0xe6, 0x90, 0x68, 0x8d, 0x81, 0x9b, 0xdd, 0xad, 0x25, 0x8d, 0x53, 0x5b, 0x6e, 0xbe, 0x87, + 0x61, 0x62, 0x10, 0xe6, 0x2b, 0x2e, 0x14, 0xa6, 0x1b, 0x0c, 0x5a, 0xca, 0xe1, 0x32, 0xb1, 0xf9, 0xd6, 0x0b, 0xb2, + 0xfb, 0xc4, 0xf4, 0xe8, 0xf9, 0x86, 0xae, 0x9c, 0x8c, 0x37, 0x07, 0x96, 0x59, 0x87, 0xdf, 0x2d, 0xd4, 0x05, 0x97, + 0x7d, 0xc2, 0x59, 0xef, 0xa9, 0x8c, 0xcd, 0x7c, 0xb6, 0xab, 0x14, 0xc7, 0x7d, 0xe3, 0x02, 0x03, 0x01, 0x00, 0x01, + 0x30, 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01, 0x0b, 0x05, 0x00, 0x03, 0x82, 0x01, 0x81, + 0x00, 0xc4, 0xce, 0x37, 0x39, 0x3f, 0x3e, 0x78, 0xdb, 0x9e, 0x37, 0x9c, 0x42, 0x49, 0x30, 0x65, 0xe7, 0x59, 0xd1, + 0xd8, 0x83, 0x55, 0xf4, 0x1b, 0xb0, 0x8e, 0x43, 0xc4, 0x5c, 0x6c, 0xca, 0x95, 0x5a, 0xd9, 0x89, 0xd3, 0x4b, 0x73, + 0x78, 0x8a, 0x3a, 0xc6, 0xe3, 0xdc, 0x67, 0x1d, 0xb6, 0xe9, 0x8e, 0x67, 0x71, 0x0a, 0xa4, 0x00, 0x79, 0x82, 0x40, + 0x11, 0x64, 0x86, 0x4a, 0x8a, 0x8f, 0x98, 0xce, 0x2c, 0x74, 0xb5, 0x56, 0xeb, 0xfa, 0xe8, 0x83, 0x27, 0x0f, 0xec, + 0x12, 0xcb, 0x85, 0x30, 0x9a, 0x16, 0xcc, 0x15, 0x91, 0xb5, 0x66, 0xd0, 0x58, 0xec, 0x1f, 0x55, 0x2c, 0xde, 0x17, + 0xc1, 0x83, 0x5c, 0x50, 0x53, 0x8f, 0x64, 0x62, 0xab, 0xec, 0x2b, 0x04, 0x06, 0xeb, 0x29, 0x7e, 0x18, 0x53, 0xfa, + 0xfd, 0x0b, 0x79, 0x73, 0x65, 0x02, 0x5b, 0x85, 0x8f, 0x8b, 0xb3, 0xd3, 0xa1, 0x1b, 0x3e, 0x4c, 0x90, 0x55, 0xd1, + 0x38, 0x01, 0x0c, 0x76, 0xca, 0x06, 0xe3, 0xaa, 0x3e, 0x7b, 0xfc, 0x3c, 0xbe, 0x8c, 0x25, 0x5a, 0x06, 0x5f, 0x1f, + 0x61, 0x8b, 0xab, 0x2c, 0xa4, 0xc3, 0xc7, 0x2b, 0xfa, 0x07, 0x63, 0x1c, 0xda, 0xea, 0x3f, 0x09, 0x92, 0x67, 0x40, + 0xbb, 0x5d, 0xd5, 0xc8, 0x3d, 0xf0, 0x6b, 0xdc, 0x7d, 0x88, 0x6a, 0x42, 0xb2, 0xe4, 0xd0, 0x82, 0x69, 0xb5, 0x00, + 0x18, 0x40, 0x3c, 0xd1, 0x2c, 0x22, 0x8d, 0xda, 0x9a, 0xdf, 0xb6, 0x79, 0x51, 0xf9, 0x73, 0xe8, 0xfd, 0xb1, 0xb4, + 0x24, 0x3c, 0x2f, 0xfe, 0xeb, 0xb3, 0xd2, 0x0c, 0x14, 0x64, 0x9b, 0x63, 0xe9, 0xc4, 0x71, 0x8e, 0x6b, 0xac, 0x5a, + 0xa2, 0x16, 0x18, 0xe9, 0x12, 0xec, 0xa1, 0x8c, 0x4c, 0x81, 0xd1, 0x26, 0xb3, 0xa5, 0x3d, 0x5a, 0x0f, 0xf1, 0x81, + 0xe4, 0x2b, 0xb5, 0x9a, 0xc6, 0x83, 0x28, 0x64, 0x92, 0xfe, 0x36, 0x88, 0xab, 0x16, 0x29, 0x5a, 0x03, 0xef, 0x96, + 0x2c, 0xb0, 0xd8, 0x16, 0x02, 0x3b, 0x5d, 0x38, 0xff, 0xed, 0xcb, 0x59, 0xdf, 0xb0, 0x9a, 0x5f, 0xae, 0xf9, 0xff, + 0xaa, 0xd3, 0xaf, 0x7c, 0xce, 0xa2, 0xeb, 0xd0, 0xeb, 0xb4, 0x2e, 0xb8, 0x60, 0xea, 0x7f, 0xb5, 0x79, 0xb5, 0x93, + 0x39, 0x83, 0x04, 0x2b, 0xfe, 0xab, 0xd3, 0x9b, 0x8c, 0xee, 0x32, 0x13, 0x76, 0xaa, 0xed, 0x67, 0x87, 0x0d, 0xa9, + 0x7b, 0xe8, 0x96, 0xb3, 0x22, 0x3e, 0xf4, 0xac, 0xf8, 0xd4, 0x1e, 0xce, 0x1c, 0x73, 0x9a, 0xf4, 0x13, 0x33, 0xe6, + 0x0f, 0x43, 0xc3, 0xe5, 0x23, 0x78, 0xeb, 0xc3, 0xe4, 0x98, 0x82, 0x46, 0x0f, 0x93, 0xb0, 0xda, 0xa5, 0xa4, 0xb8, + 0x9b, 0x81, 0x65, 0x68, 0xf5, 0xf1, 0xae, 0xd0, 0x5c, 0x9e, 0x9d, 0x9b, 0xa8, 0x88, 0x2f, 0xdd, 0x25, 0x2b, 0xf3, + 0xbb, 0xe0, 0xfe, 0xf8, 0xeb}; +unsigned int client_cert_test_len = 1088; diff --git a/subsys/net/l2/wifi/test_certs/client-key.h b/subsys/net/l2/wifi/test_certs/client-key.h new file mode 100644 index 000000000000000..40d816e6a846933 --- /dev/null +++ b/subsys/net/l2/wifi/test_certs/client-key.h @@ -0,0 +1,100 @@ +/** + * Copyright 2024 NXP + * SPDX-License-Identifier: Apache-2.0 + */ + +const unsigned char client_key_test[] = { + 0x30, 0x82, 0x06, 0xe3, 0x02, 0x01, 0x00, 0x02, 0x82, 0x01, 0x81, 0x00, 0xd6, 0xd8, 0x4e, 0x1a, 0xc7, 0x51, 0x89, + 0x3c, 0x6e, 0xd5, 0xf7, 0xc2, 0x44, 0xbd, 0x8d, 0x53, 0x6a, 0x01, 0xc4, 0x6b, 0x1d, 0xe3, 0xae, 0xbd, 0x83, 0x34, + 0x92, 0x31, 0x89, 0xe3, 0x65, 0x63, 0x25, 0xf3, 0xe8, 0x38, 0x37, 0xcd, 0xae, 0x13, 0xac, 0xe3, 0x61, 0xa8, 0x4f, + 0x1a, 0xa0, 0x61, 0xb0, 0x54, 0x19, 0x39, 0x4c, 0xd5, 0xb2, 0x99, 0xaa, 0x2c, 0x15, 0xe5, 0x7e, 0x61, 0xec, 0xe9, + 0x2f, 0x1e, 0xd1, 0x89, 0x91, 0x90, 0x08, 0x08, 0x51, 0xc7, 0x8a, 0x9f, 0xa2, 0xf0, 0xa8, 0x69, 0x8e, 0xf7, 0xda, + 0x7e, 0x69, 0xb4, 0x28, 0xf8, 0x83, 0x81, 0x6d, 0x96, 0x6d, 0xb2, 0x88, 0x98, 0xa3, 0x1f, 0x2f, 0xe3, 0x09, 0x3a, + 0x5e, 0xe1, 0x0a, 0xfc, 0xba, 0xd5, 0x98, 0x0a, 0x1d, 0x66, 0x1f, 0xeb, 0x8d, 0x9b, 0x6a, 0x7a, 0xd9, 0x43, 0x29, + 0x8c, 0xd9, 0xbd, 0x6e, 0x97, 0xde, 0x84, 0x8b, 0xe0, 0x9c, 0x36, 0x21, 0xd8, 0x22, 0xa1, 0xbf, 0xcc, 0x01, 0x53, + 0x53, 0x31, 0x36, 0x97, 0xaa, 0xfe, 0x53, 0x88, 0x14, 0xc9, 0xac, 0xbb, 0x03, 0x4d, 0x74, 0x48, 0x8d, 0x47, 0x5b, + 0xbe, 0x41, 0xc0, 0xd2, 0x70, 0x2a, 0xc0, 0x41, 0x2d, 0xa8, 0x1a, 0xd8, 0xa5, 0x88, 0xd1, 0x5e, 0x07, 0x33, 0x40, + 0x00, 0xaa, 0xe4, 0xc3, 0xd1, 0xb5, 0x57, 0x22, 0x1c, 0xfc, 0xc8, 0x84, 0x23, 0xab, 0xe2, 0x27, 0x2d, 0x40, 0xa8, + 0x1e, 0x39, 0xf3, 0x58, 0xd3, 0x6a, 0x62, 0x55, 0x6d, 0x46, 0x53, 0xf9, 0xad, 0x5a, 0xa4, 0xf5, 0xba, 0x5c, 0xb8, + 0x95, 0xc8, 0x32, 0xef, 0x8e, 0x77, 0x50, 0x58, 0x71, 0xc8, 0xaf, 0x5b, 0xc2, 0x8c, 0x37, 0x46, 0xeb, 0x75, 0xbc, + 0x96, 0x89, 0x12, 0x86, 0xe8, 0x5c, 0x9e, 0x34, 0x42, 0xed, 0xbc, 0xf6, 0x72, 0x69, 0x28, 0xa5, 0xbd, 0x36, 0x9c, + 0xe2, 0x67, 0xf1, 0x09, 0x4f, 0xcb, 0x49, 0x96, 0x45, 0x16, 0xe4, 0xe8, 0x6a, 0x03, 0x91, 0xab, 0x77, 0x5a, 0x52, + 0x49, 0x9c, 0xa6, 0x6a, 0x84, 0xc1, 0x7c, 0x7b, 0x68, 0x71, 0x23, 0x3d, 0x82, 0x13, 0x58, 0x1c, 0xd7, 0x75, 0x37, + 0x81, 0x86, 0x2e, 0xfb, 0x74, 0x66, 0xfb, 0xcf, 0xfe, 0xab, 0x57, 0x1c, 0xe0, 0x02, 0x95, 0x4c, 0x54, 0x7d, 0x31, + 0xf7, 0xb7, 0x3f, 0xe2, 0xb8, 0xf0, 0xe6, 0x90, 0x68, 0x8d, 0x81, 0x9b, 0xdd, 0xad, 0x25, 0x8d, 0x53, 0x5b, 0x6e, + 0xbe, 0x87, 0x61, 0x62, 0x10, 0xe6, 0x2b, 0x2e, 0x14, 0xa6, 0x1b, 0x0c, 0x5a, 0xca, 0xe1, 0x32, 0xb1, 0xf9, 0xd6, + 0x0b, 0xb2, 0xfb, 0xc4, 0xf4, 0xe8, 0xf9, 0x86, 0xae, 0x9c, 0x8c, 0x37, 0x07, 0x96, 0x59, 0x87, 0xdf, 0x2d, 0xd4, + 0x05, 0x97, 0x7d, 0xc2, 0x59, 0xef, 0xa9, 0x8c, 0xcd, 0x7c, 0xb6, 0xab, 0x14, 0xc7, 0x7d, 0xe3, 0x02, 0x03, 0x01, + 0x00, 0x01, 0x02, 0x82, 0x01, 0x80, 0x04, 0x89, 0x7c, 0xdc, 0xc3, 0xe8, 0xcc, 0xe5, 0x21, 0xd2, 0x12, 0xf1, 0x5f, + 0x52, 0x41, 0x71, 0xc9, 0x83, 0x50, 0x0a, 0x93, 0x0f, 0x03, 0xd9, 0xac, 0xb3, 0xa7, 0x82, 0xb4, 0x4e, 0xc1, 0x0d, + 0x5e, 0xf7, 0xcf, 0xa7, 0xa0, 0x46, 0x0f, 0xaf, 0x0a, 0xaf, 0xa2, 0x98, 0x53, 0x53, 0x54, 0x9f, 0xbb, 0x81, 0x8b, + 0x26, 0xd2, 0xa0, 0x90, 0xac, 0xfe, 0x13, 0x00, 0x43, 0x60, 0x6f, 0xe0, 0xf8, 0xeb, 0xad, 0xd2, 0xee, 0xfc, 0xcb, + 0xf5, 0xdf, 0x77, 0x1a, 0xa7, 0xaa, 0xc7, 0x5e, 0x1d, 0xb0, 0x5c, 0xfc, 0x8e, 0xf8, 0xac, 0x72, 0xc9, 0x8a, 0xb5, + 0xfc, 0x3d, 0xbc, 0x37, 0x84, 0xd5, 0xad, 0xa3, 0x84, 0x3d, 0x16, 0xa6, 0x53, 0x3d, 0x3d, 0xb3, 0x65, 0xb2, 0xec, + 0x5f, 0xd1, 0x96, 0xdd, 0x59, 0x3f, 0x38, 0x36, 0x58, 0x01, 0x50, 0x25, 0x42, 0xf3, 0x5e, 0x85, 0xc9, 0x98, 0x1b, + 0x72, 0xe1, 0x21, 0x55, 0x2b, 0x2f, 0x7b, 0xc8, 0xff, 0x71, 0x75, 0x75, 0x71, 0xb5, 0x08, 0x0d, 0x07, 0x16, 0xed, + 0x58, 0x06, 0x3f, 0xaa, 0x22, 0xa3, 0xb0, 0x66, 0x2a, 0x56, 0x7d, 0xe5, 0x4b, 0xe2, 0xb0, 0xb0, 0xc9, 0xc0, 0xe4, + 0xa6, 0x3a, 0xba, 0x24, 0x1a, 0xad, 0x08, 0x91, 0xe3, 0x1a, 0x01, 0x3c, 0xeb, 0xd5, 0x17, 0xc6, 0xcc, 0xfb, 0xd8, + 0xc0, 0x86, 0x4f, 0xe6, 0x66, 0xb5, 0xa3, 0xab, 0x2b, 0xa5, 0x11, 0xff, 0xcb, 0x56, 0x5f, 0x88, 0xef, 0x64, 0x45, + 0x73, 0x09, 0x68, 0x86, 0x5a, 0x7c, 0xb4, 0x3c, 0xb8, 0x1f, 0x4b, 0x40, 0xd3, 0x05, 0xe2, 0xbb, 0x2c, 0x05, 0x8e, + 0xda, 0x81, 0x9f, 0x37, 0x25, 0xfa, 0x7d, 0x7d, 0x94, 0x5f, 0x11, 0xc9, 0x47, 0x24, 0x72, 0x0e, 0x17, 0x08, 0xb6, + 0xa7, 0xf0, 0x13, 0x2d, 0x76, 0xfe, 0x97, 0xed, 0x0c, 0xe6, 0x3b, 0xc0, 0x04, 0xe8, 0xf9, 0x0e, 0x70, 0xd7, 0x63, + 0xa8, 0x32, 0xf1, 0x63, 0xd1, 0xca, 0xc7, 0xe2, 0x81, 0xf5, 0x72, 0x97, 0x22, 0x43, 0x52, 0x0a, 0x6b, 0x22, 0xdd, + 0xe6, 0xf3, 0x9d, 0xed, 0x3a, 0xeb, 0x3b, 0x52, 0x7c, 0x38, 0xca, 0x14, 0xbc, 0x95, 0x9c, 0x9c, 0x0b, 0x14, 0x4b, + 0x2c, 0x99, 0x45, 0xd1, 0x4e, 0x02, 0xaa, 0xf4, 0x57, 0x60, 0xba, 0xaf, 0x92, 0x03, 0x22, 0x03, 0x6d, 0x5e, 0x36, + 0xfa, 0x14, 0x92, 0x26, 0x09, 0x61, 0x40, 0xe2, 0x9d, 0x75, 0x01, 0xb6, 0x0e, 0x89, 0xfc, 0x44, 0xc4, 0xf1, 0x4f, + 0xb0, 0xe9, 0x50, 0xfe, 0xdf, 0xcd, 0xec, 0xe7, 0xda, 0x41, 0x75, 0x73, 0x4f, 0x46, 0x63, 0xf9, 0xa1, 0x28, 0xf4, + 0xcb, 0xf6, 0x19, 0x15, 0x1c, 0xea, 0x0b, 0xde, 0x9a, 0x7d, 0xe8, 0x4c, 0x22, 0xd2, 0x0b, 0x4e, 0x5b, 0xa5, 0x0c, + 0xe0, 0x34, 0x05, 0x97, 0x83, 0xa6, 0x5f, 0x74, 0xba, 0x81, 0x02, 0x81, 0xc1, 0x00, 0xfc, 0x1c, 0xe8, 0x40, 0x0f, + 0x52, 0x89, 0x0b, 0x71, 0x02, 0x91, 0x64, 0xf1, 0x40, 0xfb, 0x55, 0x52, 0x44, 0x43, 0x9d, 0x85, 0x3e, 0x74, 0x86, + 0xfc, 0xbb, 0x16, 0x3e, 0x3f, 0xa5, 0x6a, 0xb5, 0x04, 0xec, 0x4b, 0x5e, 0x06, 0x43, 0xd0, 0xa5, 0xf2, 0x48, 0xdb, + 0x0c, 0xea, 0x4d, 0xf7, 0xfd, 0x8c, 0xcc, 0xb9, 0xe6, 0xe7, 0xa4, 0xb7, 0x2b, 0xbc, 0x80, 0xd0, 0x67, 0xa6, 0x41, + 0xf4, 0x97, 0x5f, 0x86, 0x82, 0x42, 0xe3, 0xf4, 0xfd, 0x68, 0xc2, 0xcc, 0xe2, 0x60, 0x75, 0x9c, 0x55, 0x42, 0x06, + 0x6c, 0xf3, 0x58, 0xa2, 0xdb, 0x3c, 0x63, 0x16, 0x21, 0x99, 0xde, 0x96, 0x46, 0x39, 0x36, 0x12, 0xc0, 0x7a, 0x69, + 0x4c, 0x92, 0x3b, 0x69, 0xd6, 0xc9, 0xc6, 0x01, 0x0f, 0x77, 0x58, 0xc2, 0xba, 0xb4, 0xe1, 0x86, 0x90, 0x92, 0xa8, + 0xba, 0x04, 0x76, 0xd7, 0xb4, 0x2b, 0x24, 0x6e, 0x7c, 0xca, 0x14, 0x3d, 0xe8, 0xb4, 0xcb, 0xf0, 0x2c, 0x00, 0xf9, + 0x21, 0x8c, 0x6f, 0x37, 0x8c, 0x30, 0x69, 0x7a, 0xd2, 0x0e, 0x0a, 0xa1, 0xd5, 0x41, 0x7b, 0x75, 0xe7, 0xa9, 0x41, + 0xe4, 0xeb, 0xbf, 0x7a, 0x89, 0xc4, 0x77, 0x0e, 0x78, 0x80, 0x28, 0x55, 0x97, 0x52, 0x4f, 0x88, 0xc6, 0x96, 0x72, + 0x4c, 0x27, 0x56, 0x73, 0xc7, 0x76, 0x4c, 0x40, 0xf1, 0x3f, 0xf2, 0x6e, 0xc6, 0xc9, 0x08, 0x29, 0x02, 0x81, 0xc1, + 0x00, 0xda, 0x28, 0x4c, 0xfb, 0x2b, 0xa1, 0xb9, 0xe9, 0x95, 0x77, 0x2a, 0x81, 0x4d, 0x51, 0x54, 0xcb, 0xc6, 0xb8, + 0xbb, 0xf4, 0xf0, 0x99, 0x7b, 0x02, 0x7b, 0xdf, 0x0b, 0x2a, 0x83, 0x8f, 0x4b, 0xa7, 0x8b, 0xcb, 0x27, 0x04, 0x7e, + 0x1e, 0x9f, 0x7a, 0xd7, 0x13, 0x8d, 0x9c, 0xa2, 0xbc, 0xf5, 0x3e, 0x1b, 0x2a, 0x7f, 0xb3, 0xc9, 0x05, 0xbd, 0x41, + 0x8f, 0xa5, 0xbf, 0x04, 0x7f, 0xf4, 0xa4, 0x33, 0xd2, 0x45, 0x0d, 0xcf, 0x80, 0x86, 0x59, 0xaa, 0x95, 0xc9, 0xd5, + 0x16, 0x30, 0xc8, 0xbe, 0x1a, 0x5b, 0xaf, 0x78, 0xe3, 0xc2, 0x3e, 0xc8, 0xd5, 0x0b, 0x96, 0x97, 0x7b, 0x51, 0xbb, + 0x88, 0xd4, 0x7c, 0x58, 0x8c, 0x11, 0xd7, 0x81, 0xb3, 0xff, 0x0e, 0x66, 0x4b, 0x2e, 0xac, 0x23, 0x02, 0x0e, 0x7f, + 0xc0, 0xb1, 0x5a, 0xd7, 0x19, 0x05, 0x0a, 0xa4, 0x41, 0x04, 0xcb, 0xbc, 0xd3, 0x3b, 0xc6, 0x49, 0x6e, 0xfa, 0x64, + 0xb7, 0x8b, 0xfe, 0xf8, 0xe9, 0xf3, 0x62, 0xbf, 0xfc, 0x4c, 0xe8, 0x7a, 0x27, 0x9e, 0x30, 0xcd, 0x30, 0x15, 0x4d, + 0xb7, 0x6c, 0xe4, 0xcc, 0x64, 0x6b, 0xe2, 0x1b, 0x94, 0x20, 0x81, 0xb7, 0x93, 0xb0, 0xfd, 0x49, 0x27, 0x5d, 0x98, + 0x19, 0x6d, 0xc9, 0x4e, 0xf6, 0xfd, 0x6f, 0xcb, 0xd3, 0x27, 0x77, 0xbd, 0xf1, 0x1b, 0x6f, 0x8f, 0x67, 0x66, 0xa4, + 0xba, 0x07, 0x2b, 0x02, 0x81, 0xc1, 0x00, 0x93, 0x91, 0xf4, 0x1c, 0x33, 0x1b, 0xd3, 0x9d, 0xff, 0xdb, 0x49, 0xf1, + 0xb5, 0x09, 0x9d, 0x54, 0x16, 0xe0, 0x60, 0x57, 0x9e, 0xbb, 0xad, 0x07, 0xaa, 0x7d, 0x74, 0x0a, 0xa1, 0xc4, 0x98, + 0x8e, 0x36, 0xc0, 0x7d, 0x69, 0x1e, 0xef, 0xa8, 0xfc, 0xc9, 0xb1, 0xfd, 0x8e, 0x34, 0xc3, 0xc8, 0xaa, 0x00, 0x35, + 0x81, 0x87, 0x78, 0x05, 0xc1, 0x35, 0xf7, 0x93, 0xca, 0xe9, 0x30, 0xb7, 0x20, 0x8d, 0x4e, 0x5b, 0xf4, 0x79, 0x64, + 0xe7, 0x6d, 0x41, 0x59, 0xed, 0x05, 0x81, 0x02, 0xb6, 0xac, 0x6d, 0x06, 0x47, 0xd5, 0xb5, 0x07, 0x36, 0x9e, 0xc5, + 0x3d, 0x1a, 0x13, 0xef, 0xe7, 0x34, 0x59, 0x9e, 0x9e, 0x21, 0x4e, 0x45, 0xbe, 0x8d, 0x45, 0xfb, 0xb0, 0xbe, 0xd0, + 0x88, 0xa4, 0x5d, 0xee, 0x75, 0xa5, 0x45, 0xe5, 0x50, 0x97, 0xe5, 0x50, 0x9f, 0xf9, 0xa6, 0xfa, 0xa1, 0xba, 0x33, + 0x0b, 0xfd, 0x3d, 0x67, 0xd5, 0xc9, 0x15, 0xb2, 0xdd, 0xf5, 0x53, 0xe8, 0x7f, 0xcb, 0xac, 0xf9, 0xed, 0xb4, 0x14, + 0xb9, 0xd0, 0xa4, 0x69, 0x72, 0xca, 0xda, 0x16, 0x83, 0x30, 0x43, 0xb1, 0x8f, 0x66, 0xb2, 0xe0, 0xee, 0x2d, 0x32, + 0xa7, 0x24, 0xbf, 0x97, 0x5c, 0x6a, 0x43, 0xc2, 0xcc, 0x43, 0xb9, 0xa2, 0x53, 0x93, 0x1f, 0x16, 0x8c, 0x25, 0x61, + 0x83, 0x0d, 0xf3, 0xa9, 0x5b, 0x50, 0x3e, 0x31, 0xe9, 0x02, 0x81, 0xc0, 0x43, 0x5e, 0x1a, 0x97, 0x9d, 0x9b, 0xad, + 0x9b, 0x92, 0x4a, 0x60, 0x57, 0xd9, 0x96, 0x7a, 0x07, 0x0b, 0x70, 0xd4, 0xaa, 0x08, 0xfa, 0x7c, 0x60, 0x01, 0xfc, + 0x98, 0xa8, 0x22, 0x44, 0x47, 0xea, 0x8f, 0x62, 0xc6, 0xc3, 0xbe, 0x66, 0x9a, 0x7d, 0x06, 0x99, 0xc5, 0x2b, 0x4f, + 0x9d, 0xe6, 0x65, 0xad, 0x61, 0xec, 0x59, 0x8a, 0x84, 0x39, 0x33, 0x5b, 0xb6, 0xa5, 0x4c, 0x30, 0x6f, 0x4d, 0x9d, + 0xab, 0x1b, 0x23, 0xee, 0xa6, 0x13, 0xd6, 0xf0, 0xb4, 0x9c, 0xc5, 0x2e, 0xbb, 0x15, 0xe2, 0x8e, 0xa5, 0x2d, 0x84, + 0xb9, 0x60, 0xac, 0x9e, 0xbc, 0x1b, 0x7d, 0xff, 0x7d, 0x57, 0x7a, 0x00, 0x01, 0x0d, 0xfd, 0x12, 0x14, 0x18, 0x66, + 0xb7, 0x3c, 0xd6, 0x27, 0x84, 0xa3, 0xff, 0x08, 0x38, 0x84, 0x5d, 0xb3, 0x15, 0x91, 0xa5, 0xc6, 0xd6, 0x25, 0xb9, + 0x1f, 0x52, 0xe9, 0xcf, 0x7f, 0xb3, 0x7f, 0xc2, 0x01, 0x81, 0x55, 0x44, 0xd0, 0xf8, 0x85, 0xc9, 0x49, 0x1d, 0x7f, + 0x87, 0xdc, 0x00, 0x16, 0x68, 0xd1, 0x92, 0xe4, 0x6a, 0x2a, 0xc9, 0xfb, 0x10, 0xa7, 0x7e, 0xee, 0xab, 0xda, 0x01, + 0x06, 0x37, 0x1b, 0x97, 0xa3, 0x06, 0x0e, 0xd1, 0x5e, 0x54, 0xaa, 0xb9, 0x7f, 0x8b, 0xa0, 0xd4, 0xe8, 0xe2, 0x73, + 0x20, 0xdb, 0x99, 0x40, 0x90, 0x8a, 0x16, 0x63, 0x44, 0x5d, 0x10, 0x15, 0x5a, 0x4d, 0x02, 0x81, 0xc0, 0x5a, 0x64, + 0x55, 0x96, 0x85, 0x29, 0xf3, 0x13, 0xe5, 0x67, 0xf4, 0xb8, 0xfa, 0x43, 0xae, 0x75, 0xce, 0xae, 0x01, 0xc7, 0x51, + 0xac, 0xc4, 0x95, 0x81, 0x36, 0x2c, 0x4d, 0x31, 0x92, 0x3d, 0xa4, 0x1e, 0x42, 0x2e, 0x66, 0xe0, 0xd9, 0x04, 0xfd, + 0xb7, 0xc1, 0x88, 0xdc, 0xc7, 0xee, 0x01, 0x0d, 0xfa, 0x2a, 0x4a, 0x04, 0x85, 0x51, 0xa9, 0x52, 0x35, 0xe7, 0xe6, + 0x4a, 0xac, 0x6d, 0x0f, 0x1c, 0xa5, 0x28, 0x66, 0xd5, 0x55, 0xf9, 0x0e, 0x13, 0x7e, 0xfa, 0x26, 0x28, 0xad, 0xbe, + 0xf9, 0xe8, 0xfd, 0x37, 0xdf, 0x9b, 0x8d, 0x9b, 0x7c, 0xe1, 0x28, 0xd2, 0x21, 0xb0, 0x47, 0xba, 0xdc, 0xbb, 0xf9, + 0x69, 0xcc, 0x0f, 0x3b, 0x98, 0x6c, 0xdb, 0xc1, 0x66, 0x0f, 0x97, 0x06, 0xbe, 0xcb, 0xe2, 0x65, 0xae, 0x23, 0x75, + 0x7c, 0x5c, 0xbf, 0x26, 0x75, 0xae, 0xf6, 0x0d, 0xad, 0x16, 0xb5, 0x14, 0x9e, 0x0f, 0xd3, 0x66, 0x62, 0x48, 0xd4, + 0x35, 0x09, 0x63, 0xc4, 0xed, 0x13, 0xa2, 0x09, 0x11, 0x4a, 0x20, 0x52, 0x6b, 0x39, 0x74, 0xc4, 0xff, 0x6a, 0xb3, + 0xc5, 0xbf, 0x72, 0xf7, 0xae, 0x6c, 0x60, 0xba, 0x8f, 0xb9, 0xe0, 0xc3, 0x04, 0xe0, 0x47, 0xbc, 0xb3, 0x70, 0x49, + 0x89, 0xbc, 0x4c, 0x4f, 0x51, 0xcb, 0x5a, 0x7f, 0xc1, 0xbc, 0x92, 0xc9, 0x90, 0x66, 0x58, 0x94, 0x63, 0x2a, 0xcd}; +unsigned int client_key_test_len = 1767; diff --git a/subsys/net/l2/wifi/test_certs/server-cert.h b/subsys/net/l2/wifi/test_certs/server-cert.h new file mode 100644 index 000000000000000..2663869dee2c842 --- /dev/null +++ b/subsys/net/l2/wifi/test_certs/server-cert.h @@ -0,0 +1,65 @@ +/** + * Copyright 2024 NXP + * SPDX-License-Identifier: Apache-2.0 + */ + +const unsigned char server_cert_test[] = { + 0x30, 0x82, 0x04, 0x3c, 0x30, 0x82, 0x02, 0xa4, 0x02, 0x01, 0x01, 0x30, 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, + 0xf7, 0x0d, 0x01, 0x01, 0x0b, 0x05, 0x00, 0x30, 0x5f, 0x31, 0x0b, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, + 0x02, 0x49, 0x4e, 0x31, 0x0b, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x08, 0x0c, 0x02, 0x4d, 0x48, 0x31, 0x0d, 0x30, + 0x0b, 0x06, 0x03, 0x55, 0x04, 0x07, 0x0c, 0x04, 0x50, 0x55, 0x4e, 0x45, 0x31, 0x0c, 0x30, 0x0a, 0x06, 0x03, 0x55, + 0x04, 0x0a, 0x0c, 0x03, 0x4e, 0x58, 0x50, 0x31, 0x0b, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x03, 0x0c, 0x02, 0x43, + 0x41, 0x31, 0x19, 0x30, 0x17, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x09, 0x01, 0x16, 0x0a, 0x63, + 0x61, 0x40, 0x6e, 0x78, 0x70, 0x2e, 0x63, 0x6f, 0x6d, 0x30, 0x20, 0x17, 0x0d, 0x32, 0x33, 0x30, 0x33, 0x31, 0x35, + 0x31, 0x34, 0x32, 0x34, 0x33, 0x37, 0x5a, 0x18, 0x0f, 0x33, 0x30, 0x32, 0x32, 0x30, 0x37, 0x31, 0x36, 0x31, 0x34, + 0x32, 0x34, 0x33, 0x37, 0x5a, 0x30, 0x67, 0x31, 0x0b, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x49, + 0x4e, 0x31, 0x0b, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x08, 0x0c, 0x02, 0x4d, 0x48, 0x31, 0x0d, 0x30, 0x0b, 0x06, + 0x03, 0x55, 0x04, 0x07, 0x0c, 0x04, 0x50, 0x55, 0x4e, 0x45, 0x31, 0x0c, 0x30, 0x0a, 0x06, 0x03, 0x55, 0x04, 0x0a, + 0x0c, 0x03, 0x4e, 0x58, 0x50, 0x31, 0x0f, 0x30, 0x0d, 0x06, 0x03, 0x55, 0x04, 0x03, 0x0c, 0x06, 0x53, 0x45, 0x52, + 0x56, 0x45, 0x52, 0x31, 0x1d, 0x30, 0x1b, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x09, 0x01, 0x16, + 0x0e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x40, 0x6e, 0x78, 0x70, 0x2e, 0x63, 0x6f, 0x6d, 0x30, 0x82, 0x01, 0xa2, + 0x30, 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01, 0x01, 0x05, 0x00, 0x03, 0x82, 0x01, 0x8f, + 0x00, 0x30, 0x82, 0x01, 0x8a, 0x02, 0x82, 0x01, 0x81, 0x00, 0xce, 0x19, 0xcb, 0x0e, 0x8d, 0x82, 0xc1, 0x22, 0xe1, + 0xed, 0xa2, 0x88, 0xd0, 0x46, 0xb6, 0x3c, 0x70, 0xcf, 0x30, 0x9c, 0x83, 0x55, 0x7d, 0xd6, 0xac, 0xb3, 0x2f, 0x02, + 0xb3, 0x86, 0x8c, 0x8e, 0xcc, 0xcc, 0x9a, 0x6b, 0x1c, 0xf4, 0x12, 0x6e, 0x3a, 0x97, 0xb5, 0x6f, 0x0a, 0xf7, 0x0f, + 0x7d, 0x61, 0x1f, 0xf4, 0xf1, 0xef, 0x27, 0xa8, 0x8d, 0xde, 0xcf, 0x77, 0xfa, 0x8c, 0x0c, 0xe3, 0x9b, 0x06, 0xfe, + 0x70, 0x54, 0xd2, 0xb5, 0x4b, 0xd8, 0xac, 0x96, 0x6b, 0xef, 0x45, 0xe5, 0x33, 0xe4, 0xd4, 0xec, 0x37, 0xae, 0xfc, + 0xe9, 0xbf, 0x4d, 0x97, 0x22, 0x85, 0xde, 0xbf, 0xfe, 0x58, 0x31, 0x01, 0xfd, 0x7c, 0xc1, 0x10, 0x8b, 0x06, 0xdd, + 0x78, 0x6f, 0xad, 0x93, 0x6f, 0x1a, 0xf4, 0xf7, 0xab, 0x72, 0x63, 0xd3, 0x24, 0xcc, 0x47, 0xc4, 0xd2, 0x38, 0xfd, + 0x69, 0x6a, 0x20, 0x72, 0x65, 0xa9, 0xe2, 0xe3, 0x14, 0xb3, 0xe1, 0x99, 0xc2, 0x70, 0xed, 0x4f, 0xd8, 0xf9, 0x71, + 0x5a, 0x08, 0x2e, 0x90, 0x99, 0x87, 0x4c, 0x8d, 0x5b, 0xf2, 0x25, 0x82, 0xe1, 0xfe, 0x50, 0x38, 0xf3, 0x91, 0xd2, + 0x86, 0xe6, 0xc9, 0xdc, 0x14, 0xef, 0xaf, 0x75, 0x48, 0x92, 0x65, 0xb3, 0x1a, 0x27, 0x21, 0x56, 0xa9, 0xa0, 0xfd, + 0x99, 0xc6, 0xfe, 0x13, 0x3f, 0x65, 0xe2, 0x5a, 0x21, 0x1c, 0xac, 0xce, 0xea, 0x8d, 0x21, 0xae, 0x04, 0xeb, 0x0e, + 0x1e, 0x90, 0x2b, 0x4b, 0x63, 0x11, 0xd4, 0x27, 0x3f, 0x72, 0xd3, 0x6a, 0x7c, 0xae, 0x41, 0x47, 0xd4, 0xdb, 0x7b, + 0xf3, 0xbf, 0x31, 0x4d, 0x3a, 0x40, 0x02, 0x65, 0xfd, 0x1d, 0x0a, 0x35, 0x8b, 0xf3, 0x2e, 0x38, 0x56, 0xc2, 0xb3, + 0x88, 0xc1, 0x36, 0xa0, 0x02, 0x09, 0xe7, 0x2d, 0xc2, 0xbe, 0x68, 0xcd, 0x42, 0xc3, 0xda, 0x4d, 0xdd, 0xfa, 0x69, + 0x39, 0x49, 0x93, 0x3c, 0x6c, 0x00, 0x6f, 0x8b, 0x30, 0x88, 0x23, 0x8c, 0x0f, 0xef, 0x9e, 0x65, 0xd2, 0x45, 0x00, + 0xd9, 0x80, 0x59, 0x1f, 0xcb, 0x65, 0x35, 0xdc, 0x85, 0xf7, 0xc2, 0x00, 0x9b, 0xc0, 0x2e, 0x4c, 0xb0, 0x90, 0xcd, + 0x72, 0xbd, 0x8d, 0x61, 0x4f, 0x26, 0x12, 0x4c, 0x10, 0x32, 0xeb, 0x03, 0x42, 0x1f, 0xb6, 0x9a, 0xc2, 0xab, 0x31, + 0x54, 0xb8, 0x80, 0xe2, 0x05, 0x40, 0xdd, 0x36, 0xed, 0x62, 0x84, 0xee, 0xb3, 0x0e, 0x0e, 0x74, 0x48, 0xad, 0xad, + 0x6b, 0xd6, 0x99, 0x09, 0xc0, 0xa6, 0x61, 0x24, 0x19, 0x12, 0xcc, 0xca, 0x47, 0x12, 0x4a, 0xf3, 0x65, 0xef, 0xed, + 0x97, 0x1a, 0x74, 0xa5, 0x4a, 0xbb, 0xdf, 0x02, 0x49, 0x1b, 0xb0, 0x4d, 0xa1, 0x95, 0x25, 0xda, 0x63, 0xe5, 0x44, + 0xb2, 0xf2, 0x35, 0x5e, 0x80, 0x72, 0x7b, 0x50, 0x45, 0x5f, 0xc4, 0xc6, 0xcd, 0x85, 0x02, 0x03, 0x01, 0x00, 0x01, + 0x30, 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01, 0x0b, 0x05, 0x00, 0x03, 0x82, 0x01, 0x81, + 0x00, 0xaa, 0x6d, 0x4f, 0x75, 0x97, 0x2d, 0x69, 0xa6, 0x13, 0xc0, 0xde, 0xe1, 0x2f, 0x91, 0xeb, 0x63, 0x2a, 0x16, + 0x8a, 0x56, 0x75, 0xce, 0xcb, 0x6f, 0xfa, 0xfa, 0x96, 0xa2, 0xf4, 0x87, 0xcd, 0xea, 0xc5, 0x9c, 0x79, 0x63, 0x56, + 0x3b, 0x20, 0x02, 0xc2, 0xb4, 0xc8, 0x6c, 0x03, 0x0a, 0x19, 0xa0, 0xd6, 0x2d, 0xb4, 0x9a, 0x70, 0xe8, 0x86, 0x09, + 0xcd, 0xf7, 0x38, 0xf7, 0x9a, 0x6c, 0xce, 0xeb, 0x1f, 0xff, 0x34, 0x1f, 0x20, 0xbd, 0x64, 0x93, 0xef, 0x95, 0xc4, + 0x60, 0x68, 0x23, 0xe6, 0x5f, 0x20, 0xdd, 0xcd, 0xbf, 0xe2, 0x31, 0x66, 0xa5, 0x8a, 0x50, 0x88, 0xcc, 0x5a, 0x8d, + 0x6d, 0x81, 0x00, 0x8b, 0xba, 0xf7, 0x2b, 0x0d, 0xe6, 0x02, 0x0e, 0x43, 0x96, 0x49, 0x78, 0x0f, 0xbf, 0x2a, 0x26, + 0x2e, 0xde, 0xa0, 0xc4, 0x99, 0x71, 0x70, 0xfd, 0x31, 0xdc, 0xa4, 0x98, 0x80, 0x14, 0xaf, 0xe9, 0x86, 0x4e, 0x00, + 0x52, 0x42, 0x9e, 0x22, 0x63, 0xbc, 0x25, 0x4d, 0xd0, 0xf4, 0xa9, 0x08, 0x9c, 0x82, 0xbb, 0x72, 0xce, 0xee, 0x08, + 0x13, 0x33, 0xe4, 0xa8, 0x9c, 0x74, 0x8d, 0x3b, 0x79, 0x99, 0x17, 0x18, 0x28, 0x9c, 0x18, 0x6b, 0xd7, 0x36, 0x94, + 0x2c, 0xf4, 0x0e, 0x0c, 0x6f, 0x27, 0x57, 0xdc, 0x23, 0x18, 0xee, 0xb7, 0xc2, 0x65, 0x5e, 0xd1, 0x6a, 0x59, 0x7e, + 0x2a, 0xe8, 0xeb, 0xb4, 0xf8, 0xb7, 0xa5, 0xbc, 0xc5, 0x7c, 0x0f, 0x7b, 0x6f, 0x60, 0x32, 0x24, 0x8a, 0xf6, 0x60, + 0xb2, 0x6d, 0x96, 0xb9, 0x27, 0x11, 0x58, 0x94, 0x75, 0x30, 0xe2, 0x34, 0x8d, 0x88, 0x90, 0xa7, 0xb4, 0x36, 0x55, + 0x30, 0x7f, 0x10, 0x30, 0x48, 0x8c, 0x60, 0x6a, 0x7e, 0x2f, 0x16, 0xc8, 0x72, 0x9e, 0xb8, 0xe8, 0xb8, 0x05, 0xf7, + 0x48, 0xe9, 0x22, 0x4d, 0x9c, 0x2a, 0xd7, 0xba, 0x4b, 0xf7, 0x63, 0xf9, 0x08, 0x6b, 0xd3, 0x88, 0x8f, 0x54, 0xce, + 0xc3, 0x23, 0xed, 0x57, 0xb8, 0xa2, 0x44, 0x2c, 0x36, 0xe6, 0x96, 0xcb, 0xf7, 0xed, 0x8b, 0xfb, 0xf6, 0x6d, 0x6e, + 0xa1, 0xd5, 0x43, 0x6d, 0xbd, 0x4c, 0xe7, 0xc6, 0x30, 0x03, 0x1f, 0x1f, 0x48, 0xbd, 0xc6, 0x1b, 0x5d, 0xc7, 0x60, + 0xb3, 0x42, 0xbf, 0x0f, 0x8c, 0x1f, 0xd3, 0xea, 0x8b, 0x1c, 0x91, 0x89, 0x7c, 0x88, 0xbe, 0x93, 0xc9, 0xf1, 0x1c, + 0x5c, 0xc6, 0x56, 0x10, 0x6e, 0xae, 0x55, 0x3e, 0x19, 0xa2, 0xab, 0x05, 0x4c, 0x62, 0xa9, 0x25, 0x3f, 0x54, 0x9e, + 0xac, 0x47, 0x22, 0x7e, 0x03, 0xf0, 0xfb, 0x36, 0x8c, 0x89, 0x5c, 0x5f, 0xfd, 0xcf, 0xf3, 0x92, 0xc6, 0x13, 0xed, + 0x4e, 0x28, 0x63, 0xa0, 0xfa, 0xae, 0x19, 0x53, 0x95, 0x80, 0x0f, 0xa8, 0x82, 0x52, 0xde, 0x89, 0xb5, 0xa7, 0xc5, + 0xf9, 0x80, 0x0a, 0x3c, 0x2a}; +unsigned int server_cert_test_len = 1088; diff --git a/subsys/net/l2/wifi/test_certs/server-key.h b/subsys/net/l2/wifi/test_certs/server-key.h new file mode 100644 index 000000000000000..54633bfd8509a36 --- /dev/null +++ b/subsys/net/l2/wifi/test_certs/server-key.h @@ -0,0 +1,100 @@ +/** + * Copyright 2024 NXP + * SPDX-License-Identifier: Apache-2.0 + */ + +const unsigned char server_key_test[] = { + 0x30, 0x82, 0x06, 0xe3, 0x02, 0x01, 0x00, 0x02, 0x82, 0x01, 0x81, 0x00, 0xce, 0x19, 0xcb, 0x0e, 0x8d, 0x82, 0xc1, + 0x22, 0xe1, 0xed, 0xa2, 0x88, 0xd0, 0x46, 0xb6, 0x3c, 0x70, 0xcf, 0x30, 0x9c, 0x83, 0x55, 0x7d, 0xd6, 0xac, 0xb3, + 0x2f, 0x02, 0xb3, 0x86, 0x8c, 0x8e, 0xcc, 0xcc, 0x9a, 0x6b, 0x1c, 0xf4, 0x12, 0x6e, 0x3a, 0x97, 0xb5, 0x6f, 0x0a, + 0xf7, 0x0f, 0x7d, 0x61, 0x1f, 0xf4, 0xf1, 0xef, 0x27, 0xa8, 0x8d, 0xde, 0xcf, 0x77, 0xfa, 0x8c, 0x0c, 0xe3, 0x9b, + 0x06, 0xfe, 0x70, 0x54, 0xd2, 0xb5, 0x4b, 0xd8, 0xac, 0x96, 0x6b, 0xef, 0x45, 0xe5, 0x33, 0xe4, 0xd4, 0xec, 0x37, + 0xae, 0xfc, 0xe9, 0xbf, 0x4d, 0x97, 0x22, 0x85, 0xde, 0xbf, 0xfe, 0x58, 0x31, 0x01, 0xfd, 0x7c, 0xc1, 0x10, 0x8b, + 0x06, 0xdd, 0x78, 0x6f, 0xad, 0x93, 0x6f, 0x1a, 0xf4, 0xf7, 0xab, 0x72, 0x63, 0xd3, 0x24, 0xcc, 0x47, 0xc4, 0xd2, + 0x38, 0xfd, 0x69, 0x6a, 0x20, 0x72, 0x65, 0xa9, 0xe2, 0xe3, 0x14, 0xb3, 0xe1, 0x99, 0xc2, 0x70, 0xed, 0x4f, 0xd8, + 0xf9, 0x71, 0x5a, 0x08, 0x2e, 0x90, 0x99, 0x87, 0x4c, 0x8d, 0x5b, 0xf2, 0x25, 0x82, 0xe1, 0xfe, 0x50, 0x38, 0xf3, + 0x91, 0xd2, 0x86, 0xe6, 0xc9, 0xdc, 0x14, 0xef, 0xaf, 0x75, 0x48, 0x92, 0x65, 0xb3, 0x1a, 0x27, 0x21, 0x56, 0xa9, + 0xa0, 0xfd, 0x99, 0xc6, 0xfe, 0x13, 0x3f, 0x65, 0xe2, 0x5a, 0x21, 0x1c, 0xac, 0xce, 0xea, 0x8d, 0x21, 0xae, 0x04, + 0xeb, 0x0e, 0x1e, 0x90, 0x2b, 0x4b, 0x63, 0x11, 0xd4, 0x27, 0x3f, 0x72, 0xd3, 0x6a, 0x7c, 0xae, 0x41, 0x47, 0xd4, + 0xdb, 0x7b, 0xf3, 0xbf, 0x31, 0x4d, 0x3a, 0x40, 0x02, 0x65, 0xfd, 0x1d, 0x0a, 0x35, 0x8b, 0xf3, 0x2e, 0x38, 0x56, + 0xc2, 0xb3, 0x88, 0xc1, 0x36, 0xa0, 0x02, 0x09, 0xe7, 0x2d, 0xc2, 0xbe, 0x68, 0xcd, 0x42, 0xc3, 0xda, 0x4d, 0xdd, + 0xfa, 0x69, 0x39, 0x49, 0x93, 0x3c, 0x6c, 0x00, 0x6f, 0x8b, 0x30, 0x88, 0x23, 0x8c, 0x0f, 0xef, 0x9e, 0x65, 0xd2, + 0x45, 0x00, 0xd9, 0x80, 0x59, 0x1f, 0xcb, 0x65, 0x35, 0xdc, 0x85, 0xf7, 0xc2, 0x00, 0x9b, 0xc0, 0x2e, 0x4c, 0xb0, + 0x90, 0xcd, 0x72, 0xbd, 0x8d, 0x61, 0x4f, 0x26, 0x12, 0x4c, 0x10, 0x32, 0xeb, 0x03, 0x42, 0x1f, 0xb6, 0x9a, 0xc2, + 0xab, 0x31, 0x54, 0xb8, 0x80, 0xe2, 0x05, 0x40, 0xdd, 0x36, 0xed, 0x62, 0x84, 0xee, 0xb3, 0x0e, 0x0e, 0x74, 0x48, + 0xad, 0xad, 0x6b, 0xd6, 0x99, 0x09, 0xc0, 0xa6, 0x61, 0x24, 0x19, 0x12, 0xcc, 0xca, 0x47, 0x12, 0x4a, 0xf3, 0x65, + 0xef, 0xed, 0x97, 0x1a, 0x74, 0xa5, 0x4a, 0xbb, 0xdf, 0x02, 0x49, 0x1b, 0xb0, 0x4d, 0xa1, 0x95, 0x25, 0xda, 0x63, + 0xe5, 0x44, 0xb2, 0xf2, 0x35, 0x5e, 0x80, 0x72, 0x7b, 0x50, 0x45, 0x5f, 0xc4, 0xc6, 0xcd, 0x85, 0x02, 0x03, 0x01, + 0x00, 0x01, 0x02, 0x82, 0x01, 0x81, 0x00, 0xc3, 0x41, 0x1c, 0x66, 0x85, 0x1a, 0x42, 0xef, 0x51, 0x2b, 0x58, 0xb8, + 0x54, 0xd9, 0x28, 0xfc, 0xc9, 0xc3, 0x00, 0x42, 0xc7, 0x09, 0xcf, 0x55, 0xf9, 0xf7, 0x27, 0xaa, 0x5f, 0x7a, 0x30, + 0xdf, 0x78, 0x96, 0xbe, 0x14, 0x8c, 0x31, 0x8e, 0xe4, 0x6f, 0x0e, 0x1b, 0x0d, 0x40, 0x4e, 0x1f, 0x96, 0xa0, 0xd5, + 0x2d, 0xb1, 0xa6, 0xe8, 0xe3, 0x7e, 0xc4, 0x7f, 0xb9, 0x22, 0xdc, 0x5b, 0xb9, 0xa5, 0xbd, 0x52, 0x80, 0x09, 0x5c, + 0x35, 0xf5, 0xcd, 0x28, 0x74, 0xb9, 0x7c, 0xcd, 0xb2, 0xff, 0x1e, 0xe3, 0xb9, 0x86, 0x67, 0x79, 0xa3, 0xd9, 0x61, + 0x20, 0xb5, 0xcc, 0x2d, 0xe3, 0xa6, 0x8a, 0xd6, 0xa3, 0x14, 0x0b, 0x84, 0xbc, 0xaf, 0x79, 0xa9, 0x87, 0xd8, 0x05, + 0x91, 0x8f, 0xc8, 0xf2, 0x1b, 0x51, 0x89, 0xe5, 0x98, 0xbb, 0x5b, 0xed, 0x02, 0x42, 0x47, 0x4b, 0x8c, 0xfa, 0xc6, + 0x12, 0x9a, 0xcd, 0xff, 0xed, 0x32, 0x47, 0xd8, 0x8b, 0x5a, 0xf2, 0xb1, 0x60, 0xdc, 0x26, 0x35, 0x85, 0x1e, 0x0b, + 0x3f, 0x62, 0xb4, 0x13, 0x8a, 0x38, 0x79, 0x87, 0xa0, 0x1f, 0x8a, 0x57, 0x66, 0x1d, 0x1b, 0x21, 0x60, 0x3c, 0x75, + 0x30, 0xd3, 0x84, 0xdf, 0xad, 0x35, 0x3b, 0xbc, 0xad, 0x99, 0x31, 0x49, 0x1c, 0x59, 0x47, 0xf3, 0xfa, 0x23, 0xd3, + 0xc1, 0x58, 0x66, 0xa5, 0xb2, 0xcd, 0x7b, 0xe5, 0x19, 0xcc, 0xe6, 0x2f, 0x1f, 0x16, 0xd0, 0xad, 0xa1, 0xaf, 0xdf, + 0x16, 0x70, 0xe8, 0x1d, 0x77, 0xe2, 0x15, 0x48, 0x4b, 0x2c, 0xf6, 0xb6, 0x31, 0x50, 0x69, 0x99, 0x66, 0xb0, 0xc2, + 0x58, 0x3b, 0x80, 0xc2, 0x59, 0x68, 0x77, 0x8a, 0x40, 0xec, 0x15, 0x26, 0x9c, 0x2b, 0x58, 0xdf, 0x75, 0xe9, 0x52, + 0xa3, 0x41, 0x43, 0x77, 0xa7, 0xc7, 0x1f, 0x62, 0x76, 0x75, 0xd1, 0x13, 0x72, 0xcd, 0x47, 0x46, 0x28, 0xd1, 0x41, + 0xac, 0x4d, 0x1b, 0x56, 0x58, 0x0b, 0xf8, 0x37, 0x0f, 0xae, 0x0b, 0xd4, 0x75, 0x05, 0xb6, 0x66, 0x0d, 0x06, 0x3e, + 0xa9, 0xb6, 0x66, 0xe2, 0x69, 0x60, 0x6d, 0x0b, 0x3f, 0x07, 0x62, 0xd6, 0x5a, 0xb3, 0x66, 0x83, 0x9c, 0x14, 0xd4, + 0x86, 0xb5, 0xa6, 0x81, 0x90, 0x23, 0x77, 0xa8, 0x26, 0x51, 0x82, 0xad, 0xae, 0x43, 0x31, 0x0d, 0xf2, 0xb9, 0xc8, + 0xbd, 0x3d, 0x11, 0xa9, 0x5c, 0x83, 0x11, 0x98, 0xe3, 0x0d, 0x2e, 0x29, 0x59, 0xe3, 0x2b, 0xd4, 0x8f, 0x69, 0xe7, + 0xd3, 0x23, 0x74, 0x64, 0x13, 0x86, 0x8b, 0x44, 0x85, 0x03, 0xd0, 0xc0, 0x04, 0x0c, 0xe0, 0xbb, 0x2e, 0x1c, 0xb1, + 0x4e, 0x20, 0xb0, 0xf1, 0x23, 0x84, 0xda, 0x03, 0xcf, 0xb8, 0x4d, 0x9f, 0x34, 0x8a, 0x92, 0x5d, 0x84, 0x08, 0x87, + 0x86, 0x04, 0x6a, 0x19, 0x5f, 0xcb, 0xc5, 0x93, 0x82, 0xe7, 0x01, 0x02, 0x81, 0xc1, 0x00, 0xff, 0x3b, 0x7a, 0xe2, + 0xdb, 0x66, 0x15, 0x4f, 0x21, 0x66, 0xee, 0x47, 0x84, 0x41, 0x5f, 0x75, 0x4f, 0x44, 0xf0, 0xc5, 0x93, 0xc0, 0x4e, + 0xdf, 0x36, 0x47, 0x07, 0xe7, 0x45, 0x31, 0x57, 0x44, 0x5b, 0x23, 0x49, 0xd1, 0x5f, 0x7e, 0x0e, 0x2d, 0xd5, 0x93, + 0xa1, 0xb5, 0x8c, 0xba, 0xf6, 0x77, 0x33, 0xc0, 0xb3, 0x4f, 0x6e, 0x1d, 0x02, 0x61, 0xfd, 0xb2, 0xfc, 0x78, 0x28, + 0x89, 0x8f, 0xf4, 0x8a, 0xc6, 0x69, 0xdb, 0xc3, 0xe2, 0xc4, 0x54, 0x2e, 0xd1, 0xd9, 0x87, 0x7f, 0x35, 0x88, 0x4e, + 0xcf, 0x16, 0x78, 0x57, 0x00, 0x3d, 0xe7, 0x02, 0x72, 0x22, 0xbe, 0x0d, 0x39, 0x1c, 0xfa, 0x7f, 0x41, 0xda, 0x65, + 0x1a, 0xf9, 0xd5, 0xb7, 0x0c, 0xfc, 0x25, 0x86, 0xb4, 0xd5, 0xe7, 0x81, 0x01, 0x2f, 0x56, 0x17, 0xb5, 0x0b, 0x6b, + 0x2c, 0xa5, 0xcb, 0x7c, 0xa2, 0x2f, 0xaf, 0x4b, 0xf7, 0x15, 0xe8, 0x15, 0x9f, 0xa6, 0x68, 0xab, 0x12, 0x5c, 0x11, + 0xc6, 0xb1, 0x8c, 0x1f, 0x02, 0x31, 0x8d, 0x0c, 0x8f, 0x87, 0x88, 0x2a, 0xf6, 0x4d, 0x6b, 0x87, 0x75, 0x06, 0xa7, + 0x5c, 0xf4, 0xb4, 0xf2, 0x2c, 0x48, 0xbb, 0x67, 0x44, 0x37, 0x14, 0xff, 0x7b, 0xc5, 0x0d, 0xa8, 0xcb, 0x3f, 0x62, + 0x5e, 0x7d, 0x5c, 0x52, 0x63, 0x66, 0x8b, 0x6e, 0xc7, 0xb6, 0x52, 0xd3, 0x0b, 0x43, 0x60, 0xde, 0x89, 0x02, 0x81, + 0xc1, 0x00, 0xce, 0xb8, 0x7b, 0xca, 0xb5, 0x7a, 0x44, 0x2c, 0x19, 0x5d, 0x52, 0xfb, 0x2a, 0xd2, 0x57, 0xe7, 0xa3, + 0xba, 0x69, 0x00, 0xc0, 0x92, 0x8d, 0xba, 0xc9, 0x8c, 0x98, 0x6a, 0x13, 0x96, 0xa2, 0x64, 0xb8, 0x89, 0x36, 0x2d, + 0x8a, 0x39, 0x65, 0x12, 0x9e, 0xbb, 0x64, 0xa5, 0x23, 0x0c, 0x6d, 0x98, 0x37, 0xa0, 0x9b, 0x00, 0x33, 0x3b, 0xc1, + 0x76, 0x71, 0x41, 0x4e, 0xf2, 0xc5, 0x5f, 0x42, 0x6e, 0x26, 0x73, 0x27, 0x46, 0xcd, 0x18, 0x14, 0x7d, 0x8d, 0x91, + 0xba, 0x90, 0x88, 0xd4, 0x33, 0x4f, 0xbd, 0x0a, 0x66, 0x0f, 0x11, 0x0f, 0xe8, 0x71, 0xcc, 0xad, 0x20, 0x81, 0x4b, + 0x60, 0xdb, 0xf1, 0xef, 0x3f, 0x08, 0xf5, 0x57, 0x68, 0xaa, 0x23, 0xbf, 0xfe, 0x06, 0x77, 0x68, 0x4d, 0x51, 0x1d, + 0xd3, 0xf6, 0x49, 0x9d, 0xe5, 0xfe, 0xbb, 0x21, 0xec, 0xef, 0xd6, 0x79, 0xdf, 0x8b, 0x25, 0x66, 0xee, 0x9b, 0x24, + 0x4a, 0xba, 0xc8, 0x6a, 0x4d, 0x94, 0xc2, 0x48, 0x6d, 0x2f, 0xad, 0x49, 0x62, 0x33, 0xe0, 0x75, 0x7f, 0xa6, 0x9a, + 0x96, 0x97, 0x37, 0xda, 0xff, 0xee, 0x6f, 0x6a, 0x15, 0xc8, 0x8e, 0x1e, 0xce, 0x89, 0x0e, 0xe2, 0xfc, 0x45, 0x72, + 0x19, 0x74, 0x91, 0x0f, 0x77, 0xf5, 0x6c, 0xa7, 0xa2, 0x9e, 0x9c, 0x8c, 0x54, 0xf3, 0x0e, 0x5c, 0x95, 0x52, 0xc6, + 0x1c, 0x3a, 0xd8, 0x1d, 0x02, 0x81, 0xc0, 0x0f, 0x31, 0x3e, 0x2e, 0x54, 0xba, 0xed, 0xd7, 0xc8, 0xf8, 0x34, 0x84, + 0xc3, 0x45, 0x94, 0xe6, 0x09, 0xb2, 0xe3, 0xd6, 0x0e, 0xe6, 0x6a, 0x8b, 0x74, 0xd2, 0xa3, 0x90, 0xcb, 0x98, 0x95, + 0x46, 0x37, 0x5a, 0x91, 0x61, 0x4a, 0x1a, 0xd9, 0xc3, 0x36, 0xac, 0x53, 0xfa, 0xd7, 0x86, 0xa5, 0x77, 0x10, 0xf8, + 0x8e, 0x73, 0xd2, 0xed, 0x1d, 0x20, 0x32, 0x16, 0xbe, 0x5a, 0x74, 0xa7, 0x43, 0x8f, 0x5d, 0xd7, 0x53, 0xa3, 0xc6, + 0x34, 0x30, 0x55, 0x86, 0x77, 0xed, 0x47, 0xd8, 0x75, 0x9a, 0x48, 0x7e, 0xa1, 0x2a, 0xc6, 0x9a, 0xf8, 0x14, 0x51, + 0x1b, 0xf4, 0x1f, 0x75, 0xf0, 0x09, 0x5e, 0x8b, 0xc6, 0xa2, 0xb6, 0x53, 0xf5, 0xbd, 0x17, 0xe9, 0x48, 0xf4, 0xfe, + 0xe0, 0xb2, 0xbe, 0xd5, 0xf9, 0xf9, 0x14, 0x59, 0xd2, 0xe7, 0xfc, 0x18, 0x2b, 0x42, 0x42, 0x87, 0xf0, 0xe8, 0xb1, + 0x4f, 0xe2, 0xd8, 0xee, 0xb8, 0x93, 0x12, 0x35, 0xe4, 0xa0, 0xe0, 0x5a, 0x00, 0x65, 0x83, 0xcf, 0x00, 0x9e, 0x11, + 0xba, 0x55, 0x69, 0xf0, 0x8c, 0xba, 0xad, 0x04, 0xe2, 0x1d, 0x64, 0x46, 0xef, 0x35, 0xfa, 0x18, 0x52, 0xb7, 0xfc, + 0xfc, 0x9d, 0x7e, 0xbd, 0x7a, 0x63, 0x8f, 0x5d, 0x95, 0xc3, 0x8f, 0x1a, 0x6a, 0xc1, 0xdd, 0x11, 0x97, 0xa0, 0x03, + 0x17, 0x16, 0x2e, 0x35, 0xeb, 0xbc, 0xb5, 0xfe, 0x69, 0x02, 0x81, 0xc0, 0x77, 0xc3, 0x98, 0x2c, 0xc3, 0xe1, 0x57, + 0x37, 0xb9, 0x66, 0x41, 0x1a, 0x35, 0x1f, 0xf2, 0x3f, 0xc8, 0xb2, 0xc9, 0xfc, 0xde, 0x94, 0xc9, 0xba, 0x0a, 0xe5, + 0x02, 0xb4, 0x8a, 0x2e, 0xbe, 0x5c, 0xde, 0x30, 0xd8, 0x8b, 0x9f, 0xc6, 0x4a, 0xd1, 0x73, 0xd7, 0x1b, 0xa3, 0x34, + 0xe0, 0x11, 0x6a, 0x9b, 0xe7, 0xd7, 0x85, 0x51, 0x29, 0x70, 0x97, 0x3f, 0x5c, 0x57, 0xf1, 0xfc, 0xf9, 0x88, 0x92, + 0x2a, 0x82, 0x92, 0xa1, 0xc9, 0x57, 0x07, 0x20, 0x0a, 0x72, 0x00, 0x85, 0x96, 0x50, 0x62, 0x7d, 0xf3, 0x06, 0xe0, + 0x44, 0x20, 0x5d, 0x78, 0x0c, 0xde, 0x48, 0xfb, 0x49, 0x0d, 0x33, 0xcb, 0x99, 0xaa, 0x43, 0x79, 0xdc, 0x32, 0x4c, + 0xf8, 0x2d, 0x88, 0x21, 0x12, 0xfc, 0x01, 0x18, 0xb2, 0x43, 0x36, 0xb7, 0x3c, 0xc5, 0x57, 0x27, 0xb2, 0xa1, 0x20, + 0x15, 0x7f, 0xcb, 0xd2, 0x00, 0x5a, 0xa5, 0xfc, 0xdd, 0x33, 0x34, 0x7c, 0x6c, 0x7a, 0x72, 0x02, 0x1a, 0x61, 0x3d, + 0xa8, 0xde, 0x9b, 0x62, 0x62, 0xad, 0xcb, 0x45, 0x2e, 0x6f, 0xe7, 0x89, 0x2a, 0x9a, 0x1d, 0xa6, 0xb5, 0x33, 0xdf, + 0xf4, 0xf6, 0xa9, 0xd0, 0x7c, 0xc5, 0x7c, 0x2a, 0x2d, 0xcd, 0xc2, 0x03, 0xaf, 0xbb, 0x27, 0x83, 0xaf, 0xf4, 0x9b, + 0x19, 0x8b, 0x97, 0x1d, 0xec, 0x47, 0x48, 0xca, 0x56, 0x4f, 0x62, 0xb1, 0x90, 0xdd, 0x02, 0x81, 0xc0, 0x26, 0x80, + 0xdf, 0xf2, 0x8b, 0x17, 0x31, 0x72, 0x38, 0x4a, 0x05, 0x90, 0x92, 0xc5, 0x26, 0x71, 0xb2, 0xeb, 0x1e, 0x5e, 0x30, + 0x56, 0x5a, 0x42, 0x60, 0x3c, 0x91, 0xf9, 0x29, 0xbe, 0x09, 0x89, 0xbe, 0xd1, 0x23, 0x3d, 0x52, 0xfd, 0x35, 0xf7, + 0xab, 0x1a, 0xb5, 0x00, 0xae, 0x02, 0xc5, 0x68, 0x76, 0x5b, 0x6f, 0x6b, 0x95, 0xd5, 0x1f, 0x12, 0x05, 0x02, 0x42, + 0x40, 0xd5, 0xa3, 0xc2, 0x7c, 0xd5, 0x04, 0xa8, 0x81, 0xa2, 0x79, 0xfc, 0x27, 0xe7, 0x11, 0x02, 0x84, 0x50, 0x90, + 0x55, 0x1c, 0x96, 0x2f, 0x0d, 0xa8, 0xf6, 0x14, 0xdb, 0x33, 0xca, 0x1c, 0x4f, 0x99, 0x55, 0x11, 0x20, 0x19, 0xab, + 0x97, 0xb3, 0xd1, 0x25, 0x56, 0xb9, 0x6e, 0x71, 0xec, 0x53, 0xfe, 0x58, 0xa6, 0xe5, 0x0a, 0x5f, 0x29, 0x2e, 0xfe, + 0x20, 0xd0, 0x3b, 0xfc, 0x2c, 0x3d, 0x6e, 0x4b, 0x48, 0x05, 0x78, 0x9b, 0xf2, 0xd4, 0xc6, 0x58, 0xc8, 0x07, 0x22, + 0x95, 0x51, 0x71, 0x6a, 0xb0, 0x20, 0x48, 0x91, 0x94, 0x67, 0x71, 0xb3, 0x6b, 0x09, 0x10, 0x09, 0x17, 0x32, 0x4c, + 0xbf, 0x70, 0xe5, 0xce, 0x9b, 0x64, 0xfe, 0x04, 0x5e, 0x0c, 0xd9, 0xfb, 0xa7, 0x4e, 0xf7, 0xcb, 0x03, 0xb9, 0xcc, + 0x17, 0x58, 0xff, 0x42, 0x3d, 0x1c, 0x09, 0x09, 0x9c, 0x4e, 0x7b, 0x1e, 0x0d, 0x08, 0x2d, 0x21, 0xd9, 0xd0, 0xf1}; +unsigned int server_key_test_len = 1767; diff --git a/subsys/net/l2/wifi/wifi_mgmt.c b/subsys/net/l2/wifi/wifi_mgmt.c index cabe8a7091cea15..0ec9ad7f7543863 100644 --- a/subsys/net/l2/wifi/wifi_mgmt.c +++ b/subsys/net/l2/wifi/wifi_mgmt.c @@ -34,7 +34,7 @@ const char *wifi_security_txt(enum wifi_security_type security) return "WPA3-SAE"; case WIFI_SECURITY_TYPE_WAPI: return "WAPI"; - case WIFI_SECURITY_TYPE_EAP: + case WIFI_SECURITY_TYPE_EAP_TLS: return "EAP"; case WIFI_SECURITY_TYPE_UNKNOWN: default: @@ -805,6 +805,22 @@ static int wifi_pmksa_flush(uint32_t mgmt_request, struct net_if *iface, NET_MGMT_REGISTER_REQUEST_HANDLER(NET_REQUEST_WIFI_PMKSA_FLUSH, wifi_pmksa_flush); +static int wifi_set_enterprise_creds(uint32_t mgmt_request, struct net_if *iface, + void *data, size_t len) +{ + const struct device *dev = net_if_get_device(iface); + const struct wifi_mgmt_ops *const wifi_mgmt_api = get_wifi_api(iface); + struct wifi_enterprise_creds_params *params = data; + + if (wifi_mgmt_api == NULL || wifi_mgmt_api->enterprise_creds == NULL) { + return -ENOTSUP; + } + + return wifi_mgmt_api->enterprise_creds(dev, params); +} + +NET_MGMT_REGISTER_REQUEST_HANDLER(NET_REQUEST_WIFI_ENTERPRISE_CREDS, wifi_set_enterprise_creds); + #ifdef CONFIG_WIFI_MGMT_RAW_SCAN_RESULTS void wifi_mgmt_raise_raw_scan_result_event(struct net_if *iface, struct wifi_raw_scan_result *raw_scan_result) diff --git a/subsys/net/l2/wifi/wifi_shell.c b/subsys/net/l2/wifi/wifi_shell.c index ffc730a9d612aa5..8ad643adae20ad0 100644 --- a/subsys/net/l2/wifi/wifi_shell.c +++ b/subsys/net/l2/wifi/wifi_shell.c @@ -28,6 +28,13 @@ LOG_MODULE_REGISTER(net_wifi_shell, LOG_LEVEL_INF); #include #include "net_shell_private.h" +#ifdef CONFIG_WIFI_NM_WPA_SUPPLICANT_CRYPTO_ENTERPRISE +#include "ca-cert.h" +#include "client-cert.h" +#include "client-key.h" +#include "client-cert.h" +#include "client-key.h" +#endif #define WIFI_SHELL_MODULE "wifi" @@ -465,6 +472,8 @@ static int __wifi_args_to_params(const struct shell *sh, size_t argc, char *argv {"band", required_argument, 0, 'b'}, {"channel", required_argument, 0, 'c'}, {"timeout", required_argument, 0, 't'}, + {"anon-id", required_argument, 0, 'a'}, + {"key-passwd", required_argument, 0, 'K'}, {"help", no_argument, 0, 'h'}, {0, 0, 0, 0}}; int opt_index = 0; @@ -485,7 +494,7 @@ static int __wifi_args_to_params(const struct shell *sh, size_t argc, char *argv params->security = WIFI_SECURITY_TYPE_NONE; params->mfp = WIFI_MFP_OPTIONAL; - while ((opt = getopt_long(argc, argv, "s:p:k:w:b:c:m:t:h", + while ((opt = getopt_long(argc, argv, "s:p:k:w:b:c:m:t:a:K:h", long_options, &opt_index)) != -1) { state = getopt_state_get(); switch (opt) { @@ -581,6 +590,24 @@ static int __wifi_args_to_params(const struct shell *sh, size_t argc, char *argv } } break; + case 'a': + params->anon_id = optarg; + params->aid_length = strlen(params->anon_id); + if (params->aid_length > WIFI_ENT_IDENTITY_MAX_LEN) { + PR_WARNING("anon_id too long (max %d characters)\n", + WIFI_ENT_IDENTITY_MAX_LEN); + return -EINVAL; + } + break; + case 'K': + params->key_passwd = optarg; + params->key_passwd_length = strlen(params->key_passwd); + if (params->key_passwd_length > WIFI_ENT_PSWD_MAX_LEN) { + PR_WARNING("key_passwd too long (max %d characters)\n", + WIFI_ENT_PSWD_MAX_LEN); + return -EINVAL; + } + break; case 'h': return -ENOEXEC; default: @@ -1052,6 +1079,29 @@ static int cmd_wifi_ps_timeout(const struct shell *sh, size_t argc, char *argv[] return 0; } +#ifdef CONFIG_WIFI_NM_WPA_SUPPLICANT_CRYPTO_ENTERPRISE +static int cmd_wifi_set_enterprise_creds(const struct shell *sh, size_t argc, char *argv[]) +{ + struct net_if *iface = net_if_get_first_wifi(); + struct wifi_enterprise_creds_params params = {0}; + context.sh = sh; + + params.ca_cert = (uint8_t *)ca_cert_test; + params.ca_cert_len = ca_cert_test_len; + params.client_cert = (uint8_t *)client_cert_test; + params.client_cert_len = client_cert_test_len; + params.client_key = (uint8_t *)client_key_test; + params.client_key_len = client_key_test_len; + + if (net_mgmt(NET_REQUEST_WIFI_ENTERPRISE_CREDS, iface, ¶ms, sizeof(params))) { + PR_WARNING("Set enterprise credentials failed\n"); + return -ENOEXEC; + } + + return 0; +} +#endif + static int cmd_wifi_twt_setup_quick(const struct shell *sh, size_t argc, char *argv[]) { @@ -1957,7 +2007,8 @@ SHELL_STATIC_SUBCMD_SET_CREATE(wifi_cmd_ap, "-c --channel=\n" "-p --passphrase= (valid only for secure SSIDs)\n" "-k --key-mgmt= (valid only for secure SSIDs)\n" - "0:None, 1:WPA2-PSK, 2:WPA2-PSK-256, 3:SAE, 4:WAPI, 5:EAP, 6:WEP, 7: WPA-PSK\n" + "0:None, 1:WPA2-PSK, 2:WPA2-PSK-256, 3:SAE, 4:WAPI, 5:WEP, 6: WPA-PSK\n" + "7: WPA-Auto-Personal, 8: EAP-TLS\n" "-w --ieee-80211w= (optional: needs security type to be specified)\n" "0:Disable, 1:Optional, 2:Required\n" "-b --band= (2 -2.6GHz, 5 - 5Ghz, 6 - 6GHz)\n" @@ -2021,12 +2072,14 @@ SHELL_STATIC_SUBCMD_SET_CREATE(wifi_commands, "[-b, --band] 0: any band (2:2.4GHz, 5:5GHz, 6:6GHz]\n" "[-p, --psk]: Passphrase (valid only for secure SSIDs)\n" "[-k, --key-mgmt]: Key Management type (valid only for secure SSIDs)\n" - "0:None, 1:WPA2-PSK, 2:WPA2-PSK-256, 3:SAE, 4:WAPI, 5:EAP, 6:WEP," - " 7: WPA-PSK, 8: WPA-Auto-Personal\n" + "0:None, 1:WPA2-PSK, 2:WPA2-PSK-256, 3:SAE, 4:WAPI, 5:WEP, 6: WPA-PSK\n" + "7: WPA-Auto-Personal, 8: EAP-TLS\n" "[-w, --ieee-80211w]: MFP (optional: needs security type to be specified)\n" ": 0:Disable, 1:Optional, 2:Required.\n" "[-m, --bssid]: MAC address of the AP (BSSID).\n" "[-t, --timeout]: Timeout for the connection attempt (in seconds).\n" + "[-a, --anon-id]: Anonymous identity for enterprise mode.\n" + "[-K, --key-passwd]: Private key passwd for enterprise mode.\n" "[-h, --help]: Print out the help for the connect command.\n", cmd_wifi_connect, 2, 7), @@ -2139,6 +2192,12 @@ SHELL_STATIC_SUBCMD_SET_CREATE(wifi_commands, SHELL_CMD_ARG(pmksa_flush, NULL, "Flush PMKSA cache entries.\n", cmd_wifi_pmksa_flush, 1, 0), +#ifdef CONFIG_WIFI_NM_WPA_SUPPLICANT_CRYPTO_ENTERPRISE + SHELL_CMD_ARG(enterprise_creds, NULL, + "Set enterprise credentials.\n" + "You can replace subsys/net/l2/wifi/test_certs with custom credentials.\n", + cmd_wifi_set_enterprise_creds, 1, 0), +#endif SHELL_SUBCMD_SET_END );