coreHTTP + MbedTLS Https request problem

Hello FreeRTOS friends,

After successfully implementing the TCP PLUS + coreHTTP example with plaintext, we are trying to make a request to a webpage.

This involves implementing MBEDTLS, and this is where we are encountering issues. We start from mbedtls within our project.

1- To make an HTTPS request with MBEDTLS, do I need the pRootCa, pClientCert, pPrivateKey?

I am trying to make a request without the certificate, that is, without implementing this part of the code. Is this possible?:

xNetworkCredentials.disableSni = democonfigDISABLE_SNI;
/* Set the credentials for establishing a TLS connection. */
xNetworkCredentials.pRootCa = (const unsigned char *)democonfigROOT_CA_PEM;
xNetworkCredentials.rootCaSize = sizeof(democonfigROOT_CA_PEM);
xNetworkCredentials.pClientCert = (const unsigned char *)democonfigCLIENT_CERTIFICATE_PEM;
xNetworkCredentials.clientCertSize = sizeof(democonfigCLIENT_CERTIFICATE_PEM);
xNetworkCredentials.pPrivateKey = (const unsigned char *)democonfigCLIENT_PRIVATE_KEY_PEM;
xNetworkCredentials.privateKeySize = sizeof(democonfigCLIENT_PRIVATE_KEY_PEM);

Console:

imagen

I want to make a request to any HTTP server, not to a server that requires mutual authentication.

Is there any demo for this specific functionality?

Thank you very much for your help.

There are 3 possibilities -

  1. Plain text - No validation.
  2. Server only authentication - Only client validates server’s identity.
  3. Mutual authentication - Both client and server validate each other’s identity.

You probably are asking about server only authentication - you do not need client cert and private key for that. You can refer to this example for the TLS part - FreeRTOS/FreeRTOS-Plus/Demo/coreMQTT_Windows_Simulator/MQTT_Basic_TLS at main · FreeRTOS/FreeRTOS · GitHub.