cURL with wolfSSL to make a HTTPS communication with backend web server

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

cURL with wolfSSL to make a HTTPS communication with backend web server

1,939 Views
akhileshkg
Contributor II

I need to make HTTPS communication from NXP 5748G device to backend server. backend server is Microsoft Azure ASP.Net web APIs. 

based on my research I understand that i need to use cURL with wolfSSL for the same. wolfSSL is integrated in S32 SDK already.

1) has someone used cURL with wolfSSL on this device to make HTTPS communication. some insight / reference code would be a great help!

2) if not with cURL, could you suggest another library that could be used with wolfSSL to enable HTTPS.

would appreciate a prompt help/ advise.

Thanks,

- Akhilesh

Labels (1)
Tags (3)
0 Kudos
3 Replies

1,594 Views
sergeylyubka
Contributor II

@akhileshkg 

Another possibility is to use Mongoose Library (https://github.com/cesanta/mongoose)

there is a working example for AWS IoT, which also uses 2-way TLS. An example uses mbedTLS, see https://mongoose.ws/tutorials/

0 Kudos

1,918 Views
akhileshkg
Contributor II

Thanks much Lukas for your response!

well, our core requirement to use a secured communication channel (TLS with Mutual authentication). For mutual authentication we intend to use device cert, that we are taking from a CA.

so as you mentioned bare http wouldn't help. Also MQTT also needs to be over TLS,  so i guess that also would be a challenge!

i will check on other option that you gave: 

https://syop.freertos.org/http/http-demo-with-tls-mutual-authentication.html "

however is it NOT POSSIBLE to use cURL  on this device (NXP 5748G)? since wolfSSL team recomended me to us cURL!

Thanks

0 Kudos

1,926 Views
lukaszadrapa
NXP TechSupport
NXP TechSupport

Hi Akhilesh,

I asked around and here are some feedbacks:

 

"It refers to how to send REST (over HTTPS) calls from the target. So in this case the target is a HTTP client sending requests to a server.

lwIP features a http client implementation (in /lwip/browse/src/apps/http/http_client.c) which can be used to send HTTP calls, but not HTTPS calls.

However REST calls are usually over HTTPS, the lwIP HTTP client won’t help."

 

"I’d suggest to check the example using FreeRTOS coreHTTP:

https://syop.freertos.org/http/http-demo-with-tls-mutual-authentication.html "

 

"Additionally the customer may look into using MQTT which is a protocol targeted for IoT devices communication (device to device, device to cloud).

Amazon has GreenGrass IoT client which deployed on target can talk over MQTT with the could.

Microsoft has Azure IoT which deals with the same aspect as AWS.

MQTT is supported by lwIP."

 

Hope it helps.

Regards,

Lukas

 

0 Kudos