I am using an ESP-01 this way: MCU <-> UART <-> ESP-01, using AT firmware/NonOS on ESP-01.

I have my own encryption functions, and I would like to implement them both on MCU and ESP-01 sides at least for data packets, like those packets where ESP-01 send a data packet to the MCU starting with "+IPD" string, and also for the data that is sent from the MCU to the the ESP-01 after the MCU have sent the command AT+CIPSEND=n, being 'n' the quantity of data bytes to be sent.

Will I be able to to such modification on ESP-01 side? I mean, edit the NonOS "at"firmware? As I was looking, there is only few source files and much .a lib files in the folder of the SDK.

I want to do such encryption because my data is circulating unprotected between the ESP and the MCU. In my application, I use a SSL/TLS connection as internet client with the ESP with Google's Firebase database, but this way anyone could sniff my data by monitoring the UART signal. And to say, I am not able to use SSL/TLS (like mbedtls) inside the MCU because the MCU has limited flash memory size.

I already donwloaded the "ESP8266_NONOS_SDK-2.2.1", compiled it with virtual machine and did the download of the generated bins to the ESP-01, my question here is about the possibility to customize the "at" firmware.

Any suggestion for this case?

Regards, Jeferson.

  • 1
    \$\begingroup\$ What are you asking? In bold you say "about the possibility"...of course it is possible! Write your own AT handlers in C if you want. Are you asking for someone to give you the source files? What do you actually want? \$\endgroup\$ – Elliot Alderson Mar 7 at 15:23
  • \$\begingroup\$ I wanted to know if the source code (of at firmware) is available to make editions. \$\endgroup\$ – abomin3v3l Mar 7 at 16:44

Why don't you just do everything on the ESP? There's no reason to use the AT interface and add a second microcontroller.

Having said that, I wonder how information gets into your MCU in a way that doesn't make it accessible to an adversary.

| improve this answer | |
  • \$\begingroup\$ The MCU has 100 pins and have so much signals connected to it, something that an ESP-01 would not afford. I did not understood your second statement. \$\endgroup\$ – abomin3v3l Mar 7 at 13:34
  • \$\begingroup\$ The ESP-01 is only a way the MCU can have access to internet, to databases. \$\endgroup\$ – abomin3v3l Mar 7 at 13:44
  • \$\begingroup\$ The data that comes into and out of the MCU are raw strings, I want to introduce a data shuffle for both sides, ESP and MCU. \$\endgroup\$ – abomin3v3l Mar 7 at 13:48
  • 2
    \$\begingroup\$ Aren't these raw strings available to sniffing, just like the UART lines? I guess I can not imagine what kind of attack you are worried about, if data shuffling is enough to make it safe. \$\endgroup\$ – Elliot Alderson Mar 7 at 14:28
  • \$\begingroup\$ Because the API secret key of the database (and other sensitive data) are sent through the serial lines (actually fom the MCU to the ESP-01), and I just want to shuffle such data packets, and if I do that I will need to do on both sides, the MCU side is ok for me, but I am asking about the ESP-01 side, and my current idea was to customize the at firmware of it (BUT, is that possible? I want to have this answer, and if the answer is YES, how to proceed). \$\endgroup\$ – abomin3v3l Mar 7 at 14:45

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.