# HTTPS (HTTP+SSL) server - field provisioning

My goal is secure field provisioning. Specifically, loading WiFi credentials on a device in the field. To do this, I wish to set up MCU as a WiFi Access Point with no WEP, WPA, etc - "open". The securing of the communication shall be the HTTPS layer

Terminal and non-secured WiFi provisioning (WiFi AP + HTTP) is not acceptable

Environment is ESP8266 + ESP-OPEN-RTOS, but question applies to any MPU beefy enough to do SSL

So, in essence, I need an HTTPS server burned into the device. Making custom HTML page logic is OK, but writing a whole HTTP+TLS stack from scratch I'd like to avoid

mongoose looks promising, but for my environment isn't compiling.

Has anyone else attempted/succeeded in solving this problem?

• So you're wanting to connect a device to the WIFI in the field by passing the WIFI credentials, correct? However, you also state your potential solution is HTTPS... Is your device also connected via wire as well? If not, how are you expecting to communicate to exchange these credentials without a connection? – Jarrod Christman Jun 6 '17 at 20:20
• It almost sounds like you're wanting to connect to the network to exchange information so you can connect to the network, a bit circular. If this is not the case, maybe more information can help. – Jarrod Christman Jun 6 '17 at 20:21
• I've updated the description in hopes to make it more clear. Thank you for the feedback thus far – Malachi Jun 6 '17 at 21:58
• The OP wants to run a simple web server in an ESP configured as an AP. Running a device without a keyboard/display in AP mode temporarily just to accept the connection settings for its final network setup is a common process called wifi provisioning. Once provisioning is completed, the device connects to the configured WiFi network. Nothing is bad here :) I'd a) define why mongose is not compiling, b) would go away from ESP (https is not a piece of cake), or c) go with a different symmetric secure encryption, e.g. XXTEA which is easy to implement. – Gee Bee Jul 25 '17 at 0:58
• Due to the apparent difficulty of this issue, I've deviated my approach slightly and attempted DTLS+CoAP+Android helper app instead. However, I have been too engaged in other activities to fully implement it. I'm not sure if it violates stackexchange policy to post a github link here, so if anyone is interested ask and then I shall post it – Malachi Jul 28 '17 at 3:08